Patrick B. said: Kyle G. said: You could simplify the macro by using this instead. It will also fix the error you had for calculating the stealth modifier /w gm The @{selected|token_name} attempts to sneak past @{target|token_name}, rolling a(n) [[?{Advantage / Disadvantage|Neither,1d20| Advantage,2d20k1|Disadvantage,2d20kl}+[[@{target|npcd_dex_mod}*{1@{target|npc_stealth}0,0}=10+0@{target|npc_stealth}]]]] vs @{target|token_name}'s passive perception score of [[10+[[@{target|npcd_wis_mod}*{1@{target|npc_perception}0,0}=10+0@{target|npc_perception}]]]]. I appreciate the simpler code. (Kind of wish there was a bit more documentation on the syntax for macros). I am still getting the miscalculation. A char with a stealth of 7 and a dex mod of 3 is still managing to return a result of 2 on a disadvantaged roll. What precisely does the {1@{ mean? Why are we putting an =10+0@{target|npc_stealth}. (Should that be selected? Still why this other side of the equation?). What specifically does the 0,0 do? Yes, you are right, that should be selected, not target. In regards to the [[@{selected|npcd_dex_mod}*{1@{selected|npc_stealth}0,0}=10+0@{selected|npc_stealth}]. I don't know how it works exactly it was some advice given out by Silvrye that I have used successfully in my macros. But what it does is try to use the selected NPC's stealth modifier, if the stealth modifier is not set or blank, it will default to using the dexterity modifier instead.