Round 2 orders, all seven. - data/CANON-DELTA.md: ledger of every invention beyond the codex, with the rationale and the arithmetic behind the numbers. - colour + flavor on all 21 machines (kills UI's hardcoded lookup and RENDER's black-on-black); desaturated industrial per style guide §8. - heat: software decoder 45->55 gen at 0.0025/tick (throttles 9.3s, scrams 13.3s) so it's a burst generator, not a better ASIC; a pinch on the splicer. - bufferCap 240 = 10s of the reference chain's one-decoder-down deficit. - commission queue reordered into a ramp + 3 standing orders, incl. THE CORRECTION BUYBACK (the sellout loop: anchors clean THE SCREEN). - container line (moov-shard/offset-ribbon/sync-key) unblocks the hex splicer; bloom grades 1-5. bloom-concentrate kept — LANE-SCREEN hardcodes it. - validator 28 -> 36 tests, covering every v2 field; FORWARD_CANON pruned. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
97 lines
8.0 KiB
JSON
97 lines
8.0 KiB
JSON
[
|
|
{ "id": "seam-extractor", "name": "SEAM EXTRACTOR", "codex": "4:seam-extractor", "kind": "extractor",
|
|
"footprint": { "x": 2, "y": 2 },
|
|
"recipes": ["extract-mdat", "extract-bayer-grit", "extract-field-splinters", "extract-silver-frames"],
|
|
"powerDraw": 2, "asset": "seam-extractor", "color": "#8a7a32",
|
|
"flavor": "The miner. Chews mdat seams and spits raw payload. The drill head is CRT-certified. Operators are not." },
|
|
|
|
{ "id": "belt", "name": "STREAM BELT", "codex": "4:belts", "kind": "belt",
|
|
"footprint": { "x": 1, "y": 1 }, "recipes": [], "powerDraw": 0, "beltSpeed": 2,
|
|
"asset": "belt", "color": "#4a4e52",
|
|
"flavor": "Moves cargo. Back-pressure is a feature. Riding the belt is discouraged in writing and in no other way." },
|
|
{ "id": "lane-splitter", "name": "LANE SPLITTER", "codex": "4:demuxer", "kind": "splitter",
|
|
"footprint": { "x": 1, "y": 1 }, "recipes": [], "powerDraw": 1,
|
|
"asset": "lane-splitter", "color": "#55595e",
|
|
"flavor": "One lane in, two lanes out, round-robin, no favourites. The only fair machine in the Bitstream." },
|
|
{ "id": "buffer-tank", "name": "BUFFER TANK", "codex": "2:buffer-charge", "kind": "buffer",
|
|
"footprint": { "x": 2, "y": 2 }, "recipes": [], "powerDraw": 0, "bufferCap": 240,
|
|
"asset": "buffer-tank", "color": "#5a6068",
|
|
"flavor": "Smoothness in a tank. Drains at exactly one frame per 16.6ms. Keep it above the red line; below the red line the audio has opinions." },
|
|
|
|
{ "id": "demuxer", "name": "DEMUXER", "codex": "4:demuxer", "kind": "crafter",
|
|
"footprint": { "x": 2, "y": 2 }, "recipes": ["demux-ore", "demux-container"], "powerDraw": 3,
|
|
"asset": "demuxer", "color": "#4e5a62",
|
|
"flavor": "The first splitter. Cleaves raw ore into brightness, colour, and pure directional intent." },
|
|
{ "id": "demosaicer", "name": "DEMOSAICER", "codex": "4:demosaicer", "kind": "crafter",
|
|
"footprint": { "x": 3, "y": 2 }, "recipes": ["demosaic-rggb", "demosaic-vng4", "demosaic-stripes"],
|
|
"powerDraw": 5, "asset": "demosaicer", "color": "#6a5f52",
|
|
"flavor": "Weaves checkerboard grit into full colour. Feed it stripes and it will jam and extrude MOIRÉ — as designed, as warned, as invoiced." },
|
|
{ "id": "dct-press", "name": "DCT PRESS", "codex": "4:dct-press", "kind": "crafter",
|
|
"footprint": { "x": 3, "y": 3 }, "recipes": ["press-color-plate", "press-anchor-slab"],
|
|
"powerDraw": 8, "asset": "dct-press", "color": "#3f4348",
|
|
"flavor": "Spatial into frequency. Slams pixel blocks into coefficient decks; run it backwards and an entire picture falls out of the slot." },
|
|
{ "id": "quantizer", "name": "QUANTIZER", "codex": "4:quantizer", "kind": "crafter",
|
|
"footprint": { "x": 2, "y": 2 }, "recipes": ["quantize", "quantize-crime", "skim-ringing"],
|
|
"powerDraw": 4, "asset": "quantizer", "color": "#5e5148",
|
|
"flavor": "The crusher, the moneymaker, the sin. Every bit it destroys becomes room to move. The dial goes to CRIME." },
|
|
{ "id": "subsampler", "name": "SUBSAMPLER", "codex": "4:subsampler", "kind": "crafter",
|
|
"footprint": { "x": 2, "y": 3 }, "recipes": ["subsample-422", "subsample-420", "pan-speckle"],
|
|
"powerDraw": 4, "asset": "subsampler", "color": "#4a5560",
|
|
"flavor": "Spins colour down to grade and vents the difference as bandwidth. Leaks by design. Place downwind of anything you are fond of." },
|
|
{ "id": "mv-extractor", "name": "MV EXTRACTOR", "codex": "4:mv-extractor-and-p-caster", "kind": "crafter",
|
|
"footprint": { "x": 2, "y": 2 }, "recipes": ["extract-motion"], "powerDraw": 5,
|
|
"asset": "mv-extractor", "color": "#454b52",
|
|
"flavor": "Watches the footage until it knows where the picture wants to go, then pipes the wanting off as fluid." },
|
|
{ "id": "p-caster", "name": "P-CASTER", "codex": "4:mv-extractor-and-p-caster", "kind": "crafter",
|
|
"footprint": { "x": 2, "y": 2 }, "recipes": ["cast-delta-wafer", "cast-janus-wafer"],
|
|
"powerDraw": 4, "asset": "p-caster", "color": "#4d545c",
|
|
"flavor": "Prints instructions, not pictures. Each one is applied to whatever came before it — correct or otherwise." },
|
|
{ "id": "gop-assembler", "name": "GOP ASSEMBLER", "codex": "4:gop-assembler", "kind": "crafter",
|
|
"footprint": { "x": 3, "y": 2 },
|
|
"recipes": ["assemble-gop", "assemble-gop-ibbp", "assemble-gop-i-only", "spool-offset-ribbon"],
|
|
"powerDraw": 6, "asset": "gop-assembler", "color": "#7a6a44",
|
|
"flavor": "One anchor, N wafers, one crate, per the cadence punch-card. Opening a sealed crate is a production verb here, not a crime." },
|
|
{ "id": "mosh-reactor", "name": "MOSH REACTOR", "codex": "4:mosh-reactor", "kind": "crafter",
|
|
"footprint": { "x": 3, "y": 3 }, "recipes": ["mosh"], "powerDraw": 8,
|
|
"asset": "mosh-reactor", "color": "#52333e",
|
|
"flavor": "A decoder sealed in a vessel and starved of anchors. The I-frame leaves through the side airlock. The hallucination leaves through the front." },
|
|
{ "id": "bloom-duplicator", "name": "P-FRAME DUPLICATOR", "codex": "4:bloom-loop", "kind": "crafter",
|
|
"footprint": { "x": 1, "y": 1 },
|
|
"recipes": ["tap-bloom", "bloom-grade-1", "bloom-grade-2", "bloom-grade-3", "bloom-grade-4", "bloom-grade-5"],
|
|
"powerDraw": 6, "asset": "bloom-duplicator", "color": "#5a5060",
|
|
"flavor": "Stamps the same displacement onto the same cargo every lap. Grade 5 is visibly trying to leave its canister in one direction." },
|
|
{ "id": "field-loom", "name": "FIELD LOOM", "codex": "4:field-loom", "kind": "crafter",
|
|
"footprint": { "x": 3, "y": 2 }, "recipes": ["weave-fields", "loom-vhold-roll"],
|
|
"powerDraw": 5, "asset": "field-loom", "color": "#3f5a44",
|
|
"flavor": "Weaves and unweaves time. The two halves of a splinter were captured a moment apart and have never agreed since." },
|
|
{ "id": "telecine-puller", "name": "TELECINE PULLER", "codex": "4:telecine-puller", "kind": "crafter",
|
|
"footprint": { "x": 2, "y": 2 }, "recipes": ["mill-judder"], "powerDraw": 4,
|
|
"asset": "telecine-puller", "color": "#6e5a38",
|
|
"flavor": "Cranks 24 into 30 on a deliberately lumpy cam. Runs backwards as a purifier, which we do not discuss on site." },
|
|
{ "id": "hex-splicer", "name": "HEX SPLICER", "codex": "4:hex-splicer", "kind": "crafter",
|
|
"footprint": { "x": 3, "y": 3 }, "recipes": ["splice-offsets"], "powerDraw": 12,
|
|
"asset": "hex-splicer", "color": "#5a3a3a",
|
|
"flavor": "Nudges the offsets a few bytes so the decoder fetches garbage. Keep its buffer fed, or it splices itself." },
|
|
{ "id": "artifact-bottler", "name": "ARTIFACT BOTTLER", "codex": "2:science-packs", "kind": "crafter",
|
|
"footprint": { "x": 2, "y": 2 },
|
|
"recipes": ["can-static", "mix-rec709", "mix-dci-p3", "mix-rec2020",
|
|
"cut-sync-key", "bottle-container-pack",
|
|
"bottle-analog-pack", "bottle-spatial-pack", "bottle-temporal-pack"],
|
|
"powerDraw": 4, "asset": "artifact-bottler", "color": "#566056",
|
|
"flavor": "Bottles the triptych. Contents are shelf-stable in the legal sense, i.e. no law has been written that mentions them." },
|
|
|
|
{ "id": "decode-asic", "name": "DECODE ASIC", "codex": "4:decode-asic", "kind": "power",
|
|
"footprint": { "x": 2, "y": 2 }, "recipes": [], "powerDraw": 0, "powerGen": 20,
|
|
"asset": "decode-asic", "color": "#b9bec4",
|
|
"flavor": "Cool, efficient, inflexible. Handles standard profiles and declines to imagine anything else. It will outlive you." },
|
|
{ "id": "software-decoder", "name": "SOFTWARE DECODER", "codex": "4:software-decoder", "kind": "power",
|
|
"footprint": { "x": 2, "y": 2 }, "recipes": [], "powerDraw": 0, "powerGen": 55, "heatPerTick": 0.0025,
|
|
"asset": "software-decoder", "color": "#6e3a34",
|
|
"flavor": "Decodes ANYTHING, at any temperature. Throttles at 0.7, scrams at 1.0, screams throughout. The lag is the damage model." },
|
|
|
|
{ "id": "shipper", "name": "SCREEN UPLINK", "codex": "7:the-muxer", "kind": "shipper",
|
|
"footprint": { "x": 2, "y": 2 }, "recipes": [], "powerDraw": 5,
|
|
"asset": "shipper", "color": "#46525e",
|
|
"flavor": "Composites whatever you hand it onto THE SCREEN. There is no undo. The absence of undo is the product." }
|
|
]
|