lot of detail to work out and a lot of role-playing where, now if I shot the rope arrow at
the ceiling and climbed up, what’s the guard going to have to do to react and that kind of
thing. There was less of a need to set an overall high-concept direction onThiefbecause
the high concept was so clear. And soThiefwas a lot more about mechanics and sys-
tems and tuning and what parameters you need to tune, and how will you make it so the
guard can detect you and not look stupid but not detect you so well that you never win,
and so forth. Whereas on the other games it was more about setting the high-concept
goals, not just the low-level goals.
For a game likeThief, how do you balance the pure systems side of the game
with specific scripting?
The goal is certainly to minimize the scripting in something likeThief, because not only
does the scripting take forever, but it also means that you’re likely to have situations
where the AI reacts differently in different places, which is the death knell for a game
like that because the player can’t plan or understand and then nothing is repeatable and
then the player is driven insane. So inThiefthere were some places that had heavy
scripting, but they had more to do with playing out story events: “When this happens
you’re going to have to make these four AIs go over here because story-wise this event
happens.” So there’s some of that scripting but not a lot. We spent a while where we had
some fairly sophisticated scripting systems, but it was fairly complicated and really no
one but the programmers ever used it. And then Tom Leonard, who was our main AI
guy, took the key elements of the scripting stuff you wanted to do with the AIs and built
this pseudo-script interface which was this Mad Lib-like Windows dialog where you
could say, “Oh, on these sort of messages or these sort of events, do these sort of things
and go to this object or figure out what’s on the other side of this link and go over there
or try to grab that thing.” And as soon as Tom did that, designers were doing a lot more
improvisation and a lot more “Oh, I want this specific AI when this alarm goes off to go
over here and then say this thing.” So they would script a lot of the reacting to major
events. That said, the minute-to-minute play was almost all systems-based, where the
lead designers would go and decide how the vision cone works and how sensitive the
guy was and how likely he was to fight or run for help or whatever. The designers would
place some waypoints and say, “Well, you should go to the kitchen, and then you should
go to the upstairs hall, and then stand around the staircase for a couple of minutes and
then go back to the kitchen” or whatever. But all the actual moving and detecting and
turning and all the detail of the AI and when they detected you and what they do when
they did was all pretty much sense systems and generic code.
Did you need to enforce a rule with the design team about how much or how
little to script?
I think everyone got it pretty well. Most of the time the scripting was just for the story
stuff as I said. I think everyone got the idea that it was going to be systems-y just
because it was clear that so much of the game was going to depend on you getting a vis-
ceral sense of how the AI behaved so that you could then elude them. And everyone
knew that meant they had to be pretty repeatable and systems-based. And so for the
designers it was a lot more about building spaces where you had good lines of sight
520 Chapter 26: Interview: Doug Church