Choonmons [Version δ]

Pikachuun

邪法使い_CC
is a Pre-Contributor
#1
Approved By Eevee General

Choonmons!
It's a metagame™
Current Version: δ​

Ever since the sequel to the first metagame ever, OU 2 Electric Boogaloo, no human being could comprehend what Other Metagames would come to, right now. This is Choonmons. What's Choonmons? Let me tell you. It's stally, offensive, and in possession of the best Pokemon: Pikachu.

The purpose of this metagame was to make Pikachu as viable as possible in the OU metagame.
I have succeeded.

Then I got bored and started changing other things, and now we have this.

PFAQ:
How do I play this metagame?

Due to mechanics/Pokemon/moves/etc. that are changed, you can really only play this on a server that has it, such as my own that is only occasionally up or Dragon Heaven.

What inspired you to make this abomination?
Idk, the thought just came to me.

What's the banlist?
Currently, the banlist is the OU banlist minus Kangaskhanite and Gengarite, which I nerfed. I plan to ban all legends in the future with gratuitous buffing to justify it. The clauses are OU minus OHKO clause, since it's pointless.

Is it really both stally AND offensive?
At least from what I tested the 2 playstyles seemed to be good.

Is Pikachu OP?
Yes.
Will it be banned?
No.

Well, what changed?
I'm glad you asked.

img
Pokemon:
HP | Atk | Def | SpA | SpD | Spe
Type1/Type2
Ability1 / Ability2 | AbilityH
Anything Else?
Each of these are optional, if you don't see one of them most likely it didn't change.


Venusaur:
83 | 85 | 89 | 100 | 109 | 84 [550]
No Type Change
Overgrow | Leaf Guard

Venusaur-Mega-X:
83 | 114 | 89 | 150 | 114 | 100 [650]
Grass/Fire
Chlorophyll
Requires Venusaurite X

Venusaur-Mega-Y [Replaces Venusaur-Mega]:
83 | 100 | 130 | 119 | 144 | 74 [650]
Grass/Poison
Thick Fat
Requires Venusaurite Y


Charizard:
83 | 89 | 84 | 109 | 85 | 100 [550]
No other changes.

Charizard-Mega-X:
83 | 140 | 107 | 135 | 85 | 100 [650]
Has intrinsic levitation.

Charizard-Mega-Y:
83 | 109 | 84 | 159 | 115 | 100 [650]
No other changes.


Blastoise:
84 | 85 | 109 | 89 | 105 | 83 [550]
Water/Steel
No other changes.

Blastoise-Mega-X [Replaces Blastoise-Mega]:
84 | 100 | 119 | 169 | 115 | 68 [650]
Water/Steel
Requires Blastoisinite X.

Blastoise-Mega-Y:
84 | 85 | 159 | 109 | 155 | 63 [650]
Water/Steel
Shell Armor
Requires Blastoisinite Y.


Butterfree:
105 | 50 | 60 | 110 | 90 | 65 [485]
Bug/Psychic
Swarm / Tinted Lens | Magic Guard
Has intrinsic levitation.

Butterfree-Mega:
105 | 20 | 105 | 160 | 125 | 65 [585]
Bug/Psychic
Magic Bounce
Has intrinsic levitation. Requires Butterfrite.


Beedrill:
65 | 110 | 90 | 50 | 60 | 105 [485]
Swarm / Technician | Sniper
Has intrinsic levitation.

Beedrill-Mega:
65 | 160 | 105 | 20 | 80 | 150 [585]
Has intrinsic levitation.


Pidgeot:
83 | 60 | 85 | 110 | 90 | 101 [529]
+Hyper Voice, +Aura Sphere

Pidgeot-Mega:
83 | 60 | 95 | 150 | 105 | 136 [629]
No other changes.


Fearow:
83 | 105 | 80 | 60 | 75 | 102 [500]
Defiant / Keen Eye | Sniper
+Brave Bird

Fearow-Mega:
83 | 140 | 100 | 60 | 95 | 132 [600]
Normal/Flying
Reckless
Requires Fearowite.


Pikachu(-Cosplay):
66 | 121 | 88 | 110 | 88 | 132 [605]
Electric / Ground
Static / Lightning Rod | Sheer Force
+See the below list.
Loses access to Light Ball and Eviolite.

Pikachu-Rock-Star:
66 | 132 | 110 | 99 | 77 | 121 [605]
Electric / Steel
Static / Lightning Rod | Filter
+See the below list.
Loses access to Light Ball and Eviolite.

Pikachu-Belle:
66 | 110 | 121 | 110 | 121 | 77 [605]
Electric / Ice
Static / Lightning Rod | Magic Bounce
+See the below list.
Loses access to Light Ball and Eviolite.

Pikachu-Pop-Star:
66 | 88 | 88 | 132 | 121 | 110 [605]
Electric / Fairy
Static / Lightning Rod | Magic Guard
+See the below list.
Loses access to Light Ball and Eviolite.

Pikachu-Libre:
66 | 143 | 121 | 77 | 121 | 77 [605]
Electric / Fighting
Static / Lightning Rod | Iron Fist
+See the below list.
Loses access to Light Ball and Eviolite.

Pikachu-PhD:
66 | 132 | 99 | 132 | 110 | 66 [605]
Electric / Psychic
Static / Lightning Rod | Analytic
+See the below list.
Loses access to Light Ball and Eviolite.


Raichu:
65 | 117 | 104 | 117 | 104 | 78
Electric / Dark
Static / Lightning Rod | Tough Claws
+See the below list.

Raichu-Mega:
65 | 157 | 94 | 157 | 94 | 118
Electric / Dark
Aftermath

The below list:
All: Flamethrower, Fire Punch, Thunderpunch, Dazzling Gleam, Moonblast, Ice Beam, Focus Blast, Poison Jab, Dark Pulse, Shadow Ball, Hyper Voice, Sludge Bomb, Stone Edge, Rock Slide, Bulk Up, Swords Dance, Calm Mind, Electric Terrain [Level-up], Extreme Speed [Level-up], Surf [HM], Fly [HM], Recover
The below only apply to Pikachu:
(-Cosplay): Earthquake, Earth Power, Fissure, Heaven's Crack
-Rock-Star: Meteor Mash, Iron Head, Flash Cannon, Bloodthirsty Blade
-Belle: Icicle Crash, Blizzard, Sheer Cold, Perfect Glacialist
-Pop-Star: Draining Kiss, Light of Ruin, Play Rough, Valkyrie Arrow
-Libre: Flying Press, Close Combat, Superpower, Imprisoned Strike
-PhD: Psyshock, Psychic, Zen Headbutt, Genesis Nova


Golduck:
Water / Ghost
90 | 82 | 78 | 115 | 90 | 85 [530]
Cloud Nine | Swift Swim | Drizzle


Alakazam:
55 | 50 | 45 | 135 | 100 | 120 [505]
No other changes.

Alakazam-Mega:
55 | 50 | 65 | 175 | 110 | 150 [605]
Technician
Has intrinsic levitation.


Machamp:
No changes.

Machamp-Mega:
90 | 175 | 100 | 50 | 115 | 75 [605]
Fighting
Guts
Requires Machampite.


Slowbro:
95 | 100 | 110 | 75 | 80 | 30 [490]
No other changes.

Slowbro-Mega:
95 | 130 | 180 | 75 | 80 | 30 [590]
No other changes.


Slowking:
No changes.

Slowking-Mega:
95 | 75 | 80 | 130 | 180 | 30 [590]
Water/Psychic
Unaware
Requires Slowkingite.


Gengar:
Prankster
Has intrinsic levitation.

Gengar-Mega:
Prankster
Has intrinsic levitation.


Happiny:
128 | 10 | 80 | 10 | 80 | 32 [340]
Normal/Fairy
+Soft-Boiled, +Wish
Gains access to Lucky Punch.

Chansey:
255 | 90 | 140 | 15 | 15 | 55 [570]
Loses access to Eviolite.

Blissey:
255 | 15 | 15 | 90 | 140 | 55 [570]
Fairy
Gains access to Lucky Punch.


Mr. Mime:
90 | 45 | 105 | 100 | 130 | 70 [540]
+Recover, +Parting Shot, +Metal Burst, +Entrainment, +Heal Bell, +Knock Off

Mr. Mime-Mega (also known as Adrian Marin BH):
90 | 45 | 155 | 120 | 170 | 60 [640]
Psychic/Fairy
Stall
Requires Mimezite.


Pinsir:
75 | 130 | 100 | 55 | 70 | 95 [530]
No other changes.

Pinsir-Mega:
75 | 160 | 120 | 65 | 90 | 115 [630]
No other changes.


Gyarados:
Water/Dark
Has intrinsic levitation.

Gyarados-Mega:
Water/Dark
Has intrinsic levitation.


Porygon:
Electric
Trace / Download | Lightningrod

Porygon2:
85 | 60 | 125 | 100 | 135 | 50 [555]
Electric/Psychic
Has intrinsic levitation. Loses access to Eviolite.

Porygon-Z:
85 | 90 | 60 | 145 | 65 | 110 [555]
Electric/Ghost
Trace/Download | Adaptability
Has intrinsic levitation.


Aerodactyl:
Rock/Dragon
Has intrinsic levitation, +Head Smash

Aerodactyl-Mega:
Rock/Dragon
Has intrinsic levitation.


Meganium:
90 | 83 | 119 | 68 | 125 | 65 [550]
+Power Whip

Meganium-Mega (aka Teranium):
90 | 118 | 149 | 73 | 155 | 65 [650]
Grass
Flower Veil
Requires Meganiumite.


