Character Sounds v2 - BOOSTED GAME PERFORMANCE [VERSION 1.2]

Hey everyone!


This script aims to clean up and optimize the current Roblox character sounds script by removing unnessecary functions and events, updating to un-deprecated featured and more! The main optimization is the new updater system, which handles 1 stepped event for the whole game instead of 1 for each player.

In a game with 50 players, the default script would have 50 events running, this script would only have 1!

Perks

  • Less connections.
  • More customizable.
  • Less loops.
  • Reduced memory, and increased performance.
  • Runs on 1 Stepped event TOTAL instead of 1 per player.

How To Use

  • Get the script here!
  • Insert it into StarterPlayerScripts!
    image
  • All done!

Extra

The performance benifits of this script are not massive, do not expect a major change in your games performance. This performance benifits of this script will only start to kick in on lower-end devices or large player games.

If you have any feedback, questions, concerns or advice on how to speed up performance even more. Please don’t hesitate to reply below, or message me here on the developer forums. Happy developing! :slight_smile:

Update Log

Its recommended you check back here often to make sure your module is up to date!

  • Update 1.01 (May 30th, 2021)

    • Fixed issue with walking sounds not stopping or playing properly.
  • Update 1.1 (June 4th, 2021)

    • Improved performance through localizing global variables and table.create. (Small increase.)
    • Now supports luau type checking.
    • Changed old deprecated velocity property to the new AssemblyLinearVelocity.
    • Fixed issue of sounds not properly playing at start of game.
  • Update 1.2 (October 15th, 2022)

    • Added automatic player sounds, no more need for CharacterLoaded event!
    • Optimized and cleaned up internals.

Support

  • If you want to support me and this script, leave a like on this post and follow me on twitter! That’d be greatly appreciated!
  • You can also check out my other open source script here!
46 Likes

I have a little question. This character sounds script is for sounds like Stepping on Metal/Grass or for sounds like the walking sound/oof sound


I like it.

No, this script simply improves the default script (which controls death, walking, climbing, swimming sounds etc) in terms of performance and memory. It does not change the actual sound effects in any way.

I asked because I didn’t get to read or take the old one, so that’s why I’m asking. Although that doesn’t answers my question:

The default one (old one) is automatically inserted into your game no matter what. It controls death, walking, climbing, swimming sounds etc. My version simply improves the performance.

Why the sound still not playing???

Do you have the latest version? Make sure your roblox sounds are up.

I still using the lastest version

I’d need more information on this bug before I can fix it.

New Update!

  • Improved performance through localizing global variables and table.create. (Small increase.)
  • Now supports luau type checking.
  • Changed old deprecated velocity property to the new AssemblyLinearVelocity.
  • Fixed issue of sounds not properly playing at start of game.

Make sure to update your module!

Since you seem to emphasize performance a lot, how negligible are the performance gains?

Like I said in the OP;

The performance is not ground breaking and won’t make your game’s fps explode. It will help you maybe get a few more frames on lower end devices OR servers with many players.

It also provides better customization as well as uses updated features, rather then deprecated ones!

2 Likes

Amazing stuff. This is something I love to see when it comes to performance and boosting it any many games! Thank you so much for this open resource.

1 Like

New Update!

  • Added automatic player sounds, no more need for CharacterLoaded event!
  • Optimized and cleaned up internals.

Make sure to update your module!

1 Like

This assumes that the player’s character is loaded automatically upon joining… which produces a WaitForChild warning.

Thanks for reporting this, I’ve updated the module to reflect this change.

I’ve also noticed that it stops working after death with a new character-forgot to mention, sorry.

would i be able to use this fine with something like Realism?