aarf! arf arf arf: talking to the player with barks patrick redding ubisoft montreal

50

Upload: etana

Post on 17-Jan-2016

73 views

Category:

Documents


4 download

DESCRIPTION

Aarf! Arf arf arf: Talking to the player with barks Patrick Redding Ubisoft Montreal. INT. DAY. Room 269, Moscone Center. PATRICK (staring out into crowded room) Hello, and welcome! (after a beat) Who am I?. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Aarf! Arf arf arf:  Talking to the player  with barks  Patrick Redding Ubisoft Montreal
Page 2: Aarf! Arf arf arf:  Talking to the player  with barks  Patrick Redding Ubisoft Montreal

Aarf! Arf arf arf: Talking to the player with barks

Patrick ReddingUbisoft Montreal

Page 3: Aarf! Arf arf arf:  Talking to the player  with barks  Patrick Redding Ubisoft Montreal

PATRICK

(staring out into crowded room)

Hello, and welcome!

(after a beat)

Who am I?

INT. DAY. Room 269, Moscone Center

On the stage is PATRICK REDDING, 39, a game designer at Ubisoft Montreal. The grey in his hair is proof that he worked on FAR CRY 2, designing narrative systems.

Page 4: Aarf! Arf arf arf:  Talking to the player  with barks  Patrick Redding Ubisoft Montreal

“barks”

Page 5: Aarf! Arf arf arf:  Talking to the player  with barks  Patrick Redding Ubisoft Montreal

(AI dialogue)

Page 6: Aarf! Arf arf arf:  Talking to the player  with barks  Patrick Redding Ubisoft Montreal

Not conversational mechanics

Not scripted events dialogue

Not cinematics dialogue

Not MP taunts

Page 7: Aarf! Arf arf arf:  Talking to the player  with barks  Patrick Redding Ubisoft Montreal

Bring the world to life

Function

Page 8: Aarf! Arf arf arf:  Talking to the player  with barks  Patrick Redding Ubisoft Montreal

Make the AI seem smart(er)

Function

Page 9: Aarf! Arf arf arf:  Talking to the player  with barks  Patrick Redding Ubisoft Montreal

Update the player on status

Function

Page 10: Aarf! Arf arf arf:  Talking to the player  with barks  Patrick Redding Ubisoft Montreal

Support the game’s themes

Function

Page 11: Aarf! Arf arf arf:  Talking to the player  with barks  Patrick Redding Ubisoft Montreal

Idle/Ambience

Context

Page 12: Aarf! Arf arf arf:  Talking to the player  with barks  Patrick Redding Ubisoft Montreal

Reaction

Context

Page 13: Aarf! Arf arf arf:  Talking to the player  with barks  Patrick Redding Ubisoft Montreal

Combat

Context

Page 14: Aarf! Arf arf arf:  Talking to the player  with barks  Patrick Redding Ubisoft Montreal

Social/Interaction

Context

Page 15: Aarf! Arf arf arf:  Talking to the player  with barks  Patrick Redding Ubisoft Montreal

Narrative

Context

Page 16: Aarf! Arf arf arf:  Talking to the player  with barks  Patrick Redding Ubisoft Montreal

Halo (series)

Page 17: Aarf! Arf arf arf:  Talking to the player  with barks  Patrick Redding Ubisoft Montreal

Fallout 3

Page 18: Aarf! Arf arf arf:  Talking to the player  with barks  Patrick Redding Ubisoft Montreal

GTA IV

Page 19: Aarf! Arf arf arf:  Talking to the player  with barks  Patrick Redding Ubisoft Montreal

Far Cry 2

Page 20: Aarf! Arf arf arf:  Talking to the player  with barks  Patrick Redding Ubisoft Montreal

F.E.A.R.

Page 21: Aarf! Arf arf arf:  Talking to the player  with barks  Patrick Redding Ubisoft Montreal

Fable 2

Page 22: Aarf! Arf arf arf:  Talking to the player  with barks  Patrick Redding Ubisoft Montreal

Assassin’s Creed

Page 23: Aarf! Arf arf arf:  Talking to the player  with barks  Patrick Redding Ubisoft Montreal

Systemic vs Scripted

Primary function of AI in support of gameplay?

Does the AI have a life when the player’s not around?

How dynamic is combat and other action?

How open is the level design?

Considerations

Page 24: Aarf! Arf arf arf:  Talking to the player  with barks  Patrick Redding Ubisoft Montreal

Systemic vs Scripted

Considerations

EventReceiver Speaker

Trigger/ Player

Script

Dialogue Manager

Db

Playback

Page 25: Aarf! Arf arf arf:  Talking to the player  with barks  Patrick Redding Ubisoft Montreal

Systemic vs Scripted

Considerations

EventReceiver Speaker

Source

Dialogue Manager

Db

Receiver InterlocutorSource

States

Recv’r States

Stimulus

Playback

Page 26: Aarf! Arf arf arf:  Talking to the player  with barks  Patrick Redding Ubisoft Montreal