Typhlosion:
78 | 69 | 78 | 129 | 85 | 106 [550]
No other changes.

Typhlosion-Mega:
78 | 94 | 98 | 144 | 105 | 126 [650]
Fire
Sheer Force
Requires Typhlosionite.


Feraligatr:
85 | 110 | 100 | 84 | 88 | 83 [550]
No other changes.

Feraligatr-Mega:
85 | 145 | 120 | 104 | 98 | 98 [650]
Water/Dragon
Sheer Force
Requires Feraligatrite.


Xatu:
80 | 75 | 85 | 100 | 110 | 90 [540]
+Whirlwind


Ampharos:
+Tail Glow

Ampharos-Mega:
90 | 115 | 85 | 155 | 120 | 45 [610]
Fur Coat


Sceptile:
Grass / Dragon
70 | 85 | 75 | 115 | 85 | 120 [550]

Sceptile-Mega:
70 | 100 | 95 | 145 | 95 | 145 [650]


Blaziken:
80 | 120 | 70 | 110 | 70 | 100 [550]
Blaze | Reckless

Blaziken-Mega:
80 | 150 | 80 | 140 | 80 | 120 [650]
Reckless


Swampert:
100 | 110 | 110 | 75 | 100 | 60 [550]

Swampert-Mega:
100 | 150 | 130 | 75 | 120 | 60 [650]


Gastrodon:
123 | 83 | 83 | 100 | 100 | 51 [540]
Sticky Hold / Storm Drain | Regenerator


Doublade:
60 | 125 | 150 | 60 | 70 | 35 [500]
Can no longer use Eviolite.


Aegislash:
60 | 100 | 150 | 55 | 85 | 50 [500] {Shield}
60 | 150 | 100 | 85 | 55 | 50 [500] {Blade}
Aura Sphere: 90 BP | 10% to lower SpD | 16 PP
Boomburst: 100 BP.
Bubble Beam: 90 BP | 16 PP
Dark Pulse: 90 BP | 10% to flinch | 16 PP
Dazzling Gleam: 90 BP | 10% to lower SpA.
Defog: Is a gen VI HM.
Draco Meteor and its clones: 140 BP, similar distribution to Draco Meteor for clones.
Fissure: Draco Meteor Clone
Focus Blast: 85% Accuracy
Freeze-Dry: 80 BP
Guillotine: 70 BP | 90% Accuracy | Hits twice.
Horn Drill: 100 BP | 90% Accuracy | Automatically crits.
Hydro Pump: 120 BP | 10% to flinch. | 85% acc
Knock Off: 70 BP | No power boost upon knocking off an item.
Leech Life: 75 BP | 16 PP
Light of Ruin: Draco Meteor Clone
Moonblast: 120 BP | 10% to lower SpA | 85% acc | 8 PP. All Pokemon who learn Dazzling Gleam learn this via TM.
Muddy Water: 80 BP | Bonus Ground typing
Scald: 10% to burn. | 16 PP | Super-effective against Water-types.
Shadow Ball: 90 BP | 10% to lower SpD
Sheer Cold: Draco Meteor Clone
Sludge Bomb: 10% to Poison.
Sludge Wave: 100 BP | No more poison chance.
Sucker Punch: 40 BP | 48 PP | Does not fail via its own method.
Surf: 100 BP | 16 PP
Tail Glow: +1 SpA, +2 SpD.
Volt Tackle: No more recoil.

Dynamo Cannon: Special Equivalent of Volt Tackle.
Heaven's Crack: 120 BP | Ground | Smacks down the opposing Flying or Floating Pokemon. | 8 PP | 100% Acc | Physical
Bloodthirsty Blade: 100 BP | Steel | Heals the user by 50% of the damage dealt. | 8 PP | 100% Acc | Physical
Perfect Glacialist: 9 BP | Ice | Hits 9 times. Has a 0.9% chance to freeze the opponent. | 9 PP | 99% Acc | Special
Valkyrie Arrow: 250 BP | Fairy | The user faints. | 8 PP | 100% Acc | Special
Imprisoned Strike: 100 BP | Fighting | The enemy becomes Imprisoned. | 8 PP | 100% Acc | Physical
Genesis Nova: 180 BP | Psychic | The user's Defense, Special Defense, and Speed drop by 1 stage. | 8 PP | 100% Acc | Special
Leaf Guard: Acts like Hydration for Sun.
Healer: 1/6 chance to heal yourself or an adjacent ally [each is rolled seperately]
Big Pecks: Defiant but for Defense
Keen Eye: 1.2x accuracy in addition to current effect.
Tangled Feet: While the user is confused its moves and its opponents have an accuracy of 0.
Parental Bond: Second hit does 1/3 damage, fixed damage moves don't get used twice, secondary effects do not trigger on the second hit.
Stall: Reduces all damage taken by 90% and does its normal effect.
Steel is weak to Electric, since Steel is more of a "metal" type in general.
Ice resists Water, because Water resists Ice.
Fairy is weak to Dark due to a light/dark relationship.
You have a 1/3 chance to thaw from freeze now.


But wait, you may be saying.
How do I put this on my own server?
The code will be in the 2nd post to save space in this one. Off-topic from the code, the 3rd post will be potential topics of interest.

That's it for now, this is still not complete but more updates will be added as time passes and the meta gets more versions. Please stay tuned, the meta will be completed soon™
 
Last edited:

Pikachuun

邪法使い_CC
is a Pre-Contributor
#2
COAD:

Code:
  {
     name: "Choonmons δ",
     desc: ["Choonmons is a pet mod created by Choon. Yup.<br>&bullet; <a href=\"http://www.smogon.com/forums/threads/3546063/\">Choonmons Thread</a>"],
     section: "Choon-Approved Metagames",
     mod: 'choonmons',
     ruleset: ['Pokemon', 'Sleep Clause Mod', 'Species Clause', 'Moody Clause', 'Evasion Moves Clause', 'Endless Battle Clause', 'HP Percentage Mod', 'Cancel Mod', 'Team Preview', 'Swagger Clause', 'Baton Pass Clause'],
     banlist: ['Uber', 'Soul Dew', 'Lucarionite', 'Mawilite', 'Salamencite'],
     
     onSwitchIn: function (pokemon) {
       let changed = {'Venusaur-Mega-X':true, 'Blastoise':true, 'Butterfree':true, 'Pikachu':true, 'Raichu':true, 'Golduck':true, 'Happiny':true, 'Blissey':true, 'Gyarados':true, 'Aerodactyl':true, 'Feraligatr-Mega':true, 'Sceptile':true};
       let bt = pokemon.baseTemplate;
       if (bt.baseSpecies in changed || (bt.actualSpecies && bt.actualSpecies in changed)) {
         let types = bt.types;
         let bTypes = (types.length === 1 || types[1] === 'caw') ? types[0] : types.join('/');
         this.add('-start', pokemon, 'typechange', bTypes, '[silent]');
       }
       if (bt.actualSpecies) this.add('-start', pokemon, bt.actualSpecies, '[silent]'); //Show the pokemon's actual species
     },
     onSwitchOut: function (pokemon) {
       if (pokemon.baseTemplate.actualSpecies) this.add('-end', pokemon, pokemon.baseTemplate.actualSpecies, '[silent]');
     },
   },
Code:
'use strict';

exports.BattleAbilities = {
   "bigpecks": {
     inherit: true,
     onBoost: function () {},
     onAfterEachBoost: function (boost, target, source) {
       if (!source || target.side === source.side) {
         return;
       }
       let statsLowered = false;
       for (let i in boost) {
         if (boost[i] < 0) {
           statsLowered = true;
         }
       }
       if (statsLowered) {
         this.boost({def: 2});
       }
     },
   },
   "healer": {
     inherit: true,
     onResidual: function (pokemon) {
       let allyActive = pokemon.side.active;
       if (allyActive.length === 1) {
         return;
       }
       for (let i = 0; i < allyActive.length; i++) {
         if (allyActive[i] && this.isAdjacent(pokemon, allyActive[i]) && allyActive[i].status && !this.random(6)) {
           this.debug('healer');
           this.add('-activate', pokemon, 'ability: Healer');
           allyActive[i].cureStatus();
         }
       }
       if (pokemon.hp && pokemon.status && !this.random(6)) {
         this.debug('healer');
         this.add('-activate', pokemon, 'ability: Healer');
         pokemon.cureStatus();
       }
     },
   },
   "keeneye": {
     inherit: true,
     onSourceAccuracy: function (accuracy) {
       if (typeof accuracy !== 'number') return;
       this.debug('keeneye - enhancing accuracy');
       return accuracy * 1.2;
     },
   },
   "leafguard": {
     inherit: true,
     onSetStatus: function () {},
     onTryHit: function () {},
     onResidualOrder: 5,
     onResidualSubOrder: 1,
     onResidual: function (pokemon) {
       if (pokemon.status && this.isWeather(['sunnyday', 'desolateland'])) {
         this.debug('leafguard');
         pokemon.cureStatus();
       }
     },
   },
   "parentalbond": {
     inherit: true,
     onPrepareHit: function (move, pokemon, target) {
       if (move.category !== 'Status' && !move.selfdestruct && !move.multihit && !move.damage && ((target.side && target.side.active.length < 2) || move.target in {any:1, normal:1, randomNormal:1})) {
         move.multihit = 2;
         pokemon.addVolatile('parentalbond');
       }
     },
     effect: {
       duration: 1,
       onBasePowerPriority: 8,
       onBasePower: function (basePower) {
         if (this.effectData.hit) {
           return this.chainModify(1/3);
         } else {
           this.effectData.hit = true;
         }
       },
       onModifyMove: function (move) {
         if (this.effectData.hitt) {
           if (move.secondaries) delete move.secondaries;
           if (move.seconadry) delete move.secondary;
         } else {
           this.effectData.hitt = true;
         }
       }
     },
   },
   "stall": {
     inherit: true,
     onSourceModifyDamage: function (damage, source, target, move) {
       this.debug('Stall neutralize');
       return this.chainModify(0.9);
     },
   },
   "tangledfeet": {
     inherit: true,
     onAccuracy: function (accuracy, target) {
       if (typeof accuracy !== 'number') return;
       if (target && target.volatiles['confusion']) {
         this.debug('Tangled Feet - nullifying accuracy');
         return 0;
       }
     },
     onModifyMove: function (move, pokemon, target) {
       if (pokemon.volatiles['confusion']) {
         this.debug('Tangled Feet - nullifying accuracy');
         move.accuracy = 0;
       }
     },
   },
   "wonderguard": {
     inherit: true,
     onDamage: function (damage, target, source, effect) {
       if (effect.effectType !== 'Move') {
         return false;
       }
     },
     onTryHit: function (target, source, move) {
       if (target.template.speciesid !== 'shedinja' || target === source || move.category === 'Status' || move.type === '???' || move.id === 'struggle' || move.isFutureMove) return;
       this.debug('Wonder Guard immunity: ' + move.id);
       if (target.runEffectiveness(move) <= 0) {
         this.add('-activate', target, 'ability: Wonder Guard');
         return null;
       }
     },
   },
};
Code:
'use strict';

