What It Is
A multi-type healing calculation system that processes multiple healing types in a single execution. It's the foundation for hybrid healing abilities that combine different healing mechanics (direct heal + HoT + shields) without requiring separate Gameplay Effects.
What It Does
When a multi-type healing ability activates, this execution calculation processes all healing types atomically:
- Discovers healing types by scanning all SetByCaller magnitudes matching the
Data.Healing.* pattern
- Extracts type tags from each discovered SetByCaller (e.g.,
Data.Healing.HoT → Healing.Type.HoT)
- Calculates critical heals per-type or per-ability (configurable via SetByCaller)
- Applies world context modifiers based on elemental healing types
- Applies HealingReceived modifiers (global + type-specific) from target attributes
- Sums all modified healing into a single total
- Applies stack scaling (optional multiplier based on GE stack count)
- Applies total healing to Health attribute atomically
Its Purpose
Standard WCGASExecCalc_BaseHealing processes ONE healing value per execution. Multi-healing abilities (e.g., direct + HoT + shield) would require multiple Gameplay Effects applied simultaneously. This execution consolidates all healing types into ONE effect, reducing GE overhead and ensuring atomic application.
How It's Used
- Hybrid Healer Abilities: A single "Restoration" ability that provides instant heal, HoT, and absorption shield
- Combo Heal Effects: Environmental healing zones that apply different healing types based on player buffs
- Lifesteal Variants: Attacks that return multiple healing types (health + shields) from damage dealt
Key Features