OreCruncher / BetterRain

Based on the BetterRain mod from Wirsbo
20 stars 12 forks source link

#inside# - condition doesn't work in biome config #133

Open Oddgson opened 8 years ago

Oddgson commented 8 years ago

I commented on your Curse page but figgured it would be a better idea to write you here.

Basically, all the sounds stop when I'm under any kind of roof even if it's just one or two blocks of a mushroom or a wooden log branch of a big tree. I guess the "inside checking" is just too unforgiving. What happens is I walk through a thick biome and get the sound cut off/on constantly, which is quite annoying and immersion breaking. It's strange to stand under a tree and all of a sudden the world goes silent ;P

Is there a way to fix or even configure this? Maybe make a smooth fade in/out to a lower volume (instead of silence) or add additional checks to prevent this?

Oddgson commented 8 years ago

I made some additional tests. I tried to trick the system to play my atmo loop with the condition "inside" to find out if the behaviour now is the opposit (no sound under sky, sound under big tree). This is not the case. It doesn't sound under the sky, yes, but I doesn't under a roof as well. I don't know how your "inside" condition is supposed to work but I think something is conflicting, because if I walk back and forth between cover and sky the sound pops up for a second when I change from cover to sky, but then immediately fades out again.

So it seems that something else is preventing the sounds to play when there is no sky above the player. Maybe it would be possible to define a boolean with which we can define if a sound is affected by a roof or not...? If I live in a swamp hut I still wanna hear the frogs outside ;)

Oddgson commented 8 years ago

I'm really sorry for spamming! :( But this thing turned into something else. I figured, if I could use the "inside" condition, all I said above wouldn't be so bad. I could define "sound sets" for inside and outside. So let's say, if I'm in a little hut in the swamp I could still hear the frogs (because I set a frog sound to #inside#), but everything else would go quiet as usual.

But thing is, the "inside" condition doesn't work. If a sound is set to play only inside, it doesn't play inside and only pops up for a second if I transition from inside to outside and then quickly fades out again.

This may be important for you to know:

Oddgson commented 8 years ago

I'm so stupid! The "inside" condition only works with the fake biome "player" X((

Ok, but this still leaves me with the initial problem, that my atmo loops going on and off while wandering through biomes with overhangs, big trees or mushrooms and so on. Would be great if sounds could be defined as "playable when inside"... or make certain blocks not count as a roof...

OreCruncher commented 7 years ago

Yes, this is a challenge for "inside" detection. If there is a reasonably large opaque structure (blocks) around the players head the logic will consider it inside. I haven't come up with a good way to remedy.

Another one is underground. Right now it is based on a certain number of blocks below sea level. If you were to stand in a chasm and have a view of the sky you would still get the underground sounds.