-
Notifications
You must be signed in to change notification settings - Fork 5
Description
Don't know a better place to file this, so here we are.
When attempting to use the savefile decoding script in this repo for another project, I noticed something weird.
BYOND would read this data from the savefile
name = "DTX-PAI"
description = "A pAI version of DTX"
role = "Socialise with host, probably break down doors."
comments = "N/A"
version = 1
However, the script read this (using just description key as an example)
data entry
unk: 01
raw: 02 00 00 00 00 00 00 00 0b 37 39 16 0d 05 e9 f9 e6 f2 cb c3 17 00 00 00 3b 57 4c 14 7e 17 31 30 a2 fd f1 ef d5 c6 d7 af ea bc ba c5 aa a3 58 67 77 35 04 05 7f 51 2b 3d 2f 07 05 1b 19 a7 e4 f1 c7 8b dc d2 b5 bb f1 c2 9c 8e 6f 67 77 3b 46 58 42 1f 3c 39 3f 43 04 1a 0d f3
key: description
dat: 01 14 00 41 20 70 41 49 20 76 65 72 73 69 6f 6e 20 6f 66 20 44 54 58 6e 65 2e 20 28 49 6e 63 6c 75 64 69 6e 67 20 74 68 65 20 68 6f 73 74 29 23 76 7d 93 62 79 2c 66 71 70 24 78 74 69 1c 6c 6b 77 70
dac: . . . A pAI version of DTXne. (Including the host)#v}�by,fqp$xti. lkwp
The important thing to note here, is the (Including the host) part. This used to be part of the description before I rewrote it and made it shorter, but it still exists in the savefile as seen with the decoder.
This means that BYOND doesn't rewrite a savefile when its edited, only changes are appended, which means there is history stored in bytes, presumably waiting to be written over.
This also means there must be "markers" for the data starting and ending. This exact savefile is available at https://affectedarc07.co.uk/pai.sav
I do not possess the knowledge myself to investigate this, but I am flagging it up here as you may be able to figure something out with it.
