Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
35 commits
Select commit Hold shift + click to select a range
2e38546
New patch
Lysio4 Jul 14, 2023
92e6dad
Merge branch 'scoopapa:master' into master
Lysio4 Jul 14, 2023
765e963
Blowhole fix
Lysio4 Jul 18, 2023
13199ff
Large bunch of modifs
Lysio4 Jul 21, 2023
11ec209
Correcting scripts.ts
Lysio4 Jul 22, 2023
50837e4
Merge branch 'scoopapa:master' into master
Lysio4 Jul 23, 2023
eb71016
Modifying a bunch
Lysio4 Jul 23, 2023
c48b231
Merge branch 'master' of https://github.com/Lysio4/AGE
Lysio4 Jul 23, 2023
9a4a5ab
Adding Hariyama buff
Lysio4 Jul 23, 2023
acf640b
Little modifications
Lysio4 Jul 23, 2023
26e99ec
Blastoise-Mega nerf
Lysio4 Jul 23, 2023
99d990f
Bunch of modifs
Lysio4 Jul 25, 2023
1d231ae
Bringing back Leechuption
Lysio4 Jul 25, 2023
674ec3f
Adding back Misty Mountain
Lysio4 Jul 25, 2023
984bb39
Tiering adjustment
Lysio4 Jul 26, 2023
abdd536
Tiering
Lysio4 Jul 26, 2023
2272662
Buff to Lokix
Lysio4 Jul 27, 2023
05d1f9c
Buffs
Lysio4 Jul 28, 2023
0a4ab9e
Fixing some moves
Lysio4 Jul 28, 2023
c39e843
Steelix-M buff
Lysio4 Jul 28, 2023
ca8173d
Fixing Tyrantrum
Lysio4 Jul 28, 2023
f776013
Volbeat buff
Lysio4 Jul 30, 2023
be268bf
Crustle buff
Lysio4 Jul 31, 2023
6ba2d7d
Arceus matching Gen 9
Lysio4 Jul 31, 2023
d070d16
Fixing some lil things
Lysio4 Aug 2, 2023
8e4b0aa
Lil modifs
Lysio4 Aug 3, 2023
55e6ba1
Grapploct fix
Lysio4 Aug 5, 2023
bbd8a70
Slendwaful buff
Lysio4 Aug 6, 2023
6fcde7d
Bunch of new stuff
Lysio4 Aug 7, 2023
502d8c9
Machamp Mega buff
Lysio4 Aug 8, 2023
f8aa05c
Tier changes
Lysio4 Aug 10, 2023
250476c
Adding new Fakemons
Lysio4 Aug 17, 2023
c9589d6
Raging Fury buff
Lysio4 Aug 19, 2023
fcab810
Calyrex-Ice buff
Lysio4 Aug 23, 2023
cbdb58e
Updating banlists
Lysio4 Aug 23, 2023
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
14 changes: 8 additions & 6 deletions config/formats.ts
Original file line number Diff line number Diff line change
Expand Up @@ -1318,9 +1318,10 @@ export const Formats: FormatList = [
],
mod: 'agoldenexperience',
ruleset: ['Standard NatDex', 'OHKO Clause', 'Evasion Moves Clause', 'Species Clause', 'Dynamax Clause', 'Sleep Clause Mod', 'Data Mod', 'Mega Data Mod'],
banlist: ['Uber', 'Power Construct', 'Arceus', 'Calyrex-Ice', 'Calyrex-Shadow', 'Darkrai', 'Deoxys-Attack', 'Deoxys-Speed', 'Dialga', 'Dialga-Origin', 'Eternatus', 'Flutter Mane', 'Gengarite', 'Giratina', 'Giratina-Origin', 'Groudon', 'Ho-Oh', /*'Iron Bundle',*/ 'Koraidon', 'Kyogre', 'Kyurem-Black', 'Kyurem-White', 'Lugia', 'Lunala', 'Marshadow', 'Mewtwo', 'Mewtwo-Mega-X', 'Mewtwo-Mega-Y', 'Miraidon', 'Necrozma-Dawn-Wings', 'Necrozma-Dusk-Mane', 'Palkia', 'Palkia-Origin', 'Parafgufa', 'Rayquaza', 'Reshiram', 'Salamencite', 'Solgaleo', 'Xerneas', 'Yveltal', 'Zacian', 'Zamazenta', 'Zekrom', 'Zygarde-Base', 'Berserk Gene', 'Eevee-Starter', 'Pikachu-Starter', 'Moody',
banlist: ['Uber', 'Power Construct', 'Berserk Gene', 'Eevee-Starter', 'Pikachu-Starter', 'Moody',
'Normalium Z', 'Fairium Z', 'Fightinium Z', 'Firium Z', 'Flyinium Z', 'Darkinium Z', 'Dragonium Z', 'Buginium Z', 'Waterium Z', 'Electrium Z', 'Ghostium Z', 'Grassium Z', 'Groundium Z', 'Icium Z', 'Poisonium Z', 'Psychium Z', 'Rockium Z', 'Steelium Z', 'Pikanium Z', 'Aloraichium Z', 'Eevium Z', 'Snorlium Z', 'Mewnium Z', 'Ultranecrozium Z', 'Pikashunium Z', 'Decidium Z', 'Incinium Z', 'Primarium Z', 'Lycanium Z', 'Mimikium Z', 'Kommonium Z', 'Tapunium Z', 'Solganium Z', 'Lunalium Z', 'Marshadium Z',
'Bright Powder', 'Lax Incense', 'King\'s Rock', 'Razor Fang'],
'Bright Powder', 'Lax Incense', 'King\'s Rock', 'Razor Fang',
'Rusted Sword', 'Rusted Shield'],
teambuilderFormat: 'National Dex',
onChangeSet(set) {
const item = this.toID(set.item);
Expand Down Expand Up @@ -1416,10 +1417,11 @@ export const Formats: FormatList = [
],
mod: 'agoldenexperience',
ruleset: ['Standard NatDex', 'OHKO Clause', 'Evasion Moves Clause', 'Species Clause', 'Dynamax Clause', 'Sleep Clause Mod', 'Data Mod', 'Mega Data Mod'],
banlist: ['Uber', 'OU', 'UUBL', 'Battle Bond', 'Power Construct', 'Arceus', 'Calyrex-Ice', 'Calyrex-Shadow', 'Darkrai', 'Deoxys-Attack', 'Deoxys-Speed', 'Dialga', 'Dialga-Origin', 'Eternatus', 'Flutter Mane', 'Gengarite', 'Giratina', 'Giratina-Origin', 'Groudon', 'Ho-Oh', /*'Iron Bundle',*/ 'Koraidon', 'Kyogre', 'Kyurem-Black', 'Kyurem-White', 'Lugia', 'Lunala', 'Marshadow', 'Mewtwo', 'Mewtwo-Mega-X', 'Mewtwo-Mega-Y', 'Miraidon', 'Necrozma-Dawn-Wings', 'Necrozma-Dusk-Mane', 'Palkia', 'Palkia-Origin', 'Parafgufa', 'Rayquaza', 'Reshiram', 'Salamencite', 'Solgaleo', 'Xerneas', 'Yveltal', 'Zacian', 'Zamazenta', 'Zekrom', 'Zygarde-Base', 'Berserk Gene', 'Eevee-Starter', 'Pikachu-Starter', 'Moody',
banlist: ['Uber', 'OU', 'UUBL', 'Battle Bond', 'Power Construct', 'Berserk Gene', 'Eevee-Starter', 'Pikachu-Starter', 'Moody',
'Normalium Z', 'Fairium Z', 'Fightinium Z', 'Firium Z', 'Flyinium Z', 'Darkinium Z', 'Dragonium Z', 'Buginium Z', 'Waterium Z', 'Electrium Z', 'Ghostium Z', 'Grassium Z', 'Groundium Z', 'Icium Z', 'Poisonium Z', 'Psychium Z', 'Rockium Z', 'Steelium Z', 'Pikanium Z', 'Aloraichium Z', 'Eevium Z', 'Snorlium Z', 'Mewnium Z', 'Ultranecrozium Z', 'Pikashunium Z', 'Decidium Z', 'Incinium Z', 'Primarium Z', 'Lycanium Z', 'Mimikium Z', 'Kommonium Z', 'Tapunium Z', 'Solganium Z', 'Lunalium Z', 'Marshadium Z',
'Bright Powder', 'Lax Incense', 'King\'s Rock', 'Razor Fang',
'Drizzle', 'Drought'],
'Drizzle', 'Drought', 'Aerodactylite', 'Alakazite', 'Ampharosite', 'Audinite', 'Arbokinite', 'Baskironite', 'Blazikenite', 'Butterfrite', 'Cacturnite X', 'Centiskorchite X', 'Centiskorchite Y', 'Charizardite X', 'Charizardite Y', 'Dhelmite', 'Diancite', 'Flygonite', 'Froslassite', 'Galladite', 'Gardevoirite', 'Gengarite', 'Glalitite', 'Golisopodite', 'Gyaradosite', 'Houndoominite', 'Infarmatemite', 'Krookodite', 'Latiasite', 'Lopunnite', 'Lucarionite', 'Mawilite', 'Medichamite', 'Metagrossite', 'Ribombinite', 'Salamencite', 'Sceptilite', 'Scizorite', 'Swampertite', 'Terreptilite', 'Whiscashite',
'Latiosite', 'Pidgeotite', 'Pinsirite', 'Sablenite', 'Darmanitan-Galar + Zen Mode'],
teambuilderFormat: 'National Dex UU',
onChangeSet(set) {
const item = this.toID(set.item);
Expand Down Expand Up @@ -1469,8 +1471,8 @@ export const Formats: FormatList = [
banlist: [
'Calyrex-Shadow', 'Eternatus-Eternamax', 'Groudon-Primal', 'Rayquaza-Mega', 'Shedinja', 'Cramorant-Gorging', 'Arcane Mastery',
'Water Bubble', 'Huge Power', 'Illusion', 'Innards Out', 'Magnet Pull', 'Moody', 'Never Gonna Give You Up', 'Explosive',
'Stakeout', 'Wonder Guard', 'Gengarite', 'Belly Drum', 'Chatter', 'Double Iron Bash', 'Electrify', 'Fishious Rend', 'Sappy Seed',
/*'Last Respects',*/ 'Octolock', /*'Revival Blessing', 'Shed Tail',*/ 'Shell Smash', 'Comatose + Sleep Talk', 'Imprison + Transform',
'Protean', 'Stakeout', 'Wonder Guard', 'Belly Drum', 'Chatter', 'Double Iron Bash', 'Electrify', 'Fishious Rend', 'Sappy Seed',
'Octolock', 'Shell Smash', 'Comatose + Sleep Talk', 'Imprison + Transform',
'Berserk Gene', 'Normalium Z', 'Fairium Z', 'Fightinium Z', 'Firium Z', 'Flyinium Z', 'Darkinium Z', 'Dragonium Z', 'Buginium Z', 'Waterium Z', 'Electrium Z', 'Ghostium Z', 'Grassium Z', 'Groundium Z', 'Icium Z', 'Poisonium Z', 'Psychium Z', 'Rockium Z', 'Steelium Z', 'Pikanium Z', 'Aloraichium Z', 'Eevium Z', 'Snorlium Z', 'Mewnium Z', 'Ultranecrozium Z', 'Pikashunium Z', 'Decidium Z', 'Incinium Z', 'Primarium Z', 'Lycanium Z', 'Mimikium Z', 'Kommonium Z', 'Tapunium Z', 'Solganium Z', 'Lunalium Z', 'Marshadium Z',
'Bright Powder', 'Lax Incense', 'King\'s Rock', 'Razor Fang'
],
Expand Down
184 changes: 130 additions & 54 deletions data/mods/agoldenexperience/abilities.ts
Original file line number Diff line number Diff line change
@@ -1,9 +1,7 @@
import { consoleips } from "../../../config/config-example";

// const bladeMoves = ['aerialace', 'airslash', 'aircutter', 'behemothblade', 'crosspoison', 'cut', 'falseswipe', 'furycutter', 'leafblade', 'nightslash', 'psychocut', 'razorshell', 'razorwind', 'sacredsword', 'secretsword', 'slash', 'xscissor', 'solarblade', 'ceaselessedge', 'sneakyassault', 'braveblade', 'bitterblade'];
const kickMoves = ['jumpkick', 'highjumpkick', 'megakick', 'doublekick', 'blazekick', 'tropkick', 'lowkick', 'lowsweep', 'rollingkick', 'triplekick', 'stomp', 'highhorsepower', 'tripleaxel', 'stompingtantrum', 'thunderouskick', 'axekick'];
const tailMoves = ['firelash', 'powerwhip', 'tailslap', 'wrap', 'constrict', 'irontail', 'dragontail', 'poisontail', 'aquatail', 'vinewhip', 'wringout',];
// const windMoves = ['aircutter', 'blizzard', 'fairywind', 'gust', 'heatwave', 'hurricane', 'icywind', 'petalblizzard', 'sandstorm', 'tailwind', 'twister', 'whirlwind'];

export const Abilities: { [abilityid: string]: ModdedAbilityData; } = {
poisonousradula: {
Expand Down Expand Up @@ -160,24 +158,24 @@ export const Abilities: { [abilityid: string]: ModdedAbilityData; } = {
rating: 4.5,
num: -7,
},
reflex: {
onFoeTryMove(target, source, move) {
const targetAllExceptions = ['perishsong', 'flowershield', 'rototiller'];
if (move.target === 'foeSide' || (move.target === 'all' && !targetAllExceptions.includes(move.id))) {
return;
}
// reflex: { //removed
// onFoeTryMove(target, source, move) {
// const targetAllExceptions = ['perishsong', 'flowershield', 'rototiller'];
// if (move.target === 'foeSide' || (move.target === 'all' && !targetAllExceptions.includes(move.id))) {
// return;
// }

const dazzlingHolder = this.effectData.target;
if ((source.side === dazzlingHolder.side || move.target === 'all') && move.priority > 0.1) {
this.attrLastMove('[still]');
this.add('cant', dazzlingHolder, 'ability: Reflex', move, '[of] ' + target);
return false;
}
},
name: "Reflex",
rating: 2.5,
num: -8,
},
// const dazzlingHolder = this.effectData.target;
// if ((source.side === dazzlingHolder.side || move.target === 'all') && move.priority > 0.1) {
// this.attrLastMove('[still]');
// this.add('cant', dazzlingHolder, 'ability: Reflex', move, '[of] ' + target);
// return false;
// }
// },
// name: "Reflex",
// rating: 2.5,
// num: -8,
// },
perforating: {
onModifyMovePriority: -5,
onModifyMove(move) {
Expand Down Expand Up @@ -316,7 +314,7 @@ export const Abilities: { [abilityid: string]: ModdedAbilityData; } = {
rating: 4,
num: -16,
},*/
mistymountain: {
mistymountain: {
onModifyTypePriority: -1,
onModifyType(move, pokemon) {
const noModifyType = [
Expand Down Expand Up @@ -362,7 +360,7 @@ export const Abilities: { [abilityid: string]: ModdedAbilityData; } = {
onSourceHit(target, source, move) {
if (!move || !target) return;
if (move.flags['dancer']) {
this.boost({spe: 1}, source);
this.boost({ spe: 1 }, source);
}
},
name: "Mad Dancer",
Expand Down Expand Up @@ -983,7 +981,7 @@ export const Abilities: { [abilityid: string]: ModdedAbilityData; } = {
},
explosive: {
desc: "This Pokémon does not suffer the drawbacks of recoil moves and sacrificial moves.",
shortDesc: "Ignores recoil and self-KO effects of that move.",
shortDesc: "Ignores recoil and self-KO effects of its moves.",
onModifyMove(move) {
if (move.recoil || move.mindBlownRecoil || (move.selfdestruct && move.selfdestruct === 'always')) {
this.effectData.target.addVolatile('implode');
Expand Down Expand Up @@ -1361,6 +1359,19 @@ export const Abilities: { [abilityid: string]: ModdedAbilityData; } = {
rating: 2.5,
num: -1160,
},
sleightofhand: {
desc: "This Pokémon's contact moves become special attacks and do not make contact with the target.",
shortDesc: "This Pokémon's contact moves become special and non-contact.",
onModifyMove(move) {
if (move.flags['contact']) {
if (move.category !== 'Special') move.category = 'Special';
delete move.flags['contact'];
}
},
name: "Sleight of Hand",
rating: 3,
num: -52,
},
newtonslaw: {
onModifySpe(spe, pokemon) {
if (this.field.getPseudoWeather('gravity')) {
Expand Down Expand Up @@ -1552,7 +1563,7 @@ export const Abilities: { [abilityid: string]: ModdedAbilityData; } = {
onModifyDamage(damage, source, target, move) {
if (target.getMoveHitData(move).crit) {
this.debug('Old School boost');
return this.chainModify(2/1.5);
return this.chainModify(2 / 1.5);
}
},
rating: 3.5,
Expand Down Expand Up @@ -1760,8 +1771,8 @@ export const Abilities: { [abilityid: string]: ModdedAbilityData; } = {
num: 23,
},
sandveil: {
desc: "If Sandstorm is active, this Pokemon's defence is multiplied by 1.3. This Pokemon takes no damage from Sandstorm.",
shortDesc: "If Sandstorm is active, this Pokemon's defence is 1.3x; immunity to Sandstorm.",
desc: "If Sandstorm is active, this Pokemon's defense is multiplied by 1.3. This Pokemon takes no damage from Sandstorm.",
shortDesc: "If Sandstorm is active, this Pokemon's defense is 1.3x; immunity to Sandstorm.",
onImmunity(type, pokemon) {
if (type === 'sandstorm') return false;
},
Expand All @@ -1775,8 +1786,8 @@ export const Abilities: { [abilityid: string]: ModdedAbilityData; } = {
num: 146,
},
snowcloak: {
desc: "If Hail is active, this Pokemon's defence is multiplied by 1.3. This Pokemon takes no damage from Hail.",
shortDesc: "If Hail is active, this Pokemon's defence is 1.3x; immunity to Hail.",
desc: "If Hail is active, this Pokemon's defense is multiplied by 1.3. This Pokemon takes no damage from Hail.",
shortDesc: "If Hail is active, this Pokemon's defense is 1.3x; immunity to Hail.",
onImmunity(type, pokemon) {
if (type === 'hail') return false;
},
Expand Down Expand Up @@ -1907,41 +1918,36 @@ export const Abilities: { [abilityid: string]: ModdedAbilityData; } = {
pokemon.formeChange(forme, this.effect, false, '[msg]');
}
},
onModifyTypePriority: -1,
onModifyType(move, pokemon) {
const noModifyType = [
'judgment', 'multiattack', 'naturalgift', 'revelationdance', 'technoblast', 'terrainpulse', 'weatherball',
];
if (move.type === 'Normal' && !noModifyType.includes(move.id) && !(move.isZ && move.category !== 'Status')) {
switch (pokemon.effectiveWeather()) {
case 'sunnyday':
case 'desolateland':
move.type = 'Fire';
move.forecastBoosted = true;
break;
case 'raindance':
case 'primordialsea':
move.type = 'Water';
move.forecastBoosted = true;
onPrepareHit(source, target, move) {
if (move.hasBounced) return;
const type = move.type;
if (type) {
switch (type) {
case "Water":
this.field.setWeather('raindance');
if (!source.setType(type)) return;
this.add('-start', source, 'typechange', type, '[from] ability: Forecast');
break;
case 'hail':
move.type = 'Ice';
move.forecastBoosted = true;
case "Fire":
this.field.setWeather('sunnyday');
if (!source.setType(type)) return;
this.add('-start', source, 'typechange', type, '[from] ability: Forecast');
break;
default:
case "Ice":
this.field.setWeather('hail');
if (!source.setType(type)) return;
this.add('-start', source, 'typechange', type, '[from] ability: Forecast');
break;

}
}
},
onBasePowerPriority: 23,
onBasePower(basePower, pokemon, target, move) {
if (move.forecastBoosted) return this.chainModify([0x1333, 0x1000]);
},
name: "Forecast",
shortDesc: "Castform's type and Normal type moves change to the current weather condition's type, except Sandstorm.",
rating: 2,
desc: "Castform's type changes to the current weather condition's type, except Sandstorm. Upon using a Water, Fire, or Ice move, this Pokemon changes to that type and sets the corresponding weather.",
shortDesc: "Changes type, form and weather when using Water/Fire/Ice moves.",
rating: 4,
num: 59,
},
},
mimicry: {
onStart(pokemon) {
if (this.field.terrain) {
Expand Down Expand Up @@ -2554,6 +2560,76 @@ export const Abilities: { [abilityid: string]: ModdedAbilityData; } = {
rating: 3,
num: -46,
},
icescales: {
onSourceModifyDamage(damage, source, target, move) {
if (move.category === 'Special' || move.typeMod > 0) {
return this.chainModify(0.5);
}
},
name: "Ice Scales",
shortDesc: "This Pokemon receives 1/2 damage from special attacks, as well as super effective attacks.",
desc: "This Pokemon receives 1/2 damage from special attacks, as well as super effective attacks.",
rating: 4,
num: 246,
},
strongwill: {
onSourceModifyDamage(damage, source, target, move) {
if (move.category === 'Special') {
return this.chainModify(0.5);
}
},
name: "Strong Will",
shortDesc: "This Pokemon receives 1/2 damage from special attacks.",
desc: "This Pokemon receives 1/2 damage from special attacks.",
rating: 4,
num: -1246,
},
smartguard: {
desc: "On switch-in, this Pokémon's Defense or Special Defense is raised by 1 stage based on the weaker combined attacking stat of all opposing Pokémon. Special Defense is raised if their Special Attack is higher, and Defense is raised if their Attack is the same or higher.",
shortDesc: "On switch-in, Defense or Sp. Def is raised 1 stage based on the foes' weaker Attack.",
onStart(pokemon) {
let totalatk = 0;
let totalspa = 0;
for (const target of pokemon.side.foe.active) {
if (!target || target.fainted) continue;
totalatk += target.getStat('atk', false, true);
totalspa += target.getStat('spa', false, true);
}
if (totalatk && totalatk >= totalspa) {
this.boost({def: 1});
} else if (totalspa) {
this.boost({spd: 1});
}
},
name: "Smart Guard",
rating: 4,
num: -35,
},
dodge: { //tmp
shortDesc: "This Pokemon uses its Speed in damage calculation.",
name: "Dodge",
onFoeBeforeMovePriority: 6,
onFoeBeforeMove(attacker, defender, move) {
if (target === this.effectState.target && move.category !== "Status") {
move.overrideDefensiveStat = 'spe';
}
},
rating: 3.5,
num: -9148,
},
wonderskin: {
onTryHit(target, source, move) {
if (move.category === 'Status' && target !== source) {
this.add('-immune', target, '[from] ability: Wonder Skin');
return null;
}
},
isBreakable: true,
name: "Wonder Skin",
shortDesc: "This Pokemon is immune to Status moves.",
rating: 5,
num: 147,
},
//Gen 9 additions
sharpness: {
shortDesc: "Boosts the power of sword, cut, slash, and blade moves by 1.3x",
Expand Down
Loading