In my roll button for a spell, I assign the following roll to damage: Damage=[[@{SpellDamageB}+[[floor(@{SpellClass}*@{SpellDamageYDiceCount}/@{SpellDamageX})]]@{SpellDamageYDiceSize}+@{SpellDamageYBonus}*@{SpellClass}]] (The overall formula is just a slightly expanded slope-intercept formula, if that helps you understand my variable naming conventions) SpellDamageB is either an integer or a roll. SpellClass is the level of the class that supplied the spell. SpellDamageYDiceCount is the number of dice that are added with each increment. SpellDamageYDiceSize is the number of sides on the dice. SpellDamageX is the number of levels needed to increment in the Dice Count. SpellDamageYBonus is the integer value added with every increment. For example, with Magic Missile: SpellDamageB = 0 SpellClass = 8 SpellDamageYDiceCount = 1 SpellDamageYDiceSize = d4 SpellDamageX = 2 SpellDamageYBonus = 1 Unfortunately, instead of rolling the damage, what gets output to the roll template is "[[0+4d4+4]]". If I wrap the entire thing in another layer of double brackets, the roll is resolved, but does not show the dice rolls. I had it working earlier, and I'm trying to figure out why it stopped working as intended. (Yes, I know the formula isn't exact for Magic Missile, since it should be ceil instead of floor, but that's not part of the problem.) Any help troubleshooting will be appreciated.