• 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

Bootstrapping within eval script

CptCoots

Well-known member
I know that as things stand right now this is "unsupported". I was curious as to what the limiting factor was.

Part of the reason I'd love to see this is for class abilities like Advanced Learning. This is currently implemented, as I've seen it, as a Class Special with a Feat of the same name bootstrapped. The Feat then has a Freeform edit control in the Select From...doohicky. This does not add the spell to spell lists, and thus only shows up on the character's Specials tab (not optimal). I've been reduced to writing a version of the Feat for a specific character where I know the spell(s) I want and I've made that version of the spell with a User tag for it. This tag denotes what I let the feat choose from and then I get that spell (adding yet another tag to the spell, from the feat which then lifts the violation of an Expr-req).

What would be supremely awesome would be if I could check the fChosen field and grab the idstring. Then go through eachpick on your hero where CasterSrc.Arcane is present. Now add a bootstrap of the idstring spell from fChosen and add the tags required for that particular caster.
 
I know that as things stand right now this is "unsupported". I was curious as to what the limiting factor was.

Part of the reason I'd love to see this is for class abilities like Advanced Learning. This is currently implemented, as I've seen it, as a Class Special with a Feat of the same name bootstrapped. The Feat then has a Freeform edit control in the Select From...doohicky. This does not add the spell to spell lists, and thus only shows up on the character's Specials tab (not optimal). I've been reduced to writing a version of the Feat for a specific character where I know the spell(s) I want and I've made that version of the spell with a User tag for it. This tag denotes what I let the feat choose from and then I get that spell (adding yet another tag to the spell, from the feat which then lifts the violation of an Expr-req).

What would be supremely awesome would be if I could check the fChosen field and grab the idstring. Then go through eachpick on your hero where CasterSrc.Arcane is present. Now add a bootstrap of the idstring spell from fChosen and add the tags required for that particular caster.

The Advanced Learning class feature for Warmage and Beguiler have been upgraded for the upcoming release. There is no longer a feat attached to this class special. Instead, I am using the following script to take the chosen spell and add it to the warmage list:

Code:
doneif (field[usrChosen1].ischosen = 0)

var spell as string
spell = field[usrChosen1].chosen.idstring
spell = "thingid." & spell

hero.childfound[cHelpWMa].field[cSpellExpr].text &= " | " & spell

Same code for Beguiler, except with the right cHelp??? child.
 
Code:
doneif (field[usrChosen1].ischosen = 0)

var spell as string
spell = field[usrChosen1].chosen.idstring
spell = "thingid." & spell

hero.childfound[cHelpWMa].field[cSpellExpr].text &= " | " & spell
So you would need to test but I am 99% sure you can remove the "hero.child[]" part and use "root." instead. This way the class special becomes 100% generic. It will affect the spell expression on whatever class its bootstrapped too.

I don't think this is a Pathfinder specific logic I think that is part of the HL authoring kit logic.

Code:
doneif (field[usrChosen1].ischosen = 0)

var spell as string
spell = field[usrChosen1].chosen.idstring
spell = "thingid." & spell
~ Change the spell expression for the class we are attached too
root.field[cSpellExpr].text &= " | " & spell

Just another thought that I know I have been pushing HL scripts more and more but it means you can combine more steps together:
Code:
~ If nothing chosen get out now!
doneif (field[usrChosen1].ischosen = 0)

~ Change the spell expression for the class we are attached too
root.field[cSpellExpr].text &= " | " & "thingid." & field[usrChosen1].chosen.idstring
 
And here I thought I was already being efficient. You're such a show-off. :)

Alright, I can use this instead, though I don't think I can make one universal class feature though. They gain this ability multiple times each, and each time the list of spells they can choose from grows, which means new custom expressions for each one. Still, very useful. Thanks, Shadow.
 
Back
Top