CrimsonSkillTree · Lesson 5 of 6

Configure the Trees

Beginner4 minSetup

Before you start

  • Completed: Add the Manager to Player State
  • An ST_Combat asset that compiles
Video coming soon

Chapters

Configured Skill Trees

Select the Skill Tree Manager component on your Player State. In the Details panel, fill Configured Skill Trees — the list of trees this manager owns. Each entry pairs a type tag (e.g. SkillTree.Combat) with a UCrimsonSkillTree asset (your ST_Combat).

Manager component → Details → Configured Skill Trees: add an entry (type tag + tree asset). Initialization is automatic.
Initialization is automatic
The manager initializes itself in BeginPlay — it binds to the owning pawn/controller and builds the runtime tree instances once they're ready, so there's no init function to call. GAS-driven conditions resolve the owner's Ability System Component automatically.

Configure in C++

cpp
// Point the manager at the asset from the previous lesson — init is automatic.
FCrimsonSkillTreeEntry Entry;
Entry.SkillTreeTypeTag = FGameplayTag::RequestGameplayTag(FName("SkillTree.Combat"));
Entry.SkillTreeAsset = CombatTreeAsset; // the UCrimsonSkillTree* you authored
SkillTreeManager->ConfiguredSkillTrees.Add(Entry);
Add trees at runtime too
Beyond the configured list, inject trees on the fly with AddDynamicSkillTree (e.g. from equipment or a Game Feature) and remove them with RemoveDynamicSkillTree.
Verify
Hit Play. The manager creates its tree instances without warnings, and OnSkillTreeStateUpdated broadcasts when node state changes.