From c14d2b78caaefe781370c2d2a87246866a80158a Mon Sep 17 00:00:00 2001 From: Cameron Date: Wed, 7 Oct 2026 23:06:21 -0700 Subject: [PATCH] Six more small sites with mixed data kinds, each with staff and a news line Co-Authored-By: Claude Sonnet 5.5 --- src/paper.ts | 6 ++++++ src/people.ts | 6 ++++++ src/world.ts | 12 ++++++++++++ 3 files changed, 24 insertions(+) diff --git a/src/paper.ts b/src/paper.ts index d34bf100..ed39343a 100644 --- a/src/paper.ts +++ b/src/paper.ts @@ -255,6 +255,12 @@ const FILLER: [site: string, line: string, person?: number][] = [ ['b16', 'A robot arm at {site} picks its first apple, then eleven things that are not apples.'], ['b17', '{site} is down for an hour as tickets for the school play go on sale.'], ['b18', "{site} adds a second ice machine. Reviews improve to 'fine'."], + ['b19', "{site} loses a buoy. It reports the loss, then the buoy's position, then nothing."], + ['b20', "{site} promises 99.9% uptime. The fine print defines 'up'."], + ['b21', "{site} asks callers to hold. The hold music wins a small award."], + ['b22', "{site} fixes a dropped call. It was the same call, again."], + ['b23', "{site} finds a missing container. It was in the manifest the whole time."], + ['b24', "{site} opens a night class on time management. It runs late."], ['w1', "Gulls nest on the roof of {site}. Landlord {p} 'asks them nothing'.", 0], ['office', 'The vending machine at {site} has only mints for a third week.'], ['lab', "{site} publishes a paper with 114 authors. 'Most of us have read it.'"], diff --git a/src/people.ts b/src/people.ts index ae15cac7..6de5dccf 100644 --- a/src/people.ts +++ b/src/people.ts @@ -32,6 +32,12 @@ const STAFF: Record = { b16: [['Kaz Ito', 'Engineer', 120], ['Tyler Reese', 'Sales', 70]], b17: [['Oksana Petrenko', 'Ops engineer', 115]], b18: [['Rudy Flores', 'Night clerk', 30], ['Edith Crossley', 'Owner', 60]], + b19: [['Dr. Kai Nakamura', 'Ocean scientist', 95], ['Birgit Lund', 'Grants manager', 70]], + b20: [['Sunil Rao', 'Support engineer', 60]], + b21: [['Tasha Greene', 'Call agent', 28], ['Marvin Cho', 'Call agent', 28], ['Ellie Baptiste', 'Call agent', 28], ['Dolores Kemp', 'Supervisor', 55]], + b22: [['Gabe Lindqvist', 'Network engineer', 105]], + b23: [['Nadia Haddad', 'Customs agent', 70], ['Pat Olsen', 'Dispatcher', 55]], + b24: [['Prof. Hollis Wade', 'Instructor', 75], ['Imani Cole', 'Student', 8], ['Gordon Pike', 'Registrar', 50]], w1: [['Lou Ferrante', 'Landlord', 90]], e1: [['Earl Jennings', 'Night operator', 70]], e2: [['Dmitri Volkov', 'Quant', 900], ['Patricia Hale', 'Compliance officer', 160]], diff --git a/src/world.ts b/src/world.ts index 4e75fcbc..9236e51a 100644 --- a/src/world.ts +++ b/src/world.ts @@ -188,6 +188,18 @@ const SITES: SiteSpec[] = [ parts: [['Queue server', 'server', 10, 1], ['Seat map server', 'server', 8, 2], ['Ops PC', 'desk', 3, 2], ['Fraud box', 'server', 6, 2]] }, { id: 'b18', name: 'Crossroads Motel', who: 'A motel with free wifi and a camera in every hall', at: [4200, -180], floor: 'Front desk', parts: [['Front desk', 'desk', 2, 2], ['Hall cameras', 'device', 2, 2], ['Key card box', 'device', 1, 1], ['Owner PC', 'desk', 3, 1]] }, + { id: 'b19', name: 'Fathom Oceanography', who: 'Researchers who log every wave and lose half the boats', at: [7010, 3585], + parts: [['Buoy hub', 'device', 2, 3, 'lab'], ['Sonar server', 'server', 7, 3, 'lab'], ['Wave model', 'server', 9, 2, 'lab'], ['Field laptop', 'desk', 3, 2, 'lab'], ['Grants PC', 'desk', 3, 1], ['Boat radio', 'device', 1, 1]] }, + { id: 'b20', name: 'Gridline Hosting', who: 'Cheap web hosting on a lot of tired racks', at: [-20, 2660], + parts: [['Rack A', 'server', 12, 2], ['Rack B', 'server', 12, 2], ['Backup tape', 'backup', 5, 3], ['Billing server', 'server', 6, 2], ['Support PC', 'desk', 3, 1], ['Door badge box', 'device', 1, 1]] }, + { id: 'b21', name: 'Bayfront Call Center', who: 'Two hundred headsets and a script nobody likes', at: [5100, -3160], + parts: [['Agent PC 1', 'desk', 3, 2], ['Agent PC 2', 'desk', 3, 2], ['Agent PC 3', 'desk', 3, 2], ['Call recorder', 'files', 5, 3], ['Headset hub', 'device', 1, 2], ['Supervisor PC', 'desk', 4, 2]] }, + { id: 'b22', name: 'Relay Telecom', who: 'A small phone company: every call crosses its switches', at: [5700, -40], + parts: [['Edge router', 'device', 3, 3, 'network'], ['Core switch', 'device', 4, 3, 'network'], ['Billing records', 'files', 5, 2], ['Tower monitor', 'device', 2, 2, 'network'], ['NOC PC', 'desk', 4, 2], ['Call log server', 'server', 8, 2]] }, + { id: 'b23', name: 'Cormorant Logistics', who: 'A shipping broker with a tracking map and no sense of time', at: [3500, 1260], + parts: [['Route planner', 'server', 9, 2], ['Customs PC', 'desk', 3, 2], ['Port gateway', 'device', 3, 2, 'network'], ['Manifest vault', 'files', 5, 2], ['Dispatch PC', 'desk', 3, 1], ['Dock scanner', 'device', 1, 2, 'network']] }, + { id: 'b24', name: 'Tern Community College', who: 'Night classes, a student lab, and a very old file server', at: [-900, -140], + parts: [['Student lab 1', 'desk', 3, 2], ['Student lab 2', 'desk', 3, 2], ['Registrar PC', 'desk', 3, 2], ['Course server', 'server', 7, 2], ['Wifi controller', 'device', 2, 2, 'network'], ['Physics bench', 'server', 4, 2, 'lab']] }, ]; // An empty hall by the office: lease it with a deal, then a front fills it with hardware you place yourself. SITES.push({ id: 'w1', name: 'Dockside Warehouse 7', who: 'An empty warehouse with good power and a landlord who asks nothing', at: [1530, 5], floor: 'Hall', cap: 4, rows: 5, -- 2.51.2