Recipe

Play / Freeze / Fork

HyperFrames snippet

The choose-path branch beat: let the action play, then freeze and slam in two choice labels (LEFT/RIGHT) sliding from the edges, immediately followed by a fast countdown. The HyperFrames freezeFork() driver.

0 units use it

What it is

## What it is The interactive-fiction fork moment. The clip plays its action live, then at `A[i]+3.9s` the world freezes (a VHS pause overlay holds), two large choice labels slide in from the left and right edges, and a 0.5s-per-tick countdown disc fires right after. Command-over-action then a fast timer is the validated pacing — a slow timer is only needed if the timer runs DURING narration (MEMORY: choose_path_compose_template). ## When to use it - Any "pick a path" branch beat over a baked master where the fork must land on a specific frame. - Drives the labels + freeze + countdown together; pairs with `vhs-pause-freeze` (the hold) and `smpte-countdown-disc` (the timer). ## Knobs - `fs = A[i]+3.9` (freeze start), `cd = A[i]+4.2` (countdown start), `clear = cd+1.55` (labels out). - Labels slide `x:-44 -> 0` (left) and `x:44 -> 0` (right) over 0.28s. - `disc(cd, 0.5)` sets the 0.5s/tick timer.

How to use it standalone

HyperFrames snippet
// Verbatim from the choose-path index.html freezeFork() driver (GSAP, paused timeline `tl`).
function freezeFork(i, l, r) {
  const fs = A[i] + 3.9, cd = A[i] + 4.2, clear = cd + 1.5 + 0.05;
  vhs(fs, clear - fs);                                   // hold a VHS pause over the freeze
  tl.set("#fork-l", { textContent: l }, fs);
  tl.set("#fork-r", { textContent: r }, fs);
  tl.fromTo("#fork-l", { opacity: 0, x: -44 }, { opacity: 1, x: 0, duration: 0.28, ease: "power3.out", overwrite: "auto" }, fs + 0.05);
  tl.fromTo("#fork-r", { opacity: 0, x:  44 }, { opacity: 1, x: 0, duration: 0.28, ease: "power3.out", overwrite: "auto" }, fs + 0.05);
  tl.to(["#fork-l", "#fork-r"], { opacity: 0, duration: 0.22, overwrite: "auto" }, clear - 0.05);
  tl.set(["#fork-l", "#fork-r"], { opacity: 0 }, clear + 0.2);
  disc(cd, 0.5);                                          // fast 0.5s/tick countdown right after
}
ParamValue
label_slide_px44
freeze_offset_sec3.9
label_in_duration0.28
countdown_step_sec0.5
countdown_offset_sec4.2

Live demo

Units that use this recipe

0 units

Every finished unit with Play / Freeze / Fork in its recipe. Open one to see the full ingredient list, or remix straight from a tile.

No units use this block yet — be the first.