[EDITOR] Updates to the Editor

Started by WillLem, February 26, 2023, 05:56:28 PM

Previous topic - Next topic

0 Members and 2 Guests are viewing this topic.

WillLem

Editor updates:

The SuperLemmix Editor is based on the NeoLemmix Editor, and uses the same codebase. It's mostly the same, but here's a list of everything that's changed so far:

:lemming: Custom Piece Move: Pressing Alt+Arrows now allows pieces to be moved a custom amount, which users can set to their liking in the F10 Settings menu

:lemming: Horizontal and Vertical Drag: Pressing Ctrl+Shift then dragging pieces allows them to be dragged Vertically (along the Y-axis only). Pressing Ctrl+Alt then dragging pieces allows them to be dragged Horizontally (along the X-axis only)

:lemming: Cleanse Levels feature added - this batch-saves all files in a specified folder in order to check compatibility and ensure all levels are up to date

:lemming: Status Bar added which shows if a level has missing pieces - no more infinite popups!

:lemming: Save As Image option added, which saves a .png of the currently-open level. It's also possible to save with or without backgrounds, terrain, objects, etc by toggling these on and off as usual

:lemming: Freezer, Grenader, Spearer and Timebomber added to skillsets

:lemming: Kill All Zombies talisman added

:lemming: Wider theme/styles dropdowns for easier reading

:lemming: Some of the fields, buttons and labels have been re-named slightly (their functionality remains the same)

:lemming: "Clear Backgrounds" button has been moved to the piece selection area

:lemming: "Tools" and "Options" menus have been condensed into one (labelled "Options"), so Snap-To-Grid now appears here

:lemming: Play Level and Validate Level have been moved to the File menu, and Validate Level now has its own hotkey (Ctrl+F12)

:lemming: Stoner support removed

:lemming: Auto Screen Start is now unchecked by default - the plan is eventually to set this back to checked by default, and automatically uncheck it if the user edits the screen start values

Wish list for the future:

:lemming: "NeoLemmix Mode" - this will check for the presence of NeoLemmix.exe in the root directory and, if found, hide all SuperLemmix-specific features

:lemming: Customisable hotkeys

Strato Incendus

Sorry, I haven't really had time to process everything you're up to with this huge endeavour of creating an entire new fork of NeoLemmix. But if the things you list as "done" here are indeed things you've already dealt with on the coding side, huge props to you! :thumbsup: You either must be learning really fast, or you've already spent a lot of time over the past years learning to code all these things, and are now finally ready to put them into practice.

One question that came to my mind reading your list here:
If you say Grenader support will be added, is the same also true for the Spearer?

I assume both explosive and creative projectiles rely on the same mechanics for the throwing itself. So having one skill but not the other would make all the effort of re-implementing the Grenader less efficient than if you implemented both the Grenader and the Spearer.

I don't remember how much you personally liked the Spearer, back when it was being tested for NeoLemmix. I liked both the Spearer and Grenader (as the memory line under my profile picture still says to this day :crylaugh: ). But of course, I'm not the one dealing with the effort of coding these skills back into NeoLemmix / into the new fork SuperLemmix. So if you can only add the Grenader, that will still be a win either way, of course.
My packs so far:
Lemmings World Tour (New & Old Formats), my music-themed flagship pack, 320 levels - Let's Played by Colorful Arty
Lemmings Open Air, my newest release and follow-up to World Tour, 120 levels
Paralems (Old Formats), a more flavour-driven one, 150 levels
Pit Lems (Old Formats), a more puzzly one, 100 levels - Let's Played by nin10doadict
Lemmicks, a pack for (very old) NeoLemmix 1.43 full of gimmicks, 170 levels

WillLem

Quote from: Strato Incendus on February 28, 2023, 01:05:17 PM
If you say Grenader support will be added, is the same also true for the Spearer?

Yeah, both are in and supported player and editor-side. It was a lot of work systematically getting all the code back in the right places, but it was worth it :lemcat:

I learned a lot about how skills work in NL, so there's potential for more to be added in the future, or for existing ones to be revised! ;P

Strato Incendus

Great job, Will! :thumbsup: I'll need to have a look at this soon.

