Pokémon Showdown

From Bulbapedia, the community-driven Pokémon encyclopedia.
Jump to navigationJump to search
Pokémon Showdown
LogoPS.png
Language English
Status Active
Run 2011 - Present
Date opened October 2011
Creator Zarel
Current owner {{{owner}}}
Forum PS Forums
Mascot Meloetta
Website Main Page

Pokémon Showdown, also often formatted as Pokémon Showdown!, is a web-based Pokémon battle simulator. It is free open source software written in TypeScript and JavaScript, with its server infrastructure designed to run on Node.js. It was adopted by Smogon on July 2, 2012, and is open source.

In addition to standard modes of play, Pokémon Showdown! includes unique features such as "Pure Hackmons" and "Balanced Hackmons," which encompass Pokémon of normally illegal movesets and Abilities, and "Random Battles", which randomises both player's teams, balancing based on tiers. Some people also have custom servers in which they can create their own rulesets, battle formats, and even "Pet Mods" where they can change the entire way the game is played. The most notable of these side servers would be Dragon Heaven, which hosts modifications of this nature for Smogon's Pet Mods forum.

Features

Pokémon Showdown has move animations in battle. It supports replay sharing with one click and reconnecting to disconnected battles.

Pokémon Showdown supports Single and Double Battles in generation V through generation IX and also has support for Single Battles in all other generations. They also have Triple Battles though it is only in beta phase as with Multi Battles and Battle Royals. There are also custom battle styles, such as the Almost Any Ability or Monotype ruleset.

This website also features alternative servers which people can join through the main website. Examples include Sports, Dragon Heaven, and Pokémon Insurgence.

Team format

Pokémon Showdown has pioneered a de facto standard for Pokémon team notation.[1]

Export format

The export format is usually the only one the user will see. There is at least one empty line after each entry.

Articuno @ Leftovers  
Ability: Pressure  
EVs: 252 HP / 252 SpA / 4 SpD  
Modest Nature  
IVs: 30 SpA / 30 SpD  
- Ice Beam  
- Hurricane  
- Substitute  
- Roost  

Ludicolo @ Life Orb  
Ability: Swift Swim  
EVs: 4 HP / 252 SpA / 252 Spe  
Modest Nature  
- Surf  
- Giga Drain  
- Ice Beam  
- Rain Dance  

Volbeat (M) @ Damp Rock  
Ability: Prankster  
EVs: 248 HP / 252 Def / 8 SpD  
Bold Nature  
- Tail Glow  
- Baton Pass  
- Encore  
- Rain Dance  

Seismitoad @ Life Orb  
Ability: Swift Swim  
EVs: 252 SpA / 4 SpD / 252 Spe  
Modest Nature  
- Hydro Pump  
- Earth Power  
- Stealth Rock  
- Rain Dance  

Alomomola @ Damp Rock  
Ability: Regenerator  
EVs: 252 HP / 252 Def / 4 SpD  
Bold Nature  
- Wish  
- Protect  
- Toxic  
- Rain Dance  

Armaldo @ Leftovers  
Ability: Swift Swim  
EVs: 128 HP / 252 Atk / 4 Def / 124 Spe  
Adamant Nature  
- X-Scissor  
- Stone Edge  
- Aqua Tail  
- Rapid Spin  

This example is used to represent this Pokémon team:



This consists of three sections:

  1. Declaration
  2. Attributes
  3. Moves

In syntax definitions below, <...> just denote a named field. [ ] denote an optional field. { } indicates a field that may appear 0 or more times. Quoting indicates literals.

Declaration

This section has one of the two following syntaxes:

<nickname> "(" <species-name> ")" ["(" <m-or-f> ")"] ["@" <item>]
<species-name> ["(" <m-or-f> ")"] ["@" <item>]

The nickname field is optional. If it exists, the species name must be surrounded by parentheses.

The <m-or-f> field just indicates that there should be either the letter F or M, which indicate female and male, respectively. Gender unknown Pokémon do not have this field.

The item field is optional. If the Pokémon is holding an item, the item's name must be preceded by an at sign. Example: @ Leftovers.

Attributes

Each attribute in this section is formatted like this:

<name> ":" <value>
Data types
Type Description
Integer Whole number: values between 0-255 are accepted
Boolean "Yes" or "No"
Stat list List of <number> <stat> pairs, separated with slashes (/).

Stat names (except HP) are translated:

Entity name

These data types apply to the fields:

Fields
Name Type Description Default value (if optional)
Level Integer (between 1 and 100) 100 (50 for World Championships)
Happiness Integer 255
Dynamax Level Integer (between 0 and 10) 10
Ability Ability name The Pokémon's Ability The species' first Ability
Nature Nature name The Pokémon's nature. Formatted as <name> Nature Serious
Tera Type Type name The Pokémon's Tera Type The species' primary type
Shiny Boolean Shininess No
Gigantamax Boolean Gigantamax Factor presence No
EVs Stat list Effort values Missing stats: 0 EVs
IVs Stat list Individual values Missing stats: 31 IVs
Moves

