Drama Princess specifications

Posted by Michael on June 8th, 2006, in Development

Before we start designing, here’s a bit of a summary of things that have come up in these pages.

Requirements

  • give characters believable autonomy
  • express different personalities
  • simple design
  • ease of authoring
  • straightforward implimentation

Ideas

  • motivate characters by rewarding them (that way only one desire needs to be satisfied)
  • use graphic symbols to help express emotions
  • make the character (at least the avatar) express sympathy for the player
  • seperate animations from goals (so that goals can be attained in different ways and can be composed of several animations and interactions -as in 8’s “Action Language”)
  • make the environment trigger the behaviour
  • attach a list of possible interactions to each object and character
  • categorize actions in groups, don’t allow the character to switch groups too often (use attention span)
  • arrange all actions in categories with a preference value assigned by the author
  • define all actions and their effects in the context of relationships (with characters, objects and environment)
  • define a relationship as a single value, from good to bad, shared by both parties
  • or define a relationship as a pair of values, one for each direction
  • model social interactions as (dynamic) objects that exist outside of characters and that encapsulate them and tell them what to do
  • or (in There-speak) create a seperate “conversation mode” where the conversation itself selects (part of) the animations rather than the individuals
  • distinguish between autonomy when alone and autonomy when interacting with another character: the latter should be controlled from a higher level (less emergent, more meaningful); the distinction could perhaps be a gliding scale rather than binary

Hints

  • improve the player’s willingness to suspend disbelief
    • make sure the player likes the character
      • give character an attractive appearance (shape, colour and motion)
      • make an avatar somebody the player wants to be
      • make the character express affection for the player
      • make the character change or grow as a result the player’s actions
    • make sure aesthetic style and behaviour are on the same level
      • simple behaviour should be matched with simple appearance
  • the story happens between the ears of the player
    • leave gaps for the player to fill in with his or her imagination
    • model the symptoms, not the disease
  • use Loyall’s requirements for believability in an artificial being as a checklist
    • personality
    • emotion
    • self-motivation
    • change
    • social relationships
    • illusion of life
  • create drama that is larger than life, rather than an inferior copy of life
    • use stylisation: leave out uninteresting aspects and exaggerate the interesting ones
  • use the flaws of your system to your advantage (choose the system’s limitations carefully)
    • they can help express personality
    • they can provoke a desire to help or to care in the user
A mental verification test

Posted by Michael on June 7th, 2006, in Development

A way to test Drama Princess mentally is to imagine whether it could display the behaviour of other autonomous characters. Could Drama Princess drive Yorda? Or Black & White’s creature? And if not, what’s missing from the system?

There

Posted by Michael on June 7th, 2006, in Games

There is an interesting multiplayer environment. It’s very focussed on chat and since all characters are humans, that can be a bit strange. Especially given that they all look so cute. Same style, same age, etc. It’s as if the designers are trying to create some “Love Boat dynamics” (and indeed, the first thing that happened to me was that a girl took me to a secret pool and immediately wanted to kiss me -I mean I did look incredibly cute, but still… πŸ˜‰ ).

There

Anyway. What is interesting in this game is that you don’t have complete control over your avatar. Especially in social situations. All avatars respond to each other autonomously. When you walk past someone, their avatar will look at yours. The player doesn’t need to give it a command to do so. It’s autonomous behaviour. When you try to participate in a group, the avatars move out of the way, to make some room for yours.
And then there is the special conversation mode which connects the avatars together in a group activity. The camera changes to show the whole group and the avatars look at each other. Once in a while, they will nod simultaneously to each other, again without user intervention. It’s as if the avatars form their own community.
This automated body language works really well to create a feeling of social harmony. Willy-nilly you believe the avatar on the other side, and its automatic behaviour subconsciously puts you in a friendly mood towards the player represented by it. Very powerful stuff.

Shopping list

Posted by Michael on June 6th, 2006, in Development

June is the month that has been scheduled to design Drama Princess. On the one hand, I feel like I have only started my research into this topic and there’s so much more interesting stuff waiting to be examined. But on the other, trying to actually make something will help us make decisions about which study material is useful for our project and which is not. Also, theoretic musings, while amusing in and of themselves, and very valuable as preparation, are not very satisfying for hands-on designers like ourselves.

From what I have learned already, I’m not expecting the system that we will now try to design and build to be the ultimate solution to our problem. I think we’re going to call it “version 1.0” and hope we get the opportunity to develop it further later on. After all, our main motto is “it’s better to make something than nothing”. πŸ™‚
This does not mean that Drama Princess will be incomplete. There is a real game, 144, that we want to make that relies on this technology to work. This game has been designed and scheduled, so we have a strong motivation to build something that really works.

