American McGee's Scrapland reversing and modding
Daniel Seiller
7e044f0114
- 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 |
||
---|---|---|
.vscode | ||
lib | ||
ScrapHacks | ||
.gitignore | ||
helplib.txt | ||
LICENSE | ||
NOTES.md | ||
parse_save.py | ||
r2_analyze.py | ||
README.md | ||
scrapper.py |
Scrapland Reverse Engineering noted and tools
Scripts:
parse_save.py
: Dumps information extracted from Save filescrapper.py
: Extractor and Repacker for *.packed files, needs theconstruct
andtqdm
python modules and python 3.x
- Run
scrapper.py -h
for help
r2_analyze.py
: uses radare2 to parse and label a lot of interesting stuff in theScrap.exe
binarylib/dbg.py
: general Script for poking around inside the game's scripting system
- Run
import dbg
inside the Game's Console, this will load all builtin modules and enable godmode - The dbg module also enables writing to the ingame console using
print <var>
and defines two global functions s_write() and e_write() for writing to the Ingame Console's Stdout and Stderr Stream dbg.menu()
Displays the Game's built in Debug Menu (doesn't work properly)dbg.enable_all_conv()
allows you to "overwrite" any character, even if they are protected/invulnerabledbg.become(name)
allows you to transform into any characterdbg.helplib()
generates a filehelplib.txt
in the Game's folder containing all available Documentation for all available classes and functionsdbg.settrace()
Logs all Python function calls together with their arguments into adbg.txt
file inside the Game's folder
ScrapHacks
WIP Memory hacking library