ScrapHacks/ScrapHacks
Daniel S. 7e044f0114 Lots of changes (expand to read more)
- Update NOTES with new findings
- Add Cutter link to README
- Add ASMJIT, ASMTK and Zydis to CMake
- Make DX8 setting cofigurable via ScrapHacks REPL
- Add scaffolding for build hook trampolines using asmjit
- Add on the fly assembling of code to REPL
- Clean up command structure
- Add memory RWX to REPL
- Add stack dumping to REPL
- Add Gamevar dumping to REPL
- Add hook check to overlay commands (don't work if DX8 not hooked)
- Allow nested command definitions for cleaner REPL
- AllocConsole() as early as possible
- shuffle some code around for cleanup
- Add GameVar, PakEntry and HashIndex structures
2020-01-03 03:22:09 +01:00
..
.vscode Lots of changes (expand to read more) 2020-01-03 03:22:09 +01:00
src Lots of changes (expand to read more) 2020-01-03 03:22:09 +01:00
utils Lots of changes (expand to read more) 2020-01-03 03:22:09 +01:00
.gitattributes Add DLL-Injector+ScrapHacks DLL 2019-02-23 22:40:05 +01:00
CMakeLists.txt Lots of changes (expand to read more) 2020-01-03 03:22:09 +01:00
README.md Lots of changes (expand to read more) 2020-01-03 03:22:09 +01:00
build.bat Lots of changes (expand to read more) 2020-01-03 03:22:09 +01:00

README.md

Features

  • read and write memory
  • change DirectX state
  • Draw DirectX overlay (still need to make a useful overlay)
  • Dump various data structures to the console
  • Assemble and execute code on the fly
  • Can be controlled via keyboard shortcuts (TODO: allow defining own shortcuts for commands)

Prerequisites

  • Visual Studio 2017/2019 (others might work)
  • CMake
  • Python 3.6 or newer

Building

Open VS 32-bit command prompt (vcvars32.bat) and run the following two commands

cmake -G"NMake Makefiles" -B build
cmake --build build --target install

This will find the Games's installation folder, verify that the version you have is compatible with ScrapHacks and drop the compiled .pyd file into the correct folder to be imported

Getting started

  • open the ingame console (Ctrl+^)
  • type import ScrapHack
  • type $help

Notes

(this has only been tested with a (cracked/unpacked/de-obfuscated) Scrap.exe v1.0 with a SHA1 checksum of d2dde960e8eca69d60c2e39a439088b75f0c89fa , other version will crash if the memory offsets don't match)