• Our software update is now concluded. You will need to reset your password to log in. In order to do this, you will have to click "Log in" in the top right corner and then "Forgot your password?".
  • Welcome to PokéCommunity! Register now and join one of the best fan communities on the 'net to talk Pokémon and more! We are not affiliated with The Pokémon Company or Nintendo.

Lucidious89's Custom Ability Thread [Essentials v18.1]

1,408
Posts
10
Years
    • Seen yesterday
    Any way to make a ability that regents 1/2 of the users health every turn?

    Shouldn't be too hard, just copy an end of round healing effect like Leftovers or something, make it an Ability, and change the amount of HP it restores from 1/16 to 1/2.
     
    465
    Posts
    7
    Years
    • Seen May 9, 2024
    Any way to make a ability that regents 1/2 of the users health every turn?
    Shouldn't be too hard, just copy an end of round healing effect like Leftovers or something, make it an Ability, and change the amount of HP it restores from 1/16 to 1/2.

    Either like lucidious said, or take rain dish etc. and make a new version but not needing a weather. that or poison heal and remove the poison part.
     

    Carboncino

    SwampyK
    16
    Posts
    6
    Years
  • Hey guys I'm using Essentials v18 for a project of mine that I've been working on for a while.
    I'm trying to script an Ability that doubles cash after a trainer's defeated. I tried scripting that on the Amulet Coin section cause the effect's the same as it but I don't think it's working out.
    Please help me :c
     
    295
    Posts
    6
    Years
    • Seen Aug 15, 2022
    Hey guys I'm using Essentials v18 for a project of mine that I've been working on for a while.
    I'm trying to script an Ability that doubles cash after a trainer's defeated. I tried scripting that on the Amulet Coin section cause the effect's the same as it but I don't think it's working out.
    Please help me :c

    You can find it in def pbGainMoney
     
    1,408
    Posts
    10
    Years
    • Seen yesterday
    Update!

    If anyone's interested, I've updated every Ability ive ever posted in this thread so that they are now compatible with Essentials v18.1. All of my custom abilities are now found in the main post, with all installation instructions found there. Abilities I made that ended up becoming real abilities in later gens, or very similar (Armor Piercer, High Pitched, etc), were removed, since you can just use their official equivalents.

    Abilities I've made to work exclusively for Pokemon Birthsigns have not been included, since the Birthsign script has not yet been updated for Essentials v18.1.
    In addition to updating old abilities, I've also included a slew of new ones I've never posted here before, bringing the total of custom abilities to 50.

    Here are a glimpse of some of the new content:


    Ability: Sharpshooter
    Effect: The user's non-contact moves cannot miss, and cannot be redirected.

    Ability: Cold Blooded
    Effect: The user resists Fire moves, and its Speed increases by 1 stage when hit by a Fire move. Speed is also increased in sunshine. The opposite holds true for Ice moves and hail.

    Ability: Pack Leader
    Effect: Boosts damage when in the lead position of the party.

    Ability: Wild Tantrum
    Effect: Gains the Rage effect when entering battle, raising Attack by 1 stage whenever the user is struck.

    Ability: Night Terrors
    Effect: Thrashes while asleep & strikes all nearby Pokémon.

    Ability: Grave Robber
    Effect: Immediately steals a fainted battler's held item.

    Ability: Midnight Curse
    Effect: Changes the user's form and ability based on the time of day. This is designed as an exclusive ability for Lycanroc.

    Ability: Daylight Rush
    Effect: Boosts damage if the user is the first to move. Midnight Curse changes into this ability when Lycanroc changes into its Midday Form.

    Ability: Twilight Shift
    Effect: The user's stats change at the start of each turn. Midnight Curse changes into this ability when Lycanroc changes into its Dusk Form.

    Ability: Moonlit Frenzy
    Effect: Immediately retaliates when struck with an attack. Midnight Curse changes into this ability when Lycanroc changes into its Midnight Form.

    Ability: Astral Plane
    Effect: All Pokemon have the Ghost-type added to their typing when any Pokemon on the field has this ability.

    Ability: Petrifying Gaze
    Effect: Adds the Rock-type to nearby foes upon entry.

    Ability: Pheromone Lure
    Effect: Opposite-gendered Pokémon may not escape.

    Ability: Seed Parasite
    Effect: Applies Leech Seed to an attacker that KO's the user with a contact move.

    Ability: Spike Burst
    Effect: When the user is struck by a contact move, a layer of spikes is added to the attacker's side of the field. Applies Toxic Spikes instead of the user is Poison-type.

    Ability: Color Aura
    Effect: The user gains one of several different stat boosts or buffs depending on the "color" of the directly opposing Pokemon. A Pokemon's color is set in its PBS data.

    Ability: Bounty Hunter
    Effect: If a rare Pokemon is present on the opponent's side, the user marks that Pokemon as a bounty target. If the user KO's the bounty target, the user gains bonus exp and money from this battle. The user will also claim the bounty target's held item.

    Ability: Hive Mind
    Effect: Whenever the user is targeted by an attack, it commands a nearby ally to take the attack instead. This is designed as an ability to be used by Vespiquen, to command its Combee drones to shield it from harm.



    You can find more in-depth details about each of these abilities in the main post.
     
    1,408
    Posts
    10
    Years
    • Seen yesterday
    Fixed the code for the updated Delivery ability, as well as some text errors for the Petrifying Gaze and Gambler abilities.
     
    429
    Posts
    4
    Years
  • How do you create a Truant-like ability except it forces you to use a status move for every second attack and an attacking move for every first attack?

    So where Truant is normally "Attack, miss a turn, attack, miss a turn,"
    This ability would be "Attack, use a status move, attack, use a status move".
     
    1,408
    Posts
    10
    Years
    • Seen yesterday
    How do you create a Truant-like ability except it forces you to use a status move for every second attack and an attacking move for every first attack?

    So where Truant is normally "Attack, miss a turn, attack, miss a turn,"
    This ability would be "Attack, use a status move, attack, use a status move".

    Pretty simple. Just copy Assault Vest's code (prevents the selection of Status moves), and combine it with the way I implemented the Twilight Shift ability (changes different stats every other turn), except make it block damaging/status moves every other turn instead. Just paste it under where Assault Vest is handled so that the message displays upon move selection.

    Something like this:
    Code:
    #===========================================================================
        # Custom Ability
        #===========================================================================
        if hasActiveAbility?(:CUSTOMABILITY)
          if commandPhase
            # Prevents status moves every even-numbered turn (starting with turn 0).
            if turnCount%2==0 
              if move.statusMove?
                if showMessages
                  msg = _INTL("{1}'s {2} prevents status moves from being used this turn!",pbThis,abilityName)
                  (commandPhase) ? @battle.pbDisplayPaused(msg) : @battle.pbDisplay(msg)
                end
                return false
              end
            # Prevents damaging moves every odd-numbered turn.
            else 
              if move.damagingMove?
                if showMessages
                  msg = _INTL("{1}'s {2} prevents attacking moves from being used this turn!",pbThis,abilityName)
                  (commandPhase) ? @battle.pbDisplayPaused(msg) : @battle.pbDisplay(msg)
                end
                return false
              end
            end
          end
        end
        #===========================================================================

    If the Pokemon has no viable moves to select on a given turn, it will just use Struggle.
    One really minor thing to take note of: This effect won't prevent the usage of status/damaging moves, it will only prevent their selection. This won't matter 99.9% of the time, but in some weird cases it might be something to keep in mind. For example, if you use Entrainment to give a Pokemon this ability before they've attacked, and they chose a status move that turn that happens to be an even-numbered turn for that Pokemon, they will not be prevented from executing that status move even though the ability should prevent it. However, the ability will function as it normally would from that turn on.

    Like I said, this will almost never be an issue (and even the "issue" itself is extremely minor), but something to take note of either way.
     
    Last edited:
    40
    Posts
    3
    Years
    • Seen Jan 13, 2022
    I want to know, how would anyone here go about coding an ability that reverses the effects of stat-related abilities for the opposing Pokemon like Intimidate, Speed Boost, Stamina, Steadfast, etc.? Note that it would not affect abilities like Moxie that activate after KOing an opponent.
     
    1,408
    Posts
    10
    Years
    • Seen yesterday
    I want to know, how would anyone here go about coding an ability that reverses the effects of stat-related abilities for the opposing Pokemon like Intimidate, Speed Boost, Stamina, Steadfast, etc.? Note that it would not affect abilities like Moxie that activate after KOing an opponent.

    You'd probably have to code the reverse stat effects into each of those individual abilities, and have them trigger if pbCheckOpposingAbility(:ABILITYNAME) returns true.
     
    1,408
    Posts
    10
    Years
    • Seen yesterday
    Fixed an error in step 3 of the additional installations for the Bounty Hunter ability. It was causing crashes if multiple Pokemon received exp after battle. It should function correctly now.

    EDIT: Fixed a bunch of other little coding issues where effects didn't exactly work as described, or ability splashes triggered multiple times when they aren't meant to. The link has been updated with these changes.
     
    Last edited:
    52
    Posts
    6
    Years
  • XXX,SADIST,Sadist,"All single target moves hit both targets."

    this seems like a very blessed ability, but sadly i was never able to code it, every time i tried doing it every damaging move would be skipped / would do 0 damage.

    my og plan was this:
    (Zangoose with Sadist is on the field on double battles)
    Zangoose used Close Combat on Pkm1!
    (-1 Def, -1 SpDef)
    (Zangoose's Sadist activated)
    Zangoose also used Close Combat on Pkm2!
    (-1 Def, -1 SpDef)
    Zangoose turn ends

    my simpler plan was this:
    (Zangoose with Sadist is on the field on double battles)
    Zangoose used Close Combat on Pkm1 and Pkm2!
    (-1 Def, -1 SpDef)
    Zangoose turn ends
     
    6
    Posts
    3
    Years
    • Seen Jan 19, 2021
    These are really cool abilities. I have made one myself in essentials, but I have no idea how to code it. I don't know how to post my own thread here so I hope no one minds me asking for help here.
    The ability I made is Hypno Chant. The user strikes at the target with psychic type attacks and there is a 10% chance of that the enemy will fall asleep. I made this ability for Hypno and Drowzee.
     
    1,408
    Posts
    10
    Years
    • Seen yesterday
    this seems like a very blessed ability, but sadly i was never able to code it, every time i tried doing it every damaging move would be skipped / would do 0 damage.

    my og plan was this:


    my simpler plan was this:

    The second method is easily implemented by adding this code at the end of def pbFindTargets, right above "return targets":
    Code:
    #===========================================================================
        # Custom Ability - Sadist
        #===========================================================================
        if user.hasActiveAbility?(:SADIST) && PBTargets.canChooseOneFoeTarget?(targeting)
          newtarg = nil
          @battle.eachOtherSideBattler(user) do |b|
            next if b==targets[0]
            next if !b.near?(user)
            next if !b.near?(targets[0])
            newtarg = b
            break if newtarg
          end
          if newtarg
            @battle.pbShowAbilitySplash(user)
            pbAddTarget(targets,user,newtarg,move,true)
            @battle.pbDisplay(_INTL("{1}'s attack strikes {2} as well!",user.pbThis,newtarg.pbThis(true)))
            @battle.pbHideAbilitySplash(user)
          end
        end
        #===========================================================================

    This makes it so any moves that target a single foe will now add an additional target to be hit by that attack. This ability does nothing if there's only one viable target on the field. A "viable target" is one that is both near the user and the original target. So in a triple battle, this ability will not trigger if the only remaining targets are on the sides, and the middle slot is empty. They have to be near each other, as well as near the user.
     
    1,408
    Posts
    10
    Years
    • Seen yesterday
    These are really cool abilities. I have made one myself in essentials, but I have no idea how to code it. I don't know how to post my own thread here so I hope no one minds me asking for help here.
    The ability I made is Hypno Chant. The user strikes at the target with psychic type attacks and there is a 10% chance of that the enemy will fall asleep. I made this ability for Hypno and Drowzee.

    Just copy Poison Touch, which is essentially the same ability except for Poison instead of Sleep. Basically just replace all mentions of "Poison" with "Sleep", change the odds of occurring from 30% to 10% (pbRandom(100)>=10), and replace "next if !move.contactMove?" with "next if !isConst?(move.calcType,PBTypes,:PSYCHIC)?"
     
    6
    Posts
    3
    Years
    • Seen Jan 19, 2021
    Just copy Poison Touch, which is essentially the same ability except for Poison instead of Sleep. Basically just replace all mentions of "Poison" with "Sleep", change the odds of occurring from 30% to 10% (pbRandom(100)>=10), and replace "next if !move.contactMove?" with "next if !isConst?(move.calcType,PBTypes,:PSYCHIC)?"

    Thank you! I forgot about that ability completely...which is just sad because that is the ability I loved abusing in gens 6 and 7.
     
    6
    Posts
    3
    Years
    • Seen Jan 19, 2021
    Just copy Poison Touch, which is essentially the same ability except for Poison instead of Sleep. Basically just replace all mentions of "Poison" with "Sleep", change the odds of occurring from 30% to 10% (pbRandom(100)>=10), and replace "next if !move.contactMove?" with "next if !isConst?(move.calcType,PBTypes,:PSYCHIC)?"

    Ok, sorry to bother again, but essentials is saying there is a problem with line "next if battle.pbRandom(100)>=10" in the ability. what did I do wrong? should I post the full code so we can get a better idea on what happened?
     
    1,408
    Posts
    10
    Years
    • Seen yesterday
    Ok, sorry to bother again, but essentials is saying there is a problem with line "next if battle.pbRandom(100)>=10" in the ability. what did I do wrong? should I post the full code so we can get a better idea on what happened?

    There's no reason for that line to be causing an error unless you placed it somewhere it shouldn't be. Paste the code if you can't figure it out.
     
    Back
    Top