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
NeoLemmix Styles / Re: Style updates topic
Today at 11:33:48 AM
Update to willlem_lemminas: added specified pickup size following this CE update.
#2
Hovering the cursor over a pickup (even after it's been collected) now displays "N [SKILL(S)]" in the skill panel info display:



Implemented in  NLCEPlayer commit d6e6418.

So, to reduce UI clutter, we can also remove the pickup skill number (on the pickup itself) after it's been collected:



Implemented in NLCEPlayer commit 361be93.



NOTE: Due to the way that pickup images are composited, there's no sensible way to get the actual size of the output pickup image (turns out it's hardcoded, and is *not* the same size as the actual pickup image itself). So, for the purposes of the mouseover feature, the pickup's hitbox size has been set to the default of 12 x 12, and for any other sizes (such as the proposed larger blue pickup) we can use the existing DEFAULT_WIDTH and DEFAULT_HEIGHT properties in the object's .nxmo in order to specify the actual size of the pickup. This is by far the simplest way around this issue.



@namida - Would you be happy to add the larger blue pickup to the default (or special) style?



It's attached to this post. I've renamed it so that it can be placed into either style cleanly.

#3
Quote from: Simon on March 02, 2026, 06:31:08 PMI can offer you: Saturday, March 7, or Sunday, March 8

Both are fine for me, let's go for 3pm CET (2pm UTC) on Saturday. We should only need a couple of hours. See you then :)
#4
Lemmini / Re: Menu bar theme & icons
Today at 06:06:29 AM
That's wierd, I wonder why it's only happening for the glasses and not the other two. Or maybe it is and I just can't tell.

I'll certainly investigate the other icon sizes and/or find out if there's anything going on in rendering which might be causing the scaling.
#5
Quote from: Guigui on March 01, 2026, 10:33:57 PMSimple suggestion : display the skill type and its number in the panel when mousing over the pickup icon ?

Great idea, I'll get on this for sure.

SuperLemmix also solves this problem by making the default pickup much larger:



Would people be up for this in NeoLemmix as well? If so, we could either add it to the 'default' style, have it replace the default pickup, or add it to the 'special' style. If not, this version of the pickup is always available from 'willlem_lemminas'.
#6
Here is a GUI-based tool for building a full levelpack.ini file. You can add music, levels and groups and auto-generate a codeseed for the pack.

For RetroLemmini: Make sure the .exe is placed in the RetroLemmini root directory, or 'resources' folder.

For any other version of Lemmini: Make sure the .exe is placed in the same folder as 'levels', 'mods', 'music', etc.

Enjoy!

Changelog:

Version 1.1 ensures that the resources\ folder is present
Version 1.2 adds .rlv support
Version 1.3 removes the junk strings between level entries (your level files should be properly named anyway! ;P)
Version 1.4 fixes the music indexing issue
Version 1.5 adds the ability to load and edit a pre-existing levelpack.ini file



F.Y.I. It's always possible to download the latest version of the LemminiLevelPackCompiler via the Editor.

#7
Here are some demo background colors. I really like the blue:



A more standard-looking dark gray:



A much darker gray (also made the text a bit darker for this one):



And, a darker blue (the same color, in fact, as the Amiga blue background):



The last of these blends in perfectly when playing a level in one of the OG styles. Maybe a bit too perfectly, but it does look awesome.

EDIT: I've now also updated the hotkey text color so it's visible against all backgrounds.
#8
Quote from: zanzindorf on March 02, 2026, 12:44:18 AMHere's the icons so far on different backgrounds

The dark background looks so much better. I'll have a play with the menu bar, it probably should have a dark mode.

The angled glasses do look great, but the front-view ones are just way better imho. Maybe somewhere between the two perspectives could work...? Keep the originals as well so that we have a few to play with.

The hatch looks good as well, I did end up wanting to straighten the edges and make it slightly bigger. Here are the icons in context so far:



I'll have a go at making a dark mode now and post the results soonish.
#9
Great work, zanzindorf :thumbsup:

Quote from: zanzindorf on March 01, 2026, 12:08:20 AMHere's an attempt at the code icon:
...
Do we like the binary code? I can add or remove it to either render.

I definitely prefer the front-view glasses. The binary is also a nice touch.

Quote from: zanzindorf on March 01, 2026, 12:08:20 AMFor this one, I changed the lighting a bit to brighten everything.

I can't decide which I prefer of these. The darker one seems a bit more 3D, has more depth to it, which is good. The lighter one is more "visible", but might not contrast as well against the standard menu background.

I'll get some previews of these icons up later today.
#10
I looked into this with a view to implementing a simple .txt-based Groups saving system (which would essentially save and load the custom groups to/from a .txt file in the exact same way that they're written to the level), but this proved to be way more complex than I originally anticipated, and progress was halted fairly quickly.

Amongst other things, given the fact that the piece would need to have some sort of visual reference, a .png of the group would need to be created anyway (if only for display purposes), so that got me thinking that we might as well just add the grouped pieces as new terrain pieces to whichever style would be the best fit. If we limit this to, say, 5 additional pieces per style (give or take), we'll likely cover the most-frequently-created groups anyway. For the rest, the workaround of saving to a "MyGroups" level file seems decent enough for the time being.

As for suggestion (2), my honest thoughts are that if a style creator recognises that a particular piece grouping is useful and should be available to all users, they should simply go ahead and add that piece as a regular terrain/steel piece, rather than the Editor having to messily support in-style groups for basically the same end result.

With this in mind, and given that I've added a lot of new and very cool features to the Editor recently, I'm going to reject this one. We can keep the topic unlocked (albeit in the Closed board) in case anyone wants to revisit the idea at a later date, but for now I believe I've explored it enough and come to the correct conclusions.
#11
Quote from: hrb264 on February 28, 2026, 09:24:04 AMIs it OK to leave it in Mayhem as a kind of 'breather'?

Yes. It's your pack, go with your instincts :)

Quote from: hrb264 on February 28, 2026, 10:49:49 AMI get the impression many people often like to have 1 or 2 of each skill and don't like this sort of level? (To be honest, 1 of everything levels aren't my favourite type :D )

