Vixen
c7401864
csharp
public enum DamageStage

The fixed sequence a hit passes through.

Read the guide page for this →

Remarks

Doc 28 § Combat's own list, and the order is the whole of the opinion: Compute → Crit → Mitigate → Absorb → Apply → React. A game inserts a rule at a named point rather than replacing the pipeline — G-Q4, decided in favour of extensible, because a wholesale replacement gets a game a pipeline with none of the tested edge cases and no way back.

⚠ Absorb after mitigate is not arbitrary. A shield that soaked the pre-mitigation number would be worth several times its face value against an armoured target and nothing against a naked one, which is not what anybody writing "absorbs 500 damage" means.

Fields and properties (6)

  • Compute

    What the ability is worth, before anything happens to it.

  • Crit

    Whether it crit, and what that multiplies it by.

  • Mitigate

    What armour, resistance and reductions take off.

  • Absorb

    What shields soak, out of what is left.

  • Apply

    What actually happens to the target's health.

  • React

    What the world does about it: threat, procs, interrupts, death.

Used by (13)

  • BaseDamageRuleVixen.Gameplay.Combat
  • CancellerVixen.Gameplay.Combat.Tests
  • CriticalStrikeRuleVixen.Gameplay.Combat
  • DamagePipelineVixen.Gameplay.Combat
  • DamagePipelineTestsVixen.Gameplay.Combat.Tests
  • HalverVixen.Gameplay.Combat.Tests
  • HealthRuleVixen.Gameplay.Combat
  • IDamageRuleVixen.Gameplay.Combat
  • NumberedVixen.Gameplay.Combat.Tests
  • RecorderVixen.Gameplay.Combat.Tests
  • ResistanceRuleVixen.Gameplay.Combat
  • ShieldAbsorbRuleVixen.Gameplay.Combat
  • ThreatRuleVixen.Gameplay.Combat