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

Topics - WillLem

#1
Community Edition / Roadmap for CE 1.1
May 20, 2025, 09:37:05 PM
Since more than 2 months have passed since the release of 1.0 and there hasn't been much in the way of feedback (and all feedback so far is either in active discussion or has been addressed/resolved), it seems appropriate to start thinking about the next version.

The main thing I'd like to focus on this time around is the replay system, beginning with the following proposed features/updates:

:lemming: Animate Replay "R" icon and make it clickable to cancel the replay (including during Replay Insert mode)

:lemming: Add Playback Mode - this can auto-play an entire folder of replays for a selected levelpack, with various playback options

:lemming: Update Replay Renamer (now known as Replay Manager in SLX) to include additional replay renaming options (including the ability to append the pass/fail result of each replay) when performing a Mass Replay Check

:lemming: Add .nxrp Windows-File-Association; when associated, clicking a replay file will open NeoLemmix and load the level & replay, ready to be played back immediately!

I'd also like to propose the following skill panel updates for 1.1:

:lemming: Make negative save count optional; the alternative would be to count upwards from 0 with the number in yellow until it reaches the save requirement, at which point it would become green

:lemming: Add (optional) mouseover hints to all skill panel buttons

:lemming: Cap Lemming counts at '999' ('-99' for negative numbers) across the panel to avoid visual bugs when the lem count exceeds this number

That should be enough to be going on with. Please post a reply with any suggestions/questions/comments you may have. Work on this will likely be very slow compared to my usual rate, but sooner replies are always better than later ones.
#2
RetroLemmini now has a completely open file system. This is so that users can completely customise their copy of RetroLemmini (if they wish to do so), and also makes project maintenance much easier and keeps the directory as tidy as possible.

When you install a new version, to minimise the possibility of missing resources and to keep everything running smoothly, please follow this guide carefully. If in doubt, keep a backup of your old version somewhere until you're happy that you've got everything set up in the new version:

A Guide To Migrating Content and Settings Between RetroLemmini Versions

1) Set the new version of RetroLemmini as a brand new directory - unzip it to a location of your choosing and leave it titled "RetroLemmini X.X" so that you know at a glance which version you're on. Or, if you wish to name the directory "RetroLemmini", first rename your old directory "RetroLemmini old" or similar.

2) Open the new and old RetroLemmini directories at the same time, side-by-side.

3) Move any replays from the old "replays" folder to the new "replays" folder.

4) Move any levels/packs from the old "levels" folder to the new "levels" folder. In most cases, it's OK to overwrite the default packs (Lemmings, Oh No! More Lemmings, etc), but be sure to check that these haven't been updated in the current version. If unsure, don't copy these packs across.

5) For "gfx", "music" and "sound", it's generally OK to move these straight across from the old version, but - as with step (4) - be sure to check that you aren't overwriting any updated files unintentionally (if you wish to overwrite them, that's OK, as long as you know what you're doing!).

Steps 6 onwards are different depending on which version you're migrating from/to.

If migrating from 2.1 or earlier to 2.2 or later:

6) Move the "resources\players" folder to the new "settings" folder.
7) Move the "resources\players.ini" file to the new "settings" folder (but don't put it in the "players" folder!)
8) Copy the contents of the old "settings" folder to the new "settings" folder.

If migrating from 2.2 onwards to a later version:

6) Copy the contents of the old "settings" folder to the new "settings" folder.

If everything's been done correctly, the new version should run without issues, retaining all of your existing content and settings. If you need assistance with any of this, don't hesitate to post here or PM me and I'll do my best to help you.

Enjoy RetroLemmini! :lemcat:
#3
This bug exists in the SuperLemmix Editor following the implementation of custom hotkeys in version 2.8.4.

Steps to reproduce:

1) Make a selection of 2 or more pieces, ensuring that there is at least 1 other piece not selected
2) Hold Ctrl+LMB and drag the mouse over the unselected piece(s)

Expectation: the unselected pieces should be joined with the existing selection (as per previous behaviour).

Actual behaviour: we see the dotted selection rectangle whilst moving the mouse, but the piece(s) is(are) not added to the existing selection.



This is fixed in commits 960df79, 8217b59 and 98f4fd2.

Rather than add another hotkey, Select/Drag Pieces is now hard-coded to LMB again, and Ctrl is hard-coded as a selection modifier to achieve the above expected behaviour (Note: Shift or Alt will also do the same thing). It's highly unlikely that anyone would want to assign a different mouse button to this particular set of actions, so this fix makes the most sense.

Other mouse-related actions (Horizontal/Vertical Drag, Invert Selection, etc) can still be assigned different hotkey setups if desired.
#4
Steps to reproduce:

1) Open 2 instances of NeoLemmix CE
2) We'll call them instance A and instance B, where instance A is the first one opened
3) In instance B, complete a level that hasn't already been completed (choose an easy one!), and change one of the settings in the F2 menu
4) Check that the level is shown as completed in instance B, and that the setting has been saved (closing and opening the F2 menu will be enough to verify this)
5) Close instance B
6) In instance A, the level you completed in instance B will show as not completed, and the setting will be as it was originally (i.e. before it was changed in instance B)
7) Close instance A
8) Open a new instance of NeoLemmix CE

Expectation: the level that you completed in step 3 should show as completed, and the setting should be whatever you changed it to in step 3.

Actual behaviour: the level is shown as not completed, and the setting is as it was originally before it was changed.



This bug is fixed in:

NeoLemmix CE commit 78026b2
SuperLemmix commit 6cfa4b8

A warning is shown when closing the first open instance (instance A in the example above); the user has the option to click "OK" to save the updated settings & userdata, and "Cancel" to revert.

We could also simply load the latest settings silently if people think that would be better? Is there ever a reason to click "Cancel"?
#5
Tagging System Explained

To keep things simple and organised, I've decided to start using the following tagging system for bug reports and suggestions:

[ ✓ ]
This indicates that the [BUG] has been fixed, or the [SUG] has been implemented. At this stage, there may still be discussion or further action pending, so the topic may remain in the "Bugs & Sugs" board and, if it's a [SUG], may yet be revoked following implementation. Only once it has been moved to the "Closed" board should it be considered final.

