approved by The Immortal and scpinion
original idea by Throbulator36
special thanks to XpRienzo and Snaquaza
was co-lead by me and Spandan
Here we are, in Generation 7! The new Generation brings many new and unique things - and with it, the possibility to have multiple abilities on a Pokémon!
Ever wished that Salamence can have both of its abilities - Intimidate and Moxie at the same time? Ever wished that a Pokemon could use all of its abilities to their full potential? Here is the OM for you!
In this meta, a Pokemon can have all of its abilities at the same time. Here's is the original thread from when it was a Pet Mod. An example is if you use Clefable, it will have all of its abilities- Cute Charm, Magic Guard, & Unaware at the same time. This gives it a huge buff since all of its abilities are quite useful.
Rules:
Mechanic: Pokemon can have all of their abilities at the same time.This excludes banned or unreleased abilities. This includes unreleased abilities.
Clauses: OU clauses,Evasion Abilities Clause
Bans: OU banlist, Excadrill, Porygon-Z, Bibarel, Bidoof, Diglett, Dugtrio, Glalie, Gothita, Gothitelle, Gothorita, Octillery, Remoraid, Smeargle, Snorunt, Trapinch, Wobbuffet, and Wynaut
Unbans: None at the moment
Strategy:
Abilities have a huge impact on how a Pokemon performs in a battle, and since now a Pokemon gains all of its abilities, it can receive a huge buff, offensively on some and defensive on some.
Increase Viability:
: Gaining both Magic Guard and Unaware gives it a nice buff. Cute Charm isn't that useful, but it might come handy.
: Sand Force + Sand Stream! This lets it it harder.
: Now this mon gets a HUGE buff, because Intimidate + Moxie is a nice combination, letting it setup easier and sweep.
Decreased Viability:
: This is the only mon that I could think of, because it gets Truant.
Any Pokemon that gets Klutz.
Q&A:
Q: What happens if a Pokemon get Trace as an innate ability?
A: Trace was fixed, and now it is supposed to copy an ability from the opponent randomly.
Q: Do Mega Pokemon keep the innate abilities after Mega Evolution?
A: No, Mega Pokemon lose the innates and have their standard ability.
Q: Does Greninja get Battle Bond, Protean, and Torrent all at once?
A: No. In-game, there are actually three formes of Greninja: one regular Greninja with Torrent and Protean, one regular Greninja (stat-wise) with just Battle Bond, and Ash-Greninja. As such, Greninja doesn't get all three abilities at once in Pokebilities for the same reason that Tornadus-Therian doesn't get Prankster or Defiant. This also applies to Zygarde-10%, which means it doesn't need to be banned like Pokemon with Moody do.
Resources:
Replays:
[1] - This one is good
[2] - Another good one
[3] - Shows a team which uses TR
Playability:
Yes its Playable! It took a while to code, but yes its possible. At the moment its playable on DragonHeaven and ROM, and you can use the code below to implement it on your server!
Code:
original idea by Throbulator36
special thanks to XpRienzo and Snaquaza
was co-lead by me and Spandan
Ever wished that Salamence can have both of its abilities - Intimidate and Moxie at the same time? Ever wished that a Pokemon could use all of its abilities to their full potential? Here is the OM for you!
In this meta, a Pokemon can have all of its abilities at the same time. Here's is the original thread from when it was a Pet Mod. An example is if you use Clefable, it will have all of its abilities- Cute Charm, Magic Guard, & Unaware at the same time. This gives it a huge buff since all of its abilities are quite useful.
Rules:
Mechanic: Pokemon can have all of their abilities at the same time.
Clauses: OU clauses,
Bans: OU banlist, Excadrill, Porygon-Z, Bibarel, Bidoof, Diglett, Dugtrio, Glalie, Gothita, Gothitelle, Gothorita, Octillery, Remoraid, Smeargle, Snorunt, Trapinch, Wobbuffet, and Wynaut
Unbans: None at the moment
Strategy:
Abilities have a huge impact on how a Pokemon performs in a battle, and since now a Pokemon gains all of its abilities, it can receive a huge buff, offensively on some and defensive on some.
Increase Viability:
Decreased Viability:
Any Pokemon that gets Klutz.
Q&A:
Q: What happens if a Pokemon get Trace as an innate ability?
A: Trace was fixed, and now it is supposed to copy an ability from the opponent randomly.
Q: Do Mega Pokemon keep the innate abilities after Mega Evolution?
A: No, Mega Pokemon lose the innates and have their standard ability.
Q: Does Greninja get Battle Bond, Protean, and Torrent all at once?
A: No. In-game, there are actually three formes of Greninja: one regular Greninja with Torrent and Protean, one regular Greninja (stat-wise) with just Battle Bond, and Ash-Greninja. As such, Greninja doesn't get all three abilities at once in Pokebilities for the same reason that Tornadus-Therian doesn't get Prankster or Defiant. This also applies to Zygarde-10%, which means it doesn't need to be banned like Pokemon with Moody do.
Resources:
Replays:
[1] - This one is good
[2] - Another good one
[3] - Shows a team which uses TR
Playability:
Yes its Playable! It took a while to code, but yes its possible. At the moment its playable on DragonHeaven and ROM, and you can use the code below to implement it on your server!
Code:
Code by urkerab
Code:
{
name: "[Gen 7] Pokébilities",
desc: [
"Pokémon have all their natural abilities at the same time.",
"• <a href=\"https://www.smogon.com/forums/threads/3588652/\">Pokébilities</a>",
],
mod: 'pokebilities',
ruleset: ["[Gen 7] Pokebank OU"],
onBegin: function() {
let banlistTable = this.getBanlistTable(this.getFormat('gen7ou'));
let allPokemon = this.p1.pokemon.concat(this.p2.pokemon);
for (let i = 0, len = allPokemon.length; i < len; i++) {
let pokemon = allPokemon[i];
if (pokemon.ability === 'battlebond') {
pokemon.innates = [];
continue;
}
pokemon.innates = Object.keys(pokemon.template.abilities).filter(key => key !== 'S' && (key !== 'H' || !pokemon.template.unreleasedHidden)).map(key => toId(pokemon.template.abilities[key])).filter(ability => ability !== pokemon.ability && !banlistTable[ability]);
}
},
onSwitchInPriority: 1,
onSwitchIn: function(pokemon) {
pokemon.innates.forEach(innate => pokemon.addVolatile("other" + innate, pokemon));
},
onAfterMega: function(pokemon) {
pokemon.innates.forEach(innate => pokemon.removeVolatile("other" + innate, pokemon));
pokemon.innates = [];
},
},
Code:
'use strict';
exports.BattleScripts = {
init: function() {
Object.values(this.data.Abilities).forEach(ability => {
if (ability.id === 'trace') return;
let id = 'other' + ability.id;
this.data.Statuses[id] = Object.assign({}, ability);
this.data.Statuses[id].id = id;
this.data.Statuses[id].noCopy = true;
this.data.Statuses[id].effectType = "Ability";
this.data.Statuses[id].fullname = 'ability: ' + ability.name;
});
},
pokemon: {
hasAbility: function(ability) {
if (this.ignoringAbility()) return false;
if (Array.isArray(ability)) return ability.some(ability => this.hasAbility(ability));
ability = toId(ability);
return this.ability === ability || !!this.volatiles["other"+ability];
},
},
};
Code:
'use strict';
exports.BattleStatuses = {
othertrace: {
desc: "On switch-in, this Pokemon copies a random adjacent opposing Pokemon's Ability. If there is no Ability that can be copied at that time, this Ability will activate as soon as an Ability can be copied. Abilities that cannot be copied are Flower Gift, Forecast, Illusion, Imposter, Multitype, Stance Change, Trace, and Zen Mode.",
shortDesc: "On switch-in, or when it can, this Pokemon copies a random adjacent foe's Ability.",
onUpdate: function (pokemon) {
let possibleInnates = [];
let possibleTargets = [];
for (let i = 0; i < pokemon.side.foe.active.length; i++) {
let target = pokemon.side.foe.active[i];
if (target && !target.fainted) {
possibleInnates = possibleInnates.concat(target.innates);
possibleTargets = possibleTargets.concat(target.innates.map(innate => target));
}
}
while (possibleInnates.length) {
let rand = 0;
if (possibleInnates.length > 1) rand = this.random(possibleInnates.length);
let innate = possibleInnates[rand];
let bannedAbilities = {comatose:1, flowergift:1, forecast:1, illusion:1, imposter:1, multitype:1, schooling:1, stancechange:1, trace:1, zenmode:1};
if (bannedAbilities[innate]) {
possibleInnates.splice(rand, 1);
possibleTargets.splice(rand, 1);
continue;
}
this.add('-ability', pokemon, innate, '[from] ability: Trace', '[of] ' + possibleTargets[rand]);
pokemon.removeVolatile("othertrace", pokemon);
pokemon.addVolatile("other" + innate, pokemon);
return;
}
},
id: "othertrace",
name: "Trace",
rating: 3,
num: 36,
noCopy: true,
effectType: "Ability",
fullName: "ability: Trace",
},
};
Last edited: