Download

How to stop moving platforms affecting jump momentum?

Hi all,

[I already tried searching this, with no luck]

When I jump off a moving platform, my jump moves slightly from the velocity of the platform. e.g. If I jump from a platform that is moving right, I will slightly drift right as I jump.
This might be realistic to life, but I’d like to jump only forward from the moment they press forward, regardless of the speed of the moving platform they jump from.

I’ve tried changing character jump/fall parameters to no avail, including impart base velocity.

Would love some help with this issue as it’s making jumping unintuitive from moving objects!

Thanks in advance :slight_smile:

Bump :slight_smile:

If anyone has any clues or directions to look in, it would be most appreciated. I’m sure it’s something to do with taking away the velocity of the moving platform i stand on, so when i jump forward it’s the normal momentum as if i was normally jumping. But I’m not adept at blueprints enough to understand how to do this.

Assuming your actor is using physics increase the linear damping. That way when there is no acceleration being applied (ie. you have jumped) you will stop moving and you can override the linear damping with controls. If there is no linear damping the basic laws of energy conservation remain true and a moving object will require an applied force to stop it’s kinetic energy and momentum.

I’m a fan of purposeful anti realistic changes, reality makes for poor videogame design standards. Games are much better with some intuition applied to game mechanics, Mario controls with much precision in the air and can change his momentum. Makes for some of the tightest controls in any platformer. It allows for precise jumping in tight areas when the in air mechanics aren’t floaty.

Thanks Mike. My moving platform doesn’t use physics so linear damping didn’t work. The platform simply moves left and right in a loop. When I jump from the platform I sway in the direction it’s going, which makes jumping unpredictable in this case.
Any other suggestions? :confused: I’m running out of ideas now.

Also surprised I can’t find an answer on the forum or google :open_mouth:

You could instead of jumping with the “Jump” function, you could use “Launch Character”, this has options to “override Z” velocity or “override XY” velocity, which should be exactly what you want

Does this mean I would lose all the other technicalities of the normal jump function? Could you perhaps give some more detail on how to achieve this? Not savvy enough with BP to instinctively make things happen like this yet :slight_smile:

Your character not the platforms, the platforms don’t matter and preferably won’t have physics. It’s the player pawn that I am assuming has physics.

As far as I’m aware my character isn’t using physics. My capsule doesn’t, and my character movement doesn’t have linear damping.

I would set simulate physics to on for your main pawn (it’s just one button on the mesh in your blueprint), then turn on the linear damping. By far the simplest solution. Second most simple would be to subtract velocity on jump but still, the physics of a single pawn is going to be negligible. Think of linear damping as permanent brakes that will slow you down the moment there is no force applied, similar to how Mario behaves in most Nintendo games where he’ll stop moving forward if you aren’t holding the forward button.

I’m having the same issues here. None of the provided solutions helped. My character mesh does not have the option to simulate physics: Character Movement handles all physics. I was able to uncheck Impart Base Z Velocity and remove the increasing of Z Velocity entirely, but this also means if I jump off a rising platform my jump is not greater (no vertical momentum from objects in world at all).