Skip to content

Blueprint Catalog

Every Blueprint-visible node exposed by the Tryll Unreal plugin, grouped by category. Use this page to find which Blueprint function or event to place; use the Unreal C++ API Reference and the feature reference pages for parameter-level detail.

All nodes live under two UObjects:

  • UTryllSubsystem — a UGameInstanceSubsystem. Access from any Blueprint with the Get Tryll Subsystem node (GameplayStatics → GetGameInstance → GetSubsystem<TryllSubsystem>).
  • UTryllAgentComponent — an UActorComponent. Add one to any actor; when bAutoCreateOnConnect is true (the default), it auto-creates its agent the first time the subsystem reports Connected.

Categories use the pipe convention (Tryll|Connection, Tryll|Models, …) so everything appears grouped under a single Tryll folder in the Blueprint context menu.

Connection — Tryll|Connection

On UTryllSubsystem.

Node Kind Inputs Outputs Notes
Connect Callable Starts the background connect. Fires OnConnectionChanged(true) when ready. Uses the host/port from project settings; see Run the Tryll Server.
Disconnect Callable Closes the socket. Fires OnConnectionChanged(false) once torn down.
Is Connected Pure bool True while the background state is Connected.
Get Session Id Pure int64 Server-assigned session id; 0 when disconnected.

Session — Tryll|Session

On UTryllSubsystem.

Node Kind Inputs Outputs Notes
Configure Session Callable Engine (ETryllInferenceEngine) Sends ConfigureSessionRequest. Fires OnConfigureSessionComplete(bSuccess). Only valid once, immediately after OnConnectionChanged(true). See Agent Parameters and Server Configuration.

Models — Tryll|Models

On UTryllSubsystem.

Node Kind Inputs Outputs Notes
Request Download Model Callable Model Name (FString) Kicks off a download. Progress arrives via OnDownloadProgress; completion via OnDownloadComplete.
Request Load Model Callable Model Name (FString) Loads a locally-available model into the active inference engine. Fires OnLoadModelComplete(ModelName, bSuccess).
Request Unload Model Callable Model Name (FString) Unloads a loaded model. Fires OnUnloadModelComplete(ModelName, bSuccess).

Model listing is request/response driven — call the C++ UTryllSubsystem::ListModels (exposed as a blueprint-friendly callback shape) or bind OnListModelsComplete. See Model Management for lifecycle rules.

Agent — Tryll|Agent

On UTryllAgentComponent.

Node Kind Inputs Outputs Notes
Create Agent Callable Creates a server-side agent using the component's configured graph / model / knowledge presentation. Fires OnAgentReady. Normally called automatically when the subsystem connects.
Destroy Agent Callable Destroys the server-side agent. Fires the subsystem's OnAgentDestroyed(AgentId).
Send Message Callable Message (FString) Sends a user turn. Streams back via OnAnswerText; ends with OnTurnComplete. See Stream Answers to UI.
Is Agent Ready Pure bool True after OnAgentReady has fired.
Get Agent Id Pure int64 Server-assigned agent id; 0 before ready.

Events — Tryll|Events (on UTryllAgentComponent)

Bind these on each agent component instance. All are BlueprintAssignable, so Bind Event to … nodes work directly.

Event Payload Fires when
On Agent Ready Server confirms agent creation.
On Answer Text Text (FString), bIsFinal (bool) Streaming token chunk. bIsFinal is true on the last chunk before OnTurnComplete.
On Answer Full FullText (FString) After OnTurnComplete, with the full accumulated response.
On Turn Complete Status (ETryllTurnStatus) Turn ended. Status distinguishes normal completion from errors.
On Error ErrorMessage (FString) Any agent-level error (send failure, server error response).

Events — Tryll|Events (on UTryllSubsystem)

Bind these once per connection, typically in Event BeginPlay.

Event Payload Fires when
On Connection Changed bConnected (bool) Transport state flipped. true means the session is ready to configure.
On Error ErrorMessage (FString) Subsystem-level error (transport, protocol, model).
On Agent Destroyed AgentId (int64) A server-side agent was destroyed (by DestroyAgent or session tear-down).
On Configure Session Complete bSuccess (bool) Response to ConfigureSession.
On List Models Complete Models (TArray<FTryllModelInfo>), bSuccess (bool) Response to ListModels.
On Download Progress ModelName (FString), Percent (float) Periodic download update (0.0–1.0).
On Download Complete ModelName (FString), bSuccess (bool) Download finished or failed.
On Load Model Complete ModelName (FString), bSuccess (bool) Response to RequestLoadModel.
On Unload Model Complete ModelName (FString), bSuccess (bool) Response to RequestUnloadModel.
On Tool Call AgentId (int64), ToolName (FString), ArgumentsJson (FString) A ToolCall node with notify_client=true detected a call. See Define and Handle Tool Calls.
On Create String Storage Complete Name (FString), bSuccess (bool) Response to CreateStringStorage.
On Destroy String Storage Complete Name (FString), bSuccess (bool) Response to DestroyStringStorage.
On Create Embedded String Storage Complete Name (FString), RecordCount (int32), bSuccess (bool) Response to CreateEmbeddedStringStorage.
On Destroy Embedded String Storage Complete Name (FString), bSuccess (bool) Response to DestroyEmbeddedStringStorage.

Assets and structs (editable in Details panel)

These are Blueprint-visible types, not callable nodes. You configure them on the UTryllAgentComponent's Details panel or inside a UTryllWorkflowAsset.

Type Kind Purpose
UTryllWorkflowAsset UDataAsset Content-Browser asset wrapping an FTryllGraphDescription. Assign one to the component to avoid authoring the graph in C++.
FTryllGraphDescription USTRUCT(BlueprintType) The full graph: nodes, routes, start id.
FTryllModelInfo USTRUCT(BlueprintType) Row returned by ListModels; fields mirror Model Management.
FTryllError USTRUCT(BlueprintType) Error envelope used in some event payloads. Code matches ETryllErrorCode.
ETryllInferenceEngine UENUM(BlueprintType) Inference backend selector passed to ConfigureSession.
ETryllNodeType UENUM(BlueprintType) Node type selector used inside FTryllGraphDescription.
ETryllTurnStatus UENUM(BlueprintType) Turn outcome carried by OnTurnComplete.
ETryllModelStatus UENUM(BlueprintType) Model lifecycle state returned inside FTryllModelInfo.
ETryllErrorCode UENUM(BlueprintType) Mirrors the server error codes.

Typical Blueprint flows

First inference — bind OnConnectionChanged on the subsystem, call ConfigureSession on bConnected=true, wait for OnConfigureSessionComplete, then call CreateAgent on the component. See First Inference in Unreal.

Streaming a reply — bind OnAnswerText on the agent component, append Text to your UI widget on each event, show the "done" state on OnTurnComplete. See Stream Answers to UI.

Handling a tool call — bind OnToolCall on the subsystem, parse ArgumentsJson, run your game-side logic. See Define and Handle Tool Calls.