Skip to content
This repository has been archived by the owner on Mar 14, 2022. It is now read-only.

Save File Modification (Draft)

huzhekun edited this page Dec 18, 2020 · 1 revision

I just want to change my hairstyle/nail color/facial feature/etc.

BACK UP YOUR SAVE BEFORE TRYING THIS! This method has anecdotally worked for some, but PROCEED AT YOUR OWN RISK!!! Save file corruption is a real possibility, and if you want something for your character that can be accomplished with exec() commands (currently we know the exec commands to give items and skill points for example), use the exec() commands in-game! This could corrupt your save! So please only do it for your own character features that you can check immediately upon loading into the game.

Use a hex editor such as HxD, open the sav.dat file in the hex editor, and search for (ANSI Text) customization, this string seems to be intact and a good anchor point for finding the character customization data.

Above the customization string, you might be able to see fragments of ANSI text that were not compressed such as nails or jaw. Those variables can be scrambled, but the key here is to find if the ANSI text for two numbers after these strings are intact.

For example, if you can see .aw??07 and you wanted to modify your character's jaw, you are in luck! because that means the number indicating the type jaw you have is intact, and you can modify that 07 to any of the available options in the character creator (Jaw #4 in the character creator would mean changing the numbers to ANSI text 04). After this modification, swap the old sav.dat for the new modified sav.dat, load into the game, check if your character model has changed and if no weird errors can be seen, congrats, you have changed your character.

Why can't we modify save files right now

Save files are compressed with LZ4, and as a result, direct hex modification is not always possible if the variable you would like to modify is compressed by LZ4 and not available in plaintext. Save file decompression is possible with the CyberCAT tool by SirBitesALot, but modifying decompressed savefiles is not possible due to modified recompressed save files being recognized as corrupt by the system. Currently, we speculate there is some variable in the save file header that is somehow tied to the file size or locations of file data, and until we decipher where these checked values are, we cannot fully modify an uncompressed savefile.