Archive for the ‘Media Design’ Category

I will be presenting Data Cracker at GDC 2011.

Over the summer I had the pleasure to work at EA Redwood Shores as an intern. Usually being an EA intern means joining a development team for a few months, working on one of EA’s games. However, for my internship I was placed in the CCO, the Chief Creative Office, a research oriented group at EA. The CCO basically houses some of the heavy hitters at EA, like Rich Hilleman (EA’s CCO) and Scott Cronce (EA’s CTO), along with a number of team members working on various projects. A much smaller operation compared to the size of a typical EA development team but none the less a very powerful one.

datacracker590

During the summer my fellow intern, Jeff, and I were charged with the task to research, design and build a game analytic system for an EA team. Game analytics basically refers to the practice of capturing data related to gameplay, for example recording a player’s behavior while they play, and analyzing the data for insightful information that can help improve the game’s design. Seeing as my dissertation work surrounds the topic of game analytics I could not have pitched a better project to EA than the one we were given. Plus, since we worked at the CCO, we had a lot of freedom to meet with many development teams and discuss their game analytic needs.

The team we ended up working with was the Dead Space 2 Multiplayer team. As of this writing, and throughout the entire summer, the Dead Space 2 multiplayer gameplay is still shrouded in mystery. This made the project even more relevant because (a) the multiplayer feature is new to the Dead Space 2 franchise and (b) it was early enough in the dev cycle that any game analytic tool that was built could have a huge impact on the design. The experience was flat out one of the best projects I have ever been a part of, to say the least.

The tool we ended up building is called Data Cracker, which is a play on the concept of ‘Planet Cracking’ that exists within the lore of Dead Space. Data Cracker taps into data depicting player events that occur multiplayer matches. Without giving anything away, an obvious example of a player event is which player(s) won the match. Those events are sent to EA’s servers and the tool grabs the data, aggregates it into different values for analysis and visualizes those values within a web interface.

My main task on the project was working on the visualizations. We ended up choosing Protovis for our visualization library (built in javascript), mostly due to the fact that the group wanted to focus on HTML5 (however I’m still a diehard Flash developer and think Flare is an awesome visualization package). It turned out to be a fairly good library to work with and my only complaint is that it is much harder to create complex interactions compared with Flash. I was able to combine Protovis with other javascript libraries like jQuery however, which fixed some of the interaction/animation limitations of Protovis.

I can’t say much more than that at this time but I am working on papers that dive into the design and development of the tool. Those will appear on my site soon as will a number of off-shoot game analytic projects that I am working on for the rest of the year.

A rare non-game post.

I have a problem. I was on vacation for two weeks and spent very little time catching up on blogs and my other news feeds. As you can imagine I have a lot of information to sift through.

Now the problem is not so much finding relevant information. I use Bloglines and I can search through my feeds for specific information. I also have personally made feeds that snag any story that has certain keywords.

My problem is that as I sift through each individual feed I reread the same information over and over. Yes I know Twitter was DoS attacked last week and thus do not need to read about it in every single tech blog feed.

Therefore, this problem is not one of searching for relevant content but one of automatically grouping similar content together; whether I find it relevant or not is … well … irrelevant. I want a RSS reader that will group similar stories together into one group automatically. If I find the group interesting then I can sift through the multiple copies of the story, if not then I can toss the entire group (delete them from their respective feeds) making my individual RSS feeds that much clearer to peruse.

rss_logo

I put out a tweet today trying to find a service or reader that has this feature but only received information on services that “sorta” have the feature (Like Fever or Google Reader). So, striking out on my own, I have been trying to find any RSS reader that comes close to the “grouping” feature I am looking for.

Here is what I came up with. (In short I didn’t find anything but learned a lot about the types of RSS readers)

Blending, Mixing, Combining, Mashup

Those words all mean the same thing apparently (they are just as bad as interactive or engagement). Take two RSS feeds, add a dash of a keyword or two, and you get a healthy snack of a single RSS feed which takes two feeds and turns them into one. The benefit to this style of blending is that you can manage, search, filter just one feed instead of tens or hundreds. This is fine but the only way to group the items in the feed is by a human going in and filtering the feed; either by searching for a keyword in real time or by setting keywords to search before hand.