exports.BattleItems = {
   "lightball": {
     inherit: true,
     onModifyAtk: function (atk, pokemon) {
       if (pokemon.baseTemplate.baseSpecies === 'Pichu') {
         return this.chainModify(2);
       }
     },
     onModifySpA: function (spa, pokemon) {
       if (pokemon.baseTemplate.baseSpecies === 'Pichu') {
         return this.chainModify(2);
       }
     },
   },
   "luckypunch": {
     inherit: true,
     onModifyMove: function (move, user) {
       if (user.baseTemplate.species === 'Happiny' || user.baseTemplate.species === 'Chansey' || user.baseTemplate.species === 'Blissey') {
         move.critRatio += 2;
       }
     },
   },
   
   
   //////////////////////////////
   //  ChoonMod: Custom Items  //
   //////////////////////////////

   "venusauritex": {
     id: "venusauritex",
     name: "Venusaurite X",
     spritenum: 608,
     megaStone: "Venusaur-Mega-X",
     megaEvolves: "Venusaur",
     onTakeItem: function (item, source) {
       if (item.megaEvolves === source.baseTemplate.baseSpecies) return false;
       return true;
     },
     num: -1100,
     gen: 6,
     desc: "If holder is a Venusaur, this item allows it to Mega Evolve in battle.",
   },
   "venusauritey": {
     id: "venusauritey",
     name: "Venusaurite Y",
     spritenum: 608,
     megaStone: "Venusaur-Mega-Y",
     megaEvolves: "Venusaur",
     onTakeItem: function (item, source) {
       if (item.megaEvolves === source.baseTemplate.baseSpecies) return false;
       return true;
     },
     num: 659,
     gen: 6,
     desc: "If holder is a Venusaur, this item allows it to Mega Evolve in battle.",
   },
   "blastoisinitex": {
     id: "blastoisinitex",
     name: "Blastoisinite X",
     spritenum: 583,
     megaStone: "Blastoise-Mega-X",
     megaEvolves: "Blastoise",
     onTakeItem: function (item, source) {
       if (item.megaEvolves === source.baseTemplate.baseSpecies) return false;
       return true;
     },
     num: -6,
     gen: 6,
     desc: "If holder is a Blastoise, this item allows it to Mega Evolve in battle.",
   },
   "blastoisinitey": {
     id: "blastoisinitey",
     name: "Blastoisinite Y",
     spritenum: 583,
     megaStone: "Blastoise-Mega-Y",
     megaEvolves: "Blastoise",
     onTakeItem: function (item, source) {
       if (item.megaEvolves === source.baseTemplate.baseSpecies) return false;
       return true;
     },
     num: -1101,
     gen: 6,
     desc: "If holder is a Blastoise, this item allows it to Mega Evolve in battle.",
   },
   "butterfrite": {
     id: "butterfrite",
     name: "Butterfrite",
     spritenum: 576,
     megaStone: "Butterfree-Mega",
     megaEvolves: "Butterfree",
     onTakeItem: function (item, source) {
       if (item.megaEvolves === source.baseTemplate.baseSpecies) return false;
       return true;
     },
     num: -1102,
     gen: 6,
     desc: "If holder is a Butterfree, this item allows it to Mega Evolve in battle.",
   },
   "fearowite": {
     id: "fearowite",
     name: "Fearowite",
     spritenum: 622,
     megaStone: "Fearow-Mega",
     megaEvolves: "Fearow",
     onTakeItem: function (item, source) {
       if (item.megaEvolves === source.baseTemplate.baseSpecies) return false;
       return true;
     },
     num: -1103,
     gen: 6,
     desc: "If holder is a Fearow, this item allows it to Mega Evolve in battle.",
   },
   "raichuite": {
     id: "raichuite",
     name: "Raichuite",
     spritenum: 0,
     megaStone: "Raichu-Mega",
     megaEvolves: "Raichu",
     onTakeItem: function (item, source) {
       if (item.megaEvolves === source.baseTemplate.baseSpecies) return false;
       return true;
     },
     num: -1104,
     gen: 6,
     desc: "If holder is a Raichu, this item allows it to Mega Evolve in battle.",
   },
   "machampite": {
     id: "machampite",
     name: "Machampite",
     spritenum: 621,
     megaStone: "Machamp-Mega",
     megaEvolves: "Machamp",
     onTakeItem: function (item, source) {
       if (item.megaEvolves === source.baseTemplate.baseSpecies) return false;
       return true;
     },
     num: -1105,
     gen: 6,
     desc: "If holder is a Machamp, this item allows it to Mega Evolve in battle.",
   },
   "slowkingite": {
     id: "slowkingite",
     name: "Slowkingite",
     spritenum: 621,
     megaStone: "Slowking-Mega",
     megaEvolves: "Slowking",
     onTakeItem: function (item, source) {
       if (item.megaEvolves === source.baseTemplate.baseSpecies) return false;
       return true;
     },
     num: -1106,
     gen: 6,
     desc: "If holder is a Slowking, this item allows it to Mega Evolve in battle.",
   },
   "mimezite": {
     id: "mimezite",
     name: "Mimezite",
     spritenum: 621,
     megaStone: "Mr. Mime-Mega",
     megaEvolves: "Mr. Mime",
     onTakeItem: function (item, source) {
       if (item.megaEvolves === source.baseTemplate.baseSpecies) return false;
       return true;
     },
     num: -1107,
     gen: 6,
     desc: "If holder is a Mr. Mime, this item allows it to Mega Evolve in battle.",
   },
   "meganiumite": {
     id: "meganiumite",
     name: "Meganiumite",
     spritenum: 608,
     megaStone: "Meganium-Mega",
     megaEvolves: "Meganium",
     onTakeItem: function (item, source) {
       if (item.megaEvolves === source.baseTemplate.baseSpecies) return false;
       return true;
     },
     num: -1108,
     gen: 6,
     desc: "If holder is a Meganium, this item allows it to Mega Evolve in battle.",
   },
   "typhlosionite": {
     id: "typhlosionite",
     name: "Typhlosionite",
     spritenum: 589,
     megaStone: "Typhlosion-Mega",
     megaEvolves: "Typhlosion",
     onTakeItem: function (item, source) {
       if (item.megaEvolves === source.baseTemplate.baseSpecies) return false;
       return true;
     },
     num: -1109,
     gen: 6,
     desc: "If holder is a Typhlosion, this item allows it to Mega Evolve in battle.",
   },
   "feraligatrite": {
     id: "feraligatrite",
     name: "Feraligatrite",
     spritenum: 589,
     megaStone: "Feraligatr-Mega",
     megaEvolves: "Feraligatr",
     onTakeItem: function (item, source) {
       if (item.megaEvolves === source.baseTemplate.baseSpecies) return false;
       return true;
     },
     num: -1110,
     gen: 6,
     desc: "If holder is a Feraligatr, this item allows it to Mega Evolve in battle.",
   },
};
Code:
'use strict';

