Musings On Game Engine Structure and Design



What It's All About

Who Is This Guy?

The List

Complete Archive


RSS Feed




GDC 2007

By Kyle Wilson
Tuesday, March 13, 2007

It's Game Developers Conference season again.  How time flies.  This year's GDC continued last year's trends:  Even more women.  Even more grown-ups.  Even more developers from overseas.  The show was more crowded than I've ever seen it.  Attendance was probably somewhere between 13,000 and 15,000.  That's a couple thousand more than filled Arrowhead Pond to watch welterweight champ Matt Hughes finish BJ Penn at UFC 63.  I saw as many people during the GDC tutorial days as I've ever seen during the regular session before.  The event has stopped feeling like something one person can keep track of.  It now feels like SIGGRAPH, like there are a dozen different things going on at once, of which you can only stay aware of three or four and only actually attend one.

The GDC administration hasn't handled this growth particularly well.  They deserve credit for the things have gotten better this year:  far fewer talks were too full to get into, and production of the audio proceedings has been switched to a new company that promises CDs in weeks, rather than months.  But the food is still terrible.  (And the portions so small!)  The proceedings are still non-existent.  Slides didn't even become available on-line until the middle of the day on Thursday, four days into the conference, and as I write this slides are still only available for 50 out of nearly 480 talks.  That just makes the whole industry look embarrassingly unprofessional.  And even when those slides did go up, they were inaccessible from the conference itself, where the wireless Internet connection broke completely under the attendees' bandwidth load.

The men's restrooms at GDC are unspeakably vile.  And making automatic flush toilets without some kind of manual override for when the sensor breaks ought to be a crime.

I'm not sure why CMP, the company that puts on GDC, keeps growing the conference by folding in other conferences like GDC Mobile or the Serious Games Summit.  Everything I know about conference management--which is, I admit, one blog entry--tells me that inverse economies of scale just make the whole event more expensive and less convenient for everyone when you blow up to that many people.  Certainly GDC seems to keep getting more expensive for the attendees.  Assuming 14,000 attendees spending an average of $1400 for passes this year, that's a gross of $19,600,000, or enough money for CMP to produce about one-and-a-third blockbuster console titles.

