feat(assets): author tile maps for Sova Transit District (#582, #583)

Complete tile data for all five locations in the transit district:
- The Terminal (44x28, z=1): logistics hub with supervisor office LOS window
- The Last Shift (34x22, z=1): bar with corner booth and back room alley exit
- Maintenance Corridors (44x6, z=0): restricted storage, hatch room, transition corridor
- Gate Ground (40x32, z=1): aperture chamber, staging, customs lanes, concourse
- Gate Gallery (32x10, z=2): Commission-only observation gallery

Gate corridor split into two files (gate-ground, gate-gallery) because
the Location struct supports only one tile_bounds per file.

Updated district.yaml locations list with gate-ground and gate-gallery.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
2026-03-04 22:47:43 +01:00
co-authored by Claude Opus 4.6
parent ac68ec6eef
commit 610dd78ff1
6 changed files with 320 additions and 3 deletions
@@ -10,4 +10,6 @@ locations:
- "the-terminal"
- "the-last-shift"
- "maintenance-corridors"
- "gate-ground"
- "gate-gallery"
npc_count: 17
@@ -0,0 +1,48 @@
# Location: Gate Corridor — Observation Gallery
# Source: D-093 gate cluster zone spec
# Zone palette: surface #b8bec4 / fog tint #0a1222
# z=2 (above gate concourse)
canonical_id: "krenn.sova.transit.location.gate-gallery"
display_name: "Observation Gallery"
description: >
Commission-only observation gallery overlooking the gate concourse from
z=2. The gallery rail is a transparent low wall — occupants can see
down to the concourse below, but upward LOS from z=1 is blocked except
at the staircase. Access restricted to Commission personnel.
tile_bounds:
x_min: 0
y_min: 0
x_max: 31
y_max: 9
z: 2
# Legend:
# R = Restricted (Commission-only access)
# W = Wall (solid)
#
# Layout (32 wide x 10 tall):
# Row 0: North wall
# Rows 1-8: Gallery floor (R tiles — restricted access)
# Row 9: South wall (gallery rail — transparent low wall, modeled as W;
# cross-z LOS is handled server-side)
tiles:
- "WWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWW"
- "WRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRW"
- "WRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRW"
- "WRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRW"
- "WRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRW"
- "WRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRW"
- "WRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRW"
- "WRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRW"
- "WRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRW"
- "WWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWW"
sightlines:
open: true
notes: >
Gallery rail is transparent — full downward LOS to gate concourse (z=1).
Upward LOS from concourse to gallery is blocked except at staircase.
Cross-z LOS behavior handled by server shadowcasting system.
@@ -0,0 +1,79 @@
# Location: Gate Corridor — Ground Level
# Source: D-093 gate cluster zone spec
# Zone palette: surface #b8bec4 / fog tint #0a1222
canonical_id: "krenn.sova.transit.location.gate-ground"
display_name: "Gate Corridor"
description: >
The gate cluster handles all traffic between Station Sova and the horizon
gate network. From north to south: the restricted aperture chamber where
span gate transits occur, freight staging and passenger arrival halls,
customs lanes (freight and pedestrian), and the wide gate concourse
where arrivals disperse into the transit district.
tile_bounds:
x_min: 0
y_min: 0
x_max: 39
y_max: 31
z: 1
# Legend:
# F = Floor (walkable) W = Wall (solid, blocks LOS)
# R = Restricted (access-tier gated)
#
# Layout (40 wide x 32 tall):
# Row 0: North wall
# Rows 1-4: Aperture chamber (centered 8 wide, R tiles — restricted)
# Row 5: Wall separator
# Rows 6-13: Freight staging (west, 24 tiles) | passenger arrival (east, 13 tiles)
# Row 14: Wall with door gaps (cols 12, 32)
# Rows 15-22: Freight customs (west, 20 tiles, lane walls) | ped customs (east, 17 tiles, lanes)
# Row 23: Wall with wide opening to concourse (cols 5-34 open)
# Rows 24-31: Gate concourse (full 38-tile width, 8 rows — public open space)
#
# Corridor width: gate concourse 8vt (D-093)
# Customs lanes: freight 2vt/lane with wall stubs, pedestrian 1vt/lane
tiles:
- "WWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWW"
- "WWWWWWWWWWWWWWWWRRRRRRRRWWWWWWWWWWWWWWWW"
- "WWWWWWWWWWWWWWWWRRRRRRRRWWWWWWWWWWWWWWWW"
- "WWWWWWWWWWWWWWWWRRRRRRRRWWWWWWWWWWWWWWWW"
- "WWWWWWWWWWWWWWWWRRRRRRRRWWWWWWWWWWWWWWWW"
- "WWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWW"
- "WFFFFFFFFFFFFFFFFFFFFFFFFWFFFFFFFFFFFFFW"
- "WFFFFFFFFFFFFFFFFFFFFFFFFWFFFFFFFFFFFFFW"
- "WFFFFFFFFFFFFFFFFFFFFFFFFWFFFFFFFFFFFFFW"
- "WFFFFFFFFFFFFFFFFFFFFFFFFWFFFFFFFFFFFFFW"
- "WFFFFFFFFFFFFFFFFFFFFFFFFWFFFFFFFFFFFFFW"
- "WFFFFFFFFFFFFFFFFFFFFFFFFWFFFFFFFFFFFFFW"
- "WFFFFFFFFFFFFFFFFFFFFFFFFWFFFFFFFFFFFFFW"
- "WFFFFFFFFFFFFFFFFFFFFFFFFWFFFFFFFFFFFFFW"
- "WWWWWWWWWWWWFWWWWWWWWWWWWWWWWWWWFWWWWWWW"
- "WFFFFFWFFFFFWFFFFFFFFWFFFFWFFFFWFFFFFFFW"
- "WFFFFFWFFFFFWFFFFFFFFWFFFFWFFFFWFFFFFFFW"
- "WFFFFFWFFFFFWFFFFFFFFWFFFFWFFFFWFFFFFFFW"
- "WFFFFFWFFFFFWFFFFFFFFWFFFFWFFFFWFFFFFFFW"
- "WFFFFFWFFFFFWFFFFFFFFWFFFFWFFFFWFFFFFFFW"
- "WFFFFFWFFFFFWFFFFFFFFWFFFFWFFFFWFFFFFFFW"
- "WFFFFFWFFFFFWFFFFFFFFWFFFFWFFFFWFFFFFFFW"
- "WFFFFFWFFFFFWFFFFFFFFWFFFFWFFFFWFFFFFFFW"
- "WWWWWFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFWWWWW"
- "WFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFW"
- "WFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFW"
- "WFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFW"
- "WFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFW"
- "WFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFW"
- "WFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFW"
- "WFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFW"
- "WFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFW"
sightlines:
open: false
notes: >
Gate concourse (rows 24-31) is wide open with full sightlines.
Customs lanes have wall stubs creating partial occlusion between
lanes. Aperture chamber is fully walled and restricted. Cross-z
LOS from the observation gallery (z=2) into the concourse is
handled server-side; the gallery rail is a transparent low wall.
@@ -1,2 +1,52 @@
# Location: Maintenance Corridors (smuggling spaces)
# canonical_id: krenn.sova.transit.location.maintenance-corridors
# Source: D-093, #313 (Sprint 12 spatial layout)
# Zone palette: surface #4e5054 / fog tint #101214
# z=0 (Era 1, below main structures)
canonical_id: "krenn.sova.transit.location.maintenance-corridors"
display_name: "Maintenance Corridors"
description: >
Era 1 maintenance infrastructure beneath the transit district. A long
transition corridor connects the logistics hub to the bar district.
Restricted storage at the west end is shared with The Terminal above.
A maintenance hatch at the east end provides the cross-z connection
to the main level. Everything reads as mundane maintenance — the ring
operates here because nobody looks twice.
tile_bounds:
x_min: 0
y_min: 0
x_max: 43
y_max: 5
z: 0
# Legend:
# F = Floor (walkable) W = Wall (solid, blocks LOS)
# R = Restricted (access-tier gated)
#
# Layout (44 wide x 6 tall):
# Row 0: North wall
# Row 1: Restricted storage (west, 8 tiles) | wall | corridor (26) | wall | hatch room (east, 6)
# Row 2: Doors connect rooms (F in wall positions at cols 9 and 36)
# Row 3-4: Same as row 1 (walls between rooms)
# Row 5: South wall
#
# Corridor width: 2vt visible at rows 1-4 (internal height, standard maintenance)
# Transition corridor: 26 tiles (~26m at 1m/vt) between storage and hatch
# Restricted storage: R tiles for access restriction
# Maintenance hatch: F tiles (cross-z connection is future movement feature)
tiles:
- "WWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWW"
- "WRRRRRRRRWFFFFFFFFFFFFFFFFFFFFFFFFFFWFFFFFFW"
- "WRRRRRRRRFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFW"
- "WRRRRRRRRWFFFFFFFFFFFFFFFFFFFFFFFFFFWFFFFFFW"
- "WRRRRRRRRWFFFFFFFFFFFFFFFFFFFFFFFFFFWFFFFFFW"
- "WWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWW"
sightlines:
open: false
notes: >
Long straight corridor with limited concealment. Storage and hatch
rooms are separated by walls with single-tile doors. Mundane
appearance per D-093 G-08 — no visually suspicious tile arrangements.
@@ -1,2 +1,65 @@
# Location: The Last Shift (bar)
# canonical_id: krenn.sova.transit.location.the-last-shift
# Source: D-093, #312 (Sprint 12 spatial layout)
# Zone palette: surface #6b4018 / fog tint #200c04
canonical_id: "krenn.sova.transit.location.the-last-shift"
display_name: "The Last Shift"
description: >
A converted maintenance bay turned bar. The long counter runs along the
west wall with full sightlines across the room. A corner booth in the
northeast sees the bar, card table, entrance, and back room — prime
observation real estate. Scattered tables fill the main floor. A back
room with an alley exit provides the key traversal route for the ring.
tile_bounds:
x_min: 0
y_min: 0
x_max: 33
y_max: 21
z: 1
# Legend:
# F = Floor (walkable) W = Wall (solid, blocks LOS)
# V = Void (outside building) R = Restricted (access-tier gated)
#
# Layout (34 wide x 22 tall):
# Row 0: North exterior wall
# Rows 1-4: Main floor + corner booth (NE, cols 26-31, walled alcove)
# Rows 5-16: Open main floor (bar counter is furniture on F tiles)
# Row 17: Back room north wall with door (col 21 = F)
# Rows 18-20: Main floor (west) + back room (east, cols 22-32)
# Row 21: South wall with alley exit gap (cols 29-32 = F)
tiles:
- "WWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWW"
- "WFFFFFFFFFFFFFFFFFFFFFFFFFWFFFFFFW"
- "WFFFFFFFFFFFFFFFFFFFFFFFFFWFFFFFFW"
- "WFFFFFFFFFFFFFFFFFFFFFFFFFWFFFFFFW"
- "WFFFFFFFFFFFFFFFFFFFFFFFFFWFFFFFFW"
- "WFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFW"
- "WFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFW"
- "WFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFW"
- "WFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFW"
- "WFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFW"
- "WFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFW"
- "WFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFW"
- "WFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFW"
- "WFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFW"
- "WFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFW"
- "WFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFW"
- "WFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFW"
- "WFFFFFFFFFFFFFFFFFFFFWFWFFFFFFFFFW"
- "WFFFFFFFFFFFFFFFFFFFFWFFFFFFFFFFFW"
- "WFFFFFFFFFFFFFFFFFFFFWFFFFFFFFFFFW"
- "WFFFFFFFFFFFFFFFFFFFFWFFFFFFFFFFFW"
- "WWWWWWWWWWWWWWWWWWWWWWWWWWWWWFFFFW"
sightlines:
open: false
notes: >
Corner booth (NE alcove, rows 1-4) has LOS to bar counter, card table
area, main entrance, and back room door. Bar counter along west wall
gives staff full sightlines across the main floor. Back room is
partially occluded by wall at col 21.
social_site: "bar"
@@ -1,2 +1,77 @@
# Location: The Terminal (logistics hub)
# canonical_id: krenn.sova.transit.location.the-terminal
# Source: D-093, #311 (Sprint 12 spatial layout)
# Zone palette: surface #7a8490 / fog tint #0d1520
canonical_id: "krenn.sova.transit.location.the-terminal"
display_name: "The Terminal"
description: >
Sova's freight logistics hub. Scanner bays filter incoming cargo at the
south entrance; a wide main corridor runs north through the manifest
processing floor. The break room sits in the northeast. The supervisor's
office overlooks the corridor through a large interior window. Restricted
storage in the northwest corner is where the ring hides re-tagged cargo.
tile_bounds:
x_min: 0
y_min: 0
x_max: 43
y_max: 27
z: 1
# Legend:
# F = Floor (walkable) W = Wall (solid, blocks LOS)
# V = Void (outside building) R = Restricted (access-tier gated)
#
# Layout (44 wide x 28 tall):
# Rows 0: North exterior wall
# Rows 1-4: Restricted storage (NW, 11 tiles) + corridor + supervisor office (NE, 9 tiles)
# Row 5: Storage south wall; corridor + office continue
# Rows 6-8: Open corridor; supervisor office east side
# Row 7: ** Supervisor window — col 22 is F (LOS gap into office) **
# Row 9: Supervisor office south wall
# Rows 10-11: Main corridor (full width chokepoint — high sightline value)
# Rows 12-17: Manifest processing (west, 14 tiles) + break room (east, 13 tiles)
# Row 18: Break room south wall; manifest open to corridor
# Rows 19-21: South corridor
# Row 22: Scanner bay north walls with entry gaps
# Rows 23-26: Scanner bay interiors (3 bays)
# Row 27: South exterior wall
tiles:
- "VVVVVWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWVVVVV"
- "VVVVVWRRRRRRRRRRRWFFFFFFFFFFWFFFFFFFFFWVVVVV"
- "VVVVVWRRRRRRRRRRRWFFFFFFFFFFWFFFFFFFFFWVVVVV"
- "VVVVVWRRRRRRRRRRRWFFFFFFFFFFWFFFFFFFFFWVVVVV"
- "VVVVVWRRRRRRRRRRRWFFFFFFFFFFWFFFFFFFFFWVVVVV"
- "VVVVVWWWWWWWWWWWWWFFFFFFFFFFWFFFFFFFFFWVVVVV"
- "VVVVVWFFFFFFFFFFFFFFFFFFFFFFWFFFFFFFFFWVVVVV"
- "VVVVVWFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFWVVVVV"
- "VVVVVWFFFFFFFFFFFFFFFFFFFFFFWFFFFFFFFFWVVVVV"
- "VVVVVWFFFFFFFFFFFFFFFFFFFFFFWWWWWWWWWWWVVVVV"
- "VVVVVWFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFWVVVVV"
- "VVVVVWFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFWVVVVV"
- "VVVVVWFFFFFFFFFFFFFFWFFFWFFFFFFFFFFFFFWVVVVV"
- "VVVVVWFFFFFFFFFFFFFFWFFFWFFFFFFFFFFFFFWVVVVV"
- "VVVVVWFFFFFFFFFFFFFFWFFFWFFFFFFFFFFFFFWVVVVV"
- "VVVVVWFFFFFFFFFFFFFFWFFFWFFFFFFFFFFFFFWVVVVV"
- "VVVVVWFFFFFFFFFFFFFFWFFFWFFFFFFFFFFFFFWVVVVV"
- "VVVVVWFFFFFFFFFFFFFFWFFFWFFFFFFFFFFFFFWVVVVV"
- "VVVVVWFFFFFFFFFFFFFFFFFFWWWWWWWWWWWWWWWVVVVV"
- "VVVVVWFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFWVVVVV"
- "VVVVVWFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFWVVVVV"
- "VVVVVWFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFWVVVVV"
- "VVVVVWWWWFFFFFFWWWWFFFFFFFFWWWWFFFFFFFWVVVVV"
- "VVVVVWFFFFFFFFFWFFFFFFFFFFFWFFFFFFFFFFWVVVVV"
- "VVVVVWFFFFFFFFFWFFFFFFFFFFFWFFFFFFFFFFWVVVVV"
- "VVVVVWFFFFFFFFFWFFFFFFFFFFFWFFFFFFFFFFWVVVVV"
- "VVVVVWFFFFFFFFFWFFFFFFFFFFFWFFFFFFFFFFWVVVVV"
- "VVVVVWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWVVVVV"
sightlines:
open: false
notes: >
Supervisor office window faces main corridor at row 7, col 22 (F gap in
wall line). Player standing in the corridor has direct LOS into the
office interior. This is the primary investigative discovery moment.
social_site: "logistics-hub"