Menu

Show posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.

Show posts Menu

Messages - WillLem

#1
Lemmini / [RELEASE] RetroLemmini Level Editor 1.1
January 26, 2026, 10:44:45 AM
RetroLemmini Editor Release Topic

The latest version (1.1) is attached to this post. To use, place the .exe into your RetroLemmini directory and run it from there.

This level editor is based on the NeoLemmix Editor, and has been designed specifically to make levels for RetroLemmini. It features many of the Lemmini-specific controls you may be familiar with from the earlier NL 1.43 Editor such as support for steel areas, variable max fall distance, superlemming mode, etc. It expands upon this by adding support for direct playtesting (via F12)*, custom skillsets, visible trigger areas, level hints, and many other QOL features from the more recent versions of the NeoLemmix Editor.

*(N.B. You need RetroLemmini 2.6 or later for this to work).

RetroLemmini Editor supports .ini level files as well as the brand new .rlv format which can be used to file-associate level files with the RetroLemmini Editor (file-associating .ini files is not recommended due to how widespread the .ini file format is on Windows systems). The .rlv format is internally identical to .ini, and is fully supported in RetroLemmini 2.6 onwards.

If you wish to mass-convert between .ini and .rlv, use the Cleanse Levels feature (which can also update your levelpack.ini file to list the levels in the correct format).

Happy level creating! :lemming:  :lemming:  :lemming:

#2
Lemmini / [RELEASE] RetroLemmini 2.6
January 26, 2026, 10:44:00 AM
Version 2.6 update :lemcat:

2.6 is a major update to the RetroLemmini platform, and should ideally be run from a brand new directory to ensure problem-free operation.

Here's what's new:

:lemming: Dedicated Level Editor!

• RetroLemmini now ships with a dedicated level editor based on the NeoLemmix Editor, with plenty of controls and QOL features to make creating levels for RetroLemmini a breeze.

• It's possible to playtest levels directly from the Editor!

• The Level Pack Compiler can also be run from within the Editor, and can be used to compile your levels into packs.

:lemming: New Level Format

• RetroLemmini now has its own level format (.rlv) which is interally identical to .ini, but can be used to file-associate level files with the new Editor (much more preferable than doing so with .ini files, as .ini is a commonly-used format on Windows systems). The Editor can open both .rlv and .ini levels, and can easily convert between the two.

• The legacy formats .ini, .lvl and .dat will of course continue to be supported by RetroLemmini itself.

:lemming: DMA Levels

• All DMA levels have been converted to .rlv format.

• The bonus levels have been regrouped into a new pack called "Yippee! Even More Lemmings".

• Set classicSteel to False for all levels.

:lemming: Physics

• Basher and Miner steel checks have been relaxed, so that the lemming can tunnel all the way up to the steel block. N.B. Although a worthwhile update, it's one that is very likely to affect existing replays. Apologies for any inconvenience this may cause!

:lemming: Customisable Hotkeys

• A fully customisable hotkey configuration has been added. You can now map any keypress you wish to any of RetroLemmini's controls.

:lemming: UI Updates

• Middle mouse button now toggles pause.

• It's now possible to load packs and groups (as well as individual levels) from the Choose Level menu.