[ + ]
This indicates that the [BUG] has been replicated successfully and confirmed as a bug, or that the [SUG] has been accepted. Discussion could still influence the outcome at this stage, but it's pretty much a guarantee that the [SUG] will at least be trialled in a future version update (if implemented successfully). The next stage is to attempt to fix the [BUG], or implement the [SUG]. If successful, the topic will then be re-tagged as [ ✓ ]. If unsuccessful, the topic could still be rejected at this stage, but is more likely to be re-tagged as [ ? ].

[ ? ]
This indicates that further discussion and/or information is needed before any action can be taken. It may be that the [BUG] has not yet been tested and confirmed, or the [SUG] needs to be discussed either for clarification, to see if other users would be interested in the feature being added, or for specifics on how the feature should be presented. If you see this symbol on a topic, this is the point at which your input is most likely to influence the outcome, so please do reply with any comments or suggestions that you might have at this stage.

[ - ]
This indicates that the [BUG] has been deemed as not a bug and/or not something that needs to be addressed program-side, or the [SUG] has been rejected. At this stage, if the topic has been moved to the "Closed" board then the decision should be considered as final, but the topic will remain unlocked for possible further discussion either way.



How To Create A Bug Report / Feature Suggestion

The following are some basic guidelines for creating bug reports and suggestion topics. For the most part, these guidelines are just that: guidelines. It's not a major issue if these aren't followed to the letter, but it does help with keeping the forum organised and keeping your topics clear and easy for others to understand.

1. Tagging

Prefix your topic title with the appropriate tag. First should be either [BUG] for a bug report, [SUG] for a suggestion, or [DISC] for a discussion. Following this should be either [PL] if it relates to the game engine itself, [ED] if it relates to the editor, or [STY] if it relates to styles. If multiple tags from each set are applicable, use the one that you think is most applicable. If unsure, just use your best guess, it isn't the end of the world if you get it wrong.

2. Creating a title

Topic titles should be reasonably specific. For example, if the editor has a bug where it crashes when you try to load any level with 500 or more lemmings, "Bug in the editor" is not a good title. "Editor crashes when loading certain levels" is better. "Editor crashes when loading levels with 500+ lemmings" is better again.

3. Providing Information

Be as specific and descriptive as you can in your bug report/feature suggestion. If it's a [BUG], include steps to reproduce the observed behaviour that another user (i.e. me!) can follow in order to see exactly what's happening and what actions lead to triggering the buggy behaviour. If there are any times when the bug doesn't occur, include that information as well.

If it's a [SUG], remember that your idea may be quite obscure and unique (even if you don't think it is!) and so it will need to be explained as fully as possible.

For both [BUG]s and [SUG]s, screenshots and/or visual representations are extremely helpful. I may even request these if I've been unable to understand your original post for any reason, so bonus points if you can provide anything like this up front! ;)

4. Adding Polls

Feel free to add a poll to your topic if you want to get others' opinions on your [SUG], or to see if other users have experienced the same [BUG]. Polls will not necessarily influence the outcome of a [SUG], but will help to indicate whether or not other users are interested in the feature being added, which may become important later in the process.
#6
Proxima has made a number of tiles in various colours which are intended to match one of the original styles:


Amiga blue, which I'd suggest be added to all of them


A slightly cooler shade of blue, intended for use with orig_crystal


Brown, intended for use with orig_dirt, orig_pillar


Indigo, intended for use with orig_marble


Olive, intended for use with orig_pillar, ohno_rock


Purple, intended for use with orig_marble, ohno_bubble, ohno_rock


Red, intended for use with orig_fire, ohno_brick

I'd like to suggest that we go ahead and add these to the original styles as background images. It's KB of difference in file size for easy access to these style-enhancing background colours. Note that adding these will not change the theme background colour, it will simply make the background available alongside each of the suggested styles in the Editor.

If there are no objections, this will go ahead at the end of March.
#7
NOTE: This will be the last Editor topic today. I'm aware of filling the main page with topics following the recent moving around of the bugs & suggestions boards, so I'll keep forum posting to a minimum for a few days.



To complement the recently-implemented Pop-out Level Arranger, let's also have a Piece Browser which can be moved and resized (horizontally and vertically) as the user wishes.

At this point, I'm not entirely sure that it can be done quite as gracefully as the Level Arranger, since the Piece Browser has far more moving parts. But, it's definitely something for the to-do list.
#8
Rather than post a bunch of redirects, I'll list here the topics that have been moved out of "Closed" and into either the Community Edition Bugs & Suggestions board, or the SuperLemmix Bugs & Suggestions board.

EDIT: OK, definitely done moving topics around for now. This is all of them. Some will probably be silently closed again, but some may be considered for implementation in CE/SuperLemmix.

