walljump normal calculation

I’m trying to set up a walljump mechanic for a first person game. However, I need the boost from the walljump to depend on both the wall’s normal and the player’s incoming velocity.

I can’t seem to find a setup that allows me to use both. If I set everything up using an Event Hit, the velocity is overwritten. If I use an Event Overlap or Sphere Trace, I can’t find a way to get the normal.

Is there a simple/common way of doing this that I’m missing?

I doubt this is adds anything, but the formula I’m trying to implement is roughly
new_velocity = (f(angle of incidence)*g(normal) + reflection(xy_velocity))*speed

The movement system is kind of non-standard, hence the need for all these weightings.

Hi player0,

Could you post some screenshots of your Event Graph?

You should be able to Break the Sphere Trace to get the normal.

Sure thing.

This blueprint is only testing the launch properties. When I press jump against a wall, nothing seems to happen.

Hi player0,

I think in your case Single Sphere Trace for Objects fail every time cause start point equals end.

You can try to get previous tick velocity (during hit event current velocity lay in contact surface).
In addition, I add example with Event Hit using.

Best regards,

We haven’t heard back from you in a few days, so we are marking this post as Resolved for tracking purposes. Feel free to post any additional questions here.