Lone Wolf Development Forums  

Go Back   Lone Wolf Development Forums > Hero Lab Forums > HL - Pathfinder Roleplaying Game

Notices

Reply
 
Thread Tools Display Modes
Flappi
Junior Member
 
Join Date: Jun 2010
Posts: 26

Old July 14th, 2010, 02:49 PM
Is there a way to create a new tag or tag group ?


I explain my problem: since I use a variant rule for spells of forbidden schools, I have re-created the wizard class. Since the class knows every level 0 spells, I bootstrap them.

But, in fact, a wizard don't know every 0-level spells : he don't know the 0-level spells from his forbidden school. Then, the bootstraps look like this:
Code:
    <bootstrap thing="spDisrUnd0">
      <containerreq phase="First" priority="451">count:Ability.wfNecro=0</containerreq>
      <autotag group="sClass" tag="cHelpWiv"/>
      <autotag group="Spellbook" tag="cHelpWiv"/>
      </bootstrap>
(cHelpWiv is the variant wizard; Wiv is "wizard - variant")

But, the class gets the tag "Ability.wfNecro" (and other forbidden school tags) comes too late in the program: at first/500, the class hasn't the tag, and the containerreq must be before first/500. Therefore, I use the same trick as the resistance ability (from abjuration spec): I forward the tag with a script in the class:
Code:
   <eval phase="First" priority="450" index="4"><![CDATA[
      ~Now, handle the spellbook
      var expr as string
      foreach pick in hero from BaseCustSp where "Helper.Secondary & SpecSource.cHelpWiz"
        expr="Ability."&eachpick.idstring
        perform hero.assignstr[expr]
        nexteach]]></eval>
(additional note: would it be better to replace the tag expression"SpecSource.cHelpWiz" with "CustTaken.cHelpWiv" ?)

And here is the problem: now, the class has the tag "Ability.wfNecro", and will get the tag a second time if the program runs normally. Since I don't have access to the structure file, I don't know if the number of such tag is used or not. Then, I must clean up with another eval script:
Code:
    <eval phase="First" priority="452" index="5"><![CDATA[
      ~Now, delete the tags for spellbook
      var expr as string
      foreach pick in hero from BaseCustSp where "Helper.Secondary & SpecSource.cHelpWiz"
        expr="Ability."&eachpick.idstring
        perform hero.deletestr[expr]
        nexteach]]></eval>
It would be easier if I could create a new tag group, something like "dummy.wfNecro", which I know is used nowhere else...
Flappi is offline   #1 Reply With Quote
Mathias
Senior Member
Lone Wolf Staff
 
Join Date: May 2005
Posts: 12,757

Old July 14th, 2010, 03:18 PM
I'd recommend waiting until I get a chance to fix that error with the wizard's 0-level spells before trying to tackle it yourself. Just leave the error in place on your new class, and hopefully the fix will solve your problem, too.
Mathias is offline   #2 Reply With Quote
Flappi
Junior Member
 
Join Date: Jun 2010
Posts: 26

Old July 15th, 2010, 01:15 AM
Quote:
Originally Posted by Mathias View Post
I'd recommend waiting until I get a chance to fix that error with the wizard's 0-level spells before trying to tackle it yourself. Just leave the error in place on your new class, and hopefully the fix will solve your problem, too.
I did that because the class didn't obtain the 0-level spells from wizard, even with "use which spells", "wizard" selected. If the class had all 0-level spell, there would be no point in bootstrapping spells... x)


Anyway, adding a new tag can be useful in such cases (when a tag is added to a class after the bootstrapping phase) - after all, forwarding a tag for conditional bootstrap is used for the abjuration power, and, I think, for some other classes powers... If it's impossible, I'll continue in the same way if I need (add an existing tag, bootstrap, clean the tag), it's not a real problem, but I'm asking if there's a way to add tag.
Flappi is offline   #3 Reply With Quote
Mathias
Senior Member
Lone Wolf Staff
 
Join Date: May 2005
Posts: 12,757

Old July 15th, 2010, 06:29 AM
Try adding a foreach that assigns Spellbook.cHelpWiv to every 0-level spell with cHelpWiz:

PreLevel/11000:
Code:
 
foreach pick in hero from BaseSpell where "sLevel.0 & Spellbook.cHelpWiz"
  perform eachpick.assign[Spellbook.cHelpWiv]
  nexteach
(You can put this in a script on the class helper)

That should modify all the Wizard 0-level spells that are already on the hero to also be in the Wiv spellbook without having to bootstrap each one.

I'll put it on my to-do list that share spells doesn't give you the 0-level spells - it should be doing so.
Mathias is offline   #4 Reply With Quote
Reply

Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT -8. The time now is 09:23 AM.


Powered by vBulletin® - Copyright ©2000 - 2020, vBulletin Solutions, Inc.
wolflair.com copyright ©1998-2016 Lone Wolf Development, Inc. View our Privacy Policy here.