Quick start
- Unzip the download somewhere you can write to — Documents or a games drive — and keep the whole folder together. See Installation.
- Run
specter.exe. - Paste your licence key into the box at the top right and click Activate. See Activating your licence.
- Click Getting Started in the top bar and load one of the two bundled demo missions, or use Load ACMI / drag & drop to open your own Tacview recording.
- Start at Action Briefing — it opens automatically after a load with the mission summary, your session grade, and a flow diagram pointing at the tabs worth visiting for that particular flight.
Installation
Specter is a portable Windows application — there is no installer. Unzip the download and
run specter.exe.
Do not move specter.exe out of its folder. It finds its maps
and models in the folders beside it. Moved on its own it still runs, but the terrain
becomes a flat grid and aircraft become plain shapes. Keep the whole folder together,
and do not run from inside the zip.
What is in the folder:
| specter.exe | The application |
|---|---|
| specter-updater.exe | The standalone autoupdater — see Updating |
| 3dobjects\ | 630 aircraft, vehicle, ship and structure models |
| data\terrain\ | Elevation maps for seven theatres |
| data\demos\ | Two sample missions |
| dcs-export\ | Live-telemetry script for DCS — see C2 Live |
System requirements
| Operating system | Windows 10 or 11, 64-bit |
|---|---|
| Graphics | Any GPU supporting Vulkan or DirectX 12. Integrated graphics work. |
| Memory | 4 GB RAM; 8 GB recommended for long missions |
| Disk space | About 1 GB with the included theatres |
| Internet | Not required to run or to activate — only for updates |
Activating your licence
Your licence key is emailed to you after purchase. It is a long string of letters and digits separated by dashes.
- Copy the whole key — every character matters. Select the entire cell in the email; spacing, dashes and case do not matter, a missing character does.
- Paste it into the Licence Key box at the top right of the window and click Activate.
- You should see 👑 PRO ACTIVE appear immediately.
No internet connection is needed to activate. Your key is verified on your own computer against a public key built into the app, and it is never sent anywhere.
One licence covers one PC. If you replace or rebuild your machine, email contextgovern@gmail.com and the key will be released for the new computer.
Running without a key puts you in FREE TRIAL MODE: replay loading works, but premium presentation features are locked until you activate.
Your first debrief
Specter does not replace Tacview — Tacview records the flight, Specter analyses the recording afterwards. The workflow is four steps:
- Fly with Tacview enabled. DCS writes a
.acmirecording to your Tacview folder in Documents on every flight. Nothing to configure. Zipped.zip.acmifiles work too. - Load the file. Click Load ACMI, press Ctrl+O, or drag the recording onto the window. Specter parses the telemetry, sanitises broken tracks and detects every event before the first screen appears.
- Read what it found. The Action Briefing tab opens with the mission summary, your session grade, and the detected events — launches, kills, merges, overshoots, defensive breaks — each with its geometry.
- Study the engagement, then export. Open any event in the 3D Kill Cam, check the shot against its engagement zone, and export a written after-action report for your flight.
No recording of your own yet? The Getting Started tab offers two bundled demo missions, Operation Iron Curtain (a 4v4 BVR intercept) and Operation Steel Rain (SEAD and strike against an IADS), plus one-click access to the Sensor Sandbox.
Loading recordings
Specter reads standard Tacview ACMI 2.2 files:
.acmi— plain text recordings.zip.acmi— zipped recordings (extracted automatically)
DCS writes recordings to:
%USERPROFILE%\Documents\Tacview\
Three ways to open a file:
- Load ACMI button in the title bar
- Drag & drop the file onto the Specter window
- Associate
.acmiwithspecter.exeand double-click recordings to open them directly
Sparse recordings. If the recording has very few position updates per second (common for server exports without a full Tacview record), Specter warns you that playback will look choppy. Visualisations still work — use the Upsampler to smooth sparse recordings into cleaner playback.
The tabs, explained
The left sidebar groups everything into four areas plus live mode. Keyboard numbers 1–8 jump straight to the main ones (see Controls).
Replay
3D Kill Cam
Every engagement rebuilt as a clip you can orbit, pause and scrub over real terrain. Shooter, target, weapon, sensor volumes, trails and the geometry between them — plus what the merge actually was and what you should have done differently. Use the toolbar toggles for Trails, Labels, Vectors and Sensor Vision. Select a contact in the roster to track it.
Global 3D
The whole mission over real terrain. Start here to see the shape of the engagement — where the fight began, how far it drifted, who stayed in the weeds. Camera: left-drag orbits, right-drag pans, wheel zooms; F toggles free-fly (WASD/QE to move).
2D Map & Radar Scope
The flat tactical picture when the 3D view is more than you need. The radar scope shows contacts in bearing/range and lets you step through time; the 2D map draws the whole theatre with your flight's path over it.
Highlights
Every detected event in one list, filterable by severity and type, each jumping straight to the moment it happened. This is the fast way to answer "what actually happened on this sortie?"
Analyse
WEZ Shot Quality
Every missile you fired, scored against the engagement zone it was fired from — range, aspect, closure and altitude at pickle. "It missed" becomes a reason instead of bad luck.
Energy Ladder
Who held the energy advantage through the fight, plotted as speed and altitude over time. Spot the turn that bled you out before the merge ever happened.
Pursuit Analysis
Lead, pure or lag pursuit — and what each cost. See whether you were flying the geometry that could actually produce a kill or a curve that guaranteed a miss.
Threat Map / Threat Map 3D
SAM exposure and where you were painted, measured against real elevation. See which terrain was actually masking you and where you were visible for every second of the flight.
Kill Chain
Detect → track → engage reconstructed for every kill. Was the geometry ever really there, or was the outcome settled minutes before the missile left the rail?
Mission Intensity, Formation Analysis, Bullseye
How hot the fight was minute by minute, how your formation held together, and where everything happened relative to the bullseye — the shared mental map of the fight.
Defensive Reactions
Did you react in time, and did it work? Notches, cranks, defensive breaks and their outcomes — the difference between "I got shot" and "I reacted four seconds too late."
What-If Simulator
Change one decision and see the outcome. Turn rate, climb rate, acceleration — replay the geometry with different inputs to see what would have had to be true to change the result.
Debrief
Action Briefing
The landing tab after every load: mission summary, session grade, a flow diagram of where the flight went, and the full timeline of detected events with filters. Filter to shots, kills, merges or defensive manoeuvres and jump straight to any of them.
After-Action Report
A written debrief you can export as self-contained HTML and send to your flight or print to PDF: what happened, who did what, and where it turned — in prose, not a spreadsheet. Open it and use Export AAR (HTML).
Scoreboard
Kills, losses, K/D and probability of kill per participant, sortable by any column. The unarguable numbers at the end of a debrief.
LSO Grading
Carrier approaches graded the way a Landing Signal Officer would — glideslope, lineup and power through the groove, for anyone working Case I/III recoveries.
Reconstruction
Rebuild moments the recording only hints at — telemetry gaps, sparse tracks and broken segments — for cleaner playback and more complete analysis.
Explore
Sensor Sandbox
Build any scenario with no recording required: place aircraft, SAM sites, ships and MANPADS, then watch every sensor picture at once. See why a stealth target is detected late, why beaming defeats a Doppler radar, and why a passive IR launcher gives no warning at all.
Upsampler
Smooth a sparse recording to a higher update rate for cleaner playback and analysis. Pick a target rate and run the built-in script, or write your own.
C2 Live
Live telemetry from DCS
See a DCS mission as you fly it instead of afterwards. Specter listens for the telemetry its own export script sends and records it into an ACMI file you can debrief immediately.
Install the exporter once:
- Copy
SPECTER_Export.lua(from thedcs-exportfolder, or theSPECTER_Export.luafile in the download) to%USERPROFILE%\Saved Games\DCS\Scripts\SPECTER_Export.lua. For DCS Open Beta the folder isSaved Games\DCS.openbeta\Scripts\. - Add one line to the end of
Saved Games\DCS\Scripts\Export.lua(create the file if it does not exist):local specter = loadfile(lfs.writedir()..[[Scripts\SPECTER_Export.lua]]); if specter then specter() end - Restart DCS. Open the C2 Live tab in Specter and fly. Recording starts on the first packet — you do not have to press anything.
What gets recorded
From the first packet of a session, every frame is written to an ACMI file in
Documents\SPECTER\Recordings\ as it arrives. The C2 tab shows the filename,
its size on disk, and how much mission time it holds.
That is separate from the live window — the few minutes of telemetry the map and 3D view keep in memory so they can draw a trail. The window is bounded, because 20 updates a second held forever would eventually exhaust RAM. The recording is not: it is bounded only by your disk.
| Crash-safe | The file is flushed about once a second and needs no closing. If DCS exits, the server drops you, or Windows restarts, whatever was written is already a valid recording you can open. |
|---|---|
| Mission restarts | A rotation, rejoin or slot change sends the mission clock back to zero. Specter closes the capture and starts a new one rather than writing two timelines into one file. |
| Adjustable | Settings → Command & Control Live controls the capture toggle, the live-window length and the telemetry port. |
Put it in Scripts\, not Scripts\Hooks\. The
Hooks folder is for GUI callbacks; the export callbacks this script uses are only invoked
from Export.lua, so installing it into Hooks means it never runs — with no
error to explain why.
The script chains to whatever was registered before it, so it works alongside SRS, DCS-BIOS and Tacview without breaking them. It sends 20 updates a second and caps at 120 entities per update, so it costs almost nothing in frame rate.
Servers that delay their own Tacview feed
Many public servers delay or restrict their server-side Tacview export, usually by ten minutes, so nobody can use a live feed of the whole server to find opponents. It is a real anti-cheat measure and worth respecting.
Specter's export is a different thing, and the difference is worth being clear about:
- It reads your own DCS client, through the same public
Export.luainterface that SRS, DCS-BIOS and Tacview's own client-side export use. - It therefore sees only what your client already has — objects within 100 nm of your aircraft, which is what the server has already chosen to send you. It cannot reveal anything your client was not given.
- Nothing is transmitted anywhere. The data goes to a UDP socket on your own machine.
A server's rules are the server's to make. Some communities prohibit
any client-side export during a mission, and a few enforce it with an integrity
check. If you fly somewhere with that rule, turn the export off — take the one line back
out of Export.lua, or rename SPECTER_Export.lua — and load the
server's own Tacview file afterwards instead. Specter analyses those exactly the same
way; the live feed is a convenience, not a requirement. If you are unsure, ask the
admins first.
Controls & camera
Camera (3D views)
| Left-drag | Orbit the camera around the scene |
|---|---|
| Right/middle-drag | Pan |
| Mouse wheel | Zoom in / out |
| F | Toggle free-fly camera (WASD/QE to move, drag to look) |
| Select a contact | Track it — the camera follows that aircraft |
Playback
| Space | Play / pause |
|---|---|
| ← → | Seek 5 seconds back / forward |
| Home / End | Jump to start / end of the recording |
| ↑ ↓ | Playback speed ×2 / ÷2 |
| Ctrl+O | Open a recording |
Tab shortcuts
| 1 | Action Briefing |
|---|---|
| 2 | 3D Kill Cam |
| 3 | 2D Map |
| 4 | Radar Scope |
| 5 | Energy Ladder |
| 6 | WEZ Shot Quality |
| 7 | Kill Chain |
| 8 | Scoreboard |
Terrain & theatres
Specter renders the ground from real elevation data, so the ridgeline that masked your radar is the ridgeline that was actually there. Seven theatres ship with the download: Caucasus, Syria, Persian Gulf, Nevada, Marianas, Normandy and The Channel.
Six more are available separately: Afghanistan, South Atlantic, Iraq,
Kola, Germany Cold War and Sinai. Download the .terrain file you want, drop it
into data\terrain\ next to the executable, and restart Specter. Nothing else
to configure.
Without a theatre's elevation file, a mission in that theatre still loads and every analysis still works — the ground simply draws as a flat reference grid instead of a map.
Settings & performance
Open ⚙ Settings in the title bar. Everything saves automatically.
| Rendering → Theme | Slate (default), Sandtable (light), Cyber, Amber Phosphor. Darker themes push contacts further from terrain colours for visibility. |
|---|---|
| Cinematic mode | Bloom, depth of field and vignette. Turning it off is the single biggest performance saving. |
| Terrain brightness / haze | Raise brightness on dark monitors; set haze to 0 if distant ground looks washed out. |
| MSAA | Lower for older GPUs. |
| Mesh scale | Models are deliberately enlarged at distance so they stay visible; this multiplies that. |
| Trail window | Long trails on a busy mission are expensive — shorten them. |
| C2 port | Where live telemetry listens (default 34380). Must match the port in SPECTER_Export.lua. |
Use the viewport filters (Air, Gnd, Msl, Sea) to hide what you are not studying — a large mission can hold thousands of objects.
Updating
Specter updates itself. When you start the app it quietly checks a signed manifest on the Specter website. If a newer build exists, a green Update to vX.Y.Z button appears in the top bar:
- Click the update button. Specter closes, hands the job to the bundled
specter-updater.exe, and relaunches you on the new version automatically. - Or update by hand at any time by double-clicking
specter-updater.exe— it prints what it is doing. - Your settings and licence are untouched — updates only replace the executable.
Every update is signed: before anything is downloaded, the updater verifies that the manifest on the server was published with the same key that mints licences, and verifies the file's SHA-256 before installing it. A compromised download server cannot substitute anything of its own.
Do not delete specter-updater.exe — it is what makes future updates work.
A log of every updater run is kept at %APPDATA%\Specter\updater.log.
See the Updates page for the current version and release notes.
Troubleshooting
The ground is flat, or there is no map
The theatre's elevation file is not installed. Check data\terrain\ for a
.terrain file matching your mission's map, and see Terrain
& theatres. If it is present, you probably moved specter.exe out of
its folder — unzip the whole folder and run it from there.
The terrain is too dark or washed out
Settings → Cinematic: raise Terrain brightness, set Haze strength to 0, or raise Terrain exaggeration to make ridgelines read more clearly (it never changes a measurement).
It runs slowly
Turn Cinematic mode off (the biggest saving), lower MSAA, shorten the Trail window, and use the viewport filters to hide what you are not studying. Large recordings take a moment to parse the first time — the status bar shows progress.
Aircraft look too big or too small
Settings → Tactical → Mesh scale.
Playback is choppy
The recording is sparse — few position updates per second. Use the Upsampler, or record with full-detail Tacview telemetry.
My licence key will not activate
- Check you copied the whole key. Spacing, dashes and capitals do not matter; a missing character does.
- "Already activated on another computer" — one licence covers one PC. Replaced or rebuilt your machine? Email us and we release the key.
- Make sure you are running the version you downloaded, not an older copy from a previous download.
Live telemetry never arrives
- Confirm the line is in
Export.lua, directly inScripts\. - Check the port: Settings → C2 port must match
SPECTER.portin the script. - Allow Specter through Windows Firewall when prompted (it uses a local UDP socket).
- Check
Saved Games\DCS\Logs\dcs.logfor lines taggedSPECTER. None means the script is not being loaded.
Getting help
If something is not working, the log file tells us far more than a description can. It records your graphics hardware and what happened when a recording was opened:
%APPDATA%\Specter\specter.log
Paste that path into Explorer's address bar, or use Settings → Reach Out To Us → Open folder.
- Discord — join the server
- Email — contextgovern@gmail.com