Skip to main content

Dialogue Module

Description​

The module registrar is responsible for wiring all dialogue services into the shared service registry during startup. The runtime module provides identity and metadata for the Dialogue feature module.

DialogueModuleRegistrar​

Interface​

Type
IModuleRegistrar

Properties​

NameTypeValue
Orderint200

Registration​

The registrar's Register() method wires the following services:

Service InterfaceImplementation
IBlackboardScopeRegistryRegisters Conversation scope
IConversationServiceAgentConversationOrchestrator
IAgentConversationServiceAgentConversationOrchestrator
IConversationTriggerServiceConversationTriggerEvaluator
IDialogueEventingServiceDialogueEventingService
IDialogueTreeSelectorRequirementGatedDialogueTreeSelector
IOverheadDialogueTextServiceOverheadDialogueTextService
IDialogueBeatCatalogDialogueBeatCatalog
IDialogueCameraServiceDialogueCameraService
IDialogueInputServiceDialogueInputService
IGameInputProviderDialogueInputService
IPlayerInputBindingCompositePlayerInputBinding (first-person, then Starter Assets)
IConversationPlayerControlPolicySettingsDrivenConversationPlayerControlPolicy
IConversationOverrideServiceConversationOverrideService
IConversationEndPolicyComposite via ConversationEndPolicyResolver
IConversationWorldPausePolicySettingsDrivenConversationWorldPausePolicy
IConversationCursorPolicySettingsDrivenConversationCursorPolicy
IConversationAgentControlPolicyComposite via ConversationAgentControlPolicyResolver
IResponseServiceDialogueResponseService
IMoodServiceDialogueMoodService
IDialogueBeatMarkdownCodecRegistryDialogueBeatMarkdownCodecRegistry (editor only)
ITextTokenServiceTextTokenService
ITokenResolver (multi)BlackboardTokenResolver (prefix: bb)
ITokenResolver (multi)ParticipantTokenResolver (prefix: speaker)
ITokenResolver (multi)ParticipantTokenResolver (prefix: other)
ITokenResolver (multi)WorldTokenResolver (prefix: world)

Built-in beat types (Text, Audio, Animation, Mood, Camera) are also registered here.

Initialization​

The Initialize() method:

  • registers fallback services for IWorldClock, ILocalisationService, and ILocaleService if not already provided by another module
  • applies the default locale from the locale settings asset, if one is configured
  • adds a ConversationTriggerDriver component to the bootstrap
  • runs ValidateModuleSetup, which reports missing or misconfigured module settings
Requires CIVIL-AI-SYSTEM

When CIVIL-AI-SYSTEM is installed, it provides IWorldClock and IItemCatalog implementations. The fallbacks registered by the Dialogue module are only used when running standalone.

DialogueModule​

Interface​

Type
ConfigurableModule

Properties​

NameTypeValue
IdModuleIdentifierbardtre.dialogue
NamestringDialogue System
Versionstring1.0.0

Dependencies​

TypeModules
RequiredNone
OptionalNone