Decouple base configuration and administration from companions
This commit is contained in:
@@ -39,3 +39,11 @@ The server selects a living friendly survivor for each spectator and replicates
|
||||
Core reads `ERR_ScenarioDefinition` from `Configs/ERR/EveronSites.conf`. `ERR_SiteService` owns the resulting locations, guards, containers and stock. The scenario component handles pending/ready/failed preparation separately from mission progression. Location IDs are supplied by configuration and replicated; templates carry no fixed scenario identity. Initial inventory items are created once, and retries move the same entities into the container. Readiness requires observed physical inventory contents. A completed service never refills stock or replaces destroyed sites.
|
||||
|
||||
`ERR_DocumentComponent` binds each mandatory physical clue to a radio location. Core recovery applies it only to that destination; optional generic enemy intel retains its broader discovery behavior. Definition validation requires an accessible, guaranteed clue route and a starting map. Native tests mutate separate definition instances to verify invalid inputs are rejected. [Authoring details and current stock](site-authoring.md).
|
||||
|
||||
## Base configuration and administration
|
||||
|
||||
`ERR_FactionCatalog` is authored in `Configs/ERR/VanillaFactions.conf` and injected through the game mode resource. The scenario chooses guard groups from it; spawning, spawn authorization and spectator filtering use its player faction; HQ and support use its enemy faction. Startup rejects missing, identical or non-hostile faction keys, and site preparation rejects guard groups with mismatched affiliation. Shared intel and waypoint resources belong to `ERR_Resources`, not a faction selector. A new catalog alone does not provide new factions or suitable support compositions.
|
||||
|
||||
Core owns the `/esc` command registration, owner RPC, server-derived admin authorization, rate limit and command service. `/esc status`, `settings` and `mission radio show|set N` work without companion addons. Spectator cycling is available to players through its existing owner RPC. Chat extends the service with existing HQ/Intel aliases and HQ journal output; it does not install a second command transport. Native service fixtures test parsing and rejected mutations, not remote RPC identity enforcement.
|
||||
|
||||
Preparation failure is retained in replicated state. Spawning remains disabled, local guidance can explain failure before a character exists, and administrators can request the detailed cause. Waiting for site preparation does not consume a player's bounded spawn-attempt budget. The failure path stops services instead of silently leaving their timers running. Remote and visible pre-spawn presentation remain runtime acceptance work.
|
||||
|
||||
Reference in New Issue
Block a user