Presentation is loading. Please wait.

Presentation is loading. Please wait.

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

Similar presentations


Presentation on theme: "Aarf! Arf arf arf: Talking to the player with barks Patrick Redding Ubisoft Montreal."— Presentation transcript:

1

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

3 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.

4 “barks”

5 (AI dialogue)

6 Not conversational mechanics Not scripted events dialogue Not cinematics dialogue Not MP taunts

7 Bring the world to life Function

8 Make the AI seem smart(er) Function

9 Update the player on status Function

10 Support the game’s themes Function

11 Idle/Ambience Context

12 Reaction Context

13 Combat Context

14 Social/Interaction Context

15 Narrative Context

16 Halo (series)

17 Fallout 3

18 GTA IV

19 Far Cry 2

20 F.E.A.R.

21 Fable 2

22 Assassin’s Creed

23 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

24 Systemic vs Scripted Considerations Event Receiver Speaker Trigger/ Player Script Dialogue Manager Db Playback

25 Systemic vs Scripted Considerations Event Receiver Speaker Source Dialogue Manager Db Receiver Interlocutor Source States Recv’r States Stimulus Playback

26 Systemic: Sensory vs Dispatcher Deep generalized behavior Or Broad case-based behavior Considerations

27 Systemic: Sensory vs Dispatcher Considerations Damage Noise Interest Fear … 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/weather Location (terrain, building) Metric (faction strength, kills) … Any (generic)

28 Systemic: Sensory vs Dispatcher Considerations Update threat map Last man standing Enemy on mounted weapon Call reinforcements Last known position Search pattern Move 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

29 Systemic: Contextual/Affordant Considerations Task parameters (e.g.): Duration Interrupt Reset interval Topology (point/area/path) Exit conditions … Associated event (DrinkWater) Attractor parameters (e.g.): Associated need (Rest) Broadcast radius Weighting coefficient … Needs (e.g.): Social + Rest ++ Duty + Tactical - …

30 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 radius Weighting coefficient … Condition (Occupied)

31 Systemic: Contextual/Affordant Considerations Smart-Object Event (e.g.) ‘DrinkWater’ Chapter (e.g.) ‘Convo_Act2Gossip’ Agent A (gurgling noises) + 10 seconds Agent A Ahh… I didn’t realize how thirsty I was… + 10 seconds Agent A Hey… Come on…! Who hogged all the cold water?! Bastards. Agent A Hey brother. Been awhile. Agent B Yeah, I think it was before Alexi, you know… Agent A Shhh. Keep it down. Agent B Oh, what? Like everybody doesn’t know why he ate a bullet? Please.

32 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/zone Environment/terrain type Nearest game objective Nearest game ingredient … Mission Script Event Dialogue Manager Db Playback

33 Scripted: Chapter or Location –specific Considerations eventChapter (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!

34 Generic Vocalizations “ARRGHH!” “Look out--!” terrible to write terrible to direct terrible to perform… Bark Strategies

35 Generic Vocalizations … and they add a lot of redundant audio data to the game: Bark Strategies

36 Generic Vocalizations Bark Strategies Dialogue Db Generic Vocalization Db Profanity Onomatopoeia Exclamations Singing … (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 COLLAPSE 1 VO_ST_GVF_ONO_EXER_CLP1_01_001_GAA_DRY AGENT A 21:$NullSound$ 2 VO_ST_GVF_ONO_EXER_CLP1_02_001_GAA_DRY AGENT A 22:$NullSound$ 3 VO_ST_GVF_ONO_EXER_CLP1_03_001_GAA_DRY AGENT A 23:$NullSound$

37 State: Threat Level Bark Strategies Source (player, enemy, etc.) Receiver States (e.g.): Threat Level (+1) Squad Cohesion (-2) … Any (generic)

38 State: Threat Level Bark Strategies eventThreat Level (e.g.) +1 (exposed to fire) Threat Level (e.g.) +2 (under direct fire) Dispatcher (e.g.): Reload, CheckCover Agent A I’m dry… Cover me! Agent A Oh NO…! No no no no no…

39 State: Persistent metrics Integrating RPG-like stats progression into a variety of genres Allows AI to tailor responses to player presence and actions in light of game history, reputation, skills Gates dialogue content in support of meaningful consequences (build on Fallout 3 example) Bark Strategies

40 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/Influence XP Stats/Skills/Perks* Faction affinity (+/-) … STR AGL INT

41 State: Persistent metrics Bark Strategies eventInfluence (e.g.) -1 (bad) Influence (e.g.) +1 (good) Social (e.g.): Greet Agent A Oh look, my favorite parasite. What do you want? Agent A Ah, my friend! How may I be of service today?

42 Solo vs Chained Bark Strategies Source (player, enemy, etc.) Receiver (Team) Receiver (Solo)

43 Solo vs Chained Bark Strategies eventChained (e.g.)Solo (e.g.) Dispatcher (e.g.): Reload, CheckCover Agent A I’m out…! Agent B I got your corner… Make it quick… Agent A Standby… Agent U (in Russian) Damnation…! This cheap Tajik ammunition was a rip- off…

44 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

45 Content management pipeline Spreadsheets are an ugly compromise Need dedicated tool for entire pipeline ‘Content manager’ might be a full-time job Tools

46 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 AI Tools

47 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

48 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

49 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 events Tools

50

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


Download ppt "Aarf! Arf arf arf: Talking to the player with barks Patrick Redding Ubisoft Montreal."

Similar presentations


Ads by Google