Skip to main content

Blueprint Reference

A reference for the main blueprints you'll touch as a designer — what each one is, its most important instance-editable properties, and the functions worth knowing. It deliberately skips internal helpers; for why the pieces fit together see How It Works.

Every variable has a tooltip

This page covers the headline properties. In-editor, hover any variable for its full description and tuning guidance — the tooltips are the exhaustive reference.


BP_DroneNavManager

Actor — place exactly one per level. Owns the navigation graph and answers path queries.

Key Properties

PropertyTypeDescription
NavConfigDroneNavConfigThe tuning preset to stamp onto the manager + volumes. Assign a DA_NavConfig_* and apply it (see below).
MaxConnectionDistanceFloat (400)Longest edge the graph will link between two nodes. Must satisfy ≥ GridSpacing × 1.732 — see Tuning.
TraceRadiusFloat (105)Clearance an edge needs to be valid = drone radius + ~30 corner margin. Keep equal to the volume's NodeClearanceRadius.
ObstacleTraceChannelTrace Channel (Visibility)The channel used for all clearance/LOS traces. The drone must be transparent to it — see Collision Setup.
UsePathSimplification? / UsePathSmoothing?BooleanPost-process the raw A* path (string-pull + corner-cut). On by default.
DrawCalculatedPath?BooleanRuntime: draw every computed path (yellow line, green start, red goal). See Debugging.
DrawNearestNodeSearch?BooleanVisualise the start/goal node snap — useful for edge-of-volume "Path Not Found".
DrawDebugBooleanDraw node locations at runtime. Off for shipping.

Key Functions

FunctionWhenDescription
Bake NavigationEditor buttonBuilds the graph from your volumes and writes it into the data asset. Run after any geometry/volume/clearance change.
Apply Nav ConfigEditor buttonStamps the assigned NavConfig preset onto the manager + volumes.
Show / Hide Nav GraphEditor buttonDraws the baked graph in the viewport (green = connected, red = isolated, blue = links).
FindPathRuntimeThe A* query. Called for you by the follower — you won't call it directly.

BP_DroneNavVolume

Actor — place one or many. Defines a region of airspace and fills it with candidate nodes at bake time.

Key Properties

PropertyTypeDescription
GenerationBoundsBox ComponentScale this box to cover the airspace the drone may use. Everything inside is sampled.
GridSpacingFloat (200)Distance between candidate nodes. Smaller = denser graph (better routes, slower bake). Drives the MaxConnectionDistance floor.
NodeClearanceRadiusFloat (105)Empty space a node needs to survive. Match the manager's TraceRadius.
MaxGeneratedNodesInt (500)Safety cap on nodes per volume.
ShowFitPreview? / AgentRadiusBool / FloatEditor preview of where the agent fits inside the volume.
DrawDebug / DrawDebugDurationBool / FloatDraw generated node positions.

Volumes never run on their own — the manager samples them during Bake Navigation. Place big sparse volumes over open areas, smaller denser ones near complex geometry.

DroneNavConfig (+ DA_NavConfig_IndoorDense / _Balanced / _OutdoorSparse)

Data Asset — a named tuning preset so you pick a profile instead of hand-tuning.

PropertyDescription
GridSpacing / MaxConnectionDistanceGraph density + linking distance (the two that define the profile).
TraceRadius / NodeClearanceRadiusClearance — agent-derived, so identical across all three presets (~105).
MaxGeneratedNodesPer-volume node cap for the profile.

Assign a preset to the manager's NavConfig, Apply Nav Config, then Bake. Presets are stamped at bake time, not read live — re-apply + re-bake after editing one. See Tuning.


Movement

BP_DronePathFollowerComponent

Actor Component — the reusable movement engine. Lives on BP_AIDrone; attach to any pawn to make it fly paths.

Key Properties

PropertyTypeDescription
MoveSpeedChaseFloat (450)Cruise speed while pursuing a target.
MoveSpeedPatrolFloat (250)Cruise speed while patrolling.
MaxAccelerationFloat (500)How fast velocity can change. Lower = heavier/more inertial; higher = snappier. The only corner-rounding in the pipeline.
AcceptanceRadiusFloat (100)How close counts as "arrived." Set ≈ the drone's body bounds — too small and it wedges in gaps narrower than itself.
MaxSearchDistanceFloat (2000)How far the start/goal may be from the graph before a query fails.
UseLocalAvoidance?BooleanReactive steering around obstacles between waypoints.
AvoidanceProbeDistance / AvoidanceProbeRadiusFloat (200 / 80)The forward probe that detects obstacles. Lower the distance for thin obstacles so it doesn't over-react.
AvoidanceStrengthFloat (0.3)0 = ignore obstacles, 1 = steer fully sideways, ~0.5 = arc around.

