So I have a simple Dash hability using Launch Character and whenever I dash off a ledge or in a ramp (not always but sometimes) it bugs out and launches me into the air at superspeed. Ive tried changing Launch Character and adding Velocity instead, disabling gravity in jump etc, but didn’t seem to fix it. Any ideas? It’s a FPS btw
Hello! Launch Character is the correct function to use. You probably put a high launch velocity value to overcome the ground friction, but if the dash is triggered when the character is not touching the ground (which is likely to be the case in your off-edge and ramp situation) the friction is 0 so the character is launched at the requested velocity.
Try to set GroundFriction to 0 on the character movement component before triggering the dash and you should have the same behavior in all cases.
Seems to work!! Thanks a lot!! So basically the difference between launch character and velocity in that velocity doesn’t have gravity? Or is that complete BS. Are there any advantages over one or the other? Thanks a lot again!!
“Velocity” is the variable where the character movement component will put the result of the calculation after all forces have been applied, so if you leave it untouched it will contain a value affected by forces like gravity and launch velocity.
But if you overwrite it, then it become your responsibility to apply the gravity or not.
If you overwrite this value all the time then there is no reason to use the character movement component in the first place. But if you have a case where it makes sens to temporarily take over the velocity why not. But usually I prefer to lerp the different settings of the character movement because this component does a lot of interesting things for you.