In my MC map, I have a world specific resource pack, which contains the following sounds:
domolas/music/subway/summer
domolas/music/subway/flashteens
domolas/music/subway/emmeline
This is the current sounds.json:
{
"domolas.music.subway.current": {"sounds": ["domolas/music/subway/flashteens"], "stream": true},
"domolas.music.subway.summer": {"sounds": ["domolas/music/subway/summer"], "stream": true},
"domolas.music.subway.flashteens": {"sounds": ["domolas/music/subway/flashteens"], "stream": true},
"domolas.music.subway.emmeline": {"sounds": ["domolas/music/subway/emmeline"], "stream": true}
}
And this is an older version of sounds.json:
{
"domolas.music.subway.current": {"sounds": ["domolas/music/subway/summer"], "stream": true},
"domolas.music.subway.summer": {"sounds": ["domolas/music/subway/summer"], "stream": true},
"domolas.music.subway.flashteens": {"sounds": ["domolas/music/subway/flashteens"], "stream": true},
}
After I modified sounds.json, which changed the definition of domolas.music.subway.current from domolas/music/subway/summer to domolas/music/subway/flashteens, when I try to play domolas.music.subway.current, either directly or through a /function, it sometimes plays domolas/music/subway/flashteens (defined in the current sounds.json), but it also sometimes plays domolas/music/subway/summer (defined in the older sounds.json, which is no longer used).
Playing domolas.music.subway.summer always plays domolas/music/subway/summer, playing domolas.music.subway.flashteens always plays domolas/music/subway/flashteens, and playing the newly added definition domolas.music.subway.emmeline always plays the newly added file domolas/music/subway/emmeline.
Can you tell me what is the problem?
*SIDE NOTE: I also changed the definition of a sound from one file to another earlier, in 1.13.2, and it always played the new version of the sound.
You can include
"replace":true
in an event to prevent it from appending to lower definitions