Keynote. Find out about the secret recipe that makes the wide variety of animals in World of Zoo so compelling to watch and interact with.
Bruce Blumberg (Lead Character Engineer at Blue Fang, Associate Professor at MIT)
Interesting talk about behaviours, certainly looking at animals with a cartoony look made sense and the way of working in anticipation and reaction times, as well as activities done when idle.
“Who am I?”
- Product guy – Attention to details!
- Animal guy – Looking at animals and their behaviour; not a lot of planning or logic. Sense of their world through simple but reliable rules. Usually picking the absolutely simplest way (although this might lead to death and no more trying).
- Academic guy – Started in academia; looking at interactions with humans. Can you create the illusion that the player is working with sentient life.
- 3 pups (white/grey/black) trained by different people.
- Each person made to find the pups social order in the pack
- Student work – CPU Java based game
World of Zoo (2009)
- Nintendo Wii product – zookeeper for kids fantasy.
- 11 groups, 90 species of animal, customisable; quite a challenge.
Goal was, relative to the tycoon games, was interaction with the animals. When designing for people the most important thing you can do with non-player characters is making the player the most important thing in their world. Conveying importance is hard – rapt engagement.
Also think about keeping attention as a conversation (even if it is non-verbal) is a powerful way to think about the interaction. Have the engagement with;
- Sentience (in what they do)
- Attention (to the player)
- Engagement (what they do with the player)
Bruce is a Dog person. Why is Fetch so satisfying for people and their dogs?
- Dog is enthusiastically focused on the game and you. Playing with a snake is really boring!
- By coming back, wagging tail, and so forth – soliciting you to play more and make them more happy. Makes the owner feel they are needed.
- It is because of you the dog is happy.
Video of a conversation with a dog – waving a bone makes the dog attentive (and so they also look at the person holding the bone) and fake-throwing it lets you know the dog knows the game – although it didn’t play out the same way so the dog came back.
Giraffe training with a red-tipped stick is also a conversation – train them to get the food after touching it means they can then be taken anywhere.
Viewing the interactions as intimate conversations; non verbal moment to moment interaction in the game (not a tycoon game!).
Multi-disciplinary with all working on the same problem (artists, designers, programmers). 18 month pre-project too (ie; building a different game to the game that got built!), so could work well together.
Making the AI player-centric means moment to moment interactions; looking at the player and matching what the player thinks should happen.
It is a very animation-centric implementation using Havok Behavior Tool (not well used it seems!) with a common vocabulary for all animals meaning a nice graph for a finite state machine. Made the AI as close as it could be to the animators – they created the performance and the setup was done to setup out of the way. The graph is used as a way of checking when an event comes up what to done. Sensory data/attention/navigation done elsewhere.
Finite state machines were perfect for the animation – the right solution for the problem being solved. Contrast using a Decision tree thing for perception.
Pretty lucky to get the right level of abstraction too; different behaviour = different animation – like a toy versus no toy.
Also were only so many events in the graph – multiple sensor inputs mapped to one event in the graph (many inputs to one output).
How do you work on the attention to the player?
Sentience communicates that the character is worthy of attention because it cares what happens to itself. The characters attention is worth doing too, and they also have internal functions.
The sentience has some good things to watch when there are no interactions;. Ues more Illusions of Life (book) things; like randomised and non-sequential behaviours.
The compelling life comes from anticipatory AI.
Amygdala (a-mig-dala) is the distant early warning system. It does snap decisions “Is it good?” “Is it bad?” – if it is sufficiently one or the other it prepares with hormones and other things in a cascade. Milliseconds before the cognitive brain gets involved. EG: Fear of snakes means a rustling will prepare you for fleeing if you hear a rustle even if it is a mouse or something. Helps direct attention and anticipation.
For animations to do with this; have some different states for animation – there is an Anticipation state (eg: PounceAnticipation) to do before the actual event. Then there is the behavioural aspect for AI programming too to change the behaviour states.
Need to attend and react to the right things at the right time. You also need to make it observable;
- Perceptual behaviours: eg. Head look
- Reaction to events
- Investigatory behaviours – what to do when investigating something.
Players must be able to follow what is going on, by inferring thinking, feeling and learning from the characters. Must be transparent & observable.
Some are easy to make transparent – like pounce behaviours. Easier to model in this way where you know something has a good expected outcome.
Players will also create a better story then any designed story so only minimal framework for the games story (why they do things) – perhaps is why Tamagochi sold better then Furbie because it was more open slate. This lead to thought bubbles to show what they want/think but the player can grab the actual thought and interact with it – no inventory issues.
Communcating attention means attending to the player and responding to them, anticipating them hopefully too. Sometimes also solicit it if they know the player is there.
Player-centric events trumps all; started before with some vectors with attention being one of them but a decision tree was a much better way since “If the player hits something want to respond to it”. Three part way:
- React – Good or bad thing?
- Respond – approach and engage, avoid or gather information
- Anticipate – Predict what will happen
Having the character asking for help from the player where the player can help means they feel trusted, empowered and connected. This is why dogs are such good pets because they solicit all the time and do it in a way that makes you feel good.
Early iteration; Boxy Dog; testing with the ball and player as two separate things to interact with. Interesting thing; can’t get the dog into the corner since it breaks the AI, so at that point is solicits the player to move the ball if it goes there. Interesting also how it is a bunch of boxes but it all really works since it offers a contract to the player on just what the dog is.
Animation wise it was good for the demo – finding where the shoulders should be and look in a graph to get the nearest too it, but it wasn’t workable for a production game.
Magic Moments for soliciting attention in World of Zoo is when the animals literally come out of the frames.
To communicate engagement need to do shared activities; important and satisfying for the player, especially if a dynamic range of energy. Also touch with Wii remote; tactile feedback adds another thing to conversation; eg; Scratching an animals itch.
On story; interaction == dialogue, and one thing not done is a larger story apart form “It is a zoo”. What in the future? Perhaps longer common goals in a story context – building a bridge might have the player start or join in activities. Interaction is one point of the story but it is a hard problem.
Better tactile conversations presents challenges – wii mote isn’t very accurate, mapping from real body space to a controller is hard. Augmented versus virtual reality – augmented (with iPhone type things) will win out most likely. In any case the response must work still.
Finding the play value in learning; hard because it often doesn’t work and/or doesn’t match expectations. Often the designer over the player in the designs here. eg; making it Timmy not Lassies trainer the player is. Accommodations of a Timmy-style existence is needed which is different to a dog trainer.
“He’s a human being, …So attention must be paid” – Arthur Miller.
Q. What would you recognise you as Timmy?
With a wiimote it is really hard to recognise this. Different modalities with voice or visual confirmation. Doesn’t have to be perfect.
Q. Related to the boxy dog; would it be harder to create a contract with a photorealistic dog?
The answer is Yes. Anyone seen Up? Lots – the dogs technically are phenomenal but it just didn’t look right, was stiff – stepping back from reality is a much safer and satisfying place to be for the player. When things get more complex you can’t keep the contact secure.
Q. Boxy dog learning?
Had a basic “yum” and “yuk” key so it increased/decreased chances of doing behaviour in the test.