All six rooms are now flux_local matte paintings quantized by the engine (basement, gig, alley, office, Roskilde, field), with rooms reduced to invisible sim ops: walkability, depth, water, the footlight chases, and the NO MEANS NO! spray painted OVER the brick painting. The office desk gets a real walk-behind from the priority bands. Soundtrack: tools/gen_music.py synthesizes five loop-safe mood overrides (music/*.wav) in the band's own meters — 7/4 walking bass for the basement, the 9/8 riff floored for gig and Roskilde, chromatic noir for the alley, puck-rock bounce for the office, a 5/4 drone for the field. Fixed the office east-door lane (crates pinched the exit trigger) and removed the alley's unreachable north exit. Playthrough: 60/60, won, byte-identical twice, one intentional death. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
810 lines
10 KiB
JSON
810 lines
10 KiB
JSON
{
|
|
"name": "Roskilde Main Stage, 1994",
|
|
"enter_text": "Denmark. Sixty thousand people breathing as one animal in the dark. Sepultura's van died in Germany, Peter Gabriel just walked off, and somebody has to be next.",
|
|
"background": "roskilde",
|
|
"ops": [
|
|
{
|
|
"Rect": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"w": 320,
|
|
"h": 112,
|
|
"ink": {
|
|
"color": null,
|
|
"pri": "Keep",
|
|
"ctl": {
|
|
"Set": 1
|
|
},
|
|
"hot": null
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"Rect": {
|
|
"x": 0,
|
|
"y": 110,
|
|
"w": 320,
|
|
"h": 6,
|
|
"ink": {
|
|
"color": 17,
|
|
"pri": "Keep",
|
|
"ctl": {
|
|
"Set": 1
|
|
},
|
|
"hot": null
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"Rect": {
|
|
"x": 4,
|
|
"y": 113,
|
|
"w": 8,
|
|
"h": 4,
|
|
"ink": {
|
|
"color": 248,
|
|
"pri": "Keep",
|
|
"ctl": {
|
|
"Set": 1
|
|
},
|
|
"hot": null
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"Rect": {
|
|
"x": 16,
|
|
"y": 113,
|
|
"w": 8,
|
|
"h": 4,
|
|
"ink": {
|
|
"color": 249,
|
|
"pri": "Keep",
|
|
"ctl": {
|
|
"Set": 1
|
|
},
|
|
"hot": null
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"Rect": {
|
|
"x": 28,
|
|
"y": 113,
|
|
"w": 8,
|
|
"h": 4,
|
|
"ink": {
|
|
"color": 250,
|
|
"pri": "Keep",
|
|
"ctl": {
|
|
"Set": 1
|
|
},
|
|
"hot": null
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"Rect": {
|
|
"x": 40,
|
|
"y": 113,
|
|
"w": 8,
|
|
"h": 4,
|
|
"ink": {
|
|
"color": 251,
|
|
"pri": "Keep",
|
|
"ctl": {
|
|
"Set": 1
|
|
},
|
|
"hot": null
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"Rect": {
|
|
"x": 52,
|
|
"y": 113,
|
|
"w": 8,
|
|
"h": 4,
|
|
"ink": {
|
|
"color": 252,
|
|
"pri": "Keep",
|
|
"ctl": {
|
|
"Set": 1
|
|
},
|
|
"hot": null
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"Rect": {
|
|
"x": 64,
|
|
"y": 113,
|
|
"w": 8,
|
|
"h": 4,
|
|
"ink": {
|
|
"color": 253,
|
|
"pri": "Keep",
|
|
"ctl": {
|
|
"Set": 1
|
|
},
|
|
"hot": null
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"Rect": {
|
|
"x": 76,
|
|
"y": 113,
|
|
"w": 8,
|
|
"h": 4,
|
|
"ink": {
|
|
"color": 254,
|
|
"pri": "Keep",
|
|
"ctl": {
|
|
"Set": 1
|
|
},
|
|
"hot": null
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"Rect": {
|
|
"x": 88,
|
|
"y": 113,
|
|
"w": 8,
|
|
"h": 4,
|
|
"ink": {
|
|
"color": 255,
|
|
"pri": "Keep",
|
|
"ctl": {
|
|
"Set": 1
|
|
},
|
|
"hot": null
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"Rect": {
|
|
"x": 100,
|
|
"y": 113,
|
|
"w": 8,
|
|
"h": 4,
|
|
"ink": {
|
|
"color": 248,
|
|
"pri": "Keep",
|
|
"ctl": {
|
|
"Set": 1
|
|
},
|
|
"hot": null
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"Rect": {
|
|
"x": 112,
|
|
"y": 113,
|
|
"w": 8,
|
|
"h": 4,
|
|
"ink": {
|
|
"color": 249,
|
|
"pri": "Keep",
|
|
"ctl": {
|
|
"Set": 1
|
|
},
|
|
"hot": null
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"Rect": {
|
|
"x": 124,
|
|
"y": 113,
|
|
"w": 8,
|
|
"h": 4,
|
|
"ink": {
|
|
"color": 250,
|
|
"pri": "Keep",
|
|
"ctl": {
|
|
"Set": 1
|
|
},
|
|
"hot": null
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"Rect": {
|
|
"x": 136,
|
|
"y": 113,
|
|
"w": 8,
|
|
"h": 4,
|
|
"ink": {
|
|
"color": 251,
|
|
"pri": "Keep",
|
|
"ctl": {
|
|
"Set": 1
|
|
},
|
|
"hot": null
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"Rect": {
|
|
"x": 148,
|
|
"y": 113,
|
|
"w": 8,
|
|
"h": 4,
|
|
"ink": {
|
|
"color": 252,
|
|
"pri": "Keep",
|
|
"ctl": {
|
|
"Set": 1
|
|
},
|
|
"hot": null
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"Rect": {
|
|
"x": 160,
|
|
"y": 113,
|
|
"w": 8,
|
|
"h": 4,
|
|
"ink": {
|
|
"color": 253,
|
|
"pri": "Keep",
|
|
"ctl": {
|
|
"Set": 1
|
|
},
|
|
"hot": null
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"Rect": {
|
|
"x": 172,
|
|
"y": 113,
|
|
"w": 8,
|
|
"h": 4,
|
|
"ink": {
|
|
"color": 254,
|
|
"pri": "Keep",
|
|
"ctl": {
|
|
"Set": 1
|
|
},
|
|
"hot": null
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"Rect": {
|
|
"x": 184,
|
|
"y": 113,
|
|
"w": 8,
|
|
"h": 4,
|
|
"ink": {
|
|
"color": 255,
|
|
"pri": "Keep",
|
|
"ctl": {
|
|
"Set": 1
|
|
},
|
|
"hot": null
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"Rect": {
|
|
"x": 196,
|
|
"y": 113,
|
|
"w": 8,
|
|
"h": 4,
|
|
"ink": {
|
|
"color": 248,
|
|
"pri": "Keep",
|
|
"ctl": {
|
|
"Set": 1
|
|
},
|
|
"hot": null
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"Rect": {
|
|
"x": 208,
|
|
"y": 113,
|
|
"w": 8,
|
|
"h": 4,
|
|
"ink": {
|
|
"color": 249,
|
|
"pri": "Keep",
|
|
"ctl": {
|
|
"Set": 1
|
|
},
|
|
"hot": null
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"Rect": {
|
|
"x": 220,
|
|
"y": 113,
|
|
"w": 8,
|
|
"h": 4,
|
|
"ink": {
|
|
"color": 250,
|
|
"pri": "Keep",
|
|
"ctl": {
|
|
"Set": 1
|
|
},
|
|
"hot": null
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"Rect": {
|
|
"x": 232,
|
|
"y": 113,
|
|
"w": 8,
|
|
"h": 4,
|
|
"ink": {
|
|
"color": 251,
|
|
"pri": "Keep",
|
|
"ctl": {
|
|
"Set": 1
|
|
},
|
|
"hot": null
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"Rect": {
|
|
"x": 244,
|
|
"y": 113,
|
|
"w": 8,
|
|
"h": 4,
|
|
"ink": {
|
|
"color": 252,
|
|
"pri": "Keep",
|
|
"ctl": {
|
|
"Set": 1
|
|
},
|
|
"hot": null
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"Rect": {
|
|
"x": 256,
|
|
"y": 113,
|
|
"w": 8,
|
|
"h": 4,
|
|
"ink": {
|
|
"color": 253,
|
|
"pri": "Keep",
|
|
"ctl": {
|
|
"Set": 1
|
|
},
|
|
"hot": null
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"Rect": {
|
|
"x": 268,
|
|
"y": 113,
|
|
"w": 8,
|
|
"h": 4,
|
|
"ink": {
|
|
"color": 254,
|
|
"pri": "Keep",
|
|
"ctl": {
|
|
"Set": 1
|
|
},
|
|
"hot": null
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"Rect": {
|
|
"x": 280,
|
|
"y": 113,
|
|
"w": 8,
|
|
"h": 4,
|
|
"ink": {
|
|
"color": 255,
|
|
"pri": "Keep",
|
|
"ctl": {
|
|
"Set": 1
|
|
},
|
|
"hot": null
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"Rect": {
|
|
"x": 292,
|
|
"y": 113,
|
|
"w": 8,
|
|
"h": 4,
|
|
"ink": {
|
|
"color": 248,
|
|
"pri": "Keep",
|
|
"ctl": {
|
|
"Set": 1
|
|
},
|
|
"hot": null
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"Rect": {
|
|
"x": 304,
|
|
"y": 113,
|
|
"w": 8,
|
|
"h": 4,
|
|
"ink": {
|
|
"color": 249,
|
|
"pri": "Keep",
|
|
"ctl": {
|
|
"Set": 1
|
|
},
|
|
"hot": null
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"FbmFill": {
|
|
"x": 0,
|
|
"y": 118,
|
|
"w": 320,
|
|
"h": 72,
|
|
"ramp": [
|
|
68,
|
|
110,
|
|
68
|
|
],
|
|
"scale": 20.0,
|
|
"octaves": 2,
|
|
"seed": 54,
|
|
"ink": {
|
|
"color": 68,
|
|
"pri": "Band",
|
|
"ctl": {
|
|
"Set": 0
|
|
},
|
|
"hot": null
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"Line": {
|
|
"pts": [
|
|
[
|
|
0,
|
|
126
|
|
],
|
|
[
|
|
319,
|
|
126
|
|
]
|
|
],
|
|
"ink": {
|
|
"color": 32,
|
|
"pri": "Keep",
|
|
"ctl": "Keep",
|
|
"hot": null
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"Line": {
|
|
"pts": [
|
|
[
|
|
0,
|
|
136
|
|
],
|
|
[
|
|
319,
|
|
136
|
|
]
|
|
],
|
|
"ink": {
|
|
"color": 32,
|
|
"pri": "Keep",
|
|
"ctl": "Keep",
|
|
"hot": null
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"Line": {
|
|
"pts": [
|
|
[
|
|
0,
|
|
146
|
|
],
|
|
[
|
|
319,
|
|
146
|
|
]
|
|
],
|
|
"ink": {
|
|
"color": 32,
|
|
"pri": "Keep",
|
|
"ctl": "Keep",
|
|
"hot": null
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"Line": {
|
|
"pts": [
|
|
[
|
|
0,
|
|
156
|
|
],
|
|
[
|
|
319,
|
|
156
|
|
]
|
|
],
|
|
"ink": {
|
|
"color": 32,
|
|
"pri": "Keep",
|
|
"ctl": "Keep",
|
|
"hot": null
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"Line": {
|
|
"pts": [
|
|
[
|
|
0,
|
|
166
|
|
],
|
|
[
|
|
319,
|
|
166
|
|
]
|
|
],
|
|
"ink": {
|
|
"color": 32,
|
|
"pri": "Keep",
|
|
"ctl": "Keep",
|
|
"hot": null
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"Line": {
|
|
"pts": [
|
|
[
|
|
0,
|
|
176
|
|
],
|
|
[
|
|
319,
|
|
176
|
|
]
|
|
],
|
|
"ink": {
|
|
"color": 32,
|
|
"pri": "Keep",
|
|
"ctl": "Keep",
|
|
"hot": null
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"Line": {
|
|
"pts": [
|
|
[
|
|
0,
|
|
186
|
|
],
|
|
[
|
|
319,
|
|
186
|
|
]
|
|
],
|
|
"ink": {
|
|
"color": 32,
|
|
"pri": "Keep",
|
|
"ctl": "Keep",
|
|
"hot": null
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"Polygon": {
|
|
"pts": [
|
|
[
|
|
70,
|
|
122
|
|
],
|
|
[
|
|
96,
|
|
122
|
|
],
|
|
[
|
|
88,
|
|
132
|
|
],
|
|
[
|
|
78,
|
|
132
|
|
]
|
|
],
|
|
"ink": {
|
|
"color": 19,
|
|
"pri": {
|
|
"Set": 11
|
|
},
|
|
"ctl": "Keep",
|
|
"hot": null
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"Polygon": {
|
|
"pts": [
|
|
[
|
|
200,
|
|
122
|
|
],
|
|
[
|
|
226,
|
|
122
|
|
],
|
|
[
|
|
218,
|
|
132
|
|
],
|
|
[
|
|
208,
|
|
132
|
|
]
|
|
],
|
|
"ink": {
|
|
"color": 19,
|
|
"pri": {
|
|
"Set": 11
|
|
},
|
|
"ctl": "Keep",
|
|
"hot": null
|
|
}
|
|
}
|
|
}
|
|
],
|
|
"cycles": [
|
|
{
|
|
"start": 248,
|
|
"len": 8,
|
|
"period": 2,
|
|
"reverse": false,
|
|
"active": true
|
|
}
|
|
],
|
|
"scale": {
|
|
"horizon_y": 112,
|
|
"min_scale": 0.8,
|
|
"full_y": 186
|
|
},
|
|
"spawn": [
|
|
50,
|
|
160
|
|
],
|
|
"exits": [
|
|
null,
|
|
5,
|
|
null,
|
|
3
|
|
],
|
|
"exit_flags": [
|
|
"",
|
|
"legend",
|
|
"",
|
|
""
|
|
],
|
|
"exit_blocked": [
|
|
"",
|
|
"Not before the encore. Play the show.",
|
|
"",
|
|
""
|
|
],
|
|
"hotspots": [
|
|
{
|
|
"name": "crowd",
|
|
"rect": [
|
|
0,
|
|
30,
|
|
320,
|
|
80
|
|
],
|
|
"msgs": {
|
|
"look": "A field of lighters to the horizon. Sixty thousand Danes who came for Sepultura and stayed for whatever this is about to be.",
|
|
"listen": "The roar arrives in waves, like surf that learned your name.",
|
|
"talk": "You raise one fist. SIXTY THOUSAND PEOPLE RAISE IT BACK."
|
|
}
|
|
},
|
|
{
|
|
"name": "monitors",
|
|
"rect": [
|
|
66,
|
|
118,
|
|
164,
|
|
18
|
|
],
|
|
"msgs": {
|
|
"look": "Monitor wedges, mixed for a prog band. John will fix that with volume."
|
|
}
|
|
}
|
|
],
|
|
"props": [
|
|
{
|
|
"name": "the rig",
|
|
"sprite": "rig",
|
|
"x": 276,
|
|
"y": 148,
|
|
"synonyms": "amps amp stack backline",
|
|
"msgs": {
|
|
"look": "A borrowed backline the size of a rowhouse. Rob's overdrive will make it honest."
|
|
},
|
|
"solid": true
|
|
}
|
|
],
|
|
"npcs": [
|
|
{
|
|
"name": "stage manager",
|
|
"sprite": "stagehand",
|
|
"x": 96,
|
|
"y": 150,
|
|
"wander": 20,
|
|
"msgs": {
|
|
"look": "A Danish stage manager with a clipboard and eleven headaches."
|
|
},
|
|
"dialogue": [
|
|
{
|
|
"says": "Sepultura is IN A DITCH near Flensburg. I have sixty thousand people and a hole in the schedule after Peter Gabriel. You are either legends tonight, or you are filler.",
|
|
"choices": [
|
|
{
|
|
"text": "We'll take the main stage.",
|
|
"goto": 1,
|
|
"sets_flag": "mainstage",
|
|
"points": 10
|
|
},
|
|
{
|
|
"text": "We're... technically the tent act.",
|
|
"goto": 2
|
|
},
|
|
{
|
|
"text": "Give us a minute.",
|
|
"goto": -1
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"says": "“Then GO.” He points at the rig with the clipboard. “And whatever a 'jazzcore' is — do it LOUDLY.”",
|
|
"choices": [
|
|
{
|
|
"text": "Always.",
|
|
"goto": -1
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"says": "“'Were.'” He crosses something out with terrifying finality.",
|
|
"choices": [
|
|
{
|
|
"text": "(Reconsider.)",
|
|
"goto": 0
|
|
}
|
|
]
|
|
}
|
|
]
|
|
}
|
|
],
|
|
"music": 3,
|
|
"weather": 3,
|
|
"script": "room4.rhai"
|
|
} |