mojira.dev
MC-221831

Pufferfish sound events still use the old entity ID

Everything associated with the pufferfish has "pufferfish" in the name ever since it was changed from "puffer_fish" in 1.13's development. However, sound events were not for some reason.

Attachments

Comments 11

Can confirm in 21w14a.

Can confirm in 21w15a.

Can confirm in 21w16a.

Can confirm for 1.17 pre-release 3

1 more comments

Can confirm in 1.17.1.

I can confirm this behavior in 1.18 Release Candidate 3.

Here's a code analysis along with a potential fix regarding this issue. The following is based on a decompiled version of Minecraft 1.17.1 using MCP-Reborn.

Code Analysis:

net.minecraft.sounds.SoundEvents.java

public class SoundEvents {
   ...
   public static final SoundEvent PUFFER_FISH_AMBIENT = register("entity.puffer_fish.ambient");
   public static final SoundEvent PUFFER_FISH_BLOW_OUT = register("entity.puffer_fish.blow_out");
   public static final SoundEvent PUFFER_FISH_BLOW_UP = register("entity.puffer_fish.blow_up");
   public static final SoundEvent PUFFER_FISH_DEATH = register("entity.puffer_fish.death");
   public static final SoundEvent PUFFER_FISH_FLOP = register("entity.puffer_fish.flop");
   public static final SoundEvent PUFFER_FISH_HURT = register("entity.puffer_fish.hurt");
   public static final SoundEvent PUFFER_FISH_STING = register("entity.puffer_fish.sting");
   ...

If we look at the above class, we can see that all pufferfish sound events use the old entity ID for the word pufferfish. In other words, all pufferfish sound events spell the word pufferfish as "puffer_fish" instead of "pufferfish".

Potential Fix:

Simply renaming all pufferfish sound events to exclude the "_" character where appropriate should resolve this issue. The correct line of code within its class should look something like the following:

net.minecraft.sounds.SoundEvents.java

public class SoundEvents {
   ...
   public static final SoundEvent PUFFERFISH_AMBIENT = register("entity.pufferfish.ambient");
   public static final SoundEvent PUFFERFISH_BLOW_OUT = register("entity.pufferfish.blow_out");
   public static final SoundEvent PUFFERFISH_BLOW_UP = register("entity.pufferfish.blow_up");
   public static final SoundEvent PUFFERFISH_DEATH = register("entity.pufferfish.death");
   public static final SoundEvent PUFFERFISH_FLOP = register("entity.pufferfish.flop");
   public static final SoundEvent PUFFERFISH_HURT = register("entity.pufferfish.hurt");
   public static final SoundEvent PUFFERFISH_STING = register("entity.pufferfish.sting");
   ...

Can confirm in 1.18.1.

Can confirm in 1.18.2 and 1.19 Pre-release 4.

Can confirm in 1.19.2.

muzikbike

(Unassigned)

Confirmed

Resource Packs, Text

flattening-remnants, incorrect-sound-event-id, sound-testing-zone

1.16.5, 21w13a, 21w14a, 21w15a, 21w16a, , 1.19.3, 23w06a, 1.19.4, 1.20 Pre-release 1, 1.20.4

Retrieved