[BUG] [PLAYER] [FIXED] Exceptional behavior of climbers

Started by Nepster, February 06, 2016, 03:44:23 PM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

Nepster

Status: Changed so that climbers always ignore the first 6 pixels.

Nepster

Let me remind you of this discussion, where the climber behavior at 7-pixel walls with an overhang at height 6 pixels was discussed.

If you need further arguments to convince you, look at the attached level (try it first if you want to) and my solution. Then try to answer: Why should it save two lemmings, and not zero or three?

So please remove this exception of the exception of the rule ;).

namida

I'm alright with fixing this, but what should the fix be?

Quote from: namida on October 14, 2015, 07:04:56 PM
While I'm struggling to remember why this is the rule, or how I could've justified it at the time; there is at least a consistent logic here. The consistent rule is - the lemming cannot climb it if there is an overhang on either of the last two pixels that he climbs.

I might run some tests to see why I made the rule this way, to see if any obvious issues pop 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)

Nepster

The problem seems to be this terrain check for hoisters. How often does this check make a difference? As hoisters require to be a climber in the first place, doesn't the terrain checks for climbers suffice, except in this one specific setup?
So I would simply remove the terrain check for hoisters and see what happens.

IchoTolot

This behavior is quite odd :-\

Maybe put down the threshold of when the climber can start to climb with such an overhang to maybe ~ 3 pixels above the ground ???   Or put an additional climber start check in there?
I am still a VERY unsure of how to change this (and + of course not breaking any other behaviors with it).

Nepster

QuoteMaybe put down the threshold of when the climber can start to climb with such an overhang to maybe ~ 3 pixels above the ground
This was already discussed here with a majority in favor of keeping the general behavior, i.e. to ignore overhangs among lowest 6 pixels.

namida

From the sounds of things, the best idea might simply be to not check the pixel at y=(top)+1 if the lemming has just begun climbing. I'll look into implementing this tomorrow and see if it creates any obvious problems, and if not, I'll make that the new behaviour.
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)