Moved "[SUG][EDITOR] Level Arranger Window / Open All Tabs" from "SuperLemmix Bugs & Suggestions" to "Closed SuperLemmix Bugs / Suggestions"
Moved "{SUG][EDITOR] Show Enhanced Piece Data in Piece Browser" from "SuperLemmix Bugs & Suggestions" to "Closed SuperLemmix Bugs / Suggestions"
Moved "[SUG][EDITOR] Make the dropdown for selecting styles wider" from "Editor Bugs & Suggestions" to "Closed"
Moved "NL Level Versioning: Game saves decimal, Editor saves hexadecimal" from "Editor Bugs & Suggestions" to "Closed"
Moved "[SUG][EDITOR] Increase Character Limit For Talisman Names" from "Editor Bugs & Suggestions" to "Closed"
Moved "[SUG][EDITOR] Show gridlines when snap-to-grid is active" from "Editor Bugs & Suggestions" to "Closed"
Moved "[BUG][EDITOR] Mouse zooms not at cursor location" from "Editor Bugs & Suggestions" to "Closed"
Moved "[Feedback/Suggestions] Some general feedback from a new user" from "Editor Bugs & Suggestions" to "Closed"
Moved "[SUGGESTION] [EDITOR] Shift-arrow" from "Archived Bugs & Suggestions" to "Editor Bugs & Suggestions"
Moved "[Rejected][Sug][Editor] Button to reload tileset." from "Game Bugs & Suggestions" to "Editor Bugs & Suggestions"
Moved "[Rejected][Sug][Editor] Button to reload tileset." from "Archived Bugs & Suggestions" to "Game Bugs & Suggestions"
Moved "What's your preferences for one-way arrows?" from "NeoLemmix Main" to "Game Bugs & Suggestions"
Moved "[Part-Fixed][Bug?][Editor] One-way walls from another tileset" from "Archived Bugs & Suggestions" to "Game Bugs & Suggestions"
Moved "[SUG] Select lemmings separately from theme" from "Archived Bugs & Suggestions" to "Game Bugs & Suggestions"
Moved "[SUG][CONTENT] change default arrow colors of original sets" from "Archived Bugs & Suggestions" to "Game Bugs & Suggestions"
Moved "[DISC][PLAYER] The future of official game conversions" from "Archived Bugs & Suggestions" to "Game Bugs & Suggestions"
Moved "[SUG][PLAYER] Allow file assocation between .nxrp and NeoLemmix Player" from "Archived Bugs & Suggestions" to "Game Bugs & Suggestions"
Moved "[SUG][PLAYER] Notify user if a pack recommends playing in high-res" from "Archived Bugs & Suggestions" to "Game Bugs & Suggestions"
Moved "[SUG][PLAYER] "Purge replays" button" from "Archived Bugs & Suggestions" to "Game Bugs & Suggestions"
Moved "[SUG][PLAYER] Replay manager" from "Archived Bugs & Suggestions" to "Game Bugs & Suggestions"
Moved "[SUG][PLAYER] Load level from replay" from "Archived Bugs & Suggestions" to "Game Bugs & Suggestions"
Moved "[SUG] New talisman item - Level object" from "Archived Bugs & Suggestions" to "Game Bugs & Suggestions"
Moved "[SUG][PLAYER] Indicate pre-assigned skills in F2 menu & preview screen" from "Archived Bugs & Suggestions" to "Game Bugs & Suggestions"
Moved "[SUGGESTION] theme.nxmt overrides" from "Archived Bugs & Suggestions" to "Game Bugs & Suggestions"
Moved "[SUG][PLAYER] Show custom lems in the skill preview in the level select window" from "Archived Bugs & Suggestions" to "Game Bugs & Suggestions"
Moved "[SUG][UI][PLAYER] Skill panel layout" from "Archived Bugs & Suggestions" to "Game Bugs & Suggestions"   
Moved "[SUG] Splat & Anti-Splat "Fields"" from "Archived Bugs & Suggestions" to "SuperLemmix Bugs & Suggestions"
Moved "[SUG][EDITOR] Levels with no exit" from "Archived Bugs & Suggestions" to "Game Bugs & Suggestions"
Moved "[SUG][PLAYER] Calculation of postview messages" from "Archived Bugs & Suggestions" to "Game Bugs & Suggestions"
Moved "[SUG][PLAYER] Allow next/previous skill command to rotate infinitely" from "Archived Bugs & Suggestions" to "Game Bugs & Suggestions"
Moved "[SUG][PLAYER] Nudge minimap left & right using hotkeys" from "Archived Bugs & Suggestions" to "Game Bugs & Suggestions"   
Moved "[SUG][PLAYER] Option to disable replay mode (originally a bug report)" from "Archived Bugs & Suggestions" to "Game Bugs & Suggestions"
Edited "[SUG][PLAYER] Option to disable replay mode (originally a bug report)" by "Dave4"
Merged topics to create "[SUG][EDITOR] Show gridlines when snap-to-grid is active"
Merged topics to create "[BUG][EDITOR] Improved handling of missing pieces"
Moved "[SUG][EDITOR] Cross Compatible Editor" from "SuperLemmix Bugs & Suggestions" to "Closed"
Moved "{SUG][EDITOR] Various ideas for Visual Tools" from "SuperLemmix Bugs & Suggestions" to "Closed SuperLemmix Bugs / Suggestions"
Moved "[SUG][PLAYER] Spacing on records screen" from "Closed" to "Bugs & Suggestions"
Moved "[BUG][PLAYER] Negative checkbox options: Reword & invert" from "Closed" to "Bugs & Suggestions"
Moved "[BUG][PLAYER] "An error occurred while trying to save data"" from "Closed" to "Bugs & Suggestions"
Moved "[SUG][PLAYER] Assign hotkeys to panel buttons (as well as individual skills)" from "Closed" to "Bugs & Suggestions"
Moved "[SUG][PLAYER] Slight tweak to level select" from "Closed" to "Bugs & Suggestions"
Moved "[SUG][PLAYER] Sound For Release Rate Increase/Decrease" from "Closed" to "Bugs & Suggestions"
Moved "[BUG][PLAYER] Replay Insert Mode ("blue R") silently overwrites" from "Closed" to "Bugs & Suggestions"
Moved "[BUG][PLAYER] Program crashes on startup if level file missing" from "Closed" to "Bugs & Suggestions"   
Moved "[BUG][PLAYER] Skill shadow ignores death from out-of-bounds" from "Closed" to "Bugs & Suggestions"
Moved "[BUG][PLAYER] Inconsistent Fencer steel interactions" from "Closed" to "Bugs & Suggestions"
Moved "[BUG][PLAYER] Inconsistency in entering water between swimmer and normal lemming" from "Closed" to "SuperLemmix Bugs & Suggestions"
Moved "[BUG][PLAYER] Lemmings sometimes survive the fall onto the splat-pad" from "Closed" to "SuperLemmix Bugs & Suggestions"
Moved "[Bug][Player] Lemmings Get Zombified Before Appearing or Popping Out of Receiver" from "Closed" to "SuperLemmix Bugs & Suggestions"
Moved "[Potential Bug] NeoLemmix 12.13 and the "Select Walking Lemming" function" from "Closed" to "Bugs & Suggestions"
Moved "[BUG?][PLAYER] Skill panel appears smaller in High-res mode" from "Closed" to "Bugs & Suggestions"
Moved "[SUG][PLAYER] Display Neutral Lemming Count" from "Bugs & Suggestions" to "Closed"

