Now that's just awfully awesome!
I tried another approach at dumping the data, and ended up with a restunts based tool. It's in the repo as repldump. It basically initializes the game engine with a replay, steps through each frame, performs update_gamestate()
, and dumps the entire 1120 byte gamestate
structure to a file for every iteration.Usage
Put the attached repldump.exe
in your Stunts folder and run repldump.exe replname
in a 16-bit DOS environment, such as DOSBox. The replay must be located in the same folder, and the file extension must not be included in the command. The program will then read replname.rpl
and write replname.bin
. The result file has the following format:
I also attached an example C program for parsing this file. Take the struct declarations with a grain of salt. I suspect that some of the field names are at best misleading. But all in all this info should enable us to compute penalty time, detect DNF, provide analysis, and maybe find the cause of some bizarre bugs.