Requirements
- Target platform
- OpenClaw
- Install method
- Manual import
- Extraction
- Extract archive
- Prerequisites
- OpenClaw
- Primary doc
- SKILL.md
Avoid common Unreal mistakes — garbage collection, UPROPERTY macros, replication authority, and asset reference pitfalls.
Avoid common Unreal mistakes — garbage collection, UPROPERTY macros, replication authority, and asset reference pitfalls.
Hand the extracted package to your coding agent with a concrete install brief instead of figuring it out manually.
I downloaded a skill package from Yavira. Read SKILL.md from the extracted folder and install it by following the included instructions. Tell me what you changed and call out any manual steps you could not complete.
I downloaded an updated skill package from Yavira. Read SKILL.md from the extracted folder, compare it with my current installation, and upgrade it while preserving any custom configuration unless the package docs explicitly say otherwise. Summarize what changed and any follow-up checks I should run.
Raw pointers to UObjects get garbage collected — use UPROPERTY() to prevent UPROPERTY() marks for GC tracking — without it, pointer becomes dangling TWeakObjectPtr for optional references — doesn't prevent collection, check IsValid() NewObject<T>() for UObjects — never raw new, GC won't track it
UPROPERTY() required for Blueprint access — and for GC tracking UFUNCTION() for Blueprint callable/events — also required for replication EditAnywhere vs VisibleAnywhere — edit allows changes, visible is read-only BlueprintReadWrite vs BlueprintReadOnly — controls Blueprint access level
BeginPlay after all components initialized — safe to access components Constructor runs on CDO (Class Default Object) — don't spawn actors or access world PostInitializeComponents before BeginPlay — for component setup EndPlay for cleanup — called on destroy and level transition
Disable tick when not needed — PrimaryActorTick.bCanEverTick = false Use timers instead of tick + counter — GetWorldTimerManager().SetTimer() Tick groups for ordering — PrePhysics, DuringPhysics, PostPhysics Blueprint tick expensive — move hot logic to C++
Server is authority — clients request, server validates and replicates UPROPERTY(Replicated) for variable sync — implement GetLifetimeReplicatedProps UFUNCTION(Server) for client-to-server RPC — must be Reliable or Unreliable HasAuthority() to check if server — before executing authoritative logic Role and RemoteRole for network role checks — ROLE_Authority is server
Hard references load with parent — bloats memory, use for always-needed Soft references (TSoftObjectPtr) load on demand — for optional or large assets LoadSynchronous() or AsyncLoad for soft refs — don't access until loaded Blueprint class references: TSubclassOf<T> — type-safe class selection
TSharedPtr for non-UObjects — reference counted, auto-deletes TUniquePtr for exclusive ownership — can't copy, moves only MakeShared<T>() for creation — single allocation for object and control block Never mix raw new/delete with smart pointers — choose one pattern
Accessing null actor in Blueprint — use IsValid() node before access PIE (Play In Editor) vs packaged build differ — test shipping build Hot reload corrupts Blueprints — close editor, build, reopen GetWorld() null in constructor — world doesn't exist yet, use BeginPlay Spawning in constructor crashes — defer to BeginPlay or later FString for display, FName for identifiers — FName is hashed, faster comparison
Agent frameworks, memory systems, reasoning layers, and model-native orchestration.
Largest current source with strong distribution and engagement signals.