This document describes all StateTree nodes provided by the WonderscapeCreationsGASAlly plugin, organized by header file. These nodes integrate the plugin's GAS-based systems with Unreal's StateTree AI framework.


WCGASStateTreeConditions.h

Purpose: Core conditions for GAS attribute, ability, faction, threat, and squad role checks.

Conditions

Node Name Description
WC: Has Status Effect Checks if an actor has a specific status effect active. Supports inversion to check for absence of an effect. Useful for gating behaviors based on crowd control or buff states.
WC: Attribute Compare Compares a gameplay attribute value against a threshold using various operators (<, <=, ==, >=, >). Supports percentage-based comparisons (e.g., "health below 30%") when given a max attribute for reference.
WC: Can Activate Ability Validates whether an ability can be activated by checking if it's granted, not blocked by tags, not pending removal, and optionally not on cooldown. Essential for AI ability selection.
WC: Phase Active Checks if a boss is currently in a specific phase. Requires the WCGASBossPhaseComp component. Used to branch AI behavior by boss encounter phase.
WC: Team Attitude Evaluates the faction relationship between two actors (Friendly, Neutral, Enemy). Works with the WC GAS Ally faction system to determine targeting validity.
WC: Threat Threshold Compares threat values against thresholds. Can check a specific target, the highest threat target, or if ANY target exceeds a threshold. Core condition for combat state management.
WC: Squad Role Checks if an actor has specific squad roles assigned. Allows filtering AI behaviors based on role (Tank, DPS, Healer, Support, etc.).
WC: Has Wounded Allies Determines if the actor's squad has wounded members below a configurable health percentage threshold. Triggers protection or healing behaviors.
WC: Should Protect Allies Combines role-based protection checking with wounded ally detection. Returns true when the AI's role has protection duties AND wounded allies exist.

WCGASStateTreeCombat.h

Purpose: Tasks and conditions for managing combat state and threat table operations.

Tasks

Node Name Description
WC: Enter Combat Transitions an AI into combat mode with an initial target. Adds the target to the threat table and fires the OnCombatStateChanged delegate.
WC: Exit Combat Returns an AI to idle state and optionally clears the threat table. Used when disengaging from combat.
WC: Modify Threat Manipulates threat values with multiple operations: Add flat threat, Multiply existing threat, Set to exact value, Clear threat for one target, or Clear All threat. Supports timed multipliers.
WC: Set Combat State Directly sets the combat state (Idle, Engaging, Retreating, Dead). For special cases like forcing retreat; prefer Enter/Exit Combat for normal transitions.

Conditions

Node Name Description
WC: Combat State Checks if the AI is in specific combat states. Accepts multiple allowed states and supports inversion.

WCGASStateTreeTasks.h

Purpose: Core GAS operation tasks for abilities, effects, and boss phase management.

Tasks

Node Name Description
WC: Activate Ability Activates a GAS ability by tag or class. Supports optional target binding and can wait for the ability to complete before succeeding.
WC: Apply Effect Applies a GameplayEffect to self, a target, or both. Supports effect level scaling.
WC: Wait For Phase A waiting task that succeeds when a boss enters (or leaves, if inverted) a specific phase. Supports timeout configuration.

WCGASStateTreeEvaluators.h