Skip to content

Cinematics

Felipe Lippelt edited this page May 28, 2026 · 4 revisions

Cinematics · Cinematografia

🇧🇷 Português · 🇬🇧 English

Three GM-authored cinematic effects: unlock events, the self-destruct popup, and the tracer. All are optional and defined in scenario.json (or the theme skin).


English

Unlock events (events)

In scenario.json, map a path to a list of lines that play when that file is unlocked (crack or decrypt). Lines can be any type — text, progress, countdown.

"events": {
  "/blackbox.dat": [
    { "text": ">>> TRACE INITIATED", "type": "err" },
    { "type": "countdown", "from": 5, "interval": 700, "label": "TRACE IN", "alarm": true },
    { "text": ">>> you are flagged.", "type": "err" }
  ]
}

A countdown line ticks from from to zero every interval ms; alarm: true gives it the pulsing alert styling.

Self-destruct (selfDestruct)

The selfdestruct command (alias destruct) opens a large popup with a ticking countdown and an OVERRIDE area — typing the GM-defined code aborts; reaching zero detonates.

"selfDestruct": {
  "from": 10, "interval": 800,
  "override": "OVERRIDE-937",        // GM code to abort
  "armed": "EMERGENCY DESTRUCT SYSTEM ARMED",
  "aborted": ["destruct sequence aborted."],  // lines after aborting
  "detonate": ["DETONATION."]        // lines on detonation
}

