Character sticks to ground during dash

My character will dash fine across platforms that have gaps in between. I switched off gravity on dash, and enabled it back again to prevent him from falling during dash.

The dash is implemented by simply increasing character movement.

However, if there is a connecting ramp, as illustrated in the video, the character will stick to the ramp, and he will not fly off the platform.

Is there a way to switch off this “sticking to ground” while dash? I can’t seem to find any property in Character Movement that would do this.

At the beginning of your dash, where you also set off gravity, probably On your KeyInput, you could also check for your pawns loction. Set a new variable float for your Z value, or new variable vector with (0,0,Z). During your dash (maybe in tick, if isdashing is true) you would check if your current pawn location Z is below your stored variable. If true set your pawns location to his current X and Y and your saved Z. This should solve your problem. However this whacky implementation will create odd behavour when dashing against ceilings.

Maybe you should also try a different mezhod than setting your character movespeed.
Instead of setting off gravity you could try and build your own function that makes your player fly.
Similar to how you move a camera (W,A,S,D,Panning,etc) in code, you could move your player and make him dash with that.

There is many different ways one would go about this.
O
Hope that helped.

Ps. Sorry for bad formatted text. Writing on phone.

Yup definitely…my other implementation was using Set World Location, which I felt was generally better implementation-wise. However, one thing I cannot overcome for this method is this; when the character hits a ramp of a certain angle, the dash will be slowed or stopped.

Did you find a solution for this?