@its-not-rocket-science/ananke
    Preparing search index...

    Interface WorldState

    Top-level simulation container.

    Fields are annotated with stability tiers identical to Entity:

    • @core — required by stepWorld every tick.
    • @subsystem(name) — optional state consumed only by a specific sub-module.
    interface WorldState {
        activeFieldEffects?: FieldEffect[];
        entities: Entity[];
        runtimeState?: WorldRuntimeState;
        seed: number;
        tick: number;
    }
    Index

    Properties

    activeFieldEffects?: FieldEffect[]

    @subsystem(capability) Active suppression zones and field-effect modifiers (e.g., mana-null zones, buff auras). Consumed by src/sim/capability.ts.

    entities: Entity[]

    All live and dead entities. Do not splice manually; use stepWorld.

    runtimeState?: WorldRuntimeState

    @subsystem(runtime) Explicit host/runtime state consumed by optional subsystems. Kept separate from core deterministic world data.

    seed: number

    Deterministic RNG seed — same seed + same commands → identical output.

    tick: number

    Current tick count; incremented by stepWorld.