[BUG] "Deep Freeze": Special window ordering creates infinite loop

Started by Crane, August 26, 2016, 07:14:11 PM

Previous topic - Next topic

0 Members and 2 Guests are viewing this topic.

Crane

NOTE: Player bug is fixed. An editor bug uncovered in this topic still remains.

I decided to see how my level "Deep Freeze" performs in the experimental 1.47n version of NeoLemmix, and the program crashes when it tries to load the level file - blank screen and then it ghosts as Windows realises the program isn't responding.  The level loads fine in v1.43n-F, and it's just a Crystal-style level with no special features as far as I know.  Find attached said level.

Nepster

The problem is with the special hatch order that can be set via the Window Ordering menu in the editor: You have set a custom hatch ordering of "0-1-2-1" (as the respective index of the hatch). Somehow the experimental version cannot properly read this and only understands that you want a cycle of length 4 for the hatches. So it looks for a fourth hatch, instead of recognizing the hatch with index 1 as the fourth hatch, resulting in an infinite loop :-\.

So for now the way to deal with this problem is: If you want a hatch cycle of length n, then add hatches, so that there are n of it. To be sure, change as well the hatch odering in the Window Ordering menu to index "0-1-2-...-(n-1)". Then it should load in the experimental version as well.

Attached a version of "Deep Freeze" with the fixes I described above.

PS: I took the liberty to change the thread title to something more descriptive, now that the reason for the bug is known.

namida

QuoteSo for now the way to deal with this problem is: If you want a hatch cycle of length n, then add hatches, so that there are n of it. To be sure, change as well the hatch odering in the Window Ordering menu to index "0-1-2-...-(n-1)". Then it should load in the experimental version as well.

If you are doing this, the ordering in Window Ordering should simply be empty.

In regards to the bug itself, I'll look into this next time I'm working on NL's code (it's not likely I'll do much coding over the weekends these days, so most likely this will be on Monday).
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)

Nepster

Quote from: namida on August 26, 2016, 11:52:01 PM
If you are doing this, the ordering in Window Ordering should simply be empty.
I tried this, but couldn't manage to delete the last entry in the Window Ordering menu in the editor. So I considered my previous advice the safer option.

namida

QuoteI tried this, but couldn't manage to delete the last entry in the Window Ordering menu in the editor. So I considered my previous advice the safer option.

This part is an editor bug, then.

I assume you haven't done anything about this in NL's code yet? If so, I'll look into both this and the editor issues sometime this week. :)
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

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

Just uploaded editor experimental V1.47n:96C2ADE. This should fix the issues with window order editing.
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)