Twitch Plays Pokémon (TPP) is a social experiment and live streaming channel on the website Twitch. It involves many people working together to play Pokémon video games by sending commands through the channel's chat room. TPP holds a Guinness World Record for having "the most users to input a command to play a live streamed video game," with over 1.16 million participants.
The idea was created by an anonymous programmer from Australia and started on February 12, 2014, with the game Pokémon Red. The stream became very popular, with an average of more than 80,000 viewers watching at the same time (with at least 10% participating). On March 1, 2014, the game was finished after more than 16 days of continuous play. Twitch estimated that over 1.16 million people took part, with as many as 121,000 people participating at the same time. The experiment had 55 million views total. On December 5, 2014, Twitch Plays Pokémon won a Game Award in the "Best Fan Creation" category.
The experiment received attention from media and Twitch staff because of its interactivity, unpredictable nature, and the challenges players faced. Twitch used the experiment to learn how to make streaming more interactive for viewers. After finishing Pokémon Red, the streamer continued with other Pokémon games and unofficial modified versions of the games. The streamer plans to keep playing more Pokémon games as long as people are interested. The success of TPP inspired similar streams for other games and encouraged Twitch to support more interactive streaming experiences.
Premise
Inspired by another interactive game called Salty Bet, where users bet pretend money on the results of random M.U.G.E.N. matches, the system used in the stream was created by an anonymous Australian programmer known as "the Streamer." The system includes an IRC bot written in Python and a Game Boy emulator called VisualBoyAdvance. The script captures specific messages, such as directional commands, "B," "A," "select," and "start," sent by users in the stream's chat room. These messages are sent to the emulator as button inputs, allowing users to control the game. A separate web application written in JavaScript displays a live count of moves shown during the stream.
The Streamer chose Pokémon Red and Blue for the project because of nostalgia for the original games, the game's difficulty to progress even when played poorly, and its turn-based structure, which works well with the system's control method. The Streamer used an edited version of the game that allows access to all 151 original Pokémon, aiming to make completing the Pokédex possible. However, the edited version was unfinished and had no differences in gameplay compared to the original.
The control system's unpredictability has made the game longer and harder to play than usual. An Ars Technica writer noted that the player often gets stuck in corners, walks in circles, and repeatedly checks the Pokédex and saves. Commands from chat arrive too quickly for the game to process, making progress difficult. Challenges have included navigating maze-like areas and ledges, accidentally releasing Pokémon (including an event called "Bloody Sunday," where twelve Pokémon were lost while trying to obtain Zapdos), and users repeatedly pressing the "start" button to open the pause menu and inventory. A system was added to limit how often the "start" button could be pressed.
Despite the challenges, players have tried to work together using tools like infographics and scripts that hide chat messages to allow communication. This was needed because some game areas require teamwork to gain Pokémon with specific skills. Without coordination, players missed opportunities early in the game. Many players focused on stopping trolls who tried to slow progress. A program was created to automatically detect these trolls.
The Streamer later worked with others to prepare tools for the Twitch channel. The group added live commentary during gameplay. Due to conflicts within the group, the Streamer stepped down as lead on 22 November 2017 and handed control to another collaborator.
Progression and further games
On February 18, 2014, after players faced challenges with a puzzle in the Team Rocket hideout, a new feature called Democracy mode was added to make the game easier to play. When Democracy mode was first introduced, all player actions were decided by a vote. Inputs from players over a set time (usually 30 seconds) were counted, and the most common action was carried out after the time ended. Players could also add numbers to their commands, like "right3," to repeat an action three times. Many viewers were upset with this change, and protests happened in the Twitch chat. Some players used the command "start9" to slow down progress by repeatedly opening and closing the pause menu. This event became known as "The start9 protests." Later, the game was changed so players could vote to switch between two modes: "Anarchy," the original default, and "Democracy." To switch to Democracy mode, a supermajority vote was needed, while switching back to Anarchy mode only required a majority vote. This change caused disagreement among players, who felt Democracy mode changed the original idea of the stream and reduced the randomness that helped create the game's story and myths.
After finishing Pokémon Red, a new game began on March 2, 2014, with Pokémon Crystal. The developer planned to start Pokémon Emerald on a specific date, but players completed Crystal earlier than expected. When Crystal was introduced, the voting system changed: Democracy mode was automatically activated every hour. By March 14, 2014, players reached a major battle on Mt. Silver against Red, a trainer representing the original player from Pokémon Red and Blue. The game was modified so Red's team would include the same Pokémon used to defeat the Elite Four in the earlier Pokémon Red playthrough. The developer explained that this change matched Game Freak's original plan for the game. Pokémon Crystal was completed on March 15, taking over 13 days of playtime. The developer noted that fewer viewers watched Crystal compared to Pokémon Red but planned to continue the stream with other Pokémon games as long as interest remained.
Pokémon Emerald started on March 21, 2014. Initially, Democracy mode was disabled entirely. Emerald was often restarted due to its soft reset feature, but the broadcaster later fixed this issue.
When the stream shifted to Pokémon X, the first game in the franchise for the Nintendo 3DS, the setup changed. At the time, no PC-based emulator for the 3DS existed, so the stream used real 3DS hardware with a modified device called the 3xtDS, created by a Reddit user named dekuNukem. This device allowed direct control of the 3DS through a USB interface and captured video for the stream. Using native hardware also enabled the stream to use the 3DS's Wi-Fi features, allowing other players of Pokémon X and Y to interact with the stream's player through online battles, trades, and O-Powers. After its release, Pokémon Omega Ruby was also played in the stream.
To mark the one-year anniversary of the original run, a new playthrough of Pokémon Red began in February 2015. The goal was to complete the game's main story and catch all 151 Pokémon, which was achieved in about 39 days.
To celebrate the project's fourth anniversary, the channel started a simultaneous playthrough of both Pokémon Red and Pokémon Blue. Viewers could specify which game their commands applied to, but otherwise, commands were alternated between the two games. When Democracy mode was active, the same command was used in both games.
As the experiment entered its fifth year, after all official Pokémon games were completed, the channel began using fan-created game modifications.
To honor six years of continuous streaming, the channel played a series of six games in a row.
Viewership
The stream began on February 12, 2014, as a test. It was not very active at first, but it quickly became popular online. By February 14, the stream had about 175,000 viewers, after players defeated the first of eight Gym leaders. By February 17, the channel had over 6.5 million total views. By February 20, the channel had more than 17 million total views. At that time, the stream had between 60,000 and 70,000 viewers watching at the same time, with at least 10% of them participating. By then, the players had caught 12 different Pokémon and passed the fourth Gym. When the game "Red" was completed, the channel had 36 million total views. At its peak, 120,000 people were watching at the same time, and about 658,000 people had participated. The "Red" stream was recognized by Guinness World Records for having the most users who entered a command to play a live-streamed video game, with 1,165,140 participants. The high activity caused very high stress on Twitch's chat system. Engineers had to move the chat to a stronger server used during major e-sports events while working to improve the system's ability to handle more users. The developer said, "I didn't expect it to be this popular. I thought it would have only a few dedicated viewers and others would watch briefly before moving on. It's surprising how many people have joined."
Community
A group of players formed a community on websites like Reddit, where they shared updates in real time and created funny images and other content based on events in the game. One item in the player's inventory at the start of the game was the Helix Fossil, which was later used to revive a character named Omanyte but had no other purpose. The Helix Fossil was chosen so often by players that it became a joke among them. At times, players humorously called it a god that the character constantly asked for advice, and it quickly became a shared belief among players. Some players even treated the fossil as a symbol for a group that supported a game mode called Anarchy, while its matching item, the Dome Fossil (used to revive Kabuto), was seen as a god by those who supported the Democracy mode. Fans created "bibles" for the belief system centered around the Helix Fossil.
Several Pokémon captured by the player during the game also became popular among fans. Two Pokémon caught early in the game but later accidentally released were Charmeleon and Rattata, nicknamed "Abby" and "Jay Leno." The team's Pidgeot, one of the strongest Pokémon in the group and often successful in battles, was nicknamed "Bird Jesus" by the community. The team's Zapdos was nicknamed "AA-j" but was also called "Archangel of Justice" or "Anarchy Bird." Their Flareon was nicknamed "False Prophet" because players accidentally obtained it instead of Vaporeon, which was needed to learn the "Surf" move for traveling on water. This mistake later led to the accidental release of Charmeleon and Rattata. On the eleventh day of the event (February 23), which was a Sunday, players accidentally released a dozen captured Pokémon, removing them from the game. This event later became known as "Bloody Sunday." The tradition of giving nicknames continued in a later version of the game called Crystal, which included a new Pidgeot nicknamed "Brian" and a Feraligatr nicknamed "Lazorgator."
Reception
Media outlets have used words like "mesmerizing," "amazing," and "beautiful chaos" to describe the game's events. One viewer said it felt like "watching a car crash in slow motion." Ars Technica noted that the event showed both the positive and negative sides of an era where users enjoy new and unusual things. The stream was compared to the infinite monkey theorem, which suggests that even random actions in a game can lead to progress. Matthew DiPietro, Twitch's vice president of marketing, praised the stream, saying it proves how video games can be a place for creativity and entertainment beyond what the game's creators originally planned. By combining video games, live streaming, and audience interaction, the broadcaster created a unique form of entertainment that fits well with the Twitch community. This example shows how such hybrid experiences could work in the future.
Legacy
Twitch Plays Pokémon has inspired similar projects using other video games, such as Pokémon Blue, QWOP, Tetris (one version used commands from the original Twitch Plays Pokémon stream), Street Fighter II, Halo: Combat Evolved (a first-person shooter game that made the challenge harder), Metal Gear: Ghost Babel, Dark Souls, Fallout 3, PlayerUnknown's Battlegrounds, Teamfight Tactics, The Legend of Zelda: Breath of the Wild, Pokémon Go (which used location tricking to mimic real movement based on viewer commands), and Microsoft Flight Simulator. Similar Twitch Plays experiments have also been used to care for a virtual pet Tamagotchi and to install Arch Linux on a virtual machine by typing one letter at a time. Inspired by this, a "Stock Stream" began in May 2017, allowing Twitch viewers to vote every five minutes on trading stocks from a $50,000 fund, with rules to follow financial laws. A similar project using Twitter started in January 2021, where tweets controlled a game of Pokémon Red, with the Twitter icon showing the game's progress.
The term "crowdplay" describes games where a group's actions directly affect gameplay. tinyBuild used the Twitch Plays model to release Punch Club, delaying its launch until a set date or until the game was completed through a public Twitch stream. Later, Punch Club added a feature for viewers to bet on in-game fights using virtual currency, similar to a system used by Oxeye Game Systems for Cobalt. Telltale Games introduced a "crowd play" feature in its 2016 Batman game, letting viewers vote on in-game choices. In January 2016, Twitch created a special section for "Twitch Plays" streams, with Kathy Astromoff, Twitch's VP of Developer Success, noting the growing interest in such experiments. In March 2016, Twitch launched a "stream first" initiative to help developers create games that integrate streaming and chat with traditional gameplay, inspired by the success of Twitch Plays Pokémon. Amazon.com, which bought Twitch in 2014, developed the Amazon Lumberyard game engine, which includes built-in support for Twitch streaming, allowing viewers to influence games through chat, based on the popularity of "Twitch Plays."
Another tribute, Fish Plays Pokémon, began in August 2014 during a hackathon. The stream used a fishcam to track a betta fish's movements in a bowl to control Pokémon Red, reaching up to 20,000 viewers at once. Another tribute, π Plays Pokémon, maps each digit from 0 to 9 to a Game Boy Advance button, sending one input per second to Pokémon Sapphire, reflecting the idea that pi might contain all possible number combinations. On February 25, 2025, Anthropic started streaming Claude Plays Pokémon, a tribute where Claude plays Pokémon Red.
A Helix Fossil emote with the shortcut "PraiseIt" was later added to Twitch as a celebration of the original Pokémon Red run. On March 1, 2024, the official Pokémon Instagram account posted a video of Omastar and Omanyte to mark the 10th anniversary of the original run's completion.
Game completion
TwitchPlaysPokémon played Pokémon Green and finished first. TwitchPlaysPaperMario played Pokémon Blue and finished second. TwitchPlaysSpeedruns played Pokémon Red and finished last.
From Platinum to Black 2, the stream showed a second game, Pokémon Stadium 2, at the same time as the main game. Unlike other games, the inputs for Stadium 2 were not controlled by the chat. Instead, players on the chat received virtual currency to bet on the results of Stadium 2 matches. After Pokémon X ended on August 1, 2014, a similar system was used, with Pokémon Battle Revolution replacing Stadium 2. This game had better graphics and more features. This time, players who placed bets could vote on which move their team would use each turn. The system would randomly choose one of the voted moves, but players who bet more had a better chance of their move being selected. The developer created a modified version of Pokémon Battle Revolution called Pokémon Battle Revolution 2.0. This version fixes glitches and adds improvements, such as new battle arenas. During this time, the stream also showed Harvest Moon GB, Pokkén Tournament, EarthBound, Robopon Sun, and reversed versions of the first four game runs.
Additionally, an extra game was shown alongside any main game being played. This game is a modified version of Pokémon Pinball called Pokémon Pinball Generations. It adds two new boards based on Generation II Pokémon. As a result, all Pokémon from Generation II can now be caught in the game, and badges are given randomly when a Pokémon is caught during a Pinball playthrough.