Lone Wolf Development Forums  

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

Notices

Reply
 
Thread Tools Display Modes
The Wyrm Ouroboros
Member
 
Join Date: Oct 2013
Posts: 37

Old October 2nd, 2015, 04:57 AM
All right, so wands are spell-trigger items; to use the wand, you have to have the spell it uses in your class list. Well, I want to create a 'clacker', virtually identical to a wand, but which is use-activated - you squeeze it, with the business end pointed at (or pressed against) your target, and boom, there you go. Instead of a x750gp multiplier, it would have a x1000gp multiplier (x2000 for use-activated, x1/2 for 50 charges).

Now, I know how do this in the editor on a case-by-case basis; what I'm looking to discover is whether or not there's a way to create a blank in the editor for use. It would be virtually identical to the custom wand gizmo, the only difference being the GP multiplier.

Any suggestions?
The Wyrm Ouroboros is offline   #1 Reply With Quote
ShadowChemosh
Senior Member
Volunteer Data File Contributor
 
Join Date: Jan 2010
Location: Chicago, IL (USA)
Posts: 10,729

Old October 2nd, 2015, 10:01 AM
Technically the answer is "yes" you can do this but you would need to write the Gizmo from scratch in XML. This is not something that can be built in the editor and is a very advanced feature of HL. Not something I would recommend anyone starting with.

For something easier you may wish to look at the dorje from Ultimate Psionics in the 3PP Pack which is a type of wand but for Psionic Powers. Its not as cool as the Wand gizmo but allot easier to work with.

Hero Lab Resources:
Pathfinder - d20pfsrd and Pathfinder Pack Setup
3.5 D&D (d20) - Community Server Setup
5E D&D - Community Server Setup
Hero Lab Help - Hero Lab FAQ, Editor Tutorials and Videos, Editor & Scripting Resources.
Created by the community for the community
- Realm Works kickstarter backer (Alpha Wolf) and Beta tester.
- d20 HL package volunteer editor.
ShadowChemosh is offline   #2 Reply With Quote
The Wyrm Ouroboros
Member
 
Join Date: Oct 2013
Posts: 37

Old October 4th, 2015, 11:35 PM
Hm. Considering the fact that really, there's only one or two bits of information that need to be changed - where-ever it says '750' in relation to GP, change to '1000' - is the XML for custom wands available anywhere?

Last edited by The Wyrm Ouroboros; October 4th, 2015 at 11:37 PM.
The Wyrm Ouroboros is offline   #3 Reply With Quote
Aaron
Senior Member
 
Join Date: Oct 2011
Posts: 6,793

Old October 5th, 2015, 07:38 AM
Here is the XML

Code:
  <thing
    id="sCustomWnd"
    name="- Add custom wand -"
    compset="MagicItem"
    description="Add this item to create a wand of a chosen spell."
    buytemplate="BuyGeneral"
    xactspecial="2"> <!-- Barebones purchase, showing just coin fields -->
    <tag group="Helper" tag="CustomItem"/>
    <tag group="Helper" tag="CustSpCont"/>
    <tag group="Helper" tag="EquipMag"/>
    <tag group="User" tag="Tracker"/>
    <tag group="gType" tag="Wand"/>
    <tag group="SpecialTab" tag="GRWand"/>
    <tag group="Helper" tag="EquipAvail"/>
    <eval value="1" phase="Render" priority="105100">
      <after name="Gen Custom Spell Name"/><![CDATA[
      var spellname as string
      foreach pick in gizmo from BaseSpell
        if (eachpick.field[sCL].value > eachpick.field[sCasterMin].value) then
          spellname = splice(spellname,"CL " & ordinal(eachpick.field[sCL].value),", ")
          endif

        spellname = splice(spellname, field[trkMax].value & " charges",", ")
        spellname = lowercase(eachpick.field[sbName].text) & " (" & spellname & ")"
        nexteach

      field[livename].text = "Wand of " & spellname
      field[sbName].text = "wand of " & spellname
      ]]></eval>
    <eval index="2" phase="First" priority="1000"><![CDATA[
      if (field[gIsEquip].value = 0) then
        perform assign[Hide.Tracker]
        perform assign[Hide.Activation]
        perform assign[Helper.SpecUp]
        endif
      ]]></eval>
    <eval index="3" phase="Final" priority="10000"><![CDATA[
      ~our list of spells does not include wordspells
      gizmo.child[CustWand].field[abItemExpr].text = "!component.BaseWord & !Helper.Helper & !Helper.Obsolete"
      ]]></eval>
    <eval index="4" phase="Final" priority="10000"><![CDATA[
      ~during play, this doesn't need to be on the Special tab, but we do want
      ~it displayed in the gear description appendix, so we add tags that will
      ~make it show up in that list if we're outputting this item, but *not* in
      ~the general special abilities list at the end of the statblock
      if (state.isoutput <> 0) then
        perform assign[Helper.ShowSpec]
        perform assign[Hide.Statblock]
        endif
      ]]></eval>

    <evalrule index="1" phase="Validation" priority="5000" severity="warning" message="The Craft Wand feat only allows wands to be created with 50 charges."><![CDATA[
      validif (field[trkMax].value <= 50)
      ]]></evalrule>
    <evalrule index="2" phase="Validation" priority="5000" message="Wands must be created with exactly one spell."><![CDATA[
      validif (tagcount[Helper.CustHasSpl] <= 1)
      ]]></evalrule>
    <child entity="CustWand">
      <tag group="Helper" tag="WandLevReq"/>
      </child>
    </thing>
