Level Conversion: Default Pickup Skill Not Found

Started by Strato Incendus, March 06, 2020, 10:30:49 PM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

Strato Incendus

I've taken on converting Pit Lems while it's still possible (i.e. before NeoLemmix version 12.10). I'm not aware of any further updates to the level conversion tool since 12.6.5, though.

Hence, I'm trying to convert the pack into my 12.6.5 folder, planning to use the cleanse-level function from there on to get the levels up to date.

However, I'm getting a weird error message (attached), in which the converter is apparently not able to find the default pickup sprite (in this case referenced by the orig_crystal tileset). Even though the pickup sprite is obviously present in styles --> default --> objects of my NeoLemmix 12.6.5 folder.

Since this is not a custom pickup-skill sprite (for which support was removed from 12.7 onwards), but just the standard one, I didn't expect any problems with this?

In contrast, opening the respective level directly in the editor (either the one in my 12.6.5 or the newest version for 12.8.2) works fine. It really just seems to affect the NXPConverter.

Sadly, the fact that this single-level conversion works isn't of much use to me - because the pack conversion tool will stop the conversion of the entire pack as soon as it runs into any errors. So I can't just convert the rest and then do that single level by hand...

I don't know if this is a bug or if I'm just being stupid, hence I didn't title the thread as a bug until I know. ;)
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

namida

I'm no longer interested in supporting / fixing the NXP converter. If it breaks, it breaks for good; and you're on your own for any troubleshooting (of course, there's no rule saying "no one else is allowed to help you if they want", this is more just "there'll be no support from me for it").

However - NeoLemmix itself (and by extension, the Cleanse Levels feature) still supports LVL files up to and including V12.9.X (no guarantees beyond that - support will likely be removed in V12.10.0, or if not, fairly soon after). So if there's a bug preventing you from running your LVL files through Cleanse Levels directly, or corrupting the output from doing so, let me know what's happening there and I'll see what I can do.
My projects
2D Lemmings: NeoLemmix (engine) | Lemmings Plus Series (level packs) | Doomsday Lemmings (level pack)
3D Lemmings: Loap (engine) | L3DEdit (level / graphics editor) | L3DUtils (replay / etc utility) | Lemmings Plus 3D (level pack)
Non-Lemmings: Commander Keen: Galaxy Reimagined (a Commander Keen fangame)

Strato Incendus

Fair enough - maybe you could just try to explain this error message to me? As far as I understand it, it is in the New Formats styles folder where the default --> pickup object can't be found. Meaning, the error is not in the Old Formats level file, but in the attempt to relocate that piece in the current version of NeoLemmix, even though the index in the level refers to the correct piece, and that piece is also in the correct folder. ???
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

namida

Again - I have no interest in supporting the NXP convertor anymore. (Even if I did, I don't really recall its workings well enough to help troubleshoot this issue. Use Cleanse Levels instead, and if that isn't working on your levels, I can help with that - as long as you're doing it before V12.10.0's release.)

Sorry if this seems harsh, but keep in mind (a) I am offering to support an alternative way via which you can get your levels in the up-to-date format, and (b) you were advised many times to stop making new content for old versions / to get your existing content converted back in the earlier days of new-formats.

If you're wanting to use the NXP convertor because there are also styles that need converting - you could try the GSConvert tool (although similarly to NXPConvertor, I'm not really actively supporting this either anymore - this is more just me pointing out it exists). The V12.7 style fixer (look in the V12.7 release topic) should then be run on the output of such.
My projects
2D Lemmings: NeoLemmix (engine) | Lemmings Plus Series (level packs) | Doomsday Lemmings (level pack)
3D Lemmings: Loap (engine) | L3DEdit (level / graphics editor) | L3DUtils (replay / etc utility) | Lemmings Plus 3D (level pack)
Non-Lemmings: Commander Keen: Galaxy Reimagined (a Commander Keen fangame)

Strato Incendus

Just to clarify: Pit Lems was made entirely prior to New Formats. I just initially thought it was not worth converting, that the levels weren't good enough. My perception regarding this has changed after I noticed that most of the custom content for New Formats is quite challenging, so it would be helpful to have more intermediate-level content for NeoLemmix beginners. ;)

The other thing is that there are still many unconverted packs by other users, and occasionally, someone more active in the maintenance of packs, like IchoTolot, picks up converting one of these. I'm referring to things like SubLems, Lemmings Stampede etc. here, not my own packs. ;) So that's another purpose for which the NXP converter would be useful: Slowly transferring content by users who are no longer active, but who did contribute acclaimed packs back in the day (such as Lemmings Stampede), to New Formats - without the person picking up that task becoming overwhelmed by it.

That said, my state of knowledge was indeed that conversion of old content would be possible up to 12.10, meaning both via the level editor and the pack conversion tool. If it only refers to the level editor, then of course I still have the option to convert the levels by hand, one by one, by opening them in the editor. I will have to do that anyway with the levels I plan to add to the New-Formats version of Pit Lems - it simply would have saved a lot of time to have the original batch of 100 levels converted by the pack conversion tool.

I don't think there's a way to make the converter "skip" levels that produce errors, so that I could simply convert those selectively by hand later?