• Preview screen now shows "N Lemming(s)" (or "N Superlemming(s)!) rather than "Number of Lemmings N". Also added preview screen support for variable max fall distance (if it's different from the default of 126, it's displayed on the preview screen).

:lemming: Level Mods

• Mods can now be set per-level as well as per-pack. Per-level mods take priority when both are applied. TIP: Use the Level Pack Compiler to set per-pack mods, and the Editor control to set per-level mods.

:lemming: Styles

• DMA and special styles have been merged into a single style called "special". This should (in theory) only affect the OG levels which ship with RetroLemmini anyway, but it may be something to be aware of if you happen to have used any of these styles (apple, covox, beast, awesome, etc) to create your own levels.

• Reduced support for "specialStyle" level property to backwards-compatibility only.

• Fixed indexing gaps in Fire, Pillar and Snow.

• Removed accidental pink square (used to measure trigger area when compositing the image) from bubble zapper trap.

• Set default exit sound to "boing".

• Moved one-way-arrow triggers down 8px (so that they match the image itself).

• Pieces can now be marked as deprecated.

:lemming: Bugfixes

• One-way-arrows are now only ever drawn on terrain (this is also reflected in the Editor).

• "Christmas"/"xmas" style name is now handled gracefully; either is recognised as being the same style.

• Stats are no longer shown on Postview if the level was cheated.

• Framestepping and scroll wheel options are now positive rather than negative bools (opt-in rather than opt-out).

• Further improvements to resource exception handling. More can be done here, but it's a step up from previous behaviour. My goal is to eventually get rid of all stack-trace-style popups and replace them with more user-friendly onscreen messages that inform the user of what has gone wrong, and what they can do about it.

A reminder of what's new as of 2.0.



Get the latest version here.

#3
Closed / Re: [?][BUG][PL] Lemminas sprites not working
January 26, 2026, 09:10:04 AM
Glad to hear it, I'll mark this as resolved and close the topic.
#4
General Discussion / Re: Forum-Wide Bump
January 26, 2026, 09:09:05 AM
Quote from: The64Watcher on January 25, 2026, 02:19:04 AMi'd say that we band toghether for 1 post every 2 days to keep convos moving in all boardS.

If you want to help keep Forum engagement high and conversations moving, by all means get involved in some of the existing ones. You're more than welcome to contribute!
#5
Quote from: namida on January 25, 2026, 09:34:18 AMI would go a step further and say - discontinue support for the alternate "sounds" folder. Otherwise, it could cause problems if people use NLCE when creating their packs, and it works fine there but (due to the different folder name) doesn't work on standard NL.

The directories were renamed because every other directory in the tree is named "----s".

"Replay" (with its capital letter - why?) and "sound" seem like they shouldn't be there. It's purely aesthetic and, sure, doesn't really matter, but with CE I felt there was an opportunity to sort that out. But you're probably right, it's likely cause more problems than it's worth in the future, so by all means lets revert those folders back to "sound" and "Replay". CE will internally continue to support the use of "sounds" and "replays" folders for those who wish to name their directories this way (I see no reason not to allow this), but we will ship it with "sound" and "Replay" as the default to minimise issues going forward.

The solution here (regarding CE/NL data compatibility in general) is probably to keep the root directory of CE identical to NL 12.14, and add anything new to the aforementioned "assets-ce" folder (see this post, above). This then becomes a necessary component of CE development which will allow us to update existing graphics and data files without risk of conflicts. CE will prefer this directory when looking for resources, so the rest of the tree can be identical to NL. This will ensure that anyone making content for CE that is then played in NL will add items to the correct relative folders (i.e. nothing should ever need to be added to assets-ce by an author unless it's to mod their own copy).
#6
Closed / Re: [?][BUG][PL] Lemminas sprites not working
January 24, 2026, 07:43:03 PM
I can't replicate this. Lemminas sprites work fine in my test directory running CE 1.1 RC-1 and NL 12.14.

The fact that the sprites aren't working in either NL or CE suggests it's more likely to be a problem with the style rather than the engine. Here's the latest copy of the willlem_lemminas style. Try adding this to your styles directory and see if it resolves the issue.
#7
OK, this should be fixed once and for all.

CE will now ship with an "assets-ce" folder which will contain all of the CE-specific graphics, data files, and overrides. CE-only users will actually not need this*, but anyone wanting to run CE and NL side-by-side can do so simply by placing the .exe and the assets-ce folder into the NL root directory.

It works a treat, and is set up for future-proofing should we need to add or update any more assets in CE.

Implemented across commits 8e91234 - 7f0256b.

*On second thoughts, the root folder should be identical to NL 12.14 to keep things as simple as possible. "assets-ce", then, will contain everything CE needs to run, whether in its own directory or an NL one (which will be identical anyway!).
#8
Lemmini / Re: [✓][BUG] Basher/Miner steel interaction
January 24, 2026, 04:18:54 AM
Basher/Miner steel collision detection has been relaxed in commit f966d37. It's now possible to bash and mine right up to the steel block.

Please note that this is a significant physics update which can and likely will break existing replays for any level in which the solution involves bashing or mining up to a steel block. It should theoretically never affect the actual level itself though, only the replays.

With that said, I think we can agree that this is a desirable fix that's worth a few broken replays. Now's the time to speak up if you disagree!
#9
Quote from: Guigui on January 23, 2026, 10:20:57 PMYes all works good if the CE is put in its own directory.

OK, I can confirm that running CE from a NL 12.14 directory results in checkmarks not being displayed in the level select menu. It turns out that it's because CE uses larger images (24 x 24 rather than 16 x 16) due to the treeview itself being larger (and having larger clickable areas). I forgot that I'd made this change, and it does result in the checkmarks not being visible if the assets don't match what's expected.

Quote from: Guigui on January 23, 2026, 10:20:57 PMthe text scrolling bar on the main at the bottom of the main page not displaying properly.

And yeah, this is due to the data\title.nxmi file being set up slightly differently to accomodate the CE menu graphics.

Quote from: Guigui on January 23, 2026, 10:20:57 PMAll in all, not sure if this idea of running CE from NL is that good. It looks like it leads to some conflicts and gives you some troubles.

I'd probably have to agree at this point. CE has been created with the sole purpose of being a UI upgrade, but it clearly needs to be able to load its own assets in order to achieve this goal.

It seems that the best thing to do would be to ask CE to check for a subdirectory (we could call it "assets-ce" or something) which contains all the CE-specific graphics, data files, etc required to run CE correctly. Mutual assets (levels, replays, music, etc) and NL-only graphics can be placed in the root directory as usual.

Then, when loading something, CE can check for "assets-ce" before checking the root directory. Anything that's found to be missing (Sleeper sprite) or different (title.nxmi, the checkmark .pngs) can be placed into "assets-ce". (Of course, running CE from its own directory will not require the CE assets folder).

That's something I can certainly look at for the release of 1.1 proper. It may be worth doing an RC-2 to check that it's definitely playing ball, if we decide to go ahead with this.
#10
Well, it's funny you should ask.

I already implemented support for subfolder a few days ago (commit 5d9cc71) so the next version (1.45) will be able to access the subfolder and represent the correct music file for your level.

If you notice anything else, let me know. I'll likely be releasing NLCE 1.1 proper along with Editor 1.45 very soon (within the next few weeks).
#11
As an experiment, could you try moving userdata.nxsv and NLCE into their own directory (with all the RC-1 stuff) and see if you get the green checks then?
#12
Settings are now stored in "NLCESettings.ini" to prevent clashes when loading settings. CE will initially read from "settings.ini" if it exists (to prevent you from having to do the config again), but will save to the new file and use that one from then on.

N.B. Both programs will continue to read/write to/from the same userdata.nxsv and hotkeys.ini. If running from the same directory, it's most likely that users will want this, since both programs will show the most up-to-date completion progress for all levels. As far as hotkeys are concerned, even if new ones are added to CE, NL would just ignore any lines it didn't recognise in hotkeys.ini.
#13
Yeah, I'll make sure that CE can read from "sound" as well as "sounds" in 1.1 proper.

Scratch that, I've already done it! In commit 5d091f3, full cross-compatibility with legacy NL directories has been added. This was done after the release of 1.1 RC-1. I don't even remember doing it, but it's there and it works! EDIT: Thinking about it, it was probably done in response to this topic. I've made directory cross-compatibility a fairly high priority in general, since it does make a lot of sense that people would want to run both NL and CE from the same directory.

One thing to note is that some of the sounds themselves may have different names or may use different sounds for the same thing. It's worth combining all sounds from CE and NL into the same directory (whichever one you use) to ensure that both programs can access the sound files that they need. You should only need to do this once, and thereafter add any sound that may later be added to CE (this would need to be done for regular NL anyway).
#14
Fixed in commit 6a92a27.
#15
Linking the proposed behaviour to the zoom hotkeys as opposed to directly to the mousewheel handler is by far the easier approach to take here. It's a few lines of code and it works perfectly.

Attempting to hard-code it to the wheel would be a lot more of a bug-prone effort. The wheel can currently have any hotkey action linked to it, so we'd have to find a way to bypass that action (from a place of not necessarily knowing what the action is) as well as implementing the new framestepping behaviour and ensuring that other mousewheel event handling isn't affected. Not trivial, and tbh not worth the effort.

Let's add the framestepping behaviour as a modifier-accessible action of zoom in/out, then. I imagine that the vast majority of users keep zoom in/out linked to the mousewheel anyway. The framestepping, then, is a nice added bonus.

So, ensuring that zoom in/out remains linked to the mousewheel, we have:

Wheel only = zoom in/out
Ctrl+Wheel = step +1/-1
Shift+Wheel = step +10/-10
Alt+Wheel = step +100/-100

Let's give this a try in CE 1.1 and see what we think.

Implemented in commit 2b75880.