Skip to main content

Block By Result Attribute

The Block By Result Attribute Processor blocks an Effect according to the Result Attributes added during the processing pipeline.

For example, it can be used to block critical hits after the Critical Hit Processor has marked the Effect as Critical.

Implementation

Effect Result Attributes are stored as a bit flag enum, where every attribute is assigned a power-of-two value.

For example:

  • Reflected = 32 (2⁵)
  • Critical = 64 (2⁶)

If an Effect has both attributes, its Result Attributes value becomes 96.

To block critical hits, the resolved Block By Result Attribute Stat simply needs to contain the Critical flag (64). If the Effect's Result Attributes contain any matching flags, the Effect is blocked.

Result Attribute blocking is evaluated separately for the Source Actor and the Target Actor.

The Block By Result Attribute Stat is resolved as follows:

Base Stat (BS) Processors

  • For the Target Actor, the Stat is obtained directly from the Target Stat's Block By Result Attribute Relative Stat.
  • For the Source Actor, the Stat is obtained from the Source Actor using the Stat Key referenced by the Target Stat's Block By Result Attribute Relative Key.

Attribute Stat (AS) / Multi Attribute Stat (MAS) Processors

  • For the Target Actor, the Stat is obtained from the Target Actor using the Stat Key referenced by the Attribute Stat's Block By Result Attribute Relative Key.
  • For the Source Actor, the Stat is obtained directly from the Attribute Stat's Block By Result Attribute Relative Stat, since the Attribute Stat already belongs to the Source Actor.

The resolved Stat must be an Int Stat.