Simple sound physics script

could you opensource the place showed in the post? it might be kinda easier for testing the settings

This, this is really cool! I would’ve never thought I’d see something like this for roblox, but here we are. I gotta give it to you man, this is great. If you were able to add reverb to this, it would be super cool, but besides that, nice work!

@PysephDEV i put the script on github and put the link in the post

2 Likes

What would be the appropriate settings to make certain materials soundproof?

I have a sugguestion.

What if you had the system detect how large an area a player is in and how sound reflective the materials are to make the sound more reverb ish

changing each value in a material table to 90 should silence the sound, no matter what the initial eq values of the sound may be: {high = 90, mid = 90, low = 90}
(range of values is -80 to 10, so subtracting 90 or greater should always result in the lowest value)

another tip - you can negate the effect of obstruction for certain materials by putting in the opposite respective values of the default ones
example:
obstruction_values = {high = 12, mid = 6, low = 3}
ForceField = {high = -12, mid = -6, low = -3} - forcefield material parts will have no effect on sound

1 Like

Hey dude, thanks so much for this. I was searching all day for something like this to put into my cafe and I never found it. Lucky me I stumbled upon this post. I will be using this in my cafe game. Again, thanks so much for this. Better bookmark this before I go to bed :upside_down_face:
-Cats767_99

yoooo epic sound script except what music is it in the video?i’ll be sure to use this in my creations

That’s really usefull thank you dev! :slightly_smiling_face:

Thank you so much for this script!

This is really cool and really useful. Although, it would be great to make the music fade out a little bit if you were underwater. Just like this resource I just found: Underwater Muffle
It’s really easy to add in yourself if you want the sound to fade out.

1 Like

i will try adding that now

@anon53193547 @clustergrowling @PysephDEV as for reverb, im not sure if ill be able to implement functioning reverb with my coding experience, but i will work on it
in the meantime, the github is available for contribution if any of you want to tackle it as well

2 Likes

Man I was about to attempt making something like this until this popped up cause of the message from 2 days ago. Really frickin cool.

Hi there,

There is a huge issue with your script, which is the impact of performance.

I am no experienced scripter to tell you the exact performance-draining elements and functions in the script, but it used up a lot of memory storage and people only received around 16-20 FPS.

For my client, the client memory usage went up to 1.5k

image

The script itself is useful and I would’ve used it, if not the performance drain.

oh yikes… thank you for showing me that
im not a very experience scripter either, so i might have overlooked some things in the code that might have caused that

im rewriting some of the script right now; ill see if i can find the problem and fix it

Hi,

I just talked to Shawn, also known as Aotrou.

Both of us investigated my place and found out that future lighting ate most of the performance, so I’m gonna check your script out again and correct myself, if what I said was false.

Here are 2 additional resources regarding the memory leak I experienced:

alrighty

if there are still memory problems afterwards, its likely because it uses value instances to allow for tweening
im going to change the script to lerp attributes instead, because this will use less memory

1 Like

a big update to the script is out, along with the testing place!

the script should now be faster and use less memory, but if there are any problems, let me know and i will work on them

changelog
  • reorganized script settings for readability
  • reorganized code and logic gates to avoid unnecessary declarations/running of code
  • fixed some logic errors in the code
  • renamed ignore_player_obstruction to ignore_players
  • renamed size_threshold to minimum_size
  • renamed transparency_threshold to maximum_transparency
  • renamed default_eq_values to default values
  • added ignore_player_sounds
  • added “Water” to the material list (because of a raycast limitation, underwater sounds can only be dampened if the camera is outside of the terrain; you will need to use Region3 or some other method if you want to dampen underwater sounds while the camera is also underwater)
  • added lerp_alpha
  • added disconnections to player connections
  • removed obstruction_value_tween_time
  • removed material_obstruction_value_tween_time
  • removed value folder and number values in favor of attributes
  • removed debounce values, tweens, and tweenservice in favor of lerping
2 Likes