No mesh/animation footsteps increase interval speed

Hi everyone!

I made a mesh-free footstep system based on this tutorial:

https://www.youtube.com/watch?v=I973d6ABTf4

With these systems in place, I added a very simple run function in the blueprints, input run pressed (or not pressed) and set the character speed accordingly.

I’m running into an issue in implementing the mesh free audio system for running. When I run, the sound still comes out at walking speed. I imagine it has to do with the footstep interval attached to the “Set Timer By Event”. I thought to make a branch so if left shift was pressed it would speed up the interval and if it wasn’t it wouldn’t, but it didn’t work.

Do you have any suggestions?

Hey JohnGreska,

You’ll want to try using the “GetKeyDown” node and pass in that key instead of your MakeInputEvent node. :slight_smile: That’s the way I’ve always done it and it’s worked like a charm. Everything else seems good!

Hi!

Thank you for your response. I cannot find a getkeydown node. There is “is input key down”, which I tried, but sadly it does not work

Sorry for the mistake! It is called “Is Input Key Down”. You’ll “Get Player Controller” and use that as the target, then use the Key variable, and you’ll use Shift/LShift/Left Shift I don’t remember the syntax.

Yeah, I tried this one out with get player controller and it doesn’t work for me.

Try using an Input Event, or just a key press event like so!

image

Then you can just call that bool as your branch operator! Super low-impact.

1 Like


I assume you mean like this, where if it’s pressed i’ll connect is sprinting to the top timer by event and if it’s not i’ll connect not sprinting to the bottom. How would I connect the boolean to the previous “do once”, so as to connect the whole cycle?

1 Like

Nono, sorry for the confusion.

Turn this
image

Into this
image

Maybe Link the new IsSprinting nodes into the clear and invalidate timer by handles so when it’s pressed/released it’ll reset the timer and the doOnce before starting the correct loop.

Also you do have different intervals on the walk/run floats, right? You don’t have to answer that but I’ve done way sillier. It’s always the little things we overlook.

haha yes I have made those mistakes too. Those are the worst.

So now I have it set up like this:

It still plays the same speed, with those changes.

However, something I tried was plugging the pressed and release sets right into the set timer by event, and it works once I hit shift. If I don’t hit shift it won’t start with a walking sound, but once I run and go back to walking it’ll play the walk sound.

1 Like

Did you try plugging the Set Is Sprinting? nodes into a Clear and Invalidate Timer By Handle node though? Both of them together? It shouldn’t matter which node as long as they both are plugged in.

That was it! Thank you so so much this was super helpful!

1 Like

Glad we could help! If you have any more issues, please don’t hesitate to reach out, that’s what we’re here for! You give us life!