Whenever you use “Z” + Shift, it won’t work for you.
The problem with using “Z” + Shift is that “Z” doesn’t tell anyone anything about the direction the character is going. While “W” always goes forward (it is the default)
You have two options.
1 - Modify “Z” to do that (like a forward W)
You can add “Z” as an alternative key to “W”.
So you will have W and Z. But you are changing the behavior of Z. In the long run, I don’t know how productive it can be.
2 - You should change “Z” + Shift, to simply “Shift”, maintaining the flip flop.
That is, your input event would only have to be a type of “shift, shift, ctrl…” control keys.
Then it would look like this:
Event Input (shift) → press flip flop A → Set 700
Event Input (shift) → press flip flop B → Set 240
Just the way you have it, only with a control word and “W” takes care of the rest.
So if you press “Shift” once, the sprint will be permanent with the flip flop, and if you press “Shift” again, you will no longer sprint.
Remember, when the user is not running, you have to configure it to stop running fast.
As you have with flip flop, you will have to adapt the logic you want to do when the player stops sprinting.
Reset a flip flop? - Development / Programming & Scripting - Epic Developer Community Forums (unrealengine.com)