Okay, I have Heavy Armor Optimization kind of working -- it decreases the armor check penalty, and increases the armor bonus, both by 1 -- except for two things.
First, here's the Eval Scripts code, which I've got running at Post-Level (users) at 10500:
Code:
~ If we're disabled, do nothing
doneif (tagis[Helper.FtDisable] <> 0)
~ if we haven't equipped heavy armor, we're done
doneif (hero.tagis[Hero.EquipArmor] < 1)
~ must fix
~Improve the armor check penalty and armor bonus stats of our armors.
foreach pick in hero where "EquipType.Armor"
eachpick.field[mAC].value += 1
eachpick.field[mArmorChk].value += 1
nexteach
So, the problems:
1) It does it for all armor, not just heavy armor. How do I identify if it's heavy armor in the second doneif and the foreach?
2) It's also adding to natural armor! I noticed it was adding two to AC, instead of 1; but on the Armor tab, it shows the armor values increased by 1. So I opened the Pick Fields floating window for Armor, and scrolled through it. Lo and behold -- tACNatural is getting a value of +1. So somehow EquipType.Armor is registering as a pick for natural armor in the foreach statement.
It just occurred to me, though -- if I can fix problem #1, that should also take care of #2. So, maybe I only need one clue this time.
(Plus, once I have it fixed, it should be simple to get Greater Heavy Armor Optimization to work. Two feats for one answer -- what a deal!)
Thanks,
-Bob