[DISC.][PLAYER] Jumper physics

Started by namida, February 26, 2020, 12:59:56 AM

Previous topic - Next topic

0 Members and 2 Guests are viewing this topic.

Proxima

I'm ambivalent as to whether a jumper hitting a splat pad on his downward arc should splat, but I'm absolutely against him splatting during his upward arc. And if it would be too complicated to distinguish the two and they must behave alike, then that settles it -- he shouldn't splat at all.

WillLem

Quote from: Strato Incendus on March 23, 2020, 09:18:03 AM
One could say "You can't have the upsides of being a Faller (=Glider transition possible) without having the downsides... ;) ".

But then, some people might expect that fall height would be calculated from the top of a Jumper's arc as well, rather than from the point where he actually transitions back into a Faller...

That's what's confusing me: I thought it was decided that a Jumper isn't a Faller until the end of the arc...

Proxima's level Class of '91 includes a drop onto a platform that's survivable even with the height added to the drop by the Jumper's curve.

Seems to me that Splat Pads should also ignore the Jumper's movement until they become a Faller. Indeed, Namida begins the post by saying...

Quote from: namida on March 23, 2020, 01:42:15 AM
Splat pads do currently hinge specifically on the "faller" state

...hence the confusion. ???

Dullstar

I'd say jumpers share some similarities to fallers, so it makes sense for them to splat when they land on a splat pad.

I don't know exactly how it's handled in the source code, but experimentally speaking, in the current stable version, splat pads only affect a lemming if it is a faller that lands while in the splat pad's trigger area. Merely passing through has no effect. I'm not sure exactly how you'd get a jumper to land on the splat pad during the upwards trajectory, but it should probably only affect them on the downwards arc.

namida

It would be easy enough to only affect them on the downwards part of the jump.
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)

WillLem

Quote from: Dullstar on March 23, 2020, 05:37:31 PM
I'd say jumpers share some similarities to fallers, so it makes sense for them to splat when they land on a splat pad.

Quote from: namida on March 23, 2020, 06:06:58 PM
It would be easy enough to only affect them on the downwards part of the jump.

I'm still not sure I understand. Even if Jumpers only splat on their downwards arc, why should the Splat Pad affect a non-faller-state Jumper, but not a non-faller-state Walker?

i.e. If a regular Walker "drops" onto a Splat Pad without entering the faller state, this (to my mind) is very similar to a Jumper jumping into the Splat Pad's trigger area without entering the faller state.

Of course, it's very possible I could be mistaken. I'm not sure what the relative pixel-distances are for these various things.

namida

QuoteI'm still not sure I understand. Even if Jumpers only splat on their downwards arc, why should the Splat Pad affect a non-faller-state Jumper, but not a non-faller-state Walker?

i.e. If a regular Walker "drops" onto a Splat Pad without entering the faller state, this (to my mind) is very similar to a Jumper jumping into the Splat Pad's trigger area without entering the faller state.

Yes, and that's the question - should this be expanded to "a faller or a jumper"?
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)

WillLem

Ah, right. In that case, I'd vote no: I think Splat Pads should only affect fallers.

That said...

I suppose giving the Jumper this one vulnerability does take the edge off it's overall powerfulness...

But still, I'd vote no. I like the fact that the Jumper is a skill to be reckoned with.

Strato Incendus

I know I was the one who brought this up, but this doesn't mean I really have a preference. ??? I'm just wondering about what would be the most logical step.

I think the actual inconsistency was introduced when we agreed that Gliders should open their parachute at the top of the Jumper's arc. This is another behaviour that used to be restricted exclusively to Fallers. But of course, it is very useful for Gliders, so I'm happy we agreed on this, and I wouldn't use the splat-pad argument to call for changing Jumper-Glider behaviour again.

However, if we wanted to be completely consistent, this would now mean that fall height would have to be calculated from the top of the Jumper's arc as well. Indeed, in my test levels, I was often surprised to see that a Jumper survived a certain drop, simply because it looked much higher than the height he was actually covering in the "Faller" state, which is the only one relevant to the question whether he splats or not.

