agentsclimarketplace

Cinematic system

Skill Firzus/agent-skills/skills/game/cinematic-system

Architecture blueprint for game cutscene systems: timeline tracks, bindings, realtime vs video playback, gameplay-to-cutscene transitions, skip/replay guarantees, cinematography craft, production pipeline, QTEs, branching and playable cinematics, virtual production, and accessibility. Use when designing cutscenes, timelines, in-game cinematics, video playback, skip systems, QTEs, or when skips break quest state, bindings T-pose, assets stream late, or film grammar feels off.From its SKILL.md

Install
npx -y skills add Firzus/agent-skills --skill cinematic-system

Assembled from the repository path, not quoted from the project. Check it against their README if it does not work.

One thing to look at

  • 2 stars2 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.

SKILL.md

11.4 KB, ~2.8k tokens by cl100k_base, as published. Nobody here has run it

Cinematic System

Build the cutscene layer of a game — realtime timelines, pre-rendered video, transitions, skip/replay, the production pipeline, the cinematography craft, and the interactive-cinematic design layer. Lip sync/facial stays in dialogue-system (the cinematic hosts it). References: Genshin Impact (the realtime/USM mix), BotW/TotK (the datamined Demo system — the most complete public transition contract), God of War / Naughty Dog / Half-Life (the interactive-craft poles), with the Naughty Dog / Santa Monica / Guerrilla GDC canon for production.

The architecture rule

One timeline model, one director, and a skip that reaches the final state. Three independent implementations converge on the same schema — Unity (PlayableDirector/TimelineAsset), UE (LevelSequence/MovieScene), and Nintendo (BFEVFL "TLIN": actors, clips, triggers, subtimelines, cuts):

CUTSCENE ASSET (data, reusable across contexts)
  tracks (typed: animation / camera / audio / VFX / activation /
          subtitle / EVENT)
  track -> binding role + clips { start, duration, blendIn/Out,
           payload } + markers
  sub-timelines for composition (shots, department layers)

DIRECTOR (runtime)
  resolves BINDINGS at play time — the canonical decision per role:
    possess an existing world actor  (scene interacts with world)
    spawn a temporary scene actor    (replayable anywhere)
  owns the clock (choose and lock the source: game / unscaled / DSP)
  evaluates tracks, fires events through markers

EVENTS (the quest-system contract)
  gameplay consequences (give item, set flag, advance quest) fire
  ONLY through event tracks/markers — never "code at the end" —
  and they fire on skip too (retroactive markers are the native
  engine support for this rule)

THE SESSION (the same finally-scope as dialogue)
  enter: input lock, state capture, preload gate, world staging,
         HUD hide, letterbox
  exit:  restore-or-scene-defined position, camera handoff,
         buffered-input flush — on EVERY path (end, skip, error)

Reference map

FileCovers
timeline-transitions.mdThe timeline model (three implementations, one schema), binding resolution (possess vs spawn, role tables), event markers, the bdemo transition contract, the session scope, skip/replay (the all-events-fire rule, the context problem), the timeline engine mapping
production.mdRealtime vs pre-rendered (the decision matrix), codecs & middleware (USM/Bink/VP9, overlay subtitles), the realtime↔video seam, the mocap-to-final production pipeline, localization re-timing, binary versioning, the sourced number tables
cinematography.mdFilm language & shot grammar (180/30-degree, shot/reverse-shot, J/L-cuts, shot sizes), camera/lens craft (focal-length emotion, dolly zoom, motivated movement), cinematic lighting & color, virtual production (LED volumes, virtual cameras, simulcam), performance capture, realtime cinematic tech (physical camera, Movie Render Queue)
interactive.mdThe cutscene/ludonarrative debate, QTEs (history, good design, decline), playable cinematics (ND active-cinematic, GoW one-shot, Half-Life), branching & choice-driven cinematics (Mass Effect/Telltale/Until Dawn, combinatorial-explosion patterns), player-state-reflective cutscenes (equipment mismatch, canonize-vs-reflect), cutscene/QTE accessibility
pitfalls.md16 failure modes (symptom → cause → prevention) with debugging order and ship checklist

