From cf6ddeca19b2cd546f34432fce148a35f0029173 Mon Sep 17 00:00:00 2001 From: "prompt.ac/@jeffrey" Date: Wed, 16 Sep 2026 07:59:40 -0700 Subject: [PATCH] =?UTF-8?q?oskiewar=20steam:=20the=20trailer=20cut=20?= =?UTF-8?q?=E2=80=94=20action=20first,=20a=20decisive=20ending=20last?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Every bot-versus-bot seed tried ends on "tie!" at the full 30s clock, and the training dummy never dies so its round never ends. So a fight clip is trimmed just short of its result card and cuts on movement, and the survival climb goes last, which puts "summit!" on the end of the trailer. 84s at 1920x1080/60, H.264 high with AAC 192k at 48 kHz, inside Valve's preset. The master is reproducible from this script and stays out of the tree; the thumbnail is a frame of it, which Valve requires. --- xbox/steam/store-page/.gitignore | 1 + .../store-page/assets/trailer-thumbnail.jpg | Bin 0 -> 68310 bytes xbox/steam/store-page/render-trailer.mjs | 51 ++++++++++++------ 3 files changed, 35 insertions(+), 17 deletions(-) create mode 100644 xbox/steam/store-page/assets/trailer-thumbnail.jpg diff --git a/xbox/steam/store-page/.gitignore b/xbox/steam/store-page/.gitignore index dd2ba7bc8..0bc4fa64c 100644 --- a/xbox/steam/store-page/.gitignore +++ b/xbox/steam/store-page/.gitignore @@ -1 +1,2 @@ assets/shots/ +assets/trailer.mp4 diff --git a/xbox/steam/store-page/assets/trailer-thumbnail.jpg b/xbox/steam/store-page/assets/trailer-thumbnail.jpg new file mode 100644 index 0000000000000000000000000000000000000000..0997ae88ee014e5905030404a73af98f389a86f6 GIT binary patch literal 68310 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 R?#HvFaWwZ2 { // long clip. So more fights are rendered than are used and the assembly // keeps the knockouts, shortest first. Survival rides along as one glimpse // of the other door. +// +// Two evenly-matched bots poke at each other and run out the 30s clock: every +// bot-versus-bot seed tried so far ends on "tie!", which is both the weakest +// last beat available and the longest possible clip. The training dummy is +// the honest way to a decisive ending — it is a real mode, it is in the store +// copy, and the round ends when he does. const CANDIDATES = [ + { id: "dummy-1", door: "fight", seed: "steam-trailer#31", opponent: "dummy" }, + { id: "dummy-2", door: "fight", seed: "steam-trailer#33", opponent: "dummy" }, + { id: "climb-1", door: "survival", seed: "steam-trailer#7", cap: 25 }, { id: "fight-1", door: "fight", seed: "steam-trailer#1" }, { id: "fight-2", door: "fight", seed: "steam-trailer#4" }, - { id: "fight-3", door: "fight", seed: "steam-trailer#9" }, - { id: "fight-4", door: "fight", seed: "steam-trailer#12" }, - { id: "fight-5", door: "fight", seed: "steam-trailer#17" }, - { id: "fight-6", door: "fight", seed: "steam-trailer#23" }, - { id: "climb-1", door: "survival", seed: "steam-trailer#7", cap: 25 }, ]; const CLIPS = CANDIDATES.slice(0, Number(flags.get("clips") || CANDIDATES.length)); const KEEP = Number(flags.get("keep") || 4); @@ -74,7 +78,7 @@ async function renderClip(clip) { // winner is called afterwards. The full HUD drags the oven's // intro/fight/outro scrubber along with it, which on a store page // reads as a video control rather than part of the game. - hud: "reel", + hud: "reel", opponent: clip.opponent || flags.get("opponent") || "", cap: Number(flags.get("cap") || clip.cap || 45), width: 1920, height: 1080, theme: "dark", out, }, { log }); rmSync(join(out, "frames"), { recursive: true, force: true }); @@ -93,7 +97,8 @@ async function renderClip(clip) { const only = flags.get("only"); if (only) { const clip = CLIPS.find((entry) => entry.id === only) || - { id: only, door: flags.get("door") || "fight", seed: flags.get("seed") || only }; + { id: only, door: flags.get("door") || "fight", seed: flags.get("seed") || only, + opponent: flags.get("opponent") || "" }; await renderClip(clip); process.exit(0); } @@ -106,7 +111,8 @@ for (const clip of CLIPS) { const child = spawnSync(process.execPath, [fileURLToPath(import.meta.url), `--only=${clip.id}`, `--door=${clip.door}`, `--seed=${clip.seed}`, - ...(clip.cap ? [`--cap=${clip.cap}`] : [])], + ...(clip.cap ? [`--cap=${clip.cap}`] : []), + ...(clip.opponent ? [`--opponent=${clip.opponent}`] : [])], { stdio: "inherit" }); // One bad clip is not a bad trailer. A crashed or timed-out render is // noted and the run keeps going; the assembly works with what landed. @@ -119,24 +125,35 @@ for (const clip of CLIPS) { } if (!rendered.length) throw new Error("no clips rendered — check the log above"); -// The cut: knockouts first, shortest first, then one climb, and never a -// round that ran out the clock unless nothing better landed. -const knockouts = rendered.filter((c) => c.door === "fight" && c.cause && c.cause !== "TIE") +// The cut: action first, a decisive ending last. Two evenly-matched bots +// reliably run out the clock, so a fight clip is trimmed just short of its +// result card and cuts on movement instead of on "tie!"; the climb keeps its +// ending and goes last, so the trailer finishes on "summit!". +const knockouts = rendered.filter((c) => c.mode !== "survival" && c.cause && c.cause !== "TIE") .sort((a, b) => a.frames - b.frames); -const climbs = rendered.filter((c) => c.door === "survival"); -const ties = rendered.filter((c) => c.door === "fight" && (!c.cause || c.cause === "TIE")) +const climbs = rendered.filter((c) => c.mode === "survival" || c.door === "survival"); +const ties = rendered.filter((c) => c.door === "fight" && c.mode !== "survival" && + (!c.cause || c.cause === "TIE")) .sort((a, b) => a.frames - b.frames); -const cut = [...knockouts, ...climbs.slice(0, 1)].slice(0, KEEP); -while (cut.length < Math.min(KEEP, 2) && ties.length) cut.push(ties.shift()); +const opener = [...knockouts, ...ties].slice(0, Math.max(1, KEEP - 1)); +const cut = [...opener, ...climbs.slice(0, 1)]; +if (!cut.length) throw new Error("nothing worth cutting"); +// The result hold is about three seconds of card after the round ends. +// Keeping it on a tie is the one beat a trailer cannot afford. +const RESULT_HOLD = 3.3; +for (const clip of cut) + clip.take = clip.cause === "TIE" ? Math.max(4, clip.seconds - RESULT_HOLD) : clip.seconds; log(`\nšŸŽ¬ cut: ${cut.map((c) => `${c.id}(${c.cause || c.mode}, ${ - c.seconds.toFixed(1)}s)`).join(" Ā· ")}`); + c.take.toFixed(1)}s${c.take < c.seconds - 0.05 ? " trimmed" : ""})`).join(" Ā· ")}`); const clips = cut.map((c) => c.base); if (!clips.length) throw new Error("no clips rendered — drop --encode or check the log"); // One encode, not two: the clips are concatenated in the filter graph and // written straight to Valve's preset, so nothing is transcoded twice. const trailer = join(output, "trailer.mp4"); -const inputs = clips.flatMap((file) => ["-i", file]); +const inputs = cut.flatMap((clip) => + clip.take < clip.seconds - 0.05 ? ["-t", clip.take.toFixed(3), "-i", clip.base] + : ["-i", clip.base]); const graph = clips.map((_, index) => `[${index}:v][${index}:a]`).join("") + `concat=n=${clips.length}:v=1:a=1[v][a]`; const encoded = spawnSync("ffmpeg", ["-y", ...inputs, -- 2.51.2