Of course, I could use the old pack toolkit to make a "transitional" Old-Formats version of Pit Lems without the level that causes problems, then simply convert that, and add in the missing level via the editor (which can open it without any issues, as explained in the starting post). ??? I'll just have to see whether this is an issue that affects every level containing default pickup skills. As said before, I knew that custom pickup skills would cause problems, but I didn't expect the default ones to act differently (because they didn't do so either when I converted Lemmings World Tour).

Speaking of LWT: All the graphic sets are already converted, so that's not the cause of the issue. ;)

So I'll probably just have to remove all levels with pickup skills from the NXP, just to be on the safe side - then convert the NXP, then add in the couple levels that do contain pickup skills manually via the editor. :thumbsup:
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

namida

#5
Why are you so determined to use the NXP convertor as part of this, rather than using Cleanse Levels? I've pointed out twice that you could quickly convert all your levels to a completely up-to-date format using it - and you're still considering workarounds to try and get it done via the NXP convertor instead, when all you have to do is drop all the LVL files into a subfolder of "levels", open the "pack"'s title screen in NL, and hit F8 - bam, Cleanse Levels runs, and outputs copies of every level in up-to-date NXLV format. Keep in mind - even if you did successfully convert them with the NXP convertor, you'd still after that need to Cleanse Levels on them anyway to make sure they're ready for V12.10.0. And as I've said - if a bug in Cleanse Levels is causing corrupted input, I am happy to look at resolving that.

The NXP convertor was supported around the time new-formats came out. I don't even think I have the source code for it at this stage anymore. I have claimed that NeoLemmix itself (including the Cleanse Levels feature, and the ability to convert levels for the editor's usage) will support the LVL format up to and including V12.9.X; with V12.10.0 being the first version that (likely) will not support it.

I'm just going to make this very clear: The NXP convertor is no longer supported, and will never be supported again. At this stage, Cleanse Levels, or opening one-by-one in the editor (which is essentially just a really slow, tedious way of doing exactly what Cleanse Levels would do), are the only remaining supported ways to convert old-formats levels - and those will not be supported for much longer either; the next major update (V12.9.X) is the last one that will retain support for them. (EDIT: To be clear, I mean as in "support for using them to convert old-formats LVL files". Cleanse Levels will remain as a feature, but only for tidying up level files, or updating them to address any changes to the NXLV format.)
My projects
2D Lemmings: NeoLemmix (engine) | Lemmings Plus Series (level packs) | Doomsday Lemmings (level pack)
3D Lemmings: Loap (engine) | L3DEdit (level / graphics editor) | L3DUtils (replay / etc utility) | Lemmings Plus 3D (level pack)
Non-Lemmings: Commander Keen: Galaxy Reimagined (a Commander Keen fangame)

Strato Incendus

#6
Ah, sorry, I thought this only works with level files that already are New Formats? ;) You mean I can simply drop all the Old Formats level files into a folder for New Formats, open the New-Formats player and cleanse them directly from Old Formats to very-up-to-date? ;)

I thought only the editor could open both Old- and New-Formats levels, and that the player could then only open these levels, because once you hit "test level" in the editor, it's already a New-Formats file.

Cleanse Levels was a feature that, according to my knowledge, only served to cleanse New-Formats levels from deprecated pieces.

Good thing I read this while I was already starting to create a modified SYSTEM.DAT file for Pit Lems to put into the NXP converter. :thumbsup:

Thanks namida, I'll give it a try! Sorry for the misunderstanding! ;)
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

namida

Cleanse Levels works on any format that NeoLemmix supports - that is, NXLV of course, as well as old-formats LVL, DOS / Amiga / WinLemm LVL, (Super)Lemmini levels, and Lemmins levels. (All of these, except NXLV of course, will be dropped in V12.10.0.) Note that SuperLemmini support does not extend to the features added in the recent SuperLemmini update (0.104), even in cases where NL also has the relevant feature. Translation tables are of course required.

The one catch is that the auto-detecting level files (when no levels.nxmi is present) only detects NXLV and LVL files. For the other formats, you need to make a levels.nxmi listing them.

The editor doesn't actually support any format other than NXLV. When you try to open another format, the editor gets NeoLemmix to convert it (via essentially the same process as Cleanse Levels uses).
My projects
2D Lemmings: NeoLemmix (engine) | Lemmings Plus Series (level packs) | Doomsday Lemmings (level pack)
3D Lemmings: Loap (engine) | L3DEdit (level / graphics editor) | L3DUtils (replay / etc utility) | Lemmings Plus 3D (level pack)
Non-Lemmings: Commander Keen: Galaxy Reimagined (a Commander Keen fangame)

Strato Incendus

Thanks, this worked perfectly fine! :thumbsup: There was one level that, for what reason ever, caused trouble with the 12.7 editor, but I could open it in the 12.6.5 editor and then save it to the newest format.

For the couple of Lemmicks levels I want to add to the remastered version of Pit Lems, the replay files are the very old format (.lrb). I guess I could run those through the Replay Refresher tool, but in most cases, simply re-doing the solution by hand was more straightforward. Some of the solutions will have to be slightly adapted anyway.

Thank you once again namida! Seems like I had misconceptions about the Cleanse-Levels feature all along, and seriously underestimated its vast applicability! ;)
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