Lunar Magic is a Super Mario World editor created around February 2000 by FuSoYa and first released on September 24, 2000. It gives users the ability to completely edit the levels, and overworld (including the 'paths' that Mario walks on, what happens at an event after a level is completed, etc), as well as editing the title screen, and even the demo play sequence that plays during the title screen sequence.
The latest version is version 3.00, released on December 25, 2018 .
This table shows the version history of Lunar Magic, including version number, release date and what was added in that version.
|1.00||September 24, 2000||Initial release.|
|1.01||October 2, 2000||
controlled Layer 3 layering. (thanks goes out to Mr. 207 for noticing what this bit was doing)
Header" with options for sprite buoyancy.
|1.02||October 10, 2000||
people. Apparently when saving a level to the ROM, Lunar Magic wasn't storing the last address used to the ROM until after you did another ROM operation. Which means if you went and saved a level, immediately exited LM (or reloaded the ROM), then later came back and saved a different level without changing the address that showed up, you'd often end up over-writing the first level. I can't believe I never noticed this bug until now... O_O
Magic to erase the level being replaced (if it's in the expanded ROM area), then scan and adjust the destination address to avoid overwriting any other data. For best results, don't use this on old test ROM's that will likely have multiple undeleted and unreferenced levels from older versions of Lunar Magic.
|1.03||October 28, 2000||
It seems the "Sprite Display 1" value in the "Level/Change Sprite Header" menu was no longer being saved, making it impossible to change the value in the GUI. Thanks goes out to DarKnight13 for pointing this out.
|1.10||December 25, 2000||
the ROM for level use, called ExGFX files. Also added a FG/BG/SP GFX tileset list bypass hack so a level can access these files. Basically, this creates a new table of 0xFF list entries that you have direct control over, allowing you to select exactly which 8 GFX files are loaded by a level. Check the documentation for details.
3bpp tiles. In other words, most 8x8 tiles will have access to all 16 colors of a palette instead of only 8. This increases the amount of raw GFX data to compress by ~25% though.
0x40200-0x60200, it will insert the rest of the GFX to the expanded portion of the ROM instead of just giving an error.
are stored in the expanded ROM space (meaning it will erase the old GFX and scan to ensure it doesn't overwrite things).
list, since they can be safely implemented now with ExGFX.
memory and the maximum number of sprites per screen.
SMW palettes, useful for backing up and restoring colors.
palette instead of using the standard shared palettes.
viewing intro level 0xC7, unless it has a custom palette.
(the intro level) to prevent the game menu from changing the back area color to other hard-coded values. If you don't want the hack inserted for some reason, hit F8 before saving this level.
hack to support storing BG tilemaps in the extended ROM area.
viewing level differences caused by completing Special World.
Objects" window... this is only usable in the debug version anyway. Consequently, the "custom.bin" and "custom.txt" files are no longer included in the zip file distribution.
crash when trying to erase a corrupt level in the ROM.
pointers. This means that when it was removing a level there was a small chance that some data would only be partially erased.
|1.11||February 9, 2001||
levels. It caused Lunar Magic to incorrectly save the list index number to the ROM/MWL file and consequently made the game load the wrong sprite graphics.
version. It's useful for viewing some things that aren't in the main level pointer table. Try address 0x30338 for the boss monster test room. ^^
16x16 tile in the 16x16 Tile Map Editor, which is accessible through the previously unused "Edit 16x16 Attributes" button. Although standard mouse clicks for copy/paste already do this when the 8x8 Tile Editor Window is open, the former is more intuitive for beginners.
the background image behind everything. This is to make it easier to see the valid workspace area of the level.
a blue gradient, for the sake of correctness.
|1.20||May 20, 2001||
website will be taken down, since the help file is more easily maintained and generally more helpful.
allows copying compatible objects or sprites between levels. In fact, since it was implemented using the standard Windows Clipboard, you can even copy between multiple instances of Lunar Magic!
modes 1E and 1F will now show up in the editor as they would in the game. Although technically none of Nintendo's levels appear to have used those modes in the first place, it's still rather interesting to be able to make a translucent level. ^^
the ROM rather than having it hard coded. Additionally, the “On/Off” block and the “always-turning” turn block will now show up as they'd appear in the game.
water surface tile in tile sets 4,5,7,9 & D (in other words, all the tile sets where the water surface would show up as a blue question block). The modification will be inserted automatically the first time you save a level to the ROM.
end of the animated tile area, for use in animated tiles.
Probably the most noticeable change is that the status bar is now anchored to the bottom of the main window, which is really where I should have put it in the first place.
colors of the current palette it was using if the window was open while a different level was loaded. There was also an annoying screen flicker when that happened, which has also been fixed.
left of the preview screen to suggest which GFX files could be loaded into SP3/SP4 to view the sprite properly.
Mario to walk off the edge of the screen without passing the level, will apparently not display any smoke or fire when (x&1) is true. Lunar Magic has been updated to do the same.
will contain the special sprite commands (like layer 2 scrolling, for example) and the sprite generators.
overwriting for the 4 upside-down slopes. This has been corrected in Lunar Magic. A thank you goes out to Jonathan for noticing this one.
a block tile that has been placed using the Direct Map16 Access feature.
modified/corrupted by something (like a virus, for example). Previously the program would just silently terminate itself on startup when that happened, which wasn't exactly informative.
|1.30||September 24, 2001||
to get into it by now anyway. Only minor updates have been done to it since the last version.
of the submaps around. Thanks goes out to ßouché for finding the data to support this.
have a really old version of comctl32.dll though (earlier than 4.70), this feature will be automatically disabled.
open while you edit the level. The main editor window is updated immediately whenever changes to the palette are made.
palette editor, and a right click to paste it back in.
editor, since it was inconsistent with the order of the PC color values.
level without a custom palette overtop of a level with a custom palette resulted in the level using a custom palette of "random" colors.
closing the MDI child window instead of the parent window.
instead of blue.
coordinates. A thank you goes out to Iggy for sending me the level that allowed me to track this one down.
Map16 data, a significant increase over Nintendo's limit of 2 pages. You can change the active page used by the background by using the Page Up/Down keys in the Background editor window. Any ROM with the old BG ASM enhancement will be automatically detected and updated when a modified background is saved.
Nintendo's limit of 2 pages. The first extended page has been made tile set specific, while the rest will remain fixed for all levels. The new tiles can be accessed through the "Direct Map16 Access" menu of the "Add Objects" window.
of another tile. For example, if you copy a coin tile into one of the new FG pages, the tile will not only look like a coin, it'll actually act like one too! To only copy a tile's appearance as in previous versions of Lunar Magic, just hold down the control key while pasting.
in the 16x16 Tile Map Editor Window using keyboard shortcuts (F2,F3,F5,F6,F7,F8). Also added confirmation dialogs for those keys plus F9.
the temporary data of the currently selected tile in the 16x16 Tile Map Editor Window when placing a tile into the Background Editor Window…it _should_ have only been using the tile number. This created the illusion of being able to take a 16x16 tile, modifying it and then pasting it directly into the background without actually saving it somewhere in the Map16 data first.
positions when moving things near the edge of the screen or an invalid area.
zero would result in the object jumping to layer 1 (I'm surprised this has never been noticed before…)
|1.31||October 1, 2001||
as BG Map16 data, overworld data, etc when saving a level. Thanks goes out to SomeGuy for submitting the patch that revealed this problem.
currently selected 8x8 tile in the 16x16 tile editor window without opening the 8x8 editor at least once beforehand.
and bottom left 8x8 tile numbers were switched around. Thanks to Sendy for pointing this out.
16x16 editor window incorrectly reported tile gameplay settings of 0x130 in the 16x16 editor window, even when they had been changed.
indicated. It has now been added to the sprite list, and the tool tip has been updated. A thank you goes out to Iggy for pointing this out.
(X&1), so Lunar Magic's description of it has been updated.
|1.40||December 25, 2001||
editing layer 1. It's now possible to move around the levels, pipes, star roads, the paths Mario walks on, the event activated by passing a level, the direction enabled by passing an event, etc.
of the ROM has been implemented. This should prevent any future problems like the one in version 1.30. However, only data saved with the new version of LM will use it.
mimic the animation you would see in the game for coins, question blocks, backgrounds, etc.
editor window regardless of what you already have selected has been implemented in all editing modes of LM that didn't already have it. The previous function handled by control right clicking in the Layer 2 Event Editor Mode of the overworld editor has been moved to the shift key.
One such modification has resulted in the removal of the old limitation of levels from 0XX not being able to exit to levels in 1XX and vice versa… any level can now exit to any of the 0x200 levels, and any level can access any of the 0x200 Secondary Entrances. Note however that this is dependent upon Lunar Magic converting the exits in a level from the old style to the new style; the old style exits in unmodified levels will still follow the old rule. For example, if you use a new exit to go from one level block to another, and then use an old style exit in that level, the old style exit will unexpectedly divert you back to the original level block. But this can easily be solved simply by resaving the level that contains the old style exit so LM can automatically convert all the old style exits in the level to use the new enhancement.
use both standard and secondary entrances within the same level. Thus the "Enable Secondary Entrances" option in the level menu has been moved to the "Add/Modify/Delete Screen Exits" dialog.
for setting the X/Y and Sub-Screen position which allows for any X/Y coordinate, with an option for using either the original method or the new method for setting Mario's position.
should be a water level or slippery (or both!), rather than using one of the Mario Action settings (which was previously the only way one could enable either of these).
display the screen number and sub-screen label for each section, which may make placing entrances a bit easier.
the new exit information that has to be stored. Older versions of LM can still read the newer MWL files, but they will import the main and secondary entrances incorrectly. LM continues to remain backwards compatible with MWL files created with older versions of the program.
cursor along the right and/or bottom edge of an object's tiles until the cursor changes.
through the file menu.
to ROM" dialog has been removed. It's an old function that should have been taken out long ago.
as recent changes have made turning that off inadvisable under any circumstances.
|1.41||January 1, 2002||
overworld's layer 2 data being accidentally stored in a separate bank from the rest, making it inaccessible to the game and Lunar Magic. Thanks goes out to SomeGuy for submitting his hack which revealed the problem.
overworld editor was not being erased prior to saving a new copy of it. This means repeatedly saving the overworld would result in the gradual build up of undeleted segments of data in the ROM.
causing old style secondary exits to use mangled "Mario Action" values during gameplay. The fix will be automatically inserted the first time you save a level to the ROM. Thanks goes out to VinnyMack for pointing this out.
Apparently only one tile can be "destroyed" per event… in cases where there are multiple entries for the same event, the one nearest to the bottom of the list is used.
will now also make future path tiles translucent.
increase/decrease the Z order of selected objects/sprites in Lunar Magic (I don't have a mouse with a scroll wheel though, so this feature hasn't been tested).
|1.42||February 9, 2002||
entrance to use secondary entrance 0 or 100, and the Yoshi wings to use secondary entrance C8 or 1C8. The fix will be automatically inserted the first time you save a level to the ROM using the new version.
dialog for method 2 was sometimes being initialized to the wrong setting.
the Layer 2 event path tile area in the Layer 2 8x8 editor mode with the blank "X" tile could cause rather nasty things to happen if saved to the ROM.
where the midway point entrance ASM code does not check the "Use Vertical Level Positioning for all entrances" flag. The fix will be inserted the first time you save a level to the ROM with the new version. Thanks goes out to Dwario for pointing out that there was a problem.
for the Japanese version).
the Japanese version).
event number beside levels on the overworld in the overworld editor. Thanks to Pikachu14 for the suggestion.
without saving the current level/overworld first. You can turn it off in the options menu if you want.
you run the program.
numbers the game checks for when determining if a defeated boss sequence or the end game sequence should be displayed.
numbers the game checks for to display special messages like the switch palaces and Yoshi's house (not supported for the Japanese version).
numbers the game checks for to enable the changes that occur when special world is passed.
editor for certain non-level tiles that can be revealed by events, such as the translucent bridge and door tiles.
mushroom for both, so the program has been updated to display the correct images. Thanks goes out to Sendy for pointing this out.
mode and the last used layer editing mode.
|1.43||June 15, 2002||
sprite 65. Lunar Magic has been updated to reflect this. A thank you goes out to Dwario for pointing this out.
"Modify Level Tile Settings" dialog, which has been fixed. Thanks goes out to Sendy for noticing this.
of the file names within it were longer than 100 characters.
the ROM's GFX are still 3bpp or vice versa, as that will appear to scramble the graphics of one or the other. The help file already warns against doing this, but apparently not everyone reads it.
been turned into a standard feature.
|1.50||September 24, 2002||
are described as "quick" in the tool tips will skip the dialogs that normally appear when using the standard menu items for those functions.
game levels, and included an option to do the scan automatically whenever you save a level to the ROM. This may help people who accidentally use exit-enabled objects without setting them up to go anywhere.
right-clicking, as suggested by Sendy.
Sprite Command 0xD2, thanks to Iggy.
silver POW is hit than I had realized. Lunar Magic has been updated to reflect this. Thanks goes out to KJAZZ and Dejiko.
enter it while riding Yoshi. Thanks goes out to EYE for pointing this out.
file when opening a ROM using the command line. Thanks goes out to EYE for pointing this out.
animated tiles unless you reopened the ROM. This has been changed so that they'll be reloaded whenever you reinsert the GFX.
reverse the changes if you had a custom palette.
the ROM, the RAT system would save it with a size of 0x10000. This could later cause large sections of data to get erased since SMW is a LoROM game and LM didn't expect data tables to be larger than 0x8000 bytes. Thanks goes out to EYE for supplying the hack that revealed this problem.
ExGFX files loaded by the level is larger then it should be, since some tile editors will modify the size of smaller files (which can cause glitches in the game).
and changed the SNES Registers and Level Settings mode to have a level on layer 2, the custom BG flag would not be cleared when saving the level. This could cause several problems. One, SMW would try to decode the data as both a level and a background, though it would only display the level data. In some cases this could cause the game to freeze/crash. Two, Lunar Magic would decode the level data as a background but then discard it and display a blank level on layer 2, creating the illusion that LM was not saving layer 2. LM would also allow you to use the level number as the source for a background to copy in the "Switch BG" menu. And three, LM would attempt to erase the layer 2 level data as background data when saving over the level. Which means that if the level being erased was last saved in LM version 1.10 to 1.31, it could potentially cause other data in the same bank that was last saved in LM version 1.31 or lower to be erased! (Data protected by RATS is unaffected in versions of LM that support it, ie. LM 1.40+.) Thus this version of Lunar Magic correctly clears the custom BG flag when saving levels for layer 2, and also has extended checking to make erasing old levels with this problem safe for older non-RAT protected data. Thanks goes out to several people on the SMW forum for pointing out symptoms of this bug, which has apparently been in Lunar Magic for over a year and a half... O_O
images, and vice versa. When switching to level modes that have fewer screens available than the current level mode, Lunar Magic will now simply delete the objects and sprites beyond the new maximum number of screens. Also added a warning dialog for this.
allowed for the current level mode will no longer be displayed on the last screen in Lunar Magic. The sprites will simply not be shown at all, and the objects may overwrite portions of the other level layer. This is to more accurately emulate how SMW displays it. If you have levels created in older versions of LM where the maximum number of screens were reduced due to a level mode change, you can hit CTRL-F8 to delete any extra objects and sprites.
update the "Use Vertical Entrance Positioning" flag to reflect the level layout.
editing mode you're in.
multiple tile selection and drag/drop support, plus windows clipboard support.
registry, so that those with faster computers can start the program with this on all the time if they like.
different level. It will stay in the editing mode you're currently in, if possible.
to avoid the "My Documents" default folder that Windows 98 likes to use.
of sprite buoyancy on the game's speed and on interaction with layer 2.
|1.51||September 24, 2002||
|1.60||September 24, 2003||
involves physically moving the ROM banks around which will make the ROM incompatible with other SMW utilities, usage is not recommended except for those that need an insanely large amount of space. You can use Shift + Page Down to force the conversion. You will need Snes9x 1.39a (or 1.39mk3) or higher to play the ROM (zsnes doesn't yet support it).
self-contained file instead of the split files used in the old format. Lunar Magic will still be able to open files in the old format to maintain backward compatibility.
simple palette animation, on a per-level basis.
files, for a total of 0xF80 files. Also added a new dialog to allow Super GFX bypassing, which lets you access the new files and setup the FG/BG/SP/ExAn GFX from one dialog. The settings in it are level specific, meaning you don't need to use a global list of GFX files to load as with the older bypass code. The old list method is still supported, but it cannot access the new files.
mouse cursor in the BG editor.
level when saving to the ROM, in case you exceed the maximum that the game can usually handle.
Exits" button, a "Super GFX Bypass" button, and a "Edit Extended Animated Frames" button).
Door). Due to strange coding on Nintendo's part, the door tiles break up when the door is on or beside a screen boundary. LM has been updated to do the same.
tiles (on levels using FG/BG tileset 3) with the wrong palette.
have no effect on Yoshi coin palette animation when using a custom palette. Thanks goes out to BMF for pointing this out.
of your choice by hitting F4 in the level or overworld editor.
gameplay settings for the FG Map16 tiles.
sprites in the editor (does not affect the actual game).
the windows clipboard, so you can copy and paste between multiple instances of Lunar Magic.
You can also set Mario's starting position in this mode by moving the Mario sprite around.
overworld sprites for each slot. Thanks goes out to JW for initial research on this.
levels, which is usually used for the switch palace levels.
editing mode for standard cut, copy, and paste operations.
steps for layer 1 and 2 combined. The previous limit in the editor was 0x100 steps, which turned out to be a mistake since the actual limit used by the game was only 0x80 and exceeding it caused all silent event steps to not show up during gameplay.
toggling the ability to use the start button for scrolling on the main overworld map.
changing which level the earthquake sequence is activated on.
"Modify Level Tile Settings" dialog if it was activated using an alt-right-click, which has been fixed.
more consistent with the level editor. Keys 3-6 have been moved to 7-0. Sorry if that causes any confusion, I should have thought ahead…
each individual submap. You can even specify ExGFX files. However, you must use a star or pipe exit to make the game load the different graphics… a normal exit tile won't do it.
whether they're below or above the net, which is apparently based on their X position.
tile editor left/right/up/down by one line of pixels using the shift and arrow keys.
button in the main editor (background editor, palette editor). Thanks goes out to Sendy and Someguy for bringing this up.
entrance, the main entrance label will now simply display a leading ">" character. It just looks less messy this way when translucent text is enabled.
programs when closing LM's tool windows under certain circumstances. Thanks to the Juggling Joker for mentioning this.
editor. Thanks goes out to BMF for pointing this out.
really been internally turned off for level (omitted). Thanks goes out to BMF for bringing this up.
of a layer 1 level tile that can be "revealed" or "destroyed" through an event, in the game the revealed or destroyed tile still looked like the old unedited tile until the screen was refreshed.
by Nintendo (event 0x77) was not being enabled for use like the others, causing certain problems for any level that tried to use it.
was open at the same time could cause it to behave strangely.
editor, then went back to the level editor and saved the currently loaded level, it would corrupt the level's custom palette (if it had one).
horizontal exit pipe tiles. Thanks goes out to Gandalf for pointing this out.
don't act as a door.
tracking code wasn't disabled like it should have been, which would cause bypassed FG/BG GFX to not load if you exited to a level that used the same GFX file in the standard list as the level you came from. Simply insert your ExGFX with the new version of LM to install the fix for this.
move up or down first depending on its X position. Thanks goes out to Sendy for pointing this out.
Apparently this sprite also causes Mario's current and last saved at overworld map number to be set back to the starting map of the game. Also included an optional fix for the sprite to remove this limitation (read the tool tip for more info).
based on (Y&1), not on its height from the ground. Thanks goes out to Lord Allan for bringing this up.
release of Lunar Magic. Future versions will probably just be for fixing any bugs that appear. A big thank you goes out to the whole SMW hacking scene, for helping to make Lunar Magic the program it is today. The last 3 years have been very memorable. And who knows, maybe I'll make another editor some day… -_^
|1.61||December 25, 2003||
Lunar Magic would shut down whenever it tried to read more data from the ROM. Thanks goes out to SomeGuy for pointing this out.
around the file name and path, causing problems for snes9x when the path or file name contained a space. Thanks goes out to Excel for bringing this up.
the 8 MB dialog warning, but only if it was done after a “not enough room” message. Thanks goes out to Sendy for discovering this.
para bob-omb, bubble bob-omb, bullet bill, the torpedo launcher hand, puff of smoke, and fishin' Boo. Thanks goes out to KT15X and BMF for bringing this up.
x3”, and added display support for it. Thanks goes out to BMF for discovering this!
on X&1, and will always be short if the sprite memory index is not set to 1. Also, only 2 long ropes can be on the screen at once during gameplay. Thanks goes out to Sendy for bringing this up.
follow Mario or walk with a hop depending on X&1. Thanks goes out to MetaRidley for noticing this.
longer cause tileset-specific Map16 data to be unnecessarily reloaded from the ROM. Thanks goes out to Jeffrey for bringing this up.
"Open Level Number" dialog, highlighted the level number in the dialog, and added a feature to delete all sprites, objects and exits in a level with Ctrl+Delete at HyperHacker's suggestion.
header" dialog, at HyperHacker's suggestion.
appropriate dialog, at Sendy's suggestion.
go back and forth in level history (you can hold shift to force this if the Sprite or Object editor window is open). Shift + Alt with left and right goes down/up by one level, and alt right goes to the level of the exit on the screen you clicked on. This feature can be disabled in the options menu if you don't want to use it.
|1.62||April 11, 2004||
1.60. If the maximum sprites exceeded message box was ever actually displayed, it could cause various problems. Symptoms included strange values showing up in the GFX, ExGFX, Insert Level and Insert Directory address fields, as well as areas filled with garbage tiles showing up in unused portions of the BG Map16 data. The latter is caused by RAT tags getting embedded in the data (1.60 only), leading to your ROM slowly filling up with useless copies of it each time you save the Map16 data. This version of LM scans the BG Map16 data for the tags caused by the bug, and removes them before saving to prevent further space from being wasted. You may also need to set the address to insert GFX back to 40200, the address for ExGFX back to 100200, and erase garbage tiles left over in your BG Map16 data. Thanks goes out to TheClaw for submitting the hack that revealed the problem.
file of size 0.
the ROM will not abort the rest of the extraction process.
the editor and try to use the clipboard keyboard shortcuts in the background editor window, the keys would be passed to the main editor window and replace the contents of the clipboard with the object/sprite selected.
enabled. Thanks goes out to Kenny for bringing this up.
are placed behind the empty tiles of the bush object. Thanks goes out to thesubrosian for noticing this.
object size info in the Add Object/Sprite windows, at Jesper's request.
|1.63||September 24, 2005||
button. Thanks goes out to Juggling Joker for bringing it up.
a user inserted custom block ASM that tried to dynamically change a tile into a tile that is at or above 0x400. The fix will be installed when you save the Map16 data. Thanks goes out to Darkflight for submitting the hack that revealed the problem.
of 3 (in the editor). Thanks goes out to Smallhacker for discovering this.
on the left side of the screen while moving left could, if timed correctly, paste the items on the other side of the editable area. Thanks goes out to Smallhacker for pointing this out.
from the 16x16 editor.
true safe limit for that file (0x1B00, or 0x1A00 for All Stars + World, down from 0x2000).
E0) in the editor to emulate how the game does it. Thanks goes out to Glyph Phoenix for pointing this out.
Bio for pointing this out.
not putting it on a sub-screen boundary. Thanks goes out to HyperHacker for discovering this.
didn't use. Thanks goes out to mikeyk & Smallhacker for discovering this.
gradients to alt-right click. This way, when using control-left click to copy a color, you don't have to release the control key when you right click to paste (making it less annoying and more consistent with the other editors).
click, to make room for the new clipboard shortcuts.
the 16x16 and 8x8 editor windows.
editor are now standard features.
LM uses by including new tile arrangement instructions in the sprite tool tip file. Read the help file for more details.
|1.64||September 24, 2009||
list and saved to the ROM or a mwl file, LM would save the data but upon reopening the level it would not read anything from the list at all. Thanks goes out to Jimmy52905 for discovering this.
button inside the editor window and then left clicking outside it would cause LM to crash. Thanks goes out to crushawake for finding this.
break up on screen boundaries in some cases. Thanks goes out to Alex99 for noticing this.
you switch to view screen or sub-screen boundaries, as reported by Maxx.
the correct direction. Thanks goes out to Sukasa for finding this.
from an 8 MB ExLoROM game.
error while reloading the overworld and tile animation was turned on, LM would start spawning multiple message boxes. Thanks goes out to Obsidian for reporting this.
instead of ctrl-right click, as in the level palette editor. Should have been done in version 1.63.
without malfunctioning, which the original game doesn't allow... I think Nintendo originally set it up as a corner path tile and didn't completely convert it when they decided to use it as an exit tile.
together with fewer steps using alt-left click.
redirection of exits based on coins and time.
to activate a secret exit when beating a boss, which was used by the Big Boo Boss.
actually fixed this years ago and temporarily released the fix as a patch, intending to later integrate it into LM for version 1.62. But mysteriously the fix never made it into the program... I suspect I was waiting till I had time to check/adjust the fix for the Japanese ROM as well, and forgot about it.
(body)", and "Mario within block (head)" custom block ASM hooks. Two of these were used in a few of DW:TLC's blocks. Should of been done before, but likely wasn't for the same reason as the sprite fix.
against using 16 color icons at times.
non-administrator accounts on Win2k and up.
as the program hasn't used those for saving levels since 2003. Note that this does not affect LM's ability to open levels saved in the older format.
it's missing, plus an option to do it silently.
arrangements for custom sprites based on the extra info bits (as done by a 3rd party ASM hack). Also added an option to turn this off. Check the help file for more info.
Collections of Sprites", which uses external files to allow custom sprites to be added a little more easily than using the "insert manual" command. See the help file for more information.
into 2 separate files so custom sprites can use their own file. Check the help file for more information.
the code in Lunar Compress. This removes the limitation LM had about not honoring RATs that existed in a different LoROM bank than the data being protected, and also lets LM use the full size allowed by the RAT format.
easier for third party programs to avoid this data.
phasing out the old WinHelp system.
|1.65||October 1, 2009||
open the ROM twice when it shouldn't have. This fails in 1.64, due to certain file operations having been tightened up to detect this kind of thing in old code.
save them correctly and would then disrupt the level's Super GFX bypass settings. While this shows up in 1.64, the code was wrong in all 1.6x versions yet apparently still worked due to a strange coincidence.
boundaries like the game does. Thanks goes out to TRS for noticing this.
|1.70||April 1, 2010||
levels can now use 50% more 8x8 FG/BG tiles (0x100 tiles), which can be accessed using 2 extra GFX slots (BG2 and BG3). A big thanks goes out to smkdan for developing and submitting this improvement, and to Vic Rattlehead for testing it for him.
pages for FG Map16, and 0x40 pages for BG Map16.
Control + F1 in 16x16 editor window. New hacks will have this set to off by default.
background can now access up to a bank's worth of Map16 tiles (0x10 pages).
432 that Nintendo went with, which translates to 5 extra rows of 16x16 tiles. While this doesn't make much difference in horizontal levels, it means vertical levels can now have backgrounds that will seamlessly wrap vertically. It also effectively means the end of the "animated tile garbage" that used to appear when the background was vertically scrolled past the viewable range.
addition of several new 8x8 line types and new palette types (such as Palette Rotate), palettes can have multiple colors per entry by using ExGFX files for the source data, multiple new triggers for use in custom blocks (such as custom/manual/one-shot), the ability to use a few non-compressed ExGFX files for source tiles, the number of frames can now be set up to a limit of 0x100 frames per animation, the addition of a global animation list for animations to be run in all levels, and settings that can disable both the original game's tile animation and color 64 palette animation as well as Lunar Magic's own level and global animations on a per-level basis. ExAnimation now also spreads entries across multiple frames instead of doing them all at once every 8th frame, to improve the amount of vblank time available for animations. *Note that this may have implications for custom blocks programmed to change behavior based on LM's ExAnimated frame counter at $7FC004. While the counter is being maintained for backwards compatibility, it's only truly accurate now for slots 0,8,10 and 18 (although if you have a block that hurts mario, it seems the next 2 slots after those are still close enough). If you find this is an issue you can either move your animations to the mentioned slots, or recode the blocks to use the new animation per-slot counters starting at $7FC080 (add 0x20 for global entries).
source tiles must now be one after the other (previously the two tiles had to be separated by a single tile, which was inconsistent with all other line types).
animation Lunar Magic uses. I've also bumped up the default rate to 15 fps. The faster settings are only really useful if you're using the ExAnimation speed tricks.
ASM hacks, in case you want to convert your ROM to use FastROM.
the end of a level. Nintendo didn't bother with this as they didn't use those colors much. Colors related to the status bar (colors 9,A,B of palette 0 and colors 9,A,B,D,E,F of palette 1) will not be affected. If BMF's version of the fix is already installed, LM's won't be inserted.
unexpanded ROM area unless it's within the original GFX area.
which will resave all non-modified levels except the test level then clear most of the data in the original level data area to free it up for 3rd party ASM hacks.
background tiles with F9.
background editor with Ctrl+Shift+Insert.
from the "options" menu to the "view" menu.
were a couple hundred of them overlapped and drawing them tended to slow down older computers.
that have the extra bits set to 1.
level number labels were turned on and you moved around level tiles, it would leave a trail of unerased labels behind. Thanks goes out to LobsterIan for reminding me of this.
around in one of the unmodified original backgrounds in the background editor was not enough to cause the changes to be saved... you had to first paste/insert/delete a tile in the background for that.
near or on screen boundaries like the game does. Thanks goes out to era64 for reporting this.
unused. Thanks goes out to Kaijyuu for discovering this.
its X position after all. Thanks goes out to Kaijyuu for reporting this.
as you've saved to a different level number. Thanks goes out to TRS for noticing this.
layer 2, except you can't. Thanks goes out to smkdan for reporting this.
implement this which meant it wouldn't function correctly. Thanks goes out to smkdan for reporting this.
|1.71||April 17, 2010||
Triggers 1-F would crash the game. Thanks goes out to Davros for noticing this.
being displayed in LM as though it were a custom sprite.
selected. Thanks goes out to Dotsarecool for reporting this.
could hold would not display an error message like it was supposed to and LM would only save the sprite header. Thanks goes out to Glitch for reporting this.
changes the setting so it doesn't record any items obtained. Thanks goes out to BMF for submitting the ASM for this.
wants to expand the ROM for data or code they intend to insert themselves.
near or on screen boundaries like the game does. Also removed some junk subobjects from the list for object 3A. Thanks goes out to Alcaro for reporting this.
|1.80||September 24, 2010||
certain conditions. Thanks goes out to Markus for reporting this.
to the ROM and allow the user to revert the ROM to any previous restore point. Note that this requires the program have access to a copy of the original ROM, so you may have to browse to a copy the first time you save in the new version. Also added create/apply IPS to the restore menu.
with multiple tiles in the "Add Objects" window and paste them as a single object. Resizing the object will repeat the pattern of the original tiles pasted. It can also now be resized to larger areas than before, and has been made vertical level compatible so it won't break up like regular objects do. All of which can help reduce level data size.
allows you to set any DM16 object to only be rendered if a certain flag is enabled within a table of values in RAM. Check the help file for more information.
menu, moved the "enable custom palettes" option into it, added undo and redo buttons, etc).
the level palette editor.
bits left over after transitioning between the two as they generally can't be relied upon to always be the same due to the use of custom palettes.
enable, you must extract then insert the original GFX. Note: before you start playing with overworld custom palettes and graphics, be sure to read the warnings about path revealing in the help file sections for the palette editor and the submap FG graphics dialog.
multibyte sprites with 3rd party utilities. Check the help file for more information.
entering more information for multibyte objects. More specifically, it's for object 2D which has now been set aside as a 5 byte object for user defined purposes (do not use this object unless you've inserted code into the game for it, or in-game level parsing errors will occur).
control+alt+F8 to switch grid color).
ROM is detected in the same directory.
in sprite tilesets it was not originally intended for. Thanks goes out to Alcaro for reporting this.
imamelia for pointing this out.
out to EL santo for finding this.
dialog on Win7/Vista.
when you use that browser to download the program. Also added a warning to be displayed when the help file cannot be found.
improve readability on LCDs with ClearType.
|1.81||September 24, 2010||
required ASM for the Direct Map16 Access upgrade (errr... oops. Always ends up being one of those last minute/week changes that trip you up.)
|1.82||October 31, 2010||
the enemy list at the end of the game.
wrong CRC value to check for an original unmodified ROM. Thanks goes out to GlitchMr for reporting this.
SMAS+W ROM this whole time (3MB instead of 2.5MB). This means Lunar Magic hadn't been coded to recognize the extra 500KB as free space. But it was installing some fixed location ASM hacks and tables there, so to avoid compatibility issues this version of LM will only recognize that area as free space when starting a new hack.
Errors" option and inserting an object that would normally be interpreted as an error would cause object resizing with the mouse to use single-pixel increments, making it rather difficult to control. Thanks goes out to Imamelia for discovering this.
in the original game.
either the optimized for speed version of LC_LZ2, or to LC_LZ3 for better compression using a patch submitted by edit1754.
GFX tile. Technically this option has been around since version 1.60, but the only way to change it until now has been through the registry since it was never added to the GUI.
|1.90||September 24, 2011||
selection, reload/save and undo/redo buttons, 2x zoom, 8x8 and palette remapping capabilities, an 8x8 mode with an 8x8 tile selector, etc. This release also introduces a new .map16 file format intended to replace the old generic .bin files that were used in previous versions for exporting/importing single pages of Map16 data. The new files can hold variable amounts of tiles, can optionally be imported to the same location they were exported from, and multiple files can be imported at once. There are also 2 new buttons allowing you to export/import all the Map16 data for all tilesets from/to a single file. LM remains backward compatible with both loading and saving the older raw .bin Map16 data files.
editors to select it in the Map16 editor, and you can also double left click on a tile in the Map16 editor to select it in the 8x8 editor.
background editor with Ctrl+Shift+Insert, as the new Map16 editor makes it unnecessary.
which allows adding or subtracting an offset from all tiles in the background, much like F9 does to selected tiles in the background editor. Also made this function able to change the BG Map16 bank setting automatically when needed.
specified Direct Map16 objects in a level to others in case you've moved the original Map16 tiles to a different location.
different location than Mario's.
game's path fade effect, which frees up colors 1-7 of palettes 0-3 and C-F, and GFX slots SP3 + SP4. Also added a setting to control the path revealing speed when this option is used.
second page will generally act like tiles on the first page.
and star indexes to 0x80.
castle when destroyed is edited, the game will correctly display the edited tile in the destruction sequence.
dialog that lets you type in the GFX files to use instead of selecting from a list. Previously this option could only be changed by pressing Shift-F4.
copy/pasting an entire row.
pastes all copied slots to the same slots they came from, and moved the "Insert all Slots" button to the side.
which appear the same way that LM shows certain sprite commands. Check the help file for more details.
will cause LM to close the ROM after patching instead of closing the program. But for convenience you can still use F4 to run the previously open ROM in your emulator. Thanks goes out to GlitchMr for bringing this up.
in the editor as it will in the game. Thanks goes out to GlitchMr for pointing this out.
allow entering all digits for direct offsets. Thanks goes out to imamelia for reporting this.
of 0 bytes would cause LM to crash if creating a full restore point. Thanks goes out to iRhyiku for submitting the data that helped figure this out.
background could sometimes cause LM to display the background using the wrong BG Map16 bank (although if saved to the ROM, the correct setting would still be preserved and used when the level was reloaded). Thanks goes out to Ultimaximus for reporting this.
other ROMs and had to be closed.
for any reason (like the user overwriting it with a patch), Lunar Magic could crash while moving the mouse cursor over a block that referenced the invalid data. Also fixed a similar bug from 1.30 in the old Map16 editor where it could crash while right-clicking to copy a tile with the invalid data.
make up a pipe would not be displayed in the main level editor until you either saved the changes to the ROM or changed the pipe view index.
apparently Win7 doesn't handle that border type on application windows when Aero is enabled. This had resulted in weirdness from Aero like the caption/title bar of the window being partially offscreen when maximized, and the inner window border occasionally appearing as unerased pixels.
|1.91||December 25, 2011||
coin collection) on layer 2 were not always displayed if layer 1 and 2 scrolling were not in sync, and another bug where a column of garbage tiles could appear under rare circumstances. Thanks goes out to smkdan for submitting the fixes for his patch, and Zeldara109 for reporting the coin issue.
which is on by default. This will cause Lunar Magic to first try saving data and code past the 2MB mark in the ROM before using earlier space, but only if the ROM is already larger than 2MB. This will help save space below bank 40 for less versatile 3rd party ASM patches/tools to use, as many of them unfortunately do not take bank 40+ into account and will malfunction without warning when installed there.
menu, which will warn if an object is placing tiles beyond the viewable level area into unsafe SNES RAM locations which could cause various issues during gameplay.
editor, to allow exporting existing title screen playback data from a ROM back into a Zsnes savestate, so it can be transferred to a different ROM.
modifying existing objects/sprites. You can also Alt-Right click on an object or sprite to use this.
editor using the remap button.
on a ROM that has already been edited by a newer version of the program.
option from the main editor, but set the translucency level a bit lower than what's used in the main editor.
count as regular clicks.
just by typing.
and support for using images larger than 16x16 for the toolbar buttons.
sprites in Add Sprites window.
dropping off it, at Zeldara109's suggestion.
way in the editor as it will in the game. Thanks goes out to Wiimeiser for discovering this.
appear the same way in the editor as it will in the game. Thanks goes out to andy_k_250 for reporting this.
|2.00||May 5, 2012||
emulator to play levels within LM itself (downloaded separately).
be used to launch external applications or activate internal Lunar Magic functions. It also allows for assigning keyboard shortcuts which can replace Lunar Magic's existing keyboard shortcuts. Check the technical info section of the help file for more details.
possible and only cared about following the sorting rules imposed by the game. Thanks goes out to King Dedede for noticing this.
to an image would cause LM to draw all objects that were on layer 2 on layer 1 instead until the level was reloaded.
windows then closed and reopened them again, the last used currently selected item could not be pasted (and would not be displayed in the preview area for sprites) until the selection was changed. Thanks goes out to Dakress for reporting this.
new Remap DM16 dialog where if you just entered a space for the list, LM would freeze. Thanks goes out to DiscoMan for reporting this.
very rare chance of being triggered by LM's own ExAnimation ASM, causing junk to be displayed in LM for the game's original animations. Support for this tool has been disabled, as it hijacks the same addresses as LM anyway.
colors for a new palette animation when editing ExAnimation frames and left it blank, LM would use a value of 1 but would interpret the entered frame values as RAM offsets instead of SNES RGB values. Thanks goes out to supernova38 for discovering this.
1.90 also count as regular clicks for the middle mouse button. Thanks goes out to Alcaro for reminding me of this.
added a new "Save level to ROM" menu item that works the same way as the save button on the toolbar and assigned it the Control+S shortcut. "Save Level to File" has been moved to Control+W instead of Control+S.
tides to reflect what's safe to use.
the same way in the editor as it will in the game. Thanks goes out to MSA/Gamma_V for discovering this.
Bill sprites slightly in LM to match the game. Thanks goes out to Alcaro for noticing this.
match the game. Thanks goes out to Alcaro for reporting this.
chain saw, grinder, fuzz ball) in LM to more closely match the game. Also greatly corrected their "set to go right" positions and updated their descriptions.
actually show it with a bone ready to throw, to better distinguish it from sprite 32.
in the editor as they do in the game.
directions were reversed. Thanks goes out to King Dedede for pointing this out.
allow previewing them in LM.
level is saved.
GFX/ExGFX are inserted.
a bitmap file named "Lunar Magic.ff5"), and the palette editors ("Lunar Magic.ff3" for the level palette editor and "Lunar Magic.ff6" for the overworld palette editor).
became mostly unusable in 1.90. Thanks goes out to MaZ18 for reporting this.
and Alcaro's suggestions.
|2.01||May 20, 2012||
was a chance LM could crash. Thanks goes out to TRS for discovering this.
wouldn't reset the base index right away like it should. Thanks goes out to jimbo1qaz for discovering this.
tiles in that window were placed at certain locations and in a certain order, LM would refuse to paste the sprite into the level. While in LM's sprite lists this was only evident in version 2.00 with sprite 66 (upside down chainsaw), user supplied sprites in the "Custom Collections" list could trigger it in previous versions as well. Thanks goes out to Wiimeiser for reporting this.
in certain level modes. Thanks goes out to Epsilon for reporting this.
were switched around. Also changed the direction they face. Thanks goes out to Zeldara109 for reporting this.
|2.10||December 25, 2012||
allows multiple tile selecting, is x2 zoomed by default, and has controls similar to the level editor's new map 16 editor for manipulating the current selection in the main overworld window (including a remap button).
option menu, which causes tiles in the main overworld editor to be deselected automatically if you make a selection in one of the selector windows.
as the new 8x8 tile selector makes it redundant.
buttons from the toolbar, to discourage their use in linking tiles in favour of the alt-left click or link button methods. They can however still be found in the overworld menu.
2 star/pipe/exit tiles together.
overworld's view menu.
X=0 with Y>=0x20, as they don't function correctly from there due to a limitation with one of SMW's tables.
placed an exit tile that goes left/right at X=0 with Y>=0x20 then moved it, the tile would partially unlink from its destination tile and would have to be relinked.
changed certain settings of a selected tile then moved that tile without first deselecting it, the tile would either revert to its previous setting or not move the setting to the new location. The settings affected by this were the Star/Pipe/Exit tile settings, the "Reveal this level tile on any of these events" setting, and the "Destroy Castle/Fortress/Switch Palace tile" setting.
Star/Pipe/Exit tiles were selected then you copied or inserted new Star/Pipe/Exit tiles without first deselecting the old ones, the settings of the previously selected Star/Pipe/Exit tiles were vulnerable to getting attached to the new Star/Pipe/Exit tiles if they happened to get dragged over the old ones.
level tile was placed in the main map at the same layer 1 VRAM location as another tile placed in the submap area, the "Reveal this level tile on any of these events" setting would be changed for both tiles whenever you tried to change one of them. Thanks goes out to Gamma V for discovering this.
where the overworld animation tiles in the second half of GFX file 0x14 were supposed to be shown using only the first 8 colors in a palette but LM wasn't enforcing it. Thanks goes out to Shurik Kid for reporting this.
inserted the GFX, the overworld 4bpp modifications for FG3/4 might still be applied, causing overworld layer 1 tiles to use the wrong colors.
tile at the location it's currently assigned to (for exit locations, there must be an actual exit tile there).
match the game.
changes to the switch palace blocks in the emulator.
full remap dialog.
marked as read-only/hidden on its own when possible during a restore operation.
|2.11||February 9, 2013||
show the correct colors for title screen or credits editing. Thanks goes out to Zeldara109 for pointing this out.
controls did not enable the save button when used. Thanks goes out to Zeldara109 for pointing this out.
paste tiles with priority enabled by default for title screen and credits editing, at Zeldara109's suggestion.
current entry aren't lost when you switch which entrance you want to edit.
Secondary Entrances" dialog.
existing secondary entrances in the ROM before importing.
|2.12||February 16, 2013||
Message Box Text", or "Edit Level Names" dialogs in the overworld editor then saving the overworld would change the list of GFX files to load for the main overworld map. Thanks goes out to Wiimeiser for reporting on this.
Vitor Vilela for bringing this up.
very advanced option that's been sitting there since version 1.00 but no one is really going to want to turn it off anyway.
the "Save level to ROM as..." command, as it's another holdover from version 1.00 and not really necessary.
|2.20||September 24, 2013||
added 6 & 8 MB expansion menu items for SA-1 ROMs (see the help file on emulator compatibility with large SA-1 ROMs).
of sprite editing mode. Dragging an entrance automatically updates its FG/BG init position (except for the BG init position in vertical levels), copying an entrance creates a new secondary entrance in a free slot, deleting a secondary entrance clears the slot, and alt-right click lets you modify the entrance properties and change which slot a secondary entrance should use.
current entry aren't lost when you switch which screen you want to edit, and renamed it to "Modify Screen Exits".
renamed the "Delete" button to "Clear Screen".
have been set for each screen.
an exit that points to level 0 or 100. If you have secondary entrance slots that you manually cleared in the past by only changing the level destination, you will need to use the "Clear Slot" button or delete them so they'll show up as unused again.
a new "Game View Screen" option. This creates a draggable SNES-sized screen that you can use when designing levels to figure out what will be visible on the screen. It also optionally has highlighted areas for locations Mario will be during scrolling in different directions, to aid in determining where the screen will be during gameplay.
GFX32.bin and GFX33.bin for display purposes in the editor. Just place files called ExternalGFX32.bin and ExternalGFX33.bin in the Graphics folder for your ROM.
coordinates separate from the main level entrance.
if it's using the new separate coordinates option.
set to screen 0 the game would not record obtaining the midway point for that level.
entrances in the current level.
editor, and a menu item to view them (check the help file for more info on the Koopa Kid sprites). Thanks goes out to Wiimeiser for providing the test patch to examine these.
helps in showing which slot and subslot a sprite on the overworld belongs to.
Thanks goes out to MarioFanGamer659 for reporting on this.
the Add Objects window. Thanks goes out to telinc1 for bringing this up.
the "Other Invisible Objects" view menu option is on and "Conditional Direct Map16 On" option is off. Translucency will not be applied to objects using the +100 option.
same way in the editor as it will in the game. Thanks goes out to Wiimeiser for pointing this out.
bit as you can't stand on it. Thanks goes out to Wiimeiser for pointing this out.
|2.21||December 25, 2013||
overworld editor would display black squares for the sprite data text if the editor had not yet loaded an overworld that wasn't using a custom palette. Thanks goes out to Wiimeiser for helping to figure this out.
to the last 8 entries in LM's "Destroy Level Tile Settings" dialog could cause Ghost House/Castle/etc tiles to no longer give the player a save prompt when the event had already been cleared. This is partly due to a mistake in Nintendo's code, as it treats the list as 0x18 bytes long when it's really only 0x10 bytes. This version of LM relocates the table so it can safely have all 0x18 entries, and repairs the other 8 bytes that may have been changed in previous versions. Thanks goes out to Wiimeiser for helping to figure this out.
switching between vertical/horizontal level layouts. Thanks goes out to Koopster for pointing this out.
castle/ghost house/etc tiles was disabled and the player passed a level using one of those tiles, the player would move off the level even if the event had already been passed.
was a chance that the game could turn the screen on a frame too early during black screen transitions, resulting in a brief full screen flash of color.
preventing ExGFX from being used in tiles 4A-4F and 5A-5F of SP1. This also now makes these tiles 4bpp.
data in the overworld in case people corrupt it with external tools/patching.
mode while on event 0x77 will cause the event to be shown as passed, so you don't have to advance through each step with Home/End for that event. Thanks goes out to Everest for bringing this up.
change dialog when Super GFX Bypass is enabled, at Alcaro's suggestion.
|2.22||February 9, 2014||
(growing/shrinking pipe end) could cause a few pixels of some tiles to be corrupted if the sprite was near enough to the entrance to be processed during fade in. Thanks goes out to WhiteYoshiEgg for reporting this.
no silent events at all and was not yet using the new format, LM would create a single entry for the table as required by the game's original ASM, but the contents weren't specified so it could end up holding something invalid/harmful. Note that while LM now sets it to "no event" and recognizes that as valid, the entry created by previous versions still has a chance to trigger the new "silent event corruption" warning added in 2.21. In that case simply resaving the overworld in this version will remove the offending entry. Thanks goes out to Wiimeiser for reporting about this.
menu would result in the main and midway entrance not being displayed although the labels still were.
is actually a water version of tile 0x1C. Thanks goes out to Wiimeiser and mariofreak4500 for drawing attention to this.
if Vitor Vilela's RAM remap for SA-1 ROMs has been used.
under certain conditions. Thanks goes out to Hinalyte for reporting this.
decompression if the GFX file has not been inserted, to aid with ASM debugging. Will only take effect once you switch compression formats with this version.
likely that many people turn it off anyway.
options dialog, at Alcaro's suggestion.
|2.30||September 24, 2014||
levels and submaps and store them in an ExGFX file (check the file menu).
level and per submap basis. Note that if you have already used a third party ASM hack for bypassing layer 3 GFX, it should be removed prior to using this version to avoid compatibility issues.
scrolling and some other advanced options. Also moved the Layer 3 Priority option from the "Change Properties in header" dialog and the Layer 3 Options setting from the "Change Other Properties" dialog into this new one.
ExGFX file range of E00-FFF has now been set aside for files to be inserted/extracted "as is" so they can be excluded from 3bpp/4bpp conversions. This range should be used only for layer 3 GFX and tilemap files, and for files intended for slot AN2 in the level editor. If you already have other files in that range, you should move them prior to using this version. But those that are using 4bpp tiles (likely everyone) can disregard this and continue using any file as they wish.
and the animated AN2 slot on a per submap basis. You can also now access all the ExGFX files for use on the overworld, not just the ones from 80-FF.
includes the GFX) when swapping players that aren't on the same submap.
exit tile. You must insert the GFX as 4bpp using this version then save the overworld for the hack to be enabled.
FG2 into SP3 and SP4 to create room for 2 more FG slots. This option is off by default, but can be turned on in the "Extra Options" dialog of the overworld menu.
overworld animated tiles, so they can now be 4bpp.
can appear below regular steps of higher event numbers. While Lunar Magic had always displayed it this way, apparently the original game couldn't quite do it as it would place layer 2 silent steps above all regular steps once the overworld map had been refreshed. Thanks goes out to Falconpunch for drawing attention to this.
installed when you save the Map16.
windows. Since this can affect the amount of RAM the program uses, you can change the max number of undo operations in the "General Options" dialog.
include a separate find text field and options for x2 zoom, displaying preview icons beside each item, hiding objects/sprites based on tileset/GFX files loaded, turning the preview area on/off, and horizontal/vertical layouts. The window can also now be resized both vertically and horizontally.
list in the "Add Sprites" window, and to move entries by holding down shift and using the arrow keys.
includes x2 zoom, undo/redo, and uses a regular window instead of the tool window in previous versions so it can be maximized/minimized as well as resized.
"Copy Background Image" menu items from the level menu of the level editor to buttons in the new Background Editor window.
to fill an enclosed area of the level with Direct Map16 tiles from the Add Objects window. This can be useful for quickly filling in non-rectangular areas within ledges built with Direct Map16. You can also add the alt key to do it from the Map16 editor instead (which can be skipped if the Add Objects window is closed or isn't in the Direct Map16 Access list).
FG tiles from the Map16 editor. You can also just use a right click if the Map16 editor is open and the Add Objects window is closed.
editor through the windows clipboard.
editor through the windows clipboard.
overworld editor through the windows clipboard when the latter is in a compatible mode that supports it.
editor through the windows clipboard when both are in compatible modes that support it. This was already possible if the Map16 editor was in 8x8 mode, but it has now been expanded to include 16x16 mode.
Background Editor, and Map16 Editor.
in the Map16 editor will also open the Map16 editor if it isn't already open.
allows changing which layer 1 tiles are revealed into another tile when you pass an event. This was used in DW:TLC for creating red star levels.
indicate that Mario cannot enter them as levels even though he can stop there.
where all sprites would always be shown with the palette of the main map without special world passed.
the layer 3 GFX files of the title screen level.
tiles, DPI scaling, and added a new control for selecting which submap Layer 3 GFX and colors to use to display the preview.
zoomed tiles, DPI scaling, and added a new option for using the Layer 3 GFX and colors of the currently loaded level in the level editor to display the preview.
zoomed tiles, DPI scaling, and to use the correct colors.
ZSNES savestate rather than having it require an existing savestate to save into.
reload the current level or ROM. Check the help file for more info.
update the displayed secondary entrance sprites in the currently loaded level to reflect possible changes. Thanks goes out to Hinalyte for reporting this.
it did before 2.20.
area" and "import multiple levels from file" operations, it will no longer give a warning for screen exits that are explicitly set to level 0/100. Thanks goes out to Wiimeiser for bringing this up.
for level entrances, using the same method as with custom sprites. Check the help file for more info.
for custom user toolbars.
"Copy BG" function with the TEST levels. Thanks goes out to Sokobansolver for bringing this up.
to save a BG to a particular address the save would be aborted and a warning message saying "Could not save BG data in a bank-appropriate area" would be displayed. Thanks goes out to Mini-Tech for helping to identify this issue.
|2.31||October 31, 2014||
appear when you pass a switch palace would temporarily corrupt part of the overworld's animated tile GFX in the game as the RAM they use overlapped with the extra space that the new 4bpp tiles take up. The fix will be installed when the GFX/ExGFX are inserted. Thanks goes out to 33953YoShI for reporting this.
always be disabled when it should be. Thanks goes out to Hinalyte for reporting this.
Add Object/Sprite windows when the program was started, the list height was shorter than it should be. Thanks goes out to Underway for reporting this.
would not let you use the level history mouse gestures without having to hold down the Shift key. Thanks goes out to Wiimeiser for reporting this.
editor based on the last 1, 2, 3, or 4 bits of the sprite's X and/or Y position. Check the help file for more info.
dialogs so that it will insert starting at the currently selected slot instead of always from the start.
|2.32||January 15, 2015||
goes out to S.R.H. for reporting this.
activated when closing windows from the toolbar. Thanks goes out to Ruberjig for pointing this out.
|2.40||September 24, 2015||
based on the same system as the one for levels. Check the help file for more details and a small list of differences from level ExAnimation.
along with support for a future Super FX RAM remap patch.
rate of animation the editor uses.
from the ROM instead of the working copy of the palette in the overworld's "Extra Options" dialog (frees up colors 9-F of palette 2 for maps that use lightning).
overworld's "Extra Options" dialog.
editor from Ctrl+F11/F12 to Shift+Alt+F11/F12 so that the same shortcuts used in the level editor for ExAnimation triggers can also be used in the overworld editor.
in the level editor. You can also activate these with the mouse scroll wheel by holding shift while objects/sprites are selected.
in the level editor as replacements for Increase/Decrease Z Order. These act much like the latter, but will skip past non-overlapping objects on the same screen so that you don't have to use the command as much.
Order" to Ctrl+Alt+Shift+Plus/Minus, and removed them from the edit menu as they likely won't be used much anymore.
to specify which colors in the palette should be imported into your level. Also added a couple new buttons to the palette editor to work with this. Check the palette editor section in the help file for more details.
values directly into the combo boxes for faster selection.
area of the ROM for nested RATs on Full Restore Point creation. This can sometimes help detect data loss and corruption caused by third party tools and patches. Previously a user had to initiate a scan themselves if they wanted to check on this, which meant issues could go unnoticed for long periods of time.
RATS.log is written to. Also adjusted the information reported in the log file a bit.
about the ROM user area. This has actually been around for a very long time via a keyboard shortcut, but not everyone was aware of it.
of the level editor, background editor and overworld editor for cosmetic purposes. Check the help file for more info.
either bring up the zoom menu or to act as a toggle between default zoom and the last used zoom setting (2x by default).
control key. Also added an option to turn this off in the "General Options" dialog.
editor from Ctrl+0 to Ctrl+5 so the former can be used as a zoom shortcut.
adjusted for the screen's DPI is more than 25% larger than the image provided.
with the wheel when there is no vertical scroll bar or by holding down the shift key.
in Layer 2 8x8 Editor Mode from either the selected area in the overworld (with Shift + Right Click) or from the 8x8 Overworld Tile Selector window (with Control + Shift + Right Click).
overworld editor also selects the tile in the Layer 1 16x16 Tile Selector.
overworld editor will update the submap palette selected in the palette editor and the submap palette/graphics used in the Layer 1 16x16 Tile Selector.
overworld editor will update the submap palette selected in the palette editor and the submap palette/graphics used in the Layer 2 Event Tile Selector.
as high to show more tiles at once.
depending on how many balls he throws.
LM_AUTORUN_ON_NEW_ROM, and LM_NO_AUTORUN options plus a %8 placeholder to get the current version of LM for user toolbars.
programs started from the user toolbar. Thanks goes out to HyperHacker for reporting this.
Timer Palette Rotate" trigger would be displayed by the editor at a wrong or uneven speed. The editor also now emulates the side effects of incorrect usage of this trigger.
editor while in one of the event editor modes would not show undone changes in the layer 1 Map16 data or Layer 2 source event tiles until after you had switched out of that mode.
could still be undone by a prior undo even though the editor would not update the display of screen exits right away. Thanks goes out to Hinalyte for reporting this.
into account scrolling. Thanks goes out to yoshifanatic for reporting this.
unused in the original game) to match land versions of path tiles 0x30 and 0x3A. Functionally they act the same way, but the 8x8 tiles Nintendo used suggests they were intended to be used as a visual guide for this. Also added an option to the view menu to display them the old way. Thanks goes out to Wiimeiser for pointing this out.
will update when certain view options are changed. Thanks goes out to Thomas for reporting this.
editor for layer 1 event editor mode. Thanks goes out to Wiimeiser for bringing this up.
(reflecting fireball). Thanks goes out to Footsteps_of_Coins for reporting this.
out to Katerpie for reporting this.
and bob-ombs), as it will also generate fish in bubbles after some time has passed. Thanks goes out to Thomas for reporting this.
Commands and Generators".
|2.41||December 25, 2015||
layer 2 levels on layer 2. Apparently it's been this way for as long as custom blocks have existed (version 1.30). The fix will be installed when the Map16 is saved.
list and updated the tooltip about using other Y positions. Thanks goes out to imamelia for reporting this.
translucent using the custom tooltips for Direct Map16 file. Check the help file for more info.
level message 1) in a level other than level 0xC5 when the fix for it has not yet been installed.
overworld editor windows to wrap if there isn't enough room to display them on one row.
|2.42||February 9, 2016||
with the Background Layer 2 Editor. Thanks goes out to Luks for reporting this.
list that had been overlooked. Thanks goes out to yoshifanatic for reporting this.
DM16 size. Thanks goes out to yoshifanatic for reporting this.
|2.43||December 25, 2016||
the color of any pixel on the computer screen to the windows clipboard. Note however that the palette editor must have the window focus, and it may not work on all windows or protected media.
crossbones) for ghost houses. Thanks goes out to imamelia for reporting this.
the game. Thanks goes out to Footsteps_of_Coins for reporting this.
editor, it won't bother with bringing up the save dialog. Thanks goes out to Erik557 for noticing this.
the available secondary entrances as used if the "transfer secondary entrances" option was on.
DPI virtualization code that can occasionally violate ClipCursor functionality.
virtualization done by Windows Vista and later when possible.
|2.50||September 24, 2017||
most objects that support it. Note that a few objects that resize in increments larger than 1 or in opposite directions may seem to resize a bit oddly.
pages for FG Map16, and 0x80 pages for BG Map16. Note that if you use a third party block tool type program, you shouldn't use the new FG tiles (0x4000-0x7FFF) in LM until your program has been updated to deal with the new max.
directly into the index combo box for faster selection.
insert key. Note that these require an external third party patch to show up in the game.
the overworld editor (editor display only).
button 4, mouse button 5) to keyboard definitions for user toolbars.
number of frames to 0x80 based on the slot's type when it was supposed to be based on the trigger. Thanks goes out to Skewer for reporting this.
Thanks goes out to KDeee for reporting this.
levels with buoyancy enabled that were 3-8 screens long, sprites would tend to act like they were in water periodically even if they weren't (note that this still happens for levels 1-2 screens long, but the original game also does this). Thanks goes out to Thomas for reporting this.
would no longer cause a few odd things on reopening. Thanks goes out to Erik557 for reporting this.
|2.51||September 25, 2017||
editor. Thanks goes out to yoshifanatic for reporting this.
|2.52||September 30, 2017||
of LM could use the wrong "Act as" settings during gameplay after the Map16 was saved. Resaving the Map16 in this version will correct the issue. Thanks goes out to Christian07 for reporting this.
|2.53||February 9, 2018||
to use multiple slots for the same destination tile to do faster animations, the frames would not always appear in the order you'd expect. Thanks goes out to Noivern for reporting this.
present in the original game where the bottom waterfall tile animation would not consistently match up with the main waterfall tile.
would appear in the wrong position if placed at the top of a sub-screen. Thanks goes out to Thomas for discovering this, and zacmario for reporting it.
end of the level didn't really match up to the music in non-SA1 ROMs.
time/coin limit. Thanks goes out to Katerpie for reporting this.
Options dialog that could get displayed oddly on non-english systems. Thanks goes out to Akaginite for reporting this.
on a screen exit that goes to a vertical level did not scroll the screen for the corresponding entrance of that level into view.
edit more local ExAnimation slots by sacrificing global slots (when global animations have been disabled for level/submap).
users to enable editing more levels and events (the game does not currently support this at the moment, so don't enable it unless you're adding your own ASM for it).
the main level editor window to open the file.
|3.00||December 25, 2018||
height of horizontal levels, effectively making it possible to change the level dimensions. You can find the new setting controlling this in the "Change Properties in Header" dialog, along with a new option that lets you view the full bottom row of tiles in horizontal levels.
impact from parsing most of the sprite list to access sprites on later screens.
control the sprite vertical spawning range for horizontal levels and an option for smart spawning.
byte has been removed (previously LM would silently move the sprite on save when it encountered this to avoid premature termination of the sprite list for the level).
subscreen boundaries (but they still will on vertical ones).
the FG relative to the player, and calculates the BG position relative to the FG position, scroll settings, level height, and BG height. The BG height is a new setting in the "Change Other Properties" dialog, along with an option to just set the BG relative only to the FG which is meant mainly for layer 2 levels.
Variable 4, and Slow 2). Note that these take up slots that were previously blank (H/V Scroll of None), so you may want to double check your scroll settings in older levels. To have H/V scroll set to None, you should be using the 4th entry in the list rather than one of the later ones.
combined with the "Face left" option will make Mario shoot left instead of right.
another level. This allows you to have the midway entrance for an overworld level be in another level entirely.
Note that the older option for the same thing in screen exits can also still be used.
also optionally set an exit to the overworld to pass the level with the normal/secret exit of your choice or just switch players, use a different base event when passing the level, and teleport to a different location.
exit teleport locations, which uses the same table as the Star/Pipe tiles.
many entries (0x100), to accommodate secondary exit teleport locations.
means the overworld editor now has direction to enable settings on level tiles for both of these, and the Secret Exit 2 and Secret Exit 3 goal point tape sprites have been added to the sprite list.
overworld editor. While they can't be entered as levels, they are valid stopping points so this allows you to assign them a level number in case you want them to display a name or give them initial enabled directions.
Header" dialog to the "Bypass Music and Time Limit Setting" dialog, then renamed the latter to "Change Music and Time Limit Settings".
palette editors, it will also copy the SNES RGB hex value in text to the clipboard so you can paste it into edit fields in the ExAnimated Frames dialogs.
will insert all GFX and ExGFX then reload the graphics.
mainly meant for showing the shape of slopes and for revealing if a tile is solid or not.
technical section in the help file for more info.
of Illusion ghost from being hidden until an event has been passed. Also made it so you can change the events that it gets shown on.
tile be a star/pipe tile. This makes it easier to create warps from a star/pipe tile to tiles that you can't warp from.
into the index combo box for faster selection.
level editor. Instead of specifying X/Y and the screen number, LM will now simply insert the object or sprite near the upper left corner of the level editor window.
only available through the Ctrl+Del keyboard shortcut.
Wheel, added Ctrl+Shift+Scroll Wheel for vertical scroll, and made Shift+Scroll Wheel and Ctrl+Shift+Scroll Wheel unaffected by objects/sprites selected.
more like the way you'd expect. Thanks goes out to Vitor for pointing this out.
would not function while any other modal dialog window in the program was open at the same time.
when selecting tiles in the Layer 1 Event Editor Mode of the overworld editor. Thanks goes out to Wiimeiser for reporting this.
change to a secondary entrance then saved again without making any other changes to secondary entrances, LM would not save the reverted change for the secondary exit. Thanks goes out to Ramon for reporting this.
past the top of the BG image (such as by setting layer 2's vertical scrolling to constant), there was a chance you could get a brief 1 frame glimpse of a couple rows of pixels at the top or bottom of the screen showing the wrong tiles. Thanks goes out to Vitor and Super Maks 64 for reporting this.
the last color of the Special World shared palettes for when Special World had been passed. Thanks goes out to yoshifanatic for reporting this.
Nothing or Pipe Exit Down (Water Level)" and changed how it's displayed in LM. Normally midway entrances that use this setting skip the pipe exit part. It never came up in the original SMW levels, though it seems to have been used in SMA2. However it still acts as a pipe entrance if accessed via a screen exit. To avoid confusion, it may be better to instead use the "Vertical Pipe Exit Down" action with the separate "Make this a Water Level" setting.
unless Flying/etc" to more accurately describe what it's for. Also adjusted the code for this setting to work for horizontal levels that have different heights and vertical levels.
you entered a level with layer 2 horizontal scrolling set to None, the layer 2 X position was carried over from the last level instead of being reset to 0 like it does when entering from the overworld.
activated for a vertical level, the layer 2 Y position in the intro could be wrong and even possibly display garbage tiles.
of a vertical level could malfunction if Mario's Y coordinate ended up being beyond the top of the level.
64-127 were not cleared between sublevels, leading to some sprites not appearing if a sprite at that index was killed in another sublevel.
same way in the editor as it will in the game. Thanks goes out to WhiteYoshiEgg for reporting this.
riding Yoshi if it's within spawning distance of Mario entering the level. Thanks goes out to Wiimeiser for pointing out that something was up with this.