Andi's idea
- Provide a "selection" map where the player can choose where to play next. We show a map with several locations where missions can start and the player is going to pick one to play
- After playing that mission, we have an "advance maps" phase, where all other maps are advanced
-> some things might have happened there, too
=> unit locations/healths/whatever changed
- Once that phase is completed, the next mission can be chosen on the "selection" map.
=> We have a very dynamic game with a "strategic" (the selection map) and a "tactical" (the actual RTS game) element.
=> non-linear game (at least it is possible to have one)
However saving such "Campaigns" is more difficult, as we have to save the canvas.xml of every map. The canvas.xml (and maybe some other .xml files) are sufficient, as the maps cannot change. So one map must be saved only once, but we can play many missions on it.
BUT: if we support in-game map deformations, maps can change. Proposal of directory structure in that case:
savegame/campaings/campaign_name/maps/location1_1.map
savegame/campaings/campaign_name/maps/location1_2.map
savegame/campaings/campaign_name/maps/...
location1_2.map is the same as 1_1.map, but with deformations (i.e. a different version of the same map)
savegame/campaings/campaign_name/games/savegame1.save
The ".save" files are like .bpf files, but
- without an actual map
- contain multiple canvas.xml files (one per map)
The maps are stored in maps/ -> whenever a ".save" file is created with a deformed map, that new map is stored into maps/.
Rivo's idea
I had a somewhat similar idea once, I'll write this one down here as well.
- Have two different map types: a world map and mission maps. World map would be per-campaign (e.g. a continent/island/whatever where the battles take place). Mission maps would be same as current Boson's maps.
- The world would change continuously and the world map would reflect that. E.g. you would be able to see where your units/armies are (and maybe those of the enemy as well, if you have spies or something).
- On the world map, you'd be able to move around your armies at your will (maybe even construct new ones). Moving them around would take time and possibly resources though.
- The enemy is moving around his forces as well.
- You and enemy can choose to attack each other by moving your armies into same area. In this case, boson would load the mission map for this area, place the armies onto that map and the mission can begin.
Note that the areas where you can have battles would most likely be somewhat limited because you can't provide a map for all the places (unless we use random map generation).
- When the battle is over, you'd be able to keep your survived units.
- Maybe make it possible to retreat from the battle. You'd keep your units then but the enemy would retain the control over area.
The stategic element here would be that you'd be able to choose where you'll fight and which of your units you'll use. E.g. if you send your units away, you wouldn't be able to defend the area that well if there were a battle.