The first thing we need to come up with is a “shopping list”: a list of elements that we will need to make a complete system.

As a reminder, we’re talking about building a system for a non-linear interactive realtime 3D environment with no spoken or written language. All characters will be driven by Drama Princess, including the player’s avatar. And the project will be built in Quest3D, a realtime visual programming environment for DirectX.

Shopping list

  • character model and skeleton
  • skeletal animations
  • morph targets for facial animations
  • animation selection system (Drama Princess core)
  • object interaction (emotional response, observation, using)
  • perception (of environment, objects, characters and their properties)
  • navigation (motion, path finding, obstacle response)
  • external special effects (footstep sounds, footprints, shadows)
  • body special effects systems (clothing, hair, inverse kinematics)

Note that relatively trivial elements (such as interfaces between different elements) have been left out.

This list already represents a number of choices. We’re going to use a large number of pre-made skeletal animations and a system that will choose which animation a character should play. This system will be the core of Drama Princess where all the “A.I.” stuff will be happening. Object interaction could be considered to be a part of this, but we chose to list it seperately because it involves objects, which have to be dealt with on a higher level in the game engine design as well.

The list also implies a “philosophical” decision which has probably been sufficiently announced through previous posts: we consider the core of Drama Princess to be an “animation selection system”. This is not merely because, in the end, given our context, any A.I. system could be reduced to this. But also to keep us focused on our goals: animations is what the player will see, not mood, or mind, or intelligence, or even drama. All those things have to be triggered by the animations in the imagination of the player. But all that Drama Princess does, is select and trigger these animations. Whether we need a simulated mood or mind for that remains to be seen and is only a secondary problem.

The first three items in the list are “data”, i.e. to be produced by artists. But the choice of animations will at least be partially influenced by the “processes” designed in the remaining six items. The last item will be programmed in such a way that it impacts the logic of the other systems as little as possible.

It’s quite possible that this list keeps evolving as the design happens. But at least it gives us an idea of the scope of the project and the context of its core.

Improv

Posted by Michael on June 6th, 2006, in Projects

Improv is a system designed by Ken Perlin for authoring autonomous characters. It consists of a Behavior Engine and an Animation Engine. The Behavior Engine allows the author to write simple scripts that help the characters make meaningful decisions. The Animation Engine is rather unique. Each animation is defined as a collection of pairs of the most extreme angles that bones are allow to be rotated in. The engine then interpolates the rotation of each bone seperately, with a fair bit of randomness (also defined by the author), between its two extremes. The result is smooth motion that never repeats itself and is surprisingly expressive. It’s a fascinating approach to animation that merits a lot more research and application. Sadly, Mr. Perlin has patented his “invention” so we shouldn’t hold our breath for any revolution in computer animation.

His website contains several examples of Improv-like animations.
And this document explains the project very well.

Interview with Andrew Stern

Posted by Michael on June 6th, 2006, in Projects

Andrew Stern has been doing the kind of stuff that we’re looking into on these pages for years. He has been involved as a designer and developer in pet games Dogz, Catz and Babyz as well as the recent interactive drama Façade. He’s made numerous publications and presentations on the subject of autonomous characters and is a very active contributor to Grand Text Auto.
I had the pleasure of interviewing him via email. He starts by answering two questions simultaneously.

Michael Samyn: What do you think of the “paradox of the actor“, as described by Diderot in the 18th century, in relation to autonomous characters? Diderot claims that the best actor is the one who does not feel a thing but who excells at imitating only the symptoms of the behaviour of humans. Is it required for virtual actors to feel the emotions (i.e. to posses a mind) in order to express them?

Your work has always favoured artistic goals over scientific ones. Still I feel that there is a strong scientific “reflex” in the solutions you come up with. A lot of your work seems to attempt to model a character or a story from the inside out, which I consider to be the scientific approach (break things apart and put them back together). Do you feel that a scientific approach is required?

