NeoLemmix error "List index out of bounds"

Started by Pieuw, February 13, 2016, 11:08:53 AM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

Pieuw

Hello folks, it's been a while :-[

I was rummaging through some levels I made one or two years ago with NeoLemmix (V1.14n-A if I'm not mistaken). These are levels made for Lemmini, and two of them can't be opened and make the game crash. When I open them with the editor I got this "List index out of bounds" error if I click on the layout. Some pieces of terrain and objects are still clickable though. I tried to open them with the latest NeoLemmix Editor version, it does exactly the same.

It seems odd because I was able to play these levels back then, I'm not sure what caused this problem. Is there any hope to salvage them? In the worst case I guess I'll have to remake them from scratch.

Thanks for reading this. I see the community is still very active which is awesome :thumbsup:

[I attached the broken levels below]

namida

There's a few things that can cause that, but overwhelmingly the most frequent is that the levels refer to a terrain piece or object beyond the last one in the graphic set. I'll take a look at those levels and see if I can find the problem and/or fix them up.
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)

namida

In the case of Haute Voltige, it's because of the steel pieces. These don't exist in the official version of the Bubble tileset (including that which Lemmini extracts). I believe some addon graphics exist for the Lemmini version of this style which add the steel pieces, but it would appear they aren't 100% compatible with those found in the SuperLemmini / NeoLemmix versions of this style (which are compatible with each other), as they seem to be slightly oddly placed. Regardless, if you open it as a SuperLemmini level (or even as a Lemmini level, then switch format to SuperLemmini or NeoLemmix via the Level Properties window), the level seems fine apart from this slightly-off placement of the steel.

As for Mountains, I get the same issue as you but I can't notice any such obvious cause - the Validate Level function does report though that pieces 178, 179 and 180 refer to terrain pieces that don't exist in the graphic set; even in SuperLemmini or NeoLemmix formats. Did you have additional pieces in your copy of the Crystal tileset back then, by any chance?

If the level *looks* fine (ie: nothing's missing), you can try using the "Validate level" function (under the Tools menu) then clicking "Fix All". This will remove the culprit pieces. However, I'd think there probably is something missing, since both entrances drop directly into water as-is.
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)

Pieuw

Thanks for the quick reply namida :D

I was able to salvage "Mountains" with the fix tool, I had no idea about this feature so thanks for telling me about it. There are no terrain missing, the water is only knee-deep and no drowning will occur. :)
And yes, I used the basic Crystal tileset to make this level.

I totally forgot I used steel on Haute Voltige. Thing is, the setup I have now are exactly the same I had when I made the level, so why an error now? I didn't change anything at all. But now I know how to fix this, thanks a lot you rock! :thumbsup:

namida

I think the disparity in the position is because (though I'm just guessing here) Lemmini's versions of the pieces, the images are exactly the size of the steel plate. Whereas (and this part I know for sure) SuperLemmini's and NeoLemmix's versions have some empty space around them, in the same way most official styles' steel pieces do. This wouldn't have any impact on regularly-drawn pieces, but because the ones in that level are upside down, it means they need to be placed a bit higher (to account for the empty space) in all other engines, compared to Lemmini.
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)