1 / 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 Redding Ubisoft Montreal. INT. DAY. Room 269, Moscone Center. PATRICK (staring out into crowded room) Hello, and welcome! (after a beat) Who am I?.

etana
Download Presentation

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

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Aarf! Arf arf arf: Talking to the player with barks Patrick ReddingUbisoft Montreal

  2. INT. DAY. Room 269, Moscone Center PATRICK (staring out into crowded room) Hello, and welcome! (after a beat) Who am I? 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.

  3. “barks”

  4. (AI dialogue)

  5. Not conversational mechanics Not scripted events dialogue Not cinematics dialogue Not MP taunts

  6. Bring the world to life Function

  7. Make the AI seem smart(er) Function

  8. Update the player on status Function

  9. Support the game’s themes Function

  10. Idle/Ambience Context

  11. Reaction Context

  12. Combat Context

  13. Social/Interaction Context

  14. Narrative Context

  15. Halo (series)

  16. Fallout 3

  17. GTA IV

  18. Far Cry 2

  19. F.E.A.R.

  20. Fable 2

  21. Assassin’s Creed

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

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

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

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

  26. Systemic:Sensory vs Dispatcher Source(player, gunshot, grenade, corpse, etc.) Receiver Event Considerations Damage NoiseInterestFear… 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)

  27. Systemic:Sensory vs Dispatcher Receiver(s) Source(dispatcher) Event Update threat mapLast man standingEnemy on mounted weaponCall reinforcementsLast known positionSearch patternMove to action stations… Considerations States (e.g.): Status (alert, idle) Task (sleeping, desk) Threat (under fire, safe) … Any (generic) Game space

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

  29. Systemic:Contextual/Affordant Task parameters: Duration (00:20) Interrupt (True) Reset interval (02:00)Topology (point) Exit conditions (end dialogue) …Associated event (Convo) Needs: Social ++ Rest + Duty + Tactical -… Considerations Attractor parameters (e.g.): Need (Social) Broadcast radius Weighting coefficient … Condition (Occupied)

  30. Systemic:Contextual/Affordant Considerations

  31. Scripted:Chapter or Location –specific Receiver Mission Script Event Chapter States (e.g.): Mission sequence (8/12) Active mission (A1SM01) Last outcome (faction++) … Considerations Dialogue Manager Location States (e.g.): Location/zone Environment/terrain type Nearest game objective Nearest game ingredient … Db Playback

  32. Scripted:Chapter or Location –specific Considerations

  33. Generic Vocalizations “ARRGHH!”“@*%$^#!”“Look out--!” terrible to writeterrible to directterrible to perform… Bark Strategies

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

  35. Generic Vocalizations DialogueDb GenericVocalizationDb Bark Strategies 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$ Profanity Onomatopoeia Exclamations Singing … (anything repetitious)

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

  37. State: Threat Level Bark Strategies

  38. State: Persistent metrics Receiver Source(player, principal cast NPC) Event Bark Strategies 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 (+/-) …

  39. State: Persistent metrics Bark Strategies

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

  41. Solo vs Chained Bark Strategies

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

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

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

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

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

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

  48. Questions? patrick.redding@ubisoft.com www.wemakeholesinteeth.com

  49. Aarf! Arf arf arf: Talking to the player with barks Patrick ReddingUbisoft Montreal

More Related