4 ms·
Ask HN: How to evolve the levels of a game while maintaining progress integrity?
How can I evolve the levels of a game in app updates while maintaining the integrity of player progress in some theoretically sound way? Levels may be added, changed, reordered, and/or removed in each update.
Suppose it is a game like Candy Crush Saga.
- brudgers 11y agoWhat is your current thinking on the matter?
- amichail 11y agoI don't have a good solution. That's why I'm asking.
- al2o3cr 11y agoThe best solution is going to be strongly dependent on how you define "player progress". On the simplest end of the spectrum are games where the levels are entirely standalone; an example would be a puzzle game like Hexcells. Changing levels is tricky - should a player still get credit for "solved level 2" if level 2's puzzle is different now? - but the (add / remove /reorder) are straightforward. In the middle are games where there's some state but it's fundamentally a "you are here" status; the Half-life games are an example of this. In this model, the trickiest parts are handling changes to the "level" a player is currently in (if a player last saved on a now-deleted level, what happens?) and maintaining the state (if you insert the level where the player picks up the Gargleblaster between levels they already done, how do they get the thing?). At the far end are state-heavy games, where players can interact with the game world and NPCs in ways that persist over time; think Skyrim etc for this one. If you're storing player state as an event list, it will only be really really hard to use those events to regenerate the state when content is added / removed / reordered. If you aren't, well, good luck. :)