In the absence of any user intervention, this
mechanism will produce a variety of plot
instantiations. At the same time, user inter-
action can interfere with the characters’plans
(for example, causing action failure) and trig-
ger a replanning that varies the plot.
In our system prototype, we modeled the
graphic environment using the game’s level
editor and modeled additional objects using
3d studio max and textures from several
online resources. We imported the characters
from online repositories (Brian Collins cre-
ated the Ross character, “Austin” created
Rachel, and Roger Bacon created Phoebe
and Monica). We implemented the AI layer
in C++ and integrated it in Unreal as a set of
dynamic link libraries. UnrealScript defines
all the functions that interface with Unreal’s
events—that is, those functions dealing with
object interactions. We also fully integrated
communication into Unreal using a speech
recognition system (Babel Technologies’
Automatic Speech Recognition (ASR) soft-
ware development kit).
Planning techniques for
character performance
A wide range of AI techniques has been
proposed to support interactive storytelling
systems, including planning techniques
1,2,4,5
and techniques for augmented truth-mainte-
nance systems.
3
The technique used often
depends on the interactive storytelling para-
digm being implemented. However, there is
no direct correlation between a given AI tech-
nique and a storytelling paradigm. For
instance,Young has used planning to control
the narrative rather than just the behavior of
individual autonomous characters;
2
William
Swartout and his colleagues have used plan-
ning for autonomous characters, but they also
rely on causal narrative representations.
5
We are mainly interested in the emergence
of story variants from the interaction of
autonomous actors, so our emphasis has been
on the actors’behavior rather than on explicit
plot representation or narrative control. Char-
acter-based systems provide a unified prin-
ciple for story generation and interactivity.
As such, they allow anytime interaction,
whereas plot-based systems tend to restrict
user intervention to selected key points in the
plot representation. However, we still needed
our planning formalism to accommodate the
authoring aspects of the baseline narrative.
These knowledge-representation require-
ments led us to investigate planning tech-
niques that we could use in knowledge-inten-
sive domains, and we eventually opted for
Hierarchical Task Networks planning.
6
We
picked HTN planning because it is generally
considered appropriate for knowledge-rich
domains, which can provide domain-specific
knowledge to assist the planning process.
7
It
also appeared that we could naturally repre-
sent the characters’ roles, which serve as a
basis for our narrative descriptions, as HTNs
in which the main characters’goals are decom-
posed into alternative actions.
Hierarchical Task Networks
A single HTN corresponds to several pos-
sible decompositions for the main task—in
other words, we can view HTNs as an implicit
representation for the set of possible solutions.
8
In the present context, each ordered decom-
position constitutes the basis for a character’s
plan, and each HTN associated with an artifi-
cial actor contains the set of all possible roles
for that character across story instantiations.
Although the set of all roles is sufficient,
the set of story instantiations is at least an
order of magnitude larger, because the story
is composed of situations that are the cross-
product of the actors’roles. This also provides
a principled fashion for authoring these story
variants, because that goal node in the net-
work can subsume several ways of solving a
narrative goal. For instance, if Ross needs to
talk to Rachel in private, he can isolate Rachel
from her friends by calling her aside, attract-
ing her attention, asking her friends to leave,
and so forth. This makes it easy to refine
potential variants by adding extra options at
authoring time. As representations, HTNs can
capture essential properties of a character’s
role through the actions the agent takes
toward its goals and the choices it faces.
There is a further need to categorize these
actions according to narrative criteria. These
categories should represent properties bear-
ing relevance for intercharacter relationships,
which we can match to the various actors’
personalities. For instance, actions targeting
other actors can be classified as “friendly,”
“rude,” and so forth. If, when faced with the
task of talking to Rachel in private, Ross inter-
rupts her previous conversation and sends her
friends away, we would tag the corresponding
option in the HTN as “rude.” In a similar fash-
ion, we can categorize single actors’occupa-
tions according to their degree of sociabil-
ity—for example, “lonely” or “sociable.”
To some extent, these categories are part of
an ontology of intercharacter relationships and
can help determine how other characters will
react to the actions taken. Intercharacter rela-
tionships, although obviously important in a
Friends context, are a generic problem in
interactive storytelling. The contents of the
HTN are determined by considering each
actors’ role in the baseline story in isolation.
These roles can be refined by providing addi-
tional options (this refine process is naturally
supported by the HTN formalism). The search
mechanisms associated with HTN planning
also makes them a useful tool for debugging.
Because HTNs are searched from the root
node, which is also the main goal, it is easier
to gain access to the corresponding state of the
world. One additional reason for selecting
HTNs as a formalism is that their graphic
nature seems more supportive of the authoring
phase than STRIPS-like planning formalisms.
However, we have not yet been able to test this
assumption with professional scriptwriters.
Figure 1 gives an overview of a typical
HTN for a character. Pre- and postconditions
for the various tasks (not explicitly repre-
sented in the figure) are associated with each
task node. Preconditions for the lowest-level
operators are constituted by the conjunction
of executability conditions for their associ-
ated terminal actions (those actually acted in
the 3D environment). For instance, if Ross
wants to read information from Rachel’s
diary, the diary should be at its initial loca-
tion, not in use by another agent or near any
witnesses. Some of these conditions are obvi-
ously subject to change in a dynamic envi-
ronment, so they become a main vehicle for
interaction. The system directly implements
postconditions through the effects of termi-
nal actions, which are rolled back to the high-
est-level task node subsuming these actions.
Furthermore, we can compare HTNs to
other forms of knowledge representation pro-
posed in interactive storytelling. In particu-
lar, there is a formal equivalence between
18 computer.org/intelligent IEEE INTELLIGENT SYSTEMS
Interactive Entertainment
Character-based systems provide
a unified principle for story
generation and interactivity.
As such, they allow anytime
interaction.
Authorized licensed use limited to: Teesside University. Downloaded on June 24,2010 at 13:54:53 UTC from IEEE Xplore. Restrictions apply.