2024-07-27 13:42:50 +10:00

2.0 KiB
Raw Permalink Blame History

Keys stored in save file

%LocalAppData%\CrabChampions\Saved\SavedGames

SaveSlot.sav

save appears to be seralised as

This was an incorrect assumption

PropertyName (Fixed size) Property Type (Fixed size) Property (Dynamic based on type?)

These were also somewhat incorrect, I don't think the fields are byte aligned anymore

Propertyname:

  • Not fixed size
  • Appears to be NULL terminated strings
  • Appears to be fit into 16 byte chunks
  • IE: 'Keys' is stored in 16 bytes and 'AccountLevel' is stored in 32 bytes
  • After keys there is an 0x0C that I am not sure what that is yet, its after the NULL byte for a few strings
  • There is always a value after the NULL byte I've seen 0x0C and 0x0D so far (Might indicate the size of the data or the data is always a fixed size)

PropertyType

  • Not fixed size
  • Appears to be fit into 16 byte chunks
  • IE: 'IntProperty' is stored in 32 bytes
  • Value is directly after padding
  • Value stored in MAYBE 16 bytes ( HIGHLY DOUBT IT)
  • 16 bytes contain 19 00 00 00 0B 00 00 00
  • 19 being the current keys I have

Property Type fields

[PROPERTY_TYPE_NAME][NULL][PROPERTY_SIZE][NULL * 8][PROPERTY_VALUE][NULL * 3][NEXT_LABEL_SIZE][NULL * 3]

IntProperty
49 6E 74 50 72 6F 70 65 72 74 79 00 04 00 00 00 00 00 00 00 00 19 00 00 00 0B 00 00 00
KeysIntProperty	
00 00 00 05 00 00 00 4B 65 79 73 00 0C 00 00 00 49 6E 74 50 72 6F 70 65 72 74 79 00 04 00 00 00 00 00 00 00 00 09 00 00 00

Format is (This one seems correct)

[NULL] * 3 | [SIZE OF LABEL] | [NULL] to end of value size | [LABEL] (NULL TERMINATED) | [NULL] | [PROPERTY TYPE LABEL SIZE] | [NULL] to end of value size | [PROPERTY TYPE LABEL] (NULL TERMINATED) | [NULL] to end of value size | [SIZE OF DATA VALUE] | [NULL * 8] (padding?) | [DATA VALUE] | [NULL] to end of value size

Property/Type/Offset Keys/Int/0x12DB

appears to use three null bytes as a separator between things

Serialisation starts at 0x42A with the size of the crab champions version option