Tracer (tracer) {#tracer-tracer}

A silent top-right countdown that fires when a player intrudes on a watched file. Only files that opt in with tracer: true arm it (others are "just protected"). Available on any theme/scenario that defines a tracer block — Cyberpunk, Blade Runner, IBM and the Warhammer scenarios all ship one.

"tracer": {
  "seconds": 30,                 // window length
  "penalty": 7,                  // seconds removed per failed crack roll
  "startAfter": 1,               // failed attempts before it arms (0 = on the crack command)
  "nocrackSeconds": 5,           // fast trace when brute-forcing a HARDENED watched file
  "label": "ICE TRACE",
  "active": "ICE TRACE ACTIVE",
  "complete": "TRACE COMPLETE — LOCATION FIXED",
  "evaded": ">>> trace evaded.",         // optional line shown when a crack succeeds
  "checkAlert": "SUSPICIOUS ACTIVITY DETECTED",  // see Recon below
  "caught": { /* the "FOUND YOU" climax — see below */ }
}

Behavior

  • Opt-in per file: add tracer: true to a locked file's front-matter.
  • Arms at startAfter failed attempts (0 = the moment the player runs crack).
  • Each failed roll drags it earlier by penalty seconds.
  • A successful crack or decrypt stops it (and prints evaded, if set) — you got in before the trace finished.
  • Hardened (nocrack) watched files: attempting crack trips a fast trace of nocrackSeconds.
  • Per-file overrides: any of tracerSeconds, tracerPenalty, tracerStartAfter, tracerNocrackSeconds on the file win over the theme defaults — difficulty lives on the file.
  • Failure popups defer the penalty: when a crack/unlock/decrypt fails, the failure popup blocks the trace from advancing — the penalty second-loss (and any nocrackSeconds fast-trace) only applies after the player dismisses the popup, so the trace can't bleed seconds while they're reading "rejected".
  • Silent by design. One global countdown per session; cleared on reboot/theme switch.

The "caught" climax (tracer.caught)

When the window hits zero, an optional climax plays — FOUND YOU popups scatter, then a black screen types the final line letter-by-letter, a menacing face appears, the monitor "powers off", and the console reboots.

"caught": {
  "popups": ["FOUND YOU!", "I SEE YOU", "GOTCHA"],
  "popupCount": 16,             // how many popups before the takeover
  "finalText": "FOUND YOU",
  "hold": 5,                    // seconds on the black screen before power-off
  "smiley": ":)",               // optional TEXT override; omit for the drawn menace face
  "sound": true                 // glitch + CRT power-off SFX (set false to silence)
}

Recon scan (check, checkDC)

check <file> reads a file's posture — lock, brute-force and surveillance (whether it arms the tracer). Free & passive by default. If the file sets checkDC, the scan becomes a roll, resolved once per file, whose quality scales with the margin: precise (≥ DC+5) · ambiguous (near) · inconclusive (fail). With checkMisleadsOnFail (file or scenario), a bad scan returns a false reading instead. GM mode always sees the truth.

A repeat scan of an already-scanned file raises the ICE alert (tracer.checkAlert) — a warning window only — and burns one startAfter grace on that file (so re-probing makes the eventual trace arm sooner). Scans never start the trace themselves. Themed command aliases (e.g. audit, auspex, scan) map to check — see Commands.


Português

Eventos ao destrancar (events)

No scenario.json, mapeie um path pra uma lista de linhas que tocam quando aquele arquivo é destrancado (crack ou decrypt). Pode incluir qualquer tipo de linha — texto, progress, countdown.

"events": {
  "/blackbox.dat": [
    { "text": ">>> TRACE INITIATED", "type": "err" },
    { "type": "countdown", "from": 5, "interval": 700, "label": "TRACE IN", "alarm": true },
    { "text": ">>> you are flagged.", "type": "err" }
  ]
}

Uma linha countdown conta de from até zero a cada interval ms; alarm: true dá o estilo de alerta pulsante.

Autodestruição (selfDestruct)

O comando selfdestruct (alias destruct) abre um popup grande com contagem regressiva e uma área OVERRIDE — digitar o código (definido pelo Mestre) aborta; chegar a zero detona.

"selfDestruct": {
  "from": 10, "interval": 800,
  "override": "OVERRIDE-937",        // código do Mestre pra abortar
  "armed": "EMERGENCY DESTRUCT SYSTEM ARMED",
  "aborted": ["destruct sequence aborted."],  // linhas após abortar
  "detonate": ["DETONATION."]        // linhas ao detonar
}

Rastreador (tracer) {#rastreador-tracer}

Uma contagem regressiva silenciosa no canto superior direito que dispara quando o jogador invade um arquivo vigiado. Só arquivos com tracer: true ativam (os outros são "só protegidos"). Disponível em qualquer tema/cenário com um bloco tracer — Cyberpunk, Blade Runner, IBM e os cenários de Warhammer já trazem um.

"tracer": {
  "seconds": 30,                 // duração da janela
  "penalty": 7,                  // segundos removidos por rolagem falha
  "startAfter": 1,               // falhas antes de armar (0 = no comando crack)
  "nocrackSeconds": 5,           // trace rápido ao forçar arquivo BLINDADO vigiado
  "label": "ICE TRACE",
  "active": "ICE TRACE ACTIVE",
  "complete": "TRACE COMPLETE — LOCATION FIXED",
  "evaded": ">>> trace evaded.",         // linha opcional ao crackear com sucesso
  "checkAlert": "SUSPICIOUS ACTIVITY DETECTED",  // veja Recon abaixo
  "caught": { /* o clímax "FOUND YOU" — veja abaixo */ }
}

Comportamento

  • Opt-in por arquivo: tracer: true no front-matter de um arquivo trancado.
  • Arma em startAfter falhas (0 = no instante do crack).
  • Cada rolagem falha adianta em penalty segundos.
  • Crack ou decrypt bem-sucedido encerra (e mostra evaded, se houver) — você entrou antes do trace terminar.
  • Arquivos blindados (nocrack) vigiados: tentar crack dispara um trace rápido de nocrackSeconds.
  • Overrides por arquivo: tracerSeconds, tracerPenalty, tracerStartAfter, tracerNocrackSeconds no arquivo têm prioridade sobre o tema — a dificuldade mora no arquivo.
  • Popups de falha adiam a penalidade: quando um crack/unlock/decrypt falha, o popup de falha trava o avanço do trace — a perda de penalty segundos (e o trace rápido de nocrackSeconds) só é aplicada depois que o jogador fecha o popup, então o trace não consome segundos enquanto o jogador lê "rejeitada".
  • Silencioso por design. Uma contagem global por sessão; zera no reboot/troca de tema.

O clímax "caught" (tracer.caught)

Quando a janela zera, toca um clímax opcional — popups FOUND YOU se espalham, depois uma tela preta digita a linha final letra a letra, um rosto ameaçador aparece, o monitor "desliga" e o console reinicia.

"caught": {
  "popups": ["FOUND YOU!", "I SEE YOU", "GOTCHA"],
  "popupCount": 16,             // quantos popups antes da tela final
  "finalText": "FOUND YOU",
  "hold": 5,                    // segundos na tela preta antes de desligar
  "smiley": ":)",               // override de TEXTO opcional; omita pro rosto desenhado
  "sound": true                 // SFX de glitch + monitor desligando (false silencia)
}

Scan de recon (check, checkDC)

check <file> lê a postura do arquivo — trava, força-bruta e vigilância (se arma o tracer). Passivo e grátis por padrão. Se o arquivo tem checkDC, vira uma rolagem (uma por arquivo) cuja qualidade escala com a margem: precisa (≥ DC+5) · ambígua (perto) · inconclusiva (falha). Com checkMisleadsOnFail (arquivo ou cenário), uma falha grave devolve uma leitura falsa. O Modo Mestre sempre vê a verdade.

Um re-scan de um arquivo já escaneado dispara o alerta ICE (tracer.checkAlert) — só uma janela de aviso — e gasta uma graça de startAfter daquele arquivo (re-sondar adianta o trace). O scan nunca inicia o trace sozinho. Aliases temáticos (ex.: audit, auspex, scan) mapeiam pro check — veja Comandos.