Systemic:Sensory vs Dispatcher

Deep generalized behavior

Or

Broad case-based behaviorConsiderations

Page 27: Aarf! Arf arf arf:  Talking to the player  with barks  Patrick Redding Ubisoft Montreal

Systemic:Sensory vs Dispatcher

Considerations

Damage Noise

InterestFear…

Event

Receiver

Source (player, gunshot, grenade,

corpse, etc.)

States (e.g.):

Status (alert, idle)Task (sleeping, paperwork)Threat (under fire, safe)…Any (generic)

States (e.g.):

Day/night/weatherLocation (terrain, building)Metric (faction strength, kills)…Any (generic)

Page 28: Aarf! Arf arf arf:  Talking to the player  with barks  Patrick Redding Ubisoft Montreal

Systemic:Sensory vs Dispatcher

Considerations

Update threat mapLast man standingEnemy on mounted weaponCall reinforcementsLast known positionSearch patternMove to action stations…

Event

Receiver(s)

Source(dispatcher)

States (e.g.):

Status (alert, idle)Task (sleeping, desk)Threat (under fire, safe)…Any (generic) Game space

Page 29: Aarf! Arf arf arf:  Talking to the player  with barks  Patrick Redding Ubisoft Montreal

Systemic:Contextual/Affordant

Considerations

Task parameters (e.g.):

DurationInterruptReset intervalTopology (point/area/path)Exit conditions…Associated event (DrinkWater)

Attractor parameters (e.g.):

Associated need (Rest)Broadcast radiusWeighting coefficient…

Needs (e.g.):

Social +Rest ++Duty +Tactical -…

Page 30: Aarf! Arf arf arf:  Talking to the player  with barks  Patrick Redding Ubisoft Montreal

Systemic:Contextual/Affordant

Considerations

Needs:

Social ++Rest +Duty +Tactical -…

Task parameters:

Duration (00:20)Interrupt (True)Reset interval (02:00)Topology (point)Exit conditions (end dialogue)…Associated event (Convo)

Attractor parameters (e.g.):

Need (Social)Broadcast radiusWeighting coefficient…Condition (Occupied)

Page 31: Aarf! Arf arf arf:  Talking to the player  with barks  Patrick Redding Ubisoft Montreal

Systemic:Contextual/Affordant

Considerations

Smart-Object Event (e.g.)‘DrinkWater’

Chapter (e.g.)‘Convo_Act2Gossip’

Agent A(gurgling noises)

+ 10 seconds

Agent AAhh… I didn’t realize how thirsty I was…

+ 10 seconds

Agent AHey… Come on…! Who hogged all the cold water?! Bastards.

Agent AHey brother. Been awhile.

Agent BYeah, I think it was before Alexi, you know…

Agent AShhh. Keep it down.

Agent BOh, what? Like everybody doesn’t know why he ate a bullet? Please.

Page 32: Aarf! Arf arf arf:  Talking to the player  with barks  Patrick Redding Ubisoft Montreal

Scripted:Chapter or Location –specific

Considerations

Receiver

Chapter States (e.g.):

Mission sequence (8/12)Active mission (A1SM01)Last outcome (faction++)…

Location States (e.g.):

Location/zoneEnvironment/terrain typeNearest game objectiveNearest game ingredient…

Mission Script

Event

Dialogue Manager

Db

Playback

Page 33: Aarf! Arf arf arf:  Talking to the player  with barks  Patrick Redding Ubisoft Montreal

Scripted:Chapter or Location –specific

Considerations

event Chapter (e.g.)‘AssassinateVIP’

Location (e.g.)‘NaturalGasRefinery’

Sensory (e.g.):Bullet impacts

Agent A(yelling into radio)I’ve got contact on my station… security breach with small arms fire…

Agent A (yelling into radio) Watch your fire! Check your shots or we’re all going to burn…

Dispatcher (e.g.):Fall back to rally point

Agent A (yelling into radio) All stations! Form up on the client and hold!

Agent A (yelling into radio) Can’t risk a firefight… Regroup at the safe zone!

Page 34: Aarf! Arf arf arf:  Talking to the player  with barks  Patrick Redding Ubisoft Montreal

Generic Vocalizations

“ARRGHH!”“@*%$^#!”“Look out--!”

terrible to writeterrible to direct

terrible to perform…

Bark Strategies

Page 35: Aarf! Arf arf arf:  Talking to the player  with barks  Patrick Redding Ubisoft Montreal

Generic Vocalizations

… and they add a lot of redundant audio data to the game:

Bark Strategies

Page 36: Aarf! Arf arf arf:  Talking to the player  with barks  Patrick Redding Ubisoft Montreal

Generic Vocalizations

Bark Strategies

DialogueDb

GenericVocalizatio

nDb

ProfanityOnomatopoeiaExclamationsSinging…(anything repetitious)

Severe 1 $ONO_INJR_SVR1$

Fatal 1 $ONO_INJR_FTL1$

Physical Collapse $ONO_EXER_CLP1$

