[DISC] NeoLemmix>SuperLemmix Levelpack Compatibility

Started by WillLem, May 01, 2023, 01:35:10 AM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

WillLem

When converting level packs from NeoLemmix to SuperLemmix (which should ideally only be done either by the original author, or with their permission), it's important to be aware that SLX features several significant gameplay and physics differences which may affect certain levels; these levels may need to be modified or even replaced altogether if a conversion is to be successful.

To name a few:

1) Direct drop is now possible (aka lemmings can fall directly into the Exit from a great height, as long as they hit the Exit trigger before they hit the ground). This also allows mid-air exiting.

2) Jumpers and Reachers can now jump into a mid-air Exit.

3) Sides are forcefields rather than deadly ,so lems encountering the side will behave the same as if they encountered a Blocker.

4) The top of the level is now open to allow Jumpers and Projectile skills to continue their arc of trajectory back into the level. Other lems will stop what they're doing if they reach 1px below the top, and either walk forwards (if possible) or turn around if there's a terrain/steel barrier.

5) Shimmiers can be assigned to Climbers at any time.

6) Shimmiers that are also Climbers will turn and Climb if they encounter climbable terrain at the end of shimmyable terrain (as they do in L2).

7) The Laserer's range is now 3200px instead of 112px (so, it's effectively infinite given the 2400 x 2400 limit on NeoLemmix levels)

8) Timebombers and Bombers now bypass the OhNo! phase if they are either Climbing or Sliding - this is to maintain consistency with other movement-based skills such as Swimming, Floating, Gliding and Falling, all of which bypass the OhNo! phase.

9) The water graphics from the following styles have been changed:

orig_fire water is now "lava," an unswimmable object which triggers the burner animation
orig_marble water is now "poison", a swimmable object which changes the lems into zombies
ohno_bubble water is now "blasticine", an unswimmable object which triggers the explosion animation (no surrounding terrain destruction occurs)
ohno_rock water is now is now "vinewater", an unswimmable object which triggers the vinetrap animation

It's very quick and easy to replace the graphics if needed, I've posted instructions for how to do so here.

10) Stoners are no longer available (but, there are several new skills including Freezer, Grenader, Spearer, Ballooner and Ladderer which may be of interest if replacing/modifying your levels!)

11) Builder terrain checks no longer include the "belly check": instead, they cancel only if there is terrain at their head or foot position.

If I think of anything else I'll post it here, but these are the main things which will affect level solutions between the engines.




If porting one of your NeoLemmix levels to SuperLemmix, I would advise the following:

1) If the level contains Stoners, swap these out for either Blockers, Freezers or Stackers depending on how they're used in the level. For most levels, this shouldn't affect the intended solution too much. If any levels rely on the pixel-precision that the Stoner's shape affords, then consider redesigning the level to allow a wider margin for error; this will make it play much more nicely with SLX's Classic Mode. What is sacrificed in precision will be made up for in playability, which is what SLX is aiming towards in general.

2) If the Exit can be accessed from directly overhead (albeit from a great height), consider blocking this route off if you don't want players to able to drop the lems directly into the Exit. Otherwise, leave it as an alternative solution for players to find :)

3) If the Exit is in midair, consider whether you want it to be accessible by any of the following: Jumpers, Reachers, Floaters, Gliders, Fallers. If so, leave it, if not then you might need to fix the level to prevent this.

4) If the level contains Laserers, then tbh there's not a great deal you can do if the solution relies on the original limited range. I would consider redesigning or replacing the level in this case.

