Files
settled-reach/content/global/krenn-industrial-zone.ron
T
jpmschweitzerandClaude Opus 4.6 f44a105e96 feat(copy): restructure behavior primitives into zone-type templates (#661, D-142)
Move behavior_primitives from per-location zone specs into global
zone-type template files (content/global/zone-types/). Location specs
now declare zone_type and contain only metadata (role weights, social
sites, economic/density levels). Primitives are culture-neutral and
reusable across all 300+ systems. Scrub Krenn-specific language.

New files: rural_agricultural.ron, industrial_freight.ron
Modified: krenn-rural-zone.ron, krenn-industrial-zone.ron (metadata only)

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-13 11:45:42 +01:00

63 lines
2.3 KiB
Plaintext

// Krenn Industrial Zone — location metadata
//
// Schema: server/src/npc/blueprint.rs :: ZoneSpec
// Ticket: #609, #630, #661 (copy team)
// Validate: tooling/validate-ron content/global/krenn-industrial-zone.ron zone
//
// Location-specific metadata for a Krenn industrial freight district.
// Behavior primitives have moved to the zone-type template:
// content/global/zone-types/industrial_freight.ron
//
// This file holds: zone_type reference, location metadata, role weights, social sites.
// The generator reads zone_type to find the primitive pool; overrides come from here.
//
// Character: freight handling, manufacturing, maintenance. High throughput.
// Shift rhythms. Functional over comfortable. Nobody lingers — unless they're on break.
(
zone_type: "industrial_freight",
label: "Industrial Zone",
description: "Freight handling, manufacturing, and maintenance. High throughput, shift-based work rhythms, functional over comfortable. Faces are known by role and bay number more than name. The work doesn't stop between shifts — people do.",
// 1-10. Industrial Krenn: steady credit flow, but it all goes somewhere.
economic_level: 7,
// 1-10. Dense. Multiple shifts overlap. Crowds at handover.
population_density: 6,
// Role presence and weights for this location.
// skill_focus / combat_eligible / behavior_primitives live in the zone-type template.
role_weights: [
( id: "dock_worker", weight: 5 ),
( id: "technician", weight: 4 ),
( id: "foreman", weight: 2 ),
( id: "security", weight: 2 ),
],
social_sites: [
(
site_type: "break_room",
label: "Worker Break Room",
// Between shifts. Decompression. People stop performing for a moment.
min_npcs: 2,
max_npcs: 5,
),
(
site_type: "maintenance_bay",
label: "Maintenance Bay",
// Active work site. Technicians and dock workers cross paths here.
min_npcs: 2,
max_npcs: 4,
),
(
site_type: "loading_platform",
label: "Loading Platform",
// The operational center. Busy, loud, coordinated.
min_npcs: 3,
max_npcs: 8,
),
],
abandoned: false,
poi_overlay: None,
)