How to create more abilities like Iron Fist and Strong Jaw?

tommaniacal

Rookie
Member
Joined
Jun 10, 2018
Posts
3
I wanted to create an ability that powers up sword moves, but it appears that it is not possible (or very difficult) to add more move flags. How should I work around this?
 

Scyl

Ironically Unironic Edgelord Extraordinaire
Member
Joined
Apr 4, 2018
Posts
42
You can actually create two new move flags, o and p, as of V. 17.2 of Essentials. You can also create a list for which moves should be apart of whatever "Is[x]Move".

Assuming you haven't used any of the new flags, you can try this.

Find the following:
def isBombMove?
return (@flags&0x2000)!=0 # flag n: Is bomb move
end

After the end, hit enter and paste the following:
Ruby:
  def isSwordMove?
    return (@flags&0x4000)!=0 # flag o: Is swordmove move
  end

Then find the following:
if attacker.hasWorkingAbility(:STRONGJAW) && isBitingMove?
damagemult=(damagemult*1.5).round
end

After the end, hit enter and paste the following:
Ruby:
    if attacker.hasWorkingAbility(:SHARPSABRE) && isSwordMove?
      damagemult=(damagemult*1.5).round
    end

Of course, where it says "SHARPSABRE" can be altered to whatever you want in the abilities.txt.
Define it in abilities.txt, bestow it onto a Pokemon in pokemon.txt, and add the "o" flag to whatever move you want.

XXX,SHARPSABRE,Sharp Sabre,"Powers up Sword Moves." with XXX being the next number after the last in your abilities.txt.

94,SACREDSWORD,Sacred Sword,0A9,90,FIGHTING,Physical,100,20,0,00,0,abefo,"The user attacks by slicing with its long horns. The target's stat changes don't affect the damage."

The "o" flag has been added, and I gave it to Gallade for testing purposes.

Steadfast Gallade: https://prnt.sc/jun8ot
Sharp Sabre Gallade: https://prnt.sc/jun5l3

By using EncounterModifiers, I made both Mandibuzz have 31 in every stat and be Serious nature(So no change to any stats) to test. Of course, the Gallade have the same stats as well.

https://prnt.sc/junf97

The Mandibuzz with less health is the one that battle the Gallade with Sharp Sabre, the other didn't. The one that didn't suffered 53 HP's worth of damage. The one that battled the Sharp Sabre Gallade suffered 77 HP's worth damage which is pretty close to 79.5, which is the solution to 53 x 1.5, so we can assume it was a low damage roll and that the ability does work.

Of course, this is only if you haven't used the "o" or "p" move flags yet, if you have, then you have to create a list for the defs that list out every move.
 

tommaniacal

Rookie
Member
Joined
Jun 10, 2018
Posts
3
You can actually create two new move flags, o and p, as of V. 17.2 of Essentials. You can also create a list for which moves should be apart of whatever "Is[x]Move".
Thank you for the in-depth response!
So if I were to create a list, would it look like this?

def isSlashingMove? # slashing, cutting, or Sword-based moves
return false if !USENEWBATTLEMECHANICS
return isConst?(@id,PBMoves,:CUT) ||
isConst?(@id,PBMoves,:FURYCUTTER) ||
isConst?(@id,PBMoves,:AIRCUTTER) ||
isConst?(@id,PBMoves,:RAZORSHELL) ||
isConst?(@id,PBMoves,:PSYCHOCUT) ||
isConst?(@id,PBMoves,:SLASH) ||
isConst?(@id,PBMoves,:NIGHTSLASH) ||
isConst?(@id,PBMoves,:AIRSLASH) ||
isConst?(@id,PBMoves,:SACREDSWORD) ||
isConst?(@id,PBMoves,:SECRETSWORD) ||
isConst?(@id,PBMoves,:LEAFBLADE)
end
 

Scyl

Ironically Unironic Edgelord Extraordinaire
Member
Joined
Apr 4, 2018
Posts
42
I believe so. I playtested using the list and this came from it.

No Slash Boosting Ability: https://prnt.sc/juozkp
Slash Boosting Ability: https://prnt.sc/juozxo

http://prntscr.com/jup0jp

The Audino that battled the normal one took 50 HP while the other one suffered 69 HP, which is close to 75. (The product of 50 and 1.5.) So, it seems to work out on my end.

http://prntscr.com/jup1rh I changed it to isSlashingMove? instead of isSwordMove? and used the list you provided. uwu.
 
Top