Andrew Stern: First, let’s realize that even the most sophisticated “mind” we can program with contemporary methods will be but pale imitations (greatly simplified versions) of real minds. So arguably all we can do, practically speaking, is imitate symptoms of human behavior anyway. But the spirit of your questions is, should we attempt a cognitive solution, that attempts to model mind-like processes, or should we create some other simpler, perhaps an ad-hoc solution?
The answer is, it depends on what you want your virtual actor to be capable of doing. If you’re happy with shallow interaction, say, stimulus-response interaction, then an approach such as AIML, used to make the text bot A.L.I.C.E. will suffice, which is basically a large number of inputs mapped in a relatively simple way to outputs.
A.L.I.C.E. is quite broad, and very shallow. It works for certain domains and artistic goals; in fact the creator of AIML and A.L.I.C.E. has been known to say that statistically speaking, most real human conversation is shallow, stimulus-response interaction. I see A.L.I.C.E. as, in a sense, a commentary on the shallowness of the typical human conversation; the system is successful in that regard.
But if you want you virtual actor to have deeper responses, that is, responses that take into account the history of the player’s input, that result in more meaningful, cumulative responses to your discourse, you’ll need to be keeping track of the discourse (an episodic memory), to be modelling attitudes and beliefs over time (a model of emotion, knowledge, personality), give the actors motivations (goals and plans) and so on. The models are some sort of encapsulation of the “rules” of how your actor should behave, implemented in some relatively elegant, thought-through, non-ad-hoc way.

At the end of the day, there’s just no way to fake that. And at the end of the day, most artists want more than less meaning and depth in their work.

Note behavior models (e.g. episodic memory, emotion, knowledge, personality) — which are in essence various ways of keeping track of and modulating the actor’s state as it changes over time in response to the player’s actions — can be much simpler than real minds are, and in fact may not really directly mirror any systems actually in the human mind. Nonetheless, they are non-trivially sophisticated models of dramatic behavior. In fact, because they’re modelling dramatic behavior, they will necessarily differ from biologically-inspired models of behavior, e.g. a-life driven agents.

Behavior models are also the key to creating characters that can generate behavior, that is, virtual actors that can get themselves into states and as a result perform patterns of behavior over time that weren’t explicitly pre-written by their author.
Another way to answer your questions — and this is something my collaborator Michael and I often say — is that there is no “design only” solution to creating non-trivially interactive characters and stories. To make something more sophisticated than a stimulus-response bot or a choose-your-own-adventure story, one needs to start modelling behavior.
I think modelling behavior is probably equivalent to what you’re calling truly “feeling” the emotions they are performing. Do real actors need to do that? By and large, I think many successful actors truly feel the emotions they are performing; by doing so, it allows them to generate a more authentic, robust performance.

Finally, let me say that these dramatic models of behavior, while technical in form, are heavily shaped by our artistic goals. That is, when creating these models — essentially these rules governing how virtual actors will behave — we’re always thinking about how the player perceives this behavior, are these rules going to result in the kind of performance we want to achieve for this actor, etc. As artists, we’re still very much in control of what the actor will ultimately be capable of doing or saying, even though exactly what is said and when will be determined in real-time, in response to the player’s actions. Even as these models get deeper and more generative in the future, I feel we’ll be able to retain a high level of authorial control over them.

MS: How do you feel about the concept of plot in interactive storytelling? And more specifically about the concept of a drama manager (a computer program that steers an interactive story towards an interesting plot arc)? Do you believe that a drama manager can be built to tell stories that can rival traditional literature or good theater? Or is pulp and formats the best it can do?

AS: I very much want to create systems that can generate a variety of narratives, in response on a moment-by-moment basis to what the player is saying and doing. Necessarily, this means we must abandon the ideal of a tightly-plotted story, because players are always going to be experimenting, pushing things in all kinds of directions, that will rarely allow for an extremely well-formed overall plot to be created.
That said, let’s not forget that in a real-time collaboration between the human player and the drama manager, that the drama manager — who is controlling the behavior of all of the virtual actors — is one half of the overall authorship of the experience. 50% control over the events being generated in a story is probably is enough to allow a loosely-plotted story to be created, if the overall domain of the story is set up to allow for that.
For example, in Facade, you’ve got the player vs. the duo Grace and Trip. The player can say and act any way they like; they could act like they’re dying, or act really violent, or completely absurd, what have you. The coordinated duo Grace and Trip will attempt to respond to the player, but also can believably mix in their own agenda, even believably ignore the player at times as needed (just as the player may ignore Grace and Trip if she wishes). You may end up with a absurdist story in the end where the characters each seem to be in a world of their own, but because the characters all share the same space and to some extent are reacting to one another, I’d at least call that loosely-plotted.
(Ideally the human player and drama manager cooperate and help each other out, at least some of the time.)

