IMGUI tool for viewing and extracting data from a running Dungeon Runners client.
This is based on the setup I am using but I have not tested these steps from a fresh environment. This has only been tested while using Jetbrains Clion to build.
- Install MSYS2
- Setup mingw32 toolchain (https://docs.epics-controls.org/projects/how-tos/en/latest/getting-started/installation-windows-msys2.html)
- Install required libs through MSYS2->
pacman
, make sure to install themingw-w64-i686
version of all libraries ( check CMakeLists.txt) - (Optional) Add env var
DR_GAME_DIR="{{DUNGEON_RUNNERS_GAME_PATH}}"
and replace theDUNGEON_RUNNERS_GAME_PATH
with your game path. This will automatically copy the RRSpy2 dll to the correct location on build - Compile target RRSpy2 with CMAKE (
example:
cmake.exe --build F:\Projects\DungeonRunners\RRSpy2\cmake-build-debug --target RRSpy2 -- -j 19
)
- Ensure you have
d3d9.dll
available inC:\Windows\System32\d3d9.dll
- Copy compiled dll file to game directory with the name
d3d9.dll
- Copy fonts to game directory
- Launch the game and press
F1
to toggle the UI
- Display game state information (In Game/Login screen etc.) and current map name
- Display tree of objects/components currently available
- Display all known and unknown object properties + memory locations for those properties as int, float and hex
- Copy all values and memory addresses to clipboard
- Modify any property value (int or float fields only)
- View properties of all objects in inheritance chain (e.g.
Avatar < Hero < Unit < WorldEntity < Entity < GCObject
) - Display attached data object properties (e.g.
Avatar: AvatarDesc
orAvatar : GCProperties
) - (Experimental) DataStream - Dump property value over time, will output the property value every tick into a log file
in JSON
format with timestamps for further analysis (WARNING you must restart the game to stop dumping),
Create
logs/datastream
directory in main DungeonRunners game dir for this to work. - Supreme instability - it will crash
Contributions are welcome, try not to break things too much.
- Fork
- Open PR
- Get approved and merge!