Not what I was looking for but here are some posts about blending RSS feeds which talk about services like Blogsieve.

Yahoo Pipes

pipes

Yahoo Pipes is basically a do it yourself RSS feed creator. You blend feeds, filter them, run content analysis on them, all using Pipes’ wysiwyg graphical editor. At first glance Pipes seems like it could be the answer.

Unfortunately, it suffers from the same problem as the blending option, nothing is done automatically. Users must enter specifically which feeds they wish to group and have to modify the Pipe if they ever want to add more. Plus, Pipes’ “TermExtractor” module, the one used in the creation process to search for keywords, does not seem robust enough. The description says it finds the few important keywords in a feed item but what about URL links, pictures or embeded videos.

The other downfalls of Yahoo Pipes is that 1) it is not a reader itself and 2) in general, it is for the Techie crowd and is intimidating for someone to jump into and start creating feeds.

My search continues.

Digg-Style Readers

Next I found a couple of downloadable products that do not help with the sorting of feed items in general but instead sort items based on personal taste. Perseptio works similar to Digg, allowing users to state whether they like or dislike items they find in their feeds. Perseptio will then rate future stories based on that like/dislike information. It is a standalone desktop app and is free to download. I’ve installed it but I probably will not use it because I’m not really looking for stories I like, just a way to group similar stories I may like together.

Fever is another similar product but looks a hell of a lot nicer. It rates stories based on your personal rankings and by how popular a certain item is; so again, kinda like Digg. However, Fever costs $30 and must be installed on your own server space. It defiantly looks like a nice product and if you are in the market for what it is offering than I would defiantly check it out. Me, I’m still looking.

Fever

AIR Apps

Quickly, I next came across a recent post about RSS Feeders made with Adobe AIR. Scoop and Espressoreader looked interesting as they can sync with Google Reader but again didn’t seem to have what I was looking for.

Social Readers

Finally, I come to Social RSS readers. These are basically sites that link users together who each have a set of RSS feeds and allow users to share information from those feeds with each other. Technically, you could call Delicious, StumbleUpon and Digg Social Readers too. But I did find one site called Streamy that I signed up for (you can check out a short video demo here).

Streamy doesn’t seem to have the grouping feature that I am looking for but I think it is on the right track. For my phantom grouping feature to work it would have to rely both on algorithmic methods of combining RSS feed items together in addition to utilizing the knowledge of my social circle. Meaning a grouping reader would need both a way to analyze the content as well as analyze the collaborative information of my friends or other users. Streamy looks like it is combining these two avenues, though is a little heavy on the collaborative/sharing side. And do I really need another “social” website that I need to maintain? I’m still going to check it out though, maybe I will switch from Bloglines.

Streamy

So in the end, no I did not find a reader that grouped similar feed items together. I believe I know a thing or two about web parsing, the “semantic web” and recommendation systems but maybe it is a harder problem then it seems. I’m going to give Streamy a try but right now Bloglines is still working out for me.

Hopefully the grouping feature is just hidden somewhere out there and I have not found it. I just want that one feature but no one is giving it to me.

Looks like game companies are move closer and closer to complete game/web integration. All three major press conferences today (Microsoft, EA and Ubisoft) discussed and unveiled new services and products that bring their games and web services closer.

Microsoft is expanding their Xbox Live service with Twitter and Facebook integration, allowing users to use those sites and keep up with their gamer friends through their Xbox. They also introduced more streaming movie content and included a shared viewing feature that lets a group of friends watch a movie together with their Xbox avatars sitting in a theater style setting. (Which is unfortunate because a friend of mine at GT built a similar product for watching streaming TV with your friends online. Microsoft beat him to the punch.)

Microsoft’s shared viewing video service.

