Skip to main content

Blueprint Manipulation

ClaudeBridge provides 36 tools for working with Blueprints — from creating variables and functions to wiring complex node graphs.


Workflow Overview

1. read_blueprint       → Understand the BP structure
2. analyze_graph → See existing nodes and connections
3. Create/modify → add_node, create_variable, create_function
4. Wire logic → connect_pins
5. compile_blueprint → Validate changes
Always Inspect First

Before modifying any Blueprint, use read_blueprint and analyze_graph to understand what already exists. UE may auto-create nodes like BeginPlay.


Adding Nodes

The add_node tool supports 23+ node types:

Node TypeDescriptionKey Params
CallFunctionCall any UFUNCTIONfunction_class, function_name
BranchIf/Then/Else
SequenceExecution sequence
EventStandard eventevent_name
VariableGetVariable gettervariable_name
VariableSetVariable settervariable_name
PrintPrintString shorthandmessage
DynamicCastCast to classtarget_class
SpawnActorFromClassSpawn actor
TimelineTimeline nodetimeline_name
MakeArrayArray literal
KnotReroute node

Example: Add Delay + Print

1. add_node(blueprint="BP_MyActor", node_type="CallFunction",
function_class="KismetSystemLibrary", function_name="Delay")
2. set_node_property(node_name="...", pin_name="Duration", default_value="2.0")
3. add_node(node_type="Print", message="Delayed!")
4. connect_pins(source → Delay.execute, target → "then")
5. connect_pins(source → Delay.then, target → Print.execute)

Pin Connections

Common Pin Names

Node TypeInput PinsOutput Pins
Eventsthen
CallFunctionexecute, paramsthen, ReturnValue
Branchexecute, ConditionTrue, False
SequenceexecuteThen_0, Then_1, ...
VariableGetvariable name
VariableSetexecute, variable namethen

Connecting Pins

connect_pins(
blueprint="BP_MyActor",
source_node="K2Node_Event_0",
source_pin="then",
target_node="K2Node_CallFunction_0",
target_pin="execute"
)
Node IDs

Node IDs (like K2Node_Event_0) are returned by add_node and visible in analyze_graph output. Always use the exact ID from the response.


Variables

create_variable(blueprint="BP_MyActor", name="Health", type="float", default_value="100.0")
set_variable_properties(name="Health", instance_editable=true, category="Stats")

Supported types: bool, byte, int, int64, float, double, string, name, text, vector, rotator, transform, object


Functions

create_function(blueprint="BP_MyActor", name="CalculateDamage")
add_function_input(function="CalculateDamage", param_name="BaseDamage", param_type="float")
add_function_output(function="CalculateDamage", param_name="FinalDamage", param_type="float")

CallFunction Reference

The CallFunction node can invoke any UFUNCTION. Common classes:

ClassCommon Functions
KismetSystemLibraryPrintString, Delay, IsValid, LineTraceSingle
KismetMathLibraryAdd_FloatFloat, FClamp, RandomFloatInRange, Lerp
GameplayStaticsGetPlayerController, OpenLevel, SpawnActor
ActorK2_GetActorLocation, K2_SetActorLocation, K2_DestroyActor

Validation

After modifying a Blueprint, always compile:

compile_blueprint(blueprint="BP_MyActor")

For deeper validation:

validate_blueprint(blueprint="BP_MyActor")     → Check for issues
find_unused_variables(blueprint="BP_MyActor") → Clean up