exports.BattleMovedex = {
   aurasphere: {
     inherit: true,
     accuracy: 100,
     basePower: 90,
     pp: 10,
     secondary: {
       chance: 10,
       boosts: {
         spd: -1
       }
     },
   },
   boomburst: {
     inherit: true,
     basePower: 100,
   },
   bubblebeam: {
     inherit: true,
     basePower: 90,
     pp: 10,
   },
   darkpulse: {
     inherit: true,
     basePower: 90,
     pp: 10,
     secondary: {
       chance: 10,
       volatileStatus: 'flinch'
     },
   },
   dazzlinggleam: {
     inherit: true,
     basePower: 90,
     pp: 10,
     secondary: {
       chance: 10,
       boosts: {
         spa: -1
       }
     },
   },
   dracometeor: {
     inherit: true,
     basePower: 140,
   },
   fissure: {
     inherit: true,
     basePower: 140,
     accuracy: 90,
     ohko: false,
     self: {
       boosts: {
         atk: -2
       }
     },
   },
   focusblast: {
     inherit: true,
     accuracy: 85,
   },
   freezedry: {
     inherit: true,
     basePower: 80,
     pp: 10,
   },
   guillotine: {
     inherit: true,
     basePower: 70,
     accuracy: 90,
     ohko: false,
     multihit: 2,
   },
   horndrill: {
     inherit: true,
     basePower: 100,
     accuracy: 90,
     ohko: false,
     willCrit: true,
   },
   hydropump: {
     inherit: true,
     basePower: 120,
     accuracy: 85,
     secondary: {
       chance: 10,
       volatileStatus: 'flinch'
     },
   },
   knockoff: {
     inherit: true,
     basePower: 70,
     onBasePower: function () {},
   },
   leafstorm: {
     inherit: true,
     basePower: 140,
   },
   leechlife: {
     inherit: true,
     basePower: 75,
     pp: 10,
   },
   lightofruin: {
     inherit: true,
     recoil: false,
     self: {
       boosts: {
         spa: -2
       }
     },
   },
   moonblast: {
     inherit: true,
     basePower: 120,
     accuracy: 85,
     pp: 5,
     secondary: {
       chance: 10,
       boosts: {
         spa: -1
       }
     },
   },
   muddywater: {
     inherit: true,
     basePower: 80,
     onEffectiveness: function (typeMod, type, move) {
       return typeMod + this.getEffectiveness('Ground', type);
     },
   },
   overheat: {
     inherit: true,
     basePower: 140,
   },
   scald: {
     inherit: true,
     basePower: 80,
     pp: 10,
     secondary: {
       chance: 10,
       status: 'brn'
     },
     onEffectiveness: function (typeMod, type) {
       if (type === 'Ice') return 1;
     },
   },
   shadowball: {
     inherit: true,
     basePower: 90,
     secondary: {
       chance: 10,
       boosts: {
         spd: -1
       }
     },
   },
   sheercold: {
     inherit: true,
     basePower: 140,
     accuracy: 90,
     ohko: false,
     self: {
       boosts: {
         spa: -2
       }
     },
   },
   sludgebomb: {
     inherit: true,
     secondary: {
       chance: 10,
       status: 'psn'
     },
   },
   sludgewave: {
     inherit: true,
     basePower: 100,
     secondary: false,
   },
   suckerpunch: {
     inherit: true,
     basePower: 40,
     pp: 48,
     onTry: function () {},
   },
   surf: {
     inherit: true,
     basePower: 100,
     pp: 10,
   },
   tailglow: {
     inherit: true,
     boosts: {
       spa: 1,
       spd: 2
     },
   },
   volttackle: {
     inherit: true,
     recoil: false,
     pp: 10,
   },
   
   
   //////////////////////////////
   //  ChoonMod: Custom Moves  //
   //////////////////////////////
   

   "bloodthirstyblade": {
     num: -1100,
     accuracy: 100,
     basePower: 100,
     category: "Physical",
     desc: "The user recovers 1/2 the HP lost by the target, rounded half up. If Big Root is held by the user, the HP recovered is 1.3x normal, rounded half down.",
     shortDesc: "User recovers 50% of the damage dealt.",
     id: "bloodthirstyblade",
     isViable: true,
     name: "Bloodthirsty Blade",
     pp: 5,
     priority: 0,
     flags: {protect: 1, mirror: 1},
     onPrepareHit: function (target, pokemon, move) {
       this.attrLastMove('[still]');
       this.add('-anim', pokemon, "Mean Look", target);
       this.add('-anim', pokemon, "Night Slash", target);
     },
     drain: [1, 2],
     target: "normal",
     type: "Steel",
   },
   "dynamocannon": {
     num: -1101,
     accuracy: 100,
     basePower: 120,
     category: "Special",
     desc: "Has a 10% chance to paralyze the target.",
     shortDesc: "10% chance to paralyze target.",
     id: "dynamocannon",
     isViable: true,
     name: "Dynamo Cannon",
     pp: 10,
     priority: 0,
     flags: {protect: 1, mirror: 1},
     onPrepareHit: function (target, pokemon, move) {
       this.attrLastMove('[still]');
       this.add('-anim', pokemon, "Recover", pokemon);
       this.add('-anim', pokemon, "Zap Cannon", target);
     },
     secondary: {
       chance: 10,
       status: 'par'
     },
     target: "normal",
     type: "Electric",
   },
   "genesisnova": {
     num: -1102,
     accuracy: 100,
     basePower: 180,
     category: "Special",
     desc: "Lowers the user's Speed, Defense, and Special Defense by 1 stage.",
     shortDesc: "Lowers the user's Defense, Sp. Def, Speed by 1.",
     id: "genesisnova",
     isViable: true,
     name: "Genesis Nova",
     pp: 5,
     priority: 0,
     flags: {protect: 1, mirror: 1},
     onPrepareHit: function (target, pokemon, move) {
       this.attrLastMove('[still]');
       this.add('-anim', pokemon, "Judgment", target);
     },
     self: {
       boosts: {
         def: -1,
         spd: -1,
         spe: -1
       }
     },
     target: "normal",
     type: "Psychic",
   },
   "heavenscrack": {
     num: -1103,
     accuracy: 100,
     basePower: 120,
     category: "Physical",
     desc: "This move can hit airborne Pokemon, which includes Flying-type Pokemon, Pokemon with the Ability Levitate, Pokemon holding an Air Balloon, and Pokemon under the effect of Magnet Rise or Telekinesis. This move can hit a target using Bounce, Fly, or Sky Drop. If this move hits a target under the effect of Bounce, Fly, Magnet Rise, or Telekinesis, the effect ends. If the target is a Flying type that has not used Roost this turn or a Pokemon with the Ability Levitate, it loses its immunity to Ground-type attacks and the Ability Arena Trap as long as it remains active. During the effect, Magnet Rise fails for the target and Telekinesis fails against the target.",
     shortDesc: "Grounds adjacent foes.",
     id: "heavenscrack",
     isViable: true,
     name: "Heaven's Crack",
     pp: 5,
     priority: 0,
     flags: {protect: 1, mirror: 1, nonsky: 1},
     onPrepareHit: function (target, pokemon, move) {
       this.attrLastMove('[still]');
       this.add('-anim', pokemon, "Rock Slide", target);
       this.add('-anim', pokemon, "Fissure", target);
     },
     volatileStatus: 'smackdown',
     ignoreImmunity: {'Ground': true},
     secondary: false,
     target: "allAdjacentFoes",
     type: "Ground",
   },
   "imprisonedstrike": {
     num: -1104,
     accuracy: 100,
     basePower: 100,
     category: "Physical",
     desc: "The user prevents all of its foes from using any moves that the user also knows as long as the user remains active.",
     shortDesc: "No foe can use any move known by the user.",
     id: "imprisonedstrike",
     isViable: true,
     name: "Imprisoned Strike",
     pp: 5,
     priority: 0,
     flags: {contact: 1, protect: 1, mirror: 1},
     onPrepareHit: function (target, pokemon, move) {
       this.attrLastMove('[still]');
       this.add('-anim', pokemon, "Topsy-Turvy", pokemon);
       this.add('-anim', pokemon, "Dragon Ascent", target);
     },
     self: {
       volatileStatus: 'imprison'
     },
     secondary: false,
     target: "normal",
     type: "Fighting",
   },
   "perfectglacialist": {
     num: -1105,
     accuracy: 99,
     basePower: 9,
     category: "Special",
     desc: "Hits nine times. Has a 0.9% chance to freeze the opponent each hit.",
     shortDesc: "Hits 9 times in one turn. 0.9% chance to freeze the target.",
     id: "perfectglacialist",
     isViable: true,
     name: "Perfect Glacialist",
     pp: 9,
     noPPBoosts: true,
     priority: 0,
     flags: {protect: 1, mirror: 1},
     onPrepareHit: function (target, pokemon, move) {
       this.attrLastMove('[still]');
       this.add('-anim', pokemon, "Blizzard", target);
     },
     secondary: {
       chance: 0.9,
       status: 'frz'
     },
     multihit: 9,
     target: "normal",
     type: "Ice",
   },
   "valkyriearrow": {
     num: -1106,
     accuracy: 100,
     basePower: 250,
     category: "Special",
     desc: "The user faints after using this move, even if this move fails for having no target.",
     shortDesc: "Hits adjacent foes. The user faints.",
     id: "valkyriearrow",
     isViable: true,
     name: "Valkyrie Arrow",
     pp: 5,
     priority: 0,
     flags: {protect: 1, mirror: 1},
     onPrepareHit: function (target, pokemon, move) {
       this.attrLastMove('[still]');
       this.add('-anim', pokemon, "Wish", pokemon);
       this.add('-anim', pokemon, "Psystrike", target);
     },
     selfdestruct: true,
     target: "normal",
     type: "Fairy",
   },
};
Code:
'use strict';

