In a previous post I explicated the basic principles of how to automatically track and restore the player’s progress in an Inform 7 game. What it really comes down to is this:
- Represent the parameters of your game’s progression in a table.
- Whenever the player does something worth autosaving, record it in that table, and then write that table to an external file.
- When play begins, read that external file and use those data to reconstruct the player’s progress.
I said we’d get into some ways of representing progress in a nonlinear game. The first thing that comes to mind is my game The Lurking Horror II: The Lurkening, in which the player character learns various spells that let you manipulate the environment and solve puzzles. Learning certain spells requires you to learn certain other spells first, but the “tech tree” has enough branches that we can’t predict in what order the player will discover everything.
Continue reading