Agree on the death thing, just die once, people are gonna save and reload most times that they die, and it doesn't make contextual sense if we have any kind of RPG elements - even just the basic inventory of weapons keys. Lives is a bit of an arcade hangover that most games can (and should do without).
On that note, we'll need save and load functions sometime soon (although the map structure is in place, and unlikely to change now, we probably need to think a bit more about player structures and inventories / progress in each level, etc.). Also, should we allow saving at any point, or just at the start of a level, or at any intex system, or...? I quite like the idea of just auto-saving when you start a new level.
When doing the save/load, we must make it very easy and quick to reload the last saved game (I hate having to wait for a reload, it really prevents you from staying immersed in the game).
On non-linearity
================
How about: On starting the game (and loading), you see a world map (the image is defined per game module). Available locations appear on this map, and you can choose where to go. Different locations take you a start level, which then is a linear progression of any number of levels. Finding stuff in the levels can then unlock other levels on the map.
This gives the benefits of non-linearity (choice of order to do things, ability to try something else if you get stuck), but without having to worry too much about it when building a 'location' which may consist of 5 levels which you make your way through in a largely linear fashion. Obviously player classes, etc will allow a limited amount of non-linearity within a location (i.e. different solutions to same problem), but essentially they remain linear. Never played tower assault (I know, I know!), so don't know if that's close?
Also, this structure might have an impact on our save/load options - we could restrict saving / loading to only be on the world map, and partial progress in individual locations is NOT remembered, just completion of locations. On death in a level, we simply reset the entire level back to it's original state. It's a simple approach, but makes our save function dead easy...
[snipped another crosspost re: todo lists and sourceforge tasks]
On that note, we'll need save and load functions sometime soon (although the map structure is in place, and unlikely to change now, we probably need to think a bit more about player structures and inventories / progress in each level, etc.). Also, should we allow saving at any point, or just at the start of a level, or at any intex system, or...? I quite like the idea of just auto-saving when you start a new level.
When doing the save/load, we must make it very easy and quick to reload the last saved game (I hate having to wait for a reload, it really prevents you from staying immersed in the game).
On non-linearity
================
How about: On starting the game (and loading), you see a world map (the image is defined per game module). Available locations appear on this map, and you can choose where to go. Different locations take you a start level, which then is a linear progression of any number of levels. Finding stuff in the levels can then unlock other levels on the map.
This gives the benefits of non-linearity (choice of order to do things, ability to try something else if you get stuck), but without having to worry too much about it when building a 'location' which may consist of 5 levels which you make your way through in a largely linear fashion. Obviously player classes, etc will allow a limited amount of non-linearity within a location (i.e. different solutions to same problem), but essentially they remain linear. Never played tower assault (I know, I know!), so don't know if that's close?
Also, this structure might have an impact on our save/load options - we could restrict saving / loading to only be on the world map, and partial progress in individual locations is NOT remembered, just completion of locations. On death in a level, we simply reset the entire level back to it's original state. It's a simple approach, but makes our save function dead easy...
[snipped another crosspost re: todo lists and sourceforge tasks]