The University of Massachusetts Amherst
Categories
Software Web

TwitchPlay[Games]! Social Experiment With a Large Following — The Creation

TwitchTV

Games have been a way to bring people together all across the world from those in nearby countries or across the globe. It is an undeniable fact that games are popular world-wide, but one game that was released about 20 years ago can still be mentioned today and many still remember it clearly – and that game is Pokémon. The game was originally single player, so only one person could play it at a time on one device and there was very limited play-ability in multiplayer without being physically next to someone with a cord connecting the two devices. Recently, this changed through the medium Twitch TV (http://twitch.tv).

Four top games on Twitch at a low traffic time
Four top games on Twitch at a low traffic time

Twitch TV is a website made for streaming for a large audience and for a large variety of  games, similar to YouTube, except the action is (almost) always live. Twitch has grown in popularity over the years, with hundreds of thousands of people watching at any moment. The viewers are always chatting about what is happening and giving commentary to what thousands of people in the world are also seeing. Twitch had a run down of it’s 2013 year in a retrospective online info-graphic which is available at http://www.twitch.tv/year/2013. As time went by, someone had an innovating idea; what if someone were to have a stream where people could actually play the game?

This idea became very possible, very quickly. Twitch opened up their own site dedicated to development of their existing software by the community (which can be found at http://dev.twitch.tv/). The goal of the project was simple: to make a chat bot to read what was said in the chat and to change what was said to input for the game. In reference to Pokémon, if someone were to say “UP” in the chat, the game would read the input as pressing up on the directional pad and the game would reflect this. This would work for every button: A, B, Start, Up, Down, Left, Right and Select could be said at any moment for their usage.

twitchdev

The project began by working with the available resources and the hopes of making this new concept. The tools they were given were Twitch SDK (Source Development Kit) and the Twich API (Application Programming Interface). The SDK gave the programmers libraries of code that they could manipulate to give them to product they needed, and the API would be used to create the chat bot. The chat bot, silently reading each persons actions, would take each action as input, and feed it to the SDK. The chat is written into an IRC (Internet Relay Chat) by the server irc.twitch.tv from which the inputs are taken. The SDK from there would convert the input into a readable format for the game to register the movement or action properly. Thus, the games began, all under the channel name TwitchPlaysPokemon.

At the beginning - Layout of the stream
Layout of the stream: Game on the left, chat input on the right, time played at the top. IRONY: This is the only multiplayer location in the game yet at this point thousands were playing together.

In the end, TwitchPlaysPokemon never went open source, at least not yet, but many have tried to recreate the software themselves. A few examples are on GitHub – one by the user Francesco149: https://github.com/Francesco149/OpenTwitchPlays and another one made in Java by a user SideSplitter: https://github.com/Sidesplitter/TwitchPlays

 

The community itself and it’s rise of popularity is a whole different subject which I cover in this post if you’d like to find out more: https://websites.umass.edu/Techbytes/?p=3818.