I’m not at all interested in making a drama manager that attempts to force the player into a particular story. If Facade seems to do that, it’s only because we ran out of time and/or energy to author a broad enough array of responses to at least respond to what the player wants to do. (This is another argument for more generative models of behavior, to help make virtual actors even more responsive to the player.)

Once you buy into the idea of allowing for loosely-plotted stories, even “bad” stories to be generated, we get rid of several of the supposed conundrums of interactive stories: 1) we get rid of the conflict between freedom vs. well-formed plot, because we’re not requiring a well-formed plot, we’re okay with a looser plot; 2) we get rid of this concern of some that too much freedom is bad thing, that we must greatly constrain players in order to ensure for a satisfying experience. I’m much more in favor of an open ended interface, that allows players to do and say anything they want, and only apply constraints on how the virtual actors will decide to interpret and work with the player’s actions. Again, let’s give the player a full 50% of the authorship of the story, and the drama manager 50%. Ideally the player and drama manager cooperate, but they don’t have to.

MS: The linearity of a story and the linearity implied by goal-oriented gameplay seem oddly compatible. This motivates people like Marianne Krawczyk (writer for God of War) to claim that they overlap, that the story of a game is expressed through goal-oriented gameplay. Obviously your narrative ambitions go far beyond anything an action game can express. Does this mean that goal-oriented gameplay should be abandoned?

AS: No, goal-oriented gameplay shouldn’t be abandoned, in fact it should be expanded and broadened. It’s only natural that players find achieving goals satisfying. But allowing players to form their own goals and be able to pursue and achieve them, in various ways, will be far more satisfying than offering players only one primary goal and one linear path to achieve that goal.

Just as importantly, we should allow players the freedom to just screw around, to play, to not pursue a goal if they wish. In total, we should be making dramatic worlds that allow for both freeform play, as well as goal-oriented play.

MS: You once mentioned that you thought of agency as one of the most important elements in interactive fiction, i.e. the things that the player can do and how this effects the other characters and the game world. Why is agency so important? Does a higher level of agency improve the story? And if so, how?

AS: I mention it all the time in my blog posts! Agency is the most fundamental property of interactive anything — be it games, web surfing, email, what have you. If you can’t have meaningful influence over what you’re doing when you take action on the computer, why is it interactive? If you’re to be led through an experience, why didn’t the author just make a movie or write a book?

But like I said earlier, I don’t think players need 100% control over the experience; an interactive experience can be a 50/50 collaboration between the human player and the system — where the system is a proxy for the human artist/programmer who created it.
Let’s not forget, ultimately, playing interactive art/entertainment is an interaction between people, via the artifact of a software system — particularly when the system is simulating (dramatic) human behavior, i.e. virtual actors.

Drama Princess Symposium evaluation

Posted by Michael on June 5th, 2006, in Development

This is a little summary of what came out of our Drama Princess Symposium last month.

Certain properties that came up as desirable in autonomous characters:
(i.e. things that were assumed to make them seem more believable):

  • different personalities
  • consistent emotions (no unexpected mood swings)
  • growth, evolution, changes in mood
  • unique bond with the player and with each other
  • match between the personality of the character and the function it has in the game as well as the limitations of your software
  • a layer of interpretation/translation can help believability (Black & White) as long as it doesn’t represent the underlying system too directly (Sims)
  • actions with consequences
  • some time for the player to develop feelings for the character
  • various ways of performing the same action (at least for realistic-looking characters)
  • an avatar on the same level as the characters to help develop feelings for the characters (or alternatively a well defined role such as that of a god in Black & White)
  • acting on (perceived) moods, opinions or goals
  • choices that aren’t just motivated by needs and wishes
  • activities that player and characters do together
  • reciprocity: characters returning the affection you invest in them
  • response of characters to your actions as player (either immediate or delayed)

Things that don’t necessarily seem to be required:

  • intelligence (stupid characters are acceptable)
  • realistic appearance (matching appearance with sophistication seems more appropriate: stylized behaviour is ok for characters that look stylized)

In general, it seems that the players in our symposium didn’t have any particularly high demands in either graphics or programming. Whether or not they found an autonomous character interesting, depended more or on design consistency and narrative context. They seemed to be perfectly willing to accept limited “intelligence” as long as the context was appropriate. So communicating this context seems to be half of the work. Communicating the intelligence of the character itself didn’t seem very interesting. On the contrary, in general it seemed that obscuring clear communication about a character’s mood and mind leads to better believability. Vagueness allows for projection and empathy.
What did seem to be expected was evolution, growth or change. Both in the character’s behaviour as in the interaction between the character and its environment, including other characters. A clear impact of the actions of the player on the game environment, seems to be highly desirable.

