BLACK IRON SPINE STUDIOS · VERSION 1.1 · UNREAL ENGINE 5.8 · WINDOWS

RPG Maps & Compass

Direct Blueprint calls

Use your own actor or widget

  1. Get the navigation subsystem from the exact owning local player and retain the reference.
  2. Create the direct public-node call in your existing Blueprint. Supply your own component, location, name or stable GUID inputs.
  3. Branch on operation results before refreshing UI or using outgoing values.
  4. Bind your own event to On Waypoints Changed once, and remove that exact event during cleanup.

BP_RMC_DirectCaller is an included editable Actor Blueprint. Duplicate it into your game to adapt its direct public-node wiring, or use the BP_RMC_BuyerRegion wrapper.

OwnerReady in this raw example means the subsystem reference is valid. It does not replace Is Player Pose Ready or Is Progress Ready. Runtime verification covers these saved calls and a disconnected-owner path; it does not prove every possible failure combination.

RegisterMarker

Pass your owned Marker component; registration makes it available to the owning player’s navigation.

BP_RMC_DirectCaller / DirectRegisterMarker — complete Director-supplied graph
BP_RMC_DirectCaller / DirectRegisterMarker — complete Director-supplied graph · Open full-resolution original

UnregisterMarker

Pass the same owned component during cleanup; do not unregister another actor’s marker.

BP_RMC_DirectCaller / DirectUnregisterMarker — retained configuration/reference capture
BP_RMC_DirectCaller / DirectUnregisterMarker — retained configuration/reference capture · Open full-resolution original

Scroll each panel to read its original-size labels. Follow wires between overlapping panels; use the overview for the complete connection route.

GetVisibleMarkers

Read the outgoing array and break each RMC Map Marker View for label, location, color and per-surface visibility.

BP_RMC_DirectCaller / DirectGetVisibleMarkers — retained configuration/reference capture
BP_RMC_DirectCaller / DirectGetVisibleMarkers — retained configuration/reference capture · Open full-resolution original

Scroll each panel to read its original-size labels. Follow wires between overlapping panels; use the overview for the complete connection route.

RegisterMapSource

Pass your owned source component after configuring its bounds and texture.

BP_RMC_DirectCaller / DirectRegisterMapSource — retained configuration/reference capture
BP_RMC_DirectCaller / DirectRegisterMapSource — retained configuration/reference capture · Open full-resolution original

Scroll each panel to read its original-size labels. Follow wires between overlapping panels; use the overview for the complete connection route.

UnregisterMapSource

Remove your own source during cleanup; query the newly active source afterward.

BP_RMC_DirectCaller / DirectUnregisterMapSource — retained configuration/reference capture
BP_RMC_DirectCaller / DirectUnregisterMapSource — retained configuration/reference capture · Open full-resolution original

Scroll each panel to read its original-size labels. Follow wires between overlapping panels; use the overview for the complete connection route.

GetActiveMapSource

Read the actual source reference; branch on validity before reading its fields.

BP_RMC_DirectCaller / DirectGetActiveMapSource — retained configuration/reference capture
BP_RMC_DirectCaller / DirectGetActiveMapSource — retained configuration/reference capture · Open full-resolution original

Scroll each panel to read its original-size labels. Follow wires between overlapping panels; use the overview for the complete connection route.

ResolveMapLocation

Pass normalized UV and branch on Return Value before using Out Location.

BP_RMC_DirectCaller / DirectResolveMapLocation — retained configuration/reference capture
BP_RMC_DirectCaller / DirectResolveMapLocation — retained configuration/reference capture · Open full-resolution original

Scroll each panel to read its original-size labels. Follow wires between overlapping panels; use the overview for the complete connection route.

TryAddUserWaypoint

Pass world Location and Name. On true retain Waypoint Id; on false display Failure and retain your retry input.

BP_RMC_DirectCaller / DirectTryAddUserWaypoint — complete Director-supplied graph
BP_RMC_DirectCaller / DirectTryAddUserWaypoint — complete Director-supplied graph · Open full-resolution original

