Dialogue System

Gameplay Systems

Dialogue systems: linear NPC speech to complex branching conversations with player choices, conditions, and consequences.

Version: 5.0.0 – 5.7.3 | Invoke: /skill dialogue-system

← All Skills

What This Skill Does

Dialogue System helps you build conversation systems in Unreal Engine: from simple NPC barks and linear speech to complex branching dialogues with player choices, conditions based on quest state or player stats, and consequences that change the game world. Since UE5 does not include a built-in dialogue editor, this skill covers the standard architectural patterns used by most projects: a Data Table-driven data model, a controller Blueprint that manages conversation flow, a dialogue UI widget with typewriter text and choice buttons, and integration points for camera cuts, facial animation, and localization.

Covers

  • Dialogue system architecture: data model, flow controller, and UI components
  • Data Table-driven dialogue with a flexible row schema
  • Branching dialogue with player choices and condition-based availability
  • Dialogue UI widget: speaker name, typewriter text display, choice buttons, and portraits
  • Text display features: typewriter effect, auto-advance, and skip functionality
  • Dialogue camera cuts for cinematic conversations
  • Integration with lip sync and facial animation
  • Localization-ready text using FText and string tables

Does Not Cover

How to Use

Invoke this skill in Claude Code:

/skill dialogue-system

This skill is also auto-detected when your prompt mentions dialogue, conversation, NPC talk, branching dialogue, player choices, or speech systems. AgentUX will automatically activate Dialogue System when it recognizes relevant context in your request.

Key Unreal Engine Concepts

Concept Description
UDataTableThe primary storage mechanism for dialogue data: each row represents a dialogue line with speaker, text, choices, conditions, and navigation fields.
UDialogueWaveUE5's built-in localized audio line asset, useful for barks and one-liners with per-culture audio variants.
UDialogueVoiceIdentifies speakers in the built-in dialogue system, allowing the engine to select the correct audio context for each conversation participant.
FTextThe localization-ready text type that must be used for all player-visible dialogue: supports translation keys, string tables, and culture switching.
FDialogueLineRowA custom struct defining the dialogue data schema: LineID, Speaker, LineText, Choices, Conditions, Consequences, and camera/animation references.
BP_DialogueControllerThe controller Blueprint that manages conversation flow: starting dialogue, advancing lines, handling player choices, and ending conversations.

Related Skills

What You'll Learn

  • How to design a dialogue data model using Data Tables with a flexible row schema
  • How to build a dialogue controller that manages conversation flow, branching, and conditions
  • How to create a dialogue UI widget with typewriter text, speaker portraits, and choice buttons
  • How to implement condition-based dialogue branching tied to quest state, inventory, and stats
  • How to integrate camera cuts for cinematic conversation presentation
  • How to prepare dialogue text for localization using FText and string tables