Simple Replicating Material Footsteps

I noticed many of the material footsteps that were already open-sourced are more complicated than I needed so I made a simplified one that is easily adaptable.

    1. Place the “MaterialFootsteps” script into StarterCharacterScripts. This is what actually handles the footsteps.
    1. Place the “RbxCharacterSounds” script into StarterPlayerScripts. This will override and disable the default Roblox footsteps.
    1. If you want, you can change the volume of the footsteps from inside the “MaterialFootsteps” script, it is at the top

Thanks to uglyburger0 for open-sourcing the module containing all of the footstep sound IDs along with a function to get a random sound.

NOTE: These do not account for walk speed, although I’d assume it would not be too hard to modify by changing the WaitTime variable in accordance with the character’s velocity magnitude

Get it here: https://create.roblox.com/store/asset/14729176167/Replicating-Material-Footsteps

10 Likes

Hello, thanks for sharing this!

  1. Did you ever modify this for ’ NOTE: These do not account for walk speed, although I’d assume it would not be too hard to modify by changing the WaitTime variable in accordance with the character’s velocity magnitude

?

This would be nice to have, because some of the sounds do not play, if the player is moving slowly, like tapping the W key… and also the sounds continue to play even when the player stops moving… (if only for a second , but it would be nice if the sounds stopped when the play stopped.)

  1. also should all the RollOfMaxDistance be set much lower on the sounds ? So that the sounds are not heard by everyone , when they are not need the sound source?

The ones I looked at are set to 10000, which I think means it would be heard from players on the server very far away…

  1. should the sounds be parented to the player , like torso or uppertorso, so that is where the source of the sound is playing at? (or a part that is welded to the starterplayer )

Thanks

Oh, sorry for the late response

I made this really simple so that I could adapt it for each of my games. I didn’t really add much to it and just uploaded it here in case somebody wanted to edit it.

  1. I have not added walk speed adjustments just because I honestly don’t know the math to make it perfectly accurate to every speed (it’s probably pretty simple but most of my games have a fixed speed).

  2. It works by creating a new sound instance and then sets the SoundId property each footstep. You can change the RollOffMaxDistance property in the PlaySound function. I’m surprised I forgot this in the script.

  3. You could parent them to those. Currently in the script , they get parented to the HumanoidRootPart, allowing it to work for R6 and R15. I may be misunderstanding this question so feel free to let me know.