Help With Roll Ability and Speed Changes

My goal right now is to have my character roll at any time and have a bit of a speed change, as rolling is basically a faster dodge in my experience. Maybe I've just played too much Dark Souls.

Anyways I'd like my character to roll quickly and GAIN DISTANCE to get out of a tough spot. I've achieved this with a sprinting roll. I created a state of the SpeedChange ability that the Roll ability calls and when sprinting he rolls and gains distance just like I want. However The issue is that when normally walking he won't roll faster. I believe this is due to the fact that the "Speed" parameter is set to 0 unless you are sprinting and then it goes to 1. So the speed change doesn't get activated.

I was playing with root motion and allow rot/position input settings on the locomotion script but was never able to achieve exactly what I'm looking for.

How would I go about getting him to gain distance or a short burst during the roll? Or I guess, how would I go about getting the "Speed" parameter to change while just regularly walking around.
 
I assume you're using the roll ability from the Agility Pack - I don't have access to that right now but I'd imagine you could simply create a sub-class of the Roll ability, and in its AbilityStarted method, manually set the Speed animator parameter value. (And you'd also want to set it back to its default value when the ability ends.)

Alternatively, if you're able to have the roll ability activate a particular state whilst active, you could use a state preset on the character's UltimateCharacterLocomotion component which sets its Root Motion Speed Multiplier value to 2 or whatever.
 
Thank you for your reply. I was able to achieve this by unchecking both Positional and Rotational Input and having "Use Root Motion Position" set to true on the Roll ability. Then I made a preset for the UCC Loco component and set the Root Motion Speed Multiplier to what I want. I found 4 to be pretty good.

Thank You.
 
Top