exports.BattlePokedex = {
   venusaur: {
     inherit: true,
     baseStats: {hp:83, atk:85, def:89, spa:100, spd:109, spe:84},
     abilities: {0:"Overgrow", H:"Leaf Guard"},
     otherFormes: ["venusaurmegax", "venusaurmegay"],
   },
   venusaurmega: {
     inherit: true,
     baseStats: {hp:83, atk:100, def:130, spa:119, spd:144, spe:74},
   },
   charizard: {
     inherit: true,
     baseStats: {hp:78, atk:89, def:78, spa:109, spd:85, spe:100},
   },
   charizardmegax: {
     inherit: true,
     types: ["Fire", "Dragon", "caw"],
     baseStats: {hp:83, atk:140, def:107, spa:135, spd:85, spe:100},
   },
   charizardmegay: {
     inherit: true,
     baseStats: {hp:83, atk:109, def:84, spa:159, spd:115, spe:100},
   },
   blastoise: {
     inherit: true,
     types: ["Water", "Steel"],
     baseStats: {hp:84, atk:85, def:109, spa:89, spd:105, spe:83},
     otherFormes: ["blastoisemegax", "blastoisemegay"],
   },
   blastoisemega: {
     inherit: true,
     types: ["Water", "Steel"],
     baseStats: {hp:84, atk:100, def:119, spa:169, spd:115, spe:63},
   },
   butterfree: {
     inherit: true,
     types: ["Bug", "Psychic", "caw"],
     baseStats: {hp:105, atk:50, def:60, spa:110, spd:90, spe:65},
     abilities: {0:"Swarm", 1:"Tinted Lens", H:"Magic Guard"},
     otherFormes: ["butterfreemega"],
   },
   beedrill: {
     inherit: true,
     types: ["Bug", "Poison", "caw"],
     baseStats: {hp:65, atk:110, def:90, spa:50, spd:60, spe:105},
     abilities: {0:"Swarm", 1:"Technician", H:"Sniper"},
   },
   pidgeot: {
     inherit: true,
     baseStats: {hp:83, atk:60, def:85, spa:110, spd:90, spe:101},
   },
   pidgeotmega: {
     inherit: true,
     baseStats: {hp:83, atk:60, def:95, spa:150, spd:105, spe:136},
   },
   fearow: {
     inherit: true,
     baseStats: {hp:83, atk:105, def:80, spa:60, spd:75, spe:102},
     abilities: {0:"Defiant", 1:"Keen Eye", H:"Sniper"},
     otherFormes: ["fearowmega"],
   },
   pichu: {
     inherit: true,
     types: ["Electric", "Ground"],
     evos: ["pikachu","raichu"],
   },
   pikachu: {
     inherit: true,
     types: ["Electric", "Ground"],
     baseStats: {hp:66, atk:121, def:88, spa:110, spd:88, spe:132},
     abilities: {0:"Static", 1:"Lightning Rod", H:"Sheer Force"},
     evos: [],
   },
   pikachucosplay: {
     inherit: true,
     types: ["Electric", "Ground"],
     gender: '',
     baseStats: {hp:66, atk:121, def:88, spa:110, spd:88, spe:132},
     abilities: {0:"Static", 1:"Lightning Rod", H:"Sheer Force"},
   },
   pikachurockstar: {
     inherit: true,
     types: ["Electric", "Steel"],
     gender: '',
     baseStats: {hp:66, atk:132, def:110, spa:99, spd:77, spe:121},
     abilities: {0:"Static", 1:"Lightning Rod", H:"Filter"},
   },
   pikachubelle: {
     inherit: true,
     types: ["Electric", "Ice"],
     gender: '',
     baseStats: {hp:66, atk:110, def:121, spa:110, spd:121, spe:77},
     abilities: {0:"Static", 1:"Lightning Rod", H:"Magic Bounce"},
   },
   pikachupopstar: {
     inherit: true,
     types: ["Electric", "Fairy"],
     gender: '',
     baseStats: {hp:66, atk:88, def:88, spa:132, spd:121, spe:110},
     abilities: {0:"Static", 1:"Lightning Rod", H:"Magic Guard"},
   },
   pikachuphd: {
     inherit: true,
     types: ["Electric", "Psychic"],
     gender: '',
     baseStats: {hp:66, atk:132, def:99, spa:132, spd:110, spe:66},
     abilities: {0:"Static", 1:"Lightning Rod", H:"Analytic"},
   },
   pikachulibre: {
     inherit: true,
     types: ["Electric", "Fighting"],
     gender: '',
     baseStats: {hp:66, atk:143, def:121, spa:77, spd:121, spe:77},
     abilities: {0:"Static", 1:"Lightning Rod", H:"Iron Fist"},
   },
   raichu: {
     inherit: true,
     types: ["Electric", "Dark"],
     baseStats: {hp:65, atk:117, def:104, spa:117, spd:104, spe:78},
     abilities: {0:"Static", 1:"Lightning Rod", H:"Tough Claws"},
     otherFormes: ["raichumega"],
   },
   golduck: {
     inherit: true,
     types: ["Water", "Ghost"],
     baseStats: {hp:90, atk:82, def:78, spa:115, spd:90, spe:85},
     abilities: {0:"Cloud Nine", 1:"Swift Swim", H:"Drizzle"},
   },
   alakazam: {
     inherit: true,
     baseStats: {hp:55, atk:50, def:45, spa:135, spd:100, spe:120},
   },
   alakazammega: {
     inherit: true,
     types: ["Psychic", "caw"],
     baseStats: {hp:55, atk:50, def:65, spa:175, spd:110, spe:150},
     abilities: {0:"Technician"},
   },
   machamp: {
     inherit: true,
     otherFormes: ["machampmega"],
   },
   slowbro: {
     inherit: true,
     baseStats: {hp:95, atk:100, def:110, spa:75, spd:80, spe:30},
   },
   slowbromega: {
     inherit: true,
     baseStats: {hp:95, atk:130, def:180, spa:75, spd:80, spe:30},
   },
   slowking: {
     inherit: true,
     otherFormes: ["slowkingmega"],
   },
   gengar: {
     inherit: true,
     types: ["Ghost", "Poison", "caw"],
     abilities: {0:"Prankster"},
   },
   gengarmega: {
     inherit: true,
     types: ["Ghost", "Poison", "caw"],
     abilities: {0:"Prankster"},
   },
   happiny: {
     inherit: true,
     types: ["Normal", "Fairy"],
     baseStats: {hp:128, atk:10, def:80, spa:10, spd:80, spe:32},
     evos: ["chansey","blissey"],
   },
   chansey: {
     inherit: true,
     baseStats: {hp:255, atk:90, def:140, spa:15, spd:15, spe:55},
     evos: [],
   },
   blissey: {
     inherit: true,
     types: ["Fairy"],
     baseStats: {hp:255, atk:15, def:15, spa:90, spd:140, spe:55},
     prevo: "happiny",
   },
   mrmime: {
     inherit: true,
     baseStats: {hp:90, atk:45, def:105, spa:100, spd:130, spe:70},
     otherFormes: ["mrmimemega"],
   },
   pinsir: {
     inherit: true,
     baseStats: {hp:75, atk:130, def:100, spa:55, spd:70, spe:95},
   },
   pinsirmega: {
     inherit: true,
     baseStats: {hp:75, atk:160, def:120, spa:65, spd:90, spe:115},
   },
   gyarados: {
     inherit: true,
     types: ["Water", "Dark", "caw"],
   },
   gyaradosmega: {
     inherit: true,
     types: ["Water", "Dark", "caw"],
   },
   porygon: {
     inherit: true,
     types: ["Electric", "caw"],
     abilities: {0:"Trace", 1:"Download", H:"Lightningrod"},
   },
   porygon2: {
     inherit: true,
     baseStats: {hp:85, atk:60, def:125, spa:100, spd:135, spe:50},
     types: ["Electric", "Psychic", "caw"],
     abilities: {0:"Trace", 1:"Download", H:"Analytic"},
     evos: [],
   },
   porygonz: {
     inherit: true,
     baseStats: {hp:85, atk:90, def:60, spa:145, spd:65, spe:110},
     types: ["Electric", "Ghost", "caw"],
     abilities: {0:"Trace", 1:"Download", H:"Adaptability"},
     prevo: "porygon",
   },
   aerodactyl: {
     inherit: true,
     types: ["Rock", "Dragon", "caw"],
   },
   aerodactylmega: {
     inherit: true,
     types: ["Rock", "Dragon", "caw"],
   },
   meganium: {
     inherit: true,
     baseStats: {hp:90, atk:83, def:119, spa:68, spd:125, spe:65},
     abilities: {0:"Overgrow", H:"Leaf Guard"},
     otherFormes: ["meganiummega"],
   },
   typhlosion: {
     inherit: true,
     baseStats: {hp:78, atk:69, def:78, spa:129, spd:85, spe:106},
     abilities: {0:"Blaze", H:"Flash Fire"},
     otherFormes: ["typhlosionmega"],
   },
   feraligatr: {
     inherit: true,
     baseStats: {hp:85, atk:110, def:100, spa:84, spd:88, spe:83},
     abilities: {0:"Torrent", H:"Sheer Force"},
     otherFormes: ["feraligatrmega"],
   },
   xatu: {
     inherit: true,
     baseStats: {hp:80, atk:75, def:85, spa:100, spd:110, spe:90},
   },
   ampharosmega: {
     inherit: true,
     baseStats: {hp:90, atk:115, def:85, spa:155, spd:120, spe:45},
     abilities: {0:"Fur Coat"},
   },
   sceptile: {
     inherit: true,
     baseStats: {hp:70, atk:85, def:75, spa:115, spd:85, spe:120},
     types: ["Grass", "Dragon"],
   },
   sceptilemega: {
     inherit: true,
     baseStats: {hp:70, atk:100, def:95, spa:145, spd:95, spe:145},
   },
   blaziken: {
     inherit: true,
     baseStats: {hp:80, atk:120, def:70, spa:110, spd:70, spe:100},
     abilities: {0:"Blaze", H:"Reckless"},
   },
   blazikenmega: {
     inherit: true,
     baseStats: {hp:80, atk:150, def:80, spa:140, spd:80, spe:120},
     abilities: {0:"Reckless"},
   },
   swampert: {
     inherit: true,
     baseStats: {hp:100, atk:110, def:110, spa:75, spd:100, spe:60},
   },
   swampertmega: {
     inherit: true,
     baseStats: {hp:100, atk:150, def:130, spa:75, spd:120, spe:80},
   },
   gastrodon: {
     inherit: true,
     baseStats: {hp:123, atk:83, def:83, spa:100, spd:100, spe:51},
     abilities: {0:"Sticky Hold", 1:"Storm Drain", H:"Regenerator"},
   },
   genesectdouse: {
     inherit: true,
     types: ["Bug","Water"],
   },
   genesectshock: {
     inherit: true,
     types: ["Bug","Electric"],
   },
   genesectburn: {
     inherit: true,
     types: ["Bug","Fire"],
   },
   genesectchill: {
     inherit: true,
     types: ["Bug","Ice"],
   },
   honedge: {
     inherit: true,
     evos: ["doublade", "aegislash"],
   },
   doublade: {
     inherit: true,
     baseStats: {hp:60, atk:125, def:150, spa:60, spd:70, spe:35},
     evos: [],
   },
   aegislash: {
     inherit: true,
     baseStats: {hp:60, atk:100, def:150, spa:55, spd:85, spe:50},
   },
   aegislashblade: {
     inherit: true,
     baseStats: {hp:60, atk:150, def:100, spa:85, spd:55, spe:50},
   },
   
   
   /////////////////////////////
   //  ChoonMod: Custom Mons  //
   /////////////////////////////
   
   
   venusaurmegax: {
     num: 3,
     species: "Venusaur-Mega-X",
     baseSpecies: "Venusaur",
     forme: "Mega-X",
     formeLetter: "M",
     types: ["Grass", "Fire"],
     genderRatio: {M:0.875, F:0.125},
     baseStats: {hp:83, atk:114, def:89, spa:150, spd:114, spe:100},
     abilities: {0:"Chlorophyll"},
     heightm: 2.4,
     weightkg: 155.5,
     color: "Green",
     prevo: "ivysaur",
     evoLevel: 32,
     eggGroups: ["Monster", "Grass"],
   },
   venusaurmegay: {
     num: 3,
     species: "Venusaur-Mega-Y",
     baseSpecies: "Venusaur",
     forme: "Mega-Y",
     formeLetter: "M",
     types: ["Grass", "Poison"],
     genderRatio: {M:0.875, F:0.125},
     baseStats: {hp:83, atk:100, def:130, spa:119, spd:144, spe:74},
     abilities: {0:"Thick Fat"},
     heightm: 2.4,
     weightkg: 155.5,
     color: "Green",
     prevo: "ivysaur",
     evoLevel: 32,
     eggGroups: ["Monster", "Grass"],
   },
   blastoisemegax: {
     num: 9,
     species: "Blastoise-Mega-X",
     baseSpecies: "Blastoise",
     forme: "Mega-X",
     formeLetter: "M",
     types: ["Water", "Steel"],
     genderRatio: {M:0.875, F:0.125},
     baseStats: {hp:84, atk:100, def:119, spa:169, spd:115, spe:68},
     abilities: {0:"Mega Launcher"},
     heightm: 1.6,
     weightkg: 101.1,
     color: "Blue",
     prevo: "wartortle",
     evoLevel: 36,
     eggGroups: ["Monster", "Water 1"],
   },
   blastoisemegay: {
     num: 9,
     species: "Blastoise-Mega-Y",
     baseSpecies: "Blastoise",
     forme: "Mega-Y",
     formeLetter: "M",
     types: ["Water", "Steel"],
     genderRatio: {M:0.875, F:0.125},
     baseStats: {hp:84, atk:85, def:159, spa:109, spd:155, spe:63},
     abilities: {0:"Shell Armor"},
     heightm: 1.6,
     weightkg: 123.4,
     color: "Blue",
     prevo: "wartortle",
     evoLevel: 36,
     eggGroups: ["Monster", "Water 1"],
   },
   butterfreemega: {
     num: 12,
     species: "Butterfree-Mega",
     baseSpecies: "Butterfree",
     forme: "Mega",
     formeLetter: "M",
     types: ["Bug", "Psychic"],
     baseStats: {hp:105, atk:20, def:105, spa:160, spd:125, spe:65},
     abilities: {0:"Magic Bounce"},
     heightm: 1.1,
     weightkg: 35,
     color: "White",
     prevo: "metapod",
     evoLevel: 10,
     eggGroups: ["Bug"],
   },
   fearowmega: {
     num: 22,
     species: "Fearow-Mega",
     baseSpecies: "Fearow",
     forme: "Mega",
     formeLetter: "M",
     types: ["Normal", "Flying"],
     baseStats: {hp:65, atk:140, def:100, spa:60, spd:95, spe:132},
     abilities: {0:"Reckless"},
     heightm: 1.2,
     weightkg: 50,
     color: "Brown",
     prevo: "spearow",
     evoLevel: 20,
     eggGroups: ["Flying"],
   },
   raichumega: {
     num: 26,
     species: "Raichu-Mega",
     baseSpecies: "Raichu",
     forme: "Mega",
     formeLetter: "M",
     types: ["Electric", "Dark"],
     baseStats: {hp:65, atk:157, def:94, spa:157, spd:94, spe:118},
     abilities: {0:"Aftermath"},
     heightm: 1.3,
     weightkg: 39,
     color: "Yellow",
     prevo: "pikachu",
     evoLevel: 1,
     eggGroups: ["Field", "Fairy"],
   },
   machampmega: {
     num: 68,
     species: "Machamp-Mega",
     baseSpecies: "Fearow",
     forme: "Mega",
     formeLetter: "M",
     types: ["Fighting"],
     genderRatio: {M:0.75, F:0.25},
     baseStats: {hp:90, atk:175, def:100, spa:50, spd:115, spe:75},
     abilities: {0:"Guts"},
     heightm: 1.6,
     weightkg: 133.1,
     color: "Gray",
     prevo: "machoke",
     evoLevel: 28,
     eggGroups: ["Human-Like"],
   },
   slowkingmega: {
     num: 199,
     species: "Slowking-Mega",
     baseSpecies: "Slowking",
     forme: "Mega",
     formeLetter: "M",
     types: ["Water", "Psychic"],
     baseStats: {hp:95, atk:75, def:80, spa:130, spd:180, spe:30},
     abilities: {0:"Unaware"},
     heightm: 2,
     weightkg: 88.8,
     color: "Pink",
     prevo: "slowpoke",
     evoLevel: 1,
     eggGroups: ["Monster", "Water 1"],
   },
   mrmimemega: {
     num: 122,
     species: "Mr. Mime-Mega",
     baseSpecies: "Mr. Mime",
     forme: "Mega",
     formeLetter: "M",
     types: ["Psychic", "Fairy"],
     baseStats: {hp:90, atk:45, def:155, spa:120, spd:170, spe:60},
     abilities: {0:"Stall"},
     heightm: 1.337,
     weightkg: 45.4,
     color: "Pink",
     prevo: "mimejr",
     evoLevel: 1,
     eggGroups: ["Human-Like"],
   },
   meganiummega: {
     num: 154,
     species: "Meganium-Mega",
     baseSpecies: "Meganium",
     forme: "Mega",
     formeLetter: "M",
     types: ["Grass"],
     baseStats: {hp:90, atk:118, def:149, spa:73, spd:155, spe:65},
     abilities: {0:"Flower Veil"},
     heightm: 2,
     weightkg: 111.1,
     color: "Grass",
     prevo: "bayleef",
     evoLevel: 32,
     eggGroups: ["Monster", "Grass"],
   },
   typhlosionmega: {
     num: 157,
     species: "Typhlosion-Mega",
     baseSpecies: "Typhlosion",
     forme: "Mega",
     formeLetter: "M",
     types: ["Fire"],
     baseStats: {hp:78, atk:94, def:98, spa:144, spd:105, spe:126},
     abilities: {0:"Sheer Force"},
     heightm: 1.8,
     weightkg: 80.8,
     color: "Yellow",
     prevo: "quilava",
     evoLevel: 36,
     eggGroups: ["Field"],
   },
   feraligatrmega: {
     num: 157,
     species: "Feraligatr-Mega",
     baseSpecies: "Feraligatr",
     forme: "Mega",
     formeLetter: "M",
     types: ["Water", "Dragon"],
     baseStats: {hp:85, atk:145, def:120, spa:104, spd:98, spe:98},
     abilities: {0:"Sheer Force"},
     heightm: 2.3,
     weightkg: 88.8,
     color: "Blue",
     prevo: "croconaw",
     evoLevel: 30,
     eggGroups: ["Monster", "Water 1"],
   },
};
Code:
'use strict';

