[BUG][PLAYER] Swimmer-Drowner-Bomber physics bugs.

Started by namida, August 20, 2019, 07:44:04 PM

Previous topic - Next topic

0 Members and 3 Guests are viewing this topic.

Strato Incendus

I think the entire discussion basically revolves around this:

QuoteThe Oh-Noer I think should cancel out the other permanent skills.

That's precisely what came to my mind when I thought about what the suggestions made in this thread would imply. But that also means we need to think about whether this applies to all permanent skills we have so far.

Quote1.) An oh-noing disarmer should not be able to disarm traps anymore, although he can be eaten by them. (A oh-noing climber also stops climbing for example)

Indeed, Oh-Noers can be killed by traps - I've found out by accident on my Lemmicks level "The Eye of the Needle", where I wanted to stone right between a teleporter and one of those Space "shooting bird" traps. Even though I lost the Stoner from the skill panel due to assigning it, the lemming still got shot by the trap rather than turning to stone.

Since Oh-Noers can only get onto a trap trigger by falling, and falling into a trap kills Disarmers, it makes sense for oh-noing Disarmers to die to traps as well. However, this doesn't necessarily imply the Disarmer loses the skill due to oh-noing, because he would also die if he simply fell onto the trap trigger regularly.

Floaters and Gliders can't oh-no, and coincidentally, Oh-Noers can neither float nor glide, because they never reach splat height anyway before exploding, as I've repeatedly outlined in this thread. So we never actually see whether they "lose" the skill, unless you'd want to argue that floating or gliding lemmings already open up their parachutes very early during a drop, i.e. even before a regular lemming would reach splat height - and Oh-Noers don't.

With Climbers, there's an important difference to what you've outlined here:

The Climber stops climbing, yes, but it doesn't "lose" the Climber skill in the sense that it doesn't suddenly fall off the wall.

That's actually what Shimmiers used to do when they were assigned Bombers, and then we changed it so that Shimmiers also explode instantly. It was the only case where I had to slighlty adapt a level to changed Shimmier behaviour, but I was happy about that, because any lemming without ground under his feet should explode instantly. In the Climber's case, one could argue that his feet are pointing towards the wall, hence he oh-noes, but Shimmiers don't. Consequently, if we were to introduce the Magno-Booter from Lemmings 2, that lemming should oh-no when turned into a Bomber, even if he's currently dangling from the ceiling. (L2 circumvents this problem by not enabling the player to assign skills to upside-down Magno-Booters at all, but I think that makes the skill very limited in its application.)

Also, on a purely visual level: Athletes that are assigned a Bomber or Stoner don't suddenly return to having green hair and blue clothes when they oh-no... ;P

Instead, with the Climber remaining in its place when oh-noing and sort-of "standing in the air" while doing it, one could argue that Swimmers should do the same, i.e. "stand" on top of the water area an finish the oh-no-animation plus the explosion, rather than continuing to fall.
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

IchoTolot

QuoteThe Climber stops climbing, yes, but it doesn't "lose" the Climber skill in the sense that it doesn't suddenly fall off the wall.

That's because the climber is actually placed 1 pixel inside the wall. The Oh-Noer is standing inside the wall and is in no need of the climbing ability.

Quote
Instead, with the Climber remaining in its place when oh-noing and sort-of "standing in the air" while doing it, one could argue that Swimmers should do the same, i.e. "stand" on top of the water area an finish the oh-no-animation plus the explosion, rather than continuing to fall.

That would disarm the "Simmers should stand on water" argument, as the climber Oh-Noer stands on solid ground on the most outer wall column.

QuoteFloaters and Gliders can't oh-no, and coincidentally, Oh-Noers can neither float nor glide, because they never reach splat height anyway before exploding, as I've repeatedly outlined in this thread. So we never actually see whether they "lose" the skill, unless you'd want to argue that floating or gliding lemmings already open up their parachutes very early during a drop, i.e. even before a regular lemming would reach splat height - and Oh-Noers don't.

If a glider or floater digs and before turning into a faller the digger is given a bomber in mid-air, he turns into an Oh-Noer and falling like a normal lem ignoring the glider/floater ability to fall slower/glide forward hinting at that the lemming has lost the skill --> supporting my argument for the drowning swimmer in my last post:

QuoteIf the Lemming should not behave like a swimmer that therefore renders out swimming (after the basic assumption) and exploding (as that would imply that he switch to swimming), he should behave like every other Oh-Noing and simply drown, what would be consistant with 1.) on top of that: A oh-noing swimmer should not swim anymore, but again should be "eaten" by the water.

As that would then not only be consistent with disarmers and climbers, but also floaters and gliders.

ccexplore

The proposal that ohnoers should lose all permanent skills sound good to me and is already pretty close to how things work currently.  It goes along with my suggested concept that the ohno lemming is sick and therefore not capable of most actions at that time, just like you also can't assign skills to it.

ccexplore

Actually, I think we are kind of missing the point now that I review namida's original message more carefully.  If I understand correctly the problem considered most severe, is specifically that you can currently do ohno -> drown -> assigned swimmer now and it swims (and recycle the lemming from impending death, to borrow IchoTolot's words).  Proposal B by itself actually is meaningless for this case--you have to specifically remember that the drowning lemming was transitioned from an ohno lemming, so that either the attempted subsequent swimmer assignment is disallowed, or that it is allowed but does not let the lemming swim.

In other words, it seems like you'd need both B and C actually, if I understand the situation accurately.

IchoTolot

