Loud noises are obstructed way too easily
djmrFunnyMan opened this issue ยท 3 comments
Bug description
This issue is a continuation of #197 .
Basically very loud noises get muffled by obstacles when it doesn't make sense for them to be. For example, explosions, thunder, raid horn, dragon roar, sonic boom (warden)
Minecraft version
1.20.4
Mod version
1.20.4-1.3.1
Mod loader and version
Fabric Loader 0.15.7
Steps to reproduce
- Summon a lightning bolt behind a wall.
- Shoot an ender crystal with a bow without a direct line of sight
In all cases you will hear no noise.
Expected behavior
The raid horn should be completely excluded from having sound physics.
As for the other sounds (thunder, explosions etc.) they should send out many extra rays in every direction that'll travel some distance, and then snap towards the player regardless of if they had something to reflect off off (they'll just change direction midair). Depending on how many of those rays get to the player that'll determine how much it's muffled.
Log files
https://gist.github.com/djmrFunnyMan/ecb22dd22178fa103976ebdcc0b84bbf
Videos
Java-runtime-gamma.2024.05.12.-.13.29.25.02.DVR.-.Trim.1.mp4
Desktop.2024.03.15.-.23.38.38.02.DVR.-.Trim.1.mp4
So I ask for this to be reopened since 61785de doesn't even cover all the sound events mentioned in this issue.
I closed #197 and created this because this is a larger issue how there's no proper handling of very loud noises. You excluded thunder and goat horn but explosions, thunder, ender dragon roar, sonic boom (warden) and whatever else is still affected.
Loud noises go around obstacles very easily irl so these sounds getting blocked by a single unfortunately placed block is quite wrong.
There is no concept of "loud" noises in the game. If you don't like how these sounds are handled, you can always exclude them using the config.
Sounds have a max distance value which the mod does respect. Sounds still get occluded though but the distance is still respected in that case.
As the mod can't cast infinite rays, the sounds might get occluded more than they should, but thats impossible to fix as this would use way too many resources.