That's a brilliant way of doing it, so much simpler than all my code! haha thanks for having a look at it.
I modified the code to say emitter.soundFile = "sound" set volume to volume -10db as a way of mixing. This doesn't work with ranges though. So I'm not sure of the best way to set individual volumes and ranges.
One last thing I can't seem to do is use the same sound file in different emitters, it confuses the system and doesn't work. - This is quite important to me as I would like to re-use many smaller spot SFX multiple times across a level. As part of this I also don't know how to stop playing the audio file when out of range to free up resources. In my messy code I used system compare distance to start / stop the files.
I think it's still good to have more variety in repeated sounds even with random variation, but yeah I will be adding that too!
Thanks again for having a look man.