Realtime vs pre-rendered

Default to realtime; pre-render only what exceeds the runtime budget. The decision matrix (sourced in production.md): visual complexity vs player-state reflection (outfits/weather), determinism vs file weight (Genshin's USM archive: ~42 GB cumulative), localization (overlay subtitles + per-language audio tracks in the container — never baked), spoiler protection (encrypted videos in pre-downloads), and art consistency (the Lost Odyssey seam lesson). Both reference games mix: BotW's 18 Memories ship as mute VP9 1080p30 videos with overlay subtitles/rumble and separate audio streams; Genshin pre-renders only ~2–10 signature moments per version.

Build order (4 shippable tiers)

Tier 1 — Timeline core
- [ ] Timeline asset model (typed tracks, clips, blends, markers) +
      director with explicit clock source
- [ ] Binding resolution by ROLE (table role->actor at launch;
      possess-vs-spawn decided per role)
- [ ] Event markers wired to the quest/world event bus, with
      retroactive firing
- [ ] The cutscene session scope (capture + finally-restore)
Tier 2 — Transitions (the bdemo checklist)
- [ ] Preload gate: wait-for-actors + streaming mode per scene
      (seamless / full-package / async — open-world-streaming)
- [ ] World staging as data: hide actors, weather/time override,
      pause simulation, audio mute/BGM policy
- [ ] Exit contract: scene-defined player end position OR captured
      restore; camera handoff (camera-system); input flush
- [ ] Letterbox by target ratio (never fixed pixels); HUD hide
      channel (hud-system)
Tier 3 — Skip, video, replay
- [ ] Skip = reach final state: fast-forward or jump-to-end with all
      events fired; QA invariant: state-after-skip == state-after-
      watch; per-scene skip policy as data (the bdemo SkipPolicy)
- [ ] Video playback (middleware decision), overlay subtitles,
      per-language audio; the realtime->video seam protocol (frozen
      exposure/LUT, same-bus audio, or a masking fade)
- [ ] Seen-flag vs completion-flag separation (suspend/crash safety;
      save-persistence)
- [ ] Replay gallery: snapshot context or canonical re-staging
      (all-spawnable scenes replay anywhere)
Tier 4 — Production pipeline
- [ ] In-engine previz/blocking workflow (gray-box + cameras first;
      the same scene file flows to final)
- [ ] Mocap loop: shoot plan -> Take Recorder/import -> retarget ->
      polish layers (facial via dialogue-system)
- [ ] Binary discipline: exclusive checkout + master/sub-sequence
      split per department (one-owner rule)
- [ ] Localization re-timing: per-language subtitle tracks, dub
      length windows communicated early; dailies cadence

Numbers (starting points — sourced anchors)

ParameterValueAnchor
Video specsGenshin USM: VP9 1080p30 ~10 Mbps, 20–300 MB/video, ~42 GB archive, 4 audio languages + 15 subtitle languages overlay, Boy/Girl variants; BotW: VP9 1080p30 Switch / AVC 720p30 Wii U, mute + separate audio streamsdatamine
MiddlewareBink 2: 1080p ≈ 1.2 MB/s, 4K decode 2.3 ms/frame on PS4-class (GPU), free in UE; Sofdec2 default 3 Mbps, VP9 ≈ 2× H.264 compression, multi-language in one containerofficial
Content scaleBotW 18 Memories (~31 min; total cutscenes ~1 h 48); TotK 12 Dragon's Tears (~37 min); TLOU: 90 min cutscenes + 2 h IGCwiki/GDC
Production~15 s finished cinematic/week/animator incl. facial (Naughty Dog) ≈ 1 min/month; ~30 animators at TLOU peak, daily dailies; Horizon FW: 22 h of cinematicsfirst-hand
Mocap$1.5–5k/day studio, 2-day session ≈ $15–40k for 50–80 game-ready clips; cleanup 2–8× capture time; 15–25 files/day; end-to-end 6–14 weeksindustry
Shot grammarfilm ASL ~2.5 s today (no game-specific GDC figure — analogy, flagged); GoW 2018: ~100 uncut shots, zero cuts totalacademic/GDC
Transitionsfades 0.3–1 s convention; visuals lead audio by 200–500 ms; letterbox/hold-to-skip durations unpublished (flagged)consensus
Skip/replay factsGenshin: no narrative skip until late (domain reward skip 5.7; Recollection replay gallery 6.3, 2026); BotW: per-scene SkipPolicy in data, X-then-+ confirm, Memories replayable from the log; RDR2: hold-to-skip against accidental skipsverified
Localizationdub within ±0.2 s of source duration; FF7R: FR/DE retimed to Japanese pauses — subtitle/marker timing is per-languageofficial

Flagged — never invent: letterbox/hold durations in shipped games, input flush timings, preload distances, game-specific ASL, timeline track-count budgets, the exact Genshin general-skip version (sources conflict). Full tables in production.md.

Engine mapping

Generic blockUnity 6UE5 (5.4+)
TimelineTimeline package (mature, maintenance — 1.8.x active fixes); PlayableDirector + typed tracks; Sequences package DEPRECATED since 6.1 (don't build on it)Sequencer: LevelSequence/MovieScene, tracks→sections→channels; Shot track + sub-sequences
EventsSignal Asset/Emitter/Receiver (+ INotification for code); Retroactive flag = the skip support; last-frame signals may not fire (offset ~0.01 s)Event Track → Director Blueprint endpoints
BindingsGeneric bindings (per-director) + ExposedReference (clips); hot rebind limited — Stop→rebind→Play is the reliable patternPossessable vs spawnable; 5.4 Dynamic Binding (resolve-by-function, e.g. player pawn), 5.5 Replaceable custom bindings; MovieSceneBindingOverrides
CameraCinemachineTrack overrides the Brain's priority; blend = clip overlap; control returns to the Brain at end — the handoff contractCamera Cut track + CineCamera; the camera-system restore
VideoVideoPlayer (H.264 cross-platform; documented audio desync on Android/Windows/WebGL, async queued seeks) → CRIWARE plugin (USM, multi-language containers, alpha movies) or AVPro for serious useMedia Framework/Electra (OS codecs only, hard-coded platform caps) or Bink — bundled free (.bk2, light CPU decode)
Pre-render pathRecorder (supported post-6.1)MRQ (stable through 5.6) → Movie Render Graph (experimental 5.4, matured ~5.8)
StreamingStreamingController.SetPreloading + forced mips before cutsCinematic Prestreaming plugin (records per-frame mip requests, replays with pre-roll)
Anim polishAnimation tracks + override layers5.4 Layered Control Rigs (non-destructive over clips); Take Recorder for mocap/previz
VersioningText-serialization barely helps timelines — split + ownership.uasset unmergeable (Epic-confirmed) — Perforce binary+l exclusive checkout + sub-sequence split

Failure modes

The 16 classic cutscene bugs (the unskippable cutscene, skip leaving broken state — the 007 First Light and Ship of Harkinian cases, binding breaks across contexts, the streaming hitch and low-res first shots, video/realtime seam pops, session state leaks, the mid-cutscene interruption hole, frame-rate-dependent timelines, audio drift on long scenes, the localization re-timing trap, letterbox/ultrawide bugs, the binary merge disaster, cutscene-applied world-change desync, the replay-context problem, broken film grammar, and QTEs that exclude players) are cataloged in pitfalls.md with symptom → root cause → prevention.

What ships with it: 5 files

51.8 KB alongside SKILL.md

Keep looking

Skills are one crate of 325,949. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.