Plus, Simon moved these:

Moved "[SUG] Sound Schemes" from "Community Edition" to "Bugs & Suggestions"   
Moved "[SUG] Welcome Screen enhancements" from "Community Edition" to "Bugs & Suggestions"   
Moved "[SUG] Assign Fail Sound" from "Community Edition" to "Bugs & Suggestions"   
Moved "[SUG] Multiple player profiles" from "Community Edition" to "Bugs & Suggestions"   
Moved "[BUG][FIXED] Remove Update Message Box (points to NL site)" from "Community Edition" to "Bugs & Suggestions"   
Moved "[SUG] Replay Insert Mode / Replay Editor updates" from "Community Edition" to "Bugs & Suggestions"   
Moved "[SUG] Non-Windows-dialog alternatives to the level select etc screens" from "Community Edition" to "Bugs & Suggestions"   
Moved "[BUG] Crash after quit: Press ESC twice during level preview" from "Community Edition" to "Bugs & Suggestions"   
Unlocked "[Potential Bug] Fencers no longer turn around when hitting steel"   
Moved "[Potential Bug] Fencers no longer turn around when hitting steel" from "Closed" to "NeoLemmix Main"   
Moved "[No Bug][Player] Sliders Exiting in Midair If Still Dehoisting" from "Closed" to "Closed"   
Moved "[BUG][PLAYER] Slider lemmings can shimmy across the bottom boundary of the level" from "Closed" to "Closed"   
Moved "[SUG][PLAYER] Display Neutral Lemming Count" from "Closed" to "Bugs & Suggestions"   
Moved "NeoLemmix Bugs & Suggestions Subforum Rules" from "Bugs & Suggestions" to "Closed"
#9
Lemmini / Help With Missing Resources
March 04, 2025, 02:22:55 AM
If you're seeing the "Missing Resources" error in RetroLemmini, it's usually due to one of the following:

1) The required resource hasn't been included with, or wasn't downloaded along with, the associated level pack.

If you're playing a custom level, check the LF topic or download site of the level pack. Are there any other resources that were meant to be downloaded along with it (music, gfx mods, etc)? If so, try downloading these and placing them into the correct folder in "resources\".

Otherwise, see if the pack author/maintainer is still active on LF/Discord. If they are, you can always message them to see if they can provide the missing resource; they may have simply forgotten to include it in the download, and you'd be doing them (and other users) a big favour by bringing it to their attention.

Failing that, please feel free to reply here if you have been unable to find a missing resource from a custom level pack. It's possible that someone has a copy of the resource, or there may be a workaround to at least get the pack to a playable state.

2) A newer copy of RetroLemmini is in a directory with an older copy of the "resources" folder.

This can be quite a common occurrence when updating your copy of RetroLemmini. Either the new copy of RetroLemmini has been placed into an older directory which is of course missing some updated resources (the most likely scenario), or stuff has been copied from the old directory and in the process has deleted or overwritten something in the new directory (far less likely, but could still happen).

Either way, this is an easy fix. Simply re-download the latest update, and take care when copying files across from your existing RetroLemmini directory.

It's generally safe to copy across levels, replays, mods, settings and player data without issue. But when copying across gfx, music and sound, ensure that doing so doesn't delete any existing files in these folders; replacing is generally OK, as is merging.

If you wish to use a modded copy of a particular resource (such as the cursor, for example), it's generally best to ensure that the default copy is present first, then paste-replace your modded copy into the correct folder.

If you're experiencing issues with the RetroLemmini file system in general, ask here for help. Most problems can be solved fairly quickly and easily, and those that can't may be addressed in a future program update if necessary.

3) Some other reason.

If you're getting a "Missing Resources" error that isn't explained or solved by any of the above, please do report it here and I'll do my best to help find a solution or a workaround.

#10
A fork of NeoLemmix featuring UI improvements and an updated level Editor


Welcome to NeoLemmix CE! This "Community Edition" fork exists so that suggestions to improve the UI of NeoLemmix 12.14 can possibly be accepted and implemented, and non-game-physics-related bugs can be fixed. All custom levels made for NeoLemmix 12.14 will always remain compatible with Community Edition, meaning that CE's development will never involve changing the actual internal physics of the game itself.

Here's a list of everything that has been implemented for NeoLemmix Community Edition so far:

Main Menu
:lemming: Added placeholder Menu graphics & layout to differentiate NeoLemmix "CE" from regular NeoLemmix - Please note: the current updated graphics are placeholders so that CE 1.0 is immediately visually different from NL 12.14. A topic will be made for updating the main menu in due course, where we can discuss gfx, layout, etc in more depth, to be applied in a future update.

:lemming: Fade transition between menu screens is now on/off optional. When on, it's the same as it is in the RC. When off, transitions are more or less instant.

:lemming: Menu screens now Fade In (as well as Fade Out) to make between-screen transitions smoother

Options Menu
:lemming: Added option to deactivate helper overlays - reducing UI clutter should always be possible, helps to onboard newbies.

:lemming: Added option to set the number of skill queue frames - 0 is essentially "off", 15 is the default (status quo), up to a maximum of 20.

:lemming: Added more auto-naming options for Replay files and widened the dropdowns for easier reading

:lemming: Re-worded 'Don't Replay After Backwards Frameskips' as 'Replay After Backwards Frameskips' and checked it by default

:lemming: Added option to Replay after Restart (or not) -  a frequently requested feature which might become unnecessary again in a future update (if we can improve Replay UI)

:lemming: Added option to load either the Next Unsolved Level, or the Last Active Level (current behaviour)

:lemming: Hotkey Config - Added 'Restore' (restores previously saved layout), 'Cancel' (discards changes), 'Save & Close' and 'Clear All Keys' buttons

:lemming: Hotkey Config - Added text label (rather than a popup) to let users know when 'Find Key' is listening for a keypress