exports.BattleScripts = {
   //Pokemon Modification:
   init: function () {
     for (let i in this.data.Pokedex) {
       let learnset = (this.data.Learnsets[i]) ? this.data.Learnsets[i].learnset : false;
       let pokemon = this.data.Pokedex[i];
       if (learnset) {
         //Everyone who has access to dazzling gleam now has access to moonblast.
         if (learnset.dazzlinggleam) {
           if (learnset.moonblast) {
             this.modData('Learnsets', i).learnset.moonblast = learnset.moonblast.push('6M');
           } else {
             this.modData('Learnsets', i).learnset.moonblast = ['6M'];
           }
         }
         //Defog is now a gen 6 HM.
         if (learnset.defog) {
           this.modData('Learnsets', i).learnset.defog = learnset.defog.push('6M');
         }
         //All ground types have access to Fissure.
         if (pokemon.types.indexOf('Ground') > -1) {
           if (learnset.fissure) {
             this.modData('Learnsets', i).learnset.fissure = learnset.fissure.push('6T');
           } else {
             this.modData('Learnsets', i).learnset.fissure = ['6T'];
           }
         }
         //All grass types have access to Leaf Storm.
         if (pokemon.types.indexOf('Grass') > -1) {
           if (learnset.leafstorm) {
             this.modData('Learnsets', i).learnset.leafstorm = learnset.leafstorm.push('6T');
           } else {
             this.modData('Learnsets', i).learnset.leafstorm = ['6T'];
           }
         }
         //All fire types have access to Overheat.
         if (pokemon.types.indexOf('Fire') > -1) {
           if (learnset.overheat) {
             this.modData('Learnsets', i).learnset.overheat = learnset.overheat.push('6T');
           } else {
             this.modData('Learnsets', i).learnset.overheat = ['6T'];
           }
         }
         //All fairy types have access to Light of Ruin.
         if (pokemon.types.indexOf('Fairy') > -1) {
           if (learnset.lightofruin) {
             this.modData('Learnsets', i).learnset.lightofruin = learnset.lightofruin.push('6T');
           } else {
             this.modData('Learnsets', i).learnset.lightofruin = ['6T'];
           }
         }
         //All ice types have access to Sheer Cold.
         if (pokemon.types.indexOf('Ice') > -1) {
           if (learnset.overheat) {
             this.modData('Learnsets', i).learnset.sheercold = learnset.sheercold.push('6T');
           } else {
             this.modData('Learnsets', i).learnset.sheercold = ['6T'];
           }
         }
         //All water types have access to Bubble Beam.
         if (pokemon.types.indexOf('Water') > -1) {
           if (learnset.bubblebeam) {
             this.modData('Learnsets', i).learnset.bubblebeam = learnset.bubblebeam.push('6M');
           } else {
             this.modData('Learnsets', i).learnset.bubblebeam = ['6M'];
           }
         }
       }
     }
     //Pidgeot slight buff
     this.modData('Learnsets', 'pidgeot').learnset.hypervoice = ['6L1'];
     this.modData('Learnsets', 'pidgeot').learnset.aurasphere = ['6L1'];
     
     //Fearow slight buff
     this.modData('Learnsets', 'fearow').learnset.bravebird = ['6L1'];
     
     //Give Pika the event moves that it deserves, make volt tackle egg-independent, and add coverage. Do the same for Raichu since it branches off of Pichu.
     let chu = {'pikachu':1, 'pikachucosplay':1, 'pikachurockstar':1, 'pikachubelle':1, 'pikachupopstar':1, 'pikachuphd':1, 'pikachulibre':1, 'raichu':1};
     for (let i in chu) {
       //Overlap the cosplay forms with Pikachu's moveset.
       if (i !== 'pikachu' && i !== 'raichu') this.modData('Learnsets', i).learnset = this.data.Learnsets.pikachu.learnset;
       //Do the thing
       this.modData('Learnsets', i).learnset.extremespeed = ['6L1'];
       this.modData('Learnsets', i).learnset.surf = ['6M'];
       this.modData('Learnsets', i).learnset.fly = ['6M'];
       this.modData('Learnsets', i).learnset.volttackle = ['6L1'];
       this.modData('Learnsets', i).learnset.dynamocannon = ['6L1'];
       this.modData('Learnsets', i).learnset.electricterrain = ['6L1'];
       this.modData('Learnsets', i).learnset.flamethrower = ['6M'];
       this.modData('Learnsets', i).learnset.firepunch = ['6T'];
       this.modData('Learnsets', i).learnset.icepunch = ['6T'];
       this.modData('Learnsets', i).learnset.dazzlinggleam = ['6M'];
       this.modData('Learnsets', i).learnset.moonblast = ['6M'];
       this.modData('Learnsets', i).learnset.icebeam = ['6M'];
       this.modData('Learnsets', i).learnset.blizzard = ['6M'];
       this.modData('Learnsets', i).learnset.focusblast = ['6M'];
       this.modData('Learnsets', i).learnset.poisonjab = ['6M'];
       this.modData('Learnsets', i).learnset.sludgebomb = ['6M'];
       this.modData('Learnsets', i).learnset.surf = ['6M'];
       this.modData('Learnsets', i).learnset.darkpulse = ['6M'];
       this.modData('Learnsets', i).learnset.shadowball = ['6M'];
       this.modData('Learnsets', i).learnset.hypervoice = ['6T'];
       this.modData('Learnsets', i).learnset.stoneedge = ['6M'];
       this.modData('Learnsets', i).learnset.rockslide = ['6M'];
       this.modData('Learnsets', i).learnset.bulkup = ['6M'];
       this.modData('Learnsets', i).learnset.swordsdance = ['6M'];
       this.modData('Learnsets', i).learnset.calmmind = ['6M'];
       this.modData('Learnsets', i).learnset.recover = ['6T'];
     }
     //Now for the bonus ducks.
     this.modData('Learnsets', 'pikachu').learnset.earthquake = ['6M'];
     this.modData('Learnsets', 'pikachu').learnset.earthpower = ['6T'];
     this.modData('Learnsets', 'pikachu').learnset.fissure = ['6T'];
     this.modData('Learnsets', 'pikachu').learnset.heavenscrack = ['6L1'];
     this.modData('Learnsets', 'pikachucosplay').learnset.earthquake = ['6M'];
     this.modData('Learnsets', 'pikachucosplay').learnset.earthpower = ['6T'];
     this.modData('Learnsets', 'pikachucosplay').learnset.fissure = ['6T'];
     this.modData('Learnsets', 'pikachucosplay').learnset.heavenscrack = ['6L1'];
     this.modData('Learnsets', 'pikachurockstar').learnset.meteormash = ['6L1'];
     this.modData('Learnsets', 'pikachurockstar').learnset.ironhead = ['6T'];
     this.modData('Learnsets', 'pikachurockstar').learnset.flashcannon = ['6M'];
     this.modData('Learnsets', 'pikachurockstar').learnset.bloodthirstyblade = ['6L1'];
     this.modData('Learnsets', 'pikachubelle').learnset.iciclecrash = ['6L1'];
     this.modData('Learnsets', 'pikachubelle').learnset.iceshard = ['6T'];
     this.modData('Learnsets', 'pikachubelle').learnset.sheercold = ['6T'];
     this.modData('Learnsets', 'pikachubelle').learnset.perfectglacialist = ['6L1'];
     this.modData('Learnsets', 'pikachupopstar').learnset.drainingkiss = ['6L1'];
     this.modData('Learnsets', 'pikachupopstar').learnset.lightofruin = ['6T'];
     this.modData('Learnsets', 'pikachupopstar').learnset.playrough = ['6T'];
     this.modData('Learnsets', 'pikachupopstar').learnset.valkyriearrow = ['6L1'];
     this.modData('Learnsets', 'pikachuphd').learnset.psychic = ['6M'];
     this.modData('Learnsets', 'pikachuphd').learnset.psyshock = ['6M'];
     this.modData('Learnsets', 'pikachuphd').learnset.zenheadbutt = ['6T'];
     this.modData('Learnsets', 'pikachuphd').learnset.genesisnova = ['6L1'];
     this.modData('Learnsets', 'pikachulibre').learnset.flyingpress = ['6L1'];
     this.modData('Learnsets', 'pikachulibre').learnset.closecombat = ['6T'];
     this.modData('Learnsets', 'pikachulibre').learnset.superpower = ['6T'];
     this.modData('Learnsets', 'pikachulibre').learnset.imprisonedstrike = ['6L1'];

     // Happinny
     this.modData('Learnsets', 'happiny').learnset.softboiled = ['6L1'];
     this.modData('Learnsets', 'happiny').learnset.wish = ['6L1'];
     
     // Mimez gets stallz
     this.modData('Learnsets', 'mrmime').learnset.recover = ['6L1'];
     this.modData('Learnsets', 'mrmime').learnset.partingshot = ['6L1'];
     this.modData('Learnsets', 'mrmime').learnset.entrainment = ['6L1'];
     this.modData('Learnsets', 'mrmime').learnset.metalburst = ['6L1'];
     this.modData('Learnsets', 'mrmime').learnset.healbell = ['6L1'];
     this.modData('Learnsets', 'mrmime').learnset.knockoff = ['6T'];
     
     // Aero gets head smash
     this.modData('Learnsets', 'aerodactyl').learnset.headsmash = ['6L1'];

     // Meganium gets Power Whip
     this.modData('Learnsets', 'meganium').learnset.powerwhip = ['6L1'];
     
     // Xatu gets Whirlwind
     this.modData('Learnsets', 'xatu').learnset.whirlwind = ['6L1'];
     
     // Ampharos gets Tail Glow
     this.modData('Learnsets', 'ampharos').learnset.tailglow = ['6L1'];
     
     for (let i in this.data.FormatsData) {
       // Every hidden ability becomes released. Nothing could possibly go wrong™
       this.modData('FormatsData', i).unreleasedHidden = false;
       // Make certain mons OU
       let OUmons = {pikachu:1, pikachurockstar:1, pikachubelle:1, pikachupopstar:1, pikachuphd:1, pikachulibre:1, gengarmega:1, kangaskhanmega:1, blaziken:1, blazikenmega:1, aegislash:1}
       if (i in OUmons) this.modData('FormatsData', i).tier = 'OU';
     }
   },
   //Allow custom mega-evolutions without anything in terms of sprites breaking:
   runMegaEvo: function (pokemon) {
     let template = this.getTemplate(pokemon.canMegaEvo);
     let side = pokemon.side;

     // Pokémon affected by Sky Drop cannot mega evolve. Enforce it here for now.
     let foeActive = side.foe.active;
     for (let i = 0; i < foeActive.length; i++) {
       if (foeActive[i].volatiles['skydrop'] && foeActive[i].volatiles['skydrop'].source === pokemon) {
         return false;
       }
     }
     
     //Prevent sprites from screwing with our stuff.
     let forbid = {'Venusaur-Mega-X':'Venusaurite X', 'Blastoise-Mega-Y':'Blastoisinite Y', 'Butterfree-Mega':'Butterfrite', 'Fearow-Mega':'Fearowite', 'Raichu-Mega':'Raichuite', 'Machamp-Mega':'Machampite', 'Slowking-Mega':'Slowkingite', 'Mr. Mime-Mega':'Mimezite', 'Meganium-Mega':'Meganiumite', 'Typhlosion-Mega':'Typhlosionite', 'Feraligatr-Mega':'Feraligatrite'};
     if (template.species in forbid) {
       //Case 1: Sprites don't exist
       template = Object.assign({}, template); //Prevent metagame crosstalk.
       template.spriteid = toId(template.baseSpecies);
       template.actualSpecies = template.species;
       template.species = template.species.split('-')[0];
       template.requiredItem = forbid[template.species];
     } else if (template.species === 'Venusaur-Mega-Y') {
       //Case 2: Sprites do exist, but the mega changed.
       template = Object.assign({}, template);
       template.spriteid = 'venusaur-mega';
       template.species = 'Venusaur-Mega';
       template.actualSpecies = 'Venusaur-Mega-Y'; //yes this is venusaur-mega-y
       template.requiredItem = 'Venusaurite Y';
     } else if (template.species === 'Blastoise-Mega-X') {
       //Case 2: Sprites do exist, but the mega changed.
       template = Object.assign({}, template);
       template.spriteid = 'blastoise-mega';
       template.species = 'Blastoise-Mega';
       template.actualSpecies = 'Blastoise-Mega-X';
       template.requiredItem = 'Blastoisinite X';
     }
     pokemon.formeChange(template);
     pokemon.baseTemplate = template; // mega evolution is permanent
     pokemon.details = template.species + (pokemon.level === 100 ? '' : ', L' + pokemon.level) + (pokemon.gender === '' ? '' : ', ' + pokemon.gender) + (pokemon.set.shiny ? ', shiny' : '');
     this.add('detailschange', pokemon, pokemon.details);
     this.add('-mega', pokemon, template.baseSpecies, template.requiredItem);
     pokemon.setAbility(template.abilities['0']);
     pokemon.baseAbility = pokemon.ability;
     let changed = {'Blastoise':true, 'Raichu':true, 'Aerodactyl':true, 'Feraligatr':true};
     if (template.actualSpecies in forbid || template.species === 'Venusaur-Mega' || template.baseSpecies in changed) {
       let types = template.types;
       let bTypes = (types.length === 1 || types[1] === 'caw') ? types[0] : types.join('/');
       this.add('-start', pokemon, 'typechange', bTypes, '[silent]');
     }
     if (template.actualSpecies) this.add('-start', pokemon, template.actualSpecies, '[silent]'); //Show the pokemon's actual species

     // Limit one mega evolution
     for (let i = 0; i < side.pokemon.length; i++) {
       side.pokemon[i].canMegaEvo = false;
     }
     return true;
   },
};
Code:
'use strict';

