• 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

Piranha Strike - need help

Eretas

Well-known member
I want to program this feat
You make a combination of quick strikes, sacrificing accuracy for multiple, minor wounds that prove exceptionally deadly.

{b}Prerequisites{/b}: Weapon Finesse, base attack bonus +1.

{b}Benefit{/b}: When wielding a light weapon, you can choose to take a -1 penalty on all melee attack rolls and combat maneuver checks to gain a +2 bonus on all melee damage rolls. This bonus to damage is halved (-50%) if you are making an attack with an off-hand weapon or secondary natural weapon. When your base attack bonus reaches +4, and for every 4 points thereafter, the penalty increases by -1 and the bonus on damage rolls increases by +2. You must choose to use this feat before the attack roll, and its effects last until your next turn. The bonus damage does not apply to touch attacks or effects that do not deal hit point damage. This feat cannot be used in conjunction with the Power Attack feat.

I copy power attack but:
~ If we're disabled, do nothing
doneif (tagis[Helper.FtDisable] <> 0)

var bonus as number
bonus = hero.child[Attack].field[tAtkBase].value / 4
field[abValue].value += round(bonus,0,-1) + 1

field[abValue2].value += field[abValue].value * 2

field[livename].text = "Piranha Strike -" & field[abValue].value & "/+" & field[abValue2].value

if (field[abilActive].value <> 0) then
hero.child[Attack].field[tAtkMelee].value -= field[abValue].value
hero.child[Damage].field[tDamPower].value += field[abValue2].value
endif

I can't check for light weapon.
tagis[wClass.Light] <> 0
Checked for the availability of the feat, not if equipped with a light weapon. So can you help?
 
Sargava, the Lost Colony, the book this feat is from, is available in Player Companion: Regions #2 (which is a part of the Player Companion Bundle).
 
You will have to change that script even more as you want to ONLY set that value for light weapons. Power Attack sets it for everything with logic in the background to handle light/2handed.

So you can't use:
Code:
if (field[abilActive].value <> 0) then
   hero.child[Attack].field[tAtkMelee].value -= field[abValue].value
   hero.child[Damage].field[tDamPower].value += field[abValue2].value
endif
Attack/Damage are global to every weapon. So you want every light weapon. So will need to do a "foreach" loop actually.

In example:
Code:
foreach pick in hero from BaseWep where "wCategory.Light & wCategory.Melee"
  eachpick.field[wAttack].value += field[abValue].value
  eachpick.field[wDamBonus].value += field[abValue2].value
nexteach

I have no way of testing the above but I am pretty sure its right. If not adjust as needed.
 
Livename give the correct answer
Code:
 field[livename].text = "Piranha Strike -" & field[abValue].value & "/+" & field[abValue2].value

But the bonus for the weapons did not work...:confused:
Code:
      ~ If we're disabled, do nothing
      doneif (tagis[Helper.FtDisable] <> 0)

      var bonus as number
      bonus = hero.child[Attack].field[tAtkBase].value / 4
      field[abValue].value += round(bonus,0,-1) + 1

      field[abValue2].value += field[abValue].value * 2

      field[livename].text = "Piranha Strike -" & field[abValue].value & "/+" & field[abValue2].value

      foreach pick in hero from BaseWep where "wCategory.Light & wCategory.Melee"
        eachpick.field[wAttack].value -= field[abValue].value
        eachpick.field[wDamBonus].value += field[abValue2].value
      nexteach

ÉDIT: "wClass.Light? & wCategory.Melee?" instead of "wCategory.Light & wCategory.Melee"
 
Last edited:
I have just modified my Piranha strike to use that bit of code which is a lot neater than the original code though i use a rapier, so had to use Helper.Finesse in place of Class.Light

Code:
      ~ If we're disabled, do nothing
      doneif (tagis[Helper.FtDisable] <> 0)

      var bonus as number
      bonus = #BAB[] / 4
      field[abValue].value += round(bonus,0,-1) + 1

      field[abValue2].value += field[abValue].value * 2

      field[livename].text = field[name].text & " -" & field[abValue].value & "/+" & field[abValue2].value

      if (field[abilActive].value <> 0) then
        foreach pick in hero from BaseWep where "Helper.Finesse & wCategory.Melee"
  eachpick.field[wAttack].value += field[abValue].value
  eachpick.field[wDamBonus].value += field[abValue2].value
nexteach
        endif

I also have a Mythic Piranha Strike coded:

Code:
var bonus as number
      bonus = #BAB[] / 4
      field[abValue].value += round(bonus,0,-1) + 1

      field[abValue2].value = field[abValue].value * 3 
   
      if (hero.child[fPiranStr].field[abilActive].value <> 0) then
          foreach pick in hero from BaseWep where "Helper.Finesse & wCategory.Melee"
               eachpick.field[wDamBonus].value += field[abValue2].value
        nexteach
endif

      if (field[abilActive].value <> 0) then
        hero.child[Attack].field[atmPenalty].value += field[abValue].value
endif

At my level abValue in each case is 3.

Now, when using this it adds the 6 & 9 (from the abValue2 fields respectively) together, and I get a total wDamBonus of 15. What is most odd, is that this doesnt happen using the tDamPower field - it only adds the 9, not 15.

For the record, i did put a workaround in place (below) but i am curious as to why the fields behave differently. Any ideas why?

Code:
var bonus as number
      bonus = #BAB[] / 4
      field[abValue].value += round(bonus,0,-1) + 1

      field[abValue2].value = field[abValue].value * 3 
      field[abValue3].value = field[abValue].value * 3 - field[abValue].value * 2

      if (hero.child[fPiranStr].field[abilActive].value <> 0) then
          foreach pick in hero from BaseWep where "Helper.Finesse & wCategory.Melee"
               eachpick.field[wDamBonus].value = field[abValue3].value
        nexteach
endif

      if (field[abilActive].value <> 0) then
        hero.child[Attack].field[atmPenalty].value += field[abValue].value
endif
 
No access to Pirhana Strike feat

I bought this expansion and updated my license but I still don't have access to this feat. Any ideas or thoughts?
 
I have just modified my Piranha strike to use that bit of code which is a lot neater than the original code though i use a rapier, so had to use Helper.Finesse in place of Class.Light

Piranha strike does not work with a rapier, RAW.

I bought this expansion and updated my license but I still don't have access to this feat. Any ideas or thoughts?

Press Ctrl+K or go to Character->Configure Hero and select the new source for that hero. If you've already tried that, then I don't know. :-/
 
resurrecting this thread for a question. HL gives the bonus damage attack penalty to rapiers? is there a reason for that? or did that get added in the community pack.


Thanks
 
I have Sargava, the Lost Colony but I can't find this feat. I even made sure it was checked and the license is up to date. What am I missing?
 
Back
Top