Health — Rules Internal¶
Folder Overview¶
This folder contains internal helper components and utilities used by the Rules system.
These types support rule execution but are not part of the public API surface.
Purpose¶
Internal rule utilities exist to:
- Support built-in rule behaviour
- Provide reusable helpers
- Keep rule implementations focused
What Lives Here¶
This folder contains:
- Internal plumbing for rules
- Helper utilities used by built-in rules
It does not contain:
- Public extension seams
- Stable integration surfaces
Components¶
CombatPing¶
Internal helper for combat-state signalling.
- Bridges rules to
HealthCombatState - Used by extensions (for example,
DamageExtensions) - Safe no-op if no combat component exists
Notes:
- Not a contract
- Behaviour may change over time
SystemRng¶
Deterministic RNG implementation.
- Backed by
System.Random - Supports optional seeding
- Used by rules such as
CritRule
Use cases:
- Deterministic gameplay
- Reproducible results
UnityRng¶
Wrapper around UnityEngine.Random.
- Non-deterministic by default
- Used when deterministic behaviour is not required
Important Notes¶
Boundaries¶
Do not:
- Depend on these types from gameplay code
- Treat these as extension points
- Build systems on top of these utilities
These are internal implementation details.
Usage Guidance¶
- Treat this folder as implementation support only
- Use abstractions for public integration
- Expect internal helpers to change over time
Not for Production Use¶
This folder is not intended as a gameplay integration surface
Related Documentation¶
- Rules
- Rules Abstractions
- Damage Rules