exports.BattleStatuses = {
   frz: {
     inherit: true,
     onBeforeMove: function (pokemon, target, move) {
       if (move.flags['defrost']) return;
       if (this.random(3) === 0) {
         pokemon.cureStatus();
         return;
       }
       this.add('cant', pokemon, 'frz');
       return false;
     },
   },
};
Code:
'use strict';

exports.BattleTypeChart = {
   "Fairy": {
     damageTaken: {
       "Bug": 2,
       "Dark": 1,
       "Dragon": 3,
       "Electric": 0,
       "Fairy": 0,
       "Fighting": 2,
       "Fire": 0,
       "Flying": 0,
       "Ghost": 0,
       "Grass": 0,
       "Ground": 0,
       "Ice": 0,
       "Normal": 0,
       "Poison": 1,
       "Psychic": 0,
       "Rock": 0,
       "Steel": 1,
       "Water": 0,
     },
   },
   "Ice": {
     damageTaken: {
       hail: 3,
       frz: 3,
       "Bug": 0,
       "Dark": 0,
       "Dragon": 0,
       "Electric": 0,
       "Fairy": 0,
       "Fighting": 1,
       "Fire": 1,
       "Flying": 0,
       "Ghost": 0,
       "Grass": 0,
       "Ground": 0,
       "Ice": 2,
       "Normal": 0,
       "Poison": 0,
       "Psychic": 0,
       "Rock": 1,
       "Steel": 1,
       "Water": 2,
     },
     HPivs: {"atk":30, "def":30},
   },
   "Steel": {
     damageTaken: {
       psn: 3,
       tox: 3,
       sandstorm: 3,
       "Bug": 2,
       "Dark": 2,
       "Dragon": 2,
       "Electric": 1,
       "Fairy": 2,
       "Fighting": 1,
       "Fire": 1,
       "Flying": 2,
       "Ghost": 0,
       "Grass": 2,
       "Ground": 1,
       "Ice": 2,
       "Normal": 2,
       "Poison": 3,
       "Psychic": 2,
       "Rock": 2,
       "Steel": 2,
       "Water": 0,
     },
     HPivs: {"spd":30},
   },
   "caw": {
     damageTaken: {
       "Bug": 0,
       "Dark": 0,
       "Dragon": 0,
       "Electric": 0,
       "Fairy": 0,
       "Fighting": 0,
       "Fire": 0,
       "Flying": 0,
       "Ghost": 0,
       "Grass": 0,
       "Ground": 3,
       "Ice": 0,
       "Normal": 0,
       "Poison": 0,
       "Psychic": 0,
       "Rock": 0,
       "Steel": 0,
       "Water": 0,
     },
   },
};
 
