rec file structure ------------------ type size data ---------------------------- int 4 number of replay frames int 4 ? (seems to always be 0x83) int 4 is mylty rec int 4 is flagtag rec, will also be enabled for singleplayer recs when flagtag mode is on uint 4 level link number char[12] 12 level name (including .lev) int 4 donno FRAMES 27*frames frames int 4 number of replay events EVENT[] 16*events events int 4 end of repaly: 0x00492F75 if mylty rec: repeat everything above FRAMES: type size data ---------------------------- float[] 4*frames x float[] 4*frames y short[] 2*frames left wheel x short[] 2*frames left wheel y short[] 2*frames right wheel x short[] 2*frames right wheel y short[] 2*frames head x short[] 2*frames head y short[] 2*frames rotation (0-10000) uchar[] frames left wheel rotation (0-255) uchar[] frames right wheel rotation (0-255) uchar[] frames lsb1: is gasing lsb2: turned right short[] 2*frames spring sound efect volume EVENT: type size data ---------------------------- double 8 time of event short 2 info (at least used for object index on take events) char 1 type char 1 padding (always 0) float 4 unknown, possibly volume for sound events types: 0 take object 1 unknown (ground touch?) 4 apple 5 turn 6 volt right 7 volt left how 2 find event real time: time_in_hundredths = (int)(time_double*(0.001/(0.182*0.0024))*100.0)