Interface: ScenarioPackage
Defined in: apps/paracosm/src/engine/types.ts:366
The top-level contract for a Paracosm scenario. Defines everything the engine needs to run a closed-state, turn-based settlement simulation: world schema, departments, effects, UI metadata, research knowledge, policies, presets, and lifecycle hooks.
Example
import type { ScenarioPackage } from 'paracosm';
import { marsScenario } from 'paracosm/mars';
const myScenario: ScenarioPackage = { ... };
Properties
departments
departments:
DepartmentDefinition[]
Defined in: apps/paracosm/src/engine/types.ts:379
effects
effects:
EffectDefinition[]
Defined in: apps/paracosm/src/engine/types.ts:382
engineArchetype
engineArchetype:
"closed_turn_based_settlement"
Defined in: apps/paracosm/src/engine/types.ts:372
Engine archetype this scenario targets
events
events:
EventDefinition[]
Defined in: apps/paracosm/src/engine/types.ts:381
hooks
hooks:
ScenarioHooks
Defined in: apps/paracosm/src/engine/types.ts:387
id
id:
string
Defined in: apps/paracosm/src/engine/types.ts:368
Unique scenario identifier (e.g., "mars-genesis", "lunar-outpost")
knowledge
knowledge:
KnowledgeBundle
Defined in: apps/paracosm/src/engine/types.ts:384
labels
labels:
ScenarioLabels
Defined in: apps/paracosm/src/engine/types.ts:374
metrics
metrics:
MetricDefinition[]
Defined in: apps/paracosm/src/engine/types.ts:380
policies
policies:
ScenarioPolicies
Defined in: apps/paracosm/src/engine/types.ts:385
presets
presets:
ScenarioPreset[]
Defined in: apps/paracosm/src/engine/types.ts:386
setup
setup:
ScenarioSetupSchema
Defined in: apps/paracosm/src/engine/types.ts:376
theme
theme:
ScenarioTheme
Defined in: apps/paracosm/src/engine/types.ts:375
ui
Defined in: apps/paracosm/src/engine/types.ts:383
version
version:
string
Defined in: apps/paracosm/src/engine/types.ts:370
Semantic version of this scenario definition
world
world:
ScenarioWorldSchema
Defined in: apps/paracosm/src/engine/types.ts:377