I’ll copy-and-paste the instructions here:
- Make a scene. I called mine save_states. Find every variable that could possibly change over the course of the game, and make two lists of them. One will be used for saving, one for loading.
- Go to startup. *create a saved_variable for every variable (e.g. if a variable is strength, create saved_strength.) Keep all of these together so you can delete them when they’re no longer needed (when you’re stripping the temporary save states back out before COG adds the official system.)
- Under a label save_these_stats, paste a set command in front of each variable. Then add the matching saved_variable to each line. It will look like: *set saved_strength strength
- Under a label load_these_stats, do the same thing but in the reverse order. Like so: *set strength saved_strength
- You can use gosub_scene to save, so add a *return at the end of save_these_stats. The full command to get there would be: gosub_scene save_states save_these_stats
- Using a gosub rather than a goto for loading can mess up your options; any options that were greyed out after being chosen will still be unavailable, if you’re reloading within the same scene. So instead, set a variable called checkpoint. Name each checkpoint.
- Use goto load_these_stats to load, then depending on the name of the checkpoint, use a goto to send the player to the right scene and label.
I follow everything up to step 6, but for the life of me I am not understanding the checkpoint thing. (I feel like I’m just being dense, but knowing that doesn’t help.) Can anyone help me make heads or tails of this? How does this checkpoint system work? Do you create variables called checkpoint1, checkpoint2 in the startup file, or are they labels in the game itself? How does this system even allow for saving more than once in a way that won’t get overwritten?
Edit: duh, never mind. This is for a temporary save state system, not a checkpoint save system! Then… how would a checkpoint save system like this work?..