So a thing appeared on the internet recently, and on paper it’s quite basic – An IRC bot that reads commands from a text chat and inputs them into a Pokemon Red ROM that is being streamed. Simple in theory, but in execution – When thousands upon thousands of people start to use it – something extraordinary occurs – You get progress. Roughly 6,000 people managed to defeat the first gym leader, Brock. 12,000 people managed to defeat Misty. And here we are, 3 days later, and over 20,000 people have manage to board the SS Anne, Defeat Lieutenant Surge and then overcome the greatest of obstacles – Teaching a Pokemon cut, and then ACTUALLY CUTTING A BUSH.
TwitchPlaysPokemon is a phenomenon, it is an amazing practice of a game being ‘Crowd Played’ – Or, alternatively – a room full of monkeys eventually writing Shakespeare. I was lucky enough to exchange words with the brains behind this social experiment, as follows.
So, who are you?
I want to keep my identity private, I’m not the kind of person who enjoys a lot of attention. Although I will say I live in Australia.
What’s your background (programming wise)?
I’m a self-taught professional computer programmer. I like working at my own pace and working on things that interest me personally.
So, How does the stream work?
It’s essentially an IRC bot that connects to the stream’s chat and listens for buttons to be said, when it finds a match it simulates the press of a key that corresponds to the same button in the emulator.
The inputs are also shown on the stream’s overlay so viewers can see everyone’s contribution.
What possessed you to think 16,000+ strangers playing a pokemon rom was a good/GREAT idea?
Although I claim it is a social experiment I think that gives the false impression that it was planned or for a particular purpose, it’s just a fancy way of saying “I want to see what happens”.
Why Pokemon Red?
It’s actually a romhack of Pokemon Red that allows all original 151 Pokemon to be caught legitimately (or at least as legit as a romhack can be). I wanted completing the Pokedex to be a possible goal but with so many people I doubt this will be possible. Still, it results in more varied random encounters so it at least improves the entertainment value a little.
I chose the first generation of Pokemon because I thought it would be more appealing since it isn’t played as often, it also has a lot of nostalgia associated with it for a lot of people seeing as it was the most popular Pokemon generation and even had an anime based on it, I also have a fondness for the grayscale visuals of the original Game Boy. It’s interesting to see how the designs of Pokemon have changed over the years, some of these early designs look surprisingly different.
As for why it is Pokemon as opposed to any other game I thought Pokemon was the best choice because the game is highly turn-based and very forgiving. For many other games a more sophisticated method of determining input would be needed.
Favourite moment from the stream so far?
Probably the capture and naming of JLVWNNOOOO the Rattata, the trainer somehow managed to buy two Pokeballs and captured a Rattata without weakening it by throwing both Pokeballs at it, the second one somehow managed to capture it. Watching nicknames being assigned is entertaining too, especially knowing that it will likely remain with the rest of the playthrough.
Did you think it would be THIS popular? It’s only been two days, and so far you are approaching 18k people!
I didn’t think it would be this popular, I thought it would get a small but dedicated following with many other people showing a short passing interest.
I’m expecting the number of viewers to drop down after the novelty wears off.
I’m glad I’ve inspired other people to think about automated Twitch streams with a heavy focus on viewer interaction, this is something that interests me a lot and I’m excited to see others coming up with their own streams.
Learned anything interesting from the last couple days the stream has been running?
When being talked at by so many people it is difficult to perceive what the prevailing sentiment is.
Any disasters you had to address and fix?
Earlier on the IRC bot died while I was sleeping, so the game wasn’t accepting input for a number of hours, the stream wasn’t very popular at this point, I made changes so that it wouldn’t happen again and that seems to have worked.
Other than that the only thing I would consider a disaster was when the soft reset button combination was entered and a new game was started, I considered letting it continue but since I knew I had to disable soft reset (I assumed I had already done so) to prevent it from happening again I concluded that it would be better to apply that change retroactively by reloading an earlier game state.
I suppose the lack of archive footage for early in the playthrough can be considered a disaster, too.
Got any ideas for what you might do next, if anything?
I’m thinking of doing something similar with other games but I don’t want to spin up a new server with the same code but a different game, it seems other streamers are willing to do that themselves anyway.
I would like to make something with much less random and chaotic inputs, while that sort of thing is very entertaining I’m concerned about it becoming stale over time. I’m considering different ways of determining group consensus and how well that would work with various types of games.
Did you ever hear about the Loren Carpenter experiment? He got an auditorium full of people to play Pong without explaining it to them - they figured it out together. Reasonably similar to what we are seeing on your twitch stream!
I’ve never heard of the Loren Carpenter experiment but it seems remarkably similar to my stream.
I was primarily inspired by SaltyBet and a gamejam game that I can’t remember the name of where random people in the audience controlled individual tentacles of a squid/octopus-like creature.
Most frustrating moment working on the stream?
I haven’t been frustrated but the frustrations of others have stressed me out seeing as it would be easy for me to interfere to overcome potentially impossible obstacles but I think most viewers appreciate the grueling difficulty.
I haven’t interfered yet (with the possible exception of loading a save state in response to the soft reset) and I’d prefer to keep it that way as much as possible.
Are you worried about Safari Zone?
I’m concerned about the Safari Zone, if it does prove impossible I will consider modifying the game to make it easier but I still want to see the stream give it their best try without any compromises.
As you can see, the twitch chat is frenetic. In fact, as of right this minute, the current live viewer count of TwitchPlaysPokemon is 26,271. That is twenty six thousand, two hundred and seventy one people. All attempting to progress the game.
And they have spent the last 4 hours. Stuck in the same place. It’s beautiful.