![The Wild Mod [Fabric]](https://media.forgecdn.net/avatars/thumbnails/455/158/256/256/637723588481554069.png)
Sculk Shrieker Effect Sound
MerpisMe opened this issue ยท 47 comments
The sculk shrieker effect sound is a bit broken at the moment. For starters, it doesn't properly sync with the pulsating of the darkness effect, which is a bit jarring. Additionally, it continues for a long period of time, quite a bit longer than the darkness effect itself should. Lastly, it plays warden_slightly_angry_1 and warden_slightly_angry_2 at the end, which is a bit weird.
- Sync the "close" "closer" and "closest" sounds with the pulsating of the darkness status effect
- Make the sounds ONLY last within the duration of the darkness effect.
- Remove warden sounds from the shrieker effect sound event altogether
The sculk shrieker effect sound is a bit broken at the moment. For starters, it doesn't properly sync with the pulsating of the darkness effect, which is a bit jarring. Additionally, it continues for a long period of time, quite a bit longer than the darkness effect itself should. Lastly, it plays warden_slightly_angry_1 and warden_slightly_angry_2 at the end, which is a bit weird.
- Sync the "close" "closer" and "closest" sounds with the pulsating of the darkness status effect
- Make the sounds ONLY last within the duration of the darkness effect.
- Remove warden sounds from the shrieker effect sound event altogether
idk why it does this, it's only supposed to play ONE warning sound, and that's it. Strange.
Additionally, it continues for a long period of time, quite a bit longer than the darkness effect itself should. Lastly, it plays warden_slightly_angry_1 and warden_slightly_angry_2 at the end, which is a bit weird.
I suspect this could be because the code is also running on the client, and it THINKS a new Warden spawned sometimes. I'll make it server-only and see if it works.
Also about syncing the sounds with Darkness... I have no clue how that's even remotely possible. The CLOSEST I could do is time how long each pulse takes and make a tick-timer to play a sound on each pulse, but that's it... Even then, I'm not too sure if that'll be easy.
Would you be able to test with the latest commit? There shouldn't be any lingering sounds or client-only Warden sounds anymore, the only thing that should be left to do is making a timer to sync it with the effect.
i'm at work, i'll have to have xfrtrex test it
- Remove warden sounds from the shrieker effect sound event altogether
They never were though, it's definitely the code running on the Client.
Additionally, it continues for a long period of time, quite a bit longer than the darkness effect itself should. Lastly, it plays warden_slightly_angry_1 and warden_slightly_angry_2 at the end, which is a bit weird.
I suspect this could be because the code is also running on the client, and it THINKS a new Warden spawned sometimes. I'll make it server-only and see if it works. Also about syncing the sounds with Darkness... I have no clue how that's even remotely possible. The CLOSEST I could do is time how long each pulse takes and make a tick-timer to play a sound on each pulse, but that's it... Even then, I'm not too sure if that'll be easy.
yeah, thats what i was thinking, just a simple tick timer that stops once the darkness effect is finished
Would you be able to test with the latest commit? There shouldn't be any lingering sounds or client-only Warden sounds anymore, the only thing that should be left to do is making a timer to sync it with the effect.
- Remove warden sounds from the shrieker effect sound event altogether
They never were though, it's definitely the code running on the Client.
huh, you sure? it plays them like they're stereo and it's always slightly_angry1.ogg and slightly_angry2.ogg, and it also happens on servers
huh, you sure? it plays them like they're stereo and it's always slightly_angry1.ogg and slightly_angry2.ogg, and it also happens on servers
Those two sounds are never referenced anywhere aside from the Warden itself, and those are also the same sounds it makes when it detects something with a low-mid suspicion range. Why it always plays those two in succession at the same pitch I have no clue, but there's no way it's anything server-side.
The most logical conclusion is that the client thinks a Warden spawned. If not, then this is some EXTREMELY strange alien-sci-fi-level stuff going on here.
huh, you sure? it plays them like they're stereo and it's always slightly_angry1.ogg and slightly_angry2.ogg, and it also happens on servers
Those two sounds are never referenced anywhere aside from the Warden itself, and those are also the same sounds it makes when it detects something with a low-mid suspicion range. Why it always plays those two in succession at the same pitch I have no clue, but there's no way it's anything server-side.
that's really strange! i've never heard of a bug like that before, but it's good that you've (hopefully) fixed it
by the way, this does work.
regarding making the sounds play whenever the pulsing happens, look into the BackgroundRenderer and LightmapTextureRenderer mixins for the equation they use to pulse the darkness effect
huh, you sure? it plays them like they're stereo and it's always slightly_angry1.ogg and slightly_angry2.ogg, and it also happens on servers
Those two sounds are never referenced anywhere aside from the Warden itself, and those are also the same sounds it makes when it detects something with a low-mid suspicion range. Why it always plays those two in succession at the same pitch I have no clue, but there's no way it's anything server-side. The most logical conclusion is that the client thinks a Warden spawned. If not, then this is some EXTREMELY strange alien-sci-fi-level stuff going on here.
this didn't fix it by the way. that's really bizarre. it only happens on the highest "shrieker anger" level, but i can't find ANYTHING that references it. it's worth mentioning that the highest level also plays the other sounds back to back, so there's definitely something going on with the sound event. we might just have to make a new sound event for it lol
i'm thinking it must be because the (possibly outdated) sounds themselves have the sounds at the end, because now that i think about it they're also always the same sounds leading up to the warden sounds.
- Sync the "close" "closer" and "closest" sounds with the pulsating of the darkness status effect
turns out this already DOES exist as part of the status effect, it just doesn't work for some reason!
bruh
- Sync the "close" "closer" and "closest" sounds with the pulsating of the darkness status effect
turns out this already DOES exist as part of the status effect, it just doesn't work for some reason!
https://github.com/Osmiooo/wildmod/blob/master/src/main/java/frozenblock/wild/mod/status_effects/DarknessStatusEffect.javabruh
can you try to see why it doesnt work lol
- Sync the "close" "closer" and "closest" sounds with the pulsating of the darkness status effect
turns out this already DOES exist as part of the status effect, it just doesn't work for some reason!
Yeah i've been trying god knows how many things and I can't figure out what's causing this bug
Yeah i've been trying god knows how many things and I can't figure out what's causing this bug
that's so weird
If not, then this is some EXTREMELY strange alien-sci-fi-level stuff going on here.
one thing i know for certain is that somewhere, there's a sound file which includes slightly_angry1 and slightly_angry2, and i KNOW that this is the case because they're played as stereo despite both of the actual sound files being mono, which should never happen
one thing i know for certain is that somewhere, there's a sound file which includes slightly_angry1 and slightly_angry2, and i KNOW that this is the case because they're played as stereo despite both of the actual sound files being mono, which should never happen
I've listened to every single warden-related audio file and none are like this
one thing i know for certain is that somewhere, there's a sound file which includes slightly_angry1 and slightly_angry2, and i KNOW that this is the case because they're played as stereo despite both of the actual sound files being mono, which should never happen
I've listened to every single warden-related audio file and none are like this
hmm. maybe i'm wrong about mono files not being able to play as stereo in game then. i'll try changing the sounds themselves and seeing if it changes in a bit
one thing i know for certain is that somewhere, there's a sound file which includes slightly_angry1 and slightly_angry2, and i KNOW that this is the case because they're played as stereo despite both of the actual sound files being mono, which should never happen
I've listened to every single warden-related audio file and none are like this
hmm. maybe i'm wrong about mono files not being able to play as stereo in game then. i'll try changing the sounds themselves and seeing if it changes in a bit
hmm, while testing i noticed that the shrieker doesn't play the nearby_close sounds if there's nowhere suitable for the warden to spawn (that is, there must be blocks that it can spawn on AND the radius of the necessary spawnable platform must be large enough)
one thing i know for certain is that somewhere, there's a sound file which includes slightly_angry1 and slightly_angry2, and i KNOW that this is the case because they're played as stereo despite both of the actual sound files being mono, which should never happen
I've listened to every single warden-related audio file and none are like this
hmm. maybe i'm wrong about mono files not being able to play as stereo in game then. i'll try changing the sounds themselves and seeing if it changes in a bit
hmm, while testing i noticed that the shrieker doesn't play the nearby_close sounds if there's nowhere suitable for the warden to spawn (that is, there must be blocks that it can spawn on AND the radius of the necessary spawnable platform must be large enough)
it doesn't even have a subtitle.
I don't see the point in redefining the variable if you're gonna return it and not use it for anything else honestly, but it's got the idea
one thing i know for certain is that somewhere, there's a sound file which includes slightly_angry1 and slightly_angry2, and i KNOW that this is the case because they're played as stereo despite both of the actual sound files being mono, which should never happen
I've listened to every single warden-related audio file and none are like this
hmm. maybe i'm wrong about mono files not being able to play as stereo in game then. i'll try changing the sounds themselves and seeing if it changes in a bit
hmm, while testing i noticed that the shrieker doesn't play the nearby_close sounds if there's nowhere suitable for the warden to spawn (that is, there must be blocks that it can spawn on AND the radius of the necessary spawnable platform must be large enough)
it doesn't even have a subtitle.
@AViewFromTheTop I FOUND THE ISSUE!
it was nearby_closer_2.ogg!
oh ok thank god lol, i was really hesitant on the idea you proposed initially
really the only way to do this would be adding more cooldown to the shrieker, that'd make it work, but in return you can't summon the warden as fast (4-second cooldown)
i'll take that over offsetting the sounds in the actual files any day
yeah but that should hopefully a bit easier since the code is already (sort of) there
I'm just gonna delay the sound files for by four seconds because making a timer's surprisingly complex for some reason (block entities cant have multiple timers that easily,) so this is more efficient and less annoying to do.
nvm im dumb, there is an easier way to do timers
oh ok thank god lol, i was really hesitant on the idea you proposed initially
and of course nvm, I can't do it. Long-story short have no clue how to do it
oh ok thank god lol, i was really hesitant on the idea you proposed initially
really the only way to do this would be adding more cooldown to the shrieker, that'd make it work, but in return you can't summon the warden as fast (4-second cooldown)
@AViewFromTheTop I FOUND THE ISSUE! it was nearby_closer_2.ogg!
But I listened to that one and it didn't have the extra sounds... Hmm... Do you happen to have a copy of the old file?
Edit: Just remembered I have a copy nvm
@AViewFromTheTop I FOUND THE ISSUE! it was nearby_closer_2.ogg!
But I listened to that one and it didn't have the extra sounds... Hmm... Do you happen to have a copy of the old file? Edit: Just remembered I have a copy nvm
I SWEAR TO GOD
I WASTED ALL THIS TIME BECAUSE OF A WARDEN SOUND COMPILATION
oh shoot i forgot there's still the sound syncing part left dangit
yeah but that should hopefully a bit easier since the code is already (sort of) there
@AViewFromTheTop I FOUND THE ISSUE! it was nearby_closer_2.ogg!
thank god you found out about this
oh shoot i forgot there's still the sound syncing part left dangit
yeah but that should hopefully a bit easier since the code is already (sort of) there
Not really, it has some problems:
- It doesn't account for Shrieker Anger and plays the same sound
- If it worked it'd probably spam the sounds inbetween pulses
- It's not running on the client (not sure if that's actually an issue, but there's a chance that's why the sound won't play)
I'm better off just making a separate timer for the Shrieker's block entity
oh shoot i forgot there's still the sound syncing part left dangit
yeah but that should hopefully a bit easier since the code is already (sort of) there
Not really, it has some problems:
- It doesn't account for Shrieker Anger and plays the same sound
- If it worked it'd probably spam the sounds inbetween pulses
- It's not running on the client
I'm better off just making a separate timer for the Shrieker's block entity
ah, fair enough then
yeah but that should hopefully a bit easier since the code is already (sort of) there
I'm just gonna delay the sound files for by four seconds because making a timer's surprisingly complex for some reason (block entities cant have multiple timers that easily,) so this is more efficient and less annoying to do.
yeah but that should hopefully a bit easier since the code is already (sort of) there
I'm just gonna delay the sound files for by four seconds because making a timer's surprisingly complex for some reason (block entities cant have multiple timers that easily,) so this is more efficient and less annoying to do.
nvm im dumb, there is an easier way to do timers
yeah but that should hopefully a bit easier since the code is already (sort of) there
I'm just gonna delay the sound files for by four seconds because making a timer's surprisingly complex for some reason (block entities cant have multiple timers that easily,) so this is more efficient and less annoying to do.
nvm im dumb, there is an easier way to do timers
oh ok thank god lol, i was really hesitant on the idea you proposed initially
i'll take that over offsetting the sounds in the actual files any day
yeah it doesn't work, the timing for the darkness pulsing won't match up with the sound after the first shriek. Combining that with the fact that it's easy to cheese the Shriekers this way as well, I don't think it's a good solution
i'll take that over offsetting the sounds in the actual files any day
yeah it doesn't work, the timing for the darkness pulsing won't match up with the sound after the first shriek. Combining that with the fact that it's easy to cheese the Shriekers this way as well, I don't think it's a good solution
oh. well then i guess just go ahead and offset the sound files
oh. well then i guess just go ahead and offset the sound files
I'm gonna look at the status effect before that
oh. well then i guess just go ahead and offset the sound files
I'm gonna look at the status effect before that
well THERE'S a big problem. The "time" variable is set on the client, but the code to make the sound play runs on the server.
oh. well then i guess just go ahead and offset the sound files
I'm gonna look at the status effect before that
well THERE'S a big problem. The "time" variable is set on the client, but the code to make the sound play runs on the server.
AAAAAAAA
AAAAAAAA
well i found a way to get the sound to play, but it just spams at random times
@MerpisMe i found a way to do it from LightmapTextureManagerMixin, the only issue is that I have no way to reset the soundTime value when the player gets Darkness a second time.
@MerpisMe i found a way to do it from LightmapTextureManagerMixin, the only issue is that I have no way to reset the soundTime value when the player gets Darkness a second time.
WAIT WAIT, pull the latest commit i just made, it tweaks the equation for the pulsing a bit