Skip to content

guidedhacking/GH-Offset-Dumper

Repository files navigation

Guided Hacking Offset Dumper aka GH Offset Dumper

Version 1.0

CS:GO Cheat Engine Table Screenshot CS:GO ReClass.NET netvars

What does it do

Externally scan a process for signatures and dump the relative offsets to a header file which is easy to incorporate into your Visual Studio project. When an update is released for a game, you run the dumper to get the latest offsets.

Why

Scrubs don't know how to pattern scan so they manually update their offsets in their game hacks after running an offset dumper like this.

How to use

  1. Put config.json in the same folder as the dumper.
  2. Run the game.
  3. If the game uses the source engine you should run GH-Offset-Dumper-64.exe if the game is 64 bits, or GH-Offset-Dumper-32.exe if the game is 32 bits, otherwise netvars will not be dumped. If the game does not use the source engine, you can use either one.
  4. Include the generated .hpp file in your project.

How to use the GHDumper.h library

To use the dumper as a library in your project, you need GHDumper.h and json.hpp.

#include <fstream>
#include "json.hpp"
#include "GHDumper.h"

int main()
{
	// load json
	std::ifstream file("config.json"); 
	auto config = nlohmann::json::parse(file);

	// dump as std::unordered_map<std::string, ptrdiff_t>
	auto signatures = gh::DumpSignatures(config);
	auto netvars = gh::DumpNetvars(config, signatures);
	
	// format files as std::string
	auto hpp = gh::FormatHeader(config, signatures, netvars);
	auto ct = gh::FormatCheatEngine(config, signatures, netvars);
	auto xml = gh::FormatReclass(config, netvars);
	
	// save files or do whatever
	// ...
}

How is this different from HazeDumper?

This dumper was inspired by hazedumper so thank you to frk1, rN' and the other contributors to that project.

I started learning Rust when messing with HazeDumper and I decided we needed a C++ version, I also wanted to extend the functionality.

GH Dumper will do the same thing as HazeDumper with the addition of dumping ReClass files and Cheat Engine Tables.

Our dumper uses the same json config file format, so they are interchangeable

Notes

  • The main code is GHDumper.h
  • If any value is missing from the output header file, it is possible the signature is outdated and thus the pattern scan returned 0.
  • In CS:GO, joining a match may cause the dumper to fail. Restarting CS:GO should solve it.

TODO

  • Make an internal version
  • Add CSS functionality
  • Other ideas to make it kewl

Credits

Thank you to frk1, rN' and the contributors to hazedumper

Thank you to nlohmann and the contributors of json.hpp

Official GH Courses