separated SaveManagers from UIs

it's things like this where I worry I'm working on engine too much, and actual gameplay too little.

it used to be that the UI was responsible for saving and loading games; that's no longer true. now there's a new type of plugin - a StarKindredSaveManager - and those are responsible for saving and loading games. advantages to having these separate:

  1. making a custom UI is easier, because a UI developer doesn't have to worry about implementing save & load
  2. as a player, switching UIs doesn't mean abandoning your savegame (thinking about it that way, it becomes really obvious why the UI and SaveManager SHOULD be separate)
  3. the game can run multiple SaveManagers at once (although it can only run a single UI... *wonders if that HAS to be true*)

if you have multiple SaveManagers, then you can load a game from any one of them; when you start a new game, in addition to your Country and Protector-God name, you're asked which SaveManager you want to use.

the built-in CLI does not offer a way to switch SaveManagers, but another UI could; I might rework the CLI at some point to make this possible, but it does not feel high-priority right now. if I start to add other things which could be thought of as "preferences", to where a preferences interface makes sense, that would be where I'd put the SaveManager setting.

ANYWAY: again: this is all way too much engine, and not enough gameplay. *gets back to coding up gameplay*

Files 57 kB
Mar 30, 2018

Get ★kindred

Download NowName your own price