Description
### Short description
A shared **status-effect system** the Dox mods build on. Sources apply typed debuffs — movement/attack slowness, weapon spread, recoil, view tremor — each with a magnitude and duration; consumers read the effective value (or it's applied as an attribute). Multiple sources **stack correctly** (attribute effects multiply, query effects sum). Active effects mirror to **vanilla effect icons**, and a **`/effect` bridge** lets vanilla commands / other plugins trigger the real effect. Installed because another Dox mod requires it.
### What it provides
- **Typed effects** — `MOVE_SLOW`, `ATTACK_SLOW` (attribute-based), `GUN_SPREAD`, `GUN_RECOIL`, `VIEW_TREMOR` (query-based, client-synced).
- **Source stacking** — e.g. "healing −50%" and "broken leg −35%" combine; each source can be updated or cleared independently.
- **Timed or indefinite** — duration ticks, or state-driven (a source refreshes/removes it).
- **Vanilla icon mirroring** + **`/effect` bridge** — give the display MobEffect via vanilla and it becomes the real effect.
- **Client sync** for visual effects (recoil/tremor) — only the local player's effective value is streamed.
### Requirements
- **DoxCore** (required). Does nothing visible on its own — a shared system used by other Dox mods.
### For modders
- `DoxEffectManager.apply(player, source, type, magnitude, durationTicks)` / `applyBatch` / `clearSource`.
- `DoxEffectManager.magnitude(player, type)` — read effective query value (spread/recoil/tremor).
- `ClientEffects.recoil` / `ClientEffects.tremor` — client-side synced values for render code.
All projects were produced using AI.
All projects were produced using AI.




