In the example above the sound would be called by the string enum "name.songs_sound"
in relation to the resourcepack, the sound would be in sounds/name/songs_sound.ogg
In the plugin you would call the sound like so
user.playSound(Location, "name.songs_sound", 1.0f, 1.0f);
So in the resourcepack I edit a json that tells minecraft "oi mate I gots you a new sound file to play"
and i can call that with commands depending on the sound name I set for it in the json
{ "name.songs_sound": {"sounds":["name/songs/songs_sound"]}, }
In the example above the sound would be called by the string enum "name.songs_sound" in relation to the resourcepack, the sound would be in sounds/name/songs_sound.ogg
In the plugin you would call the sound like so
user.playSound(Location, "name.songs_sound", 1.0f, 1.0f);
Reference link to the spigot api
So if we work together we can basically have infinite sounds for infinite scenarios No need to overwrite existing sounds in MC
So if we wanted we could replace the ghast sound we use for the angles with its own sound file, incase that sound ever gets used/removed by mojang