Is there any way of converting levels or entire packs from NeoLemmix (irrespective which version number) to SuperLemmix? I'm not saying I would convert a pack like my in-development Lemmings: Hall of Fame, but the chance of having Spearer and Grenader at my disposal would at least make this an option worth considering.
My packs so far:
Lemmings World Tour (New & Old Formats), my music-themed flagship pack, 320 levels - Let's Played by Colorful Arty
Lemmings Open Air, my newest release and follow-up to World Tour, 120 levels
Paralems (Old Formats), a more flavour-driven one, 150 levels
Pit Lems (Old Formats), a more puzzly one, 100 levels - Let's Played by nin10doadict
Lemmicks, a pack for (very old) NeoLemmix 1.43 full of gimmicks, 170 levels

WillLem

Quote from: Strato Incendus on March 26, 2023, 06:18:17 PM
Is there any way of converting levels or entire packs from NeoLemmix (irrespective which version number) to SuperLemmix?

The SuperLemmix Editor loads and saves .nxlv files, so the format is currently identical. I have no plans to change this, either.

With that said, it's worth keeping in mind the differences between NeoLemmix and SuperLemmix to see if there's anything you'd like to change in your levels to make them more platform-specfic, or fix any backroutes that the new features may open up.

WillLem

Just thought I'd give this one a bump. The Editor will have quite a few new features in the next release, see the OP for details.

If you have any requests or things you'd like to see in the Editor, post here and I'll see what I can do.

WillLem

Several Editor updates to look forward to for 2.8:

"Save As Image" option added to the File dropdown (Ctrl + Alt + S shortcut for quick saving). This can save the image with or without background, terrain, objects, etc (just toggle these on and off as usual):



(Also, the Cleanse Levels feature batch-saves all levels in a specified folder in order to quick-check for compatibility and update the formatting)




Skill icons added to hatches, pre-placed lems and (now that we have Rivals) Exits:






And, fixed trigger areas when flipping/rotating/inverting objects (this has also been fixed in the Player, so the trigger areas will now always match up):






Custom hotkeys and (possibly) a NeoLemmix Mode are pencilled in for the future. The latter will check for the presence of "NeoLemmix.exe" in the root directory and, if found, hide all SuperLemmix-specific features. That way, NL users will also be able to benefit from the Editor's upgraded feature set.

WillLem

The Editor now has buttons for Random Skillset and Set All Skills To Zero. Great for level creation and testing purposes.

The 'From' and 'To' numerics can set a limit for the randomizer, anywhere between 1 and 100. Choose the same number in both to set a random skillset with all the same skill counts:


WillLem

The Talisman Creation dialog now only shows skill requirements after the relevant skills have been added to the skillset (this includes pickups). When the skillset is empty, it shows only non-skill-related talisman options.

Here's how it looks with an empty skillset:



Then, we add some skills:



And it now shows those skills as possible talisman requirements, plus the other skill-related talismans:





Implemented in Commit 48e8dc8.

WillLem

#9
The SuperLemmix Editor now checks for NeoLemmix.exe and SuperLemmix.exe in its base folder. If it finds neither, both, or SuperLemmix only, all features are visible and activated. If it finds NeoLemmix only, all SuperLemmix-specific features are deactivated and the Stoner skill is shown in place of the Freezer skill where relevant (skillset, pickups, talismans, etc).

Implemented in Commit 6f20bd0 - Stoner support added in Commit b39d3ef

EDIT: Added a "NeoLemmix Mode" setting which overrides the .exe detection and activates NeoLemmix controls.

"NeoLemmix Mode" override setting added in Commit dfe5a9d


WillLem

The Editor now has a search function!






Simon

#11
You have a dedicated search button. Therefore I assume the search will start only after we click that. (Opposed to, e.g.: It re-searches after we type a new letter for the tile name.)

In this light:

Consider to make the tile name (= the box after "-or- Search:") yet another filter in the list of filters. It's a filter for the tile name.

The benefit is that you can remove/reword the "Search all Pieces" checkbox. This box looks misleading anyway when we later filter for current style; we haven't searched all pieces then, after all. Its semantic is { not { filter for tiles whose name contains the following text }}, and it disables the name filter. This is odd; if you need such a box, invert this logic, call it "Filter by name:", and let it enable the name filter box.

I'd get rid of "Search All Pieces" entirely, and let an empty name filter behave like a disabled name filter (everything passes). This is natural.

Consider to start the search when we hit Enter after typing something into the name filter. This will be in addition to starting the search by clicking the Search button.

-- Simon

WillLem

@Simon - agreed, namida suggested a similar thing on Discord as well.

We now have this:



Much clearer, and more obvious that hitting "Perform Search" with no filters applied will find all pieces.