Double Buffered

A Programmer’s View of Game Design, Development, and Culture

GDC 2010: The AI of BioShock 2: Methods for Innovation and Iteration

Posted by Ben Zeigler on March 14, 2010

Here are my notes for the session The AI of BioShock 2: Methods for Innovation and Iteration presented by Kent Hudson at 2K Marin. Kent has a PDF of the presentation up on his site, with promised future annotation. The session didn’t go into much detail about specific AI details, but was a good overview of how the Little Sister and Brute enemies in BioShock 2 were designed. As always, these are my personal recollections and show what I got from the talk. Details may be incorrect and are my fault.

The Big Sister Wasn’t Fun

  • Initial design of the Big Sister was based on a traditional process: Concept -> Docs -> Prototype -> Production -> Polish/Find the fun.
  • Quality was high at the concept stage. Made sense within context of game, got people excited
  • A lot of time was spent on the Docs phase. Specifically documented each of the combat abilities in detail. At this point the designers got very very attached to their paper designs.
  • The prototype phase was very quick and only proved that it was technically feasible.
  • Production was scheduled very early because it was a key focus of the game and they wanted to get it right. Needed assets for other uses as well.
  • By the time they got to Find the Fun the Big Sister was very brittle. The individual actions worked, but it felt like a grab bag of attacks. There was no consistent combat rhythm. The Big Sister worked, but she wasn’t fun.

New Process for the Brute

  • Changed process for other major BioShock 2 enemy, the Brute. Concept -> Docs -> (Prototype <-> Iteration) <-> Production. No longer a linear process. Concept phase the same as before.
  • At Docs phase, did not get into as much detail. Docs only described the high level behavior. Went into more detail for the various tuning knobs that could be used to tweak and modify the behavior if the doc specifics didn’t work out. Also specified the work flow for the rest of the process.
  • Team built proxy animations (rough quick and ugly) to allow iteration on timing and speed. These proxies helped design AND animation because they quickly determined the initial body shape design wouldn’t work.
  • Got the prototype running in a real world environment as quickly as possible. Not possible to prototype in abstract world. Discovered need to modify world to accommodate behavior, as had to tag objects with weights to make object throw behavior look correct.
  • Opportunistic addition occurs when production and prototype are in a loop. If 80% of the work is done you can add something cool. For Brute, added an “object swat” on top of object throw that filled a gameplay hole and was very quick to implement.

Back to the Big Sister

  • Big Sister had very inconsistent behaviors. She felt essentially random. Using knowledge from Brute, added more tells and predictability. (Personal Aside: I played through BioShock 2 and the Big Sisters still felt very inconsistent and hard to read to me. The first version must have been more so)
  • Big Sister was fast… ish. The animations had been done but the Sister didn’t really feel that fast. Fixed this by hackily speeding up animations to convince art was possible. (Personal Aside: This was successful. The Big Sister felt impressively fast and very different then Big Daddies)
  • Opportunistic addition occurred with the addition of a “perch” attack where the Big Sister would jump off something, hit the floor, and stun nearby. Was based on work put in to make her faster that fell through because of lack of AI support late in project.
  • Summary: don’t over concept and over document. Prototype early and rigorously. Prove features are fun before production. Work iteratively as a group.

2 Responses to “GDC 2010: The AI of BioShock 2: Methods for Innovation and Iteration”

  1. […]  Subscribe in a reader « Ubisoft’s DRM… Bad Idea or Worst Idea? GDC 2010: The AI of BioShock 2: Methods for Innovation and Iteration […]

  2. Ben F said

    Personally I didn’t feel that I got that much out of this talk. I already believe in the “prototype early” idea wholeheartedly, so maybe they were just preaching to the choir. However, it was fun to see another example of that philosophy in action.

    I love the phrase “opportunistic addition”. I’ve noticed that in my own work quite a bit, so it’s nice to have words for it. 🙂

Sorry, the comment form is closed at this time.

%d bloggers like this: