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

Multiple conditions for attacks

1381635117

Edited 1381635647
Kryx
Pro
Sheet Author
API Scripter
Hi, I'm playing PF and am trying to capture all the conditions of an attack so I don't have to think as much on the fly which will speed up combat. Right now I'm attacking with a earth breaker (2d6 like greatsword) and am trying to capture several events: Rage (+2 str = +2 atk/dmg) Power Attack (-1 atk, +2 dmg) Charge (+2 atk) Right now I'd just be using different macros with possible combinations of each situation, but that's 7+ macros just for these conditions.. Here is the default macro: [[1d20+6]] vs AC || [[2d6+6]] B/S Dmg With Rage: [[1d20+6+2]] vs AC || [[2d6+6+2]] B/S Dmg With Power attack: [[1d20+6-1]] vs AC || [[2d6+6+2+3]] B/S Dmg I could do this with 5 queries per click, but that is a bad way to handle it (especially if adapted to nat attack it becomes 10 queries[rage is required]) This will just become crazy when I start to pounce with my natural attacks (macro below for that one guy who stumbles upon this and wants it): Claw1 [[1d20+6+2]] vs AC || [[d6+4+2]] B/S Dmg Claw2 [[1d20+6+2]] vs AC || [[d6+4+2]] B/S Dmg Bite [[1d20+6+2]] vs AC || [[d4+4+2]] B/P/S Dmg Any way to do this easily? I know JS if that helps at all.. I've seen several posts asking for a way to set a query to a variable to reuse, but that doesn't seem possible.
1381636602

Edited 1381637185
Gauss
Forum Champion
How I typically handle this: Attribute values: BAB 1 / blank Str 4 / 18 Rage 2 / 4 PA 1 / 3 Note: I am assuming you are using an Earthbreaker two handed (thus have 1.5x strength value and Power Attack (PA) is -1attack/+3damage). Note2: @{name} = @{charactersheet|name} if used in a Macro rather than an Ability) Attack [[ 1d20 +@{BAB} +@{STR} +@{Rage}*?{Rage|0} -@{PA}*?{PA|0} +?{Modifiers|0} ]] Damage [[ 2d6 +floor( ( @{STR} +@{Rage}*?{Rage|0} ) *1.5 ) +@{PA|max}*?{PA|0} +?{Modifiers|0} ]] I added extra spaces around the floor function so it is easier to understand. They are not necessary. Now, this is still 6 querries per click (assuming Attack/damage is one macro). The ?{Rage|0} and ?{PA|0} queries are switches. "1" = on, "0" = off. If you rage and use Power Attack more often than not I suggest switching the default values to "1". The ?{Modifiers|0} query just needs you to input a value if you are charging or whatnot. If you do not want to make any changes to the macro just hit enter a repeatedly to get through the queries. Your natural attacks are basically the same. - Gauss
1381638011

Edited 1381638049
Kryx
Pro
Sheet Author
API Scripter
Thanks for the tips, they're really good. I really wish queries could be saved as a var - that would be super helpful. My attribute values (as a novice - yours could be better): BAB 1 / blank StrMod 4 / blank Rage 2 / blank PAHit 1 / blank PADmg 2 / blank (default is 2 for my natural attacks, I multiply by 1.5 for 2handed as is the case below) Here is the dirty macro (with some labeling): [[ d20 + @{Zev|BAB}[BAB] + @{Zev|StrMod}[str] + @{Zev|Rage}*?{Rage|0}[rage] - @{Zev|PAHit}*?{PA|0}[PA] +?{AtkMods|0} ]]vs AC || [[ 2d6+@{Zev|StrMod}*1.5[str] + @{Zev|Rage}*1.5*?{Rage|0}[rage] + @{Zev|PADmg}*1.5*?{PA|0}[PA] + ?{DmgMods|0} ]] B/S Dmg It'll begrudgingly work, but the perfectionist inside me will die a bit every time I have to click through 6 queries. :P I may just create multiple macros and have each one have mods for special cases like charge - it's much less work in game.
1381639478

