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

Old May 2nd, 2008, 01:10 PM
Here is the 1st script in the skeleton template (click the Eval Scripts button within the template to find these):

Code:
      ~ We aren't allowed any skills or feats
      perform hero.assign[Hero.NoSkills]
      perform hero.assign[Hero.NoFeats]

      ~ Many races and classes bootstrap feats, so go through them disabling
      ~ them all - except Improved Initiative and Simple Weapon Proficiency!
      foreach pick in hero where "component.BaseFeat & !thingid.fImpInit & !thingid.fWepSimple"
        perform each.assign[Helper.FtDisable]
        nexteach

      ~ Disable all special abilities apart from the ones that we bootstrap
      foreach pick in hero where "component.BaseSpec & !component.BaseFeat & !thingid.xDamRdB & !thingid.xImmCold & !thingid.rDarkVis"
        perform each.assign[Helper.FtDisable]
        nexteach

      ~ Go over all weapons, deleting stuff like weapon focus and
      ~ improved natural attack from them - these tags are often just
      ~ bootstrapped directly onto the weapon
      foreach pick in hero where "component.BaseWep"
        perform each.delete[Broadcast.?]
        nexteach
and the 2nd:
Code:
      var result as number

      ~ bonus to natural armor based on size
      var bonus as number
      if (hero.tagis[Size.Small] <> 0) then
        bonus = 1
      elseif (hero.tagis[Size.Medium] + hero.tagis[Size.Large] <> 0) then
        bonus = 2
      elseif (hero.tagis[Size.Huge] <> 0) then
        bonus = 3
      elseif (hero.tagis[Size.Gargantuan] <> 0) then
        bonus = 6
      elseif (hero.tagis[Size.Colossal] <> 0) then
        bonus = 10
        endif
      hero.child[mNatural].field[Bonus].value = bonus

      ~ We don't have INT or CON scores
      result = hero.child[aCON].assign[Helper.NoScore]
      result = hero.child[aINT].assign[Helper.NoScore]

      ~ Force our Wisdom to 10 and our Charisma to 1
      hero.child[aWIS].field[aNormForce].value = 10
      hero.child[aCHA].field[aNormForce].value = 1

      ~ Set up our damage reduction
      var damage as number
      #applydr[xDamRdB, 5]

      ~ Get the number of HD and use it to calculate our base attack bonus
      ~ and saves
      var hd as number
      hd = maximum(1, hero.tagcount[Hero.HitDice])
      hero.child[Attack].field[tAtkBase].value = round(hd / 2, 0, -1)
      hero.child[vFort].field[vBase].value = round(hd / 3, 0, -1)
      hero.child[vRef].field[vBase].value = round(hd / 3, 0, -1)
      hero.child[vWill].field[vBase].value = round(hd / 2, 0, -1) + 2

      ~ Use the number of HD to calculate CR
      var cr as number
      if (hd <= 1) then
        cr = -1
      elseif (hd <= 3) then
        cr = 1
      elseif (hd <= 5) then
        cr = 2
      elseif (hd <= 7) then
        cr = 3
      elseif (hd <= 9) then
        cr = 4
      elseif (hd <= 11) then
        cr = 5
      elseif (hd <= 14) then
        cr = 6
      elseif (hd <= 17) then
        cr = 7
      else
        cr = 9
        endif
      hero.child[Totals].field[tCR].value = cr
What you want to do is go through each of the scripts. Look at the comments (starting with ~), and that will tell you what the code after that does. For example, the CHA = 1 line is about halfway through the second script, so just find that line and delete it (or, for safety, so you don't delete something you didn't realize was essential, put a ~ at the beginning of the line of code to comment it out - that way you only have to delete the comment if you make a mistake).

P.S. Iron Wind metals may still sell Ral Partha's Grateful Undead miniatures from the 80's, if you wanted figures for your game.
Mathias is online now   #1 Reply With Quote