Easiest, non-script way is to have rollable tables. You could have one for AttackDescriptors and one for AttackNames. In AttackDescriptors you could put entries like: Fiery Explosive Spicy Meaty Scrumtrulescent And in the AttackNames table you would have entries like: Orb Blast Revenge Chaos Pudding Then you could do: /em shouts, "[[ 1t[AttackDescriptors]]] [[ 1t[AttackNames] ]]" and attacks for [[5d6]] damage. That way you could always enter more possibilities in each table without having to change the die you roll. If you had 20 to start, but then came up with another 8 descriptors and another 4 names, your macro would still work. If you want to have a little more control over the output, you can use the MetaScript Toolbox (from the one-click). Options here would include simply removing the inline-roll look, so that the text was better formatted: ! /em shouts, "[[ 1t[AttackDescriptors]]].value [[ 1t[AttackNames] ]].value" and attacks for [[5d6]] damage. {&simple} Another option would be using Muler and ZeroFrame if you wanted to include an animated GIF in the output. For this, I'd setup an ability on a character to associate the attack name with the specified image. I put such a mule ability on a character called "PublicTables". It's formatted like this: Orb=[ ](<a href="https://media.giphy.com/media/v1.Y2lkPTc5MGI3NjExOGY4dmdwYWM4cXU5cG95aWxvbnhuMXJ6cmF2bm01MWN6NXAyajB6ZCZlcD12MV9pbnRlcm5hbF9naWZfYnlfaWQmY3Q9Zw/wEeUz0u91oLKO6LRfu/giphy.gif" rel="nofollow">https://media.giphy.com/media/v1.Y2lkPTc5MGI3NjExOGY4dmdwYWM4cXU5cG95aWxvbnhuMXJ6cmF2bm01MWN6NXAyajB6ZCZlcD12MV9pbnRlcm5hbF9naWZfYnlfaWQmY3Q9Zw/wEeUz0u91oLKO6LRfu/giphy.gif</a>) Fireball=[ ]( ...url to fireball gif...) For each attack name that appears in your AttackName rollable table, I've made an entry that ties that name to an animated gif. This lets me do a command like this: !{{ {&global ([AttackNameVar][[1t[AttackName]]].value)} /em shouts, "[[ 1t[AttackDescriptor]]].value AttackNameVar" and attacks for [[5d6]] damage! get.PublicTables.AttackNameImages.AttackNameVar/get }} And get an output like this: That can be even cleaner if you wanted just a static image (not animated) for each attack. Then you could use it as the image for the attack entry in the AttackName rollable table, and retrieve it with Fetch. I can show an example of that, if you like.