Hello Ricky R., May I suggest some fixes to your macro: &{template:2Edefault}{{name=SAVE VS. POISON}}{{subtitle=For @{selected|token_name} the @{selected|race} @{selected|class}}}{{Rolls: [[1d20[D20] + (?{Miscellaneous
Modifiers?|+0}[Misc Mod]) +(@{selected|poimod}[Poison Mod])]] ≥ [[@{selected|poitar}[Poison Target]]]}} It should prevent your macro from breaking by protecting the inputs "Misc. Modifiers?" and "poimod, parmod, ..." from any mistypes from players and/or DM (writing a 3 instead of +3 or -3 for example) and using the correct score (poitar and poimod instead of partar and parmod which targets to the Paralysis fields) If you plan to use the very same macro for both PCs and NPCs, I suggest you to delete the race and class fields from the header to avoid spoilers in your adventures. For the very same reason, I replaced the "character_name" with "token_name" to hide the true identity of some characters in the subtitle header. If you are using the ADnD 2nd Edition Character Sheet by Peter B . , the 2Esave or 2Einversecheck rolltemplates may be better suited than the 2Edefault rolltemplate for the task. The real advantage of these 2 rolltemplates is that in one glimpse everybody know if the check is a success or a failure. Below is an example using the 2Esave rolltemplate. A drop-down menu will pop-up, asking what saving throw should be rolled and thus, preventing the chat to be cluttered by macro menus: &{template:2Esave}{{color=orange}}{{character=@{selected|token_name} the @{selected|race} @{selected|class}}}{{savevs=?{1/2 - Saving throw, select type| Paralysis,Paralysis&#125;&#125;{{savetarget=[[@{selected|partar}[Paralysis]]]| Poison,Poison&#125;&#125;{{savetarget=[[@{selected|poitar}[Poison]]]| Death Magic,Death Magic&#125;&#125;{{savetarget=[[@{selected|deatar}[Death]]]| Rod,Rod&#125;&#125;{{savetarget=[[@{selected|rodtar}[Rod]]]| Staff,Staff&#125;&#125;{{savetarget=[[@{selected|statar}[Staff]]]| Wand,Wand&#125;&#125;{{savetarget=[[@{selected|wantar}[Wand]]]| Petrification,Petrification&#125;&#125;{{savetarget=[[@{selected|pettar}[Petrification]]]| Polymorph,Polymorph&#125;&#125;{{savetarget=[[@{selected|poltar}[Polymorph]]]| Breath Weapon,Breath Weapon&#125;&#125;{{savetarget=[[@{selected|breathtar}[Breath]]]| Spell,Spell&#125;&#125;{{savetarget=[[@{selected|spetar}[Spell]]]}}}{{saveroll=[[1d20cs20cf1[Roll]+(?{2/2 - Saving Throw, situational modifier|+0}[Modifier])]]}} Note: purposely are omitted the 'specific' modifiers (poimod, parmod, etc...) from the calculation because those modifier may not be included in some specific situations (Reaction Adj. for a high DEX or Magic Adj. for a high WIS should not be used against a mind-affecting spell and a fireball respectively). Racial adj. should be included in the target field (poitar, partar, ...) directly on the character sheet since they are always used. Feel free to modify the above macro to suits your needs. To learn more about every available rolltemplates and their use, you may want to read the documentation here: <a href="https://wiki.roll20.net/ADnD_2nd_Edition_Character_sheet" rel="nofollow">https://wiki.roll20.net/ADnD_2nd_Edition_Character_sheet</a>