I’m working toward build 0.20 as outlined in my previous post, so I’ll outline the first element that I’m working on that act as a sort of “backbone” for other features.

Previously the Save Game format only saved data about the player him/her-self and nothing about the environment (other than things like location, inside or outside). In order to make exploring dungeons worth-while and to support skill and level progression the save format is being upgraded again.

The first element of the upgrade is to serialize the current state of the world. Basically the current location and state of enemies, objects, sprites, doors and so on have to be saved. Also the state of enemies has to be saved such as chasing, attacking, idling; dead bodies and the loot left; treasure piles (including new piles placed by players); the animation state of objects and more. At first, only the Dungeon and/or nearby world cells will be serialized – like in Daggerfall – but later more information will be stored permanently such as treasure piles and container contents. That will allow you to put treasure in a chest in a house and then retrieve it later, even after traveling to another Province and back.

The second element is to store information about skill usage. This includes the skill starting values that affect leveling, the current “tally” for each skill (this tracks skill uses that count toward advancement) and the time since the last skill advancement. The other necessary information is already stored in the save files. Obviously this data isn’t useful until resting is implemented, but that is the next thing on the list to tackle after the save game system has been upgraded.