Lone Wolf Development Forums

Lone Wolf Development Forums (http://forums.wolflair.com/index.php)
-   HL - Pathfinder Roleplaying Game (http://forums.wolflair.com/forumdisplay.php?f=62)
-   -   Battlefist as Weapon (http://forums.wolflair.com/showthread.php?t=54014)

The Wyrm Ouroboros October 8th, 2015 01:27 AM

Battlefist as Weapon
 
All right, so I'm playing around with some stuff from the Eberron campaign pack.

The battlefist (and armblade, and armbow) are attachments for the warforged. Now, they're listed as Wondrous Items, taking up the Hands slot (which I don't necessarily agree with, but let's let that pass, because it can lead to nasty things), but clearly at least the battlefist and the armblade should be able to be enchanted as standard weapons, as compared to the double-cost amulet of mighty fists. However, when I try to build the battlefist as a weapon, I run into a problem.

I'm not getting its attack sequence (either standard melee attacks OR the monk's flurry) to show in the summary windows. While it's certainly on display on the item itself in the weapons tab, it'd be nice to have it showing in the summary windows. The code is below; what am I doing wrong, and/or how can I make this work? It would also be good if, when it was equipped, it took up the 'Hands' Wondrous Items slot, but I can take or leave that ...

EDIT:
(Finally got the 'one size class larger' code to work. Yay!!)

And now I have the thought in my head to be able to make it not only like Hellboy's battlefist, but for it to be able to be 'launched', like the battlefists of Wink, Prince Nuada's henchman in Hellboy 2. Another thought I've had is that the battlefist would enable the character to wield weapons that are one size class larger than the character, and transfer their bonuses through the wielded weapon.

I dunno. Thoughts, suggestions ... maybe I need a new gizmo to build it as a Wondrous Item, but dropping the cost multiplier back to standard weapon ... ?

... and I don't know what I did, but apparently I did something right, and got the attack sequences to show in the summary windows. Updated stuff below.

Still not getting the 'Hand slot' thing to work, though; tried using this little bit ...
Code:

    <tag group="Hero" tag="EqpHand" name="Hand" abbrev="Hand"/>
... but when used as part of a magical weapon, when equipped in the main hand it howled bloody murder. :/

... aaand also, when used as part of a magical weapon, it doesn't return the monk's improved damage. Grr.

Code:

  <thing id="wBattlfist" name="Battlefist" description="{B}Component Type:{/b}  attached component\n\nThis weapon resembles a massively oversized spiked gauntlet; one designed for a Medium warforged looks like a gauntlet designed for an ogre. It attaches to the arm of a warforged, completely covering the hand. This component only operates when attached and locked in place.\n\nA {i}battlefist{/i} increases the damage dealt by the character&apos;s natural slam attack to 1d8 points of bludgeoning and piercing damage (assuming a Medium character). Versions with enhancements are not uncommon.\n\nA warforged monk wtih a {i}battlefist{/i} deals increased unarmed damage when attacking with it as though the character were one size larger than actual; attacks other than with the {i}battlefist{/i} deal damage normally.  Naturally, should the {i}battlefist{/i} be enchanted he can add the bonuses to his unarmed attack and damage rolls." compset="Weapon" summary="For all your Hellboy needs.">
    <fieldval field="gSizeCost" value="300"/>
    <fieldval field="gCraftCost" value="150"/>
    <fieldval field="gWeight" value="6"/>
    <usesource source="TWO"/>
    <tag group="EquipType" tag="Metal"/>
    <tag group="wClass" tag="OneHanded"/>
    <tag group="wCategory" tag="Unarmed"/>
    <tag group="wProfReq" tag="Simple"/>
    <tag group="IsWeapon" tag="wUnarmed"/>
    <tag group="Helper" tag="Proficient"/>
    <tag group="Helper" tag="GearNoSize"/>
    <tag group="wType" tag="B"/>
    <tag group="wType" tag="P"/>
    <tag group="IsWeapon" tag="wS2Unarmed"/>
    <tag group="wFtrGroup" tag="Monk"/>
    <tag group="wSpecial" tag="Monk"/>
    <tag group="wGroup" tag="cHelpMnk"/>
    <tag group="wGroup" tag="cHelpMnkUn"/>
    <tag group="Helper" tag="NoSelect"/>
    <tag group="Helper" tag="BucklerOK"/>
    <tag group="wMain" tag="1d3"/>
    <tag group="wSpecial" tag="Nonlethal"/>
    <tag group="wCritMin" tag="20"/>
    <tag group="wCritMult" tag="2"/>
    <tag group="wCategory" tag="Melee"/>
    <eval phase="Final" priority="10010"><![CDATA[
      ~ Try and find the base race
      perform hero.findchild[BaseWep,"thingid.wUnarmed"].setfocus
      ~ if can't find then get out now!
      doneif (state.isfocus = 0)

      ~ if wUnarmed does lethal damage than so do we
      if (focus.tagis[wSpecial.Nonlethal] = 0) then
        perform delete[wSpecial.Nonlethal]
      endif

      ~ Set damage
      perform delete[wMain.?]
      perform focus.pulltags[wMain.?]

      ~ Set all the helper tags
      perform focus.pulltags[Helper.?]
     
      ~ If the number of extra attacks is mismatched between the core
      ~ unarmed strike and ourself then redo the tags.
      if (focus.tagcount[Helper.ExtraHigh] <> tagcount[Helper.ExtraHigh]) then
        perform delete[Helper.ExtraHigh]
        var iX as number
        iX = 0
        while (iX < focus.tagcount[Helper.ExtraHigh])
          iX += 1
          ~ Apply the Extra Height Attack tag to ourself
          perform assign[Helper.ExtraHigh]
        loop     
      endif]]></eval>
    <eval phase="PreLevel" priority="10000" index="2"><![CDATA[
      ~ If not equipped get out now!
      doneif (field[gIsEquip].value <> 1)

      var sSearch as string

      ~ Set the bonus this weapon gets based on the "Value" tag that is
      ~ set on the "Tags" blue button.
      sSearch = "Warforged.Slam"

      ~ If we have a monk level then also adjust unarmed strike
      If (#levelcount[Monk] <> 0) Then
        sSearch &= "|thingid.wUnarmed"
      Endif

      ~ Increase warforged slam attacks
      foreach pick in hero from BaseWep where sSearch
        ~ Adjust warforged slam
        If (eachpick.tagis[Warforged.Slam] = 1) Then
            perform eachpick.assign[Helper.DamageUp]
            perform eachpick.assign[Helper.DamageUp]
            perform eachpick.assign[wType.P]
            eachpick.field[livename].text = field[name].text
            eachpick.field[Bonus].value += 5
        Endif

      nexteach

        ~ Adjust our battlefist damage
      perform hero.child[wBattlfist].assign[Helper.DamageUp]]]></eval>

    <exprreq message="Warforged race required."><![CDATA[#hasrace[rS2Warforg] <> 0]]></exprreq>
    </thing>


ShadowChemosh October 8th, 2015 10:43 AM

First it would be easier to answer your questions if you asked one at a time and focused on a single issue. The above is sort of "train of thought" writing which at least for me is very hard to decipher. :(

Quote:

Originally Posted by The Wyrm Ouroboros (Post 217033)
I'm not getting its attack sequence (either standard melee attacks OR the monk's flurry) to show in the summary windows. While it's certainly on display on the item itself in the weapons tab, it'd be nice to have it showing in the summary windows. The code is below; what am I doing wrong, and/or how can I make this work?

My assumption is the deleting and merging tags at Final/10010 that maybe causing it to not display correctly on the Summary window. That is my best guess right now without actually adding this to a user file. Ug only now see you say you fixed this....

Quote:

Originally Posted by The Wyrm Ouroboros (Post 217033)
Still not getting the 'Hand slot' thing to work, though; tried using this little bit ...
Code:

    <tag group="Hero" tag="EqpHand" name="Hand" abbrev="Hand"/>
... but when used as part of a magical weapon, when equipped in the main hand it howled bloody murder. :/

... aaand also, when used as part of a magical weapon, it doesn't return the monk's improved damage. Grr.

It would also be good if, when it was equipped, it took up the 'Hands' Wondrous Items slot, but I can take or leave that ...

So a wondrous item is pushing that Hero.EqpHand tag to the hero. So you simply need to do the same thing but manually. I would do it pretty early at like First/10000:
Code:

perform hero.assign[Hero.EqpHand]
This will cause an error for other wondrous items when it counts more than one one EqpHand tag.

Quote:

Originally Posted by The Wyrm Ouroboros (Post 217033)
The battlefist (and armblade, and armbow) are attachments for the warforged. Now, they're listed as Wondrous Items, taking up the Hands slot (which I don't necessarily agree with, but let's let that pass, because it can lead to nasty things), but clearly at least the battlefist and the armblade should be able to be enchanted as standard weapons, as compared to the double-cost amulet of mighty fists. However, when I try to build the battlefist as a weapon, I run into a problem.

I could most likely add a custom version of Battlefist/armblade that would allow them to be easily enchanted or modified with Item Powers. Maybe I can do that before the next release. Will have to see.

The Wyrm Ouroboros October 8th, 2015 11:10 PM

Sorry about that, it was a weird night, especially as I kept playing around with it. Yeah, I fixed the attack sequence for the base weapon, but while the monk damage increase is showing for the standard weapon, it doesn't show for the magic weapon. Since we don't want to modify the unarmed strike damage directly, but instead have that reflect in the damage for the battlefist ... hrm.

I dunno, I'll have to fiddle around with it a bit. I think I may have to take the damage portion of the monk flurry stuff and put it in its own eval section, move it up a few phases. Post-Level, perhaps ... ?

Aaron October 9th, 2015 09:21 AM

When a weapon is added to a custom/masterwork weapon, the tags get pulled from it relatively early and get added to the parent. Your eval scripts are running too late for that, but you probably can't run them earlier because they depend on scripts from the monk's class abilities running. So what you need to do is check if the weapon is on the hero or inside a gizmo, and if it is inside a gizmo, apply those tags to the parent instead of the weapon itself.

ShadowChemosh October 9th, 2015 09:25 AM

Quote:

Originally Posted by The Wyrm Ouroboros (Post 217083)
but while the monk damage increase is showing for the standard weapon, it doesn't show for the magic weapon.

Because you took out the logic that changes the unarmed damage.

You changed this:
Code:

      ~ If we have a monk level then also adjust unarmed strike
      If (#levelcount[Monk] <> 0) Then
        sSearch &= "|thingid.wUnarmed"
      Endif

      ~ Increase warforged slam attacks
      foreach pick in hero from BaseWep where sSearch
        ~ Adjust warforged slam
        If (eachpick.tagis[Warforged.Slam] = 1) Then
            perform eachpick.assign[Helper.DamageUp]
            perform eachpick.assign[Helper.DamageUp]
            perform eachpick.assign[wType.P]
            eachpick.field[livename].text = field[name].text
            eachpick.field[Bonus].value += nBonus

        ~ Adjust our unarmed strike damage
        ElseIf (eachpick.tagis[thingid.wUnarmed] = 1) Then
            perform eachpick.assign[Helper.DamageUp]
            eachpick.field[Bonus].value += nBonus
        Endif

      nexteach

to this:
Code:

~ If we have a monk level then also adjust unarmed strike
      If (#levelcount[Monk] <> 0) Then
        sSearch &= "|thingid.wUnarmed"
      Endif

      ~ Increase warforged slam attacks
      foreach pick in hero from BaseWep where sSearch
        ~ Adjust warforged slam
        If (eachpick.tagis[Warforged.Slam] = 1) Then
            perform eachpick.assign[Helper.DamageUp]
            perform eachpick.assign[Helper.DamageUp]
            perform eachpick.assign[wType.P]
            eachpick.field[livename].text = field[name].text
            eachpick.field[Bonus].value += 5
        Endif

      nexteach

Which now only affects the base Slam attack of the warforged.

Quote:

Originally Posted by The Wyrm Ouroboros (Post 217083)
Since we don't want to modify the unarmed strike damage directly, but instead have that reflect in the damage for the battlefist ... hrm.

So your trying to make the Battlefist into a Monk weapon then that increases its damage to match the Unarmed Strike damage but one size bigger?

The Wyrm Ouroboros October 9th, 2015 06:13 PM

Thanks, Aaron; computer logic is sometimes fuzzy for me.

And exactly that, ShadowChemosh.


All times are GMT -8. The time now is 12:01 PM.

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