Lone Wolf Development Forums

Lone Wolf Development Forums (http://forums.wolflair.com/index.php)
-   HL - Pathfinder Roleplaying Game (http://forums.wolflair.com/forumdisplay.php?f=62)
-   -   Trouble with CR-based scaling in custom templates. (http://forums.wolflair.com/showthread.php?t=64942)

ultodrago October 24th, 2020 11:20 AM

Trouble with CR-based scaling in custom templates.
So I have a template that features the following CR-scaling feature that I'm having a headache trying to get working right.

Should a creature have X HD, they get Y+CR Spell Resistance. The issue is that, like Celestial, the template can change the CR based on the HD as well, and I feel like that might be contributing to my issues.

However, I use the following code to calculate everything, but the SR never gets properly applied to the sheet. The values on each respective field is correct when debugged, but it doesn't actually show up on the statblock when at the Final Phase or later. If set to run before the Final Phase, the SR doesn't properly calculate.


      ~ Set up the amount of damage we resist
      var damage as number
      var nac as number
      if (herofield[tHitDice].value < 5) then
        damage = 3
      elseif (herofield[tHitDice].value < 11) then
        damage = 5
      elseif (herofield[tHitDice].value < 16) then
        damage = 7
        damage = 10
      if (herofield[tHitDice].value >= 10) then
        nac = 2
        nac = 0

      var essar as number
      essar = damage + herofield[tCR].value
      debug essar
      hero.child[xSplRs].field[abValue].value = essar
      hero.child[ArmorClass].field[tACNatural].value += nac
      hero.child[xDamRsCold].field[abValue].value = damage
      hero.child[xDamRsElec].field[abValue].value = damage

      ~ Set up our damage reduction
      hero.child[xDamRdGood].field[abValue].value = damage

Is there any way to get this to work as intended (where the changed values, when the correct numbers, are applied to the sheet) or is this a limitation of how Hero Lab does things?

Mathias October 29th, 2020 10:01 AM

Let me walk you through the steps to find this information for yourself - so the troublesome input is herofield[tCR].value, right?

In the Develop menu, make sure the debugging tools are enabled at the very top, and then near the bottom of the list, choose "Floating Info Windows" and "Show Selection Field Histories". Then since this is a herofield, filter for "Hero", and you'll see "Hero (Totals)" - choose that and click OK. In the info window that pops up, filter the list to "tCR", and look at when that changes - specifically, when is the very last change to it?

Once you have that information, you know that you need to put this script after that last change in order for it to be able to look up the CR and use that to calculate the right SR.

All times are GMT -8. The time now is 07:47 AM.

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