#19
Quote from: ccexplore on August 21, 2019, 06:52:38 PM
Actually, I think we are kind of missing the point now that I review namida's original message more carefully.  If I understand correctly the problem considered most severe, is specifically that you can currently do ohno -> drown -> assigned swimmer now and it swims (and recycle the lemming from impending death, to borrow IchoTolot's words).  Proposal B by itself actually is meaningless for this case--you have to specifically remember that the drowning lemming was transitioned from an ohno lemming, so that either the attempted subsequent swimmer assignment is disallowed, or that it is allowed but does not let the lemming swim.

In other words, it seems like you'd need both B and C actually, if I understand the situation accurately.

You are right there, this currently only cover the case the swimmer was assigned before. In the uncovered case assigning a swimmer to that specific lem should be prohibited. General rule could be for all Oh-Noer cases: No more skill assignments to a lemming that was already an Oh-Noer --> Oh-Noers are untouchable.

So in the end it would be: b + c (in the no-assignment case)

Simon

#20
Beautiful corner case, very nice find.

(c) is good, prevent assignment to whoever has been oh-noer. Reasoning: Oh-noers can already exit, therefore oh-noers should drown and trigger traps.

Oh-noers should not descend to the bottom of the well, bypassing all water, and bomb holes in the bottom.

Need (b) too, apparently, ignore swimming ability when oh-noer enters water.

-- Simon

Strato Incendus

@IchoTolot: Thanks for the explanation about the positioning of the Climber; I didn't know it was actually treated as placed inside the wall. ;)

How about my - initially somewhat jokingly uttered - idea of recolouring Oh-Noers to the regular colour scheme, then (i.e. green hair and blue clothes, or whatever the currently-used sprites standard look is)? ;)

That would make it visually clear for every player that all athletic skills have been lost to the Oh-Noer. More than that, all trap animations we currently have are only for regularly-coloured lemmings anway. So it would make sense to have the same behaviour for Oh-Noers. Only Drowners that have not been Oh-Noers before should keep their athlete look, because obviously, a regular Drowner (no matter if a regular Walker or, e.g., a Climber) can still be assigned a Swimmer, and would then also continue to have all its other athletic skills.
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

To be honest - I'm quite liking this "ohnoers lose their permanent skills" suggestion. Not saying it's a sure thing yet, but I'm heavily leaning towards that one.
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

There is only one flaw in this logic, I just realised:

Blockers still function as Blockers while oh-noing. I'm not sure how many people are aware of this - I remember trying to build a level for Lemmicks with the permanent Blockers gimmick, where the player was supposed to use the brief oh-no phase to sneak past the Blocker. But also, someone of those who LPed my packs (I honestly don't remember who) tried to sneak past an oh-noing Blocker. This doesn't work, however - lemmings still turn around on the "elbows" of the Oh-Noer, so to say.

Of course, one could refute this by saying that Blockers don't count as permanent skills - since they can be cancelled with Walkers or by removing the terrain under them - but it would still go against the idea of "an Oh-Noer can't do anything else".

In most cases where they are not freed by Walkers or by removing the terrain under them, Blockers are indeed pretty much permanent, they're just not athletic skills.

I'm also thinking about this with regard to the new NeoLemmix Introduction Pack that IchoTolot is working on - because I think it does precisely that, calling Blockers "permanent". ;)

So when this pack receives a level specifically about oh-noing (aside from the already existing nuke level), one would have to think carefully about the correct wording ("loses all permanent skills" vs. "loses all athletic skills" etc.).
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

IchoTolot

You are right that blockers would be the odd one out here.

They are not athletic, but I think even if I used the word permanent it doesn't mean the same permanent as the permanent skills (I know how this sounds :P). The blocker is permanent as long as he is standing on solid ground, or has been assigned a walker or bomber. These skills or the loss of the solid ground will make him loose that ability (the bomber still after the Oh-Noing). I couldn't think of another wording other than "permanent as long as X" to describe the blocker. Athletic skills so far are "more permanen"t and losing them usually means the lemming dies in the process.

I still think even with that one not fitting blocker case that the b + c approach ("ohnoers lose their permanent skills") fits best here.

QuoteHow about my - initially somewhat jokingly uttered - idea of recolouring Oh-Noers to the regular colour scheme

I would be fine with that, as long as style themed recolorings are preserved. :)

ccexplore

Blocker is not a true permanent skill.  A true permanent skill means the lemming never loses it (with the exception proposed for ohno).  You have no need to assign a lemming the same permanent skill more than once.  Blocker is decidedly not like that.  Conversely, you can do things like arrange for a miner to mine forever on a slope with strategically placed teleporter to make it loop.  The blocker is no more permanent than that miner is.  It's merely harder to transition out of blocker (compared to other skills) because the blocker doesn't move, does nothing to nearby terrain, and refuses most skill assignments.

If a blocker is a true permanent skill, I would expect that freeing it would cause it to block again (at no cost of skill assignment) at next opportunity, for example immediately after it finishes falling down.

Also, most (all?) permanent skills, by their permanence nature, means you can often assign them well ahead of time of when you actually need the skill take action.  Whereas your non-permanent skills take action immediately upon assignment.  If you assign a non-permanent skill too early, you likely end up wasting the skill because its action would be executed at the wrong location.

Anyhow, while I agree that maybe having ohnoers retain ability to block is probably not in spirit, in practice there'll be cases where it's not desirable for lemmings to be able to slip past the ohno-ing blocker, before it actually explodes and takes out whatever needs to be taken out.  I think there's a strong enough case of leaving this specific behavior alone given its history (ie. it's already like that all the way back to Lemmings 1) and practicality.

namida

I have implemented both ideas: Ohnoers lose their permanent skills (with the blocker special case preserved), and skills cannot be assigned to an ohnoer (even if he changes state again, such as to a drowner - which I believe was the only case in which it ever was possible to assign a skill to a former-ohnoer anyway, the old "non-fatal bombers" gimmick aside).
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)