mojira.dev
MCPE-118473

/playsound command has short range not affected by volume parameter

For the past year, I've been working on an asymmetrical multiplayer horror map. In any good horror game, sound is incredibly important to the atmosphere. However, the "playsound" command is literally so inconsistent that it's frustrating to work with. I try to work around its faults, thinking it might just be me, but at this point, I cannot keep silent about it. 

First off, according to the wiki, the "volume" syntax is meant to increase the range in which the sound can be heard. Theoretically speaking, you can set the volume level all the way to 9999 so that everyone can hear it. This is not the case. In fact, volume does absolutely nothing! I even tried single digits and the volume never increased (if anything, it just made it quieter). 

Speaking of the volume, the base range is pathetically short. If you play the sound and move even an inch away from the source, the sound fades to nothing instantaneously. It makes trying to use ambient sounds annoying in a game where you're always on the move (or creating your own ambient sounds, at that). 

Lastly, their output message is highly inconsistent. It will SAY that it played the sound, yet I hear nothing. And it can't be because it's too quiet for me to hear because I'm standing directly on top of the source and the volume is in the thousands. 

 

Could this please be looked into? I can't keep wrestling with this command forever...

Linked issues

Comments 5

I can reproduce in beta 1.17.0.52, on Windows 10 edition. I'm trying to make an explosion sound that can be heard from a distance, but the volume decreases exponentially and becomes much quieter after about four blocks and will not increase regardless of how large the volume parameter is. I'll put some steps to reproduce below:

1. Place down a command block that plays a sound, for example: /playsound firework.blast @a ~ ~ ~ 1

2. Activate it while you stand various distances away from the command block. You can set the command block to repeating and step away, or build a line of redstone and power it remotely, just use any method to be multiple blocks away from the command block. Notice that it's quite loud when you're right next to it, but after just 3-4 blocks it becomes much quieter.

3. Go and change the volume parameter, the "1" at the end, to a larger number like 4, and repeat Step 2. Notice how the sound's attenuation does not change. The expected behavior is to be able to hear the sound from four times as far before it starts to fade.

Still affecting 1.19.71 and 72

I am also trying to use the playsound and cannot hear anything as of 05.04.23

 

/playsound armour.equip_iron @p ~ ~ ~ 1

I have entered this into the command block, I have it on repeat in case I missed it and have tried increasing the volume to 2 to expand the area.  I am standing next to the command block so this should not be required.  The command block states it has played the sound to myself and the chat pours out with played sound to CJSGOOSE, but I cannot hear anything.  I have tried altering my settings in case they were interfering.  I can hear my own block placements, so it shouldn't be an issue if it was.  I really need the sound for a game I am creating.  I am on Windows 10 v 1.19.73.  I also tried the anvil sound, again as before it says it played, but I cannot hear it.

 

I just tried it in the chat text as well, again, it accepts the command, says it played, yet I hear nothing.  Please help?

Hi again, Update - I have just been on someone's Discord and discussing this matter.  They suggested trying the bell sound.  block.bell.hit and it works.  So it seems that some sounds work and others do not.

Hi, after being similarly frustrated with sounds in Bedrock, I started experimenting a while back and finally figured out what each of the parameters do. This interactive graph displays the attenuation of a sound with distance, as configured by fields in the definition and commands:

https://www.desmos.com/calculator/k2ykwuijru

As you can see, the /playsound volume parameter (when greater than 1) only increases the cutoff range for the "player was too far away to hear the sound" message. It does nothing else. Increasing the effective range of the sound can only be done by modifying the sound definition.

This differs from Java, which can be seen here:

https://www.desmos.com/calculator/hrj7zevxdw

Evan Jonathan Silva

(Unassigned)

546350

Confirmed

Multiple

1.16.220, 1.16.40 Hotfix, 1.16.201 Hotfix, 1.16.221 Hotfix, 1.17.41 Hotfix, 1.18.2 Hotfix, 1.20.41 Hotfix

Retrieved