What problem does it solve? Choosing the wrong UFUNCTION, UPROPERTY, or UCLASS specifiers in Unreal Engine C++ causes Blueprint nodes to not appear, properties to stay hidden, or events to never fire. This Skill provides the correct reflection specifier patterns, meta tags, and dispatch rules so C++ code exposes a clean, designer-facing API to Blueprint. ## Core Features & Use Cases - Function exposure: Correct usage of BlueprintCallable, BlueprintPure, BlueprintImplementableEvent, and BlueprintNativeEvent, including the Implementation pattern and calling conventions. - Property exposure: EditAnywhere/EditDefaultsOnly/VisibleAnywhere combined with BlueprintReadWrite/BlueprintReadOnly, plus meta tags like ExposeOnSpawn, ClampMin/ClampMax, and AllowPrivateAccess. - Interfaces and libraries: Blueprint-implementable interfaces with Execute dispatch, TScriptInterface storage, Blueprint function libraries, TSubclassOf and soft references, and BlueprintAssignable delegates. - Use Case: A gameplay programmer writes a C++ health component and needs designers to tweak MaxHealth in the Details panel, bind to an OnHealthDepleted event in the Event Graph, and override an OnAlert behavior in a Blueprint subclass — this Skill gives the exact specifiers and call patterns for each. ## Quick Start Ask the agent to expose a C++ actor's health property and damage function to Blueprint with the correct UPROPERTY and UFUNCTION specifiers for Unreal Engine 5.8.