“Twitch Plays Pokémon” is so big, it’s overloading Twitch’s servers

Even a dedicated server wasn't enough to contain the madness.

We're a little over a week into the phenomenon that is Twitch Plays Pokémon (TPP), and the "social experiment" is still going strong—so strong, in fact, that it has overloaded Twitch's servers. A blog post by Twitch Customer Experience Director Jason Maestas noted that the game "has put enormous (and unforeseen) stress on our chat system." The game was moved to its own dedicated server on Sunday, something normally reserved for large Dota or League of Legends tournaments, but there were still "some fundamental issues with [Twitch's] chat infrastructure that required a review."

Further Reading

Twitch hands the controller to the Internet hivemind, and I can't stop watching.

Twitch engineer Michael Ossareh has also written a pair of blog posts in response to TPP, one of which is about improving scalability for events as large and fast-growing as the game. On the technical side of things, Twitch has added more redis servers to handle the load, since the number of join requests and messages had pegged its servers at 100 percent CPU usage. It has also added more alerts to notify Twitch when this sort of thing happens. Fixing "some configurations that were not optimal in [the] chat stack itself" has helped to lighten the load as well, though Ossareh couldn't be more specific when we contacted him for comment.

More interesting is his first post about the philosophy behind Twitch's IRC-based chat system. Though other chat systems are newer and more feature-rich, Twitch sticks to IRC because it's "a lowest common denominator technology" that's easy to build custom things on top of.

"Similar to how Twitter succeeded due to its API and the clients that third parties developed for it, our chat succeeds because IRC is incredibly easy to integrate with and our custom bindings are few and far between," Ossareh wrote. "Thus you get the same experience on our client as you do in your IRC client. We've had people build auto moderation tools, poll tools, random chatter selection tools... and now massively multiplayer Pokémon! Who'd have thunk it, eh?"

As for the game itself, Twitch's progress has been slow, but the Internet hivemind is further along than it was the last time we checked in. Players have moved past the Team Rocket maze they were stuck in to Lavender Town, where they're currently trying to scale the Pokémon Tower. They've also caught (and released) several more Pokémon, including a Gastly lovingly referred to as "Rick Gastly."

While we worried a bit that the then-new Democracy mode would distract from the game's schizophrenic charm, Twitch still seems to be playing the majority of the game in the old-style "anarchy" mode. As a perhaps-unintended side effect, the number of participants spamming the "democracy" and "anarchy" commands has cut down on the number of players spamming random button presses, making the game a little less chaotic. While the democracy mode and a throttle on the Start button have both been added to alleviate spamming, the creator of TPP told Polygon earlier today that there are no current plans to add more features to make the game more beatable.

"I didn't want to babysit the stream and nerf the game," the as-yet-anonymous creator said. "I'd rather the game be beaten on its own terms (even if it is a romhack)."

It wasn't already overloaded? Even before this, 8 out of ten times I had to refresh the stream in order to get chat working. Then, I can never ever watch streams on source or high quality without it lagging.

The funny part is, Blizzard is perfectly aware of this, and have added "Pokemon" in all but name TO World of Warcraft.

And it's pretty damn addictive there, even without Team Rocket. Having just gotten a rare Mechanical Pandaren Dragonling and a rarer Skunky Ale-emental (beer spirit), I have already dispatched one of my noobie brigade to level them up. Gotta catch em all!

I have absolutely no idea what this is all about, how it works, where it is, or anything even close to a clue as to what is going on here.

Can anyone explain this to me? (I am usually pretty technically proficient /able to grasp most article subjects, but this... just befuddles the shmutz out of me)

I don't understand what is hard to understand....

A bunch of people are in chat issuing commands to the chat room. Those commands get interpreted and activate a button press on a pokemon game. There is only one pokemon instance and every single person is effecting that instance. It's chaotic.

If you went on to the twitch stream for literally only 30 seconds (this is a generous amount of time), you'd know exactly what is happening.

You cannot catch all the pokemon in the game. In-fact, some can only be had through trading, or are color specific.

I have absolutely no idea what this is all about, how it works, where it is, or anything even close to a clue as to what is going on here.

Can anyone explain this to me? (I am usually pretty technically proficient /able to grasp most article subjects, but this... just befuddles the shmutz out of me)

I don't understand what is hard to understand....

A bunch of people are in chat issuing commands to the chat room. Those commands get interpreted and activate a button press on a pokemon game. There is only one pokemon instance and every single person is effecting that instance. It's chaotic.

If you went on to the twitch stream for literally only 30 seconds (this is a generous amount of time), you'd know exactly what is happening.

You cannot catch all the pokemon in the game. In-fact, some can only be had through trading, or are color specific.

I believe in this instance it's a custom ROM of Red being run on an emulator which does actually have all 151 original Pokemon available.

They'll never do it. 20 minutes after such a game went live a parent would call the news claiming their precious snowflakes heard/read a dirty word thanks to the game and Nintendo would take it down immediately. Nintendo is ardently opposed to ever letting people communicate, because sometimes people say bad words. Although, maybe they actually avoid it because they know that any kind of communication system like that would make them a target of the sadistic psychotics at the NSA.

They'll never do it. 20 minutes after such a game went live a parent would call the news claiming their precious snowflakes heard/read a dirty word thanks to the game and Nintendo would take it down immediately. Nintendo is ardently opposed to ever letting people communicate, because sometimes people say bad words. Although, maybe they actually avoid it because they know that any kind of communication system like that would make them a target of the sadistic psychotics at the NSA.

Ever play ToonTown when it was alive? Strangers could only say pre-written messages to communicate, people who knew each other outside the game and had traded codes could use regular chat. Still stuck at the DSi and Wii level of Nintendo tech, but sounds like they've already got that issue in check.

Andrew Cunningham / Andrew has a B.A. in Classics from Kenyon College and has over five years of experience in IT. His work has appeared on Charge Shot!!! and AnandTech, and he records a weekly book podcast called Overdue.