Mine neither, I'm also a fan of more open-ended levels that provide enough skills to find more than one solution. To each their own.

Don't try too hard to please others. Make the levels you'd want to play yourself.
#12
I've now implemented a failsafe for replays made in SuperLemmini versions 0.103 - 0.104a (which have untimed bombers only). Previously, if the "timed/untimed" data was missing from the replay, RetroLemmini would fallback to user option. Now, any replay made in these specific versions will be assumed to have untimed bombers.

Unfortunately, there's no way to account for replays made in SuperLemminiToo because this is when the timed bomber option was first made available but wasn't yet written into the replay (that came about in RetroLemmini 1.0). However, it is still possible to fix these replays manually should anyone wish to do so:

How to fix SuperLemminiToo replays which include Bombers
1) Open the replay in a text editor.
2) Find any line which matches the following:
   n, 2, FLAPPER, lem   (where "n" is the frame number and "lem" is the lemming index)
3) If the replay was made with the Timed Bomber option enabled, type ", true" at the end of the line. Otherwise, type ", false". Examples:
   162, 2, FLAPPER, 0, false   (an untimed bomber assigned to lemming 0 at frame 162)
   394, 2, FLAPPER, 5, true   (a timed bomber assigned to lemming 5 at frame 394)

Done! :)

Implemented in RLPlayer commit 14affaf.
#13
OK, made a little bit of progress with this today.

Out-of-bounds exceptions for lemming indices are now handled by displaying the expected vs. actual lemming index in the window caption, like this:


So, the replay has an action for lemming 11, but there are currently only lemmings 0-5 available in the level.

Also, when loading a replay, RetroLemmini falls back to matching by level name alone if it can't find an exact match for pack title, rating and level name (this has been in effect since 2.7). This does occasionally result in mismatched replays being played, so let's show the expected name + pack title in the caption. The purpose of this is to make it easier to see which level the replay is actually for:


The replay is for "Take A Running Jump" from Lemmings, But With Lemminas!. This pack can't be found, so RetroLemmini has loaded "Take A Running Jump" from regular Lemmings.

Whilst there's still no guarantee that the replay will play without issues, the above tweaks at least help matters by reducing unhandled exception popups, whilst providing better user feedback so that issues can be more easily identified and fixed.

Meanwhile, I'll keep looking into what can be done to increase backwards compatibility with older replays.
#14
A question as old as custom lemmings levels, this one.

The difficulty of custom levels (as Proxima has already pointed out) is greater than that of the original games, but if we stretch the graph so that Fun still means "as easy as the game can be" and Mayhem still means "as difficult as the game can be", the following questions can provide a good barometer to sort levels out:

1) Does the level expect the player to find a single intended solution? Yes = 1, No = 0
   1b) Is the level a tutorial level, or a level where the solution is intended to be obvious? Yes = -1, No = 0
2) Does the skillset provide more skills than are required to solve the level as intended? Yes = 0, No = 1
3) Is the layout of the level specifically tailored towards patching out all other possible solutions than the intended one? Yes = 2, No = 0
4) Does the level's intended solution feature a specific trick that the player must know/discover in order to find the solution? Yes = 3, No = 0
5) Once the solution is known, how easy* is it to play the level in real time without using the pause button? Easy = 0, Not easy = 1
6) Are there any assignments which cannot be made without the use of the pause button, L/R arrows, or any other player assists such as framestepping or skill shadows? Yes = 2, No = 0

*For the purposes of this question, if the level provides little to no challenge when playing out the known solution in real time, it's "Easy". If executing the solution presents any significant challenge at all during real-time play, it can be scored as "Not easy".

If the level scores more than 0, it's probably at least Tricky difficulty. The higher the score, the more likely it is to be Taxing or Mayhem, keeping in mind that the highest possible score from the questions above is 10.

The questions matter in combination as well. For example, if questions 1, 2 and 3 all score positively, I'd say it's at least Taxing if not Mayhem. If questions 1 and 4 score positively, but 2 and 3 score 0, it could be a more difficult Taxing level or even a Tricky level depending on how lenient the skillset is.

Really, measuring difficulty is a learn-by-doing process. The more levels you make, and the more solutions to your own levels by other players that you see, the better an idea you'll have of how difficult your level is.

As a player, I always appreciate it when a pack starts off with a bunch of easy, open-ended levels just to get me going. It's a good way to get to know the author's level design style and get warmed up for the later levels. Like a professional piano player doing a few scales or playing a few easier pieces to warm up before a concert, I see it as a necessary part of the process.

Anyways, keep going, keep creating. That's the best way to learn.
#15
Quote from: Airwave on February 27, 2026, 11:07:07 PMI'm new to the forum but I've been playing Lemmings on and off since the 90s. I got back into it in the last few month when I discovered RetroLemmini and have been playing a lot lately.

Welcome to the Forums! Glad you're enjoying RetroLemmini :)

I've replied to the replay concerns here.