in the non icy patches in the frozen ocean biome rain doesn't play any audio and is silent. I have footage if requested.
Linked issues
is duplicated by 1
Attachments
Comments 11
Yup, it appears this issue is similar but not the same as MC-236652. I can confirm this.
Isn't the problem here that the rain doesn't make a sound when falling on water? When flying above land in rainy weather, also no sound is heard.
How is this still not fixed? It's been nearly a year and it's not even being worked on. It still exists in 1.19 and it's incredibly annoying, just ruins my iceberg base.
Code analysis (Mojang mappings, 1.19.2): in LevelRenderer#tickRain(Camera)
, there is the following piece of code:
...
BlockPos $$10 = $$3.getHeightmapPos(Heightmap.Types.MOTION_BLOCKING, $$4.offset($$8, 0, $$9));
Biome $$11 = $$3.getBiome($$10).value();
if ($$10.getY() <= $$3.getMinBuildHeight() || $$10.getY() > $$4.getY() + 10 || $$10.getY() < $$4.getY() - 10 || $$11.getPrecipitation() != Biome.Precipitation.RAIN || !$$11.warmEnoughToRain($$10)) continue;
...
If the biome's precipitation is not RAIN
(which frozen oceans are not), then the code to play the rain sound events is not executed. Changing this to
...
BlockPos $$10 = $$3.getHeightmapPos(Heightmap.Types.MOTION_BLOCKING, $$4.offset($$8, 0, $$9));
Biome $$11 = $$3.getBiome($$10).value();
if ($$10.getY() <= $$3.getMinBuildHeight() || $$10.getY() > $$4.getY() + 10 || $$10.getY() < $$4.getY() - 10 || $$11.getPrecipitation() == Biome.Precipitation.NONE || !$$11.warmEnoughToRain($$10)) continue;
...
should fix the issue; there is no worry that the rain sounds would play in a snowy biome, because Biome#warmEnoughToRain(BlockPos)
already does that: if it is not warm enough to rain, the sounds will not play.
Appears to be fixed for me in 23w03, most likely due to MC-255811 being fixed. Someone please double check.
Duplicate of MC-236652