# E4.M2 — SpawnEcologyController ## Summary | Field | Value | |--------|--------| | **Module ID** | E4.M2 | | **Epic** | [Epic 4 — World Topology](../epics/epic_04_world_topology.md) | | **Stage target** | Pre-production | | **Status** | Planned (see [dependency register](module_dependency_register.md)) | ## Purpose Resource and NPC spawn profiles per zone, respawn pacing, and depletion/recovery so densities stay within design bounds. ## Responsibilities - Drive `SpawnProfile` / `RespawnRule`; maintain `ZoneEcologyState`; coordinate with [E3.M1](E3_M1_ResourceNodeAndGatherLoop.md) and [E5.M2](E5_M2_NpcAiAndBehaviorProfiles.md). ## Key contracts | Contract | Role | |----------|------| | `SpawnProfile` | What spawns where and how often. | | `RespawnRule` | Timers and caps. | | `ZoneEcologyState` | Current density/depletion snapshot. | ## Module dependencies - **E4.M1** — ZoneGraphAndTravelRules. - **E3.M1** — ResourceNodeAndGatherLoop. - **E5.M2** — NpcAiAndBehaviorProfiles. ## Dependents (by design) - Content and live ops tuning; telemetry for spawn waves and recovery. ## Related implementation slices Epic 4 **Slice 3** — `spawn_wave`, depletion/recovery markers. ## Source anchors - Master plan: [`neon_sprawl_vision.plan.md`](../../../neon_sprawl_vision.plan.md) — Epic 4. - [Module dependency register](module_dependency_register.md)