EA spent some time on their EA sports franchise which is shaping up to be one of the most integrated game/web experiences yet. EAsports.com will be launching new online features such as: custom team branding (including logos, fields, and other art assets), team stats adjustment (allow players to alter their teams abilities) and franchise managements (with real time drafts, team management and even an iPhone App). This means that anywhere you have an internet connection you can be connected to your EA sport games (though it looks like they are pushing Madden for now).

EA’s full press conference from E3 2009.

Finally, Ubisoft unveiled their Uplay online system. This will be another system similar to EA’s but work more like a game portal site like Steam. Players will create their own content, communicate with one another, download game information and content, and have methods for purchasing games. Not too much information was given but looks like everyone is trying to tie in web-based services now. (Ubisoft’s Petz game also looked like it was expanding its game/web services for their “tween” demographic.)

As a side point there was some talk about my favorite topic, metrics.

Project Natal, from Microsoft, has full-body recognition camera system, measuring your body/facial expressions and vocal commands. While the metrics of this system were not talked about directly, the system looks to be able to keep track of different users, play patterns and other physical variables about the player. I would love to see how many data variables you can gathered from that system.

During EA’s press conference the makers of Need for Speed: SHIFT talked about figuring out a player’s “driving style.” The game will determine the player’s driving style by monitoring their behavior in the game. This includes their personality, success in the game, profile points and badges earned. Rivalry’s were also mentioned, which will automatically be created between players who end up competing with each other often. (I believe this idea has already been used before but I can’t remember where. It’s still an excellent idea though.) Oh and EA already has their Dynamic DNA that they use in their NBA Live game (which gathers stats continuously about NBA players and adds those stats to the game), they will no doubt be expanding on that.

One last note, Ubisoft’s new Splinter Cell game had a small feature that I liked, Last Known Location (LKL). When the player leaves an enemy’s line of sight a white outline of the player’s LKL is shown in the game world. That location is where the enemy will check next so the player knows where the enemy is heading (allowing the player to flank the enemy). Just a small mechanic that makes use of recorded game history.

Between the game/web integration and the ways to monitor player metrics E3 day one had a ton of new services to talk about.

OnLive is a new service that offers on-demand games (some news articles here, here, and here). Except instead of being online in the browser (like gog.com or gametap.com) or on a console (like downloadable content), OnLive is everywhere. They achieve this by running games on their own servers instead of having the player’s machine install and process games.

onlive1

The OnLive service.

Each OnLive customer gets an OnLive “micro-console” which is basically a small box that takes in input/output devices (controllers and keyboard/mouse, video, and audio) and plugs into your ethernet port to connect to the internet. This micro-console can connect to any TV or a program can be installed on a computer to simulate the micro-console. Since the games are all processed on OnLive’s servers the only thing that is sent to the customer is video, so no major machine is needed.

onlive2

OnLive’s Micro-console and Wireless Controller.

Obviously OnLive has massive implications for gaming in general. It may get rid of the need to have consoles or the need to find demos when deciding whether to buy a game (since the newest games will be immediately available). On the negative side it gets rid of modding and other forms of customization that people enjoy when they buy a full fledge game, having access to the software.

What I actually found the most interesting however is the tangential features that OnLive brings to the world of gaming. These include the community features that OnLive is offering. Features like: live streams of gameplaying, recorded gameplay footage and tagging/rating/commenting on footage.

A few weeks ago I talked about the concept of ludovestigums or recorded player experiences. OnLive is a new platform for players to share their ludovestigums in extremely easy ways. These recorded experiences are not the same as game ghosts, or ludophasmas, which allow players to play with the experiences but they are still experiences that can be shared with other players by sharing gameplay footage. Yet, OnLive allows for players to not just view recorded experiences but interact with current game experiences, or ludoexhibeos.

onlive3

Screenshot from OnLive, each game has a Details menu interface where players can purchase the game or view other related content.

Spectating in games is nothing new, professional game tournaments have made use of spectating through video (online stream, TV) or in game engines (spectating Counter Strike games while running the engine). In OnLive, players can spectate other player’s gameplay in real-time and then some. What OnLive is doing is adding the concept of actively participating while spectating another player’s game. For instance while a player is watching another player’s gameplay they can rate their performance. This ludoexhibeo, real-time game experience, thus takes on the same type of feel as a ludophasma, allowing the spectator to interact with the real time experience that another player is having, even having the ability to affect the experience as well.

