• 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 new tag/tag group ?

Flappi

Active member
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">
      [COLOR="Red"]<containerreq phase="First" priority="451">count:Ability.wfNecro=0</containerreq>[/COLOR]
      <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...
 
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'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.
 
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.
 
Back
Top