Roll20 uses cookies to improve your experience on our site. Cookies enable you to enjoy certain features, social sharing functionality, and tailor message and display ads to your interests on our site and others. They also help us understand how our site is being used. By continuing to use our site, you consent to our use of cookies. Update your cookie preferences .
×

Automatically calculate resistance?

Hi all, I've been searching around for a bit, and it may be I just don't know what to look for, but: Can I/how do I make it such that a specific resistance (cold, slashing), is automatically applied? Thanks!
1499242527
Ziechael
Forum Champion
Sheet Author
API Scripter
It would depend entirely on the system and mechanics of the resistance. It would also likely need an overhaul of a sheets built in macros or a GM willing to use universal and therefore customisable macros. While doable in theory it would likely be a LOT more work than simple mental arithmetic. If the issue instead is remembering to factor in resistance when applying damage I would recommend having an attribute that stores the resistance types and amending attack macros to whisper that info to the DM and/or target. For my 3.5e game for example I have the following for attack macros: !power {{ --format|attack --emote|@{selected|token_name} attacks @{target|token_name} --charid|@{selected|character_id} --name|@{selected|weapon1name} --leftsub|@{selected|weapon1type} --rightsub|Crit: x@{selected|weapon1critmult} ?{Attack Type?| Standard, --Standard Attack:|[[ [$att] 1d20 + @{selected|bab} + @{selected|size} + @{selected|weapon1stat} + @{selected|weapon1enh} + @{selected|bar3} + @{selected|weapon1focus} + @{Buff|attbuff} + (?{Flank?|No,0|Yes,1}*2) ]] vs [[ [$tac] @{target|armorclass} +0d0 ]] AC --?? $att.base == 1 ?? !fumble|[[ 1t[misstable] ]] ^^ **Fumble Check:** [[ [$fbl] 1d20 ]] --?? $att.base == 1 AND $fbl.base == 1 ?? !fumbled|[[ 1t[Fumble] ]] --?? $att.base <> 1 AND $att.total < $tac.total ?? !miss|[[ 1t[misstable] ]] --?? $att.base <> 1 AND $att.total >= $tac.total OR $att.base == 20 ?? !hit|[[ 1t[hittable] ]] ^^ [[ 1@{selected|weapon1damage} + @{selected|bar2} + @{selected|weapon1damagestat} + @{selected|weapon1enh} + @{selected|weapon1specialize} + @{Buff|dambuff} ]] @{selected|weapon1type} damage! --?? $att.base >= @{selected|weapon1critmin} ?? Critical Threat:| [[ [$crit] 1d20 + @{selected|bab} + @{selected|bar3} + @{selected|size} + @{selected|weapon1stat} + @{selected|weapon1enh} + @{selected|weapon1focus} + (?{Flank?|No,0|Yes,1}*2) + @{Buff|attbuff} ]] --?? $att.base >= @{selected|weapon1critmin} AND $crit.total >= $tac.total ?? Critical Hit:|Additional [[ [[ @{selected|weapon1critmult} -1 ]]@{selected|weapon1damage} ]] @{selected|weapon1type} damage! | BAB2, --BAB2:|[[ [$att] 1d20 + @{selected|bab2} + @{selected|size} + @{selected|weapon1stat} + @{selected|weapon1enh} + @{selected|bar3} + @{selected|weapon1focus} + @{Buff|attbuff} + (?{Flank?|No,0|Yes,1}*2) ]] vs [[ [$tac] @{target|armorclass} +0d0 ]] AC --?? $att.base == 1 ?? !fumble|[[ 1t[misstable] ]] ^^ **Fumble Check:** [[ [$fbl] 1d20 ]] --?? $att.base == 1 AND $fbl.base == 1 ?? !fumbled|[[ 1t[Fumble] ]] --?? $att.base <> 1 AND $att.total < $tac.total ?? !miss|[[ 1t[misstable] ]] --?? $att.base <> 1 AND $att.total >= $tac.total OR $att.base == 20 ?? !hit|[[ 1t[hittable] ]] ^^ [[ 1@{selected|weapon1damage} + @{selected|weapon1damagestat} + @{selected|weapon1enh} + @{selected|bar2} + @{selected|weapon1specialize} + @{Buff|dambuff} ]] @{selected|weapon1type} damage! --?? $att.base >= @{selected|weapon1critmin} ?? Critical Threat:| [[ [$crit] 1d20 + @{selected|bab2} + @{selected|size} + @{selected|weapon1stat} + @{selected|weapon1enh} + @{selected|bar3} + @{selected|weapon1focus} + (?{Flank?|No,0|Yes,1}*2) + @{Buff|attbuff} ]] --?? $att.base >= @{selected|weapon1critmin} AND $crit.total >= $tac.total ?? Critical Hit:|Additional [[ [[ @{selected|weapon1critmult} -1 ]]@{selected|weapon1damage} ]] @{selected|weapon1type} damage! } --?? $att.base == 1 AND $fbl.base == 1 ?? soundfx1|_play,delay:2|critmiss --?? $att.base >= @{selected|weapon1critmin} AND $crit.total >= $tac.total ?? soundfx2|_play,delay:2|Critical Hit --Notes|@{selected|weapon1specialproperties} }} !power --name|SR: @{target|spellresistance} DR: @{target|damagereduction} --whisper|GM !playsound Sword Ok, most of the above is superfluous to this example but by always whispering the targets spell resistance and damage reduction to myself (as the GM) I can make sure that I always apply this as needed.
Thank you! I was hoping to save my gm some time and effort, but whispering them each time sounds like it would be much, much more simple. Appreciate the response!
1499572692

Edited 1499572727
The Aaron's ApplyChange API Script might be worth looking into. (API access requires a Game's Creator to have an active Pro subscription.)