Unfortunately, what you're asking isn't quite doable with a simple macro, exactly. With the API (mentor-level feature) and a little programming, it's possible, and probably quite simple, but there's another option. A macro that asks for weapon attack bonus, damage roll, and crit range is fairly simple to make, and covers pretty much what you need for different weapons. For example: /me attacks with his ?{weapon|fists} and rolls a [[1d20+?{attack bonus|0}]] to hit, which crits on a [[?{crits on|20}+?{attack bonus|0}]]. If it hits, [[?{number|1}d?{sides|1}+?{bonus damage|0}]] damage is inflicted! This macro will put up a prompt for each bit with a "?" in it... if you just hit enter without inputting anything, the bit at the end of that bracketed section is the default. This one asks for, in turn, the weapon name , the bonus added to the d20 dieroll , the crit range of the weapon , the number and sides of the dice rolled for damage, and the bonus damage added to that dieroll. (I may have left something out; if so, I'm sure someone will be along soon enough to correct me.) Its output will look like this: Bill The Swordsman attacks with his Longsword and rolls a [18] to hit, which crits on a [21]. If it hits, [8] damage is inflicted! You can then hover the mouse over each part in [square brackets] in the output to see the actual numbers rolled. (this is Inline rolling ) Hope that helps. -Phnord PS: What MarkG said.