:lemming: Hotkey Config - (Bugfix) Typing "-" into the Time Skip text input (for minus values) no longer resets the cursor

Level Select Menu
:lemming: Fixed intermittent unresponsiveness, added simple loading feedback, and updated the way packs are loaded so as not to process tons of information at once; this should ensure a much quicker and smoother UI in general, but there may still be noticeable loading delays if a pack isn't a compilation of (> 1) sub-packs but has lots of levels (500+). I'll keep working on this, but for now it's far better than it was previously.

:lemming: Upgraded keyboard compatibility; arrow-key-browsing now load each level preview, and we can load the selected level into the player by pressing [Enter]

:lemming: Added "Reset Talismans" button, so players can reset their talisman progress on a per-level basis (very handy for level testing, and when re-playing an already-completed pack)

:lemming: Added "Level Search" capability

:lemming: Added "Edit Level" button - opens the currently-selected level in the Editor

:lemming: Increased width of, and text size in, Level Select treeview

:lemming: Added mouseover hints to Level Info icons.

:lemming: "Cleanse Levels" now provides feedback during the process.

Skill Panel
No updates yet

In-Game UI updates
:lemming: Sleeper lemming state - this state is entered when time runs out and the lemming reaches the exit. It's a mostly aesthetic state to replace the buggy-looking cluster of exiting lems, but it's also useful for simulating exit behaviour as these lems cannot be assigned to, and are deducted from the lemming count

:lemming: Updates to Replay Editor:
• Added ability to double-click a replay event to jump to that frame
• Added ability to delete all future assignments for a particular lemming (from the currently-selected event onwards)

:lemming: Fixed cursor zoom bug (the cursor's position relative to the level is now preserved between zoom levels)

:lemming: The total number of lemmings under cursor is now always shown, regardless of priority/type (i.e. zombie, neutral)

:lemming: Added "Assign Fail" sound which plays whenever an attempted assignment fails for any reason

:lemming: Bugfix - When in Replay Insert mode, attempted assignments that fail because there is already an assignment on the same frame do not advance physics, thus only triggering the Assign Fail sound (and not the regular assignment sound) and giving the player a chance to edit the replay before advancing.

:lemming: Level title and save requirement info is now displayed in Window Caption (we also display "Mass Replay Check" when in MRC mode)

:lemming: Bugfix - When falling back to default sprites, the correct sprite and brick colours are now loaded.

:lemming: "Falling back to default sprites" is now only shown once (on the level preview screen after the player has attempted to load the level). This is to prevent incidental pop-ups whilst browsing levels.

:lemming: Lemmings shrug and "OK" sound is played when a level is cheated (this is just for fun!)

Other UI updates
:lemming: Upgraded keyboard compatibility of all menus/dialogs; they'll respond to [Esc] by closing, etc.

:lemming: Updated welcome screen with pictures, etc (further updates may be made to the Welcome Screen in the future)

Please note that some features, particularly the Level Search feature in the Level Select menu, have been updated following RC feedback and are further improved/optimised.



How to install:

Simply unzip the directory to any location on your computer!

You can move any levels, replays, gfx mods, styles, etc over from NeoLemmix - they will all be compatible with CE. If they aren't compatible for any reason, please report it.

The zip also contains a copy of the SuperLemmix Level Editor. This is fully compatible with NeoLemmix CE and will detect NeoLemmixCE.exe in the directory and automatically set the controls to NeoLemmix mode. The zip contains everything you need to start creating levels right away!

#11
This bug is present in all existing versions of Lemmini (OG, SuperLemmini, SLToo, RetroLemmini).

Basically, when attempting to load a replay for an external level, we get a "level does not exist" error and the replay doesn't load. It's possible to use this workaround to get it to work, but this isn't ideal; if the external level is a test, and the plan is to later add it to a proper pack, the replay file would have to be edited again.

So, the plan is to fix this for RetroLemmini. We want to first check the levels folder for a match, and if none is found, check the external levels folder for a level matching the name specified in the replay file. If one is found, attempt to load the replay as normal.
#12
I've been looking through some NL bug reports and one that's particularly taken my interest as something that could be looked at in more depth for SuperLemmix is this one concerning splat pad gravity for Jumpers.

It was more or less agreed in the original topic that the behaviour isn't a bug because the lemming is mid-action, and so hasn't yet become a faller. And yes, this is absolutely correct when viewed from a purely game-physics point of view.

However, Armani's original report raises these questions, which didn't really get discussed properly and which I'd like to look at:

1) If the lemming is visibly affected by gravity (i.e. the downwards part of a Jumper arc, a Reacher that is dropping back down having not found Shimmyable terrain), should they be affected by a splat pad?

I'd suggest that they should, since that's consistent with what we'd expect from (splat pad + downwards gravitational force).

EDIT: Reachers do in fact splat, because they transition to faller at the top of the "Reach", and even Floaters and Gliders need to have visibly readied their umbrella/glider to be immune to splat pads; these are both physics consistencies and design decisions that lend even more weight (no pun intended) to 'Jumpers should splat if they're in the descent phase of their arc'.

2) So then, should lemmings exerting an upwards force (the upwards part of a Jumper arc, a Reacher on ascent) interact with splat pads as well?

I'd probably suggest not, as it would look a bit peculiar. Also, even if our understanding of a splat pad is that it's triggered by sufficient gravitational force, downwards-only is an acceptable prerequisite of this.

Thoughts?
#13
There are a number of bug reports that were closed due to the end of NL development being approached or reached, but are non-physics bugs that could potentially be fixed for CE (example).

There are also a few physics bugs that weren't fixed in NL (and consequently also won't be fixed in CE) but were fixed in SuperLemmix. And, some that haven't been fixed in SLX yet, but could be (example).

I wonder if I might be granted mod privs for the Bugs & Suggestions board, so that I can:

a) Re-open any closed UI-related bugs as fixable in CE (so that I can later mark them as fixed and log the commit SHA)
b) Move any closed physics bug reports that could be (or have been) fixed in SLX to the SuperLemmix board, for the same reason

