UInworldConversationGroupComponent | Inherits from: UInworldConversationTargetComponent
Component wrapper for managing multi-character conversation groups. This component provides an actor component interface to UInworldConversationGroup, allowing easy integration of multi-character conversations into actors. It manages participant addition/removal, speaker selection, and conversation state while implementing the conversation target interface.
Key Features:
- Multi-character conversation management
- Speaker selection graph integration
- Rule-based speaker selection for deterministic turn order
- Participant management (add/remove characters)
- Event history tracking
- Blueprint accessible conversation control
Methods
- AddCharacter
- ClearHistory
- GetConversationState
- GetParticipants
- GetPlayerTarget
- InvokeNextResponse
- RemoveCharacter
Properties
RuleDirector
Optional director object to manage rule-based, deterministic speaker selection. If assigned, this will be checked before theSpeakerSelectionGraphAsset for determining the next speaker.
Configure this property in the editor’s Details panel to set up predefined speaker sequences for turn-based games or scripted dialogue scenarios.

Reference
AddCharacter
Adds a character to the conversation group. The character will receive messages sent to the group and can participate in speaker selection for responses.
Examples
Parameters
| Parameter | Type | Description |
|---|---|---|
| CharacterComponent | UInworldCharacterComponent* | The character component to add to the conversation |
Returns
Type:virtual void
ClearHistory
Clears the group’s event history data, resetting all stored interactions. This method ensures that the event history runtime data is wiped clean, removing all previously recorded conversation or event entries. It logs an error message if the event history data is null or invalid.
Examples
Parameters
| Parameter | Type | Description |
|---|---|---|
| IncludeCharacters | bool | (optional) If true (false by default), clear the history of all characters in the conversation. |
GetConversationState
Gets the current state of the conversation.
Examples
Returns
Type:FInworldConversationState
Description: The conversation state data
GetParticipants
Gets all character participants in the conversation.
Examples
Returns
Type:TArray<UInworldCharacterComponent*>
Description: Array of character components participating in the conversation
GetPlayerTarget
Gets the current player target for the conversation.
Examples
Returns
Type:UInworldBasePlayerComponent*
Description: The player component currently interacting with this conversation
InvokeNextResponse
Manually invokes the next character response in the conversation.
Examples
Parameters
| Parameter | Type | Description |
|---|---|---|
| CharacterId | const FString& | Optional specific character ID to respond. If empty, uses speaker selection. |
Returns
Type:virtual void
RemoveCharacter
Removes a character from the conversation group.
Examples
Parameters
| Parameter | Type | Description |
|---|---|---|
| CharacterId | FString | The unique ID of the character to remove |
Returns
Type:virtual void