Footprint Script (Version 3)

Made a footprint script for someone on the Roblox Studio Community so I might as well post here!

Any comments or feedback is appreciated!
https://www.roblox.com/library/7215215700/Footprints-r6-and-r15

Edit: (VERSION 2) Added customizable settings! Footsteps now scale on foot size, change color on different floor materials and you can now toggle whether or not you want to see others footprints! Thanks to @ToldFable for suggesting these!
Edit: (VERSION 3) Added customizable particles and accelerated walking! Custom footstep sounds will be added soon! Please report any bugs you find to me, and tell me about any suggestions you have!
image

48 Likes

recommendations:

  • make it client sided
  • instead of using a footprint decal, use a flattened version of LeftFoot/RightFoot
  • change footprint color depending on floor
  • add different sounds depending on floor material
14 Likes

Ooo i could do all that but sounds! gonna work on it rn also just realized i forgot to commit my read me script and it turned into hello world!

do u mind providing a vid of it working?

2 Likes

Particles and accellerated walking coming up in next update :smiley:
https://gyazo.com/2c8825af782fa7f6609a3dd1f3c3aa6c

1 Like

That look so good! but is particles can be customize?

Yes! Theres a folder where you put your own particles and the name of the particle is the material! Ill update this when im back home :slight_smile:

3 Likes

is there a way to change the footprint I don’t want it to be blocky/

You can change the footprint part that is in the local script, you may also disable the size matching in the config.

1 Like

How would I go about making the footprint a darker color lowering it’s darkness value?

A Color3 Value is just composed of three different factors, red, blue, and green. As the value approaches (0, 0, 0) it becomes black and as it approaches (255, 255, 255) it becomes white. Luckily, Roblox has built-in a lerp function for Color3 values.

initialColor:Lerp(targetColor, alpha)

The following code, if used as needed, would interpolate the initial color to reach the target color based on the alpha. The alpha itself is from 0-1. Think about it this way, using an alpha of 0.5 would make the initial color 50% closer to the target color.

You can use this to your benefit to make the color darker, making the target color (0, 0, 0) and playing around with the alpha until it reaches your desired darkness.

This should be entirely client sided. On the client, you can detect a relatively precise value for their current movement speed by comparing the distances between each frame and dividing that distance by the delta time. From there, you can do the calculations needed to perform the footstep sounds.

This removes any unneeded replication, thus increasing your server performance.

1 Like

It’s all already cliented sided, as for footstep sounds currently I just do it every 0.4 seconds.

In a newer file, that I haven’t been bothered to publish, I just add an animation event and check when that fires instead.

Does this still work? I tried it but I don’t see any foot prints

will there be R6 support?
im making a R6 (custom r6 rig) RPG