With that said, I realise that namida may occasionally want to respond to bug reports by fixing them in NL, and we also want to eliminate any possible confusion that a CE-fixed bug has also been fixed in NL (which it most likely won't have been).

So, another solution might be to give the Community Edition its own Bugs & Suggestions board, and then namida can forward any reports that would usually get the "no new bug reports" response there instead. Then, any he does decide to fix in NL can be fetched into CE anyway (I'd appreciate the chance to mark the topic as fixed in CE before it's closed if it's decided that this is the way to go).

NOTE: I'd also probably want to request that some topics be moved out of the "Closed" NL board and into the relevant board; if I could be granted temporary mod privs (for a day or two), I'd be happy to do this myself.

Either way, as well as being a way to keep track of what has and hasn't been done already, this would be a big help with maintainence going forward; any new UI bug reports can be handled in CE, and any physics bug reports can potentially be moved to the SuperLemmix board and dealt with there.

Incidentally, I'll probably start marking bugs as fixed in both CE and SLX (where relevant) and with the appropriate SHA reference for each (example); this will be so that topics don't need to be duplicated across boards, and will mainly be so that I can see at a glance what has been done, and for both platforms at the same time.



SIDE NOTE:

Chances are that both SLX and CE will start to get fewer and fewer updates as time goes on, and SLX will probably start to become my main focus again once CE is stable and people are happy with it. Development will then likely increasingly become a case of responding to bug reports rather than announcing new features, and so I could do with making a start now in keeping things organised.
#14
Split from this topic.

Quote from: GigaLem on February 05, 2025, 11:45:35 PMSeggestion 1
I noticed the set all skills to zero button and thought wouldn't make more sense to say "Clear All Skills"? but also thought of a button that said "Set all skills to desired number" like the random skill set only you pick the number all skills will have.
#15
I'm currently investigating overlapping trigger areas in the Lemmini codebase. It doesn't seem to work in the same way as NeoLemmix, where multiple triggers can both exist and be detected in the same pixel.

Instead, the evidence suggests that each pixel can only be occupied by a single trigger, determined (as it seems) by the object's index relative to the other object(s).

So, if we place a water object at index 0, then a trap at index 1, then an exit at index 2, and have all 3 triggers overlap, the exit trigger will overwrite the other two.

At least, that's what I think is happening based on my findings so far.

If that's the case, then prioritising one over the other seems to be basically impossible unless we start hacking away at the rendering, or re-shuffle the indexing of people's levels; neither of these are particularly appealing. There must be another way.

If anyone has any insight into how "bits" work (as opposed to pixels), please do contribute.
#16
Expectation: these topics should all be highlighted green (I'm fairly sure they were, previously...could be wrong), but only those with the "Climber" icon (the sticky but not locked topics) are.

#17
Permalink to latest version of SuperLemmix Editor

TIP: To use the SuperLemmix Editor with NeoLemmix CE, go to Options and choose "NeoLemmix" or "Auto" as the Editor Mode. This will set all controls to NeoLemmix-only.



Please note: If you are using this editor to make NeoLemmix levels, make sure you are using it alongside the NeoLemmix styles, not the SuperLemmix styles, and vice versa. You may encounter issues such as incorrect exit positions, incompatible water object types, etc. if using styles from the other engine.


#18

A brand new version of Lemmini for 2025!

This version of Lemmini continues where Charles left off with SuperLemminiToo. The goal of this version is to make the Lemmini platform as plug-and-play as possible, future-proof it for Java updates, as well as enhance a few features and fix a few bugs. I don't plan to do anywhere near as much with this as I have been doing with Neo/SuperLemmix, but I think one or two decent-sized updates per year are definitely worth it to keep Lemmini going and glowing.



Features List
:lemming: Updated File System

In what is perhaps the flagship update, the "root.lzp" zip file has been removed and replaced with a simple "resources" directory into which all of your existing (Super)Lemmini(Too) resources can be placed.

The file system is now completely open, similar to Neo/SuperLemmix and Lix, enabling you to completely customise your copy of RetroLemmini and keep track of files much more easily. It also makes dev-side updates to the graphics, music, sound, levels, etc much easier to implement and test.

The program no longer creates folders and settings files all over your PC / Mac. Instead, all resources are kept in the root directory (where the .jar is) and the settings file is saved into a dedicated "settings" folder, also in the root directory. So, the program is now self-contained and fully portable!

:lemming: Fixed Timed/Untimed Bomber Replay Bug

SuperLemminiToo's "5 Second Timed Bomber" option was a welcome feature, but it came with a particularly difficult problem: if a user creates a replay with one option enabled, and then that replay is played back with the other option enabled, all of the Bomber assignments are out of sync.

RetroLemmini resolves this so that replays are played back exactly as they were created, regardless of current setting, on an assignment-by-assignment basis.

:lemming: DMA Lemmings / Oh No! More Lemmings

RetroLemmini features the remastered versions of these packs, complete with:

• Fixed steel areas
• Fully restored decorations & level sizes
• Enhanced graphics for the 4 "special" levels
• See this topic for more details...

:lemming: Physics

•  Oh-Noers can now exit without exploding.
Estimated impact: This is no doubt a significant exit physics bugfix, but since the use case involves a very specific trick requiring particularly deliberate set-up, it's very unlikely to affect any existing levels/replays directly

•  If an exit's trigger overlaps with another object's trigger, the exit trigger is preferred.
Estimated impact: Low to none. I don't know of any levels which involve an exit's trigger being completely overlapped by an object. The physics update is more to ensure that exits can always be interacted with, wherever possible

:lemming: Skill Panel

• Updated time counter colour scheme:
• •  Infinite time is displayed in Blue
• •  For timed levels, the count is shown in Green
• • • When 59 seconds remain, the count changes to Yellow
• • • When 10 seconds remain, the count changes to Red

•  Increased speed of release rate re-fire when the button is held (existing replays are unaffected) and widened the range of the pitch-shifted sound to more closely match the Amiga

• The animations have been recoloured slightly to improve the overall appearance (you're more than welcome to drop the SLToo versions into the "resources\gfx\iconbar" folder if you prefer those!).

• The Vertical Lock button is now hidden when not needed.

:lemming: Floater Sprite

• Recoloured yellow umbrella to red and white

:lemming: Main Menu Updates

• Brand new RetroLemmini logo

• Scroller updated for readability - the colours for the "Classic" scroller have been switched to yellow-on-blue, and for the default Lemmini scroller the font is yellow and un-stretched

• Mouse click event handlers added to all menu screens
• •  Menu - LMB loads the first level of the first group of the first pack, or opens the level select menu (this will later be updated to load the next unsolved level in the last active level pack, but that's for another day)
• •  Briefing (Preview) - LMB starts the level, RMB exits to menu
• •  Debriefing (Postview) - LMB continues to next level or restarts the current level (depending on pass/fail), RMB exits to menu

• Improved size & visibility of cursor

More updates to the Main Menu are planned, but for now it's good to go!

:lemming: Options Menu Updates

• Added option to "Auto-Save Successful Replays" for successfully completed levels
• Added an option to "Show Level Name on Status Bar", unchecked by default and only available when "Enhanced Status Bar" is enabled. Charles actually did previously implement this option but it never appeared in the Options menu, so it's added now.
• Added option to Show/Hide menu bar (it's also possible to toggle this on-the-fly using hotkey Ctrl + M from anywhere)
• Added option to choose Exit sound ("Yippee", "Boing" or "Auto", where Auto is set by the level's style)
• Menu screen now updates when toggling Classic Scroller on/off without having to close and re-open the program
• Re-shuffled the Options menu layout a bit for clarity and readability.
• "Stop Fast-Forward When Pausing" is now checked by default, and "Show Button Labels" is unchecked by default.

More updates are planned for the Options menu - tooltips and layout updates at the very least.

:lemming: Hotkeys

• Added a "Hotkeys" menu item which opens a form displaying a list of all in-game hotkeys (this will later be replaced by a hotkey config, but for now users should have access to this info at all times)

Plus, added the following hotkeys:
• Show Hotkeys (Ctrl + F11) - from anywhere
• Cancel Replay (X) - from in-game
• Turbo Fast Forward (G) - from in-game
• Load Replay (Ctrl + L) - from anywhere
• Save Replay (Ctrl + S) - from in-game and debriefing (postview)
• Manage Players (Ctrl + F4)  - from anywhere
• Enter Code (Ctrl + F5) - from anywhere
• Select Level (Ctrl + F9) - from anywhere
• Options (Ctr + F10) - from anywhere
• About RetroLemmini (Ctrl + F12) - from anywhere
• Load default level (Enter/Space) - from main menu
• Start level (Enter/Space) - from briefing (preview)
• Continue to next level/restart current level depending on pass/fail (Enter/Space) - from debriefing (postview)
• Exit to menu (Esc) - from briefing (preview) and debriefing (postview)
• Close RetroLemmini (Esc) - from main menu

:lemming: Debug Mode / Maximum Exit Physics Mode

•  Updated Debug mode access (Level Code is now "0xlemdebug" without quotes, hotkey is Ctrl + Alt + D from in-game). This mode gives access to a number of hidden features such as Draw mode (draw/erase pixels to the game screen), infinite skills, infinite time on/off, spawn lemmings at cursor, etc. A full list, plus key access, can be found in Key Assignments.txt. NOTE: If this mode is active, the level will count as having been "cheated" and records will not be saved

•  Improved Debug Mode panel display

•  In Debug Draw mode (Ctrl + Alt + D, then D again to activate), the number keys (1 - 0) set the size of the "paintbrush". LMB draws terrain, RMB erases

•  Maximum Exit Physics can be enabled either by typing a Level Code (code is "exitrule0k" or "directdr0p" without quotes) or pressing (Ctrl + Alt + E) from in-game. This mode allows lems to exit on contact with the exit trigger, regardless of action (so, for example, Climbers can now exit mid-climb) or state (so, Fallers, Splatters, etc can exit). Like Debug mode, if this mode is active, the level will count as having been "cheated" and records will not be saved

:lemming: Setup Instructions Included

It seems a small feature, but it's a much-requested and much-needed one! The SetupInstructions.txt file included in the root directory provides full setup instructions, as well as how to create a Windows shortcut, and set your own icons, should you wish to do so

:lemming:  UI Features

• Window caption now also displays pack title, rating name and level number (as well as level title and save requirement)

• Saving the level as an image now auto-saves the image with the same name as the level (if such an image already exists, (n) is appended to the filename)

•  Additional app information and web links added to "About" window



Wish List For The Future
Planned for 2.4

Quality of Life/Interface Features

:lemming: User hotkey configuration

:lemming: Allow mods to be used on a per-level as well as per-pack basis

:lemming: Show all level records on postview screen (i.e. max saved, time elapsed, skills used)

:lemming: A user-friendly levelpack compiler (this will likely be a separate tool rather than built in to RetroLemmini itself)

:lemming: Support for custom logos (so level packs can display logos; it's already possible to mod the menu background and cursor)

:lemming: Improved VSFX graphics

Planned for the future

Quality of Life/Interface Features

:lemming: [WIP] Full-screen mode. WIP - Option implemented, currently does nothing. First few attempts at a working Full Screen mode have failed, but some progress has been made with each attempt. Main problem at the moment is getting the border to disappear when the window is already displayed and visible: apparently, Java doesn't like us doing that.

:lemming: Update the graphics sets so that exits are one single graphic (rather than two which must be joined together in the editor manually :eyeroll:) NOTE: Backwards-compatibility with existing levels may need to be built-in to the graphic itself; this feature won't go ahead if it can't be done without manual editing of levels later

:lemming: A built-in level Editor (ideal) or added support for .nxlv (at least)

:lemming: Remove all empty space from the edges of terrain and object pieces (not essential, but desirable)

:lemming: Parental settings which remove blood effects/other graphic imagery from trap animations (this could perhaps be achieved via the mods system), and limit the amount of time you spend playing

Physics

:lemming: Improved steel detection for Bashers and Miners

:lemming: Fix left-facing lem collision detection



To install, simply extract the attached .zip to a location of your choosing. Please feel free to reply here if you have any questions, suggestions or issues.

Chances are that RetroLemmini will just work, as long as you have the latest version of either Java JRE or JDK installed on your system. If you do have any issues getting it to run, please let me know and I'll do my best to resolve them as soon as possible.

Source code is available here: RetroLemmini Source Code.


#19
Site Discussion / [SUG] Post feedback buttons
January 30, 2025, 03:15:43 PM
One thing the Forum is sorely missing is some sort of post feedback system.

Leaving an emoji can be a good way to say "I've read this and appreciate it" without having to type out a full reply, and it might help the Forums to feel a bit less... empty!

Site statistics would suggest that there are a decent amount of users online and reading posts every day; we should ideally be providing users with more ways to interact with posts than typing out replies, which not everybody wants to do.

Also, when someone posts asking for help with something (probably more than 50% of infrequent user posts are to ask for some sort of support or assistance), a "this answered my question" button goes a long way to helping other users who might have the same question but don't want to post, even to ask if the given response fixed the problem.

There's lots that could possibly be done here, but I think as a bare minimum emoji feedback (such as what we have on Discord) would go a long way to improving Forum interactivity and help users get to know what sort of topics and posts are most/least appreciated by users.
#20
NeoLemmix Community Edition 1.0-RC1

Here's the first release candidate for NeoLemmix CE 1.0!

Download NeoLemmix CE 1.0-RC1 EDIT - Download removed

This is the release topic, so for the sake of tidiness please keep all discussion to the roadmap topic.

For reference, here's a list of the features that have been updated in this RC:

1.0-RC1 Changelog
Lemming States

:tal-gold: Sleeper lemming state - this state is entered when time runs out and the lemming reaches the exit. It's a mostly aesthetic state to replace the buggy-looking cluster of exiting lems, but it's also useful for simulating exit behaviour as these lems cannot be assigned to, and are deducted from the lemming count

Options Menu

:tal-gold: Added option to deactivate helper overlays - reducing UI clutter should always be possible, helps to onboard newbies.

:tal-gold: Added option to set the number of skill queue frames - 0 is essentially "off", 15 is the default (status quo), up to a maximum of 20.

:tal-gold: Added more auto-naming options for Replay files and widened the dropdowns for easier reading

:tal-gold: Re-worded 'Don't Replay After Backwards Frameskips' as 'Replay After Backwards Frameskips' and checked it by default

:tal-gold: Added option to Replay after Restart (or not) - a frequently requested feature which might become unnecessary again in a future update (if we can improve Replay UI)

:tal-gold: Added option to load either the Next Unsolved Level, or the Last Active Level (current behaviour)

:tal-gold: Hotkey Config - Added 'Restore' (restores previously saved layout), 'Cancel' (discards changes), 'Save & Close' and 'Clear All Keys' buttons

:tal-gold: Hotkey Config - Added text label (rather than a popup) to let users know when 'Find Key' is listening for a keypress

:tal-gold: Hotkey Config - (Bugfix) Allow typing "-" into the Time Skip text input without resetting the cursor

Replay Features

:tal-gold: Updates to Replay Editor:
* Added ability to double-click a replay event to jump to that frame
* Added ability to delete all future assignments for a particular lemming (from the currently-selected event onwards)
* Form now responds to keys (arrows, space, enter, delete, esc)

Level Select Menu

:tal-gold: Upgraded keyboard compatibility; browsing with arrow keys loads each level preview, and it's now possible to load the selected level into the player by pressing [Enter]

:tal-gold: Added "Reset Talismans" button, so players can reset their talisman progress on a per-level basis (very handy for level testing, and when re-playing an already-completed pack)

:tal-gold: Added "Level Search" capability

:tal-gold: Added "Edit Level" button - opens the currently-selected level in the Editor

:tal-gold: Increased width of, and text size in, Level Select treeview

Other Updates & Bugfixes

:tal-gold: Fixed cursor zoom bug

:tal-gold: (Bugfix) Always show total number of lemmings under cursor regardless of priority/type (i.e. zombie, neutral)

:tal-gold: Level title and save requirement info is now displayed in Window Caption (we also display "Mass Replay Check" when in MRC mode)

:tal-gold: Fade In Menu screens (in addition to Fade Out) to make between-screen transitions smoother

:tal-gold: Upgraded keyboard compatibility of all menus/dialogs; they'll respond to [Esc] by closing, etc.

:tal-gold: Lemmings shrug and "OK" sound is played when a level is cheated (this is just for fun!)

:tal-gold: Added placeholder Menu graphics & layout to differentiate NeoLemmix "CE" from regular NeoLemmix - Please note: the current updated graphics are placeholders so that CE 1.0 is immediately visually different from NL 12.14. A topic will be made for updating the main menu in due course, where we can discuss gfx, layout, etc in more depth, to be applied in a future update.

:tal-gold: Updated welcome screen with pictures, etc (further updates may be made to the Welcome Screen in the future)

Editor Updates

:tal-gold: The SLX Editor (a more advanced version of the NL Editor) is included with CE. It has an option to set the controls to "NeoLemmix Mode" so that it can be used seamlessly with NeoLemmix, and offers new features such as Piece Search, Custom Hotkeys, Grid Lines for Snap-to-Grid mode, and more.

It's definitely worth redoing your config menu options and creating a new settings file rather than migrating your existing one from NeoLemmix, if for no reason other than to familiarise yourself with the new Config menu.

With hotkeys, your existing 'hotkeys.ini' can be moved across with no issues. However, I'd recommend checking out the new hotkey editor anyway.

Remember that this is not a final version, it's a release candidate (RC). You can make levels and content for it, but be aware that some features may be improved/updated/removed in the final release version. It's definitely worth giving feedback on the features, even if it's just to say that you think they're neat - support is even more valuable than constructive criticism, especially when it comes to deciding what to keep.

See also this post regarding CE development speed.