For timing use like "First, 1,000" or lower.
Code:
~ If we're disabled, do nothing
doneif (tagis[Helper.FtDisable] <> 0)
~ Assign the piercing weapon tag so scimitars work with Duelist abilities.
foreach pick in hero from BaseWep where "IsWeapon.wScimitar"
perform eachpick.assign[wType.P]
perform eachpick.assign[Helper.TwoWpLight]
nexteach
That should make HL treat the off-hand scimitar as a light weapon. I think your issue was that while you made it a Light weapon you never removed the original one-hand tag. Also your way would make the Scimitar a light weapon for purpose of Power Attack and other feats.
It calculates the bonuses on two hit "correctly" my offhand weapon is not a scimitar, only when the offhand is not a scimitar then there should be no bonuses at all (so that is wrong too). I figure I need a doneif statement there for when offhand is not scimitar.
I have this bit of script to "solve" the first problem but it does not compile: doneif (hero.tagis[Hero.EquipOff.IsWeapon.wScimitar] = 0)
Also, when the off hand is a scimitar then I get +17 to hit instead of +10 (i.e. +12 normal, -2 penalty for light offhand)
Here is my entire script For 2 handed dervish dance. its has oversized twf, and dervish dance as pre reqs. the second part is basically the dervish dance script with a slight modification. I think that is why I am getting the strange result on the offhand, but dont know exactly why (or maybe i am wrong). at the begining of this thread is the script for oversized TWF which I got from Pezmerga
First, 1000
~ If we're disabled, do nothing
doneif (tagis[Helper.FtDisable] <> 0)
~ If we have a shield equipped or another weapon in our off hand, do nothing, we are done.
doneif (hero.tagis[Hero.EquipShld] <> 0)
~ If we do not have a simitar in off hand
doneif (hero.tagis[Hero.EquipOff] = 0)
~ Assign the piercing weapon tag and light weapon tag so scimitars work with Duelist abilities.
foreach pick in hero from BaseWep where "IsWeapon.wScimitar"
perform eachpick.assign[wType.P]
perform eachpick.assign[wClass.Light]
nexteach
Post attributes, 10000
~ If we're disabled, do nothing
doneif (tagis[Helper.FtDisable] <> 0)
~ If we have a shield equipped or another weapon in our off hand, do nothing, we are done.
doneif (hero.tagis[Hero.EquipShld] <> 0)
~ If we do not have a simitar in off hand
doneif (hero.tagis[Hero.EquipOff] = 0)
~figure out the difference between our DEX and STR modifiers (minimum 0, since the feat says "can", not "must")
field[abValue].value += maximum(#attrmod[aDEX] - #attrmod[aSTR], 0)
~ Otherwise, go through to all scimitars on the hero and replace their Strength bonuses to Hit and Damage with Dex bonuses... Also apply the piercing weapon tag so we count for precise strike.
foreach pick in hero from BaseWep where "IsWeapon.wScimitar"
eachpick.field[wAttBonus].value += field[abValue].value
eachpick.field[wDamBonus].value += field[abValue].value
nexteach