Relates to MCPE-187380 and MCPE-180966 (all sound parity issues since 1.21.0).
Sounds may differ in name (used in commands to play sounds), definition (sound files, attenuation distance, and category), or implementation (how the event is played: pitch, volume, in-game context).
See table below. Note the [MISSING] does not mean the sound is silent in-game; it means there is no corresponding sound event in Bedrock Edition. Thus, these sounds cannot be controlled separately in Bedrock, unlike Java.
✅ means definition exactly matches Java
🟨 means definition matches Java except for attenuation style (explanation below table)
❌ means definition does not match Java
Java Sound Event | Bedrock Sound Event | Name Matches | Definition Matches | Implementation Matches (sounds.json) |
---|---|---|---|---|
block.cave_vines.place | block.cave_vines.place | ✅ | ✅ | ❌ Event is not used in-game. |
block.weeping_vines.break | block.weeping_vines.break | ✅ | ✅ | ❌ Pitch differs |
block.weeping_vines.fall | block.weeping_vines.fall | ✅ | ✅ | ❌ Volume and pitch differ |
block.weeping_vines.hit | block.weeping_vines.hit | ✅ | ✅ | ❌ Volume differs |
block.weeping_vines.jump | block.weeping_vines.jump | ❌ | ❌ Event does not exist on Java | ❌ Should use block.weeping_vines.step. |
block.weeping_vines.land | block.weeping_vines.land | ❌ | ❌ Event does not exist on Java | ❌ Should use block.weeping_vines.step. |
block.weeping_vines.place | block.weeping_vines.place | ✅ | ✅ | ❌ Pitch differs |
block.weeping_vines.step | block.weeping_vines.step | ✅ | ✅ | ❌ Volume differs |
[MISSING] | block.weeping_vines.use | ❌ | ❌ Uses overworld vine sounds. | ❌ Should use block.weeping_vines.place |
block.iron.break | break.iron | ❌ | 🟨 Attenuation is not linear | ✅ |
block.iron.fall | [MISSING] | ❌ | ❌ | ❌ Should use block.iron.fall. |
block.iron.hit | hit.iron | ❌ | 🟨 Attenuation is not linear | ❌ Volume differs |
block.iron.place | place.iron | ❌ | 🟨 Attenuation is not linear | ✅ |
block.iron.step | step.iron | ❌ | 🟨 Attenuation is not linear | ❌ Volume is incorrect for step, land, and jump. |
block.iron_door.close | close.iron_door | ❌ | 🟨 Attenuation is not linear | ✅ |
block.iron_door.open | open.iron_door | ❌ | 🟨 Attenuation is not linear | ✅ |
block.iron_trapdoor.close | close.iron_trapdoor | ❌ | 🟨 Attenuation is not linear | ✅ |
block.iron_trapdoor.open | open.iron_trapdoor | ❌ | 🟨 Attenuation is not linear | ✅ |
item.shovel.flatten | use.grass | ❌ | ❌ Sound files are in sounds/block/grass/ | ❌ Pitch should be 1.0 |
item.axe.strip | use.wood | ❌ | 🟨 Attenuation is not linear | ❌ Pitch should randomly be either 1.0 or 0.85. |
item.hoe.till | use.gravel | ❌ | ❌ Unique till sounds (till1-4) are missing. | ❌ Pitch should be 1.0 |
* Yellow markers (🟨) indicate that the definition is a perfect match, but the "max_distance" field has not been set to 16.0, so the sound event will have exponential attenuation instead of Java's linear attenuation.
Sounds which play at volumes greater than 1.0 will need a matching "max_distance" field. For example, explosions play at 4.0 volume, so their max_distance must be set to 64.0 blocks to achieve the correct linear attenuation.
iron block sounds are incorrectly using the step sound for item.use.on, while they should be using the place sound. The pitch should be 0.8, not 1.0.
Wooden slabs now make strip wood sounds when placing the second slab due to MCPE-79659.
The new sound files added for weeping vines are redundant. These same sound files already existed in the sounds/dig and sounds/step folders. This is a waste of file space.
Resin sounds from 1.21.50 are set up perfectly in sounds.json to match Java Edition. This implementation should be reused for all future sound sets.
The disparity of exponential vs. linear attenuation is already tracked for all sounds at MCPE-168744.