Welcome to the fun, and often frustrating, world of macros. The big problem with them is that they're basically linear text-substitution added onto the chat log's dice-rolling function, not a programming language. What that specifically means is that you can't branch, such as doing If A is true do B else do C, etc. (you may already know that, but I prefer to be clear). But there are a number of complex ways to get things to almost do that using math (in essence you compute two values and arrange to multiply one of them by 0 and one by 1 to "pick" the correct one). That has a lot of limitations and can be very hard to figure out (I usually just google until I find someone else solving the problem and use their macro). Check out the following pages if you haven't already: Dice Rolling Reference Complete Guide to Macros and Rolls Reusing Rolls A script (API script, newly renamed Mod) is a javascript (program) that can do a lot more, but it's a PRO feature (it's also hair-pullingly hard if you're not a web programmer), although there are a lot of pre-written ones availabile to solve common problems. But you can get most of what I think you want with macros, although as you'll see in the example below, there are limits to that. For your "roll an extra d4 on a 20", it looks like you are basing this on the example in this post using the floor function . The example given in post rolls an extra d8 on a crit in the first attack roll, so changing that to 1d4 is simple. And from there, it's "just" a matter of how you add modifiers, which is where the trouble sets in. Here's an example of how those elements work: &{template:default} ?{Weapon|Battleaxe 1H,1d8 [Battleaxe 1H]|Battleaxe 2H,1d10 [Battleaxe 2H]} ?{mods|0|1|2|3|4|5} {{name=Weapon)}} {{formula [[ [[floor([[1d20+?cs=20]]/20)]]d4]] }} {{zero $[[0]]}} {{one $[[1]]}} {{two $[[2]]}} {{three $[[3]]}} {{Hit $[[0]] + ?{mods}, Dmg [[?{Weapon}+?{mods}]] + $[[2]] Bleed}} I've broken the elements out into separate lines, so you can see how the parts work (I'm using a simple query for weapon damage and mods, rather than an ability reference, because such references are sheet-specific). But note the problem, the last line summary of the roll to hit shows the dice roll and mods to it as separate numbers. There's no way I know of to add a modifer to a referenced roll without breaking it (a limitation of the lineline rolls functionality accordding to the Reusing Rolls page noted above). A simple version takes the extra lines away, and calculates the crit dice number (along with the roll) outside of the template (no curly braces) so it doesn't show separately: &{template:default} ?{Weapon|Battleaxe 1H,1d8 [Battleaxe 1H]|Battleaxe 2H,1d10 [Battleaxe 2H]} ?{mods|0|1|2|3|4|5} {{name=Weapon)}} [[ [[floor([[1d20+?cs=20]]/20)]]d4]] {{Hit $[[0]] + ?{mods}, Dmg [[?{Weapon}+?{mods}]] + $[[2]] Bleed}} But that's the best I can get. I don't follow your initiative question. Where does the 7 come from? In any case, I don't think there's a way to post a second number to initiative.