Our approach to story

Posted by Michael on June 5th, 2006, in Development

After interviewing Andrew Stern, I realized that our approach to story is very different than most when dealing with interactive narratives. This has a deep impact on what we want our Drama Princess to become. I tended to make it easy on myself by just saying that we don’t care much about plot, but given, amongst others, the answers I got from Mr. Stern in response to this, I guess the impact of such an attitude is not clear.

So to make it clear, once and for all, at least for myself: 😈PLOT CAN GO TO HELL! 😈
Thank you. πŸ˜‰
It’s not that we are satisfied with a weak plot, or half a plot or a plot that is co-authored by the user. No. It’s that we really don’t give a damn about plots or story arcs. This wouldn’t be surprising if we were game developers of the more traditional kind -the kind that says “gameplay first”- but we’re not. We do think story is at the very center of a satisfying interactive experience.

When we remove Plot, according to Aristotle, we’re left with five elements of drama:
Character, Diction, Thought, Spectacle and Melody.
That’s more than enough to tell a compelling story! Especially given that Aristotle had no idea about what would happen if you add interactivity and personalisation (an audience of one) to the toolset!

Auriea and I are very visually inclined and we like the sensual connection with the nervous system that visual elements can make. Interactivity, for us, is almost like a direct way of modeling this connection. And this is where stories happen for us.
We like how stories feel, we’re not necessarily interested in the facts and the flow of a story but much more in the associations in the reader’s mind, in the interpretation, in how narrative elements connect with the spectator’s background, culturally and emotionally.
That’s probably why we’re drawn to stories that everybody knows already: religious texts, fairy tales, myths. You might not know the exact story, but the characters, actions and situations, and in some cases the images and style, connect to something inside of you (whether this is cultural or psychological, conscious or subconscious, we don’t know and it doesn’t matter). It’s not about the story as linear tale anymore, it’s about the storytelling and more importantly the “storyhearing“. You know how Little Red Ridinghood or the New Testament is going to end. That’s not why you read it. You read it because, once again, you want to feel the emotions involved in the tale, and learn the lessons that it teaches you -perhaps the very repetition is part of the experience (rituals, dancing, learning, etc).

Interactive media can allow you to live inside a story, something I dream of every time I close a wonderful novel after reading the last page as slowly as possible, postponing the inevitable ending. With interactive media, things don’t need to end, goodbyes are obsololete, life is forever. Forever is a tiny bit of data, resting in the palm of your hand.

The Naked Ape (Desmond Morris)

Posted by Michael on June 5th, 2006, in Books

read in Dutch translation by Thomas Nicolaas

I guess I chose to read this book in the context of this project to find out more about the historical biological roots of some of humans’ behaviour. But the historical context of this book itself prevents me from taking it seriously or even finishing it. After explaining the evolution of the human species as a Darwinian wet dream that could only be accepted as truth if you present it in a time frame that cannot be comprehended by the feeble human mind, it reads as such a blatant celebration and justification of the “succesful American male in the nineteen sixties” that I can’t bare to continue.

Sorry Mr. Morris, you may have been meaningful to the longhaired monkeys of your own era, but present-day naked apes don’t fall for that stuff so easily anymore. We have evolved. πŸ˜‰

The actor, athlete of the heart (Herman Verbeeck)

Posted by Michael on June 4th, 2006, in Books

read in Dutch original:
“De acteur, atleet van het hart : Meyerhold, Decroux, Lecoq en Grotowski, pioniers van de fysieke acteur”

This is a book about the origins of “physical acting”, i.e. acting through the body. I have only read the introduction and the first chapter about Meyerhold. It’s a fascinating book that is a lot of fun to read but I couldn’t feel how it would help our project any further and I have many other things to read first.

Le Cocu Magnifique
Le Cocu Magnifique, Moscow, 1922

Meyerhold is an interesting character. He was a pupil of Stanislawski who inspired the famous American school of Method Acting. As you may know, Method Acting is all about the actor trying to really feel the emotions he needs to express on stage or film set. Despite of being life long friends, Meyerhold’s approach is completely opposite and much more related to Diderot’s theory.
Meyerhold took Diderot to its ultimate conclusion by abstracting the motions of the actors into some form of physical constructivism, in part inspired by the more folkloristic arts of Commedia dell’Arte, the circus and Elizabethan theater.