Commit Graph

160 Commits

Author SHA1 Message Date
André Bastos Dias
fd21559ba8 Refactor Gen 1 partial trapping (#11189) 2025-07-22 02:12:20 -07:00
André Bastos Dias
f74586f765 Implement Imprison disabling logic using Test Fight (#11208) 2025-07-22 02:09:45 -07:00
André Bastos Dias
4435fc48b8 Fix Terastallization test (#11195) 2025-06-14 10:45:30 -06:00
Kris Johnson
acf0fb8a2e Fix build 2025-06-13 22:40:34 -06:00
André Bastos Dias
0b6d2aa399 Fix tests for low‑BP Terastallized moves (#11193)
* Fix tests for Terastallized low‑BP moves

* Fix error messages
2025-06-13 14:46:03 -06:00
André Bastos Dias
8158284427 Refactor fainted forme regression (#10878)
Some checks are pending
Node.js CI / build (18.x) (push) Waiting to run
2025-05-16 07:40:49 -07:00
André Bastos Dias
d25aba9aff Fix: Terastallize Ogerpon and Terapagos with different Tera types (#10814) 2025-05-13 14:44:46 -07:00
Sergio Garcia
fc23103de1 Fix random typos (#11020)
Some checks are pending
Node.js CI / build (18.x) (push) Waiting to run
2025-04-13 23:59:36 -07:00
Kris Johnson
c654d83a0c Revert AFD 2025 changes 2025-04-02 02:00:58 -06:00
Kris Johnson
991cc727f7 Fix build again
Some checks are pending
Node.js CI / build (18.x) (push) Waiting to run
2025-04-01 13:04:50 -06:00
Kris Johnson
07cbce7ce0 Fix build 2025-04-01 12:32:55 -06:00
Guangcong Luo
d0e3531e8b Fix burned Explosion damage
Some checks are pending
Node.js CI / build (18.x) (push) Waiting to run
2025-03-14 22:45:59 -07:00
Guangcong Luo
ae22234ed0 Add Guaranteed Secondary Mod
Some checks are pending
Node.js CI / build (18.x) (push) Waiting to run
This is currently for tests, but does have the side effect of plausibly
being fun as an actual mod to add to games.
2025-03-13 15:34:47 -07:00
sunnytangg
dbf5830353 Fix freeze lingering after fainting from Pursuit (#10959) 2025-03-12 19:34:50 -07:00
Guangcong Luo
78439b4a02 Update to ESLint 9 (#10926)
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.
2025-02-25 20:03:46 -08:00
André Bastos Dias
9fc5e0ff45 Explicitly make Terastallization tests Gen 9 (#10907)
Some checks failed
Node.js CI / build (16.x) (push) Has been cancelled
2025-02-18 20:57:43 -06:00
pyuk-bot
614d56b532 PiC: Don't activate abilities when a solo switch-in faints to hazards (#10857)
* PiC: Don't activate abilities when a solo switch-in faints to hazards

* Better namespacing

* Another nickel in the saveReplay jar

Co-authored-by: HiZo <96159984+HisuianZoroark@users.noreply.github.com>

---------

Co-authored-by: HiZo <96159984+HisuianZoroark@users.noreply.github.com>
2025-02-01 00:28:30 -07:00
pyuk-bot
d286478fe0 OMs: Fix innate abilities and items when switching in (#10844) 2025-01-28 20:24:13 -06:00
pyuk-bot
7bb2fd1869 Overhaul 'SwitchIn' event for more accurate effect resolution order (#10766) 2025-01-28 16:51:17 -06:00
André Bastos Dias
ce76114c12 Implement fainted forme regression (#10810) 2025-01-25 14:06:40 -06:00
Guangcong Luo
fde2b1187f PRNGSeed is now a string (#10826)
Some checks are pending
Node.js CI / build (16.x) (push) Waiting to run
This makes it so we no longer need to ad-hoc convert seeds from strings
to arrays when we get them from text protocols like the command line or
BattleStream's `reseed` command.

It also has the side benefit of making inputlogs very slightly smaller.
2025-01-15 15:51:28 -08:00
Guangcong Luo
5ae7940e88 Test state on the new PRNG 2025-01-14 23:01:53 -08:00
Mia
d3e60b31f7 Sim: Use a CSPRNG (#10806)
* Sim: Use a CSPRNG

* Add test

* fix test prng

* move prng test to others

* fix slight hack

* tf?

* Fuck this

* fucking lol

* fix crap

* i'm going to kill someone

* i hate state

* fix test

* Good work genius

* typo

* Fix exportinputlog

* Refactor for inputlog backwards compatibility

This is a pretty major refactor which is mostly unrelated to the
feature, but it does make the code a lot simpler.

* Readability pass

* Readability (again)

* Remove sodium-native dependency

* Refactor to serialize seeds in hex strings

(Also removes the Buffer dependency from PRNG, and slightly improves
comments.)

* Apparently << is 32-bit signed

* Readability

---------

Co-authored-by: Guangcong Luo <guangcongluo@gmail.com>
2025-01-11 13:56:34 -06:00
André Bastos Dias
041bf6a8b2 Fix Terastallization base power buff for priority moves called by Encore (#10808)
* Fix: Tera priority bump and Encore

* Line

* Fix check for multihit
2025-01-09 22:55:30 -07:00
pyuk-bot
bd537f6eaa Actually fix called Rollout's targeting (#10764) 2024-12-18 21:57:10 -06:00
larry-the-table-guy
71fe7bdfcb Test: Correct several format IDs (#10633) 2024-10-29 05:14:19 -07:00
urkerab
ae14c6f90c Allow Tera Shell to work in Inverse battles (#10599)
Some checks failed
Node.js CI / build (16.x) (push) Has been cancelled
2024-10-04 19:48:36 -05:00
Guangcong Luo
8e83905363 Improve code readability (#10374)
This is just a bunch of random changes to improve code readability.

The biggest change is `battle#go` -> `battle#turnLoop`.
2024-07-01 17:08:08 -07:00
Alexander B
002bf047ac Endless Battle Clause: Skill Swap should remove the user's staleness (#10302) 2024-05-19 11:45:47 -06:00
Leonard Craft III
5d8be885c6 Fix paralysis Speed modifier timing 2024-03-14 21:40:07 -05:00
Karthik
44541b30d0 Fix Tera Stellar interaction with multihit moves (#10185) 2024-02-24 00:14:29 -06:00
Leonard Craft III
2bd62dba8d Fix some more Terapagos mechanics (#10184)
* Fix some more Terapagos mechanics

* Update data/moves.ts

---------

Co-authored-by: Kris Johnson <11083252+KrisXV@users.noreply.github.com>
2024-02-23 22:55:06 -07:00
Kris Johnson
0bec14e1f6 Fix build 2023-12-15 21:57:30 -07:00
Kris Johnson
a0f10ffa51 Add DLC2 data (#9963)
* DLC2 returning Pokemon

* Returning legendaries too

* Partially add Raging Bolt and Iron Crown (#10)

* Add remaining Pre-DLC2 event data

* Fix tests

* Last event before DLC + split learnset files

* Learnsets + secret returning pokemon

* Some DLC 2 stuff (#12)

* Add New Mons

* Add Electro Shot

* Give Dipplin Dex Evo

* Update data/moves.ts

---------

Co-authored-by: Kris Johnson <11083252+KrisXV@users.noreply.github.com>

* More tweaks

* formats

* Revealed moves (#11)

* Add Hard Press

* Add Psychic Noise

* Add Upper Hand

* Apply suggestions from code review

---------

Co-authored-by: Kris Johnson <11083252+KrisXV@users.noreply.github.com>

* more things

* Fix typo

* a lot of other things

* MOVES! kinda

* b

* fickle beam confirmed chance

* Evo Item Undexit + Metal Alloy + Move Fixes (#19)

* Update move data

* Update Item Data

* Apply suggestions from code review

---------

Co-authored-by: Kris Johnson <11083252+KrisXV@users.noreply.github.com>

* Add message for Fickle Beam BP double (#18)

* Add some tests and implement Tera Shell (#15)

* add some tests and draft of tera shell

* add text

* .

* add improvements from feedback, change behavior of terashell

* use AfterMove instead of AfterMoveSecondary

* add confirmation to multi-hit interaction

* improve based on feedback and general cleanup

* Apply suggestions from code review

---------

Co-authored-by: Kris Johnson <11083252+KrisXV@users.noreply.github.com>

* Add Tera Shift and Teraform Zero (#16)

* Add Tera Shift and Teraform Zero

* Add short descriptions

* fixes

* More move changes

* Update unSketchable moves

List from Anubis

* more move things

* oops

* Implement new Neutralizing Gas/Paradox ability interaction (#17)

* Implement new Neutralizing Gas/Paradox ability interaction

* add test

* revert in dlc

* ok

* Update pastgens for Sketch (#20)

* Implement Stellar type (#13)

* Implement Stellar type

* stuff from research

* pain

* add tests for Dragon Cheer (#22)

Co-authored-by: Kris Johnson <11083252+KrisXV@users.noreply.github.com>

* Update move flags (#23)

* Fix flags for new moves

* update old moves

* remove sparkling aria changes

* update metronome description

* update other move descriptions

* more formatz stuff

* Add Poison Puppeteer (#24)

* Add Poison Puppeteer

* i'm bad

* still bad

* Fix build

* oops

* Update data/moves.ts

Co-authored-by: Marty-D <Marty-D@users.noreply.github.com>

* Update data/moves.ts

Co-authored-by: Marty-D <Marty-D@users.noreply.github.com>

* Update data/items.ts

Co-authored-by: Marty-D <Marty-D@users.noreply.github.com>

* Update data/moves.ts

Co-authored-by: Marty-D <Marty-D@users.noreply.github.com>

* Fix Terapagos dex entries (#25)

* Update data/pokedex.ts

Co-authored-by: Marty-D <Marty-D@users.noreply.github.com>

* Update data/pokedex.ts

Co-authored-by: Marty-D <Marty-D@users.noreply.github.com>

* Update data/pokedex.ts

Co-authored-by: Marty-D <Marty-D@users.noreply.github.com>

* FIX BUILD

* Fix Regulation E formats (#26)

* Fix Regulation E formats

* add move bans

* nevermind

* Add Regulation F formats (#27)

* Fix interaction between Adaptability and Tera Stellar (#28)

* reg f bo3 ladder

* Update config/formats.ts

Co-authored-by: Leonard Craft III <leonardcraft64@gmail.com>

---------

Co-authored-by: Smudge <smudgerox@users.noreply.github.com>
Co-authored-by: Leonard Craft III <leonardcraft64@gmail.com>
Co-authored-by: Karthik <32044378+Karthik99999@users.noreply.github.com>
Co-authored-by: tofa <79044321+im-tofa@users.noreply.github.com>
Co-authored-by: Marty-D <Marty-D@users.noreply.github.com>
2023-12-15 21:35:01 -07:00
pyuk-bot
a8c4f4dcf6 Fix when Ogerpon's ability should change on Tera (#9863) 2023-11-15 19:57:18 -06:00
Leonard Craft III
f666f89564 Improve Fusion move combo tests 2023-10-16 23:00:46 -05:00
pyuk-bot
98d026a7d1 Pokemon transformed into Ogerpon cannot Tera (#9774) 2023-09-14 20:39:59 -05:00
Leonard Craft III
404b6fd514 Add tests for upcoming Hackmons changes 2023-07-31 00:24:51 -05:00
Karthik
274264ebee Gen 9: Reveal Arceus forme in Team Preview (#9610) 2023-06-19 20:57:33 -04:00
Alexander B
283098c982 Fix ruleset interactions with Rayquaza-Mega (#9293)
* Fix ruleset interactions with Rayquaza-Mega

* Improve condition

* DRYify tests more
2023-02-01 15:50:48 -07:00
Leonard Craft III
5259fdd40f Tests: Reduce dependence on RNG (#9297) 2023-01-14 19:08:44 -06:00
Kris Johnson
e1198d59f4 Fix build 2023-01-09 15:36:56 -07:00
Kris Johnson
75e0eeaf1d Delete Gen 8 OMs 2023-01-09 15:26:06 -07:00
livid washed
a1cb1f23fc Gen 1: Implement Dig/Fly invulnerability glitch, partially fix charging moves and Mirror Move (#9243)
* Protect/Detect/Endure don't exist in gen 1

* Add twoturnmove condition to gen 1

* Gens 1-2: Mirror Move fails immediately after a switch

* Fix first Mirror Move test: Fearow was getting OHKO'd by Hyper Beam

* pokemon.lastMove (for Mirror Move) isn't updated with the charging turn

* Remove unnecessary code

* Add onTryMove for each two-turn move with removeVolatile('twoturnmove')

* Sleep, Freeze, partial trapping, flinch don't stop two turn moves

* Para/confusion stops thrashing moves + copy over lockedmove condition details instead of inheriting

* Remove some unnecessary code

* Add Dig/Fly invulnerability glitch

* Add hint for Dig/Fly invulnerability glitch

* Gen 1 Japanese and Stadium

* put Dig before Fly

* Self-targeted moves (e.g. Recover) will work while semi-invulnerable

* Revert changes to lockedmove, do them in a future patch

* move ends if it fails due to disable

* Two-turn moves use PP in their second turn

* restore mocharc

* Remove unnecessary code

* Fix PP usage for Metronome/Mirror Move calling two-turn moves
2022-12-29 18:35:59 -08:00
Mia
b11177d530 Migrate to esbuild for compilation (#9203) 2022-12-22 15:19:29 -06:00
pyuk-bot
2bc2100a7b Make -Ate abilities share a ...Boosted property (#9174) 2022-12-13 21:43:52 -06:00
Alexander B
a2b281d730 Implement Tera + Adaptability STAB (#9138) 2022-12-10 17:59:52 -05:00
Kris Johnson
a09bfc927a Account for moves with <60 Base Power when terastallized (#9134) 2022-12-10 14:17:23 -06:00
Leonard Craft III
ff83a809a1 Add low BP Terastallizing behavior tests 2022-12-06 22:32:25 -06:00
Leonard Craft III
8b2d01113c Remove debug print 2022-12-01 00:12:28 -06:00