Privacy issues come up when discussing these features but so long as players do not care their gameplay footage is being released I only see great things coming out of OnLive. Not to mention that once game experiences are recorded players can use them in different ways. For instance, just today I wanted to find a specific game event that occurred in Fallout 3. If OnLive offers records of gameplay footage, and saved games, players can tag and catalog game instances that will make finding content inside of games much easier. It will really help out us game scholars that like to find specific instances in games that show our theories and findings.

OnLive is offering ludovestigums in an immediate sense with ludoexhibeos. While it may not be sentient ludophasmas that embody the spirit of a past player, making it easier to interact with real-time game experiences is a good start.

Maxis dropped their new Spore API this week making my research brighter. Developers get unrestricted access to all of the information on player user generated content (assets). This includes pictures of their creations (creaters, spaceships, buildings) and all of the meta-data that goes with them. Maxis is also sponsoring an API contest that is looking for innovated uses of their API. I’m interested in working on something so if anyone out there would like to team up send me a line.

sporeapi

Since data collection and analysis is part of my thesis I’m very interested in what Maxis is doing. I wanted to talk about the useful ways that this data can be used by developers. I break these up into three sections related to data: data visualization, data mining, and data mutation.

Data Visualization

Maxis already has examples of how to use their API online. Actually it’s one of the most clearest presentation of how to use an API that I have seen. Some data visualization examples exist on the Flash and Python pages. Considering you can grab user and asset information I can defiantly see data viz applications that show the entire user connection graph, complete with each user’s assets. Also a ‘date of creation’ variable comes with every asset so a visual timeline of creation would be another great visualization.

Data Mining

Having access to this much data can tell a lot about a user community. I would like to see mining approaches that look for trends between users and the assets they created. For instance Maxis put up one sample program that display all of the Mario Brothers themed assets. Figuring out which assets were created first and how they evolved can show how both the assets permeated into the community and how each iteration of the assets shifted from one user to the next. One could also begin to use this data to make assumptions about users. For instance, finding the differences between users that create a lot of assets, users that gather a lot of assets, and users that rarely interact with asset creation entirely, can be an interesting look into the types of players that exist in Spore.

Data Mutation

Data Mutation is my word that is the “the act of using unrelated data to alter an information system.” It’s a cross between ambient visualization and communication noise. Ambient visualization or displays often pull together a lot of information sources and displays them in such as way to make them more coherent to a user. This means they sometimes alter the information to make it more relevant, such as displaying the weather by showing a sunny landscape instead of a sun icon with a temperature. However, Data Mutation goes beyond just re-skinning data by actually using external data in unintended ways or as noise within another information system (or a game).

One example I give a lot is Trendio, which is a fake stock market game that tracks trends. Trendio collects news reports and blog posts, lumping the ones that talk about the same subjects into trends (like a celebrity or brand name). People then bet on how popular trends will be on a day to day basis. The actual content of the news reports and blog posts are abstracted out and repurposed by Trendio, thus the data is not being used as it was created to be used.

The Spore Creature Battle game is an example of a Data Mutation game. They take creature asset pictures from the Spore API and ask the player questions that relate to the creatures’ attributes. Each question shows two creatures, asks a question like “which creature is taller,” and then the player makes a choice between the two and gets points if they are correct. The battle game itself did not create those spore assets nor is it using them to inform the user about Spore itself. It’s just a guessing game. These asset pictures could be used as filler art in other games that have nothing to do with spore at all.

I’ve been exploring using API data to alter information in games. So for instance instead of using random variables or an algorithm to determine a start value in a game, just ping an API database for some information and use that to determine a variable’s value. Take NPC behavior in a game, why not link a NPC’s attitude to how many assets have been created in Spore this week. If the number is really high then the NPC is happy, if low then sad. This can be described as a round-about way of using collective intelligence but it may be interesting to have games that depend on sources of non-related information.