Then again, having Jumpers survive these slightly higher drops (meaning up to regular splat height + their own additional altitude gained by the jump) is definitely nice for creating Lemmings 2: The Tribes style levels (since L2 allows for both ridiculous fall heights to begin with plus the "stunned" behaviour on top of that). And keep in mind the Jumper enables this without actually requiring a genuine physics change (like Cheapo Mode back in the day, or so I've been told). Thus, I think fall height should continue to be calculated as it is now, not factoring in the height of the lemming during the jump, and only "starting the countdown" after the transition back to the Faller state.

The question is also how many backroutes the Jumper might actually lead to.

Splat pads that can kill regular Jumpers landing on top of them can do a great deal to make a certain path Jumper-proof. Then again, if we're talking about the standard application of several small blocks here (each of which would have to be covered entirely by its respective splat pad in order for this method to be effective), then those blocks would also become Builder-proof - because each lemming would land on top of that block falling from a Builder, and therefore splat. Which kind of ruins the purpose.

Basically, a path of blocks covered in splat pads would scream "use Platformers here". This is already the case right now, because it disincentivises the use of Builders. If the Jumper's behaviour were changed in this way, it would merely extend this to Jumpers. But it would not result in a situation telling the player "use Builders instead of Jumpers here", because neither would work.



Thus, after having thought this through in the way explained above... I might actually say no as well. Jumpers should only be affected by splat pads when transitioning back into a Faller. This situation is still easy enough to create, after all, by simply placing the blocks one pixel lower than the piece of terrain the Jumper starts from, so at the end of his arc, he still has one more pixel to go as a Faller.

But I may have overlooked other applications where Jumpers splatting on splat pads right after their jump might be both useful and make more sense logically?
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

WillLem

Just did a quick test and it turns out that a fall of 4px is enough for a Splat pad to trigger.

(Still in favour of No Splat For Jumpers until they transition to faller state).

IchoTolot

I agree with WillLem here: In favour of No Splat For Jumpers until they transition to faller state.

It just feels cleaner and simpler to me.

namida

To those of you who've tried out the Jumper experimental build, how do you feel about the physics? Any still-remaining bugs you've noticed?
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)

WillLem

Quote from: namida on April 08, 2020, 09:20:03 AM
To those of you who've tried out the Jumper experimental build, how do you feel about the physics? Any still-remaining bugs you've noticed?

Not noticed any bugs myself other than those that have already been fixed.

I'd say I'm generally still in favour of some sort of post-Jumper diagonal fall state which continues its trajectory, and it might be worth a quick discussion about this to see what others think.

Otherwise, it's looking good to go!

P.S. Once everything's decided/finalised physics-wise, let me know a deadline and I'll get on a 3-1-3 animation for the Jumper.

Strato Incendus

Quote
I'd say I'm generally still in favour of some sort of post-Jumper diagonal fall state which continues its trajectory, and it might be worth a quick discussion about this to see what others think.

I agree that in direct comparison to the way the Jumper behaves in Lemmings 2: The Tribes, this can be quite irritating indeed - to suddenly see the Jumper transition back to straight vertical falling.

However, I think anything else would require tumbler physics? And that would be a whole new load of work to implement in NeoLemmix...
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

QuoteI'd say I'm generally still in favour of some sort of post-Jumper diagonal fall state which continues its trajectory, and it might be worth a quick discussion about this to see what others think.

This has been ruled out on the grounds of implementation complexity, way back when the Jumper was first proposed for NL.
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)

Proxima

#134
Quote from: namida on April 08, 2020, 09:20:03 AMTo those of you who've tried out the Jumper experimental build, how do you feel about the physics? Any still-remaining bugs you've noticed?

This was mentioned on discord a while back, but I checked on the newest experimental and it's still true: if a builder is assigned jumper, he will jump during some frames, but during others he will hit his own brick, so the the skill effectively becomes a walker.

I would expect the builder always to jump, even if some special-casing is needed to achieve this.

Somewhat related: On bumpy terrain, a jumper will immediately stop if assigned before a rise of 2 pixels. I can see why this happens, but it feels a bit fiddly, and I wonder if maybe the solution is to relax terrain checks at the start of the jumper's arc -- this might deal with the builder issue as well.