GDC 2012 Talk on Dynamic Dialogue

One of the more interesting GDC talks I saw was a Friday afternoon presentation by Elan Ruskin, talking about how dialogue snippets are matched to a continually changing world state in Left 4 Dead 2 and other Valve games.

It’s a neat rule-based system, designed to meet a couple of specific important requirements: easy for the writers to author a lot of content, responsive to a wide variety of different situations (what if we want a character to have a special quip if attacked while in the circus environment as opposed to elsewhere?), interruptible (characters should be able to exchange quips, but should sensibly break off if one of them comes under attack). Like Inform, it prioritizes rules and applies the most specific one it can find, using less-specific ones as fall-backs.

The resulting system is very well tuned to the specific case of having NPC dialogue that’s highly reactive. Characters aren’t planning or trying to achieve goals via dialogue, but they present a strong illusion of situational awareness, which is what those games require. (And there’s often a place for purely reactive NPC quips in IF, too.)

The talk also goes over a number of optimization strategies for speeding the lookup on these sorts of tasks, and argues for the importance of making tools that writers find comfortable to use. Solid stuff, both technically and in terms of project planning.

Elan has posted the slides and video here.

(Bonus: there’s a shout-out to Inform in the middle.)

4 thoughts on “GDC 2012 Talk on Dynamic Dialogue”

  1. Hi,

    Interesting talk, funny how you discover these things I’ve been working on this area for about a decade, started with my degree in South Africa. Though when I finished my degree in the UK I did a dissertation on part of it. Availible here: https://docs.google.com/document/d/1uxffH9h2Rt0_yhAmV27gZ3LHvDilgNLPFwiScy6v-i4/edit

    I’m still working on it because I want to do an Masters or MPhil on the subject. Need to compile the last two years research. Anyway. Thanks for pointing it out, or I would have completely missed this great talk.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

%d bloggers like this: