From ff8f7535395e4278576eaff91f3047df8a6109be Mon Sep 17 00:00:00 2001 From: Cameron Date: Thu, 9 Jul 2026 22:17:16 -0700 Subject: [PATCH] Darken the ground to one shared floor MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Every walkable seen tile shares one near-dark gunmetal floor — machine tiles included, so chassis plates never mismatch the room; cable runs and conduit keep the amber-warm service read; the tester pedestal matches the game ground. Defense: Cameron called the floor direction after the porcelain patches fought the machine plates. The identity's frame is the hero composition — white towers and signals standing in darkness — and one dark ground realizes it at room scale while every fog treatment keeps its channel (seen stays the only lit floor; heard/remembered/blueprint unchanged). Amended into interface/flat-materials.md in this commit. --- src/bin/assets/mod.rs | 6 ++++-- src/bin/bevy.rs | 21 ++++++++++++++++----- wiki/interface/flat-materials.md | 6 ++++++ wiki/log/DEVLOG.md | 11 +++++++++++ wiki/log/decisions/2026-07-09.md | 9 +++++++++ 5 files changed, 46 insertions(+), 7 deletions(-) diff --git a/src/bin/assets/mod.rs b/src/bin/assets/mod.rs index f17019a..90870bc 100644 --- a/src/bin/assets/mod.rs +++ b/src/bin/assets/mod.rs @@ -18,7 +18,7 @@ use bevy::render::view::Hdr; use bevy::render::view::screenshot::{Screenshot, save_to_disk}; use bevy::window::{CursorGrabMode, CursorOptions, WindowResolution}; -use palette::{GUNMETAL, NEAR_BLACK, PORCELAIN}; +use palette::{GUNMETAL, NEAR_BLACK, scaled}; use rack::{ Blink, ClaimStyle, RackMode, RackRoot, RackState, spawn_exposure_trail, spawn_server_rack, spawn_token_anchors, @@ -606,7 +606,9 @@ fn rebuild_scene( base_color: if splash { Color::srgb(0.90, 0.895, 0.88) } else { - PORCELAIN + // Match the game's dark floor (decided 2026-07-09) so + // assets are judged against the real ground. + scaled(GUNMETAL, 0.42) }, perceptual_roughness: 0.92, metallic: 0.02, diff --git a/src/bin/bevy.rs b/src/bin/bevy.rs index 659f58e..d1ee48f 100644 --- a/src/bin/bevy.rs +++ b/src/bin/bevy.rs @@ -87,7 +87,8 @@ mod palette { // The clinical ramp. /// Bone white — primary data, person silhouettes. pub const BONE: Color = Color::srgb(0.86, 0.85, 0.82); - /// Porcelain — lit lab surfaces: seen floor panels. + /// Porcelain — lit lab surfaces and fixtures (walls' caps, sinks); + /// no longer the seen floor (dark-floor decision 2026-07-09). pub const PORCELAIN: Color = Color::srgb(0.72, 0.73, 0.71); /// Chrome — secondary data, hints, inert fixtures. pub const DIM: Color = Color::srgb(0.55, 0.55, 0.52); @@ -141,7 +142,11 @@ fn family_color(tile: TileType) -> Color { match tile { Rock => NEAR_BLACK, Wall => GUNMETAL, - Floor | FloorDrain => PORCELAIN, + // Dark floor (decided 2026-07-09): the ground is near-dark + // gunmetal so white towers, light pools, and token art carry + // the frame (the 3D floor part darkens ALL walkable tiles to + // one ground; this entry keeps the flat sensorium consistent). + Floor | FloorDrain => scaled(GUNMETAL, 0.42), Entry => DIM, CableRun | Conduit => FLOOR_SERVICE, Core | Rack | PowerCore | Ups | Switch | PatchPanel | BreakerPanel | HvacUnit => { @@ -1886,9 +1891,15 @@ fn material_3d(tile: TileType, fog: Fog, part: TilePart, live: bool) -> Standard TilePart::Floor => match fog { Fog::Seen => { // Cable runs / conduit read as amber-warm service floor - // (machine presence underfoot); everything else is lab - // porcelain under the light rig. - m.base_color = family_color(tile); + // (machine presence underfoot); every other walkable + // tile — machine tiles included — shares ONE dark + // ground (dark-floor decision 2026-07-09), so chassis + // plates never mismatch the room and the lit world is + // towers and signals standing in darkness. + m.base_color = match tile { + TileType::CableRun | TileType::Conduit => family_color(tile), + _ => scaled(GUNMETAL, 0.42), + }; } Fog::Heard => { // Dim warm floor under the bone noise-field pulses diff --git a/wiki/interface/flat-materials.md b/wiki/interface/flat-materials.md index fcad830..00f22df 100644 --- a/wiki/interface/flat-materials.md +++ b/wiki/interface/flat-materials.md @@ -38,6 +38,12 @@ material under light** from the clinical palette; no image textures in the world render. The identity's detail budget moves entirely to lighting, palette, silhouette, and shader-level functional detail. +- **The ground is dark (decided 2026-07-09).** Every walkable seen tile + shares one near-dark gunmetal floor — machine tiles included, so + chassis plates never mismatch the room. Porcelain is for fixtures and + lit surfaces, not floors: the lit world is white towers and signals + standing in darkness (cable runs/conduit keep their amber-warm + service read; the exact floor scale is [TUNE]). - **Palette discipline:** surfaces in white / bone-gray / gunmetal / near-black per the design corpus; amber strictly AI/machine presence and selection; crimson strictly danger/consequence information (detection, diff --git a/wiki/log/DEVLOG.md b/wiki/log/DEVLOG.md index 977a615..0d67aff 100644 --- a/wiki/log/DEVLOG.md +++ b/wiki/log/DEVLOG.md @@ -5,6 +5,17 @@ Type: log ``` Reverse chronological implementation notes. Keep this factual: what changed, why, checks, and spec impact. +## 2026-07-09 - The ground is dark + +- Intent: Cameron flagged floor-color mismatch around server assets; + floors should be dark. +- Changed: all walkable seen tiles share one near-dark gunmetal ground + (machine tiles included; cable runs keep the warm service read); + tester pedestal matches; flat-materials.md amended; decisions entry. +- Checks: full ./tools/check.sh; game tokens capture (one flaky black + frame observed on a first capture, clean on re-run), fog audit green. +- Log: entry only (floor treatment decision). + ## 2026-07-09 - CLAIM CAMERA runs as routed Operations Demand - Intent: land the first complete player-authored Demand lifecycle under diff --git a/wiki/log/decisions/2026-07-09.md b/wiki/log/decisions/2026-07-09.md index 0d1792b..dfd335e 100644 --- a/wiki/log/decisions/2026-07-09.md +++ b/wiki/log/decisions/2026-07-09.md @@ -253,3 +253,12 @@ Type: log queue remains the one Demand family. This firms the previously delegated birth/executor/stall/completion details for the first payload; other actions remain on the explicitly legacy bank until migrated under ROADMAP #33. +- **2026-07-09 — The ground is dark.** Cameron flagged the floor-color + mismatch around server assets and called the direction: the floor should + be dark. Every walkable seen tile now shares one near-dark gunmetal + ground — machine tiles included, dissolving the chassis-plate patchwork — + while porcelain narrows to fixtures and lit surfaces. The frame becomes + the hero composition at room scale: white towers, amber territory, teal + and bone cargo, crimson dust, all standing in darkness. Cable runs keep + the amber-warm service floor. Amended into interface/flat-materials.md; + applied in the game floor materials and the tester pedestal. -- 2.51.2