0
By Design

if player character Run Speed >=5 evade animation is not playing

Vadym Varnavskyi 4 months ago in Melee updated by Marti (Lead Developer) 3 months ago 2

To reproduce:

open MeleeExamples Example scene

Run the game and change Player Run Speed value to 5 or  bigger value.

Try to evade.


Unity version:
2019.3.6f1
Game Creator version:
1.1.8
GOOD, I'M SATISFIED

thanks for explanation.

Satisfaction mark by Vadym Varnavskyi 3 months ago
Under review

I'll look into it. Thanks for reporting.

By Design

I've taken a look at this issue. A priori I also thought it was a bug, but it's just how the Dash works. Let me explain: The dash is basically a "force" applied to the character controller, that gradually decreases until it reaches a value of zero.

To avoid the character from slowing down until it has almost stopped, what we do is that, if the dashing speed reaches a point where it's slower than the run speed, we early-exit the dash. This makes the movement much smoother and allows characters to feel responsive.

However, if the initial dash speed is lower or equal than the run speed, it will exit the dash after one single frame. So to solve this, in the Dash action, increase the "Impulse" value above the run speed. For example, if your Player runs at a speed of 5, increase the Dash Impulse to 6 or more.

Hope this helps!