Level structure

Moondust uses three models of level structure:

0) Single file The simplest method of organization - using a level file and content only without customization:


 * LevelFilename1.lvlx

1) Custom directory All customized content is placed inside special custom directory - a directory with the same name as the level's filename (without the ".lvl" or ".lvlx" suffix):


 * /LevelFilename1 - Custom directory for a level with the filename "LevelFilename1.lvlx"
 * image1.png - Some level-specific custom graphics
 * image2.png
 * image3.png
 * rock'n'roll!.ogg
 * LevelFilename1.lvlx

2) Heap All customized content is placed together with a level. When you put other levels into this folder, they will use the existing custom content, too.


 * LevelFilename1.lvlx
 * image1.png - Some common custom graphics
 * image2.png
 * image3.png
 * rock'n'roll!.ogg

3) Mixed Using "Custom directory" and "Heap" models together. However, if a file in a level-specific folder has the same name as a file in the global episode folder, the level-specific file will be used only in the corresponding level. Otherwise, the custom file in the global folder will be used.


 * /LevelFilename1 - Custom directory for level with the filename "LevelFilename1.lvlx"
 * image1.png - Some level-specific graphics customization
 * image2.png
 * image3.png
 * meow.png - high priority
 * rock'n'roll!.ogg
 * LevelFilename1.lvlx
 * image4.png - Some common graphics customization
 * image5.png
 * meow.png - if the level "LevelFilename1.lvlx" is loaded, this file will be ignored because the file has already been found in the level's custom directory
 * hardcore.ogg