Last edited:
#5
I personally think Mimezite is the best name for a Mr. Mime mega stone, ever.

Interestingly, the code kinda helps me since I'm coded something myself. :P

Anyway, the Mega-Evolution inclusion is very unique and something that will be interesting to see more of in the future.
 
#6
Everything based around the Mascot we all hate. And love, I guess. Hilarious!

However, one question: Where did Pikachu's event access to Extreme Speed go? :p
Did it become a Level-up move, is it still an event-move with its crapton of illegalities, or is it gone altogether?
 
#8
Then Pikachu will be stupidly scary. It's scary enough in NU if you are unaware of its Adamant Extremespeed existing, but now it is pretty disgusting on the first sight (even by OU standards). However, on the second glance, it is not that powerful since the lack of Light Ball and most Extremespeed users do not want to be choice-locked, Pikachu being no exception.
It'd probably run an Expert Belt, maybe even a Silk Scarf or some other 'quiet' boosting item, or maybe a Life Orb.
 

Pikachuun

邪法使い_CC
is a Pre-Contributor
#9
Then Pikachu will be stupidly scary. It's scary enough in NU if you are unaware of its Adamant Extremespeed existing, but now it is pretty disgusting on the first sight (even by OU standards). However, on the second glance, it is not that powerful since the lack of Light Ball and most Extremespeed users do not want to be choice-locked, Pikachu being no exception.
It'd probably run an Expert Belt, maybe even a Silk Scarf or some other 'quiet' boosting item, or maybe a Life Orb.
Is Pikachu OP?
Yes.
Yeah from my testing it's really scary when used properly, as it should be, and I don't even run Espeed
 

SpartanMalice

Y'all jokers must be crazy
#10
I like Pikachu-Rock Star and Pop Star tbh. Libre could see more use as well, Electric/Fighting is decent with that bulk. If it only had better HP for Volt Tackle, it'd be extreme.

Digging the 'stoise as well.
 
#12
Yeah, this is basically: "Pikachu, the Meta", and there are a ton of viable sets.
Libre and Rock Star and maybe standard are the only ones I potentially see running Extremespeed, I also agree the others probably have little business to do so.


I pity Raichu, however. While he gains Pikachu's newly expanded movepool, he's outclassed in all stats. Is he going to gain something too? :p
 

Pikachuun

邪法使い_CC
is a Pre-Contributor
#13
Yeah, this is basically: "Pikachu, the Meta", and there are a ton of viable sets.
Libre and Rock Star and maybe standard are the only ones I potentially see running Extremespeed, I also agree the others probably have little business to do so.


I pity Raichu, however. While he gains Pikachu's newly expanded movepool, he's outclassed in all stats. Is he going to gain something too? :p
He will get a mega as well as appropriate buffs in version δ to compensate.
 
#14
Mega Fearow seems decent, but nothing exceptional. I can see it being overshadowed by the more interesting new Megas due to how similar it is to Staraptor, and it faces competition from Talonflame and especially Mega Pinsir as well. They're all falling in usage due to Pikachu anyway.
 
#15
Maybe Mega Fearow could be Ground/Flying instead, for the STAB Drill Run.

Drilling has always been its thing, and its Japanese name is even Onidrill, which translates to "demon drill".