ANIMATED PUPPETS

Animated puppets is a graphical world inhabited by creatures called woggles who move about and talk and play with one another. In this world, the user can control one woggle, while the other woggle is directed by the computer. The woggles use intelligent improvisational ability to choose interesting behaviors.

The following is a screen dump of the graphical user interface for Animated Puppets. This GUI was used in our "Interactive Experience" demo at CHI 95 (Denver, CO). For more information, see our paper Directed Improvisation by Computer Characters.

There is one GUI per character, for two characters: Aaron (with a boy's voice) and Nora (with a girl's voice). Each GUI runs on a separate display, since each user needs to control a mouse.

The large landscape in the upper left shows the world in which the characters act out their stories. This is not the only possible world, but one we have chosen for the animated puppets demonstration. We thank Joseph Bates and his Oz project for permission to use his "woggleworld" as our embodiment.

The sliders to the right control the character's mood: happy/sad, peppy/tired, friendly/shy. The user can change the character's mood at any time. Otherwise, the mood remains constant.

The buttons at the bottom specify an action: either what the character is thinking of doing (the left array), or what the character is thinking of saying (the right array). For movement actions, the user may optionally select the destination of the movement; the destinations that the character is considering are represented by the white dots superimposed on the landscape. If one of those dots is clicked before the movement button, the character will move to that location; otherwise, the character's agent chooses the location.

Whenever the user operates any of the controls, the GUI sends a message to the characters' agents, which then use that message in controlling what the characters do. The agents also modify the GUIs' action buttons, since each action changes what the characters would next think of saying and doing. For example, when one character asks another character a question, the second character's speech buttons become possible answers to the question. As another example, if a character becomes tired, it will no longer be thinking of leaping, but instead will think of shuffling or even falling asleep.



pdoyle@cs.stanford.edu April 17, 1998