This section contains up to four entries formatted like this:

"-" <move> [ "[" <type> "]" ] { "/" <move> [ "[" <type> "]" ] }

The <type> field is only for moves that can have variable types that can be applied or seen outside of battle, e.g. Hidden Power or Techno Blast.

More than one move can be specified for each slot, but the moves after the first slash are usually ignored.

Packed format

The packed format consists of entries delimited with ], where fields are delimited with |, and data in fields is delimited with ,.

There is no ] after the last entry. Skipped fields don't have any content. An example team in this format looks like this:

Articuno||leftovers|pressure|icebeam,hurricane,substitute,roost|Modest|252,,,252,4,||,,,30,30,|||]Ludicolo||lifeorb|swiftswim|surf,gigadrain,icebeam,raindance|Modest|4,,,252,,252|||||]Volbeat||damprock|prankster|tailglow,batonpass,encore,raindance|Bold|248,,252,,8,|M||||]Seismitoad||lifeorb|swiftswim|hydropump,earthpower,stealthrock,raindance|Modest|,,,252,4,252|||||]Alomomola||damprock|regenerator|wish,protect,toxic,raindance|Bold|252,,252,,4,|||||]Armaldo||leftovers|swiftswim|xscissor,stoneedge,aquatail,rapidspin|Adamant|128,252,4,,,124|||||

Normally, no line breaks are used, but are sometimes included for readability:

Articuno||leftovers|pressure|icebeam,hurricane,substitute,roost|Modest|252,,,252,4,||,,,30,30,|||]
Ludicolo||lifeorb|swiftswim|surf,gigadrain,icebeam,raindance|Modest|4,,,252,,252|||||]
Volbeat||damprock|prankster|tailglow,batonpass,encore,raindance|Bold|248,,252,,8,|M||||]
Seismitoad||lifeorb|swiftswim|hydropump,earthpower,stealthrock,raindance|Modest|,,,252,4,252|||||]
Alomomola||damprock|regenerator|wish,protect,toxic,raindance|Bold|252,,252,,4,|||||]
Armaldo||leftovers|swiftswim|xscissor,stoneedge,aquatail,rapidspin|Adamant|128,252,4,,,124|||||

The fields are ordered like this:

  1. Nickname
  2. Species name (if same as nickname, then blank)
  3. Held item
  4. Ability
  5. Moves (4)
  6. Nature (Serious if blank)
  7. EVs (in order: HP, Atk, Def, SpA, SpD, Spe)
  8. Gender
  9. IVs (in order: HP, Atk, Def, SpA, SpD, Spe)
  10. Shiny? (S or blank)
  11. Level (100 if blank)
  12. Meta
    1. Happiness (255 if blank)
    2. Poké Ball (not implemented yet)
    3. Hidden Power type (Generation VII+, depends on IVs if blank or if up to Generation VI)
    4. Has Gigantamax Factor? (G or blank)
    5. Dynamax Level (10 if blank)
    6. Tera Type (the species' primary type if blank)

If a field that expects commas is blank, the commas can be skipped too.

Mini-games

Pokémon Showdown also hosts non-Pokémon mini-games, all of which have individual chat rooms that can be joined.

The games are:

  • Battle Dome
  • Trivia
  • Scavengers
  • Mafia
  • Game Corner (unrelated to the Pokémon Game Corner)
  • Board Games
  • Survivor

Events

April Fools

April Fools sprite change of Coalossal and Scovillain

On April Fools, all the sprites of the Pokémon are replaced with alternate sprites. The sprites usually poke fun at the Pokémon's appearance, commonly comparing them to objects they resemble or characters from other popular culture. The commands "/afd on" and "/afd off" can enable and disable the April Fools sprites respectively. Attack animations occasionally end with a hitmarker.

The April Fools sprites were first used on April Fools' 2013. They have been frequently updated so that sprites for subsequent generations are included in the April Fools' days.

Halloween

On Halloween, some moves receive a different animation, particularly Ghost-type moves such as Shadow Ball.

Development

Pokémon Showdown was created by Zarel. Because this project is open-source, it has many other developers and graphical contributors as well.[2]

Staff

  • Guangcong Luo (Zarel, Owner)
  • Andrew Werner (HoeenHero, Development)
  • Annika L. (Development)
  • Chris Monsanto (chaos, sysadmin)
  • Leonard Craft III (DaWoblefet, Research)
  • Mathieu Dias-Martins (Marty, Research)

See also

External links

References

Project Fandom logo.png This article is a part of Project Fandom, a Bulbapedia Project that aims to write comprehensive articles on every aspect of the Pokémon Fandom.