• Please note: In an effort to ensure that all of our users feel welcome on our forums, we’ve updated our forum rules. You can review the updated rules here: http://forums.wolflair.com/showthread.php?t=5528.

    If a fellow Community member is not following the forum rules, please report the post by clicking the Report button (the red yield sign on the left) located on every post. This will notify the moderators directly. If you have any questions about these new rules, please contact support@wolflair.com.

    - The Lone Wolf Development Team

Creating a Fighter Archetype

I found the Brawler fighter archetype ability Close Combatant. It's close to what I want for the Panache ability, but it's for Close Weapons. Below is my modified code, but near the bottom on both are empty quotes where I need to have the identifier for weapons affected by Weapon Finesse.
Have you looked at the tags on a Weapon Finesse weapon to see what the tag is that tells HL that Weapon Finesse applies? That is where I would start to find the tag.

So add a rapier to a blank character. Then right click on the ? on the weapon and view the Tags for that Thing. See any that maybe what you are looking for?
 
I tried the Helper.Finesse and ran a test. I used the first code block as Eval Script #1 and the second as #2. In the quotes at the bottom, I put in "Helper.Finesse".

When I ran the test, I got this error:

"Hero Lab was forced to stop compilation after the following errors were detected:

Syntax error in 'eval' script for thing 'cFtrBelPan' (Eval Script '#2') on line 21
-> Non-existent field 'manDisarm' used by script"

I copied and pasted that from another ability, so what's the field ID for the Disarm Maneuver if it's not 'manDisarm'?
 
I tried the Helper.Finesse and ran a test. I used the first code block as Eval Script #1 and the second as #2. In the quotes at the

bottom, I put in "Helper.Finesse".
That is one of the tags you need. The other one you will need is the Light Weapon Tag. This is because ALL light weapons are automatically finesseable but I am pretty sure don't use the Helper.Finesse tag.

When I ran the test, I got this error:

"Hero Lab was forced to stop compilation after the following errors were detected:

Syntax error in 'eval' script for thing 'cFtrBelPan' (Eval Script '#2') on line 21
-> Non-existent field 'manDisarm' used by script"

I copied and pasted that from another ability, so what's the field ID for the Disarm Maneuver if it's not 'manDisarm'?
Easier to help if you posted the code along with the error.

manDisarm I am pretty sure is the Thing or Child not a field of manDisarm. You can find the different fields on a Thing actually. Take a look at THIS video and about 4 minutes in I go over how to find fields on Things in HL. This way you will be able to find the fields yourself which makes scripting allot easier.
 
Eval Script #1

Code:
field[listname].text = field[thingname].text & " +" & field[xIndex].value

~ If we're not shown, just get out now
doneif (tagis[Helper.ShowSpec] = 0)

~ If we're not the first copy, just get out now
doneif (tagis[Helper.FirstCopy] = 0)

field[abValue].value += field[xCount].value

field[abSumm].text = "+" & field[abValue].value & " to hit and damage with Finesse Weapons."
field[livename].text = field[thingname].text & " +" & field[abValue].value

~ If we're encumbered, we're disabled
if (herofield[tEncumLev].value > 0) then
perform assign[Helper.SpcDisable]
done
endif

foreach pick in hero from BaseWep where "Helper.Finesse"
eachpick.field[wAttBonus].value += field[abValue].value
eachpick.field[wDamBonus].value += field[abValue].value
nexteach

Eval Script #2
Code:
field[listname].text = field[thingname].text & " +" & field[xIndex].value

~ If we're not shown, just get out now
doneif (tagis[Helper.ShowSpec] = 0)

~ If we're not the first copy, just get out now
doneif (tagis[Helper.FirstCopy] = 0)

field[abValue].value += field[xCount].value

field[abSumm].text = "+" & field[abValue].value & " to hit and damage with Finesse Weapons."
field[livename].text = field[thingname].text & " +" & field[abValue].value

~ If we're encumbered, we're disabled
if (herofield[tEncumLev].value > 0) then
perform assign[Helper.SpcDisable]
done
endif

foreach pick in hero from BaseWep where "Helper.Finesse"
eachpick.field[manDisarm].field[manCMD].value += field[abValue].value
eachpick.field[manSunder].field[manCMD].value += field[abValue].value 
nexteach
 
foreach pick in hero from BaseWep where "Helper.Finesse"
eachpick.field[manDisarm].field[manCMD].value += field[abValue].value
eachpick.field[manSunder].field[manCMD].value += field[abValue].value
nexteach[/code]
Ah ok. manDisarm is a Total Level Thing. Sorry best I can think of to describe it. There is not a specific manDisarm for Each Weapon. Also you can never have a field of a field. You can have a field of a child but never a field of a field.

So it goes Hero_Character.Child_Thing.Child_Field.Value_of_ field Hope that makes sense. :)

So you have a Disarm Value on your Character or Hero not on each weapon.

So what you want is simply:
Code:
hero.child[manDisarm].field[manCMD].value += field[abValue].value
hero.child[manSunder].field[manCMD].value += field[abValue].value
And totally remove the whole "ForEach" loop you have around them. As there is never more than one manDisarm on a hero.

Hope that helps.
 
So the code for Eval Script #2 will be:

Code:
field[listname].text = field[thingname].text & " +" & field[xIndex].value

~ If we're not shown, just get out now
doneif (tagis[Helper.ShowSpec] = 0)

~ If we're not the first copy, just get out now
doneif (tagis[Helper.FirstCopy] = 0)

field[abValue].value += field[xCount].value

field[abSumm].text = "+" & field[abValue].value & " to hit and damage with Finesse Weapons."
field[livename].text = field[thingname].text & " +" & field[abValue].value

~ If we're encumbered, we're disabled
if (herofield[tEncumLev].value > 0) then
perform assign[Helper.SpcDisable]
done
endif

hero.child[manDisarm].field[manCMD].value += field[abValue].value
hero.child[manSunder].field[manCMD].value += field[abValue].value

Correct?
 
Back
Top