Lone Wolf Development Forums

Lone Wolf Development Forums (http://forums.wolflair.com/index.php)
-   HL - D&D 5th Edition SRD (http://forums.wolflair.com/forumdisplay.php?f=89)
-   -   Abjuration Arcane Ward (http://forums.wolflair.com/showthread.php?t=67218)

Provos July 10th, 2022 01:00 PM

Abjuration Arcane Ward
 
Has anyone set up a way to easily track the School of Abjuration Arcane ward?

RavenX July 16th, 2022 11:54 PM

Set it up as a tracker ability, use an eval script to do the calculations for the trkMax field.
Bootstrap the tracker to the ability if needed.

You can store the wizard level in an abValue field, then use a script to double it.
Store the int mod as abValue2, then in a script have abValue3 add the two values together and set it equal to trkMax on your tracker.

You might need to play around a little with the script coding for timing but it should be pretty straightforward to code it.

RavenX July 17th, 2022 03:47 PM

You will have to figure out the timing on this to get it calculating correctly, I would start in Final 10000 to see if that picks off all the numbers correctly. Once its working you can just bootstrap the tracker to the ability.

These lines of code should be sufficient for a tracker to autocalculate what you need.

Code:

~our hit points are twice our wizard level plus int mod
field[trkMax].value += hero.childfound[cHelpWiz].field[cTotalLev].value * 2
field[trkMax].value += hero.child[aINT].field[aBonus].value

Or just build it as a class special.
Check the Show in Tracked Resources? checkbox to add the tracker, and do it with the abValue fields.

The advantage of doing it this way is that the abValue fields can be accessed from other scripts. So say you have an ability that further modifies this one which the wizard picks up later on, you can modify the abValue fields to deal with the add ons.
Eval Script 1
Code:

~our hit points are twice our wizard level plus int mod
~get our wizard level
field[abValue].value += hero.childfound[cHelpWiz].field[cTotalLev].value
~double our wizard level for hit points (field[abValue2].value stores the multiplier)
field[abValue].value *= field[abValue2].value
~get our intelligence modifier
field[abValue3].value += hero.child[aINT].field[aBonus].value

~sum our doubled wizard level with our int mod to get the total hit points calculated.
field[trkMax].value += field[abValue].value + field[abValue3].value

In the above code, the *= line will act as a multiplier. field[abValue2].value should be set equal to 2 initially. If another ability comes out that increases the multiplier later on, you can then script it to change that field.

Another advantage of doing it this way is that you can do each part in different scripts if needed too.

I'd do each line of code there as its own script, in progressively later timings so the script can be modified later on if needed. It would be 4 scripts long but that will allow you to access and change it if a new book ability does so later without having to recode the scripts.


All times are GMT -8. The time now is 10:18 PM.

Powered by vBulletin® - Copyright ©2000 - 2024, vBulletin Solutions, Inc.
wolflair.com copyright ©1998-2016 Lone Wolf Development, Inc. View our Privacy Policy here.