The way that this works is, it doesn't actually save your state, it saves all of the game's actions in a little compressed digest and simulates everything from the beginning on load. If you try to cheat, you're just playing the game anyway. "state" is the important variable here. It lists actions done by the game. To use this, write the "process action" block like so; The variable "action" will contain the action's name. The list "args" will contain it's arguments. To add an action to the state, set "action" to an action name, and set "args" to the arguments for it if any, and run "add to state". Done. You never have to touch the state variable yourself. The only restriction is that you can only use lowercase letters, numbers, and a full stop (.). To save, run "compress state". The save data is then stored in "state_ret". To load, place the save in "state_ret" and run "decompress state", followed by "load state."
Digest compression is just base conversion. Sounds fancy but it really isn't. There are several other blocks in here that I didn't explain above, they're pretty self-explanatory and don't require any variables to be set. "detect outs clashes" is for the development of this itself. It doesn't seem to be working correctly at the moment. I don't know why.