Please read if you're going to make a level for the compilation and work on the base ROM!
If you want your level to be in the compilation hack, you have to abide by the following rules
. If not, it's fine to do whatever you want.
1. Your level must be made in the base ROM. Anything not made in the base ROM will not be accepted for the compilation.
2. Please include all additional files you may use, such as sprites, map16, music, uberASM, etc.
3. Please include your changed copy of global_settings.asm and multiple_midway_settings.asm if you have changed them.
4. You can use:
- 1 main level
- A maximum of 6 sublevels
- A maximum of 32 secondary exits
- One Map16 page for FG and BG respectively (total of 2 pages)
- A maximum of 8 ExGFX files, including layer 3 files
- A maximum of 3 custom songs
- A maximum of 10 custom sprites, including generators and shooters
NOTE: The number of sprite slots supported by Romi's SpriteTool is obviously restrictive.
5. You are allowed to insert/modify the following as you want:
- Global settings such as the number of initial lives: options are provided in "global_settings.asm"
- Multiple midway points settings: options are provided in "multiple_midway_settings.asm" and also some screenshots for clarification in the "common patches" folder
- LevelASM and patches can be used, but no global changes. If you are concerned about a patch you want to use, ask in the discussion thread for clarification
This is also a list of what you have to submit.
6. You cannot modify but use the following:
- Shared map16 (page 2 and 3) and pages 0 and 1
- Patches or blocks already inserted to the base ROM
- Global palettes
- Global ExAnimation
tl;dr Don't change stuff that globally affects other levels.
You won't be allowed to use ExGFX61-63. Since we only have a limited number of such things, we are going for communist's method.
7. A few notes:
- Some of your global changes such as custom hud, custom global songs (e.g. P-switch music), etc. won't be applied in the final compilation hack, both for uniformity and for the technical difficulty.
- The number of lives will be infinite in the compilation hack.
- Here's a list of the already used FreeRAM in the base ROM.
Base ROM Instructions
1. Some shared custom blocks take up FG3 space and part of palette 6. In case you need extensive graphics and want to disable them, just uncheck "Enable Lunar Magic's global animations"
2. There are shortcut batch files (*.bat)
in the main folder.
They will insert corresponding stuff into the base ROM at the main folder directly, so you don't need to copy paste the ROM file to the subfolders everytime.
(.dsc and .msc files will be automatically generated in the main folder too)
3. You may change some settings for your level:
- global_settings.asm (misc stuff)
- multiple_midway_settings.asm (see the file for more info)
Those files are in in the "common patches" folder
. To save your changes, execute save_common_patch_settings.bat.
4. Level 105 and some sublevels show some examples of usages:
- Level 105, 1CB: basic custom blocks
- Level 1FF: screen scrolling pipes (based on GHB's but they behave like traditional FuSoYa pipes)
If you have any questions, ask ahead in the discussion thread.