The full description is in the comments of the Endless Battle
Clause entry in rulesets.js.
This update fixes a lot of the issues with yesterday's version.
Also included: A minor refactor of deductPP, which did not need
a success variable.
The new Endless Battle Clause attempts to ban endless battles by
detecting situations in which a battle could become endless.
This approach bans endless battles without banning Leppacycling.
The exact formulation is:
A Pokémon is considered cornered if:
- it has no available moves other than Struggle
- OR a stale Pokémon used Assist Whirlwind on it
- OR it has been hit by a Struggle from a stale Pokémon on the turn
it switched in
(at the beginning of a turn, if you have available moves other than
Struggle, you are no longer cornered)
A Pokémon is considered stale if:
- it has gained a Leppa berry through any means besides starting
with one (including but not limited to Harvest, Recycle, Pickup,
Symbiosis, Bestow, Thief, Switcheroo, and Magician)
- OR it has been targeted with Fling Leppa Berry
- OR it is cornered and begins a turn with more HP than it the last
turn it began
- OR it is cornered and begins a turn with as much HP as the last
turn it began, and was not fully paralyzed, loafing around from
Truant, or immobilized from Attract
- OR it uses Transform/Imposter against a stale Pokémon
(a Pokémon that becomes stale stays stale for the rest of the match)
If all active Pokémon are stale, the player whose team originally
started with a Leppa Berry loses. If both or neither team started
with a Leppa Berry, the team that had the first stale Pokémon wins.
We now ban boosting both Speed and non-Speed with Baton Pass.
To make this simpler, we introduce changeSet as separate from
validateSet, which allows us to pass setHas to validateSet
A mod is PS functionality that cannot be replicated in a real
cartridge battle. Preventing someone from pressing the Mega Evolution
button is possible on-cart. It's completely different from changing
the results of pressing a button, which is what Sleep Clause
Mod does.
Disregard puny OM of the Month thing. That's for losers anyway.
From now on, the strongest and best OM is going to be added as the OM of the Decaed.
It will only be changed when a strongest OM appears and beats it off.
Right now, with no contender really, that OM is Final Destination. Any other OMs just pale in comparison.
Mega Rayquaza is banned from Ubers.
However, Rayquaza with the move Dragon Ascent is allowed.
It is thus necessary to add a mod rule, Mega Rayquaza Ban Mod,
which flags Rayquaza as not mega evolveable.
By moving the EV block from team-validator.js to rulesets.js’s Pokemon ruleset, the 510 EV limit is enforced in Balanced Hackmons. The other block regarding abilities is still in team-validator.