In this topic so far, two methods of multiple levels have been mentioned. However, there is also a combination of the two (IE make each "world" a separate .dat and within it have separate levels). But then there still is another method which has not been mentioned, which is to save level information in an external file, and load it in to the same game file. This is a method I am becoming increasingly fond of (especially as I read topics like this one). In total, that makes four methods (if you count the combination as a separate method). Here are some pros and cons for them:
- Single file:
Having all levels arranged in different areas of one game, possibly with activation regions.
Pros:- You can have stand-alone games.
- All scripts for the game are updated together.
- All levels are in one area to be viewed/edited.
Cons:- Problems getting activation regions working correctly.
- Everything in one space makes it complicated, and hard to find the bit you're looking for.
- Multi file:
Having each level in a separate .dat file.
Pros:- Everything is separate, so you can find the level you want.
- No confusing issues with activation regions.
Cons:- Everything is separate, so you have to load another game when you want to change a level.
- You change one bit of code or add an actor in one game, none of the others are affected, so you'll have to change codes in every single one.
- You end up with a relatively large list of files.
- Combination:
Dividing each area into single file levels, but having multi file areas.
Pros:- All levels of each area are together to be viewed/edited.
- Smaller individual files to search through.
- Fewer scripts to change.
Cons:- Still issues with regions (though possibly reduced).
- Can still get complicated in each area.
- You still have to change things for multiple areas, though less than multi file.
- Still a fair number of files.
- External data files :
Storing level information as separate data and loading it into one game file.
Pros:- All scripts for the game are updated together.
- No confusing issues with activation regions.
- You can add additional information about objects, reducing the number of actor types.
- You can make your own level builder, with the custom options you want just for your game.
- If the level builder is good, other people can make their own levels easily if you add support for it.
- Lots of other convenience issues.
Cons:- Still a large list of files.
- You can't use tiles.
Hope this helps and if you have any comments, things I left out or require help with something, let me know.