Hey, Godlike... you already have the MetascriptToolbox installed, so I would suggest adding SimpleSound to play the tracks. Then you can drive the track selection with a random number and a metascript retrieval. The easiest way to do this is with ZeroFrame extracting roll values, and tracks named with a number to differentiate them: sword-strike1.wav sword-strike2.wav sword-strike3.wav ...etc... If you had 5 sounds for a sword attack, you could roll 1d5 and use ZeroFrame to extract the roll value: [[1d5]].value That would make the SimpleSound command line something like: !splay sword-strike[[1d5]].value.wav The metascripts work before standard scripts (like SimpleSound) see the message, so by the time the metascript work is done, you'll have a randomized selection of which track to play. You can add that line to your ability (hit ENTER and then put the SimpleSound command on its own line) and probably be fine. Every once in a while, you'll run into a dropped line bug , where you'd only get one line out of the 2 commands (your attack -- likely a template -- and your sound effect). If you want to avoid this, you can use ZeroFrame batching like we did with the countdown macro: !{{ ...templated attack statement here... !splay sword-strike[[1d5]].value.wav }} There might be some syntax interactions that would require modification of your existing attack macro command line... the nuances are discussed in batching link (above), but if you can't spot all the changes you might need to make, post your original command and I'll help. Also, there is a separate way of solving this use case that would employ Muler (another metascript)... that approach would give you a little more freedom in what you name the tracks, but it would take a little more setup. The method I described in this post is simpler, especially with being new to scripts in general (let alone metascripts).