5) Any levels containing the water graphic from orig_fire, orig_marble, ohno_rock and/or ohno_bubble will need to have the graphic replaced (I've posted some step-by-step instructions for how to do this here) - it's also worth keeping in mind that these water objects are deadly in SuperLemmix, even to Swimmers. If your level relies on being able to swim in one of these objects, consider replacing it with the blue water object (which is now included with all of these styles for ease of replacement).




With all of this said, of course it would be great to have some NeoLemmix packs ported over to SuperLemmix, and I'll do what I can to help anyone taking on this task. But, it may be even better to create new levels which make use of the new features and mechanics.

I'll be essentially re-writing my own packs for this platform (eventually!). Some levels will copy over nicely, others will need to be redesigned or replaced entirely.

Floyd Brannon

Thanks for the info!
I already edit the level files to swap different abilities, so these differences are fine.

I saw a post about reviving Super Lemmini. I think it would be better if SuperLemmix could be compatible with its level packs. Which isn't too important since I've found all my Lemmini packs for NeoLemmix so far anyway. But I never cared for the Java thing and the lack of full screen.

Great job with Super Lemmix!!! The little graphical changes are great too!

Flopsy

Another thing to mention is swimming in Lava/Acid was allowed in NeoLemmix and is not allowed in SuperLemmix, it affects one of my SEB Lems levels.

The Stoner thing isn't a huge fix, it only affects 45 of my levels across all 4 of my NeoLemmix packs (SEB Lems, MegSEGAbytes, Modular Lems and Gotta Go Fast). So that's 45 out of 399 levels, a little over 11% of my levels.

Didn't consider the Direct drop thing though so that may result in more fixes also.

I'll eventually get around to fixing things, I use Stoners in weird ways so I don't think a skill swap is going to suffice, if worse comes to worse though, I'll just not port the level over.

WillLem

#3
Quote from: Flopsy on May 02, 2023, 08:09:59 PM
Another thing to mention is swimming in Lava/Acid was allowed in NeoLemmix and is not allowed in SuperLemmix

Yes, good shout. This results from changing these from being "water" to being "fire," but any levels containing the objects will now have an actual water graphic displayed instead. I've added this one to the list, coz it will likely affect everyone who's ever made a level in orig_fire or orig_marble.

The fix is easy, as well. It can be done for multiple levels at once using FIF in a text Editor. Here are some step-by-step instructions.

WillLem

#4
OK, so you've opened an orig_fire and/or orig_marble and/or ohno_bubble and/or ohno_rock level in SuperLemmix to find that the original water graphics have been replaced with a default water graphic which appears slightly too high...

This is because orig_fire's water object is now a fire object re-tited "lava", and orig_marble's water object is also now a fire object re-titled "poison." The graphics themselves are identical, but lems will now burn rather than drown when coming into contact with them (which obviously means that Swimmers can no longer traverse them!). Similarly, ohno_bubble's water object is now called "blasticine" and ohno_rock's water object is now called "vinewater" - both are new trap objects which trigger different animations (exploder and vinetrapper, respectively).

To counter this, all of these styles now have a default water object included (which can be traversed by Swimmers), but this will appear slightly out of place in ported levels because of the difference in size between the water graphics.

Not to worry, it's a quick and easy fix which can be applied to all fire, marble, bubble and rock levels in one go:

(Note that this fix will not work for levels which require Swimmers to be able to cross the water - apologies for any inconvenience caused by this, but in these cases it's best just to edit the levels manually. The following will work if the water objects are meant to be non-traversable, or if the level doesn't contain Swimmers):

Method 1: Use the SLX QuickMod Tool to modify all water objects in an entire pack with a single click.

Or, Method 2:

1) If you haven't already, download Notepad++
2) Ensure that you have a backup of the levels that you want to change, in case anything goes wrong with the following procedure
3) Place the folder with the levels you want to change into the SuperLemmix/levels directory - DO NOT perform this procedure with levels in the NeoLemmix directory
4) Open Notepad++ and navigate to Search > Find in Files (Ctrl + Shift + F)
5) In "Find what", type or copypaste the following (note the 3 spaces between "\n" and "PIECE"):
        STYLE orig_fire\r\n   PIECE water
6) In "Replace With", type or copypaste the following:
        STYLE orig_fire\r\n   PIECE lava
7) In "Filters", type the following:
        .nxlv
8) In "Directory", click the button with the 3 dots [...] and browse to the folder containing the levels you want to change (it should be in your SuperLemmix/levels directory, as per step 2)
9) Under "Search Mode" (at the bottom of the form), check 'Regular Expression'
10) At the right of the form, make sure that 'In all subfolders' and 'In hidden folders' are checked

The form should now look like this:



11) Hit [Replace in Files] and wait for the process to complete (it should only take a few seconds)
12) Open one of the relevant fire levels, and you should see that the water object has been replaced by a lava object (which is identical to the original orig_fire water object)
13) Repeat the first 11 steps but type 'orig_marble' instead of 'orig_fire' in steps 4 & 5, and 'poison' instead of 'lava' in step 5.
13b) Repeat the first 11 steps but type 'ohno_bubble' instead of 'orig_fire' in steps 4 & 5, and 'blasticine' instead of 'lava' in step 5.
13c) Repeat the first 11 steps but type 'ohno_rock' instead of 'orig_fire' in steps 4 & 5, and 'vinewater' instead of 'lava' in step 5.
14) Open one of the relevant marble/bubble/rock levels, and you should see that the water object has been replaced by a poison object (which is identical to the original water object from the relevant style)