Edited 1381639520
Gauss
Forum Champion
Why do you need to 'click' 6 queries? Isn't Enter faster? Anyhow, I suggest combining PA hit and damage by putting them in the same Attribute. Itll save you on attributes. How I would lay things out: BAB 1 / blank StrMod 4 / 18 (or blank, up to you) Rage 2 / blank PA 1 / blank Then, in your damage macro you can have PA as: PA*1 (offhand weapon or secondary natural attack) PA*2 (primary weapon or natural attack) PA*3 (2-handed weapon or lone natural attack) Also, at some point your strength modifier will be an odd value (+5 for example). If you want, send me a Join link and I can come take a look at your macros if they are in a character sheet. If they arent, I suggest putting them in one. - Gauss
1381645914

Edited 1381648228
Kryx
Pro
Sheet Author
API Scripter
Gauss said: Why do you need to 'click' 6 queries? Isn't Enter faster? I can click my Weapon-Attack-Rage macro without thinking too much. Whereas if I click the generic macro I have to think about rage twice & PA twice (also additional mods, but that's in all scenarios). If I could save queries to some kind of variable like in programming then the generic one is a no brainer. Also having queries with checkmarks instead of iterative boolean prompts would also massively simplify it, but alas. Gauss said: Anyhow, I suggest combining PA hit and damage by putting them in the same Attribute. Itll save you on attributes. How I would lay things out: BAB 1 / blank StrMod 4 / 18 (or blank, up to you) Rage 2 / blank PA 1 / blank Then, in your damage macro you can have PA as: PA*1 (offhand weapon or secondary natural attack) PA*2 (primary weapon or natural attack) PA*3 (2-handed weapon or lone natural attack Perfect - great suggestion Gauss said: Also, at some point your strength modifier will be an odd value (+5 for example). If you want, send me a Join link and I can come take a look at your macros if they are in a character sheet. If they arent, I suggest putting them in one. Ya, I'll have to do some flooring - I assume I can use floor(x+x). Also nice suggestion to put them in the diary/character sheet thing. Thanks for the offer to directly help - I'm a bit busy hopping between other things, but I'll be sure to follow up if I need some help. Thanks for being so thorough!
1381647011

Edited 1381647048
Gauss
Forum Champion
Here are a couple ideas: If you have spare bars on your token you can use those in place of a query. That way, you can set the value in the bar and your macro can use that. The way to use that is: @{selected|bar3} or @{selected|bar3|max} You can use one bar for both rage and PA by using the regular for rage and the max for PA. Example: Attack [[ 1d20 +@{BAB} +@{STR} +@{Rage}* @{selected|bar3} -@{PA}* @ {selected|bar3|max} +?{Modifiers|0} ]] Damage [[ 2d6 +floor( ( @{STR} +@{Rage}* @{selected|bar3} ) *1.5 ) +@{PA|max}* @{selected|bar3|max} +?{Modifiers|0} ]] Alternately, you can use a single attribute as a switch. Holding down the Alt key while double clicking on your token will bring up the associated character sheet. You can quickly change the values without needing to edit the sheet. - Gauss
1381649320
Kryx
Pro
Sheet Author
API Scripter
More great suggestions. Unfortunately my 3 bars are full of HP, AC(seems strange, maybe could talk DM to move it to attributes), and Rages/day(though I coooould store this elsewhere). Holding alt and double clicking seems to bring up something like this: <a href="http://help.roll20.net/images/TokenSS2.jpg" rel="nofollow">http://help.roll20.net/images/TokenSS2.jpg</a> Nothing like this: <a href="http://i1117.photobucket.com/albums/k597/amonsbucket/Playing-Harn-in-Roll20.jpg" rel="nofollow">http://i1117.photobucket.com/albums/k597/amonsbucket/Playing-Harn-in-Roll20.jpg</a> Not quite sure how to set that up - I tried to setup a test campaign, but that doesn't seem to give me more when I'm GM.
1381650339

Edited 1381650389
Gauss
Forum Champion
Go to the field labeled "Represents Character" and set the field to the desired character sheet. - Gauss