Status Effects • Abstractions • Core¶
Defines the core lifecycle contracts and identity types for status effects.
Purpose¶
Core abstractions define:
- what a status effect is (
IStatusEffect) - how it is identified (
StatusId) - how stacking should behave (
StatusStackingRule) - the minimal interaction surface (
IStatusEffectController) - attribution (
StatusContext) - whether an application took effect, and why not (
StatusApplyResult)
What Lives Here¶
IStatusEffectStatusIdStatusStackingRuleIStatusEffectControllerStatusContextStatusApplyResult
Important Notes¶
- These are contracts only
- They do not tick or update
- They do not enforce stacking
- They do not apply effects
All behaviour lives in the Core runtime implementation.
Usage Guidance¶
StatusIdis a value-type wrapper around a string identifierIStatusEffectControlleris intentionally minimalStatusContextprovides optional attribution dataStatusApplyResultis whatApplyStatusreturns —Applied, or the gate that refused
Not for Production Use¶
Definitions of the vocabulary, not the systems that use it
- No controller logic lives here
- No stacking logic implementation is defined here
- No runtime behaviour is executed from this folder
Related Documentation¶
- Core → runtime controller and lifecycle implementation
- Effects → concrete behaviour implementations