Update log
Full Lost Legions update
The complete published notes, normalized for clean reading and source attribution.
Extracted changes
- Maps
- UI and audio
- Server
Hi everyone, Stephan here with a quick insight into the Lost Legions savegame system.
Open World
With Lost Legions being an open world game there is a lot of data to save. From the player's inventory and their current location in the world, equipped weapons, their health and stamina values, all the way to content of chests, ownership of claimed areas, progress of personal and shared quests and the already explored areas of the map.
Level Streaming
Since the world is so large we are also streaming parts of the map in and out of memory. If a part of the map is unloaded we need to save everything that needs to be restored later on when that part of the map is loaded again. Those are things like dropped loot, structures the player destroyed and built and much more.
SPUD
To make our lives a bit easier, we are using the open source SPUD library by Steve Streeting
SPUD offers a generic extendable base for all kinds of things to save.
Each level object that has data that needs to be stored gets the SPUD interface and gets an automatically assigned ID.
Properties that should be included in the savegame can be simply marked with a checkbox.
This works great for the vast majority of level objects.
Multiplayer
One area where a lot of custom logic is required is the multiplayer aspect of the game. Since players can leave and join at any time we have to restore their data not just when the level is started but whenever they connect to the server.
This is the part I am currently mostly involved in. Making sure that player inventory is restored and that personal quest lines are continued at exactly the point you left the server.
You can look forward to finally being able to save and load your game when the next playtest starts!
Source