I went out early and caught the tutorials on agile and large-scale development.  Every game company seems to be doing something it calls Scrum now, but in most cases the process seems to bear little resemblance to the descriptions on Wikipedia.  Epic, for example has their core engine team doing "Scrum"... but without product owners, burndown charts, or daily stand-up meetings.  (In the interest of full disclosure, Day 1's level teams are also practicing a variant of Scrum that lacks most of these things.)  Bioware Austin is doing Scrum on the programming side, but since game code and content are so closely linked, they're having issues synchronizing their sprints with a traditionally-managed art team.  High Moon, the game company most closely identified with agile development, provided most of the speakers for the agile development tutorial, and certainly seems to be trying hardest to do proper Scrum and Extreme Programming by the book, to the extent of bringing in certified ScrumMasters to coach.  It'll be very interesting to see how High Moon's next game does, because I suspect that the hipness of agile methods in our industry will explode if it's a hit and collapse if it's a failure.

Game Publisher's Rant

The conference center really filled up on Wednesday with the start of the regular session.  I decided to wake up with the Game Publisher's Rant:

  • Alex St. John, of WildTangent, was angry that Windows Vista has broken old casual games, yet still allows spyware to run.
  • Richard Hilleman of EA said the industry has a crisis of leadership.  I was a little vague about exactly what change he was hoping to effect.
  • Nichol Bradford, from Vivendi Universal, thought games should motivate young people to learn about science and math.  I think games are better at teaching young people about different space aliens, and what color their blood is (usually fluorescent green), but I'd be happy to be proven wrong.
  • It couldn't be all publishers, so Chris Hecker got up to give a developer's perspective.  He called out Nintendo for deriding the idea that games can be art and for giving us a Wii that lacks the CPU power to create decent gameplay.  That was great fun.  I love Chris Hecker.  He's like an angry, profane Will Wright.  He promised to storm the stage at Miyamoto's keynote the next day.
  • Lee Jacobson, from business development at Midway, presented a wonderful collection of short anecdotes about the dishonest developers with whom he'd dealt, and the lies they'd told to him and to their own employees.  At the next GDC, I hope he gets a full hour session.  If only he could be persuaded to name names!
  • Finally Greg Costikyan got up to rant.  A couple of years ago, he was a developer ranting about publishers, but now he's CEO of Manifesto Games, a tiny publisher for tiny independent games, so he needs a new target.  He's elected to aim his sights on the console manufacturers.  Nintendo got singled out for particular ire for starting the modern closed-market console business model with the NES.  But Microsoft, too, gets its share of anger, because Xbox Live Arcade, which seems to be about opening the market to a wider developer base, really--in Costikyan's words--"points the way to our future serfdom."  Streaming games to consoles squeezes the retailers and traditional publishers out of the distribution chain and leaves console manufacturers as vertically-integrated monopolies, controlling the "only means of distribution" to their consoles.

Sony Keynote

On that grim note, I wandered across the street to catch the keynote address by Phil Harrison of Sony.  Now, I owe Harrison an apology.  Last GDC I wrote regarding his keynote that he "Claims all TCR-compliant PS2 games will be backward-compatible w/PS3.  Likely bullshit."  I had good reasons for thinking this:  PS2 chips are expensive and software emulation of a PS2 on a PS3 would be significantly more of a challenge than Microsoft's halfway-there support for backwards compatibility on an Xbox was.  But I was wrong.  As it turned out, Sony was generous enough to include PS2 hardware in every PS3 and, as an American, I'm obligated to step up and tell Phil Harrison I'm sorry.

Harrison's fellow Europeans, admittedly, may still be a little bit miffed.  But even there, the situation is much better than I would have expected.  European PS3s still include a PS2 graphics processor and only do software emulation of the PS2 CPU.  That gives them much broader support for backwards compatibility than the Xbox 360 has.

When Harrison walked onstage for his keynote, he looked about ten years older this year than he did the last time I saw him.  I'm not sure whether he looked older because of the stress of the last year or because he was on a thirty-foot high HD screen this time, and that much resolution is unkind to all of us.  You can't have a GDC talk without a PowerPoint presentation to start things off, but Phil Harrison and Shigeru Miyamoto both did it the hard way, exporting their PowerPoint slides to image format so that each could scroll through his presentation on his own company's console.

Harrison started by talking about Time magazine's You! person-of-the-year cover, which he described as a "pivotal moment in the history of the Internet."  As Internet moments go, I'd probably rank that one between the net's invention by Al Gore and its being described as "a series of tubes" by Ted Stevens, but that's okay because Harrison had already moved on to "Web 2.0".  I was too busy scribbling notes to catch it, but he just used that to segue into how we're now in Game 3.0, which is the title of his talk.  Apparently the generations of "game" are:

  • Game 1.0 -- disconnected console, static game content
  • Game 2.0 -- connected console, static game content
  • Game 3.0 -- connected console, dynamic game content

I should take a time-out here to observe that user-created content is this GDC's new hot thing, even bigger than Scrum.  This isn't the result of any sudden upwelling of democratic warm feeling on the part of the game industry, but rather the stark terror that developers and publishers feel when they look at the skyrocketing costs of content creation at the level of fidelity expected on the PS3 and Xbox 360.  Fifteen- to twenty-million dollar budgets for current-generation console titles are common now, and we're selling those titles to a much smaller install base than we'd get if we developed for the PS2 or the original Xbox.  By the start of the next console generation, those costs will have doubled.  Each new console generation is to developers what the Chicxulub meteor was to the dinosaurs, and everybody's looking for an ecological niche in which to survive.

Back to Phil Harrison's talk.  He next put up a slide of "associations" with Game 3.0, which included the scattered words "social, community, content creation, localisation, extensible, collaborative, creativity, customization, iterative, emergent entertainment, user behavior, commerce, audience-driven, service, open, localization"... wait a minute:  Localization twice, spelled differently? 

But he'd already moved on to his demo of PS3 Home, Sony's version of Second Life.  At least that's the comparison everyone else is making.  I've never played Second Life, so to me it looked exactly like Myst Online, or Uru, or Parable as we were calling it back when I worked on it at Cyan seven years ago.  Each player has a private space, which he can decorate with items he's earned and to which he can invite his friends.  Check.  Shared public spaces with embedded casual games like pool and bowling.  Check.  Extensive avatar customization, so that you can make your in-game avatar look just the way you look in real life.  Check.  Voice chat.  Check.  There were dynamic ads everywhere in the demo Harrison showed, though, which seems a little annoying, and it's pretty obvious that Sony's business model here is to get people to pay real money for virtual things.

Harrison next demoed "SingStar," which he said we were "probably very familiar with."  Nope.  It looks like some kind of karaoke game.  The demonstrated on-line functionality has more songs for download, shows what songs friends are currently singing, and lets you upload videos of your own performances.  Harrison showed background downloading while browsing more Singstar content, but I'm not sure if that's for all server downloads and games, or if it's implemented just for Singstar.

Finally Media Molecule, the developers of LittleBigPlanet, came out to give a long demo of their game.  They're the guys who made Ragdoll Kung Fu.  LittleBigPlanet is a side scroller like an old NES game, but with modern graphics and real-time physical simulation.  LittleBigPlanet is all about the user-created content.  The player creates his own world using procedural content generation, materials and extrusion.  Phil Harrison and the Media Molecule guys played through a level, which seemed to leave the other 4999 people in the room more impressed than me.  I'm not the audience for Home, or SingStar, or LittleBigPlanet.  I'm not looking for a virtual world to live in, or a toy to play with, or a game I'm supposed to create content for.  Those things are all too much like what I do for a living.  When I play a game, I want something like Half Life 2 where I don't have to be innovative or creative, where I just have to apply my twitch skills to move from one polished experience to the next, enjoying the fruits of someone else's creativity and innovation.  For that experience, I might be willing to pay $500 for a console.  But I'm not sure that the casual gamer/virtual chat room crowd is willing to pay that much for on-line chatting and virtual playrooms.

Monolith:  F.E.A.R. and The Condemned

One of the most interesting talks I went to at GDC was "Creating and Extending Original Franchises" by Samantha Ryan and Matt Allen of Monolith.  My employer, Day 1 Studios, has a relationship with Monolith, since we've ported Monolith's F.E.A.R. to the Xbox 360 and PlayStation 3.  I haven't been involved with those projects, though, so I've never had any contact with Monolith directly.  I have enjoyed their games, and I've been impressed by Samantha Ryan's past talks at GDC.  She seems like an eminently sensible woman who steers her company with an uncommon mix of intelligence and humility.  She reminds me of Ray Muzyka of Bioware.

Her talk this year centered around the process by which F.E.A.R. and The Condemned were developed.  The designs of both games arose out of an attempt to correct Monolith's historic shortcomings.  Two key observations were that Monolith had made many critically-acclaimed titles like No One Lives Forever and Tron that ended up with disappointing sales, and that Monolith had made a lot of first-person shooters with very different settings and storylines, which made it difficult to share art, technology, or knowledge across game teams.

In response, the company set out to take control of their own intellectual property, to make sure that IP had a wide appeal, and to plan better to share tools and assets across all teams.  They decided to continue making first-person shooters, because that's where their core competency as a company lay.  But they tried to make two games that were as different as possible in actual gameplay--one a fast-paced survival horror shooter, the other a melee-combat police procedural--that used the same tools, engine, and designer skills.

Monolith places a lot of emphasis on market research, and actually employs a full-time Director of Market Research, which is rare for an independent developer with only 130 employees.  They brought in outside testers to try out their gameplay prototypes early in the development of both F.E.A.R. and The Condemned.  Monolith seems to use outside testers in much the way Valve described for Half Life 2 at their GDC presentation last year.  They recruit through local game stores and colleges for volunteers.  Players are brought in to play games in a test lab run by the Director of Market Research.  Ryan specifically recommended against focus-group testing, which she described as a good way to learn the opinion of the most outspoken person in a group.

Ryan then showed footage from the gameplay prototype for F.E.A.R., recorded eight months into its three-year development.  The game looked remarkably similar to the product that actually shipped, but with some key differences.  The developers learned from testing that players responded positively to environmental destruction, decals and smoke effects, so these are all more prominent in the final product.  The primary antagonist in the game was at that point a malevolent "force", but players and team members responded positively to Alma (the creepy little girl in all the F.E.A.R. marketing), so she was given a leading role in the final story.  Ryan observed that the story elements in F.E.A.R. were not tested on outside players.  Not coincidentally, the game got dinged in reviews for having a plot that felt "bolted on."

Next, she showed footage of gameplay prototype tests for The Condemned, recorded six or seven months into the game's two-year development.  Again, the footage looked very similar to the game that actually shipped.  The footage shown demonstrated gunplay and melee combat that were essentially unchanged from what we saw in the final game.  The footage also showed the player using what Ryan called "sonics."  (I think she meant psionics, but is too cool to keep her geek terminology straight.)  That element ended up being cut because testing revealed that it didn't mesh with the gritty-and-realistic FBI-procedural tone of the rest of the game.  Again, The Condemned ended up being criticized in reviews for one element that wasn't tested up front:  the forensic system through which the player is called upon to examine crime scenes, CSI-style.

Monolith's environmental art direction for F.E.A.R. and The Condemned was very unusual.  The company employs no full-time concept artists.  Instead, since they were making photorealistic games set in modern real-world environments, they hired a movie location scout.  The location scout identified good possible sites in the Seattle area based on Monolith's descriptions.  Once they'd settled on the settings they wanted, Monolith would send out a team to record what they could about each location.  They took digital cameras, tons of memory, portable lights, video recorders, audio recorders and laptops with fast memory card readers.  The on-location crew comprised level designers, environmental artists and the audio designer.  The location crew was responsible for capturing real-world texture references of everything found on-site.  After the site visit, designers and artists would begin prototyping areas using the captured images.  They'd also identify objects from the location that would need to be modeled to make space feel real.

Concurrency in Saints Row

I'm responsible for the job queue system that Day 1 is using in its current-generation games, so I was particularly interested in Randall Turner's talk about the job scheduling system used in Saints Row.  Multithreading was the third big theme at GDC this year, along with Scrum and user-created content.  Writing code that can take advantage of multiple processors is a sad necessity for anyone developing console games today.  Unfortunately, most scientific computing multiprocessor research is about maximizing throughput.  Game development, on the other hand, is about minimizing latency.  Having hardware with as many TeraFLOPS as God doesn't matter if you can't get the results you've computed to the processor that needs them fast enough.  That means that we're all in the early days of a new field, trying to learn how to write a new kind of code for the first time.  It's an exciting time.

Saints Row (which really seems like it ought to have an apostrophe in the name somewhere) initially tried pipelining their simulation and render phases.  That didn't provide enough speed-up, though, and there weren't any more "natural" separation points along which to pipeline the game more deeply.  But the Xbox 360 has six hardware threads, so the Saints Row team needed to figure out some way to offload more work to the other processors.  They ended up switching to a scheduler/job model.  Each job is an independently scheduled entity that has no dependencies on other jobs and is atomic with respect to other jobs.  Essentially it's a function/data pair.  To create jobs, the developers extracted parallelism from loops and separated out small tasks to guarantee that they interacted with the rest of the game in a thread-safe way.  In some cases this meant segregating memory accesses between threads.  Other systems used double-buffering or critical sections.

The game runs worker threads, one per hardware thread, which draw jobs from job queues.  The game still has a pipelined sim/render split, and both the sim and render threads add jobs to the job queues.  Queues have a bias toward sim or render, which is changed over the course of a frame to match the shifting load.

For more details, have a look at the slides, at  They include captures from the Xbox PIX tool which show per-thread timelines for each of the Xbox 360's six hardware threads.  Those are definitely slides worth well over a thousand words; PIX is the God Tool of console development, giving Xbox 360 developers the view of a frame from a thousand feet up and then letting them drill down into specific details to improve performance and fix bugs.  I hope that more developers will share information about how their games run at that level of detail.

Nintendo Keynote

The Nintendo keynote speech was given by Shigeru Miyamoto, the designer of Donkey Kong, Super Mario Bros., The Legend of Zelda and most of the sequels to the same.  The man is a legend, and is possibly the only figure in the game industry more universally venerated than Will Wright (who created SimCity, The Sims and the upcoming Spore, but you should already know that).  Who, among the fifteen thousand game developers at GDC, wouldn't want to hear him speak?

His speech was scheduled for the Esplanade Ballroom in the Moscone Convention Center's South Hall.  The ballroom is 126,000 square feet.  That's a little over twice the size of the hangar that the National Air and Space Museum keeps its space shuttle in.  Theater-style seating takes about seven square feet per person.  Add in a couple square feet more for aisle space and the ballroom should have had room for just about 15,000 people.

The keynote was scheduled to start at 10:30 a.m.  I walked across the street and got in line at 10:20, and was surprised that the end of the line was near the front door.  Then I spent forty minutes following the line as it snaked forward... then back away... around the entire block.  I finally got to the front door at 11:00, where I discovered the line was still single file, with conference assistants checking one person's badge at a time to see if they were allowed in.  The CAs wore fluorescent green shirts this year, the more easily to be seen, I guess.  They turned away the guy in front of me for only having an expo pass, which he accepted with a good deal more equanimity than I would have.  I was irritated enough at the inefficiency of the whole process as I strolled in through the vast empty lobby.

The ballroom was packed.  I ended up standing against the back wall with a few hundred other poor latecomers.  And I'd entered just in time, because a few moments later, a tiny Miyamoto got up on stage a hundred yards in front of me and started to speak.  He was about as tall as my pinky is wide, if I hold my arm all the way out in front of me.  Here, I took a picture:

Tiny Miyamoto

Last year, Nintendo President Satoru Iwata gave a talk that was completely enchanting.  He mixed jokes and company history with demos and product announcements and when he finished with a promise to show new gamers that video games should be, above all, "Fun for everyone!" he left everyone in the audience feeling like a kid again.

Miyamoto mixed jokes and company history, too, but it never quite seemed to connect.  He quipped about his efforts to get his wife to play the games he made, which was funny but not especially substantive.  He tied that into Nintendo's other efforts to reach a broader audience among people who don't traditionally play games like... a multimedia museum in Japan that the company sponsored?  That was kind of a stretch.  He showed a lot of slides of people, male and female, young and old, playing Wii games with rapturous expressions on their faces.

But my feet were getting sore from standing, and there wasn't really any payoff to the talk.  Miyamoto's jokes about maxing out the "wife-o-meter" aren't going to help me make better games and I'm not sure there's anyone in America who cares about Nintendo's multimedia poetry museum.  By the time noon rolled around, I was ready to follow Chris Hecker if he followed through with his promise to storm the stage.  But it didn't happen, so instead I joined the stream of people heading for the exit before Miyamoto had even finished.  We had a Peter Molyneux pitch to go to.

Peter Molyneux, Fable 2

Peter Molyneux is the game industry's greatest showman.  He's like a 19th-century sideshow huckster selling sweet magic oil to cure all that ails you because he knows you're hurting and he knows it's hard to believe, but the oil cured him and it'll cure you, too, and he's so charismatic and so sincere that you want to believe him in spite of yourself.  He's admitted to making up features on the spot when he's giving presentations about upcoming games, assuming that his staff of geniuses at Lionhead can get them implemented before the game actually makes it to market.  And I bet they could implement any feature he promises.  They just can't implement all of them.

Molyneux makes me feel sorry for Microsoft, which is a rare thing.  He strung them along with promises for four years of development on Fable... and then it went and became a smash hit, the best-selling title on the console after Halo, Halo 2 and Splinter Cell.  Microsoft ended up buying Lionhead (or just owning the company in spite of itself because of the debts incurred by Fable's schedule slippage), so now they're married to Peter Molyneux as he and his team try to put together Fable 2.

It was a decidedly abashed Peter Molyneux who started this session.  He apologized for his past record of promising features that he's made up on the spot.  He observed that Fable was very successful, and had sold about three million units.  (3 million * $50/each = $150 million... a little less than the box-office gross of 300.)  Lionhead tried to go about planning for the sequel in professional fashion.  They did surveys of Fable players, and focus group studies, and tried to do more of what people like.  They put together a shopping list:

  • Play as male or female
  • More weapons
  • Guns
  • More clothes
  • Bigger/better magic
  • Bigger world (x10... no, x20... no, x30!)
  • More detailed world
  • More creatures
  • Free roaming

But--and here Molyneux started to come alive--Lionhead exists to innovate.  They want to create Wow! moments.  They want the player to experience emotions.  Fable 2 has sex.  The player can have relationships with non-player characters of the opposite sex.  "Or," Molyneux observed, "with members of the same sex if you're into that sort of thing."  If I'm into that sort of thing?  Oh, if only I had a nickel for every time a middle-aged English bachelor with a flair for the theatrical asked if I might possibly be gay.

If you have a relationship with a member of the opposite sex in Fable 2, you can have kids that look like your character.  If your character is evil, your kids will be nasty little buggers.  If your character is good, your kids will be little angels.  When you come back from a mission, they'll run up to you and hug you and tell you what a wonderful job you've done.

Fable 2 also adds a companion who's with you throughout the game.  Fable 2, Molyneux promised, has three big unique innovations.  Two are still secret (though Molyneux hinted at the end of his talk that one might be co-op multiplayer).  The third is a dog, and Molyneux's demo of playing with a virtual dog made up the heart of his talk.  The dog fights your enemies, fetches things you throw, runs ahead of you and looks back to see which way you're going... the verisimilitude is amazing.  There's a video of the demo on Youtube.  Give it a play.

Saints Row's Open World

I've written a little bit about how streaming in an open-world style game might work, but that was mostly guesswork.  The makers of Grand Theft Auto and Mercenaries never talked about the technology behind their games, so my friends and I wondered and we guessed, but we couldn't know.

So I was absolutely fascinated by the second Saints Row talk I went to, which was an overview of how they created their GTA-style open world.  The game had a long development cycle, starting on the PC and moving to Xbox 360 alpha kits, then final hardware as it became available.  Their world is about the same size as the world in GTA Vice City.  The team knew they'd have to have more gameplay per square foot to stay competitive with GTA San Andreas.

They also wanted to take advantage of the power of the new generation of consoles.  They targeted no fog, long view distances, Havok physics, more enterable buildings, more detail, and no duplication of city blocks.

They did level design in 3D Studio Max.  They laid out neighborhoods, subdivided them into sub-neighborhoods, and created an elevation map.  Each artist worked on one neighborhood.  The neighborhood was first conceived as a 2D top-down sketch with points of interest marked and buildings and sidewalks laid out.  Roads were created automatically using a tool to generate roads from spline curves.  This ensured that roads had a fixed dimension (instead of widening and narrowing according to the whim of the artist working on a particular neighborhood).

For streaming, the world was broken into irregular chunks, like a big top-down jigsaw puzzle.  I'd guessed that open-world games subdivided on a regular grid (though there are shading artifacts in the GTA games along what I take to be chunk boundaries that suggested this might not be the case).  I was wrong.  Saints Row keeps two chunks in memory at a time.  Each chunk is surrounded by a trigger volume in the shape of the chunk's convex hull, inflated.  When the player hits the trigger volume, the chunk starts streaming in.  Because the game only supports having two chunks loaded at once, areas where three trigger volumes overlap have to be made unreachable (by being blocked with a large skyscraper, for example).  A chunkified low-detail representation of the city was always loaded in memory.  As a high-resolution chunk finished streaming in, the corresponding low-resolution equivalent would be disabled and the high-resolution chunk would start rendering in its place.

Unlike the GTA games, Saints Row had streaming interiors.  An 8 MB pool was kept available for the nearest building interior.  As the player neared an enterable building, the interior would stream in from disk.  The designers avoided letting one interior have line-of-sight to another.

The level memory breakdown looked like this:

  • Chunks - 55 MB * 2
  • Interior - 8 MB
  • Always loaded low-resolution representation - 76 MB
  • Miscellaneous permanently loaded textures - 11 MB
  • Total - 205 MB

The rest of the talk was more production oriented, describing how the scale of the game was cut and cut again to try to make the milestones that the team kept missing.  Unique art was cut to make chunks fit in memory.  Obstacles were placed throughout the world to slow the player down so he couldn't reach chunks before they finished loading.  And in a desperate attempt to get the game running at framerate, the developers implemented a PVS (Potentially Visible Set) culling algorithm that would determine the geometry visible from each part of the world by doing random sampling on it, rendering frames from random positions as an automated process run on a farm of Xbox 360 Dev Kits.  Amazing!

Autobiography of fl0w

The last talk that I took notes on was the talk about the development of fl0w.  Fl0w is a couple-of-sweet-kids-hit-it-big success story of the sort they'd make movies about, if developing computer games was something that actually looked exciting on screen.  The game was originally a Flash game written by a USC grad student which got signed by Sony for the PlayStation 3.  The game's author, Jenova Chen, has started his own company and is trying to make games that break the standard FPS/RTS mold.

I've played fl0w, and I confess, I don't get it.  There's no thrill of the hunt, there's no building stuff, and there's not really any exciting breaking of stuff.  But industry veterans are a cynical bunch, and I wanted to take a break from all that, so I went to hear Jenova and friends--who were about twelve when I got my first game industry job--talk about how fl0w happened.

My first thought on walking into the room was, God, they all look so young.  And happy.  There were lots of women in the audience.  Maybe as many as 10%!  I felt like I'd escaped from an Advanced Infantry Training barracks into a seraglio.  There was a woman two rows in front of me who was knitting!  She was wearing pink!  Awesome.

Jenova Chen started off.  He and his business partner Kellee Santiago come out of Interactive Media program at USC.  Their motivation was to contribute to the field, and expand the audience for games.  They saw two possible ways to expand the audience:  they could make McDonald's cuisine that everyone eats.  Or make KFC, with many varieties that appeal to different audiences.  They considered whether they wanted a game that would do dynamic difficulty adjustment, becoming easier or harder as appropriate?  But it's kind of intimidating if those decisions are made by computer.  Instead, it's preferable to have players control the level of challenge, customizing the experience themselves.  That's the mechanics of the fl0w.  In a sense, GTA3 has a similar mechanism.  Players can choose harder quests or easier quests.  But the taste of the game is something different.  They could have made a game that was tense and competitive, but instead chose to go in a more relaxing direction.

Kellee took over the presentation.  They wanted to go in a new direction.  They wanted to create their dream jobs instead of taking entry-level positions and working their way up in the industry.  They wanted to create a place where graduates of new game programs could come, innovate and develop in an encouraging environment.  They wanted to broaden the kinds of games that get made, making games as entertainment, not product.  And they wanted work on short projects with small teams and lots of experimentation.

They had all these grand dreams, but no money.  So where to begin?  They pitched publishers from March to June of 2006.  At the time, the game they were pitching was Cloud.  Cloud had achieved lots of Internet fame.  The Internet is a great way to achieve some fame starting from nothing.  But Cloud was too big and complicated.  Instead, they eventually opted to pitch flOw for the PS3 and the Wii.  They had offers from Sony and Nintendo, and ended up with Sony because the timing worked out better.  They were funded by the PlayStation 3, developing for that platform, starting June 26, 2006.  Their goals were to build a company, build next-gen skills, and make a good game.

John Edwards--not the one running for President--took over the story.  While Jenova and Kellee were pitching Cloud, he was living at home after graduating from college.  They called him and offered him a job.  He moved from Seattle to Santa Monica to start working on next-gen flOw.  Giddy joy at having a programming job lasted about two months, until the 2006 Tokyo Game Show.  Then life turned into lots of crunch and debugging hell.

In the end, the Tokyo Game Show went well.  Afterwards, fl0w was the fourth most talked-about game on Gamespot.  But the development hell of integration and testing before show was a loss of innocence.  The team realized there was no way they were going to ship in two more months at PlayStation 3 launch.  They ended up pushing out deadline by two weeks.  Again, and again, and again (in what we cynical jaded devs call a "Death Sprint").  Until the game finally came out, and was pretty successful.  The end!

Lessons learned:

  • Being embedded at Sony Santa Monica, the fl0w programmers probably would have benefited from talking to the really bright programmers who work for Sony.  (The fl0w team's little start-up--thatgamecompany--is "incubating" at Sony Santa Monica, working out of Sony's offices until they grow large enough to leave the nest.)
  • It's interesting to observe the frequency of source control check-ins for creatures.  Most taper off at the end, but the hardest creature keeps going full pace until ship.
  • Another interesting graph is the chart of lines of code over time.  The chart levels off after each attempted "deadline".  People kill themselves trying to make the ship date, then are exhausted and unproductive until they can recover enough to try it again.
  • The game ended up being 50% under features and 100% over schedule.  (The team admitted that this was embarrassing.)  They neglected to hire new employees because they were always too busy!
  • The PlayStation 3 is a powerful but difficult platform.  The fl0w team didn't respect the hardware enough.  They tried to do everything on the primary processor, the PPU, ignoring memory, performance issues, and the ancillary SPUs.  They had to spend months optimizing at the end.  But Sony was great, and gave them lots of support.

Jenova took over again.  What's next?  flOw was the #1 downloadable game on PS3.  They're not working on "God of Flow II", but they are working on next game, which is another small, deep, unique emotional experience.

The talk was great, a wonderful Will Wright-style mix of conversation and well-timed slides that complemented each other instead of repeating one another.  I'm not sure if thatgamecompany will ever make a game that I want to play, but I'm glad they're out there and I hope they do well.

Any opinions expressed herein are in no way representative of those of my employers.