Saving the Game

For Polaris, I've decided to take the game development in little bite sized pieces and use the same approach to development and design of the game as I did for Worldmaker: Modular pieces that can be expanded later.

I chose to start with something pretty boring but important: Saved game management.

I've kept myself from creating a new Polaris project just yet, and am trying to keep the project generic for now, which means functionality over form in every aspect.

  • No skinning UI elements
  • No adding images or other visual flourishes
  • Implementing layouts is okay as long as they use the default Flex skins

As far as RPGs go, I've always liked Bioware's Dragon Age: Origins and it's likely going to be my biggest influence here other than Krin's Sonny. I like Bioware's emphasis on a story-focused game with player choices driving the narrative.

Dragon Age's save system has several has functions:

  1. Start a new character
  2. Select a character to load an existing game from
  3. Load an existing game from a list of saves
  4. Delete an existing game from a list of saves
  5. Delete a character
Dragon Age: Origin's "Load Game" menu, accessible from the main menu

Once in the game, auto-saves, quick-saves, manual saves, and chapter saves take place and are organized under the current character.

I implemented this system pretty quickly, with saves existing in a straightforward folder structure using character names. Everything so far works pretty smoothly which is nice. The game-state serializes/deserializes to json, and saves are sorted by their creation date.

I still want to add some of the details like time played, location, or a screenshot. I really like how Bioware displays your "story so far" to indicate progress - it's a lot more interesting than a "39% complete" indicator you see more often. Overall, I'm happy with what I have so far and think I'm ready to start piecing together other parts of my game.