All done! :)

Floyd Brannon

This page needs updated to include the new vinewater and blastecine.

I love Super Lemmix 2.1 so far, but the new waters broke the pack I'm playing through currently "World Tour".

jkapp76

Here's my notes on updating all four waters:
However, I updated the pack you're playing (World Tour) using the above method and there are a handful of levels that did not update.
Most did however. I love rock and roll, we're not going to take it, and more needed manually fixed. No idea why.
Here's the basic info...

Search and replace text:

STYLE orig_fire\r\n   PIECE water
to
STYLE orig_fire\r\n   PIECE lava

STYLE orig_marble\r\n   PIECE water
to
STYLE orig_marble\r\n   PIECE poison


STYLE ohno_bubble\r\n   PIECE water
to
STYLE ohno_bubble\r\n   PIECE blasticine

STYLE ohno_rock\r\n   PIECE water
to
STYLE ohno_rock\r\n   PIECE vinewater
...Jeremy Kapp

jkapp76

#7
I had quite a minute getting World tour to work properly...

I've attached the full updated level pack as well as the missing styles here.

It's all go now!

P.S. A few styles asked to overwrite, I chose No.

P.S.S. If this is the wrong place to post this, please move it.
...Jeremy Kapp

IchoTolot

Quote from: jkapp76 on June 01, 2023, 06:12:51 PM
I had quite a minute getting World tour to work properly...

I've attached the full updated level pack as well as the missing styles here.

It's all go now!

P.S. A few styles asked to overwrite, I chose No.

P.S.S. If this is the wrong place to post this, please move it.

As I see packs are starting to get converted:

Please try to ask the original author first if they approve of a conversion before releasing stuff!

If they are indeed responding on the forum of course. Maybe they are even willing to consider an official conversion by themself?

WillLem

#9
Quote from: Floyd Brannon on June 01, 2023, 03:56:00 PM
This page needs updated to include the new vinewater and blastecine.

Done, thanks for the heads up.

Quote from: Floyd Brannon on June 01, 2023, 03:56:00 PM
I love Super Lemmix 2.1 so far, but the new waters broke the pack I'm playing through currently "World Tour".

Glad to know you're enjoying it!

I'd exercise caution when playing through any pack in SuperLemmix that hasn't been specifically made for it (which, so far, is basically any NeoLemmix pack) - you will almost certainly encounter issues sooner or later, especially given the physics differences.