AddUserWaypoint

Legacy direct add route returns accepted status; prefer Try Add when your UI needs the returned GUID and Failure.

BP_RMC_DirectCaller / DirectAddUserWaypoint — retained configuration/reference capture
BP_RMC_DirectCaller / DirectAddUserWaypoint — retained configuration/reference capture · Open full-resolution original

Scroll each panel to read its original-size labels. Follow wires between overlapping panels; use the overview for the complete connection route.

RenameUserWaypoint

Pass the retained stable Waypoint Id and new Name, then refresh from the outgoing array.

BP_RMC_DirectCaller / DirectRenameUserWaypoint — retained configuration/reference capture
BP_RMC_DirectCaller / DirectRenameUserWaypoint — retained configuration/reference capture · Open full-resolution original

Scroll each panel to read its original-size labels. Follow wires between overlapping panels; use the overview for the complete connection route.

RemoveUserWaypoint

Pass the retained stable Waypoint Id; on accepted removal refresh your list.

BP_RMC_DirectCaller / DirectRemoveUserWaypoint — retained configuration/reference capture
BP_RMC_DirectCaller / DirectRemoveUserWaypoint — retained configuration/reference capture · Open full-resolution original

Scroll each panel to read its original-size labels. Follow wires between overlapping panels; use the overview for the complete connection route.

ClearUserWaypoints

Clear only the owning local player’s user-waypoint collection; refresh the UI afterward.

BP_RMC_DirectCaller / DirectClearUserWaypoints — retained configuration/reference capture
BP_RMC_DirectCaller / DirectClearUserWaypoints — retained configuration/reference capture · Open full-resolution original

Scroll each panel to read its original-size labels. Follow wires between overlapping panels; use the overview for the complete connection route.

GetUserWaypoints

Read the outgoing array; preserve Id, Name and Location together. Array indices are not stable identifiers.

BP_RMC_DirectCaller / DirectGetUserWaypoints — retained configuration/reference capture
BP_RMC_DirectCaller / DirectGetUserWaypoints — retained configuration/reference capture · Open full-resolution original

Scroll each panel to read its original-size labels. Follow wires between overlapping panels; use the overview for the complete connection route.

ProjectWaypoint

Pass a world Location and branch on its projection result before placing your screen indicator.

BP_RMC_DirectCaller / DirectProjectWaypoint — retained configuration/reference capture
BP_RMC_DirectCaller / DirectProjectWaypoint — retained configuration/reference capture · Open full-resolution original

Scroll each panel to read its original-size labels. Follow wires between overlapping panels; use the overview for the complete connection route.

Bind, refresh and clean up

ConnectDirectObserver
BuyerDirectWaypointsChanged
DisconnectDirectObserver

Connect Direct Observer binds the exact Buyer Direct Waypoints Changed event. That event queries the current array and updates Buyer Waypoint Count. Disconnect Direct Observer removes the same event. The saved EndPlay graph disconnects when the navigation reference is valid. A natural actor-destruction test verified that it removes this listener while preserving another actor’s listener.

BP_RMC_DirectCaller / BuyerDirectEvents — complete Director-supplied graph
BP_RMC_DirectCaller / BuyerDirectEvents — complete Director-supplied graph · Open full-resolution original

Use the outgoing structs in your UI

For Get User Waypoints, loop the returned array and use Break RMC User Waypoint: Id is the stable GUID for rename/remove, Name is the displayed name, and Location is the world destination. For Get Visible Markers, loop the returned array and use Break RMC Map Marker View: Id, Label, Category, World Location, Color, Show On Minimap, Show On Compass and Show On World Map. The saved direct graph returns the arrays. The separate WBP_RMC_BuyerStructUI now provides verified editable Break Struct functions; bind its outgoing fields to your own UI.

Open original in a separate tab

Scroll to inspect the complete original at native resolution.