About this blog
Reports of events and sessions from the 2011 Game Developers Conference
Entries in this blog
The GDC 2011 AI Summit opened up with three heavy-hitters from the AI world (Brett Laming, Joel McGinnis, and Alex Champandard) discussing the merits and motivations behind component-based architectures.
Although the term has gained popularity in recent years, and most people in the room expressed at least some familiarity with the concepts, there remains a substantial amount of uncertainty as to what exactly a component architecture entails. To address this, the lecturers presented an outline of how and why component architecture gained the spotlight in modern games engineering, and provided some tips and important rules on how to approach component-based designs.
As object-oriented programming took hold and languages like C++ finally gained enough traction in the games industry to see widespread adoption, the typical design methodology involved creating rich, deep hierarchies of inter-derived classes. This quickly ran into issues such as multiple inheritance's "diamond problem," brittle structure, and questions of how to deal with "non-inheritance" situations (where some but not all functionality of a branch of the inheritance tree is desired in a particular leaf class).
One reaction to this was to push functionality towards the roots of the inheritance tree, essentially creating "fat base classes." This is even more problematic in a practical sense because bloat of code in the base classes decreases readability, clarity, and maintainability; simultaneously, bloat of data in the base classes led to immense memory wastage and overhead, which became thoroughly unacceptable as games grew in scale.
A more promising direction was to make the entire engine core highly light-weight and extremely data-driven, where virtually all of the behaviour and richness of the game simulation was accomplished in data rather than directly modeled in code. This approach still has its proponents, but suffers from a critical weakness: it lacks natural hooking points and specificity by which one can drill into the running simulation and inspect or modify its state. Put simply, offloading the complexity into data (away from code) deprives us of all the benefits of code-modeled introspection and manipulation.
Enter the Component Model
A central observation behind the introduction (and indeed the widespread adoption) of component-based architectures is that there are fundamentally four things in a simulation which need to be elegantly captured:
Classification of entities (Is this a weapon? An item? A door? A sharp weapon? etc.)
Key properties (How much damage does this weapon do? How much does it weigh? Which direction does the door open, and what key(s) does it require?)
Defined mappings of inputs to outputs (Weapon damage values modify health values; keys modify door lock states; etc.)
Interchangeability (Can I use this weapon in place of that one?)
Component architectures provide a modeling tool for all four areas; although other approaches can say the same, components provide a compact and highly elegant manner in which to reach these goals.
The main difference between the component mode of thought and older, less desirable approaches is the notion of systems. Indeed, it is worth noting that proper application of component architecture demands the use of systems richly; anything less will essentially collapse back into the same types of fat-architecture we were trying to escape in the first place. Moreover, in a systems-oriented model, granularity of functionality becomes desirable rather than problematic.
Systems are, fundamentally, the "glue" by which components are organized and compartmentalized. Moreover, systems formalize the interactions between components and other systems. This drives reusability in several key ways:
Inheritance can be used (sparingly!) to reuse logic and data relationships directly
The structure of interrelated components can be reused modularly
Data flow between components and systems can be interchanged as needed
Compartmentalization separates reusable elements into neat packages
As a bonus, parallelization can easily be accomplished between systems
Careful use of class inheritance, along with factory methods, serialization, and run-time type information (RTTI) frameworks, can provide a highly data-driven model without sacrificing the specificity and hooks of a richer code model. In addition, the deployment of systems can help identify dependencies and functional structure within the simulation itself, allowing for easier maintenance and iteration on existing code.
Another potential win of systems over gamegraphs and similar structures is the elimination of redundant searches. A system can keep track of all the components/entities which are relevant to that system directly, thereby avoiding the need to constantly traverse the game universe looking for those entities. This in turn provides a stark highlighting of the lifetime relationships between various entities, which can be a major advantage when it comes time to do dependency analysis on the simulation itself.
Last but not least, components allow for late binding and re-binding of type information. Have a set of logic that relies on park benches, which suddenly needs to be rewritten to use dumpsters instead? The code change amounts to tweaking a single "tag" within the appropriate system, rather than making large numbers of tedious and fragile changes to raw code dependent on the actual "park bench" or "dumpster" classes. The data-driven aspects of component architectures become a major advantage in this sort of scenario.
It is worth reinforcing the fact that component models are not "an architecture" but rather a paradigm in which architectures can be created. As with virtually everything in the engineering and architectural realms, the exact details will depend highly on the specific game or simulation we are setting out to make.
Component models can be a very powerful tool on modern platforms where concurrently-executing code is a central aspect of engine design. One important observation is that AI work (and indeed simulation work in general) essentially consists of reading and writing properties of entities in the simulation, and potentially rearranging the logical structure of those entities (moving objects, creating new NPCs, recycling old assets, etc.). Envisioning this as a sort of circuit diagram is a useful technique; data flows "down stream" between systems each frame. Any mutation of game state which can be passed down stream to later components can be accomplished using just the execution stack space, since later systems will always have access to that memory space safely. However, any "up stream" communication needs to be delayed by a frame by queuing a "message" which is read by the appropriate system in a subsequent tick. This decomposes nicely into a job/task system, which is a (deservedly) popular means of handling parallelism in modern engines.
As with any other parallelization tasks, a few fundamental rules apply:
Minimize the volume of data propagated throughout the system
Further, minimize the lifetime of any data that does need to be passed around
When possible, derive data rather than duplicating it; no need to store mass, volume, and pressure when any two will suffice
Locality of reference is key; custom allocation is, as always, a major win here
NULL checks can be eliminated by using dummy non-operative objects instead of empty pointers
Propagate RTTI information along with pointers in order to avoid duplicate virtual-table lookups
Vectorize component update operations via SIMD instruction sets
Perform jobs in batches across cores (helps with cache/false sharing issues)
Interleaved allocation is a powerful tool for leveraging SIMD and other parallelization techniques
The session was a great way to open up the AI summit, cramming in vast amounts of valuable advice and information in the one time-slot when everyone's mind was guaranteed to not already be turned into jelly. Although not necessarily new details to many of those experienced with component architectures, there were plenty of nuggets to guide the decision-making process of both novice and veteran architects alike. An informal poll of the audience suggested that a substantial portion of those in attendance learned at least something valuable to take back to their own individual design efforts - the hallmark of a truly successful session.
So another GDC has come and gone - my fourth, personally - and it seems that the same old patterns held true yet again this year that have dominated the GDC experience so many times before:
Count down the weeks, then days, then hours before GDC
I fail to sleep properly the night before flying out
Something goes wrong with the flight out (this time, one of my connections was cancelled; no big deal, thankfully)
Arrive in San Francisco a day or so early, relax, prepare for the chaos of the coming week
Kick off the partying right on Sunday night
Stay up way too late and feel terrible on Monday morning, but full of adrenaline anyways
Repeat this process 4-5 times until it is time to depart San Francisco
Something goes wrong with the flight home (this year, we tried to collide with another plane while landing in Houston)
Eventually get home at some unholy hour, drive the long trek back from the airport, proceed to become unconscious for several days
Wake up with some kind of hobovirus from the conference and feel like crap for the next week
Start counting down the weeks until we can do it all over again
As so many others have rightly pointed out, GDC isn't really about the conference itself all that much. Sure, the sessions can be educational, inspiring, and entertaining; the parties are unquestionably worth a week trip in and of themselves; and the swag (although it seems to get lighter every year) is always fun. But the real win of attending GDC is the other people.
In my personal situation, I contract for a German company while living in Atlanta, GA in the USA. I literally know no one else in the area in the games industry, partly because the industry barely exists around here in the first place. I get precisely one week a year to talk shop with fellow industry professionals, and that is at GDC. So to me, the conference is a tremendously exciting outlet for all the technological, motivational, and personal gibberish that clogs up my brain tubes from the preceding year.
It's also pretty much the only way to recharge my batteries for the following year.
GDC 2011 was no exception to this rule, just as it was no exception to the many other patterns that have always held true of GDC for me. And I've come away with not just the customary three-inch stack of business cards, but with some genuinely fascinating contacts and opportunities that will no doubt heavily shape the year to come.
I've talked to people about how to further my career; how to improve my working process within that career; how to do more interesting and entertaining things during the course of performing my job; how to further my own personal interests both in and outside of computing; and as always there were a handful of folks that are just great friends to have around.
GDC is like a massive family reunion, except with less drama about that One Really Weird Uncle and substantially less crappy picnic potato salad. The games industry is truly a microcosm of humanity as a whole; there are people from all aspects of life, perspectives, beliefs, opinions, and feelings represented. What makes that slice of the species so powerful to me is that we're all there under a common banner - to make and enjoy great games. Nowhere else in the world have I found such a diverse crowd of folks all willing to set aside differences for something singular and common; nowhere else have I found so many people all willing to learn from each other instead of simply disagreeing vehemently (or violently).
It may seem melodramatic - especially if you've never had the privilege of immersing yourself in that sea of nearly 20,000 souls - but GDC is magic.
As is customary I'll be providing some coverage of the whole shebang here on GameDev.Net over the next few days, primarily focusing on the AI summit. Stay tuned for more sentimentality and drivel about the Event You Shouldn't Have Missed.
A group of IGDA industry professionals and attorneys gathered yesterday at GDC to formalize the new Business and Legal SIG. The meeting was moderated by Dan Rosenthal; approximately 20-30 IGDA members and industry professionals were in attendance. Topics included goals for the new SIG, events and organizational structure. In addition to informational white papers related to business and legal issues in the games industry, the members proposed increased political involvement in addition to a greater focus on globalization/international issues for the SIG.
Members were particularly interested in seeing specific case studies for "freemium", free-to-play, and pay-to-play business models. Additional proposals included a one day business start-up summit and an entrepreneur track for future IGDA events to address the business and legal issues developers face when starting new projects and new studios. The Business and Legal SIG hopes to provide a wide variety of resources for industry professionals, including member-managed information compilation for regional and country tax credit incentives for studios and publishers.
Specifically, the new SIG discussed the possibility of creating a Business and Legal Wiki or other resource management tool that will tie into IGDA's Educational SIG. SIG members also proposed educational outreach in addition to resource compilation. Many members expressed the concern that valuable information doesn't reach academic programs related to game development.
Approximately six IGDA members volunteered to head the SIG's steering committee. If you would like to learn more about the new SIG, visit http://www.igda.org and sign up to join the mailing list.
[color=#000000][font=Arial][size=2]Patrick Redding, of Ubisoft Montreal, has formerly worked on Far Cry 2 (ie, best first-person game), previously directed the co-op component of Splinter Cell: Conviction. He is now the game director at the new Ubisoft Toronto studio. He started by making a distinction between player cooperation as opposed to systemic cooperation. He referenced a blog post entitled Tahrir: The Game, posing the hypothetical scenario about making a game dealing with non-violent revolutions. "There's a misunderstanding that [...] through the fabric of the twitterverse" that revolutions are somehow giving rise to these revolutions, but that's a fallacious thought. Revolutions start from within a country with people dealing in high-stakes, dangerous situations banding together and forming strong social bonds with one another.[/font][/color]
[color=#000000][font=Arial][size=2]"Players become invested in the success of a collaborative partners" because of that ongoing process of negotiation with other players. It converts selfish motives into those associated with the collective goal of the group.[/font][/color]
[color=#000000][font=Arial][size=2]Redding went on to talk about Minecraft and a server he played on with a bunch of friends -- but, on this server, he actually rarely sees any of his friends on this server. It's largely a server with people building things of their own will. A few weeks ago, he took a break from the game and "it wasn't really a hard break to take." He then signed on a few weeks later, though, and he opened the server and was greeted by these giant land masses and statues and in his absence his friends have created some amazing Inception-like cityscape. "Players respond very, very positively to this collective agency."[/font][/color]
[color=#000000][font=Arial][size=2]"Why do players cooperate?," Redding asked. "How do we achieve the conditions in which shared intentionality" arises in large, big-budget AAA games. Redding went on to discuss the lessons he learned in the co-op component of Splinter Cell: Conviction.[/font][/color]
[color=#000000][font=Arial][size=2]The first big lesson is that "players will work together to optimize system input." In the detection model for Splinter Cell: Conviction, "2x the players [does not equal] 2x the detections" since the players end up working together for their common cause, despite that this is theoretically very possible. The next lesson Redding and his team learned is that "Shared intentionality promotes individual self-expression." At the high-level, players developer strategies. At the mid-level, they create individual, lower scope plans. At the low-level, players make riskier choices in co-op than they do in single-player. And, in mastery, players in co-op are more willing to explore optional paths because they "know that they have a more reasonable chance of regrouping with their team and trying another approach if it doesn't work out."[/font][/color]
[color=#000000][font=Arial][size=2]"Players derive satisfaction from meaningful cooperation" and this meaningful cooperation results in players enjoying the game more. So much so, that players are much more willing to forgive flaws of the game than they are in single-player.[/font][/color]
[color=#000000][font=Arial][size=2]Redding then goes into formal design tools and starts looking for genre-agnostic design tools and tools that are systemic. He starts this discussion with "cooperative dynamics," using the same notion of dynamics as Clint Hocking talking about on Wednesday. "Dynamics are what deliver the final game experience." Redding lists some of the dynamics that they used in Splinter Cell: Conviction, such as "gating/tethering" (a very prescriptive dynamic), "'exotic challenges" ("altered camera/controls for some players"), "punitive systems" and "buffing systems," "assymetric abilities," "survival/attrition," and "combined actions." In explicating the "combined action" dynamic, Redding elaborated with a definition I really liked: "Any game challenge attacks a discrete set of player skills: precision, timing, measurement, management, tactical choice, strategy, puzzle-solving." Beyond this, the solution to the challenge is largely left to player choice.[/font][/color]
[color=#000000][font=Arial][size=2]Redding closed with some of the lessons that he and his team learned from their experience on Splinter Cell: Conviction. [/font][/color]
[font=Times][size=2][color=#000000][font=Arial][size=2]Day 3 started, much like Day 2, at 5:00am, because for some reason I'm under the false assumption that I should continue waking up at my normal time all week.[/font][/color]
[color=#000000][font=Arial][size=2]That is a poor assumption.[/font][/color]
[color=#000000][font=Arial][size=2]Day 3's sessions started with the keynote from Nintendo president Satoru Iwata, and was entitled "Video Games Turn 25." Largely, the session was about Iwata recounting the early days of Nintendo and attempting to promote feelings of pride and ambition in the development community through a variety of anecdotes. This part of the session was actually great to listen to, but it's when Iwata began talking about the features and promise of the Nintendo 3DS specifically that the keynote became more of a light version of Nintendo's E3 press conference (Nintendo of America president Reggie Fils-Aimes even came out at one point to talk at length about it).[/font][/color]
[color=#000000][font=Arial][size=2]What should have been the keynote was the next session, given by former Ubisoft Montreal Creative Director and now LucasArts creative Director Clint Hocking (about whose site/twitter name I had a remarkable discovery). The session, entitled "Dynamics: The State of the Art," was general enough and entertaining enough to appeal to just about anyone at GDC -- not just the game design track it was on -- and contained an abundance of useful and insightful information. Hocking, whose GDC lectures are consistently amongst the best sessions that GDC has to offer, posited that before we bother talking about what specific video games mean, we need to understand "how they mean." Hocking's point being that we need to be able to understand the most basic aspects and at the highest levels of how an interactive medium conveys meaning through play. No single part of this session was mind-blowing, but its tremendous holistic value cannot be understated.[/font][/color]
[color=#000000][font=Arial][size=2]Next up was the GDC Microtalks, with Naughty Dog lead designer Richard LeMarchand presenting all of the individual speakers (ranging from David Jaffe to Colleen Macklin to Brenda Brathwaite) in his opening microtalk. It was in this opening microtalk that LeMarchand gave the theme for the session: "How you play." Nothing in these sessions provides new information, but each lecture had a very sentimental core (except Jaffe's, which had a largely practical tone about the amount of time it takes to get into console games) with the takeaway being largely inspirational in nature.[/font][/color]
[color=#000000][font=Arial][size=2]It was around this point that I disliked that the main conference didn't have the same lunch break time instituted that all of the summits do. Not that my abilities to eat a sandwich while walking are particularly bad, but they are.[/font][/color]
[color=#000000][font=Arial][size=2]Frank Lantz's "Life and Death and Middle Pair: Go, Poker and the Sublime" was next and it was a very interesting talk to hear, as I am largely unfamiliar with Go and a pretty poor Poker player. Lantz's primary purpose was to illustrate the timeless nature and endless depth that both of these two games have and the way that they are pervasive in the mind of anyone who plays them. My favorite point was the relatedness between the notion of "expected value" and probability in Poker and how it leads people to inadvertantly come to understand the scientific method through a practical introduction to what is, essentially, bayesian theory. [/font][/color]
[color=#000000][font=Arial][size=2]"The Failure Workshop" was next and, really, the main takeaway from the whole session was to prototype early and test out ideas before rat-holing into tangential work too early on. [/font][/color]
[color=#000000][font=Arial][size=2]My favorite talk of the day came from Kent Hudson, a game designer at LucasArts and former designer at 2k Marin who did Bioshock and the in-production X-COM, entitled "Player-Driven Stories: How Do We Get There?" In the session, Hudson went over both the theory/ideas behind a more systemically-driven game design that allowed games to take a less prescripted approach to story-telling and a more involving player experience. The way to get here is to more systemically measure a player's actions and, specifically, their relationships to other entities in any given game. Through this relationship monitoring, the game can heuristically monitor a player's actions and, as necessary, react to the sum total or an individual component of all that collected data when the time is right. Hudson referenced the three tenets of self-determination theory to determine what players really need in order to reach "happiness": autonomy (referred to as "agency" in the session), relatedness, and competence. And it is through the successful recognition and embrace of these three pillars that a game can properly involve a player in its world. Hudson then took the necessary step from all of the theory into the practical world of AAA game development, by highlighting that it is necessary to rethink the way that AAA games approach content in order to properly be able to fill out a game world with content flexible enough to be able to respond to a variety of player stimulii. Hudson, specifically, referenced the removal of five major time- and money-consuming elements of content: VO, custom writing, environments, models, and animation, and ways to really "own" a style that allowed a development team to re-appropriate its budget as necessary for a game that isn't as prescripted as a lot of today's games typically are. Given that the last thing I wrote for my site was entitled "The Systemic Integrity of Expression," I agree fully. [/font][/color]
[color=#000000][font=Arial][size=2]It's somewhat sad that directly across the hall from Hudson's session, David Cage was saying things like "Game mechanics are evil. Mechanics are a limitation. We need to redefine what interacting means." Which, I mean, no. [/font][/color]
[color=#000000][font=Arial][size=2]After the day's sessions wrapped, it was time for the Independent Games Festival awards show and the Game Developer's Choice Awards show. Unlike last year, the awards show was unexpectedly entertaining and completely hilarious due to IGF host Anthony Carboni and GDCA host Tim Schafer being thoroughly amazing. It weirded me out a little that, during the Game Developers Choice Awards, so many of the categories were filled with games that I had so little love for. The closest I got to rooting for a game was when Dragon Quest IX: Sentinel of the Starry Skies and Metal Gear Solid: Peacewalker were both up for a nomination (in the same mobile game category).[/font][/color]
[color=#000000][font=Arial][size=2]The day ended with some good fun at the Nidhogg tournament at the Eve Lounge and then some other miscellaneous happenings.[/font][/color][/font]
Clint Hocking gave a thought provoking and interesting talk -- complete with allusions to electric elephants, communism, and russian film icon Lev Kuleshov -- in an attempt to answer a question Chris Hecker raised during earlier GDC's. Specifically: How do games mean?
No that's not a grammatical error or a joke. It's a play on the question "what do games mean?"
There are many problems with the question "what do games mean?" The largest might be that we don't have a particularly good way to systematically answer it. The question of "how do games mean?" (or more gramatically: "how do games create meaning?") is more answerable, and more importantly, the answer is perhaps useful in creating games that are rich with meaning.
So how do games mean? I'll try to summarize Mr. Hocking's view here, although it's quite intricate. Mr. Hocking has an interesting answer to that question, but before getting to that, it might be instructive to look at the history of film.
Lev Kuleshov is an iconic figure in film. He's best known for discovering the Kuleshov Effect. From Wikipedia:
Kuleshov edited together a short film in which a shot of the expressionless face of Tsarist matinee idol Ivan Mozzhukhin was alternated with various other shots (a plate of soup, a girl, a little girl's coffin). The film was shown to an audience who believed that the expression on Mozzhukhin's face was different each time he appeared, depending on whether he was "looking at" the plate of soup, the girl, or the coffin, showing an expression of hunger, desire or grief respectively. Actually the footage of Mozzhukhin was the same shot repeated over and over again. Vsevolod Pudovkin (who later claimed to have been the co-creator of the experiment) described in 1929 how the audience "raved about the acting.... the heavy pensiveness of his mood over the forgotten soup, were touched and moved by the deep sorrow with which he looked on the dead child, and noted the lust with which he observed the woman. But we knew that in all three cases the face was exactly the same."
Kuleshov used the experiment to indicate the usefulness and effectiveness of film editing. The implication is that viewers brought their own emotional reactions to this sequence of images, and then moreover attributed those reactions to the actor, investing his impassive face with their own feelings.
Here's the important bit in all of that: through the creative use of editing, the audience can be brought to find meaning in something that is otherwise ambiguous. Ivan Mozzhukhin's face was the same in all shots, but by allowing the viewer to interpret his reactions, the editing created meaning that was otherwise non existent.
So what does that have to do with meaning? Well in Mr. Hocking's view, films create meaning through editing. Narrative might direct the experience, but editing is the basic building block -- the "how", if you will -- in which meaning is constructed from.
Well that's great for film, but how do games create meaning?
Dynamics, would be Mr. Hocking's answer.
Wait what are dynamics?
Dynamics are the behavior of the game itself, the way it interacts with you in response to your actions. This is where meaning is created. In this sense, cutscenes or stories wouldn't be the primary creators of meaning -- because they aren't part of the behavior of the game. They can frame and reinforce the meaning of the dynamics, but they aren't where meaning is created.
As background for where this "dynamics" term comes from, one model of thinking about game design is the "Mechanics, Dynamics, Aesthetics" model. You can think of it this way:
Mechanics = Rules
Dynamics = Behaviors that arise from the rules
Aesthetics = Feelings that result from the players experiencing the behaviors
There's the "message model of meaning", in which mechanics overrule dynamics. You could think of this as a more authoritarian view of how you should view the game, in which the designer uses the rules of the game in order to enforce a specific message.
There's also the "abdication of authorship" model, in which dynamics overshadow mechanics. In this model, player agency is maximized, but the trade off is that with extended player agency, the designer's control over the experience is reduced.
Games can fall upon a spectrum in this sense, with some games reserving the creation of meaning for themselves, while other games allow the player more control over what the meaning of the game is.
[color=#000000][font=Arial][size=2]Kyle Gabler opens the failure workshop with the story about a game entitled "Robot and the Cities That Built Him" which was to be a project based off of a seven day experimental gameplay project. "Because we're game developers, we started by making a bunch of different units," he said. "This is an indie game! The robots are not destructive, they're a metaphor." [/font][/color]
[color=#000000][font=Arial][size=2]"But that wasn't big enough," he said. Then the game became "Robot and the cities... the musical!" And it started with bunnies jumping through the forest singing "it's a fuzzy wuzzy day." And this is the best thing ever, I think. "Their fuzzy wuzzy skins peels off revealing cold metal beneath." [/font][/color]
[color=#000000][font=Arial][size=2]"...but it's still not fun," he said "and so we did what we should have done six months earlier" and they made a quick prototype with as little production effort as possible. And then they realized the game wasn't fun "or deep or interesting in any way." "The second reason this is horrible is that we had lasers [...] and it just wasn't us. I don't know, I'll never make a game with a sword in it." 2D Boy extrapolated two things from their experience: "No amount of theming will save a bad idea" and the second thing was that "Trying to live up to a previous game is paralyzing."[/font][/color]
[color=#000000][font=Arial][size=2]Then George Fan (of Plants vs. Zombies and Popcap fame) took the stage. He opened his bit with a slide entitled "My Failure Story." He continued with a little background on his history as a child doodling and sketching out game ideas in rough drawings on papers. And he ended this with "Cat-Mouse-Foosball," the first game he made; "hey, [the design] worked for Bomberman, why couldn't it work for Cat-Mouse-Foosball." "I prototyped one level of the game and realized how poorly it played and never bothered with the rest," citing all of the other peripheral design work he did at the start of the project as being a waste of time. Fan then showed a demo that he made in the present of Cat-Mouse-Foosball and considered it an accurate representation, albeit ten years later, of how bad the game was. [/font][/color]
[color=#000000][font=Arial][size=2]"In 2001, I almost quit making games forever..." Fan says in another slide. "The first thing I had to do was recognize the distinction between a thing I was familiar with [illustration] and something I was not [game design]." "Games are more like this complicated machine" rather than a quick sketch someone can envision in their head or jot down on a piece of paper. "[Games just] aren't something you can keep in your head once." This led Fan to his first conclusion: "Start prototyping the game as soon as you can [...] you're not going to know if the game is fun or not until you're actually sitting there playing the game." He ended his presentation by saying "Don't give up! If you love what you do, you will persevere." [/font][/color]
[color=#000000][font=Arial][size=2]Next up in the failure workshop was Matthew Wegner, who founded Flashbang Studios (which started as a casual game development company with only three people). "After we had some money in the bank" a few years later, Flashbang then went on to make a variety of games that were done in, roughly, eight weeks a piece and uploaded to Blurst.com. And this whole process didn't lead Flashbang to any money. Wegner simplified this to saying eight weeks is too little time to make a game like World of Goo but too much time for a game like Canabalt. Flashbang's first game, Offroad Velociraptor Safari, was their first release and accounted for almost a third of all of their traffic. "We set Blurst up in such a way as if it failed [...] we still had a really great time." [/font][/color]
[color=#000000][font=Arial][size=2]Wegner then moved on to Off-Road Velociraptor Safari HD which would take their most popular game and make an HD version of it for consoles. They spent three months on the HD version building off of the web version and preparing it for publisher work. Wegner then showed off the result of this time with the trailer for Offroad Velociraptor Safari HD. "We were definitely pushing in this HD direction [...] and it turned out to be a pretty big mistake. We were currently three people and by calling the game HD" Flashbang was setting unrealistic expectations to everyone who would play the game. "And it turned out that we actually hated working on this" and the act of simply polishing an old game with better graphics and sanded edges. Wegner summarized this with a quote from Dean Karnazes: "Somewhere along the line we seem to have confused comfort with happiness." [/font][/color]
[color=#000000][font=Arial][size=2]Summarizing the issues with the HD approach, Wegner related a unicycle example to lead to his eventual point "we weren't willing to fall backwards" and get weird and clever with the game they were working on. The team then redirected a little and attempted to become a bit more non-photorealistic with a cartography look and explore, in similar senses, with the gameplay mechanics. One of the design mistakes Flashbang drew from this redirection is that they failed "design[ing] for players."[/font][/color]
[color=#000000][font=Arial][size=2]Chris Hecker ended the Failure Workshop with his "Rock Climbing Failure." "We're going to concentrate on the failures between 2001 and 2003," Hecker said, joking about ignoring the other independent failures. Hecker talked about everything he was involved with during this period of time that wasn't "ship[ing] the game." He then demoed the game.[/font][/color]
[color=#000000][font=Arial][size=2]"So what went wrong?" he asked. He then listed out: "Technology rat-holing. Non-game distractions. And lack of ass-in-chair." Hecker then demonstrated a ridiculous level of math in Mathematica. It was pretty great. Hecker said all of these failures all boil down to one single problem: "I was scared of game design," continuing, "Design is hard, unpredictable, mysterious, unstable." He concluded by pointing to Spy Party and saying that while all of the aforementioned problems still arise, he is solving the fundamental problem by making sure that everything he does is playable. [/font][/color]
I am sitting now at the AI Roundtable, between Mike Lewis and Dave Mark. These guys were part of the crew running the full AI summit, which I unfortunately missed. Roundtables are something I discovered late at last year's GDC, and I think they might be some of the best events. It gives you more of a chance to engage directly with people, instead of just sitting through lectures.
* Dave Mark is discussing using real life as a model for building AI, by reflecting on how we make decisions in real life.
* How do you make complex AI stuff in the background (eg emotions etc) actually useful and visible to the user/player? Some games do it explicitly. Animation can do a lot as well. Ambiguity can be used so that the player simply makes up their own ideas about what is happening. Maybe the subconscious feel of the game is enough.
* It's dangerous to avoid doing AI because characters are only on screen for a few seconds. Maybe less characters could be on screen for longer, doing more interesting things.
* A lot of discussion about emotion. Candidly, I don't see the point...I don't want characters who get sad and angry and scared, really. I want characters who aren't stupid. That's the cure modern games seem to be missing...but I haven't played shooters in a long time.
* Talking about heavy animation blending in order to enable variety in how characters act and behave. It's difficult for me not to plug my company at this point, but we just don't have a product yet.
* The best designers are programmers. This is obvious to me. These non-tech people who want to still design the nuts and bolts of games need to get lost.
* More discussion about really enabling designers and junior programmers to build AI. Small scope custom scripting languages, designing around the designers, or teaching them code concepts. I'm imagining separate water fountains for coders and designers.
* Interesting suggestion -- go learn to use an appliance from a foreign country, with a language you don't understand. This is how designers feel about the tools engineers give them.
* Still more discussion about designers. I've never worked with a game designer, per se, so I don't have much perspective on the matter.
* Are designers like puppies? You have to train them just right or they leave a mess, from the sound of it.
* Another interesting way to approach AI, keeping compute power in mind -- use really stupid AI for characters until they actually become directly relevant to the player, and make up the rest from there. Not degrade existing AIs, but take uninteresting characters and promote them to much more detailed creations.
* Some games, making the enemies too smart isn't helpful because then you just lose. It's better to have them play out patterns that are complex and interesting but learnable and can be learned. I'm not sure I agree with that -- depends on your market.
* When is the last time someone reviewed a co-op game and said the co-op AI was good?
Waiting right now for Christina Coffin's talk on SPU based deferred shading in Battlefield 3. I hear they use DX11 compute shader heavily on the PC side, so it'll be interesting to see how they leverage the SPUs.
* Previous DICE games were forward rendered, just a few lights. Mirror's Edge, which they SHOULD be making a sequel to, used pre-rendered radiosity lighting. Goal of Battlefield 3 was to really expand the lighting and materials, and DICE picked deferred.
* Their PS3 implementation uses 5-6 SPUs in parallel with the GPU and CPU.
* GPU does the initial G-buffer fill, and then passes it off for shading by the SPU. Still waiting to see what that means. Are they using SPUs as fragment shaders?
* The framebuffer is sliced into 64x64 tiles, use a simple shared incrementing counter for sync.
* SPUs compute 16 pixels at a time, in SoA format at full float precision
* The GPU is still busy on other shading while the SPUs eat through the deferred shading
* About 8 millis real time on 5 SPUs for deferred shading while GPU does other stuff, equals 40ms total max compute time contributed by the SPUs.
* Light culling is done in two stage tile hierarchy, after whole-camera and coarse Z in light volumes
* A branch is used to skip all 16 pixels if the attenuation makes them unlit. This is a net win despite the branching cost.
* The SPUs are very even pipe heavy due to all of the FPU action, so complex functions can be replaced with a look-up table using strictly odd-pipe instructions, can decrease 21 cycle functions to 4 in case of complex functions.
* There is still a pure GPU based implementation of the shading pipeline that maintain visual parity, in order to facilitate debugging and validation.
* SPU job code can be reloaded into the live game, enabling bug fixes with quick iteration.
* My good friend Steven Tovey gets a call out at the end of the talk! He loves SPUs, so if you meet him you might wanna wear a dust mask.
[color=#000000][font=Arial][size=2]Satoru Iwata started his keynote by highlighting the worries of developers in the development community concerned with job security.[/font][/color]
[color=#000000][font=Arial][size=2]"You are the center of the video game universe," he said to the attendees of the GDC 25 keynote, attempting to ease those concerns.[/font][/color]
[color=#000000][font=Arial][size=2]Iwata then moved on to teaching himself programming on his own time, joking that "I concluded that I pretty much had video games figured out." Iwata then talked about meeting and working with Shiguro Miyamoto, saying "I was convinced [my work] was technically superior." Miyamoto's games then outsold Iwata's by a ridiculous margin; Miyamoto 'taught' him: "Content is really king." Iwata confessed that this is when he learned that technology and engineering weren't everything.[/font][/color]
[color=#000000][font=Arial][size=2]In talking about the early days of Nintendo, Iwata said, compared to games today, they were "video game cave men." He talked about wearing different hats, making enough money to pay the rent, and other problems typical of any start-up that we generally don't think about in regards to a company like Nintendo anymore.[/font][/color]
[color=#000000][font=Arial][size=2]Iwata started talking about a large-scale survey they run twice a year that they started in Japan in 2005 and have since expanded that practice to other regions. Iwata then showed a graph showing the "Composition of the U.S. Gaming Population" and how the prominent gender of gamers between ages 4 and 75 switches from being predominately male to being predominately female. Iwata then moved on to show the active gaming population in the United States and Europe, both of which exceed 100M users (with the US exceeding 160M) as of October 2010.[/font][/color]
[color=#000000][font=Arial][size=2]The next topic Iwata tackled was that of "social networks" and "social games." He wanted to clarify the use of the "social" in either of these terms and the widely-believed implication of the term of "social game." He aims to redefine "social" as simply being a large group of people and the activities they choose to engage amongst one another with. Iwata then took the opportunity to promote the role that various Nintendo products have had on smaller-scale social groups (families and the like). "In those early days, being social only meant 'competing.'" Iwata says as he cited that people would connect two Game Boys together with a link cable in order to duel in Tetris.[/font][/color]
[color=#000000][font=Arial][size=2]"I don't want it to seem that Nintendo is taking too much credit for its role in creating the social game," Iwata says. He then cites Call of Duty's role in multiplayer and Microsoft's "considerable investment" in Xbox Live.[/font][/color]
[color=#000000][font=Arial][size=2]The term "must-have" describes something that Iwata feels is so important that every gamer "must have it." "These tend to come from one of three sources," Iwata says, starting by citing hardware itself as a source (using the first Game Boy as an example and the role in incubating portable gaming it played). "Second, there were times when a game itself is must-have [...] names as diverse as Sonic the Hedghog, Just Dance, Grand Theft Auto, Guitar Hero, Angry Birds, The Legend of Zelda, and Tetris." "But, there is a third source of must-have that extends from neither hardware or software [...] it comes from the player itself. It's that social appeal of gaming." Iwata cites how Pokemon mechanically encouraged people to trade their Pokemon with their friends as a reason for why the franchise has been so hugely popular over the year. Iwata also cites "universal appeal" as a reason why so many of Nintendo's games have been so popular over the year. [/font][/color]
[color=#000000][font=Arial][size=2]The keynote then turned into a Nintendo press conference as Iwata took all these principles to talk about Kirby (which was a great story) and the Nintendo 3DS (which was a press conference spiel). Reggie Fils-Aimes also appeared to talk further about the Nintendo 3DS. "It's a system to play games," Fils-Aimes said on numerous occasions as he talked about Netflix and movie trailers. [/font][/color]
[color="#000000"][font="Arial"][size="2"]Before anyone asks: there is no GDC 2011 - Day 1 post. Well, there may be somewhere, but I didn't write it. GDC 2011 - Day 1 entailed me getting into San Francisco fairly late, grabbing dinner and beer with some bros, and then pretty promptly heading to sleep. At 8:30pm local time. INTENSE, I know![/font][/color]
[color="#000000"][font="Arial"][size="2"]One of the reasons that I chose to only have one day worth of summits this year is that, last year, the Independent Games Summit and the Serious Games Summit both had their share of highlight but were, largely, not particularly interesting to listen to. It feels like some of the independent speakers show up, have heart, and have a great message that they want to communicate to the crowd. Other IGS speakers, however, despite being very talented developers with great personalities, either don't have much of a message to convey or aren't all-too-great speakers. So, this year I chose to just condense some Social and Online Games Summit, Independent Games Summit, and Serious Games Summit sessions into a single day of things that I really wanted to see. [/font][/color]
[color="#000000"][font="Arial"][size="2"]And that's what I did! Of course, everything took a bit of time to get rolling since I'm still, largely, operating on my normal central time-acclimated schedule so I was up and awake at a prompt 5:15am local time. Which meant that it was time for breakfast:[/font][/color]
[/font][font="Arial"] [/font][color="#000000"][font="Arial"][size="2"]I ran into various people all morning but, since it was morning, you do people teh kindness of not letting conversations linger as people require caffeine. And some of us needed a second Red Bull. Some of us being me. Anyway. The first session I attended was at the Independent Games Summit and was given by Jamie Cheng of Klei Entertainment talking about "The Journey to Creating Shank". Next was the incomparable Derek Yu who talked about transitioning from the beloved freeware Spelunky to Spelunky XBLA (it looks amazing, for your edification on the matter). [/font][/color]
[color="#000000"][font="Arial"][size="2"]Next up I followed some friends to the Social and Online Game Design summit for what was probably my favorite session of the day: "A Debate: Are Social Games Legitimate?". The panel was moderated by Margaret Robinson and featured one of my favorite speakers about social games, Ian Bogost (who made Cow Clicker) along with a few other panelists. The panel didn't make it particularly deep into the topic, but there were some entertaining (and some interesting) conversations back-and-forth between, what at least appeared to be, a fairly opinion-diverse set of panelists. What I enjoyed most about this panel were the reactions the social game developers had to Ian Bogost's fairly pointed questions (accusations, in some cases) as to the ethics of social game development and, as the social game developers rightly responded, the ethics of game development as a whole. Also one of the panelists had a particular fondness for cupcakes, citing on numerous occasions that he thought it was "pretty cool" that he could send a digital cupcake to his mom and that could "get a conversation going sometimes." Cupcakes. [/font][/color]
[color="#000000"][font="Arial"][size="2"]It was unfortunate that most of the panelists seemed as prepared for debate as Bogost was, as mostly anecdotal evidence seemed to be relied upon for points.[/font][/color]
[color="#000000"][font="Arial"][size="2"]What followed the social games debate panel was a nice, lengthy, gorgeous little faux-picnic near the convention center with a variety of friends from around the game industry. Including Florida. Poor, poor Florida. [/font][/color]
[/font][font="Arial"] [/font][color="#000000"][font="Arial"][size="2"]The summit-filled afternoon picked back up with an amazingly well-presented and well-discussed talk by the ever-impressive Jane McGonigal on "gamefulness." McGonigal leveled a variety of criticisms as the whole wave of "gamification" that has occurred within the game industry, but not ruled out the idea as a whole. She simply aims to redefine the goals of "gamification" into something more like "gameful"(ification). One of the best quotes of the entire presentation was "The opposite of play is not work, it's depression." McGonigal's view of game design and the goals of play do not particluarly align with those of mine, but I do enjoy hearing her espouse her very numerous and well-researched thoughts on the subjects. I was somewhat disheartened that the session had no time for audience questions, as one of my principle complaints with the whole notion of "gamification" is that it seems to have the goal of making mundane tasks (and, in a lot of cases, even non-mundane tasks) more "fun" by "gamifying them."[/font][/color]
[color="#000000"][font="Arial"][size="2"]The example that Jane McGonigal gave of gamification/gameful-ification was that the New York Public Library approached "gamification experts" with the goal of getting young people to read more, as due to the internet and wikipedia they were finding that not many young people went to the library anymore. The goal of gamification in this case would be to provide extrinsic incentives to youth in order to get them to go to the library and read more and so on. Ignoring the high-level fact that this is simply strange, the more important point is that gamifying or gameful-ifying this problem simply fixes the symptome (kids not going to the library) rather than the actual problem (kids not reading as much nor having reason to go to the library). And, this example aside, gamifying seems to ignore that what makes games and play fun is that they have an ebb-and-flow with reality and "real life"; that separation is what makes each work so well. [/font][/color]
[color="#000000"][font="Arial"][size="2"]The rest of the day's sessions were at the Independent Game Summit, starting with Andy Schatz's "How to Win the IGF in 15 Weeks or Less." What worked in this session was not Schatz's considerable personality, but the heart with which he spoke and the way he bound his personal life into the development of Monaco. Aside from showing a histogram of his own bank account throughout his time as an independent developer, Schatz also showed a variety of Facebook updates starting with one which was obviously done in a poor mood and ending with one of exuberance as he finishes up the IGF build of Monaco. The session also closed with an impromptu play-through of a level of Monaco by volunteers from the audience (and the game looks rad).[/font][/color]
[/font][font="Arial"] [/font][color="#000000"][font="Arial"][size="2"]And, finally, the last session of the Independent Games Summit was the Rapid-Fire Indies microtalk session which had five-minute presentations from speakers like Chris Hecker, Notch (of Minecraft fame), Kyle Pulver, Anna Anthropy, and other speakers. The session, on the whole, was a little disappointing due to a variety of sessions on somewhat common topics like game jams, the use of "indie" as a label, and piracy. Beginning the microtalk session with someone like Chris Hecker talking also seemed like a strange move; he had a great topic, his usual abundance of energy, and packed a pretty crazy amount of information into a single five-minute presentation.[/font][/color]
[color="#000000"][font="Arial"][size="2"]The day slowly ended from there, but here's a picture of Michel McBride-Charpentier vs. Jorge Albor in a game of Metagame; the debate card placed was "Which game has a more intense subculture?" And the debate was between Minecraft and Dance Dance Revolution. And somehow Michel lost with [/font][/color][color="#000000"][font="Arial"][size="2"]Minecraft[/font][/color][color="#000000"][font="Arial"][size="2"], so that's pretty astounding.[/font][/color]
[/font][font="Arial"] [/font][color="#000000"][font="Arial"][size="2"]Also Vagrant story is now on the Playstation Store in PSOne Classics. Get it posthaste. [/font][/color]
This afternoon, accomplished game designer Graeme Devine gave a talk on designing games for the iPad, and why the iPad is a different gaming device than any other platform on the market today -- including the iPhone and iPod Touch. Graeme stated that he believes the iPad is the "best gaming machine on the planet today" (a statement which seems even more bold when considered alongside the fact that he no longer works for Apple.)
First, Graeme described what is different about the iPad. For all iOS devices, the joystick and physical buttons of classic game consoles are gone. An iPad-specific difference, however, is that the positions of the player's hands are quite different on the iPad versus the iPhone or iPod Touch. For example, when holding an iPhone, players generally cradle the phone in both hands, thumbs or fingers from both hands to interact with the device. With the iPad, generally one hand is supports the device from behind, while the other plays the game. He exhorted developers to consider all the ways users will want to hold the device while playing their game, and to factor that into their design choices. He also cautioned developers to play the game in the "wild," not just leaving their iPad flat on the desk, plugged into their Mac while developing, in order to experience these different hand configurations themselves.
Graeme considered the challenges of porting from PC to iPad, saying that there are no easy answers, and frequently many bad choices are made by games during this process. He gives the example of the iWork apps on iPad -- these are completely different than the equivalent apps on a Mac, suggesting that simply replacing the mouse cursor with the user's finger is not adequate. On a PC, you move your mouse, then select an item onscreen, said Graeme; with an iPad, the finger only touches the glass when a selection action is occurring. This is the most "key" difference between a desktop and an iPad, according to Graeme. He used an example of porting a puzzle from his game Clandestiny to iPad, contrasting a "simple" implementation with a carefully designed, iPad-conscious implementation in terms of usability.
Graeme thinks of touching the iPad's glass screen as if he is touching the world directly on the other side of the screen -- in other words, the player's fingers are interacting directly with the world. He cautioned developers not to put up artificial barriers between the user and the game world, such as virtual onscreen D-pads, which he unequivocally dislikes.
Some other aspects of designing for iPad that Graeme mentioned were making good use of the accelerometer to provide subtle 3D effects when the device tilts, and the importance of a high framerate. Although it may not seem important that an app such as Words with Friends runs at 60 Hz, he said, it becomes quite important when the user actually picks up a tile to move it around the screen. You can always throttle down the framerate when the player isn't touching the screen in order to save battery, he said.
After this, Graeme enumerated his list of best practices for iOS development, and development in general. These were as follows, paraphrased roughly:
Do play tests with other people every day, and make sure to hold your tongue while watching others play your game. "You do not come with the game," he said, so the only way your game will improve is if you do not help the play test subject while he or she tries your game.
Make your app playable on Day 2. With the short schedules common on iOS projects, the luxury of spending months on an engine before getting to gameplay is not available. As much play testing time as possible is necessary.
The user should never have to manually save a game. The game should save automatically when they press the home button.
App startup time is important. According to Graeme, over 3 seconds is too much. 10+ seconds risks people never playing your game again.
Don't release as soon as your game can possibly be released -- spend at least 2 weeks polishing before you submit to iTunes Connect.
"When in doubt, refer to the Zombieland rule set." Graeme suggests that the series of "rules" enumerated in the 2009 movie Zombieland come in handy in all situations.
"What you are saying when you put a virtual D-pad is... my game is better with a joystick." The best games on the app store do not have virtual D-pads.
Make sure your app gracefully supports being interrupted by notifications, home button presses, etc.
If you are going to implement gestures in the game, be sure to give the player some sort of feedback as to what gesture the game "thinks" the player is doing well before they complete it. The player should get feedback as soon as their gesture starts, not have to wait until it completes and wonder why it wasn't recognized.
"A quick rant about reality": In short, Graeme feels realism is overrated for games. He believes time is much better spent focusing on gameplay. You cannot "go wrong" with gameplay the way you can while attempting to achieve visual realism. He gave the example of Hollywood sets, which look real on film but have completely unnatural lighting environments.
Lastly: "It's a game!" Graeme tells developers to "delight" their players, and create games that give them narratives to tell others the next day at the water cooler. He says that games that provide a narrative that can be easily described in words are the best.
He finished the talk with an exhortation to "make something fantastic," saying "the games industry is the best industry in the world."
[color=#000000][font=Arial][size=2]Andy Schatz, the developer of Monaco, took the stage to preface his session by saying he isn't going to talk about how to make an IGF winner but, rather, just to tell his story.[/font][/color]
[color=#000000][font=Arial][size=2]"What's [important] is your inspiration and motivation when making games," Schatz says as he recalls September 29, 2009, adding "I was depressed." He talked about being in a rut and making indie games for five years and having it go nowhere. He was working on the third title in his Venture sim series and "it sucked" (as Schatz recalls). He had reached the end of the time he was giving his independent break from AAA game development and was depressed. So, next, Schatz took on board games because they're "all about mechanics" and says it's a very good way to get your brain flowing.[/font][/color]
[color=#000000][font=Arial][size=2]Andy Schatz talked about wanting desperately to make a game about "stealing shit," but was concerned that the fanbase he earned from the Venture sim series (who were largely kids) would conflict with the goal of a game about stealing things. Despite that, though, Schatz made a Monaco board game. He did this on a break from his full-time project and then, when he took his next break from his full-time project, he took a break and he said he's going to make Monaco as an XNA game in a week and that would be his last break from the third entry in his Venture series. Schatz said he wanted to make this heist game like a roguelike.[/font][/color]
[color=#000000][font=Arial][size=2]After tackling some of the technical details of prototyping Monaco, Schatz moved on to talking about what type of tools to use when making a game. Schatz talked about using Torque for the Venture series and citing it as a mistake, then using Unity which (he feels) would have enforced a certain look on the game, and then customizing the look of Monaco by using the "just enough of a framework" XNA toolset.[/font][/color]
[color=#000000][font=Arial][size=2]An interesting side-note about Andy Schatz's presentation is his use of old Facebook status updates, which he uses to bind the session to a narrative spine and function as an ad hoc "digital archeology" (taking the term from GDC cohort Ben Abraham).[/font][/color]
[color=#000000][font=Arial][size=2]Schatz then talked about Ventura Dinosauria (the third entry in his Venture series) and that DINOSAURS ARE AWESOME. And he is correct. Unfortunately, Schatz couldn't make the game fun. "If you want to have a takeaway from this, this is it: I made sure I worked on one cool thing every day. [...] And I never worked on something that took me longer than one day." I'm editorializing here, but: this is awesome and a completely true and valid approach to independent development. "When you think of game development as a holistic thing," Schatz continued, "you get much farther when you're enjoying yourself." [/font][/color]
[color=#000000][font=Arial][size=2]"The number two thing that you can take away from this," Schatz says, "is that you should have people playing your game from day two." He cited his experience from the recent PAX expo. Schatz also makes a crucial difference between "advisors" and people who are just playing ("people who don't know shit about games"). "You can't have too many advisors," just people who align with your general goal and can give you good, pointed advice. The people who don't know about games, regardless of how bad their opinions are, their impressions are crucial. "There are three questions I ask every one of these people: 'What did you like?,' 'What did you not like?,' and 'What confused you?," and when they tell me what I should change, I ignore them."[/font][/color]
[color=#000000][font=Arial][size=2]In talking about how he financed his independent operation, Schatz cited contract work as the best way to make a lot of money, but "it's not fun." "If you're working on a project that just makes money you're going to make money or you go out of business. And if you're working on a project to make recognition you're going to make recognition or you're going to just make money," Schatz said of his independent development philosophy.[/font][/color]
[color=#000000][font=Arial][size=2]When talking about moving Monaco from tile-based visibility to movement to his new lighting and visibility algorithm (that went from being a pretty but distracting mosaic look to a more vector-based approach) took Schatz two months. This was his first and, by far, his longest feature to work on and broke his one-cool-thing-a-day work goal. "Even though it did take me two months, it was something I felt that was cool and interesting." [/font][/color]
[color=#000000][font=Arial][size=2]Schatz then turned to a discussion about game mechanics vs. "experience" and the difficulty in marrying these two things. "As an indie, you're never going to get over that uncanny valley hump, [...] but there are areas" in which independent developers can bridge the realism gap such as, as Schatz points out, sound. He creates a very complex soundscape in Monaco to help the game's overall "experience."[/font][/color]
[color=#000000][font=Arial][size=2]Andy Schatz ends the talk with a near-final Facebook status update that shows how much his mood has increased and how much more productive he was when he did something that he enjoyed. "And fifteen weeks later, I had won the IGF."[/font][/color]
I spent most of today and yesterday at the social games summit, at various tracks. I was going to write them all up as individual posts, but there were a lot of themes that seemed to cut across talks, so it makes sense to also write about them as a group.
I have to admit that a large part of the reason why I went to the social games summit was because I don't really get the appeal of social games. I don't have particularly strong feelings against them, mind you, I've just never been able to understand the audience they appeal to. With that regard, I think Eric Zimmerman and Naomi Clark's talk on "The Fantasy of Labor" was by far the best attempt to explain the popularity of these games, and I should have some coverage up on it soon.
While I'm coming from a place of curiosity, I think the more general sentiment is contempt. For instance, during Patricia Pizer's talk on "Putting Social in Social Network Games", she asked the audience how many people in the room actually enjoyed Facebook games. There were about two hands, out of a few hundred people.  I think that's pretty telling. A similar experiment was conducted during the "Are Social Games Legitimate/Evil" debate with similar results.
Speaking of that debate... wow. The audience was quite packed with self-identified social game developers, but the vibe seemed distinctly against social games. I'm not sure if that's just because the anti-social (har!) crowd was more vocal, or if there's just a lot of dissent within the social ranks.
During that debate, Ian Bogost had an interesting metaphor. He compared social games with being similar to the situation we have with ADM and High Fructose Corn Syrup. Like HFCS, social games (and the relationships they encourage) are cheap, convenient, ubiquitous; but they're also a poor substitute for other activities that could be healthier. Evil? Probably an overstatement, but they don't seem to be doing much to make society (or relationships) healthier.
Another journalist suggested that perhaps part of the vitriol towards social games might be because of its perceived threat toward the current AAA model. The thinking is that if you can beat the sales of a $60 million dollar game with something far cheaper and more simple to make, even if the quality is vastly poorer, at some point people are going to question why we're working on these very big expensive games. I think that's an interesting point, but I disagree. The gulf between the audiences is huge, I can't think of many hardcore gamers that are also social gamers, or vice-versa, so it seems both can easily coexist. The attitude I've mostly gleaned from both the AAA developers and indies is more a feeling of contempt than actual anger. They don't like what the social crowd is doing because they think it's sketchy.
 An astute reader might point out that there might be other explanations, such as that they may have been distracted. During the Q&A someone brought up this exact point, and so the question was raised again. With a retally the numbers ended up being pretty much exactly the same. The base case question of "who here likes computer games in general" obviously got a much more favorable and unanimous response.
[color="#000000"][font="Arial"][size="2"]The "A Debate: Are Social Games Legitimate?" panel opened with moderator Margaret Robertson (Moderator), and then went on to allow each panelist a small amount of time to make an opening statement on their pre-existing opinions on the matter of social games. This started with Ian Bogost, then Daniel James, Nabeel Hyatt, and finished with Curt Bererton. The order of these panelists seemed, intentionally or unintentionally, to take the order of "most negative" to "most positive" feelings towards social games.[/font][/color]
[color="#000000"][font="Arial"][size="2"]Ian "Cow Clicker" Bogost is, in fact, in the house.[/font][/color]
[color="#000000"][font="Arial"][size="2"]Moderator Margaret Robertson opened with a discussion of the panel's title and mused about the use of the word 'legitimate' in the title by saying "nstead of 'legitimate," are these things... "evil?" She then polled the audience on a variety of social game-related questions. All told, the audience of the panel largely consists of people who make social games. When asked who in the audience plays socialgames, a majority raised their hands; when further asked who played these games for fun, a majority of those hands dropped.[/font][/color]
[color="#000000"][font="Arial"][size="2"]Ian Bogost starts talking by illustrating the amount of high fructose corn syrup in a variety of food products (and points out its presence in unexpected foodstuffs like bread). Bogost wonders if Facebook is doing to friendship if what the leading maker of high fructose corn syrup is doing to food: homogenizing them. Bogost then tosses Zynga into the mix, insisting "you can toss any company into this mix but, you know, the colors matched." Bogost asks the point "is this the way we want to bring this infrastructure" to dealing with friends.[/font][/color]
[color="#000000"][font="Arial"][size="2"]Daniel James started his bit by pointing out that this panel is partially for entertainment so the things said should not be thought to completely elucidate the panelists' opinions. He says "it's interesting that games like Farmville can be considered 'virtual world' games." "It's up to all of us to make ethical decisions about how we spend our time" and considering how the output of a creative work will be used by the end-user. James went on to to discuss the validity of making gambling games (slot machines used as reference) and that doing so would evoke a large amount of personal distress if his games relied too heavily on gambling tricks.[/font][/color]
[color="#000000"][font="Arial"][size="2"]"First things, these games are very fun to play... but they're also a lot of fun to make," says Nabeel Hyatt to open up his opening dialogue on the panel. He relays an anecdote about a woman playing Cafe World and getting together with her like-aged and -gendered friends who all get together with their laptops and play Cafe World together while talking. Hyatt then goes on to talk about Brian Reynolds (who is, largely, responsible for FrontierVille at Zynga) who said that social games were the only area that Reynolds could go where he could "be a game designer." He concluded by saying a lot of people are not in social games "for the money, they just want to hone their craft."[/font][/color]
[color="#000000"][font="Arial"][size="2"]The final opening statement came from Curt Bererton who started by calling him and his coworekrs "the indie evil" (for becoming a small company that makes social games). "You could say we're using metrics to make high-fructose slot machines," but what you end up with is "actual social value and an excuse to talk to [your family] more often." He also adds that since they started playing social games, "I actually talk to my family more." Bererton ends with an anecdote that he could send his mom a "birthday cupcake" in a social game and that's "pretty special."[/font][/color]
[color="#000000"][font="Arial"][size="2"]The panelists then start open discussion with ways to get people talking to their friends and working with other people they know in these social games. Hyatt insists that while games that have strong social ties are effective in getting people to play and talk to one another, that they are actually "more insidious" (he goes on to cite a World of Warcraft raid group getting people into the game for a raid).[/font][/color]
[color="#000000"][font="Arial"][size="2"]On the topic of user metrics, Hyatt says that "some companies use metrics and [it's essentially] pumping out sugar" but that only works for so long. He continues by saying "as evil as you can be with metrics, [...] they can also be used for good things too. [Metrics] also allow you to make better games." Bogost retorts "it doesn't matter how fun these kinds of games are to play, but is it the kind of fun we want" to have. Bererton responds to Bogost by saying that "in the broader strokes of things, these are all a waste of time," and in the broader scheme of things, he'd rather feel like it's a waste of time made better with friends. Bogost says the social game platform "is built on a foundation that I think is troublesome."[/font][/color]
[color="#000000"][font="Arial"][size="2"]"Metrics are a measurement of people's behavior," Hyatt says and continues that metrics get "the game designer out of the ivory tower." Metrics on social games allow a direct feedback loop rather than a designer working on something for three-four years and espousing their opinions before they get any direct feedback from the audience. [/font][/color]
[color="#000000"][font="Arial"][size="2"]Bogost says that the existing social game infrastructure "feels bad." Bererton responds to him that there is a lot of real social value on Facebook now. "I don't have a problem with making money [...] I just think the question is how we do so," Bogost says.[/font][/color]
[color="#000000"][font="Arial"][size="2"]Margaret Robertson asks: "Should social games have ethics policies." "I think a lot of people do have unwritten ethics policies," Bererton responds, "and sometime they look at a feature and say 'I don't think we should be putting this out here.'" Hyatt brings out Jesper Juul's quote "social games are the video games of video games" (in the sense they are the games fighting for legitimacy in an industry fighting for legitimacy). Bogost says "we need not love every form of games, we need to be allowed to ask questions about the kind of games people want to make."[/font][/color]
[color="#000000"][font="Arial"][size="2"]Bererton thinks the "hardcore industry" looks at social games as "not games." He goes on to say "You can't just say all modern art sucks just because you like impressionism." The discussion then goes to the point that if you can't ask questions and argue the validity of a certain type of game, then "what's the point?" [/font][/color]
[color="#000000"][font="Arial"][size="2"]Hyatt is quick to defend the platform by saying that "there are reams of anecdotal evidence that social games are adding real value to people's lives."[/font][/color]
[color="#000000"][font="Arial"][size="2"]"So... So long as social games are doing more good than evil, it's okay that they're doing evil?" Robertson quips in response before ending the discussion and opening the panel to questions.[/font][/color]
This talk was given by Derek Yu and Andy Hull. Derek started off the talk by describing his development history, contrasting his "small" games (Diabolika, I'm OK, Spelunky) and his "large" games (Eternal Daughter, Aquaria, Spelunky XBLA.) He said that these smaller games were important to his ability to create the larger games, in ways he would go on to describe later in the talk.
Derek described his prototyping process, which he compared to doodling. He just makes things that interests him at the time, without worrying about whether others will like it, or whether it would be worth commercializing. The key, he says, is to "get [his] ideas out," to simply create things.
He then described Spelunky's influences, a combination between the replayability, improvisation and excitement of roguelikes, and the more visual, action-oriented, immediately gratifying platformer genre.
One of the most technically interesting points of the talk was Derek's algorithm for level generation in Spelunky. A larger area is broken up into a 4x4 grid of rooms, and a random "path" is chosen to progress room-to-room from the top of the area to the bottom. This establishes certain rooms as vertical or horizontal corridors, etc. Then, templates for each room type are used, with random embellishments added for obstacles, treasure, and monsters. According to Derek, working on a procedurally generated game is extremely gratifying, because not only does it allow small teams to create more content, but the game is always new and surprising to play, even for the developer.
Derek also pointed out the role small releases play elsewhere. He brought up Super Meat Boy, Google Labs, and Haruki Murakami's process of writing short stories inbetween writing larger works as "success" stories for the process of making small, exploratory games inbetween making larger, more draining works.
At this point Derek handed the mic to Andy Hall, the programmer for the Xbox Live Arcade version of Spelunky. Andy started off by describing the genesis of the XBLA version of Spelunky: Jonathan Blow contacted Derek and asked if he would be interested in making an XBLA version, and helped smooth the greenlight process with Microsoft. Blow even offered the source code for Braid's engine to the Spelunky team, although they eventually decided to create their own engine after running into some difficulties using Braid's.
Another thing Andy mentioned was the fact that Spelunky XBLA is treated more as a sequel than a port of the original Spelunky, which was difficult to adjust to -- it felt awkward to change things from the original game, but the original game will always still exist for people to play. Of course, they did not want to break what worked in the existing version, but instead make them better.
Some of the things they improved from the original version were the controls (even Andy had difficulty with the original controls), and the artwork (upgraded to beautiful HD.) Derek and Andy also announced that Spelunky for XBLA will support 4-player local multiplayer, and said that more information about the multiplayer game modes will be available in the coming weeks.
According to Derek, Spelunky for XBLA will likely take around two years by the time it is done. Derek and Andy primarily work over Google video chat, as Andy is located in Connecticut.
[color="#000000"][font="Arial"][size="2"]Jamie Cheng, one of the founders of Klei Entertainment, started his presentation on the team's development on Shank by showing a graph of Klei's games getting "[m]ore and more violent over time" starting with Eets, then Sugar Rush, and culminating in their most recent game, Shank. Klei experimented with the game early on by creating a quick demo of Shank in Flash and was done over a weekend; a lot of the moves were in and the demo, on the whole, gave them the confidence to move forward. The actual Shank character design came a few weeks later. Within two months, Klei had a very capable demo of Shank with a representative character design, a good sample of moves and abilities and combat flow.[/font][/color]
[color="#000000"][font="Arial"][size="2"]With so much of the game representative in the early prototype, Cheng joked "What did we do for the next year?" Over the next year, Klei worked on the engine, polish, and the necessary work for releasing the game for multiple platforms. Publishers were telling Klei not to show the game, because that would "hinder [their] ability to promote the game." And Klei chose to, largely, ignore that and show the game (because it's "[theirs] to show") at PAX 2009 using a box gotten from Home Depot that was decorated pretty impressively to demo the game to PAX 2009 attendees. [/font][/color]
[color="#000000"][font="Arial"][size="2"]Cheng moved on to discuss the "[t]echnically hard things" for Klei. The first mentioned were that the Playstation 3 port wasn't anywhere near ready for release with Klei only having about four months to their release date. Another issue was the 2GB download of Shank, of which 1.4GB were all in the game's cinematics. The last of the listed big, technical issues during development were the fragmentation issues on the Xbox 360 that were leading to great disparity in loading times and other issues during testing.[/font][/color]
[color="#000000"][font="Arial"][size="2"]Klei worked on thirteen levels in three months after only having two playable, polished levels to show off to people. At one point on Shank's development, their development office also flooded due to a neighbor's dishwasher that flooded their office with water. Despite the flooding, though, their computers (which had their power supplies at the bottom of the case), survived three-four inches of flooding. Somehow.[/font][/color]
[color="#000000"][font="Arial"][size="2"]Some of the post-release statistics on Shank: Average session duration for Shankplayers was 56 minutes. It had a 26% conversion rate on Xbox Live Arcade. And 30% of people who played the game (on normal mode) finished the game. An interesting thing that Klei learned after launch was the difference between "Aggressive vs. Defensive players." The team learned that aggressive players learned and loved the control scheme a lot due to the smooth combat transition, but that defensive players who wanted to run away from fights ran into issues with the control scheme since it wasn't really intended for that play style and it just felt "sticky."[/font][/color]
[color="#000000"][font="Arial"][size="2"]The publisher relations with EA were a mix of "Less Good" and "Good." In the "Less Good" column was "arbitrary deadline," "'olde style' PR" ("press releases are horrible!"), "consumer expectations," and "possibly reduced upside" (versus self-funding). In the "Good" column, however, was the "creative freedom," "'true' support," "multiplatform," "marketing," "marketing," "reduced risk," and "less platform requirements." Cheng, overall, feels that the choice of EA as a publisher was largely a positive thing for the game as, otherwise, the game likely may not have shipped. [/font][/color]
[color="#000000"][font="Arial"][size="2"]"Well, how'd we do?" Shank "sold more in the first 24 hours than Eets: Showdown did [in its] lifetime." XBLA reported 41,000 units in the first week but "multiplatform release was key for profitability." The game has had a particularly "long tail" on Steam, however, and Cheng waxed positively about Steam's role.[/font][/color]
[color="#000000"][font="Arial"][size="2"]Overall, Shank had three months of prototyping, nine months of tools, and six months of miscellaneous other work. The crunch for Shank was largely on the designers and artists as the game was very content-heavy in a short timespan, but the engineers only had to work a couple weekends over the course of the game's entire development. It was a pretty tough time for the team (at times), Cheng said, but overall it ended up working out.[/font][/color]
[color="#000000"][font="Arial"][size="2"]Cheng ended the session with his "thoughts on the future..." He cited the potential of the downloadable space but that, right now, the ceiling is relatively low. "The best breakout hits in the console downloadable space are making [/font][/color]
Here are some highlights from a few of the other sessions I attended at the Independent Games Summit today:
The Care and Feeding of Your Independent Game Studio
Arthur Humphrey (Last Day of Work)
Arthur covered some of the challenges facing the casual games market today, as well as his approaches to surmounting them. Arthur says that in recent times, the return on development costs for casual games has decreased significantly (or, put another way, to achieve the same sales quantity an increased development cost is necessary.) This is a result of price compression caused by attempts of the various casual portals to undercut each other, as well as users being drawn away to other platforms such as Facebook games. Last Day of Work's approach has been to plan to release on many platforms, aiming to find at least one market where a game gains traction and then leverage that to promote your other games, or other platform supported by a particular game. They have also experimented with many different revenue models, and Arthur made the point that there is no reason to keep the sales model the same across different platforms: it's possible to have a normal try/buy model on one platform and a freemium model on another. Another interesting technique Last Day of Work has come up with is what they call "coercive conversion," a process Arthur admits is somewhat "evil." The general idea can be summed up in his example of a virtual pet game his company developed, in which it was free to raise and play with your virtual puppy character, but medication cost money -- and the puppy was guaranteed to get sick within a few weeks, dying in 24 hours without medical attention. Despite angry letters from parents, the technique apparently works monetarily. Finally, Arthur cautioned developers to maintain control of their own IP.
Game Design by Accidents
Seph Thirion (Game Designer)
Seth presented several "exhibits" of how accidents can produce innovative game design, and how code as a medium is particularly suited to accidental discoveries of this sort. His first example was Tetris: Alexei Pajitnov was intending to create a multiplayer version of Pentominoes when he created the code that allowed users to rotate the Pentomino tiles. Seeing the tiles rotate onscreen for the first time, he had an epiphany that eventually led him to create Tetris.
The second example of design by accident was Jonathan Blow's early prototype of Oracle Billiards, a billiards game that allowed you to see the final resting positions of all of the billiards balls before you made your shot. The prototype did not become a full game, but the time-bending experience of the prototype inspired Blow to later create Braid.
The third exhibit was a game creation workshop in Barcelona run by Seph, in which he gave the code for a simple Breakout-style game to visual design students with no programming background, telling them to simply modify the code and see what happened. After six hours, the students had created an amazing array of unique and striking variations on the original game.
Finally, Seph had an interactive demo in which he evolved a simple prototype from scratch using Ruby Processing, to demonstrate his concept of stumbling across design innovations via code. The takeaway from the talk is that code has some unique properties that make it useful for exploring design in this way: small changes can have far-reaching results, and the results of your code changes are often already interactive -- not just a design sketch on a piece of paper.
Turning Depression into Inspiration
Michael Todd (Spyeart.com)
Michael gave a very personal talk about how he copes with his own depression while also continuing to be productive creating video games. One strategy he employs is to choose game concepts that are rewarding to build throughout the entire process. He also attempts to mitigate his perfectionist tendencies by re-calibrating his view of his game through play tests, chats with other designers, and perusal of game demos on Steam or Xbox Live Indie Games. Additionally, Michael purposely works on shorter projects to make sure more of the game development takes place during the "honeymoon" period during which you are very excited with your idea. He measures his hours using Procrastitracker to be aware of how his productivity is trending (rather than self-estimating), and is careful to design games that are a fit for his abilities and his own personal skills, avoiding games that would require types of work he struggles with.
The first session in the Indie Games Summit this year covered the Humble Indie Bundle, and was given by Jeffery Rosen and John Graham of Wolfire Games. They gave a sort of postmortem for both the first and second Humble Indie Bundles, covering a lot of details about the design, preparation, launch, and results of the bundles. For those of you not familiar with the Humble Bundles, the Bundles were limited-time, pay-what-you-want, DRM-free, cross-platform game packs that ended up becoming runaway successes.
The idea for the Humble Bundles was inspired by the fact that every Steam bundle sale seemed to automatically get to the number one story on reddit. Wolfire itself put their toes into the water with the bundle concept by bundling Overgrowth with Natural Selection 2, which received a decent amount of press coverage and attention on Reddit, garnering 1600 sales. Another source of inspiration was 2D Boy's successful pay-what-you-want promotion for World of Goo. This led Jeff and John to begin considering how to top a pay-what-you-want sale.
The ideas Wolfire came up with to make an even more compelling sale were to add more games, add support for Mac and Linux platforms, make a better site, add charity donations, and release the source code to the bundled games.
Initially, it was difficult to get developers on board with the idea, especially because they had to limit themselves games already supporting both Mac and Linux. Getting charities onboard was somewhat easier -- 10 minutes into Jeff's complicated pitch, the EFF representative stopped him and asked, "So, you're asking me if you can give us money?"
Wolfire also covered some of the challenges with designing the Humble Bundle site. The challenges they faced included making sure the site was scalable, easy to use, while also providing good customer service.
For scalability, as Wolfire has documented in their own blog, they utilized Google App Engine to host their site. At the highest point, they had 70 instances of their app running simultaneously across Google's servers, and had nearly perfect uptime over both bundles. Amazingly, Google only charged them $10.
They also utilized two CDNs for the actual file downloads. For the first bundle, they used Akamai, and for the second they used MaxCDN. They recommend Akamai, which they say is the most expensive service, but also the best.
As for the ease-of-use goal, they designed their web site such that you did not have to register an account, fill a shopping cart, get a verification email, require a special client program download, etc. There was only one pre-purchase page, and only one unique post-purchase page per user.
Customer service wise, they used the Tender service to track support request emails as tickets, as well as the Olark service to do customer service via live web chat. They only had 18 live chat operators total, and most of the time only a couple people were active, but they managed to handle many many support requests in parallel once they got into the proper mental flow.
The gentlemen from Wolfire then described the specific pre- and post-launch experiences for both bundles. For the first bundle, there was initially very little press interest (with the notable exception of Ars Technica), and only once they began approaching the $1 million sales mark -- the threshold for releasing the source code to the games -- did other press coverage begin taking off. The first bundle achieved $1.27 million in sales over 138,813 contributions.
For the second bundle, they were concerned whether the first bundle was a fluke or actually a repeatable phenomenon. To improve the bundle, they planned new features to improve it beyond the bar set by the first bundle. They added new games, including Braid which was ported to Linux specifically for the bundle, and Revenge of the Titans, which was actually launched for the first time inside the bundle. They also made plans with Steam, OnLive and Desura to provide download keys for the games in the bundle, allowing users to unlock the game on those services instantly, something that was only offered after the fact in the first bundle. Humble Bundle 2 ended up an even larger success than the first, with ~$1 million going to developers alone, another ~$500,000 going to charities, and $133,000 as a "humble tip" which went to support the Humble Bundle as a business.
There were some unfortunate events that occurred post-launch. For example, some customers bought a thousand copies of the bundle at 1 cent per copy, apparently planning to resell the games elsewhere. Also, an estimated 25% of downloads were pirated directly from the Humble Bundle site itself (via shared CDN links), not even counting BitTorrent or other channels.
There were some other issues. After open sourcing Lugaru, a counterfeit version built from the open sourced code appeared on the Mac app store for 99 cents, significantly undercutting Wolfire's own offering of Lugaru HD in the same store, even coming in ahead of them in search because of the shorter name. Another problem (which I do not recall being publicized as much with the Humble Bundle as when it occured with e.g. Minecraft) is that Wolfire also encountered the same dreaded "account freeze" where PayPal placed their balance under hold for an undefined period of time. Wolfire's opinion is that while they were very satisfied with Amazon's payment system, and Google Checkout is at least good for merchants, despite PayPal's unpredictability it is virtually required to support because of how ubiquitous it is as a payment method.
In total, both bundles made $3 million dollars, of which $1 million went to charities such as the Electronic Frontier Foundation and Child's Play.
Welcome back to another year of the Game Developer's Conference! As we do every year, GameDev.net has descended upon GDC in San Francisco where the game industry comes together to learn, network with other developers, and discover new technology and ideas. Oh, and of course there's the parties. Everyone likes parties.
GDC is celebrating its 25th year with a lot of events happening over the course of the week. GameDev.net is going to cover as much as possible and provide you with the latest news, session coverage, tweets, and more over the next week. To help maximize our coverage and provide you the information you are most interested in finding, we've setup our GDC Coverage to include GDC-specific news from around the web, updates from our GDC Press Staff, photos, the GDC twitter feeds, and more.
If you're actually attending, then you may want to participate in our social game created specifically for GDC called "The Game". This is the one GDC social game you want to play as a GameDev.net member, and doing so gives you an opportunity to win some really cool prizes. The Game is about exploring GDC and making social connections by finding fellow players. Players earn points by "checking-in" at exhibitor booths, connecting with other players, finding scavenger items, and more.
The Game starts Wednesday morning when the Expo opens, so if you don't see anything about it by then you might want to stop by our booth #2323 to get the info. And if that's not enough to get your interest, we have a number of great prizes to giveaway to the top players in The Game, including video cards, a NeuroSky headset, gift cards, an OnLive subscription, conference passes, and more!
You can follow us on twitter at @gdevnet. The Game updates will be broadcast on twitter as well at @gdngame.
One final reminder that we have a booth on the Expo floor again! We're right across from the Career Pavilion in booth #2323 so stop by and say hello! Sorry, no shot glasses this year. But we might have some bonus points to give away for The Game!
Stay tuned for more coverage!