This sub-page of SAVEDGAMES.ARS covers information regarding the 010 Editor tool.
Template[]
Binary template to easily analyze content of the file, this is a perfect tool to quickly see what's for what in raw hex mode.
//----------------------------------------------------------------------------- //--- 010 Editor v4.0.1 Binary Template // // File : Carmageddon 2 Savegame // Purpose : Analyze savegame format // base work for Carmeditor 2-Rebirth (>= 0.2.x.x) // Author : Rudy Dullier / Shutting_Down // Revision : 2013-02-09 12:49 // Wikia : http://carmageddon.wikia.com/wiki/SAVEDGAMES.ARS // //----------------------------------------------------------------------------- LittleEndian(); struct FILE { while (!FEof()) { struct SLOT { struct { byte dummy; char saveFormatVersion[2] <comment="Currently V4">; byte dummy; } HEADER < fgcolor=cWhite, bgcolor=cRed >; string playerName < fgcolor=cBlack, bgcolor=cGreen >; // Maybe 12 actually? Could use string and then compute size of filler byte unknown1[14 - Strlen(playerName)-1]; // Maybe 2 only, check with playerName in string type string opponentFileName < bgcolor=cLtPurple >; // Don't known what's this for?! byte unknown2[32 - Strlen(opponentFileName)-1]; struct SAVEDATE { char day[2]; char delim; char month[2]; char delim; char year[4]; } saveDate < fgcolor=cBlue, bgcolor=cLtAqua >; char filer2[22]; struct SAVETIME { char hour[2]; // Char 1A = SUB (substitute) char delim; char minute[2]; char delim; char second[2]; } saveTime < fgcolor=cBlue, bgcolor=cLtAqua >; byte unknown3[426]; // Must hold race unlocks, but what more? int32 money < fgcolor=cRed, bgcolor=cYellow >; int32 difficultyLevel < comment="0=easy, 1=normal, 2=hard" >; byte padding[4]; struct BOUGHT_CARS { int32 count < fgcolor=cRed, bgcolor=cLtPurple >; int32 cars[60] < fgcolor=cBlack, bgcolor=cLtPurple, comment="Array of int32, one per car" >; } boughtCars; int32 currentCar < bgcolor=cLtBlue >; int32 currentRace < bgcolor=cLtGreen >; int32 isMissionEnabled <comment="Actually a boolean on 4 bytes", fgcolor=cWhite, bgcolor=cDkGreen>; struct APO { int32 Armor <bgcolor=cRed>; int32 Power <bgcolor=cGreen>; int32 Offense <bgcolor=cBlue>; int32 ArmorMax <bgcolor=cRed>; int32 PowerMax <bgcolor=cGreen>; int32 OffenseMax <bgcolor=cBlue>; } apo < fgcolor=cBlack >; } slot; } } file;
Hex mapping[]
When using a binary template, the hex dump is colored by following definitions done in template.
Template result[]
When using a binary template, the hex values are output in a colored tree view. Selecting a line highlights corresponding bytes in hex view.