I apologise for any inconvenience caused. Really, we need to do some official conversions of a few Forum-favourites (I'm thinking GeoffLems, NepsterLems, CasuaLemmings, ROTL, definitely at least one of Flopsy's, one of NieSch's (although I'm hoping he'll continue to make OG content for SuperLemmix!), Lemmings Plus I, II and III if namida wouldn't mind, and maybe even one of Icho's as long as we keep the Timebombers away from his levels!) ;)

Quote from: jkapp76 on June 01, 2023, 06:12:51 PM
I had quite a minute getting World tour to work properly...

I've attached the full updated level pack as well as the missing styles here.

Which styles needed updating? I thought that styles pack is the latest available... if not, please let me know what's missing and I'll get it updated ASAP.

Thanks for doing the conversion work btw :thumbsup:

As Icho said though, please ask the pack author's permission to convert their packs to SuperLemmix, wherever possible. From what I know of Strato, I'm sure he'll be fully up for his packs being available in SuperLemmix, but it's still better to make sure beforehand even if only because they might want to do the conversion themselves.

Exceptions to this would be packs like GeoffLems and NepsterLems where the pack authors are now inactive on the Forums and have been for a good few years. Given that these packs were made in the traditional style (Classic 8 skillsets, probably Timebomber-friendly) and for older engines, I'm sure these authors would agree that SuperLemmix is a good fit for them anyway.

kaywhyn

Exactly what Icho and WillLem have said in regards to getting permission from still active authors. In this way, there won't be any problems later, especially in the case of an author who isn't ok with it. Some are ok with it, some aren't. Even if you think the author won't have issues with a pack of theirs getting converted, it's still better to be safe than sorry and ask, as that's the polite thing to do and is respecting the author and his/her content.

Just to clear any doubt, if there's ever any future pack from me (this is neither confirmation nor the possibility of one ruled out), I'm perfectly fine with it being converted to another engine, but I still would like it if the user asks me for permission first! Even if I say "no," I will appreciate the fact that the user at least asked for my permission.
https://www.youtube.com/channel/UCPMqwuqZ206rBWJrUC6wkrA - My YouTube channel and you can also find my playlists of Lemmings level packs that I have LPed
kaywhyn's blog: https://www.lemmingsforums.net/index.php?topic=5363.0

Dullstar

I don't have many levels out there, but I should probably comment on this here:

I discourage (but won't outright ban) unofficial SL conversions of my content. Because of the extensive number of differences, I simply cannot guarantee compatibility.

If you choose to port regardless, here are my boundaries:

  • You must make it clear that it is an unofficial port, that is

    • I wasn't the one who did the conversion
    • Issues with the conversion should be reported to its maintainer and not to me (unless those issues are present in the originals)
    • The levels were intended for their original engine (presumably NeoLemmix)
  • If the level does not have a time limit, do not add one. If WillLem culls the infinite time option: Set the time limit to the maximum value allowed.
  • If the level is made for an engine that requires time limits (and thus has a time limit), the time limit should be removed.
    • I don't have any worthwhile vanilla Lemmix content that has tight time limits, so don't bother guessing if it should have one or not.
  • If the level was made for an engine that does not require time limits, then you can keep existing limits (there probably won't be any levels like this)
    • If in doubt as to whether the level is intended to have a time limit: just remove it
  • Always use untimed bombers, even if it's old Lemmix content that would have had timed ones when it was created.

WillLem

Quote from: Dullstar on June 03, 2023, 05:18:58 AM
If WillLem culls the infinite time option

FWIW, I have no intention whatsoever to do this. It's only ever likely to happen if a significant community forms around SuperLemmix use, and the people in it want this to happen. Even then, it wouldn't be a given.

Infinite time is actually a feature I strongly support: it allows replay value, multiple intended solution possibilities, as well as non-intended challenge solutions which might otherwise be impossible with a time limit, and it allows time limits to become all the more potent a game feature when they are activated.

My view is more that infinite time absolutely should exist, but not to the exclusion (or even discouragement) of time limits.

Turrican

I have downloaded the latest version of Superlemmix , and the styles collection, and I have tried my pack (Mikes Lemmings Superlemmix version).

Unfortunately, I have found , that several of the levels won't load , because of missing tiles/tilesets in the styles collection.

These levels are Wild 2, 6, 7 , Wicked 1, 5, 7, 8 , and Bonus 2.

I have checked the styles collection, and it seems that, several tilesets, are missing , like most of the Rayman , or LemRunner tilesets.

Unfortunately for several of the levels , it will be difficult to specify which tilesets are missing, because I use stuff from multiple different tilesets, in order to create them.
For example, for one of these, I had used stuff from 14 different tilesets, in order to create it, including , the "Turrican special" , tileset , that I had made it , especially for that level , and I had submitted it for the Neolemmix styles collection.

I have checked the number of styles in the Superlemmix styles folder and their number is 236.
In comparison, the number of styles , in the styles folder of my Neolemmix installation, is 261.


My Youtube channel ( Turrican Lemm )  :
https://www.youtube.com/channel/UCYGFBOHdYITHlsqa203Tu8Q

kaywhyn

Quote from: Turrican on June 05, 2023, 07:37:29 PM
I have downloaded the latest version of Superlemmix , and the styles collection, and I have tried my pack (Mikes Lemmings Superlemmix version).

Unfortunately, I have found , that several of the levels won't load , because of missing tiles/tilesets in the styles collection.

These levels are Wild 2, 6, 7 , Wicked 1, 5, 7, 8 , and Bonus 2.

I have checked the styles collection, and it seems that, several tilesets, are missing , like most of the Rayman , or LemRunner tilesets.

Unfortunately for several of the levels , it will be difficult to specify which tilesets are missing, because I use stuff from multiple different tilesets, in order to create them.
For example, for one of these, I had used stuff from 14 different tilesets, in order to create it, including , the "Turrican special" , tileset , that I had made it , especially for that level , and I had submitted it for the Neolemmix styles collection.

I have checked the number of styles in the Superlemmix styles folder and their number is 236.
In comparison, the number of styles , in the styles folder of my Neolemmix installation, is 261.

I had the same problem, but I solved the issue by simply copy/paste the style folder from my NL directory to my SLX one and select "don't replace."
https://www.youtube.com/channel/UCPMqwuqZ206rBWJrUC6wkrA - My YouTube channel and you can also find my playlists of Lemmings level packs that I have LPed
kaywhyn's blog: https://www.lemmingsforums.net/index.php?topic=5363.0