PDA

View Full Version : Help with Racial Special


Maidhc O Casain
June 2nd, 2010, 07:35 AM
I'm creating a race that adds 10' to base movement when lightly encumbered and not carrying anything in it's hands (the race drops to all fours to gain this extra 10').

I've got most of it working via translating the Barbarian's Fast Movement from a Class to a Racial, and I was able to figure out the test for Light/Medium encumbrance and change it to just Light. But I can't figure out how set the condition that nothing be equipped in the hands (basically, no weapons).

I tried looking at the Monk's Unarmed Strike but couldn't see anything that jumped out as such a test - a failure of my own and due to inexperience, I'm sure.

Mathias
June 2nd, 2010, 09:08 AM
In the Develop menu, make sure that "Enable Data File Debugging" at the top is checked. Now, go to the bottom of that menu, to "Floating Info Windows", and select "Show Hero Tags". Now purchase a few weapons and shields (both bucklers and larger shields) for the character.

Try equipping those weapons/shields in various combinations.

You'll find that if the hero's main hand is occupied, the Hero.EquipMain tag is present. If the hero's off-hand is occupied, the Hero.EquipOff tag is present. If a shield is equipped, the Hero.EquipShld tag is present, and if that shield is a buckler, the Hero.ShldOffOK tag is present.

So, you can test for those tags with "hero.tagis[Hero.EquipMain]"

Here's a doneif incorporating those:


doneif (hero.tagis[Hero.EquipMain] + hero.tagis[Hero.EquipOff] + hero.tagis[Hero.EquipShld] <> 0)

If any of the tagis[] checks find that tag, they'll return 1, so you total up all those tags, and see if the total is not = 0. If it's not, then leave the script.

If bucklers are OK to wear with this ability, you could subtract the buckler tag from the shield tag, so that if a buckler is equipped, the total of hero.tagis[Hero.EquipShld] - hero.tagis[Hero.ShldOffOK] will be 0:


doneif (hero.tagis[Hero.EquipMain] + hero.tagis[Hero.EquipOff] + hero.tagis[Hero.EquipShld] - hero.tagis[Hero.ShldOffOK] <> 0)

Maidhc O Casain
June 2nd, 2010, 10:21 AM
Awesome - put the Eval Script in and it works like a charm!

Thanks, Mathias!