ONGOING AGENT + MANUAL RESEARCH · 1.20 REPLAY

Replay symbols

Mapping the executable, one name at a time.

Naming progress

UPDATING

Naming history

From an inferred zero baseline to the latest SQLite names.

Loading naming history…

Dashed: interpreted early historySolid: recorded SQLite updatesDots: retained evidence anchors

Named functions

—

Loading function history…

Named globals / data

—

Loading global history…

Smooth curves interpolate between retained counts without overshooting. Hover or tap to read an approximate value; select a dot or use arrow keys for the evidence. Drag across a graph to zoom. Times use your local timezone. Counts include provisional names and can decrease after corrections. The vertical axis follows the visible range.

The zero baseline is illustrative, placed at the start of August 14, 2026 (UTC), the earliest retained export day. Early history combines SQLite snapshots, verified rename audits, and scoped data-name exports. Dashed segments interpret the gaps; inspect an anchor for its evidence and limitations. Before globals were inventoried, coverage uses the first retained total as an approximate reference. Recorded counter updates begin September 28 and extend automatically.

Current naming breakdown

Functions

23.26% named

19,305 / 82,992 named

Loading function inventory…

Globals / data

0.53% named

4,393 / 824,235 named

Loading global inventory…

Hover a chart segment or select a category to inspect its count and share of the total. Keyboard and touch controls work in the legend.

Saved SQLite count · 2026-09-28 15:08:47 UTC · checking for live updates

Both named counts come from the committed Replay SQLite database. Totals include provisional q_ names. A name indicates research progress; it does not guarantee a verified signature or layout.

What counts as a global?

The denominator covers identified IDA data items and named unknown heads in non-executable Replay sections. It includes globals and constants, and excludes strings, alignment, headers, imports, and PE loader metadata. An array or structure counts as IDA defined it; this is an analysis inventory, not the original compiler's variable count.

Committed renames update with the same two-minute limit as functions. The IDA plugin refreshes data-item boundaries about every 30 minutes while open. Inventory captured —.

SYMBOL EXPORT

IDA names for Replay

Recovered function and global names for this exact Replay build. Includes provisional q_ names.

Download symbol bundle ZIP · MAP + IDA importer

The symbol bundle updates automatically from committed SQLite names, with the same two-minute limit as the counter. Loading the latest export details…

How to apply names in IDA
  1. Download and extract the ZIP into one folder.
  2. Open your game_dx12_ship_replay.exe database in IDA, then use File → Script file… to run import_replay_map.py.
  3. Select replay-1.20.map. Keep its .symbols.json file beside it.

The importer checks the executable MD5 and MAP checksum, uses your current image base, and preserves existing meaningful names. This is a names-only export; types, source lines, and local variables are not included.

OBSIDIAN BRAIN

Explore the research

Linked notes on map assets, loading, rendering, and collision. Search functions and RVAs, follow connections, and read the evidence behind the names.

Read the asset brain Search · Topics · Backlinks

A published snapshot of the ongoing research. Each note keeps its source-build boundaries, provisional findings, and validation limits.

Build details

game_dx12_ship_replay.exe
Image base: 0x140000000
Executable MD5: 1C238FE327F2ECC3B0DB924C5B425439

Function counts cover exported function starts and additional starts synced from IDA. Global/data counts use the separately captured data inventory. Locals, arguments and code labels are excluded from both.