Trouble Creating Dash/Roll

I’ve been trying to create a system in which, after pressing Q, the player dashes forwards. The specific properties I’m aiming for this ‘dash’ to have is that it moves the same distance on land as it does in the air, and that the player can jump during the dash.
Other factors like wanting to make it based on the camera’s direction and WASD are important to me too, but I’d rather get a dash that works before thinking about any of the “extra layers” as I consider them.

I’ve tried using constraints such as “LinearVelocity” and “VectorForce” since many posts on the forums recommend those, but when I use LinearVelocity my character cannot jump, and if they are in the air they will not fall down. If I use VectorForce on the other hand, my character can jump/fall, but the speed at which they will move is significantly faster in the air as opposed to on the ground, due to the lack of friction.

Other posts on the forums recommended use of BodyPosition, but as that is depricated I would rather not use it unless this is impossible without it.

Does anyone know anything that can be used to create a dash like this? I’m not asking for an entire script, as that obviously is against the rules, but rather if I just knew what to look into that would be enough!

I think you can in fact use LinearVelocity but you need to set its max force to zero when the dash is not currently going off. That might fix the floating problem you described.

1 Like

You can solve this by restricting the axis using plane constraint.

If you are going with vector forces you will need to design a custom character controller like my one which allows easier control over the friction forces a humanoid will overcome and such. There is also the new roblox character controller though IDK for that.

1 Like

This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.