Name | Author | Game Mode | Rating | |||||
---|---|---|---|---|---|---|---|---|
Multi-Layer Level Editor... | Violet CLM | Utility | 9.6 |
December 3, 2024 (2.20): -New window for picking tilesets. Use it by clicking the word "Tileset" in the top left corner of MLLE's main window, or else "JJ2+ Properties -> Tilesets -> Add New (Beta)" ---You may personally rate each tileset any number of stars from 1-5, for use in filtering out tilesets that you rarely/never want to use/see. This is local, does not communicate with any server, and does not delete or modify the tileset files. -Fixes to events that don't snap to the tile grid: ---Clients are no longer kicked for non-snapping powerups, ammo, and food ---Certain non-snapping events that are unlikely to work, such as zones and CTF bases, now show warnings if used ---Resizing layer 4 moves all non-snapping events accordingly ---Added Shift+X and Shift+Y keys for half-centering -The middle mouse button may now be used to drag the level layout pane around, just like the Tab key. Probably. I don't have a middle mouse button to test this. -Shift+L and Ctrl+L may now be used to change layers -Using "Save As" no longer discards the level's script (if any) -New "Culture-specific decimals" option in Preferences for picking which symbol is used for decimal numbers in layer properties. If your computer uses periods (.) for decimal points, you can ignore this option. -Fixed the "Apply" button in the layer properties window not being enabled by some layer properties -Fixed crash from right-clicking the tileset pane in levels with no tileset -In non-local games, the "Missing Objects" ammo crates now use BEHAVIOR::AMMO15 instead of an MLLE class January 2, 2023 (2.19): -Added a "Generate" button next to the "CmdLnArgs" field in Level Properties, to reduce user time spent looking up exact arguments. -Fixed glitch of reading wrong layer speed models for some layers in levels saved in earlier versions of MLLE. -Trying to save a level with one or more layers using the Mapping or Translucent Mapping sprite modes, if the level defines no extra palettes for them to use, now shows a warning message. -The "Help" dropdown menu now has some potentially useful links. December 17, 2022 (2.18): -Lots of new layer properties for JJ2+ levels, mostly for textured layers. (The window had to be rearranged to make room for them all.) -New drawing option button for JJ2+ levels, "Events Snap to Tile Grid." When this button is turned off, you may place events at any pixel in layer 4, not just the centers of tiles, including placing multiple events in a single tile. ---Events that do not normally spawn objects, such as "One Way Floor" or "Frog Morph," will generally not work right when placed as non-snapping events, but MLLE will still let you place them in case your level script makes that useful. ---Not all objects will necessarily work perfectly when placed this way: in particular, crates may use the wrong event parameters when destroyed. MOST objects should be okay, though. ---All interaction with the tileset and placing tiles is disabled while Events Snap to Tile Grid is turned off. ---Implementation note: in levels with one or more non-snapping events, MLLE will edit the value of jjObjectPresets[254].behavior and will hide one or more instances of event 254 in the top left of the .j2l's event map. -JJ2+ levels may define multiple palettes instead of just one, in case you want to have different palettes at different times/places in the level, e.g. a day-night cycle. These may be accessed using the "jjPAL@ MLLE::GetPalette(string name)" function, or if you want to use the extra palettes for SPRITE::MAPPING, "uint8 MLLE::GetPaletteMappingID(string name)" instead. -New checkbox in the "Level Palette" window to disable the behavior of custom palettes reverting upon death in single player games. Defaults to true for new levels but false for old levels. -New "WeaponHookPrefix" field in the "JJ2+ Properties -> Level Properties..." window, for use in levels featuring scripts that send packets between server and clients, but also featuring one or more custom weapons that need to be able to send packets too without inviting confusion. -When "stijn vision" is enabled, objects in the tree view in the event setup window now preview their sprites. -The Tab key may now be used to drag the level layout pane around, just like in JCS. -In local games, the "Missing Objects" ammo crates are now properly solid for purposes of pushing other solid objects against or onto them. -2.15's "SaveAndRunArgs" script comments are now editable inside the "Edit -> Level Properties..." window for JJ2+ levels, labeled "CmdLnArgs," so you don't have to open up a text editor. Note that this only works to set arguments when running levels from within MLLE, not from e.g. JJ2's server setup menu. -New "Paste and Recolor" dropdown menu option in the tile image editing window. -2.17's new Preferences option has been renamed to "'B' returns to normal mode," as it also works to re-enable Events Snap to Tile Grid. -Fixed errors from loading multiple instances of MLLE in quick succession (thanks Seren) -Level filenames longer than JJ2 supports are no longer allowed (thanks grovespaz) -Improved handling of 0x202 (1.23) levels using 0x201 (1.24) tilesets (thanks grovespaz) -Fixed glitchy saving of levels with edited JJ2+ layer properties (e.g. sprite mode) but no other JJ2+ features. -Fixed the animated tile editor still being visible in smart tile mode. -Fixed error message shown when loading .LEV files October 28, 2021 (2.17a): -Fixed mistake in 2.16 that led to levels using the MLLE-Include library being saved with one incorrect #pragma require line, causing them to be unloadable by multiplayer clients in some circumstances. October 19, 2021 (2.17): -New "stijn vision" option in Preferences to show sprite previews of most events in the level layout pane. This has only limited support for custom (scripted) objects and effects, and no support for AGA levels at all; I'm waiting to see how popular the mode is before deciding whether to dedicate more development time to it. ---This function (name) funded by stijn's generous donation of $20 or so! -New option in Preferences to have pressing 'B' disable smart tile mode while hovering over the level layout pane. -Better detection of whether tile images/masks have actually been modified by pasting/automasking. -Context menu from right-clicking the tileset pane now distinguishes more between single tile effects vs. selection area effects, and additionally adds "Type" and "Reset" as selection options. -When you start a new level and save it, that level will now be added to the "File->Recent Levels" list. -Repaired tile number readout in the bottom toolbar when hovering over the tileset pane. -Clarified some error messages that may pop up when trying to load certain levels. May 15, 2021 (2.16): -Fixed crash from resizing layers with no tiles. -Fixed handling of #include'd script libraries in folders other than the level's folder when packaging .ZIP files. -Fixed saving to not overwrite .j2as files unless their contents have changed. -Fixed sporadic crash from closing MLLE immediately after opening it. (thanks grovespaz) -Fixed sporadic crash from clicking and dragging the mouse upwards out of bounds from the level layout pane. (thanks grovespaz) -Fixed inappropriate tile placement from clicking and dragging the mouse leftwards out of bounds from the level layout pane. -Fixed behavior of editing a level, not saving, then opening a level from File->Recent Levels. (thanks redkevvy) -Fixed behavior of editing a level, not saving, clicking File->New, then clicking Cancel. -Fixed placing events in Animaniacs levels. (thanks Assassin) -Fixed completely random tab orders in many subwindows. August 19, 2020 (2.15): -Added "Copy Image" and "Paste Image" options to the right-click dropdown menu in the tileset pane of the main window. These are available only if you have at least one tile selected there, and allow you to transfer multiple tile images at once between MLLE and graphics programs. ---Upon pasting back into MLLE, options to recolor the tiles will be provided. ---You may paste an any-sized image into an any-sized tile selection, but MLLE will ask you if you're sure you want to resize it. -You may now write a Doxygen-like "SaveAndRunArgs" comment line in a .j2as file to choose what command line arguments should be used when using Save & Run (Ctrl+R) in a particular level. For example, this line might be appropriate for an CTF map you're working on: ///@SaveAndRunArgs -server -capture ---This line, if present in a .j2as, overrides anything you may have written in the [Enableable]SaveAndRunArgs field in the game's MLLEProfile .ini file. -Improved display of smart tiles in the tileset pane of the main window. -The color selection dialog for changing the fade color of textured backgrounds now opens with the current color instead of always black. -Resizing layers with no tiles (except for layer 4) no longer asks you how you want to align the resized layer. -Fixed glitch of the level layout pane's scrollbars sometimes getting confused and not letting you scroll all the way down. (thanks jgke) -Fixed glitch of MLLE reacting to your pressing Shift while other windows (e.g. JJ2) were the active window. -Fixed crashes from clicking the add rule (+) button in the Define Smart Tiles window before selecting an assignment. March 29, 2020 (2.14): -New super-fast way of laying out levels: smart tiles automatically tile themselves instead of making you hunt all through the tileset for just the right connecting piece. For example, drawing a filled rectangle using the Walls smart tile in Diamondus will automatically put grass on top, put walls on the side, include a random sprinkling of gems, respect slopes, and so on. To use, open up the "overlay data" dropdown for tilesets (to the right of the "Set..." button) and select "Smart Tiles," which replaces the normal tileset display with a selection of all the smart tiles associated with the current tileset/s. (If you don't see this option, you are not using a tileset with smart tiles defined for it; see below.) ---Smart tiles make their best guesses for what you are intending to do but cannot reasonably predict every possibility; some manual touchup may still be required after drawing out an area in smart tile mode. Most eyecandy features (e.g. bushes in Jungle) and certain complicated structures (e.g. slopes in Psych) cannot reasonably be automated and you will need to add them yourself. Once you do, though, MLLE should happily let you draw around those features without overwriting them. ---When you replace a tile in smart tile mode, the surrounding eight tiles will all update themselves to take their new neighbor into account. (Unless this crosses selection boundaries.) Some tilesets have certain complicated interactions that can take two or three passes before they finish resolving, though, so if an area is tiling wrong, try clicking on it another couple of times and it will usually resolve itself, unless the issue is that a tile that would need to go somewhere simply doesn't exist in the tileset to begin with. ---All tile placement tools (paintbrush, fill, filled rectangle, and rectangle) are usable in smart tile mode. ---While in smart tile mode, the only events that will be placed are those associated with specific tiles in the tileset (as previewable in the "Events" tileset overlay), when those specific tiles are placed. (Unless the lightning bolt "Overwrite Events" button is turned off.) However, the Set Event, Copy Event, and Paste Event actions (E, Ctrl+E, and Shift+E) still work as usual. ---The B, F, and I keys doesn't do anything in smart tile mode, but the Comma key selects whichever smart tile is associated with the tile you are mousing over, if any. Backspace selects the first smart tile, which is always an empty tile but has the benefit of updating all tiles nearby as you erase with it. ---If you are editing a JJ2+ level using multiple tilesets, smart tiles will also be available for any secondary tilesets that have smart tiles defined for them; however, if a tile is not found in the subset of tiles you are using from that secondary tileset, it will not be placed. ---MLLE only ships with .MLLESet files (in the "ExtractToJJ2+Folder" folder) for Castle, Carrottus/Easter, Labrat, Colon, Psych, Beach, Diamondus, Tubelectric, Medivo, Jungle, Damn, and Holiday Hare 98. However, you can create and distribute definitions for other tilesets using the "Define Smart Tiles" menu under the "Tools" dropdown menu in the main window. See the MLLE JCF thread for documentation on how to use this window. ---MLLE accepts .MLLESet files as command-line/drag+drop arguments, just like level and tileset files. =Experimental new "smart flip" feature, only for tilesets with associated .MLLESet files. To use, while getting ready to place a set of tiles, press Ctrl+F or Ctrl+I instead of simply F or I. Works best with very simple tilesets and results are definitely not guaranteed. -When packaging one or more levels into a .ZIP file, you may choose to include .MLLESet files for any packaged tilesets. This option is disabled by default because it is unlikely to be of much use outside of packaging example levels. -Fixed glitch from 2.12 of tile types never being displayed in the tileset pane. -Fixed glitch of MLLE holding onto tileset source files after using them to build a tileset, preventing you from editing those source files (in any other program) for an undefined period of time afterwards. September 6, 2019 (2.13a): -Added missing preprocessor directive to MLLE-Weapons.asc (inside the "ExtractToJJ2+Folder" folder). August 23, 2019 (2.13): -New "Weapons..." window for JJ2+ levels lets you configure and reorder the nine weapons used in a level. ---You will need Seren's "Standard Weapon Interface" library extracted into your JJ2+ folder to properly use this feature: https://www.jazz2online.com/downloads/7759/standard-weapon-interface/ ---Only JJ2's normal weapons are available by default, but other, custom weapons may also be downloaded (or written by you) that will then also be available to select from within MLLE. ---As ever, MLLE will do all the work necessary to integrate any weapons you choose into your .j2as file, adding the appropriate preprocessor directives but also adding/modifying any special hook functions (e.g. onPlayer) that may be needed to fully support certain weapons. ---See the MLLE JCF thread for further documentation, particularly for use by scriptwriters. -The "Recolor Events" menu for JJ2+ levels has been expanded to let you also recolor swinging platforms, swinging vines, and spike bolls. -The "JJ2+ Properties -> Level Properties..." window has a new "Missing Objects" section which lets you dedicate specific events to +15 ammo crates for weapons 7, 8, and 9, all of which have sprites available but are not normally usable. ---This is fully compatible with any custom weapons you may assign to those three weapon slots in the Weapons window. -The MLLE angelscript library shows more detailed error messages when unable to read specific external files. -Most lines added to your .j2as file by MLLE will now include a special "///@MLLE-Generated" comment, making it easier for MLLE to remove them again later if your level stops needing them for whatever reason. -Fixed error causing MLLE to hang while trying to load levels whose scripts include any version of the Jazz 1 Enemies library. April 22, 2019 (2.12): -JJ2+ levels may now define custom events in their .j2as files using Doxygen-like comment syntax. ---For instance, the following comment in a .j2as file will cause MLLE to rename the "Lizard" event to "Zombie Rabbit," but ONLY while editing that particular level: /// @Event 104 = Zombie Rabbit|-|Enemy|Zombie|Rabbit|Direction:{Left,Right}1 ---If you write insufficient event details after the equals sign, or even a blank string, that will remove the event from the list for that level altogether. For instance, if you decide you don't want to give yourself the option of placing any seeker ammo: /// @Event 35 = ---Custom event comments will also be read from any additional script files included using the "#include" preprocessor directive. The FIRST script file to redefine an event wins, so if both the main .j2as file and an included .asc file try to redefine the same event ID, the definition from the .j2as file will be used and the one from the .asc file will simply be ignored. ---Depending on your personal aesthetics, you may even choose to use "//!" instead of "///" or "\Event" instead of "@Event". -New drawing option button (looks like a lightning bolt) to toggle whether drawing tiles onto tiles with events should replace the old events or leave them be. -New "Edit -> Find Parameter Values..." menu option/window to help you keep track of which TriggerID, WarpID, etc. parameter values you've already used in your level and which ones are still available to you. (All three "Jazz Events" .ini files have been updated to use a new parameter name "WarpID" instead of simply "ID," to reduce ambiguity.) -Added support for TSF's limit of 256 animated tiles (all other games/versions support only 128). -Fixed issues with converting levels containing vertically flipped tiles between 1.23 and 1.24. August 30, 2018 (2.11): -The event setup window now also lets you pick an event by typing in part of its name instead of by finding it in the full tree structure. -Copying and pasting tile images (though not tile masks) now uses the OS clipboard, so you can make more detailed edits to (individual) tiles in your graphics program of choice and then easily copy them back into MLLE. -Added an option to the tileset dropdown menu (only for JJ2+ levels) to Automask a tile, making its collision mask identical to its transparency mask. -Fixed glitch involving editing parameters of events that use all twenty parameter bits (e.g. sucker tubes). (thanks SE) -Fixed glitch of layers being displayed in the wrong positions when editing a layer in a JJ2+ level with non-zero X and/or Y offsets in parallax view. -Fixed glitch of layer 8 in Animaniacs levels not respecting its speeds. (Animaniacs treats layer 8 differently than other JJ2 engine games do.) -Fixed error from pressing the Comma key outside the bounds of the current layer. -Fixed error from using the Fill tool with the secondary (right mouse button) color while editing a tile image or mask in a JJ2+ level. -Fixed error from double-clicking certain parts of the tileset after changing a level's version from something supporting 1024 tiles to something supporting 4096 tiles. -Fixed error from using the Fill or Rectangle level editing tools before selecting any tiles. April 15, 2018 (2.10): -The "Tools -> Package in ZIP file" menu option finally works. This packages levels, tilesets (except in GorH levels), music files, and (in JJ2+ levels) script files and all external files referenced by scripts. ---Specifically, MLLE recursively searches your script files for filenames referenced by the "#include", "#pragma require", and "#pragma offer" preprocessor directives. ---MLLE also optionally searches for filenames referenced by the "jjLayersFromLevel", "jjMusicLoad", "jjNxt", "jjSampleLoad", and "jjTilesFromTileset" functions, just to try to be helpful, but it can only understand cases where those functions are passed string constants. -The "Tools -> Save Level Image" menu option now lets you choose the directory (and filename) for your image. -New "Tools -> Save Tileset Images" menu option to save the image and mask of the level's current tileset/s. Note that in JJ2+ levels, this includes the primary tileset but also all secondary tilesets and edited tile images/masks. -The "Edit Tile Image"/"Edit Tile Mask" window now supports undoing and redoing changes, accessible from its Tools dropdown menu or by pressing Ctrl+Z/Ctrl+Y. -When editing a non-Animaniacs level, the "Edit Help Strings" window now previews the font colors of help strings that use '#' or (in JJ2+ levels) '~' characters. (This feature can be disabled under the main window's Preferences dropdown menu if you find it too distracting.) -When editing a non-Animaniacs level, the "Set active event" window now saves the last ten events you configured in a special "[Recent]" branch of the tree, retaining all their parameter values. -The "Level Palette" window now previews each palette color's index in its title bar when you hover over it, which is consistent with other windows involving palettes. -The "Level Palette" window now has a "Save" button in addition to the "Load" button, which lets you save a palette file in the same format used by MLLE and JJ2+. -Fixed glitch of MLLE requiring some JJ2/TSF levels to include the MLLE angelscript library that didn't actually need it, particularly levels containing vertically flipped tiles but no other JJ2+ features. -Fixed glitch of animated tiles animating at light speed for a while if you minimized then restored MLLE. March 16, 2018 (2.9): -MLLE can now build tilesets. This uses mostly the same interface as JCS (and is once again accessible from the "Set..." button above the tileset pane in the main window), but there are a few differences: ---Support for .gif, .png, and .tif/.tiff images has been added, so long as they are 256 colors. Support for .anm, .lbm, and .pcx images has been dropped. ---Tilesets can be built for JJ2, TSF, Battery Check, Animaniacs, or 1.10o, depending on the version of the level you were editing prior to clicking the "Set..." button. ---The "Remap Tileset Palette" option has been removed. There are a lot of resources out there these days to teach you how to make your own palette. ---Instead of filling unused entries in your palette with weird colors, your palette is preserved perfectly (except that color 0 must be black and colors 15 and 255 must be white). This means you don't need to include a palette tile for your textured background to work right. ---Any indexed image should suffice for the mask, including the 1-bit mask images generated by tileset.exe. ---Copying and pasting the contents of the "Tileset" group from JCS.ini to MLLE.ini mostly works, except that the Yes and No strings from JCS's Remap Tileset Palette option, which MLLE doesn't offer, should be replaced with JJ2 (or TSF) to indicate what game they're meant to be built for. ---The "Rebuild All" button was removed, because it probably hasn't served any purpose since maybe 1997. -MLLE now has an FPS limit, and doesn't draw the level/tileset at all when the window is minimized, meaning it should now use much less of your CPU. -By enabling the new "Zooming Above 100%" option in the Preferences dropdown menu, you can view the level at 200% or 400% size. This is primarily intended for people with very large resolutions, but might also be helpful for finding tile bugs. -When editing a non-Animaniacs level, clicking the bitfield (the series of 32 digits) in the event setup window now toggles that bit and adjusts the current event accordingly. -Adding an animated tile in the tenth tile column (or deleting an animated tile when there were a multiple of ten tiles) adds or subtracts a row in the tileset pane. -Trying to save an animated tile with one more vertically flipped frames now warns you about when that is or is not advisable. -Fixed crashing from saving the same level twice in a single second. -Fixed crashing at random (but exacerbated by large numbers of animated tiles) after leaving MLLE open a long time. -Fixed crashing from trying to save a new animated tile with zero frames. -Fixed crashing from trying to save a new animated tile that used the previous animated tile as one of its frames. -Fixed crashing from the "Play from here" option being used outside the bounds of layer 4. -Fixed crashing from undoing tile placement in other layers that would be outside the bounds of layer 4. -Fixed error from viewing layer properties window while editing levels for games with only one textured background mode. -Fixed error from switching from an event with a large parameter to an event with a smaller allowed range for that parameter. -Fixed glitch of horizontally flipped tiles not being saved correctly in levels with exactly one tileset. -Fixed glitch of MLLE sometimes incorrectly preventing converting a JJ2+ level from 1.23 to 1.24 or back again. -Fixed glitch of MLLE sometimes saving nonsense data to its last window location settings upon closing. -Fixed glitch of tilesets with non-lowercase file extensions (e.g. MEZ01.J2T) not being loaded by JJ2+ when used as secondary tilesets. -Fixed glitch of the "New" dropdown menu option failing to dispose of certain JJ2+ level settings, e.g. custom palette. -Fixed glitch of overzealously adding ".j2l" to next level settings that already ended in ".j2l" when clicking the "Open..." dropdown menu option. December 14, 2017 (2.8): -MLLE now keeps track of the ten levels you most recently opened (in the File -> Recent Levels dropdown menu), so you can easily return to something that you'd been working on. -MLLE now creates backups of the most recent hundred times you saved any level (in the "Backups" subdirectory of your MLLE directory), in case you need to return to a previous revision for any reason. -JJ2+ levels saved by MLLE now use the "#pragma require" AngelScript preprocessor directive on themselves, which should fix some online cache issues. -Fixed glitch of JJ2+ levels being unreadable in MLLE (but playable in JJ2+) if you had edited a tile's image/mask but later deleted or shortened the tileset containing that tile. -Fixed glitch of copying/cutting blocks of tiles (using the B key or the Select tool) paying attention to the event map even when you are not editing the sprite layer. -Fixed glitch of copying/cutting blocks of tiles outside the bounds of the current layer displaying a (nonfatal) error message. December 3, 2017 (2.7): -Added "Edit Script..." option to the "JJ2+ Properties" dropdown menu, which attempts to open the .j2as script associated with the level you're currently working on (creating it first if necessary) in whatever editor you have associated with .j2as files. -Fixed crashing from trying to change versions before picking a tileset. -Fixed crashing from ctrl+clicking the tileset pane when no tiles were selected and the animated tiles subpane was not open. -Updated to the newest release of Ionic.Zlib.CF.dll, which fixes a rare glitch of generating incorrectly compressed byte sequences for overly complicated input streams. December 2, 2017 (2.6): -MLLE should no longer automatically crash or show error messages if you open a level using a 1.23 tileset but do not have 1.23 installed (or the same issue with 1.24); instead, it will search your 1.24 folder for the 1.23 tileset (or your 1.23 folder for the 1.24 tileset). -Fixed glitch of custom tile masks (in JJ2+ levels) not working for horizontally flipped tiles. -Fixed corruption of event data from closing the "Set active event" window by pressing the Enter key while a text box had input focus. -Fixed crashing from dragging a selection of multiple tiles across the right border of layer 4 after opening a level whose layer 4's width in tiles was not a multiple of four. -Made a few tweaks to the saving code to prevent JJ2(+) from crashing under certain circumstances. -Added a special error message to the MLLE angelscript library for when JJ2+ is unable to open the level file itself in a jjSTREAM. -When editing a tile image (in JJ2+ levels), you may now use Fill and Color Replace tools in addition to the regular Paintbrush. August 11, 2017 (2.5): -Jazz Events Plus Style.ini has been updated to reflect new event parameters from JJ2+ versions 5.0 and above. -Fixed bugs associated with editing events when Layer 4 was not the fourth layer in drawing order. -It is no longer possible to place events when Layer 4 is not the layer currently being viewed. August 10, 2017 (2.4): -Using the mousewheel to scroll up and down now works even when Windows 10's new "Scroll inactive windows when I hover over them" option is enabled. -Several new layer properties can now be edited in JJ2+ levels: the layer's name (used throughout the MLLE GUI), visibility, rotation numbers (for when a player is stoned), and sprite mode/parameter. -Added a Layers window under the "JJ2+ Properties" menu which lets you rearrange the layers and add new ones. There is no limit on how many layers you may use in a JJ2+ level. These new layers can be accessed from the toolbar in the top right of the main MLLE screen, or by right-clicking most anywhere and using the context menu, but not by hotkey (1-8). ---In AngelScript, you can call the function "jjLAYER@ MLLE::GetLayer(string layerName)" to access any of the layers used in the level, e.g. "MLLE::GetLayer("Sprite Layer") for Layer 4 unless you rename it. The return value is null if there is no layer with that name. The result is undefined if two or more layers share the same name. ---Additional layers are stored in separate .j2l files, e.g. a "foo.j2l" will create a "foo-MLLE-Data-1.j2l". Don't worry about these files; MLLE will manage them for you. -In JJ2+ levels, right-clicking the tileset panel gives you options to edit the image and/or mask of a tile for that level. This lets you fix masking bugs in a tileset, add missing tiles, create connection tiles between elements of two different tilesets, etc. -MLLE now previews the "Invisible" and "Frozen" JJ2+ tile types. ("Heat Effect" tiles are still drawn as regular/opaque, though.) ---Tile types 2 and 3 are now only drawn as translucent in 1.00g/h levels, instead of all the time. -Setting a tile's tile type using the tileset panel's context menu now properly updates the tile's image in parallax view. -It is no longer possible to change a level's primary tileset to something that would cause the level's total tile count to exceed 1024 (or 4096, depending) counting tiles from secondary tilesets. -Changing a level's primary tileset adjusts tile IDs for secondary tilesets the same as resizing/deleting a secondary tileset does, meaning that your level layout should appear as unaffected as possible. -In levels that do not use custom palettes, the "MLLE::Palette" AngelScript value is now equivalent to the tileset's palette (i.e. "jjBackupPalette") instead of all-black, which should make for better consistency. June 23, 2017 (2.3): -Much greater JJ2+ support: ---The Layer Properties window now lets you edit layers' X and Y offsets. ---Tiles may now only be flipped vertically (using the "I" key) in JJ2+ levels, not e.g. in Battery Check. ---When resizing layer 4, special JJ2+ events (trigger zones; the pit level event in the bottom right) are now moved to new positions in layer 4 to preserve the old settings. ---The old JJ2+ options under the "Tools" menu have been removed and replaced with a new top-level "JJ2+ Properties" menu with the following suboptions: -----Level Properties: Configure various things about this level that don't show up in the regular Level Properties window because they're JJ2+ only, such as water and darkness colors. -----Palette: Edit what palette this level uses without having to make a custom tileset edit. (This palette's name in AngelScript is "MLLE::Palette".) -----Tilesets: Use tiles from other tilesets (e.g. background layers) in this level. You are recommended to change the level version to TSF before doing this, in order to be able to use up to 4096 distinct tiles instead of only 1024. -----Recolor Events: Change the colors used by certain events (e.g. pinball objects or shootable poles) to look better with this level's palette. ---See https://www.jazz2online.com/jcf/showthread.php?t=20086 for more technical details behind this. -The "Trial Run" and "Play from here" options now run a level's angelscript file if it has one. -The "Trial Run" and "Play from here" options no longer make MLLE think the level has been saved since it was last modified. -Trying to save a level with no user-set filename now displays a save dialog. -MLLE now remembers whether it was maximized last time you ran it, and if not, what size the window used. -Changing a layer's dimensions now removes all references to that layer from the Undo/Redo buffers, to prevent crashing or other unintuitive results. -Fixed display issue with editing animated tiles in levels with very small tilesets. -Fixed visual-only bug associated with columns of the same tile when some were flipped and others weren't. -Fixed issue of pressing F or I messing up blank tiles in the current selection. -Fixed the selected tiles sometimes being drawn with the wrong transparency settings. -Fixed crashing when animated tiles had overly long delay settings. -Fixed results of pressing certain keys (such as E or M) while selecting a tileset from the tileset dropdown. -Fixed issue of too many texture modes showing up in Layer Properties window when you edited a lot of different levels in one session. -Improved the "Paths and Filenames..." configuration (which also shows up when you run MLLE for the first time). -Added an About window. -Added undocumented JCS feature re: highest event bit on animated tiles. April 21, 2017 (2.2): -The "Show Events," "Show Parallax," and "Show Mask" context menu buttons from right-clicking in the level pane now work. -The fill drawing option now works. (thanks SE) -The "Tools -> Save as Image..." menu option now works. (thanks SE) -Fixed level corruption when '' is used in a help string. (thanks blur) -Fixed level corruption due to resizing a layer. (thanks blur) -Fixed crashing when creating a new level after editing another level. (thanks blur) -In the application title, the level name now comes first and "MLLE" now comes last, like many modern applications. (thanks blur) -When the level is modified, an asterisk is now added at the beginning of the application title. (thanks blur) -Added support for any path (particularly a full path) for Jazz2.exe for the SaveAndRun setting in MLLEProfile - JJ2.ini. For example, "-server -battle" can be used to run the level as battle. (thanks blur) -Added new SaveAndRunArgs setting in MLLEProfile - JJ2.ini. (thanks blur) -Added support for "Open with" in Windows context menu. (thanks blur) -Added minor improvement to BASS error handling. (thanks blur) October 14, 2014 (2.1): -Added "I" key to flip tiles vertically -Added "Jazz Events Plus Style.ini" for JJ2+'s various event-based additions -Added JJ2+ tile types and textured background styles to the JJ2 and TSF .ini files January 2012 (2.0): -Initial Release
Jazz2Online © 1999-INFINITY (Site Credits). We have a Privacy Policy. Jazz Jackrabbit, Jazz Jackrabbit 2, Jazz Jackrabbit Advance and all related trademarks and media are ™ and © Epic Games. Lori Jackrabbit is © Dean Dodrill. J2O development powered by Loops of Fury and Chemical Beats.
Eat your lima beans, Johnny.