Recent posts

#31
General Discussion / Re: Programming language discu...
Last post by JawaJuice - June 10, 2026, 12:56:42 PM
Quote from: kaywhyn on June 10, 2026, 12:43:49 PMC#

Source code for NL editor:

https://bitbucket.org/namida42/neolemmixeditor/src/master/

Ah OK, makes sense. I would choose C# as well for that kind of desktop GUI app.
#32
General Discussion / Programming language discussio...
Last post by kaywhyn - June 10, 2026, 12:43:49 PM
#33
NeoLemmix Main / Re: Why should NL levels have ...
Last post by JawaJuice - June 10, 2026, 11:17:34 AM
Quote from: Guigui on June 10, 2026, 08:33:31 AMAhah I was just making this computation too, proving that the Lemmings forum is indeed populated with many maths people (but we welcome you too JawaJuice ;)).
So yes, clicking the random ID button and getting the same ID as an already existing levelis about as likely to happen as picking Donald Trump at random among the whole USA population ... which, when you come to think of it, means it can happen !

Ha, you do need some maths for computer programming ;) Interesting reading on the probabilities there though, guys! What language is NLEditor written in out of curiosity? I'd be interested how the Random ID button is implemented, presumably some kind of seeded rand function.
#34
NeoLemmix Main / Re: Why should NL levels have ...
Last post by Guigui - June 10, 2026, 08:33:31 AM
Quote from: Simon on June 10, 2026, 06:16:48 AMRight, re-rolled IDs or new-level IDs are unlikely to collide. ID is 64-bit integer (there are 2^64 possible IDs). Birthday problems will start around a billion levels (10^9 levels) with a 1 % to 3 % chance of collision. A sensible upper bound is that a million levels will ever exist. With a million levels, the chance of birthday collision is practically zero; it's around a millionth of a percent.

-- Simon

Ahah I was just making this computation too, proving that the Lemmings forum is indeed populated with many maths people (but we welcome you too JawaJuice ;)).
So yes, clicking the random ID button and getting the same ID as an already existing levelis about as likely to happen as picking Donald Trump at random among the whole USA population ... which, when you come to think of it, means it can happen !
#35
NeoLemmix Main / Re: Why should NL levels have ...
Last post by Simon - June 10, 2026, 06:16:48 AM
Yeah, these collisions come from taking an existing level, then re-saving it under a new name to make a new level. Here, the author should re-roll the ID for the new level. The editor has a button to re-roll. But the author must still deliberately click that.

If you copy-paste or save-as your level to make a new level, re-roll the ID for the new level.

Right, re-rolled IDs or new-level IDs are unlikely to collide. ID is 64-bit integer (there are 2^64 possible IDs). Birthday problems will start around a billion levels (10^9 levels) with a 1 % to 3 % chance of collision. A sensible upper bound is that a million levels will ever exist. With a million levels, the chance of birthday collision is practically zero; it's around a millionth of a percent.

-- Simon
#36
NeoLemmix Styles / Re: Style updates topic
Last post by namida - June 10, 2026, 12:24:40 AM
Quote from: WillLem on April 29, 2026, 03:43:34 AMUpdate to 'special' - added crystal exit as separate base/top images for upcoming RotL reissue.

As with the other proposals, changes to the official styles would need to see some discussion. And in this particular case - I feel like I would probably veto it anyway, on the grounds that the appropriate place for this piece, if it really must be used at all, is a (user)_special or rotl_special style, not an official style. (Any further discussion on this subject will need to go in its own topic, not this one.)

The other two have been updated in both the all-styles ZIP and the style manager.
#37
NeoLemmix Main / Re: Why should NL levels have ...
Last post by namida - June 09, 2026, 11:26:40 PM
It is extremely unlikely that a duplicate ID will arise between two levels made from scratch.

The main cases where it's likely to come up:
- Variant levels (eg easier / harder repeats)
- Levels derived from an official level

It is possible an author might do an all-packs check by combining the packs into a single large one (rank / pack structure doesn't really matter for this, they could just copy the levels) and running a check against it. In this case, the IDs would matter again.

Mass replay check is the only time an ID issue will outright break anything. In all other cases, it will at worst cause a warning to be displayed. But this would arise from the replay having a wrong ID; not two levels sharing an ID. That being said: Keep in mind that even if you don't want to mass check your levels, other users might.
#38
NeoLemmix Styles / Re: Style updates topic
Last post by 92Dexter11 - June 09, 2026, 10:00:54 PM
Just letting you know about an update to dex_circuit. It contains a fix to the pickup object which mistakenly had an offset hitbox. (The updated version is fixed using graphical offsets, so any existing levels which use this object should be functionally identical  :thumbsup: )
#39
NeoLemmix Styles / Re: New Styles - Lemmings Fait...
Last post by 92Dexter11 - June 09, 2026, 09:55:53 PM
Just letting everyone know about a quick fix for the pickup for dex_circuit (thanks GuiGui! :thumbsup: ), see OP for more details. Also updated all the preview images to use dropbox instead of imgur.
#40
NeoLemmix Levels / Re: Heart66 easy pack
Last post by heart66 - June 09, 2026, 08:18:52 PM
New level 49