Skip to main content
Overview > Inworld Conversation Group Component Class: 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

Properties

RuleDirector

Optional director object to manage rule-based, deterministic speaker selection. If assigned, this will be checked before the SpeakerSelectionGraphAsset 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. SetRuleDirector Config

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. AddCharacter Blueprint Node

Examples

virtual void AddCharacter(UInworldCharacterComponent* CharacterComponent)

Parameters

ParameterTypeDescription
CharacterComponentUInworldCharacterComponent*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. ClearHistory Blueprint Node

Examples

void ClearHistory(bool IncludeCharacters)

Parameters

ParameterTypeDescription
IncludeCharactersbool(optional) If true (false by default), clear the history of all characters in the conversation.

GetConversationState

Gets the current state of the conversation. GetConversationState Blueprint Node

Examples

FInworldConversationState GetConversationState()

Returns

Type: FInworldConversationState Description: The conversation state data

GetParticipants

Gets all character participants in the conversation. GetParticipants Blueprint Node

Examples

TArray<UInworldCharacterComponent*> GetParticipants()

Returns

Type: TArray<UInworldCharacterComponent*> Description: Array of character components participating in the conversation

GetPlayerTarget

Gets the current player target for the conversation. GetPlayerTarget Blueprint Node

Examples

UInworldBasePlayerComponent* GetPlayerTarget()

Returns

Type: UInworldBasePlayerComponent* Description: The player component currently interacting with this conversation

InvokeNextResponse

Manually invokes the next character response in the conversation. InvokeNextResponse Blueprint Node

Examples

virtual void InvokeNextResponse(const FString& CharacterId)

Parameters

ParameterTypeDescription
CharacterIdconst FString&Optional specific character ID to respond. If empty, uses speaker selection.

Returns

Type: virtual void

RemoveCharacter

Removes a character from the conversation group. RemoveCharacter Blueprint Node

Examples

virtual void RemoveCharacter(FString CharacterId)

Parameters

ParameterTypeDescription
CharacterIdFStringThe unique ID of the character to remove

Returns

Type: virtual void