diff --git a/art/portraits/so_joan_wetherlaw.webp b/art/portraits/so_joan_wetherlaw.webp new file mode 100644 index 0000000..6b9ce16 Binary files /dev/null and b/art/portraits/so_joan_wetherlaw.webp differ diff --git a/art/portraits/so_nell_teague.webp b/art/portraits/so_nell_teague.webp new file mode 100644 index 0000000..1f890d7 Binary files /dev/null and b/art/portraits/so_nell_teague.webp differ diff --git a/art/portraits/so_ogden.webp b/art/portraits/so_ogden.webp new file mode 100644 index 0000000..28a1dfd Binary files /dev/null and b/art/portraits/so_ogden.webp differ diff --git a/art/portraits/so_ruth_cotter.webp b/art/portraits/so_ruth_cotter.webp new file mode 100644 index 0000000..348fafb Binary files /dev/null and b/art/portraits/so_ruth_cotter.webp differ diff --git a/art/scenes/so_09_lobby.webp b/art/scenes/so_09_lobby.webp new file mode 100644 index 0000000..55c779d Binary files /dev/null and b/art/scenes/so_09_lobby.webp differ diff --git a/art/scenes/so_10_sickbay.webp b/art/scenes/so_10_sickbay.webp new file mode 100644 index 0000000..8b0d730 Binary files /dev/null and b/art/scenes/so_10_sickbay.webp differ diff --git a/art/scenes/so_11_pipe_room.webp b/art/scenes/so_11_pipe_room.webp new file mode 100644 index 0000000..7458505 Binary files /dev/null and b/art/scenes/so_11_pipe_room.webp differ diff --git a/art/scenes/so_12_plant.webp b/art/scenes/so_12_plant.webp new file mode 100644 index 0000000..2c7d915 Binary files /dev/null and b/art/scenes/so_12_plant.webp differ diff --git a/art/scenes/so_13_vigil.webp b/art/scenes/so_13_vigil.webp new file mode 100644 index 0000000..8775258 Binary files /dev/null and b/art/scenes/so_13_vigil.webp differ diff --git a/art/scenes/so_14_tunnels.webp b/art/scenes/so_14_tunnels.webp new file mode 100644 index 0000000..0536277 Binary files /dev/null and b/art/scenes/so_14_tunnels.webp differ diff --git a/art/scenes/so_15_sump.webp b/art/scenes/so_15_sump.webp new file mode 100644 index 0000000..6539cdf Binary files /dev/null and b/art/scenes/so_15_sump.webp differ diff --git a/art/scenes/so_16_dormitory.webp b/art/scenes/so_16_dormitory.webp new file mode 100644 index 0000000..fec4f40 Binary files /dev/null and b/art/scenes/so_16_dormitory.webp differ diff --git a/art/scenes/so_17_canteen.webp b/art/scenes/so_17_canteen.webp new file mode 100644 index 0000000..723a6db Binary files /dev/null and b/art/scenes/so_17_canteen.webp differ diff --git a/art/scenes/so_18_estate.webp b/art/scenes/so_18_estate.webp new file mode 100644 index 0000000..ea02f1f Binary files /dev/null and b/art/scenes/so_18_estate.webp differ diff --git a/art/scenes/so_19_studio.webp b/art/scenes/so_19_studio.webp new file mode 100644 index 0000000..d5cd50c Binary files /dev/null and b/art/scenes/so_19_studio.webp differ diff --git a/docs/scenarios/STANDING_ORDER.md b/docs/scenarios/STANDING_ORDER.md index 2b2060a..4fd5dd2 100644 --- a/docs/scenarios/STANDING_ORDER.md +++ b/docs/scenarios/STANDING_ORDER.md @@ -34,7 +34,7 @@ ### Still to do - **Desk passes**, in the house order: GM chair, Act Three stress, player-chair contrarian. -- **Joan Wetherlaw's portrait.** Mr Smith must never have one. +- **Art is complete:** twelve faces, nineteen plates and fourteen maps. Mr Smith must never have a portrait. --- diff --git a/docs/scenarios/STANDING_ORDER_ART.md b/docs/scenarios/STANDING_ORDER_ART.md index b6b4512..b64c722 100644 --- a/docs/scenarios/STANDING_ORDER_ART.md +++ b/docs/scenarios/STANDING_ORDER_ART.md @@ -68,7 +68,7 @@ regenerate it** — a picture that contradicts a clue is worse than no picture. ## Plates — `art/scenes/` -**All eight are generated**, as `art/scenes/so_NN_.webp`. +**All nineteen are generated**, as `art/scenes/so_NN_.webp`. | File | Where it is used | |---|---| @@ -140,6 +140,29 @@ regenerate it** — a picture that contradicts a clue is worse than no picture. > the work; children in the frame would make it sentimental and would also make a count > load-bearing. +### Interiors added in v1.1 — `so_09` to `so_19` + +One plate for every underground location that had none, so the table can be shown the +room the blueprint describes. Same shared prefix, `--ar 3:2`. **Rooms are shown empty or +nearly so**, for the creche's reason: a crowd makes a count load-bearing. + +| File | Location | Prompt tail | +|---|---|---| +| `so_09_lobby` | 6 · Lobby and Enquiries | *…an underground government reception lobby from 1974, a long enquiries counter with a telephone and a brass bell, rows of wooden benches, a round steel blast door standing shut at the far end, polished linoleum, one mild man in a cardigan behind the counter looking up* | +| `so_10_sickbay` | 9 · Sick bay | *…a small underground hospital ward from 1974, iron-framed beds in two rows under warm lamps, a folding screen beside one bed, an enamel jug and glass on a bedside locker, calm and scrubbed, no patients visible* | +| `so_11_pipe_room` | 11 · Pipe room | *…a cramped underground mail room from 1974, a polished brass pneumatic tube running down the wall from the ceiling to a small delivery hatch, a message capsule lying in a wire tray below it, wooden sorting pigeonholes, a single desk lamp, nobody present* | +| `so_12_plant` | 12 · Plant floor | *…an underground boiler house from 1974 under a low concrete ceiling with no windows, a huge riveted coal-fired boiler with round pressure gauges and a glowing firebox door, two diesel generators, pipes and ducting overhead, caged electric lamps, a coal barrow and shovel, nobody present* | +| `so_13_vigil` | 13 · Vigil hall | *…a large plain assembly hall cut into rock deep underground, long rows of stacking chairs facing a low platform with a lectern, a long blank wooden board above the platform, loudspeakers on the rock walls, warm light, empty* | +| `so_14_tunnels` | 14 · Coal roads | *…an old unlined coal mine road underground turned into a vegetable garden, long raised beds under rows of hanging lamps, a timber-propped roof, round water tanks, hens in a wire run, nobody present* | +| `so_15_sump` | 15 · The Sump | *…a short painted brick corridor deep underground from 1962 with a row of small rooms behind heavy iron doors with little barred windows, a plain wooden desk with a closed ledger, a single hanging light bulb, clean and dry, nobody present* | +| `so_16_dormitory` | 16 · Dormitories | *…a long underground dormitory hall from 1974, rows of iron double bunks with folded grey blankets, a knitted blanket and a small stuffed bear on one bunk, steel lockers, a washing line strung between bunks, warm and lived in, nobody present* | +| `so_17_canteen` | 17 · Canteen | *…a large underground works canteen from 1974, long formica tables with bentwood chairs, a serving hatch with steel urns and stacked trays, steam rising from a tea urn, warm and ready, nobody present* | +| `so_18_estate` | 18 · The Estate | *…an old coal mine road deep underground lined on both sides with small homemade houses built of timber and plywood, each with a painted front door and a lamp, washing hung across the road, a child's tricycle by a doorstep, doors ajar, warm and crowded with belongings, nobody visible* | +| `so_19_studio` | 7 · The studio | *…a small windowless radio studio from 1962 with acoustic tiles, a large grey reel-to-reel tape machine standing on the desk with two big spools of tape, a heavy old microphone on a desk stand, a squat iron safe with a dial in the corner, a single desk lamp, nobody present* | + +**The Vigil hall's board is blank on purpose.** It is the roll of honour, and the 1974 +list of the dead has no names on it. If a render puts lettering on it, regenerate. + --- ## Portraits — `art/portraits/` @@ -158,24 +181,30 @@ regenerate it** — a picture that contradicts a clue is worse than no picture. | `so_marlow` | *…a very old British woman of one hundred and one in a hospital bed, eyes open and entirely lucid, ashamed rather than confused* | Filed a war to save a fortnight | | `so_teague` | *…a heavy-set British man of thirty-eight in a plain 1970s police-style uniform without insignia, jaw set, not angry, holding himself very still* | Has decided the surface is a lie because the alternative is unbearable | | `so_kit_marlow` | *…a British girl of seventeen in a hand-me-down jumper, holding a rolled sheet of paper, hopeful and a little defiant* | Has drawn the sky four thousand times from one photograph | -| `so_joan_wetherlaw` | ⚠ **NOT GENERATED — see below** *…a British farming woman of sixty-seven in a waxed coat, weathered, holding a yard brush, unimpressed and patient* | Has been right for four years and has stopped telling anyone | +| `so_joan_wetherlaw` | *…a British hill farmer, a woman of sixty-seven in an old oilskin coat and headscarf, weathered face, holding a broom, patient and wry* | Signed for a stranger's parcel once and cannot picture his face | +| `so_ruth_cotter` | *…a British woman of twenty-four in a knitted cardigan, heavily pregnant, one hand resting on her belly, tired and a little exasperated, looking straight at the viewer* | Would like people to stop calling her baby the thousandth | +| `so_nell_teague` | *…a British girl of nine in a hand-knitted jumper holding a wax crayon, eyes half closed as if humming to herself, content and far away* | Hums a tune at tea that her father does not like | +| `so_ogden` | *…a mild British man of about sixty in a cardigan and tie, holding a pen over a blank form, polite and entirely at a loss* | Has no form for visitors | -⚠ **Joan Wetherlaw's portrait does not exist.** Six of the seven portraits are on -disk as `art/portraits/so_.webp`; hers is the one that never rendered. +**Portraits are all `--ar 2:3`.** Mr Bewley and Mr Prosser reuse their THROUGH TRAIN +portraits (`tt_bewley.svg`, `tt_prosser.svg`). -Three attempts, all stalled: two ran the bridge's full 1800-second window and -reported `timed out waiting for grid`, and a third with deliberately reworded -prompt text stalled the same way. **It is not the prompt and it is not -deduplication** — the reword was a genuinely new match key and it hung too. The -thirteen generations before it all returned in about forty-five seconds, and -everything submitted after roughly 21:20 hung, which is consistent with the -Midjourney account's fast GPU hours running out partway through the batch and -later jobs dropping into the relax queue. +**Every portrait now exists.** Joan Wetherlaw's never rendered in v1.0, and the notes then +blamed exhausted fast hours. **That was wrong: the prompt was being refused.** Midjourney +declines a blocked prompt in a reply the bridge cannot see, so `mj-gen` waits out its full +30 minutes and exits 0 with no file. The account was fine; other prompts in the same session +returned in 40 seconds. The same happened to the Sump in v1.1. -**To finish it:** re-run the prompt above when the quota has reset. Nothing else -in the scenario depends on it — Joan is an Act One NPC and the act does not need -her face — and `mj-gen` exits 0 on a timeout, so check for the file rather than -trusting the exit code. +- **Proven:** *"bare"* (in *"one bare bulb"*) blocks a prompt. *"a single hanging light + bulb"* renders. +- **Joan's old prompt** was blocked by one of *"waxed"*, *"yard brush"* or *"unimpressed"*. + The reworded prompt above renders. +- **Before blaming the account**, look at the channel. If Midjourney posted nothing at all + for the job, reword the prompt. + +**Rejected and regenerated in v1.1:** the pipe room (an empty stage with no tube), the plant +floor twice (a railway tunnel with a number on it, then a boiler house with a skylight — +nobody below can see the sky), and the studio (a modern hi-fi with no tape machine). --- diff --git a/packs/standingorder/000003.log b/packs/standingorder/000003.log index bea135e..933f02c 100644 Binary files a/packs/standingorder/000003.log and b/packs/standingorder/000003.log differ diff --git a/tools/scenario-standingorder.mjs b/tools/scenario-standingorder.mjs index 86db3e5..e68e53f 100644 --- a/tools/scenario-standingorder.mjs +++ b/tools/scenario-standingorder.mjs @@ -167,7 +167,18 @@ export const SO_PLATES = [ { name: "6 · The Control Room", src: "art/scenes/so_06_control_room.webp" }, { name: "7 · The Registry", src: "art/scenes/so_07_registry.webp" }, { name: "8 · The crèche", src: "art/scenes/so_08_creche.webp" }, - { name: "9 · Bellhouse — section", src: "art/maps/bellhouse-section.webp" } + { name: "9 · Bellhouse — section", src: "art/maps/bellhouse-section.webp" }, + { name: "10 · The lobby and Enquiries", src: "art/scenes/so_09_lobby.webp" }, + { name: "11 · The studio", src: "art/scenes/so_19_studio.webp" }, + { name: "12 · The sick bay", src: "art/scenes/so_10_sickbay.webp" }, + { name: "13 · The pipe room", src: "art/scenes/so_11_pipe_room.webp" }, + { name: "14 · The plant floor", src: "art/scenes/so_12_plant.webp" }, + { name: "15 · The Vigil hall", src: "art/scenes/so_13_vigil.webp" }, + { name: "16 · The coal roads", src: "art/scenes/so_14_tunnels.webp" }, + { name: "17 · The Sump", src: "art/scenes/so_15_sump.webp" }, + { name: "18 · The dormitories", src: "art/scenes/so_16_dormitory.webp" }, + { name: "19 · The canteen", src: "art/scenes/so_17_canteen.webp" }, + { name: "20 · The Estate", src: "art/scenes/so_18_estate.webp" } ]; /* The underground as thirteen blueprint scenes, drawn by tools/bellhouse-plans.mjs. Numbers @@ -228,12 +239,19 @@ export const SO_CAST = [ + "stands the detail down. He will fight anybody who tries to take her." } ]; -/* The people, for showing. Joan Wetherlaw has no portrait yet — see STANDING_ORDER_ART. */ +/* The people, for showing. Mr Bewley and Mr Prosser are THROUGH TRAIN's own portraits. + Mr Smith has none and must never have one. */ export const SO_FACES = [ { name: "Controller Edwin Sowerby", src: "art/portraits/so_sowerby.webp" }, { name: "Registrar Alice Pennyfeather", src: "art/portraits/so_pennyfeather.webp" }, { name: "Dr Ivy Larkhall", src: "art/portraits/so_larkhall.webp" }, { name: "Deputy Controller Edith Marlow", src: "art/portraits/so_marlow.webp" }, { name: "Warden Michael Teague", src: "art/portraits/so_teague.webp" }, - { name: "Sub-Officer Kit Marlow", src: "art/portraits/so_kit_marlow.webp" } + { name: "Kit Marlow", src: "art/portraits/so_kit_marlow.webp" }, + { name: "Nell Teague", src: "art/portraits/so_nell_teague.webp" }, + { name: "Ruth Cotter", src: "art/portraits/so_ruth_cotter.webp" }, + { name: "Mr Ogden, Enquiries", src: "art/portraits/so_ogden.webp" }, + { name: "Joan Wetherlaw", src: "art/portraits/so_joan_wetherlaw.webp" }, + { name: "Mr Bewley, Registry", src: "art/portraits/tt_bewley.svg" }, + { name: "Mr Prosser, Stores", src: "art/portraits/tt_prosser.svg" } ];