Have you ever wondered what it takes to build a meta progression system for a roguelite?
I hadn't, but I just found out the hard way, as I just finished adding one to my game.
Short summary of what it needed:
- Track all relevant statistics in the game (monsters destroyed, survive time per map, total survive time, arrow bounces...)
- Add the functions that increase the tracked stats to everywhere in the codebase
- Design somewhat fitting challenges for each unlock
- Logic to check if the unlock is still in challenge phase, available to buy phase, or owned
- 3 UI's (Unlock Menu, All Time Stats Menu, Game Over View) <- This was tedious
- Unlock cards to support mentioned 3 phases, Same for the buy/claim section
- Check what the player owns at start of round & hero/map selection
- Check what the player unlocked during a round to show them in Game Over View
The nodes Godot provides helped tremendously (MarginContainer, PanelContainer, FlowContainer, GridContainer, H/VBoxContainers for the win).
Last year I was still trying to write UI layout code by hand, imagine I implemented this like that!
Check the game out on Steam: https://store.steampowered.com/app/5066610/Villages_on_Wheels



