Pokémon battle simulator.
Go to file
livid washed 6573f468bc
Gen 1: Fix Thrash and Rage mechanics (#9315)
* Copy everything from Gen 2 thrashing condition and stop inheriting

* Remove residual and MoveAborted events (don't occur in gen 1)

* effectState.duration --> effectState.time, so that thrashing pauses on slp/frz/flinch/partial trapping. Also, confusion is now applied before the final Thrash hits (but after confusion check, so the final Thrash won't be interrupted)

* Confusion is only applied if Thrashing effect ends naturally, not due to full para/confusion

* Thrash should lock the user in, even if it misses/hits a Ghost/etc

* Add Thrash tests: duration and locking in the user when it misses

* Thrash locks in the user even if it breaks a sub

* Remove unnecessary events for thrashing moves

* Thrash is paused when the user is asleep, frozen, partially trapped, or flinching

* Thrash is paused when disabled

* Rage duration is permanent, not 255

* Implement Rage/Thrash accuracy bug (need to change when lockedmove volatile is removed

* Move location of applying thrashing effect, so that the final turn will be subject to accuracy bug

* Add test for Thrash accuracy bug

* Add test for Rage accuracy bug

* Remove useless line

* Use an event for obtaining accuracy of Rage/Thrash

* Revert last change
2023-01-14 14:47:58 -08:00
.github/workflows Use ts-node instead of Sucrase (#8369) 2021-07-09 19:59:22 -07:00
.vscode Turn off Format on Save in VS Code (#7807) 2020-12-24 09:44:24 -08:00
config Add Fortemons (#9305) 2023-01-13 23:46:25 -07:00
data Gen 1: Fix Thrash and Rage mechanics (#9315) 2023-01-14 14:47:58 -08:00
databases CG Teams updates 2022-12-15 19:46:59 -08:00
lib Fix Postgres config loading 2022-12-22 15:57:05 -06:00
logs Restore READMEs for logs/ subdirs 2021-10-06 16:55:39 -05:00
server Fix addhosts grammar 2023-01-14 14:22:17 -06:00
sim Gen IV: Fix Copycat's behavior with called moves (#9326) 2023-01-14 16:40:02 -06:00
test Gen 1: Fix Thrash and Rage mechanics (#9315) 2023-01-14 14:47:58 -08:00
tools build-utils: Add hack for logs and databases directories 2023-01-01 17:21:57 -05:00
translations add missed portuguese translations (#8926) 2022-10-09 15:05:20 -07:00
.editorconfig Editorconfig: Increase indent size to 3 spaces (#4090) 2017-10-29 13:21:55 -05:00
.eslintrc-no-types.json Migrate to esbuild for compilation (#9203) 2022-12-22 15:19:29 -06:00
.eslintrc.json Fix ESLint errors 2022-02-14 20:42:09 -08:00
.gitattributes Normalize file endings when committing. 2015-12-31 19:10:53 +01:00
.gitignore Migrate to esbuild for compilation (#9203) 2022-12-22 15:19:29 -06:00
.mocharc.json Random Battles: Add basic unit test framework 2021-03-18 18:17:25 -07:00
.npmignore Publish 0.11.3 to npm 2020-10-21 17:24:58 +01:00
.npmrc Add Gen 9 (#8997) 2022-11-17 20:46:29 -05:00
ARCHITECTURE.md ARCHITECTURE.md: Fix links to files 2021-12-09 13:20:35 -08:00
build Migrate to esbuild for compilation (#9203) 2022-12-22 15:19:29 -06:00
CODEOWNERS Codeown <<randbats>> coders for Random Battles 2022-12-16 18:45:52 -08:00
COMMANDLINE.md Update commandline -h generate-team (#9102) 2023-01-07 10:06:14 -06:00
CONTRIBUTING.md Explain how to access localhost.psim.us 2022-11-10 18:25:53 -08:00
LICENSE LICENSE: Update year 2022-08-08 20:24:50 -07:00
old-simulator-doc.txt Change weight units to hectograms (#5765) 2019-10-03 14:00:16 +10:00
package.json package.json: Add a postinstall script 2023-01-05 09:31:53 -06:00
pokemon-showdown Update commandline -h generate-team (#9102) 2023-01-07 10:06:14 -06:00
Procfile Update Procfile (#4937) 2018-10-29 23:27:24 -05:00
PROTOCOL.md Update wss URL in PROTOCOL.md (#8715) 2022-04-30 12:55:38 -07:00
README.md README: Remove defunct LGTM badge (#9298) 2023-01-09 04:05:05 -05:00
simulator-doc.txt Fix bugs with secondary/ability order 2020-02-08 08:07:39 -08:00
tsconfig.json Migrate to esbuild for compilation (#9203) 2022-12-22 15:19:29 -06:00

Pokémon Showdown

Navigation: Website | Server repository | Client repository | Dex repository

Build Status Dependency Status devDependency Status

Introduction

Pokémon Showdown is many things:

Pokémon Showdown simulates singles, doubles and triples battles in all the games out so far (Generations 1 through 8).

  • PROTOCOL.md - How the client and server communicate with each other.

  • sim/SIM-PROTOCOL.md - The part of the protocol used for battles and battle messages.

  • CONTRIBUTING.md - Useful code standards to understand if you want to send pull requests to PS (not necessary if you're just using the code and not planning to contribute back).

  • ARCHITECTURE.md - A high-level overview of how the code works.

  • Bot FAQ - An FAQ compiled by Kaiepi regarding making Pokemon Showdown bots - mainly chatbots and battle bots.

Community

PS has a built-in chat service. Join our main server to talk to us!

You can also visit the Pokémon Showdown forums for discussion and help.

If you'd like to contribute to programming and don't know where to start, feel free to check out Ideas for New Developers.

License

Pokémon Showdown's server is distributed under the terms of the MIT License.

Credits

Owner

  • Guangcong Luo [Zarel] - Development, Design, Sysadmin

Staff

  • Andrew Werner [HoeenHero] - Development
  • Annika L. [Annika] - Development
  • Chris Monsanto [chaos] - Development, Sysadmin
  • Leonard Craft III - Research (game mechanics)
  • Mathieu Dias-Martins [Marty-D] - Research (game mechanics), Development

Contributors