using Unity.Entities; namespace ProjectM.Simulation { /// /// Per-entity effective ability stats: the authored base (from the AbilityDatabase blob keyed by /// AbilityRef) folded with the entity's StatModifier buffer by StatRecomputeSystem each predicted /// tick. Derived/local, NOT replicated - both worlds recompute it deterministically from the /// replicated modifier buffer, so it matches under prediction without being in the snapshot. /// public struct EffectiveAbilityStats : IComponentData { public float Damage; public float ProjectileSpeed; public float Range; public float AutoTargetRange; public float AutoTargetConeRadians; public int CooldownTicks; } }