
I am trying to model casting at a higher spell level for the D&D 5e Spiritual Weapon in the regular 5e character sheet (not shaped). This is what I got so far: (?{Spell Slot|2}/2)d8 Spiritual Weapon gets one additional damage dice per two spell levels, so this works perfectly fine as long as I cast it only at even levels. If I use this function with an odd level spell slot (which of course doesn't make much sense, but is technically possible), it'll round the number of dice up to the next full number, which is not how the spell works. The obvious solution would be to use the floor() function, but I've ran into a problem there: floor(?{Spell Slot|2}/2)d8 will only return the value of the roll query divided by two, rounded down and not roll any dice. I'm still new to all this, so I'm wondering, is there something wrong with my syntax, or is this a limitation of the dice system? Now, this isn't a big issue. As mentioned it works perfectly fine as long as I don't screw around with it, I'm just trying to understand how all this works. :) Edit: Nevermind, I just figured out how to make it work. Just put the floor() function in an inline roll: [[floor(?{Spell Slot|2}/2)]]d8