Knowledge base
Knowledge base
Knowledge base
Free, anonymous browsing of Unreal Engine Blueprint examples, node references, and best practices. The same content the WoalzCraft plugin uses to generate Blueprints.
41 results for reference
Why: '{a}' includes '{b}' as a hard reference, AND '{b}' includes '{a}' as a hard reference. UE5 can't compile either one first without the other already being compiled. Fix: Break the cycle by making ONE side use a SOFT reference (TSoftObjectPtr). Pick the side that doesn't need {b} immediately at construction — change the variable type to 'Soft Object Reference' instead of 'Object Reference'. Use Load Asset to resolve it at runtime.
Why: Your code reads from a '{ref}' reference, but nothing was assigned to it. UE5 doesn't error at compile time, but warns that the runtime access will crash with null-pointer. Fix: Wherever this BP spawns, set the reference via Spawn Actor From Class → Set Reference. If it should be set from outside, expose the variable (eye-icon = Instance Editable) so it's set in the level editor. Add an Is Valid? Branch before each read to gracefully handle null.
Why: Some node or variable hardcoded a reference to BP_{name}, but that file was deleted or moved. The Asset Registry can't resolve it. Fix: Either: (a) re-create BP_{name} if accidentally deleted (Content Browser → right-click → Blueprint Class), or (b) update the reference to point at the correct existing Blueprint, or (c) make the reference soft (TSoftObjectPtr) so missing assets don't fail compilation.
Why: The variable '{name}' is typed as something that no longer exists in your project. This happens when you delete or rename a Blueprint, Struct, or Class that other variables referenced — UE5 leaves the reference dangling. Fix: Open the Blueprint that owns '{name}' (in the Errors panel, click the file link). In My Blueprint panel, click '{name}' to select. In Details panel, change Variable Type to a valid type, or delete the variable entirely and remove all references.
A pointer to a UObject instance. If the target is destroyed the reference becomes invalid — always IsValid-check before use.
A reference to a class (not an instance). Use as input to SpawnActor or to compare types.
Why: A node tries to access the '{comp}' component, but it was deleted from the Blueprint's SCS (Components panel). The reference is dangling. Fix: Open the Blueprint, go to the Components panel (top-left). Check if '{comp}' is there. If missing: either re-add it (drag from Add Component) or remove all nodes that reference it. If renamed: select the node, find it in Details → Component dropdown → pick the actual name.
Pattern: EventBeginPlay → CreateWidget(OwningPlayer=GetPlayerController, WidgetType=WBP_MyWidget) → SetVariable(HUDWidget=ReturnValue) → CastTo<WBP_MyWidget>(HUDWidget) → Cast Succeeded → AddToViewport(ZOrder=0). Always store widget reference in a variable. CreateWidget inputs: 'OwningPlayer' (PlayerController) and 'WidgetType' (class). Exec in='execute', exec out='then'.
K2Node_SpawnActorFromClass. Class pin is a class reference dropdown.
SpawnActorFromClassUE 5.4, 5.7updated 2mo agoInternal pin names: True path is 'then', False path is 'else'. Display names show True/False.
BranchUE 5.4, 5.7updated 2mo ago