View Single Post
risner
Senior Member
Volunteer Data File Contributor
 
Join Date: Jun 2010
Posts: 623

Old August 24th, 2010, 11:04 PM
I have most of this done via a feat that provides an additional feat.

It messes up the experience.

It seems tXP isn't a a changeable item. Is there a better way to reduce LA on a race without this trouble? The XP appeared to be auto corrected, but it is different. It is coming in at 27,000 xp for a Centaur (4HD 2LA) instead of the correct 24,000 xp to buy it off.

Anyone have any idea how to fix this issue?

Code:
var rHD as number
var rLA as number
var UALA as number
var reduced as number
var xpcost as number

~ Add to feats allowed
      herofield[tFeats].value += 1

foreach pick in hero from BaseRace
  if (eachpick.field[rHitDice].value > 0) then
    rHD += eachpick.field[rHitDice].value
    rLA += eachpick.field[cLevelAdj].value
  endif
nexteach

rLA -= rHD

UALA = rLA * 3
if (herofield[tLevel].value >= UALA) then
     reduced = 1
     xpcost = (rLA + rHD + UALA - 1) * 1000
endif

debug "UALA"
debug UALA
debug "rLA"
debug rLA
debug "Levels"
debug herofield[tLevel].value

if (rLA = 2) then
     debug "Testing rLA = 2"
     UALA = rLA * 3 + (rLA - 1) * 3
     debug "UALA 2nd round"
     debug UALA
     if (herofield[tLevel].value >= UALA) then
          reduced += 1
          xpcost += (rLA - 1 + rHD + UALA - 1) * 1000
     endif
endif

if (rLA = 3) then
     UALA = rLA * 3 + (rLA - 1) * 3 + (rLA - 2) * 3
     if (herofield[tLevel].value >= UALA) then
           reduced += 1
           xpcost += (rLA - 2 + rHD + UALA - 1) * 1000
     endif
endif

debug "XP Cost"
debug xpcost
debug "Reduced LA"
debug reduced

~ Reduce Experience
      herofield[tXP].value -= xpcost

~ Reduce Level Adjustment
      herofield[tLevelAdj].value -= reduced
risner is offline   #1 Reply With Quote