- scenes.json: every DESIGN.md scene wired — T1-T7, SH1-6, Misfile, 4 needle-drop alts, 7 white labels, boss volleys, REPLAY queue sentinel, win+stinger gate - player.js: choice windows (branch/death-goto), random variants (sh2 tape), endurance restarts w/ tightening (sh4), hold windows (t4s5/t5s5), needledrop power-up branches, unprompted collects, mirror-on-replay, soft fail (t5s4), needle_skip transitions, stale-death-timeout guard - clips renamed to DESIGN ids (s01->t1s1 etc); placeholder gen covers all new window types and never overwrites real footage (86 clips: 8 real + 78 gen) - sheets: added missing sh4_action + t5s4_action prompts - verified in browser: choice pass/timeout, collect, needledrop, endurance tighten+death, hold pass/release-fail, soft fail, replay queue w/ mirror, win->stinger with 7 labels, live-timing run of t1s1 Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
168 lines
9.4 KiB
JSON
168 lines
9.4 KiB
JSON
{
|
|
"meta": { "title": "RECORD STORE GUY", "lives": 5, "version": 4 },
|
|
"start": "intro",
|
|
"scenes": {
|
|
|
|
"intro": { "clip": "clips/intro.mp4", "death": "clips/t1s1_death.mp4",
|
|
"windows": [], "onSuccess": "t1s1" },
|
|
|
|
"t1s1": { "clip": "clips/t1s1_action.mp4", "death": "clips/t1s1_death.mp4",
|
|
"windows": [ { "t": [4.6, 5.4], "input": "left" } ],
|
|
"onSuccess": "t1s2", "checkpoint": true },
|
|
"t1s2": { "clip": "clips/t1s2_action.mp4", "death": "clips/t1s2_death.mp4",
|
|
"collect": { "t": [2.0, 2.5], "input": "up", "label": 1 },
|
|
"windows": [ { "t": [4.2, 5.0], "input": "up" } ],
|
|
"onSuccess": "t1s3" },
|
|
"t1s3": { "clip": "clips/t1s3_action.mp4", "death": "clips/t1s3_death.mp4",
|
|
"windows": [ { "t": [3.0, 3.7], "input": "right" } ],
|
|
"onSuccess": "t1s4" },
|
|
"t1s4": { "clip": "clips/t1s4_action.mp4", "death": "clips/t1s4_death.mp4",
|
|
"windows": [ { "t": [3.0, 3.7], "input": "down" } ],
|
|
"onSuccess": "sh1" },
|
|
|
|
"sh1": { "clip": "clips/sh1_action.mp4", "death": "clips/sh1_death_pit.mp4",
|
|
"windows": [ { "t": [6.0, 7.5], "choices": {
|
|
"left": { "goto": "t2s1" },
|
|
"up": { "death": "clips/sh1_death_pit.mp4", "goto": "mf1" },
|
|
"right": { "death": "clips/sh1_death_pit.mp4", "goto": "mf1" }
|
|
} } ],
|
|
"onSuccess": "t2s1" },
|
|
"mf1": { "clip": "clips/mf1_action.mp4", "death": "clips/mf1_death.mp4",
|
|
"windows": [ { "t": [3.0, 3.7], "input": "down" } ],
|
|
"onSuccess": "sh1" },
|
|
|
|
"t2s1": { "clip": "clips/t2s1_action.mp4", "death": "clips/t2s1_death.mp4",
|
|
"windows": [ { "t": [3.0, 3.7], "input": "up" } ],
|
|
"onSuccess": "t2s2", "checkpoint": true },
|
|
"t2s2": { "clip": "clips/t2s2_action.mp4", "death": "clips/t2s2_death.mp4", "mirrorOk": true,
|
|
"windows": [ { "t": [2.2, 2.9], "input": "right" }, { "t": [3.6, 4.3], "input": "right" } ],
|
|
"onSuccess": "t2s3" },
|
|
"t2s3": { "clip": "clips/t2s3_action.mp4", "death": "clips/t2s3_death.mp4",
|
|
"collect": { "t": [1.2, 1.7], "input": "up", "label": 2 },
|
|
"windows": [ { "t": [2.4, 3.1], "input": "left" }, { "t": [4.6, 5.3], "input": "up" } ],
|
|
"onSuccess": "t2s4" },
|
|
"t2s4": { "clip": "clips/t2s4_action.mp4", "death": "clips/t2s4_death.mp4",
|
|
"needledrop": { "t": [1.5, 2.1], "clip": "clips/t2s4_alt.mp4", "bonus": 500 },
|
|
"windows": [ { "t": [3.2, 3.9], "input": "action" } ],
|
|
"onSuccess": "t2s5" },
|
|
"t2s5": { "clip": "clips/t2s5_action.mp4", "death": "clips/t2s5_death.mp4",
|
|
"windows": [ { "t": [2.5, 3.2], "input": "right" }, { "t": [3.8, 4.5], "input": "action" } ],
|
|
"onSuccess": "sh2" },
|
|
|
|
"sh2": { "random": ["sh2_thin", "sh2_thick"] },
|
|
"sh2_thin": { "clip": "clips/sh2_action_thin.mp4", "death": "clips/sh2_death.mp4",
|
|
"windows": [ { "t": [3.0, 4.5], "choices": {
|
|
"left": { "goto": "t3s1" },
|
|
"right": { "death": "clips/sh2_death.mp4" }
|
|
} } ],
|
|
"onSuccess": "t3s1" },
|
|
"sh2_thick": { "clip": "clips/sh2_action_thick.mp4", "death": "clips/sh2_death.mp4",
|
|
"windows": [ { "t": [3.0, 4.5], "choices": {
|
|
"right": { "goto": "t3s1" },
|
|
"left": { "death": "clips/sh2_death.mp4" }
|
|
} } ],
|
|
"onSuccess": "t3s1" },
|
|
|
|
"t3s1": { "clip": "clips/t3s1_action.mp4", "death": "clips/t3s1_death.mp4",
|
|
"windows": [ { "t": [1.8, 2.4], "input": "right" }, { "t": [2.8, 3.4], "input": "right" }, { "t": [3.8, 4.4], "input": "up" } ],
|
|
"onSuccess": "t3s2", "checkpoint": true },
|
|
"t3s2": { "clip": "clips/t3s2_action.mp4", "death": "clips/t3s2_death.mp4",
|
|
"windows": [ { "t": [3.0, 3.7], "input": "left" } ],
|
|
"onSuccess": "t3s3" },
|
|
"t3s3": { "clip": "clips/t3s3_action.mp4", "death": "clips/t3s3_death.mp4", "mirrorOk": true,
|
|
"windows": [ { "t": [2.2, 2.9], "input": "down" }, { "t": [3.6, 4.3], "input": "action" } ],
|
|
"onSuccess": "t3s4" },
|
|
"t3s4": { "clip": "clips/t3s4_action.mp4", "death": "clips/t3s4_death.mp4",
|
|
"needledrop": { "t": [0.8, 1.4], "clip": "clips/t3s4_alt.mp4", "bonus": 500, "label": 3 },
|
|
"windows": [ { "t": [1.8, 2.4], "input": "up" }, { "t": [2.8, 3.4], "input": "right" }, { "t": [3.8, 4.4], "input": "action" } ],
|
|
"onSuccess": "sh3" },
|
|
|
|
"sh3": { "clip": "clips/sh3_action.mp4", "death": "clips/sh3_death_post.mp4",
|
|
"windows": [ { "t": [3.0, 4.5], "choices": {
|
|
"left": { "death": "clips/sh3_death_acct.mp4" },
|
|
"up": { "goto": "t4s1" },
|
|
"right": { "death": "clips/sh3_death_post.mp4" }
|
|
} } ],
|
|
"onSuccess": "t4s1" },
|
|
|
|
"t4s1": { "clip": "clips/t4s1_action.mp4", "death": "clips/t4s1_death.mp4",
|
|
"windows": [ { "t": [3.0, 3.7], "input": "action" } ],
|
|
"onSuccess": "t4s2", "checkpoint": true },
|
|
"t4s2": { "clip": "clips/t4s2_action.mp4", "death": "clips/t4s2_death.mp4", "mirrorOk": true,
|
|
"windows": [ { "t": [2.2, 2.9], "input": "right" }, { "t": [3.4, 4.1], "input": "up" } ],
|
|
"onSuccess": "t4s3" },
|
|
"t4s3": { "clip": "clips/t4s3_action.mp4", "death": "clips/t4s3_death.mp4", "mirrorOk": true,
|
|
"windows": [ { "t": [1.8, 2.4], "input": "left" }, { "t": [2.8, 3.4], "input": "right" }, { "t": [3.8, 4.4], "input": "left" } ],
|
|
"onSuccess": "t4s4" },
|
|
"t4s4": { "clip": "clips/t4s4_action.mp4", "death": "clips/t4s4_death.mp4",
|
|
"collect": { "t": [1.5, 2.0], "input": "up", "label": 4 },
|
|
"windows": [ { "t": [3.4, 3.9], "input": "action" } ],
|
|
"onSuccess": "t4s5" },
|
|
"t4s5": { "clip": "clips/t4s5_action.mp4", "death": "clips/t4s5_death.mp4",
|
|
"windows": [ { "t": [1.5, 3.5], "input": "down", "hold": true }, { "t": [4.0, 4.7], "input": "action" } ],
|
|
"onSuccess": "sh4" },
|
|
|
|
"sh4": { "clip": "clips/sh4_action.mp4", "death": "clips/sh4_death.mp4",
|
|
"onMiss": "restart", "maxRestarts": 3,
|
|
"windows": [ { "t": [1.2, 1.9], "input": "down" }, { "t": [2.2, 2.9], "input": "down" }, { "t": [3.2, 3.9], "input": "down" }, { "t": [4.2, 4.9], "input": "down" } ],
|
|
"onSuccess": "t5s1" },
|
|
|
|
"t5s1": { "clip": "clips/t5s1_action.mp4", "death": "clips/t5s1_death.mp4",
|
|
"windows": [ { "t": [2.0, 2.6], "input": "right" }, { "t": [3.4, 4.0], "input": "right" } ],
|
|
"onSuccess": "t5s2", "checkpoint": true },
|
|
"t5s2": { "clip": "clips/t5s2_action.mp4", "death": "clips/t5s2_death.mp4",
|
|
"needledrop": { "t": [0.8, 1.4], "clip": "clips/t5s2_alt.mp4", "bonus": 500 },
|
|
"windows": [ { "t": [1.8, 2.4], "input": "left" }, { "t": [2.8, 3.4], "input": "action" }, { "t": [3.8, 4.4], "input": "right" } ],
|
|
"onSuccess": "t5s3" },
|
|
"t5s3": { "clip": "clips/t5s3_action.mp4", "death": "clips/t5s3_death.mp4",
|
|
"collect": { "t": [1.0, 1.5], "input": "up", "label": 5 },
|
|
"windows": [ { "t": [2.4, 3.0], "input": "up" }, { "t": [3.6, 4.2], "input": "up" } ],
|
|
"onSuccess": "t5s4" },
|
|
"t5s4": { "clip": "clips/t5s4_action.mp4", "failGoto": "t5s1",
|
|
"windows": [ { "t": [3.2, 3.9], "input": "action" } ],
|
|
"onSuccess": "t5s5" },
|
|
"t5s5": { "clip": "clips/t5s5_action.mp4", "death": "clips/t5s5_death.mp4",
|
|
"windows": [ { "t": [1.5, 3.2], "input": "right", "hold": true }, { "t": [3.8, 4.5], "input": "up" } ],
|
|
"onSuccess": "sh5" },
|
|
|
|
"sh5": { "clip": "clips/sh5_action.mp4", "death": "clips/sh5_death.mp4",
|
|
"windows": [ { "t": [3.0, 4.5], "choices": {
|
|
"up": { "death": "clips/sh5_death.mp4" },
|
|
"down": { "goto": "t6s1" },
|
|
"right": { "goto": "sh5_bonus" }
|
|
} } ],
|
|
"onSuccess": "t6s1" },
|
|
"sh5_bonus": { "clip": "clips/sh5_bonus.mp4", "death": "clips/sh5_death.mp4",
|
|
"windows": [], "score": 1000, "label": 7, "onSuccess": "t6s1" },
|
|
|
|
"t6s1": { "clip": "clips/t6s1_action.mp4", "death": "clips/t6s1_death.mp4",
|
|
"needledrop": { "t": [0.8, 1.4], "clip": "clips/t6s1_alt.mp4", "bonus": 500, "skipTo": "t6s3" },
|
|
"windows": [ { "t": [1.8, 2.4], "input": "up" }, { "t": [2.8, 3.4], "input": "right" }, { "t": [3.8, 4.4], "input": "up" } ],
|
|
"onSuccess": "t6s2", "checkpoint": true },
|
|
"t6s2": { "clip": "clips/t6s2_action.mp4", "death": "clips/t6s2_death.mp4",
|
|
"collect": { "t": [1.2, 1.7], "input": "up", "label": 6 },
|
|
"windows": [ { "t": [3.0, 3.7], "input": "down" } ],
|
|
"onSuccess": "t6s3" },
|
|
"t6s3": { "clip": "clips/t6s3_action.mp4", "death": "clips/t6s3_death.mp4", "mirrorOk": true,
|
|
"windows": [ { "t": [3.2, 3.9], "input": "right" } ],
|
|
"onSuccess": "t6s4" },
|
|
"t6s4": { "clip": "clips/t6s4_action.mp4", "death": "clips/t6s4_death.mp4",
|
|
"windows": [ { "t": [3.4, 4.1], "input": "action" } ],
|
|
"onSuccess": "sh6" },
|
|
|
|
"sh6": { "clip": "clips/sh6_action.mp4", "death": "clips/sh6_death.mp4",
|
|
"windows": [ { "t": [1.4, 2.0], "input": "down" }, { "t": [2.4, 3.0], "input": "left" }, { "t": [3.4, 4.0], "input": "right" }, { "t": [4.4, 5.0], "input": "action" } ],
|
|
"onSuccess": "REPLAY" },
|
|
|
|
"t7s1": { "clip": "clips/t7s1_action.mp4", "death": "clips/t7s1_death.mp4",
|
|
"windows": [ { "t": [1.6, 2.2], "input": "left" }, { "t": [2.6, 3.2], "input": "down" }, { "t": [3.6, 4.2], "input": "right" } ],
|
|
"onSuccess": "t7s2", "checkpoint": true },
|
|
"t7s2": { "clip": "clips/t7s2_action.mp4", "death": "clips/t7s2_death.mp4",
|
|
"windows": [ { "t": [1.2, 1.7], "input": "right" }, { "t": [2.2, 2.7], "input": "up" }, { "t": [3.2, 3.7], "input": "left" }, { "t": [4.2, 4.7], "input": "action" } ],
|
|
"onSuccess": "t7s3" },
|
|
"t7s3": { "clip": "clips/t7s3_action.mp4", "death": "clips/t7s3_death.mp4",
|
|
"windows": [ { "t": [3.5, 3.9], "input": "action" } ],
|
|
"onSuccess": "WIN" }
|
|
}
|
|
}
|