View Single Post
Mathias
Senior Member
Lone Wolf Staff
 
Join Date: May 2005
Posts: 13,213

Old November 10th, 2018, 08:32 AM
Let's start by identifying how the spellcasting ability score is stored on a class. In the Develop menu, make sure "Enable Data File Debugging" at the top is checked.


Now, add a level of a spellcasting class (I'll use Cleric in my example), and set the spellcasting score for that class to some recognizable value (I used 16).


Next, in the develop menu, at the bottom, choose floating info windows...show selection fields. In the list of picks to choose from, filter for Cleric, and you'll see two options named Cleric - one has the Id cCleric, and the other is cHelpClr - pick the cHelpClr.


Now, filter that list of fields by entering 16, since that's your wisdom - you'll find that that number is stored in a specific field - cSplAttVal. So that means you don't need to worry about figuring out what the ability score is - you just need to add +2 to the stored value on the class.


Now to determine when you should change the value. Repeat the same Develop steps that you used to find fields, but instead choose Show Selection Field Histories. Filter that list for "cSplAtVal", and you'll see that it was only changed once - at Post-attributes/0. So that's when it was set to 16, meaning you want to run your script after that, when you add +2.



Now, let's look up when that's being used, to figure out the other end of our timing window. This value is used to calculate DC, so filter for DC in the field histories, and you'll find the cSplSaveDC field - that's calculated at Final/10000.


To figure out when the bonus spells are being calculated, go through the floating info windows steps again, but this time you're looking for "Show selection tasks" - filter that for Spell. You'll see that there's a script named Calc Spells Available that runs at Post-attributes/10000.


So, now you've got your window for this change - after Post-Attributes/0, and before Post-Attributes/10000. I'd use Post-Attributes/5000.
Mathias is offline   #2 Reply With Quote