The current variables in place to check for STAB do not work as intended.
If a Pokemon has two STAB moves of the same type, and one of them is set
as a move that shouldn't be counted as STAB, the Pokemon will be counted
as not having STAB. Since nothing in the code checks for Pokemon having
STAB of a specific type, it is refactored to be a boolean instead.
In order to avoid a situation where a move like Infestation sets the STAB
variable to true when it doesn't count as a damaging move, these kinds of
moves no longer increment counters for abilities that boost damage, like
Adaptability.
- Force Super Luck on Unfezant (it has a 33% chance of getting Big Pecks)
- Force Scope Lens on Unfezants with enough attacking moves
- Give Unfezant Night Slash
- Replace Wish with Roost in Doubles
- Reject Water Spout and Eruption with setup or RestTalk
- Allow Origin Pulse with RestTalk
- Give Extremespeed users and Sucker Punch users without STAB Life Orb
instead of Expert Belt
- Prevent Life Orb with Dragon Tail
- Low priority: give Leftovers to Pokemon weak to Stealth Rock
Super Luck + Scope Lens gives a 50% chance of crit, but isn't a very high
priority since a consistent damage boost from a Choice item can be a
better pick.
- Lumineon and Poliwrath have Storm Drain and Water Absorb respectively,
which is always chosen over Swift Swim, so Rain Dance is unneccessary.
- Give Pokemon with Unburden a Focus Sash
- Give Unburden mons with stat-lowering moves a White Herb (specifically
targets Sceptile)
- Added speedsetup counter
- Improve Weakness Policy selection (might give it to more than just
speedsetup later on but this is much better than the previous
implementation that gave it to very bad sets)
- Added Lustrous Orb as a low priority option for Palkia
- Slightly increased defensive requirement of Assault Vest
- 30% more op/s for randomTeam, randomDoublesTeam and randomCCTeam
- 300% more op/s for randomHackmonsCCTeam
- Implement helper method `sampleNoReplace`: takes an array parameter, removes a random element and returns it.
- Random team makers now follow the game RNG. Therefore, it's now possible to reconstruct the teambuilding process for bad sets, given that the starting seed is known.
Went through all fully-evolved Pokemon and updated their moves. Also
removed illegal moves on several Pokemon...
- Added Superpower to SetupException
- Reject Water Pulse with Scald
- Reject Acrobatics with Hurricane
- Prevent Focus Blast and Superpower together
- Reject Physical moves with Acid Spray (only affects Eelektross)
- Do not reject Baton Pass with Protect
- Reject Healing Wish with setup
- Reject Hydro Pump with RestTalk
- Prevent Precipice Blades with Earthquake
- In accepting Shadow Ball + HP Fighting, ensure that it's HP Fighting
(relevant for Reuniclus, Chandelure, and Sylveon, which have Hidden
Power that aren't Fighting)
- If Hidden Power changes the IVs but is later removed by another
processing cycle, reset the IVs to 31 all
- Removed old check for "bulky" Pokemon as it would give Leftovers to
Pokemon that would prefer Life Orb or even Assault Vest. For example,
Kyurem-White and Goodra, respectively.
- If the Pokemon has three attacking moves, give Life Orb to those with
either setup or a recovery move, and give Leftovers to everything else.
- Give Keldeo HP Flying instead of HP Ghost
- Reject Hidden Power if the Pokemon has a special setup move and only
one other special attack
- Dark/Fighting is resisted by Fairy this generation and isn't a
"perfect" combination anymore
- Remove Feint from Pikachu/Raichu
- Replace Rock Blast with Rock Slide on Golem line
- Add Surf to Octillery
- Reject Strong Jaw without bite moves
- Update Iron Fist check to use the punch flag
- Give preference to Rock Slide over Head Smash
- Give preference to Discharge over Thunderbolt and Electroweb
- Modify Tyrantrum's moves
- Add bite moves counter for Strong Jaw
- Use punch flag for ironfist counter
- Give preference to Stone Edge over Head Smash
Mechanics Changes:
- Fire Rocket does less damage, cannot crit.
- Fire Rocket is no longer a bullet move (for Chesnaught)
- Only Li Shang can Train Recruits.
- Recruits start with lowered defenses as well.
- Edit Mushu's movepool.
Flavor Changes:
- Train Recruits now uses Bulk Up's animation.
- Fire Rocket now uses Eruption's animation. Backfires cause the animation
to strike the user instead!
- Use Searing Shot as Fire Rocket instead of Octazooka.
Unaware currently doesn't work because the ModifyMove event is fired on the move before each target is caculated in doubles and triples.
This means that the ModifyMove event should be fired for each target and the move not modified unless it fits the attacker-target.
It's easier and less expensive to use an ability property to check on attacker/target than to fire events.
This fixes Unaware in doubles/triples.
It takes account interaction with Mold Breaker, Gastro Acid, and other ability supressers.