* Make a mod file
* Add Pokemon in Champions (#3)
* Add new Megas abilities (#4)
* Add new Megas abilities
* Apply suggestion from @KrisXV
---------
Co-authored-by: Kris Johnson <11083252+KrisXV@users.noreply.github.com>
* Add conditions for Champions (#5)
* Add conditions for Champions
* Add a turn limit to freeze
* Swap the order of the checks
Co-authored-by: André Bastos Dias <80102738+andrebastosdias@users.noreply.github.com>
---------
Co-authored-by: André Bastos Dias <80102738+andrebastosdias@users.noreply.github.com>
* Disable Fake Out if it is not the first active move action (#7)
* Disable Fake Out if it is not the first active move action
* Remove unnecessary code
---------
Co-authored-by: André Bastos Dias <dias.andre@siemens.com>
* Implement Piercing Drill, Spicy Spray and Unseen Fist (#2)
* Add Piercing Drill and Spicy Spray
Fix ability numbers
Refactor condition
Disallow Piercing Drill/Spicy Spray in formats !Obtainable Abilities without +Future
Refactor condition
* Rename blockStatus
* CFZ-moves completely bypass Protect
* Update Gen 4 Protect
* Old gen Wide Guard and Quick Guard
* Fix Wide Guard
* Clean Mat Block implementation
* Nerf Unseen Fist
* Fix condition
* Update sim/battle.ts
---------
Co-authored-by: André Bastos Dias <dias.andre@siemens.com>
Co-authored-by: Kris Johnson <11083252+KrisXV@users.noreply.github.com>
* Implement PP mechanics (#8)
* Implement PP mechanics
* Clip all moves to 20 PP
* Apply suggestion from @KrisXV
* Update scripts.ts
---------
Co-authored-by: Kris Johnson <11083252+KrisXV@users.noreply.github.com>
* Add Champions stat calculaiton
* Fix conflicts with smogon/master (#11)
* Fix stat formula (#12)
* Implement PP mechanics (#8)
* Implement PP mechanics
* Clip all moves to 20 PP
* Apply suggestion from @KrisXV
* Update scripts.ts
---------
Co-authored-by: Kris Johnson <11083252+KrisXV@users.noreply.github.com>
* Fix stat formula
* For clarity like we do with friendship in letsgo
* If we don't allow IVs and Level to be modifiable, there is not point in having `Adjust Level = 50`
---------
Co-authored-by: Kris Johnson <11083252+KrisXV@users.noreply.github.com>
* Add Champions Items (#9)
* Remove Mega Raichus, Mega Z, and Greninja-Bond (#10)
* Remove Mega Raichus and Mega Z
* Remove Greninja-Bond
* Implement Mega Sol's activation message (#13)
* Implement Mega Sol's activation message
* Update ModdedBattlePokemon interface
* Implement move changes (#6)
* Implement move changes
* Re-implement Salt Cure changes
* Update moves
* Implement Blood Moon package
* Mimic https://github.com/smogon/pokemon-showdown/pull/11838/https://github.com/smogon/pokemon-showdown/pull/11838/
* Implement accuracy and PP changes
* Mark Double Shock and Revival Blessing as Past moves
* Import learnsets from Serebii (#19)
* Import learnsets from serebii
* floette -> floetteeternal
* Update learnsets
* Apparently I forgot to give Gourgeist-Small its tier (#15)
* Move Pikachu to NFE (#21)
* Oops
* Add Pokemon I forgot the first time (#24)
* Add 'Past' moves (#23)
* Add past moves
* Fix move availability
* AfterHit effects should activate even if the source faints (#20)
* AfterHit effects should activate even if the source faints
* Change Gens 3-4 event order
* Ups
* Announce 4x and 0.25x effectiveness (#14)
* Reset Encore priority and choose random target (#17)
* Reset Encore priority and choose random target
* Allow onOverrideAction
* Quash + Encore interaction
* Don't send target
targetLoc was actually thing being checked but wtv
* Activate White Herb after choosing the Parting Shot switch (#26)
* Activate White Herb after choosing the Parting Shot switch
* Add comment
* Add formats
* Implement flag changes (#25)
* Implement flag changes
* Fix Gen 5 Rage Powder (remove poder immunity check)
* Add moves and abilities descriptions
* Apply suggestion from @KrisXV
* Comment Rage Powder
Leave this comment and I would choose the implementation depending on what we see from the healing flag.
---------
Co-authored-by: Kris Johnson <11083252+KrisXV@users.noreply.github.com>
* Announce status immunities from abilities (#22)
* Mega Sol boosts the damage of Fire-type moves as if they were under sun (#18)
* Remove hardcoded Utility Umbrella
* Check effective weather on attacker
* Don't activate Mega Sol under sun
* Add TODO comment
* TODO: check interaction with Utility Umbrella
* Move implementation to base mod
* Do not revert Mega Evolutions upon fainting (#16)
* Revert Mega Evolutions on fainting
* Allow diferent levels in the team builder
* TODO: confirm interaction with Revival Blessing
* Add Species Clause and Obtainable
* Update team-validator.ts
---------
Co-authored-by: Kris Johnson <11083252+KrisXV@users.noreply.github.com>
* Update abilities percentages (#27)
* Healer has a 50% chance of curing the status conditions of its allies
* Update Shed Skin
---------
Co-authored-by: Kris Johnson <11083252+KrisXV@users.noreply.github.com>
* Fix crashes
* add custom game
* Fix typo
* update flat rules
* Update data/mods/champions/scripts.ts
Co-authored-by: Slayer95 <ivojulca@hotmail.com>
---------
Co-authored-by: shrianshChari <30420527+shrianshChari@users.noreply.github.com>
Co-authored-by: André Bastos Dias <80102738+andrebastosdias@users.noreply.github.com>
Co-authored-by: André Bastos Dias <dias.andre@siemens.com>
Co-authored-by: Karthik Bandagonda <32044378+Karthik99999@users.noreply.github.com>
Co-authored-by: Slayer95 <ivojulca@hotmail.com>
* Add HOME relearner for LA
* Update dex-species.ts
Workaround for a crash caused by using the LA mod in dexsearch
* Fix more crashes
* `gen8legendsarceus` -> `gen8legends`
* Allow BDSP moves to be learned via HOME relearner
* Update team-validator.ts
Commented out my changes to see if this was causing a test to fail; turns out my code isn't at fault.
* Update team-validator.ts
* Don't get learnset for Pokemon that don't exist in BDSP
Without the isNonstandard check, the learnset will be taken from the base learnsets.ts file, which could result in detecting moves that are actually not from BDSP.
* Fix BDSP legality
* Update team-validator.ts
* Fix test and learnsets
* Update data.js
* Prevent illegal transfers to/from BDSP
Nincada from outside BDSP cannot be sent to BDSP, Nincada from BDSP cannot be sent to other Switch games, and Spinda cannot be sent from or to BDSP. Currently this has no effect in regular Gen 9, but it technically does in Gen 9 Natdex (I have no idea if anything changes), and it may affect future generations.
This is what lets you type "ww" or "wind" to find "whirlwind" in the
teambuilder (and PSdex) search.
These were previously in the client build scripts, where I think most
people didn't realize how to find or update them.
ESLint has a whole new config format, so I figure it's a good time to
make the config system saner.
- First, we no longer have separate eslint-no-types configs. Lint
performance shouldn't be enough of a problem to justify the
relevant maintenance complexity.
- Second, our base config should work out-of-the-box now. `npx eslint`
will work as expected, without any CLI flags. You should still use
`npm run lint` which adds the `--cached` flag for performance.
- Third, whatever updates I did fixed style linting, which apparently
has been bugged for quite some time, considering all the obvious
mixed-tabs-and-spaces issues I found in the upgrade.
Also here are some changes to our style rules. In particular:
- Curly brackets (for objects etc) now have spaces inside them. Sorry
for the huge change. ESLint doesn't support our old style, and most
projects use Prettier style, so we might as well match them in this way.
See https://github.com/eslint-stylistic/eslint-stylistic/issues/415
- String + number concatenation is no longer allowed. We now
consistently use template strings for this.
* Add tests for cosmetic formes
* Fix aliases of Pokestar F to use its actual name
* Revert "BH: Fix weird validation edge case"
This reverts commit e71619135a.
* Remove invalid tiers of cosmetic formes of Pokestar Giant
* Use base forme names in banlists where possible
This allows you use e.g. 'Arceus-Normal' instead of 'Arceus-Base'.
Also includes some aliases so that all known base forme names actually work.
* Update formats.ts
---------
Co-authored-by: Kris Johnson <11083252+KrisXV@users.noreply.github.com>
* Use base forme names in banlists where possible
This allows you use e.g. 'Arceus-Normal' instead of 'Arceus-Base'.
Also includes some aliases so that all known base forme names actually work.
* Update formats.ts
* Update config/formats.ts
* Update config/formats.ts
* Update config/formats.ts
* Apply suggestions from code review
---------
Co-authored-by: Kris Johnson <11083252+KrisXV@users.noreply.github.com>