// Van Maanen's Star Industrial Zone — location metadata // // Schema: server/src/npc/blueprint.rs :: ZoneSpec // Ticket: #609, #630, #661 (copy team) // Validate: tooling/validate-ron content/global/van-maanens-star-industrial-zone.ron zone // // Location-specific metadata for a Van Maanen's Star 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 Van Maanen's Star: 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, )