Key Functions & Events

MemberKindDescription
RequestPathToLocationFunctionAsks the manager for a path and starts following it. Driven by the brain via the interface — not called directly.
FollowWaypointsFunctionFollows an exact waypoint list without pathfinding (used by patrol).
OnPathCompletedEvent (dispatcher)Fires on arrival. The pawn relays it as OnReachedDestination (the patrol heartbeat).

Drone pawn & brain

BP_AIDrone

Pawn — the drone body. Implements BPI_ControllableDrone; owns movement, facing, visual banking, and rotor audio.

Key Properties

PropertyTypeDescription
PatrolPathBP_PatrolPath refThe one you'll set most. Assign a patrol path and the drone patrols it when no target is in sight. Leave empty for chase-only.
TurnSpeedFloatHow quickly the drone rotates toward its facing target (≈4–6). Never 0 (= instant snap).
MaxBankAngleFloat (40)Max visual roll/pitch lean into acceleration.
BankInterpSpeedFloat (2.0)How smoothly the body eases into a bank.
AccelSmoothSpeedFloat (8)Low-pass on the acceleration estimate that drives banking — higher = snappier, lower = smoother (anti-wobble knob).
Idle/Max Pitch & Volume MultipliersFloatRotor-audio pitch + volume at hover vs top speed; the hum lerps between them by current speed.

Components & Events

  • Hierarchy: SphereCollision (root) → BodyMount (the banking pivot) → mesh + RotorAudio.
  • OnReachedDestination — event dispatcher the brain (patrol) listens to; relayed from the follower's OnPathCompleted.
Collision setup is required

The root SphereCollision must ignore the nav trace channel or pathfinding always fails. See Collision Setup.

BP_AIDroneController

AIController — the brain. Senses the target, owns target memory, and runs BT_AIDrone. Commands the pawn only through the interface.

Key Properties

PropertyTypeDescription
EnemyTagName (Team A)The drone only chases actors carrying this tag.
MemoryDurationFloatHow long a lost target is remembered before giving up and returning to patrol.
SearchStartDelayFloatGrace period after losing sight before it leaves the hover spot to actively investigate.
DesiredHoverHeight / DesiredApproachDistanceFloatWhere the chase hover spot sits relative to the target (above + offset toward the drone's side).
RepathInterval / MoveGoalUpdateThresholdFloatRe-path throttle — minimum time + goal-movement before requesting a new path (prevents jitter).
Scan: ScanYawRange / ScanYawSpeed / ScanLookDistance / ScanArriveRadiusFloatThe left-right facing sweep while searching a last-known location.
DrawDebug?BooleanController-side debug draws.

The controller runs BT_AIDrone (a priority selector: Chase → Search → Patrol → Idle) with BB_AIDrone as its blackboard. You normally won't edit the tree; tune behaviour through the properties above. See How It Works.

BPI_ControllableDrone

Interface — the only vocabulary the brain uses to command the body. Implement it to drive a custom drone pawn.

MessageDescription
MoveToLocationPath to a world location (chase/search) via the nav graph.
FollowWaypointPathFollow an exact waypoint list (patrol), bypassing the graph.
SetMovementModeSwitch between Patrol / Chase speed modes.
SetFocusLocation / ClearFocusFace a world point / return to facing travel direction.
StopHalt and clear the current path.

Patrol authoring

BP_PatrolPath

Actor — a spline route with optional hold markers.

PropertyTypeDescription
MarkersArray of BP_PatrolHoldMarkerOptional pause points; the path snaps each onto the spline.
SampleSpacingFloat (25–50)How finely the spline is sampled into waypoints — the live corner-smoothness lever (smaller = smoother).
SnapMarkersInEditor?BooleanRe-snaps markers onto the spline in the editor. Keep on.
ShowFitPreview? / AgentRadiusBool / FloatDraws a clearance preview along the spline (green = fits, red = clips). Set AgentRadius to the drone's radius.
ShowPathDebugBooleanDraw the spline + markers at runtime.

BP_PatrolHoldMarker

Actor — a point on a patrol path where the drone pauses.

PropertyTypeDescription
HoldDurationFloat (3.0)Seconds to pause (0 = fly through).
UseLookDirection?BooleanFace a set direction while paused (otherwise keeps facing travel).
LookYawFloatThe yaw to face when UseLookDirection? is on.
SplineDistanceFloatAuto-filled by the path's Construction Script — do not hand-edit.

See Patrol for the authoring workflow.


Editor tools

BakeDroneNav (Editor Utility Widget)

Right-click → Run Editor Utility Widget. Buttons: Bake Navigation, Show / Hide Nav Graph, and an Auto-Apply Config checkbox that stamps the NavConfig preset before every bake. This is the main authoring surface for the nav graph — see Quick Start.