Aaron is offline   #4 Reply With Quote
The Wyrm Ouroboros
Member
 
Join Date: Oct 2013
Posts: 37

Old October 5th, 2015, 10:11 PM
You, sir, are a scholar and a gentleman. (And a god of Hero Lab, but you knew that already. )

Dragonlance Fiction: Childe Lydia to the Dark Tower Came

"Look, I could kill you, but then I'd have to fill out paperwork. I hate paperwork. Even more than I hate you." -- Phineas Phentari
The Wyrm Ouroboros is offline   #5 Reply With Quote
The Wyrm Ouroboros
Member
 
Join Date: Oct 2013
Posts: 37

Old October 5th, 2015, 10:36 PM
(Later ...)

Hm. Darn. While it loads just fine (which is to be expected), the cost multiplier isn't accessable there and, I expect, is another gizmo that'd have to be added / edited / modified to fit with the clacker wand variant. Gaah. Ah, well. Would love the info, Aaron, if you feel like helping. :P In return, though, I'd certainly put up the modification.

For what that's worth. :P

Dragonlance Fiction: Childe Lydia to the Dark Tower Came

"Look, I could kill you, but then I'd have to fill out paperwork. I hate paperwork. Even more than I hate you." -- Phineas Phentari
The Wyrm Ouroboros is offline   #6 Reply With Quote
Aaron
Senior Member
 
Join Date: Oct 2011
Posts: 6,793

Old October 6th, 2015, 08:07 AM
First calculate how much more this version of item should cost, then:

Final 26000
Code:
        gizmo.child[CustWand].field[abValue].value += THEDIFFERENCEINCOST
Aaron is offline   #7 Reply With Quote
Frodie
Senior Member
 
Join Date: May 2007
Location: Durham, NC
Posts: 1,747

Old October 6th, 2015, 12:29 PM
Very cool, could I ask for the xml for scrolls please? I always wanted to do the Spell App from the Modern Path. I messed with the above script and can't seem to get rid of the 50 charges. Spells Apps are 1 one shot like a scroll.

Thank you.
Frodie is offline   #8 Reply With Quote
Aaron
Senior Member
 
Join Date: Oct 2011
Posts: 6,793

Old October 6th, 2015, 06:48 PM
Quote:
Originally Posted by Frodie View Post
Very cool, could I ask for the xml for scrolls please? I always wanted to do the Spell App from the Modern Path. I messed with the above script and can't seem to get rid of the 50 charges. Spells Apps are 1 one shot like a scroll.

Thank you.
Code:
  <thing
    id="sCustomScr"
    name="- Add custom scroll -"
    compset="MagicItem"
    description="Add this item to create a scroll with spells on it."
    buytemplate="BuyGeneral"
    xactspecial="2"> <!-- Barebones purchase, showing just coin fields -->
    <tag group="Helper" tag="CustomItem"/>
    <tag group="Helper" tag="CustSpCont"/>
    <tag group="gType" tag="Scroll"/>
    <tag group="SpecialTab" tag="GRScroll"/>
    <eval value="1" phase="Render" priority="105100" name="Gen Custom Scroll Name">
      <after name="Gen Custom Spell Name"/>
      <after name="Default livename Modify"/><![CDATA[
      var spelllist as string

      call GenSplList

      field[livename].text = "Scroll of " & spelllist
      field[sbName].text = "scroll of " & spelllist
      ]]></eval>

    <eval index="2" phase="Final" priority="10000"><![CDATA[
      ~our list of spells does not include wordspells
      gizmo.child[CustScroll].field[abItemExpr].text = "!component.BaseWord & !Helper.Helper & !Helper.Obsolete"
      ]]></eval>

    <eval index="3" phase="Final" priority="10000"><![CDATA[
      ~during play, this doesn't need to be on the Special tab, but we do want
      ~it displayed in the gear description appendix, so we add tags that will
      ~make it show up in that list if we're outputting this item, but *not* in
      ~the general special abilities list at the end of the statblock
      if (state.isoutput <> 0) then
        perform assign[Helper.ShowSpec]
        perform assign[Hide.Statblock]
        endif
      ]]></eval>

    <evalrule index="1" phase="Validation" priority="5000" severity="warning" message="The scroll is empty."><![CDATA[
      validif (tagcount[Helper.CustHasSpl] <> 0)
      ]]></evalrule>
    <child entity="CustScroll"/>
    </thing>
Aaron is offline   #9 Reply With Quote
Frodie
Senior Member
 
Join Date: May 2007
Location: Durham, NC
Posts: 1,747

Old October 7th, 2015, 03:14 AM
Very cool, Thank You!
Frodie is offline   #10 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 12:43 AM.


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