Prolonged Exertion $ONO_EXER_PRL1$

Fast Exertion $ONO_EXER_FST1$

CLP1 : PHYSICAL COLLAPSE1VO_ST_GVF_ONO_EXER_CLP1_01_001_GAA_DRYAGENT A21: $NullSound$2VO_ST_GVF_ONO_EXER_CLP1_02_001_GAA_DRYAGENT A22: $NullSound$3VO_ST_GVF_ONO_EXER_CLP1_03_001_GAA_DRYAGENT A23: $NullSound$

Page 37: Aarf! Arf arf arf:  Talking to the player  with barks  Patrick Redding Ubisoft Montreal

State: Threat Level

Bark Strategies

Source(player, enemy, etc.)

0

0

0

0

+

+

+

++

++

Receiver

States (e.g.):

Threat Level (+1)Squad Cohesion (-2)…Any (generic)

Page 38: Aarf! Arf arf arf:  Talking to the player  with barks  Patrick Redding Ubisoft Montreal

State: Threat Level

Bark Strategies

event Threat Level (e.g.)+1 (exposed to fire)

Threat Level (e.g.)+2 (under direct fire)

Dispatcher (e.g.):Reload, CheckCover

Agent AI’m dry… Cover me!

Agent AOh NO…! No no no no no…

Page 39: Aarf! Arf arf arf:  Talking to the player  with barks  Patrick Redding Ubisoft Montreal

State: Persistent metrics

Bark Strategies

Event

Receiver Source

(player, principal cast NPC)

States (e.g.):

Status (alert, idle)Task (sleeping, paperwork)Threat (under fire, safe)…Any (generic)

States (e.g.):

Reputation/InfluenceXPStats/Skills/Perks*Faction affinity (+/-)…

STR

AGL

INT

Page 40: Aarf! Arf arf arf:  Talking to the player  with barks  Patrick Redding Ubisoft Montreal

State: Persistent metrics

Bark Strategies

event Influence (e.g.)-1 (bad)

Influence (e.g.)+1 (good)

Social (e.g.):Greet

Agent AOh look, my favorite parasite. What do you want?

Agent AAh, my friend! How may I be of service today?

Page 41: Aarf! Arf arf arf:  Talking to the player  with barks  Patrick Redding Ubisoft Montreal

Solo vs Chained

Bark Strategies

Source(player, enemy, etc.)

Receiver (Team)

Receiver (Solo)

Page 42: Aarf! Arf arf arf:  Talking to the player  with barks  Patrick Redding Ubisoft Montreal

Solo vs Chained

Bark Strategies

event Chained (e.g.) Solo (e.g.)

Dispatcher (e.g.):Reload, CheckCover

Agent AI’m out…!

Agent BI got your corner… Make it quick…

Agent AStandby…

Agent U(in Russian)Damnation…! This cheap Tajik ammunition was a rip-off…

Page 43: Aarf! Arf arf arf:  Talking to the player  with barks  Patrick Redding Ubisoft Montreal

Using layers

Layering some or all of the above response types

Queuing within an aggressive censor system allows designer to tweak signal-to-noise

Bark Strategies

Page 44: Aarf! Arf arf arf:  Talking to the player  with barks  Patrick Redding Ubisoft Montreal

Content management pipeline

Spreadsheets are an ugly compromise

Need dedicated tool for entire pipeline

‘Content manager’ might be a full-time job

Tools

Page 45: Aarf! Arf arf arf:  Talking to the player  with barks  Patrick Redding Ubisoft Montreal

Playback rules

Meta-data attached to individual lines of dialogue

Mark-up used by animation, audio systems at run-time

Some hard-coding of rules into other AITools

Page 46: Aarf! Arf arf arf:  Talking to the player  with barks  Patrick Redding Ubisoft Montreal

Managing variations

Variation banks used to exploit streaming and avoid bottlenecks

Banks differentiated by global AI conditions (alert, combat, etc.)

Individual banks can be swapped out

Gaps during streaming can be filled with generic vocalizations

Tools

Page 47: Aarf! Arf arf arf:  Talking to the player  with barks  Patrick Redding Ubisoft Montreal

Censor systems

Controls flow of bark outputs

Regulates the mix of generic vs special-case barks (to conserve content)

Assigning different classes of dialogues to ‘censor groups’

Tools

Page 48: Aarf! Arf arf arf:  Talking to the player  with barks  Patrick Redding Ubisoft Montreal

Frequency stats

Gather data on playback frequency from playtesters

Bot/plug-in running in background aggregates stats over the local network

Good for identifying “dead” lines, or over-exposed reaction eventsTools

Page 49: Aarf! Arf arf arf:  Talking to the player  with barks  Patrick Redding Ubisoft Montreal

Questions? [email protected]

www.wemakeholesinteeth.com

Page 50: Aarf! Arf arf arf:  Talking to the player  with barks  Patrick Redding Ubisoft Montreal

Aarf! Arf arf arf: Talking to the player with barks

Patrick ReddingUbisoft Montreal