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 .
×
Create a free account

Using the roll result on another line in a macro?

Hi,      I want to re-use the dice rolled number in the sub-sequent lines of a macro. Can this be done? I want to use the rolled number, check the difference with the target number and ideally, determine if the difference is 1-5: it's a light success, 6-10, medium, 11-15: heavy and 16+: critical success. I currently have this macro: Melee Attack [[{1d20 + ?{Modifier?|0}}<@{selected|Melee}]] successes hits [[1t[CharacterHitLoc]]] Cheers! Fish
1489897539

Edited 1489897846
Silvyre
Forum Champion
Unfortunately, it is not possible to reference the results of a roll without the assistance of an API Script . (API access requires a Game's Creator to have an active Pro subscription.) You could use  Roll Highlighting to signify the degrees of success. For example: [[ {1d20cf<[[{@{selected|Melee} - ?{Modifier?|0} + 5, 0}kh1]]cf>[[{@{selected|Melee} - ?{Modifier?} + 16, 0}kh1]]cs>[[{@{selected|Melee} - ?{Modifier?} + 11, 0}kh1]] + ?{Modifier?}}<@{selected|Melee} ]] This macro will highlight red on a 'light success'; yellow on a 'medium success'; green on a 'heavy success'; blue on a 'critical success'.
1489957507

Edited 1489957583
Ohh, will give this a try later tonight once the kids are in bed. Are the colors configurable? Edit: Thanks a million by the way! This is awesome. Fish
1489966996

Edited 1489967046
Silvyre
Forum Champion
You're very welcome! David P. said: Are the colors configurable? Yellow (i.e. default/no highlighting), green, red and blue (i.e. both green and red roll highlighting) are the only colors available. The macro could be reworked to associate just about any range of roll results with any of the aforementioned colors.
1489970109

Edited 1489970335
Silvyre, would you mind quickly explaining how it works and why? The system we use (mutant chronicles) uses 1 as a crit and 20 as a fumble. You roll a 1d20 (let's say you'd roll a 4) vs your skill (in the case of fairly good skill, something like:16) 16 - 4: 12, or a heavy hit. I have a feeling something is inverted in the formula you gave me, since rolling a 1 is highlighted in red, when I would expect it blue. I tried using minuses instead of pluses, however, I don't think that would work as expected either. Since now, everything appears as a blue. Appreciate the help! Fish
1489975036
Silvyre
Forum Champion
David P. said: I have a feeling something is inverted in the formula you gave me I do too... Try this one: [[ {1d20cf>[[{@{selected|Melee} - (?{Modifier?|0}) - 5, 0}kh1]]cf<[[{@{selected|Melee} - (?{Modifier?}) - 16, 0}kh1]]cs<[[{@{selected|Melee} - (?{Modifier?}) - 11, 0}kh1]] + (?{Modifier?})}<@{selected|Melee} ]]
1489977687

Edited 1489977749
Wow. Nice! I might be pushing my luck quite a bit. But, I'm still discovering the bounderies of roll20! So, if instead of using my favorite butter knife as a melee weapon, I use a potato gun (a full auto one at that too!). For every bullet (ahem, potato) fired that fits: roundup(potatoes / 3), you'd roll for hit/misses. Eg: fire 7 bullets, you'd need to roll 3 d20, each behaving with the formula that you gave me. Getting the number of successes would be enough (no need to know: 1 hit, 1 miss, 1 hit; order is of no importance). Each roll would need to be tested, including the modifier, to the target number. If I substitute the 1d20 by: ?{How many d20?|1}d20 Would it behave like I think it would, or would there be some side effects? Cheers!!
1489988968

Edited 1490065665
Silvyre
Forum Champion
David P. said: For every bullet (ahem, potato) fired that fits: roundup(potatoes / 3), you'd roll for hit/misses. Eg: fire 7 bullets, you'd need to roll 3 d20, each behaving with the formula that you gave me. Getting the number of successes would be enough (no need to know: 1 hit, 1 miss, 1 hit; order is of no importance). Each roll would need to be tested, including the modifier, to the target number. If I substitute the 1d20 by: ?{How many d20?|1}d20 Would it behave like I think it would, or would there be some side effects? Replacing the 1d20 with [[ceil(?{Potatoes fired|7} / 3)]]d20 should work in that you'll get the proper number of successes. However, doing so would render the roll highlighting tricks we're using less useful. Using an Advanced Roll Query , it is possible to choose a number of d20's to roll as well as preserve roll highlighting: /r [[ {1d20cf>[[{@{selected|Melee} - (?{Modifier?|0}) - 5, 0}kh1]]cf<[[{@{selected|Melee} - (?{Modifier?}) - 16, 0}kh1]]cs<[[{@{selected|Melee} - (?{Modifier?}) - 11, 0}kh1]] + (?{Modifier?})}<@{selected|Melee} ]] ?{How many d20?|    1, |    2, + [[ {1d20cf>[[{@{selected|Melee} - (?{Modifier?}) - 5, 0}kh1]]cf<[[{@{selected|Melee} - (?{Modifier?}) - 16, 0}kh1]]cs<[[{@{selected|Melee} - (?{Modifier?}) - 11, 0}kh1]] + (?{Modifier?})}<@{selected|Melee} ]] |    3, + [[ {1d20cf>[[{@{selected|Melee} - (?{Modifier?}) - 5, 0}kh1]]cf<[[{@{selected|Melee} - (?{Modifier?}) - 16, 0}kh1]]cs<[[{@{selected|Melee} - (?{Modifier?}) - 11, 0}kh1]] + (?{Modifier?})}<@{selected|Melee} ]] + [[ {1d20cf>[[{@{selected|Melee} - (?{Modifier?}) - 5, 0}kh1]]cf<[[{@{selected|Melee} - (?{Modifier?}) - 16, 0}kh1]]cs<[[{@{selected|Melee} - (?{Modifier?}) - 11, 0}kh1]] + (?{Modifier?})}<@{selected|Melee} ]] |    4, + [[ {1d20cf>[[{@{selected|Melee} - (?{Modifier?}) - 5, 0}kh1]]cf<[[{@{selected|Melee} - (?{Modifier?}) - 16, 0}kh1]]cs<[[{@{selected|Melee} - (?{Modifier?}) - 11, 0}kh1]] + (?{Modifier?})}<@{selected|Melee} ]] + [[ {1d20cf>[[{@{selected|Melee} - (?{Modifier?}) - 5, 0}kh1]]cf<[[{@{selected|Melee} - (?{Modifier?}) - 16, 0}kh1]]cs<[[{@{selected|Melee} - (?{Modifier?}) - 11, 0}kh1]] + (?{Modifier?})}<@{selected|Melee} ]] + [[ {1d20cf>[[{@{selected|Melee} - (?{Modifier?}) - 5, 0}kh1]]cf<[[{@{selected|Melee} - (?{Modifier?}) - 16, 0}kh1]]cs<[[{@{selected|Melee} - (?{Modifier?}) - 11, 0}kh1]] + (?{Modifier?})}<@{selected|Melee} ]] |    5, + [[ {1d20cf>[[{@{selected|Melee} - (?{Modifier?}) - 5, 0}kh1]]cf<[[{@{selected|Melee} - (?{Modifier?}) - 16, 0}kh1]]cs<[[{@{selected|Melee} - (?{Modifier?}) - 11, 0}kh1]] + (?{Modifier?})}<@{selected|Melee} ]] + [[ {1d20cf>[[{@{selected|Melee} - (?{Modifier?}) - 5, 0}kh1]]cf<[[{@{selected|Melee} - (?{Modifier?}) - 16, 0}kh1]]cs<[[{@{selected|Melee} - (?{Modifier?}) - 11, 0}kh1]] + (?{Modifier?})}<@{selected|Melee} ]] + [[ {1d20cf>[[{@{selected|Melee} - (?{Modifier?}) - 5, 0}kh1]]cf<[[{@{selected|Melee} - (?{Modifier?}) - 16, 0}kh1]]cs<[[{@{selected|Melee} - (?{Modifier?}) - 11, 0}kh1]] + (?{Modifier?})}<@{selected|Melee} ]] + [[ {1d20cf>[[{@{selected|Melee} - (?{Modifier?}) - 5, 0}kh1]]cf<[[{@{selected|Melee} - (?{Modifier?}) - 16, 0}kh1]]cs<[[{@{selected|Melee} - (?{Modifier?}) - 11, 0}kh1]] + (?{Modifier?})}<@{selected|Melee} ]] |    6, + [[ {1d20cf>[[{@{selected|Melee} - (?{Modifier?}) - 5, 0}kh1]]cf<[[{@{selected|Melee} - (?{Modifier?}) - 16, 0}kh1]]cs<[[{@{selected|Melee} - (?{Modifier?}) - 11, 0}kh1]] + (?{Modifier?})}<@{selected|Melee} ]] + [[ {1d20cf>[[{@{selected|Melee} - (?{Modifier?}) - 5, 0}kh1]]cf<[[{@{selected|Melee} - (?{Modifier?}) - 16, 0}kh1]]cs<[[{@{selected|Melee} - (?{Modifier?}) - 11, 0}kh1]] + (?{Modifier?})}<@{selected|Melee} ]] + [[ {1d20cf>[[{@{selected|Melee} - (?{Modifier?}) - 5, 0}kh1]]cf<[[{@{selected|Melee} - (?{Modifier?}) - 16, 0}kh1]]cs<[[{@{selected|Melee} - (?{Modifier?}) - 11, 0}kh1]] + (?{Modifier?})}<@{selected|Melee} ]] + [[ {1d20cf>[[{@{selected|Melee} - (?{Modifier?}) - 5, 0}kh1]]cf<[[{@{selected|Melee} - (?{Modifier?}) - 16, 0}kh1]]cs<[[{@{selected|Melee} - (?{Modifier?}) - 11, 0}kh1]] + (?{Modifier?})}<@{selected|Melee} ]] + [[ {1d20cf>[[{@{selected|Melee} - (?{Modifier?}) - 5, 0}kh1]]cf<[[{@{selected|Melee} - (?{Modifier?}) - 16, 0}kh1]]cs<[[{@{selected|Melee} - (?{Modifier?}) - 11, 0}kh1]] + (?{Modifier?})}<@{selected|Melee} ]] |    7, + [[ {1d20cf>[[{@{selected|Melee} - (?{Modifier?}) - 5, 0}kh1]]cf<[[{@{selected|Melee} - (?{Modifier?}) - 16, 0}kh1]]cs<[[{@{selected|Melee} - (?{Modifier?}) - 11, 0}kh1]] + (?{Modifier?})}<@{selected|Melee} ]] + [[ {1d20cf>[[{@{selected|Melee} - (?{Modifier?}) - 5, 0}kh1]]cf<[[{@{selected|Melee} - (?{Modifier?}) - 16, 0}kh1]]cs<[[{@{selected|Melee} - (?{Modifier?}) - 11, 0}kh1]] + (?{Modifier?})}<@{selected|Melee} ]] + [[ {1d20cf>[[{@{selected|Melee} - (?{Modifier?}) - 5, 0}kh1]]cf<[[{@{selected|Melee} - (?{Modifier?}) - 16, 0}kh1]]cs<[[{@{selected|Melee} - (?{Modifier?}) - 11, 0}kh1]] + (?{Modifier?})}<@{selected|Melee} ]] + [[ {1d20cf>[[{@{selected|Melee} - (?{Modifier?}) - 5, 0}kh1]]cf<[[{@{selected|Melee} - (?{Modifier?}) - 16, 0}kh1]]cs<[[{@{selected|Melee} - (?{Modifier?}) - 11, 0}kh1]] + (?{Modifier?})}<@{selected|Melee} ]] + [[ {1d20cf>[[{@{selected|Melee} - (?{Modifier?}) - 5, 0}kh1]]cf<[[{@{selected|Melee} - (?{Modifier?}) - 16, 0}kh1]]cs<[[{@{selected|Melee} - (?{Modifier?}) - 11, 0}kh1]] + (?{Modifier?})}<@{selected|Melee} ]] + [[ {1d20cf>[[{@{selected|Melee} - (?{Modifier?}) - 5, 0}kh1]]cf<[[{@{selected|Melee} - (?{Modifier?}) - 16, 0}kh1]]cs<[[{@{selected|Melee} - (?{Modifier?}) - 11, 0}kh1]] + (?{Modifier?})}<@{selected|Melee} ]] }
Wow, that's really impressive. Thanks a bunch!! I think I'll stick the simpler version and will just ask players to roll X number of times as needed. Could I make it real generic and have a drop-down for skills (values in attributes section of character)? [[ {1d20cf>[[{@{selected|Melee} - (?{Modifier?|0}) - 5, 0}kh1]]cf<[[{@{selected|Melee} - (?{Modifier?}) - 16, 0}kh1]]cs<[[{@{selected|Melee} - (?{Modifier?}) - 11, 0}kh1]] + (?{Modifier?})}<@{selected|Melee} ]] But substitute @{selected|Melee} to something along these lines: ?{Which skill?|Handgun,@{selected|Handgun}|Melee,@{selected|Melee}|Rifle,@{selected|Rifle}} You've been a lot of help! Thanks a bunch!
1490065442

Edited 1490066297
Silvyre
Forum Champion
David P. said: Could I make it real generic and have a drop-down for skills (values in attributes section of character)? [[ {1d20cf>[[{@{selected|Melee} - (?{Modifier?|0}) - 5, 0}kh1]]cf<[[{@{selected|Melee} - (?{Modifier?}) - 16, 0}kh1]]cs<[[{@{selected|Melee} - (?{Modifier?}) - 11, 0}kh1]] + (?{Modifier?})}<@{selected|Melee} ]] But substitute @{selected|Melee} to something along these lines: ?{Which skill?|Handgun,@{selected|Handgun}|Melee,@{selected|Melee}|Rifle,@{selected|Rifle}} Yeah, absolutely, and that's how I'd do it. After making the first @{selected|Melee} substitution using the full Roll Query, you could make subsequent substitutions using the shorthand ?{Which skill?}. Here's another option which allows for the use of the ?{Potatoes fired|7} Roll Query while also preserving roll highlighting: /r [[ {1d20cf>[[{@{selected|Melee} - (?{Modifier?|0}) - 5, 0}kh1]]cf<[[{@{selected|Melee} - (?{Modifier?}) - 16, 0}kh1]]cs<[[{@{selected|Melee} - (?{Modifier?}) - 11, 0}kh1]] + (?{Modifier?})}<@{selected|Melee} ]] + [[ {[[{-1, ?{Potatoes fired|7}}>4]]d20cf>[[{@{selected|Melee} - (?{Modifier?}) - 5, 0}kh1]]cf<[[{@{selected|Melee} - (?{Modifier?}) - 16, 0}kh1]]cs<[[{@{selected|Melee} - (?{Modifier?}) - 11, 0}kh1]] + (?{Modifier?})}<@{selected|Melee} ]] + [[ {[[{-1, ?{Potatoes fired}}>7]]d20cf>[[{@{selected|Melee} - (?{Modifier?}) - 5, 0}kh1]]cf<[[{@{selected|Melee} - (?{Modifier?}) - 16, 0}kh1]]cs<[[{@{selected|Melee} - (?{Modifier?}) - 11, 0}kh1]] + (?{Modifier?})}<@{selected|Melee} ]] + [[ {[[{-1, ?{Potatoes fired}}>10]]d20cf>[[{@{selected|Melee} - (?{Modifier?}) - 5, 0}kh1]]cf<[[{@{selected|Melee} - (?{Modifier?}) - 16, 0}kh1]]cs<[[{@{selected|Melee} - (?{Modifier?}) - 11, 0}kh1]] + (?{Modifier?})}<@{selected|Melee} ]] + [[ {[[{-1, ?{Potatoes fired}}>13]]d20cf>[[{@{selected|Melee} - (?{Modifier?}) - 5, 0}kh1]]cf<[[{@{selected|Melee} - (?{Modifier?}) - 16, 0}kh1]]cs<[[{@{selected|Melee} - (?{Modifier?}) - 11, 0}kh1]] + (?{Modifier?})}<@{selected|Melee} ]] + [[ {[[{-1, ?{Potatoes fired}}>17]]d20cf>[[{@{selected|Melee} - (?{Modifier?}) - 5, 0}kh1]]cf<[[{@{selected|Melee} - (?{Modifier?}) - 16, 0}kh1]]cs<[[{@{selected|Melee} - (?{Modifier?}) - 11, 0}kh1]] + (?{Modifier?})}<@{selected|Melee} ]] + [[ {[[{-1, ?{Potatoes fired}}>20]]d20cf>[[{@{selected|Melee} - (?{Modifier?}) - 5, 0}kh1]]cf<[[{@{selected|Melee} - (?{Modifier?}) - 16, 0}kh1]]cs<[[{@{selected|Melee} - (?{Modifier?}) - 11, 0}kh1]] + (?{Modifier?})}<@{selected|Melee} ]]