Timeline Playback
After every resolved cycle you can replay the day minute by minute — the camera follows your runners across the city, events appear in chronological order, and every entry is clickable to open a forensic detail panel.
Access: main nav → Playback.
What you see
The playback reconstructs the last day from three data sets:
- Movements — every runner move between nodes
- Events — all actions with result, cash delta, heat delta
- Combats — fights with duration, attacker/defender, outcome
The timeline spans 00:00 to 24:00 (1440 ticks). The slider scrubs to
any minute; the map updates live.
Controls
| Button | Effect |
|---|---|
| ▶ Play / ❚❚ Pause | Auto-playback on/off |
| 1× · 5× · 10× · 60× | Playback speed (1× = real time, 60× = full day in 24s) |
| ⏮ Start / ⏭ End | Jump to 00:00 or 24:00 |
| → Combat | Skip to next combat event |
| → Fail | Skip to next failing event (FAIL, ARRESTED, CRIT_FAIL) |
| ↓ Export | Download the current timeline as timeline_day_N.json |
The slider below enables free scrubbing — every position triggers an immediate map update and event-log highlight.
Event categories (filters)
Every event belongs to one of seven categories (see SPEC §9.5). The filter bar above the event table toggles whole families in or out:
| Category | Example actions |
|---|---|
| Combat | ASSAULT, RAID, ASSASSINATE, AMBUSH, MUG, DRIVE_BY, ARSON, BOMB, DRONE_STRIKE, SNIPE + all combats |
| Transport | TRANSPORT_GOODS, SMUGGLE, SUPPLY_ILLEGAL, RECRUIT |
| Bribery | BRIBE, LOBBY, PLANT_STORY, POACH, BLACKMAIL, SLANDER |
| Encounters | EXTORT, COLLECT, SCOUT, PLACE_SPY, UNDERCOVER, SHADOW, BUG, INFILTRATE, BURGLE, PICKPOCKET, INTERROGATE, INCITE_RIOT |
| Hacking | HACK_RECON, HACK_FREEZE, HACK_REROUTE, HACK_AUDIT, HACK_SIPHON, TRACE_HACK, EMP, DATA_WIPE, DOXX, CRYPTO_STEAL, MALWARE, CYBERCRIME, SPY |
| Arrests | ARREST, ARRESTED, RELEASE, KIDNAP, TORTURE |
| Government | CORPSEC_RAID, FOB_AUDIT, FCA_ACTIVATION, EDICT, VANDALIZE, SABOTAGE |
The All button restores the default.
Detail panel (click an event row)
Clicking an event-log row opens a side-panel with the full forensics:
- When: tick, duration (for combats)
- Where: sector, node ID
- Actor: runner name, action, category
- Parties (combats only): attacker + defender
- Outcome: result (SUCCESS / FAIL / CRIT_* / ARRESTED / …), cash and heat deltas
While the panel is open, playback auto-pauses — close it and playback resumes. The close button (×) sits in the panel header.
Fog of War
Spec §9.6 — no omniscience mode. The timeline carries every event of the day, but only visible ones are rendered in full. Hidden ones are dimmed and marked with a lock icon.
Visible events are in:
- Your sectors — any sector currently containing one of your runners or buildings
- Scouted sectors — any sector you scouted at least once
- Spy nodes — any node where you have an active PLACE_SPY
- CorpSec contact ≥ tier 1 — arrest events in that contact’s sector
- FOB contact ≥ tier 1 — government events (audits, raids) in that contact’s sector
Always visible: events where one of your runners is the actor, and combats where any of your runners participates (regardless of location).
Export
The ↓ Export button saves the currently loaded timeline as
timeline_day_{N}.json — useful for balance analysis, bug reports or
custom sim tools. The file contains meta, all movements, events and
combats in raw form (no fog-of-war filtering applied).
Technical
- Timeline source: the
corpllm-serverengine writestimeline.jsonper cycle (seecorpllm-specs/specs/SPEC_ui_concept.md§9). - Playback runs fully client-side; no network traffic during playback.
- 1 tick = 1 in-game minute. Speed 60× means 60 ticks per second.