Overview

WCGASAbsorptionData is a Data Asset that defines absorption rules for the Wonderscape Creations GAS Ally plugin. It allows designers to configure how actors convert blocked effects into counter-effects without writing any C++ code, enabling fully designer-driven absorption mechanics. When an actor with immunity blocks an incoming GameplayEffect, the absorption system checks these rules to potentially apply a beneficial counter-effect.


Creating an Absorption Data Asset

Using the Editor

  1. Open the Content Browser
  2. Right-click in any folder where you want to create the asset
  3. Navigate to: Miscellaneous > Data Asset
  4. Select WCGASAbsorptionData from the class picker
  5. Give your new asset a descriptive name (e.g., DA_FireDemonAbsorptionDA_IceElementalAbsorptionDA_VampireAbsorption)
  6. Double-click the asset to open it and configure its properties

How Absorption Works

System Flow

flowchart TD
    A["Effect Applied to Actor"] --> B{Has Immunity?}
    B -->|"No"| C["Effect Applies Normally"]
    B -->|"Yes"| D["Effect Blocked by Immunity"]
    D --> E{Has Absorption Rules?}
    E -->|"No"| F["Block Only - No Counter-Effect"]
    E -->|"Yes"| G["Find Matching Rule"]
    G --> H{Rule Found?}
    H -->|"No"| F
    H -->|"Yes"| I["Extract Magnitude from Blocked Effect"]
    I --> J["Apply Multiplier"]
    J --> K["Look Up Absorption GE by Tag"]
    K --> L["Apply Absorption Effect"]
    L --> M["Broadcast Absorption Event"]
    
    style A fill:#4a90e2,stroke:#2171b5,color:#fff
    style D fill:#d15858,stroke:#e74c3c,color:#fff
    style L fill:#41a161,stroke:#228b22,color:#fff
    style M fill:#7b68ee,stroke:#6a5acd,color:#fff

Registration Flow

  1. Component Configuration
  2. Automatic Binding at Initialization
  3. Runtime Processing