OpsTrack
by mikkelsen
0.6.1
Improved data quality
- Game Version
- 1.8.0.13
- Created
- Tue, 29 Sep 2026 10:08:56 GMT
- Last Modified
- Tue, 29 Sep 2026 10:09:02 GMT
0.6.0
**OpsTrack v0.6.0** - Added autostart recording: turn it on per server in the web app, and a recording starts by itself 30 seconds after enough players are online. - Added a minimum player count for autostart, set per server in the web app. - Autostart starts a new recording when the current one reaches its time limit while players are still online. - After a manual stop (#opstrack_stop or ending the mission in the web app), autostart waits until the server has been empty before recording again. - If the API refuses to start a recording (e.g. storage limit reached), autostart pauses until #opstrack_reload or a server restart. - Server settings are now fetched from the web app at startup and on #opstrack_reload, and the server log shows which server the API key belongs to. - Fixed #opstrack_reload not picking up a changed API key. - A settings file with a typo is no longer overwritten with defaults; the reload is refused and the previous settings stay in effect. - Fixed join events sometimes getting lost when a recording started while players were joining. - Join/leave events are now always recorded; the EnableConnectionEvents setting was removed. - Admin chat now shows a readable message instead of raw JSON when a mission is ended from the web app.
- Game Version
- 1.8.0.13
- Created
- Fri, 18 Sep 2026 07:27:34 GMT
- Last Modified
- Fri, 18 Sep 2026 07:27:42 GMT
0.5.5
OpsTrack v0.5.5 Bug Fixes Fixed AI/vehicles/players sometimes rendering as alive forever after actually dying Deleted AI/vehicles now disappear from replays instead of showing a death marker Fixed GM editor kills rendering the explosion on the GM instead of the target Fixed a GM disconnecting while possessing an AI sometimes killing and hiding that AI from the replay Fixed the last few seconds of a recording sometimes getting silently dropped
- Game Version
- 1.8.0.10
- Created
- Mon, 31 Aug 2026 13:12:15 GMT
- Last Modified
- Mon, 31 Aug 2026 13:12:21 GMT
0.5.4
# OpsTrack 0.5.4 **Reforger 1.8** - Compatibility pass for 1.8 — the mod builds and runs clean on the new version **Grenade launchers** - Fixed: a 40 mm shot was drawn as a straight bullet tracer to a point it never flew to, alongside the real explosion somewhere else. Arcing rounds no longer report a false impact point — the explosion supplies the real one **Bad API key** - A rejected API key now stops the mod and tells the admin why, instead of retrying every 3 seconds for the rest of the session - Fix the key and run #opstrack_reload to resume
- Game Version
- 1.8.0.10
- Created
- Thu, 13 Aug 2026 14:30:21 GMT
- Last Modified
- Thu, 13 Aug 2026 14:30:27 GMT
0.5.3
**0.5.3** - Proper display of record start errors - Added new url for api
- Game Version
- 1.7.0.54
- Created
- Wed, 12 Aug 2026 10:32:25 GMT
- Last Modified
- Wed, 12 Aug 2026 10:32:30 GMT
0.5.2
# OpsTrack 0.5.2 **Shots through vegetation** - Fixed: projectiles was recorded as stopped mid-air on bushes and trees instead of passing through **End of recording** - Fixed: the last batch of every recording was sent without a mission id, so the closing seconds of shots were dropped
- Game Version
- 1.7.0.54
- Created
- Tue, 11 Aug 2026 12:45:13 GMT
- Last Modified
- Tue, 11 Aug 2026 12:45:19 GMT
0.5.1
# OpsTrack 0.5.1 **Vehicle weapons** - Fixed: turret shots recorded an impact 2 cm from the muzzle, so tracers were invisible - The shot raycast now ignores the vehicle the gunner is sitting in
- Game Version
- 1.7.0.54
- Created
- Sat, 01 Aug 2026 13:38:48 GMT
- Last Modified
- Sat, 01 Aug 2026 13:38:53 GMT
0.5.0
# OpsTrack 0.5.0 **Server performance** - Removed the per-second whole-map entity scan; entities now register themselves as they spawn - Full scan now runs once per recording as a self-check, then switches off **Client stutter** - The AI shot relay no longer runs when nothing is being recorded (it ran on every client, always) - Shot data moved off the blocking delivery channel **Vehicle weapons** - Turret fire is now recorded — previously produced no shot lines at all - Attributed to the gunner, incl. AI crews and multi-turret vehicles
- Game Version
- 1.7.0.54
- Created
- Sat, 01 Aug 2026 12:37:28 GMT
- Last Modified
- Sat, 01 Aug 2026 12:37:32 GMT
0.4.7
**OpsTrack v0.4.7 — Server Performance Diagnostics** **New** - The mod now reports **server performance data** along with recordings: capture cost, server FPS, entity counts, and queue depths. This is what let us track down the cause of the recent "OpsTrack drops our server FPS" reports, and it means we can now spot that kind of problem on your server without asking you to dig through log files. It is sent only while a recording is running, adds roughly 0.1% to the data volume, and contains **no player information** — only aggregate counts and timings. - The server log now always states which API the mod connected to at startup, so a server pointed somewhere unexpected is obvious at a glance instead of buried in debug output. *This release is measurement only — it does not change what gets recorded. The performance work it is measuring for comes next.*
- Game Version
- 1.7.0.54
- Created
- Fri, 31 Jul 2026 07:26:24 GMT
- Last Modified
- Fri, 31 Jul 2026 07:26:30 GMT
0.4.6
Hotfix to server perfomance
- Game Version
- 1.7.0.54
- Created
- Wed, 29 Jul 2026 19:47:13 GMT
- Last Modified
- Wed, 29 Jul 2026 19:47:16 GMT
0.4.5
**OpsTrack v0.4.5 — Grenade Tracking** **New** - Thrown grenades are now captured — for both players and AI: - **Frag grenades** show up as explosions at the actual blast point, attributed to the thrower and labeled with the grenade type (e.g. M67). - **Smoke grenades** are a new event type: a smoke marker appears at the ignition point, with the color parsed from the grenade type. Fired smoke rounds (e.g. 40mm) are captured too. **Fixed** - Thrown smoke grenades no longer produce a false explosion when the smoke burns out (~2.5 minutes after the throw). - Kill feed events are now only captured while a recording is active.
- Game Version
- 1.7.0.54
- Created
- Sat, 25 Jul 2026 13:40:51 GMT
- Last Modified
- Sat, 25 Jul 2026 13:40:58 GMT
0.4.4
# OpsTrack v0.4.4 — Recording Stability Hotfix **Fixed:** a recording could stop unexpectedly if a player or weapon name contained certain special characters (such as quotes or backslashes), which corrupted the data sent to the server. All text values are now handled safely, so a single unusual name can no longer interrupt a recording.
- Game Version
- 1.7.0.54
- Created
- Mon, 29 Jun 2026 18:54:36 GMT
- Last Modified
- Mon, 29 Jun 2026 18:54:44 GMT
0.4.3
# OpsTrack v0.4.3 — AI Fire Tracking **The biggest gap in our After-Action Reviews is now closed: AI weapon fire is tracked.** **AI shots** — every AI's fire is now captured: where it was fired from, the direction, and where the round lands — exactly like player shots. Replays now show the **whole** firefight, not just the human side. **AI explosions** — RPGs, grenade launchers and HE rounds fired by AI now show up too, including detonations out in the open that hit nothing. **Handgrenades and smokegrenade tracking** - Still not working :(
- Game Version
- 1.7.0.54
- Created
- Sun, 28 Jun 2026 19:29:53 GMT
- Last Modified
- Sun, 28 Jun 2026 19:29:59 GMT
0.4.1
**0.4.1** - Fireevents only supported for players and not ai
- Game Version
- 1.7.0.49
- Created
- Tue, 23 Jun 2026 10:40:48 GMT
- Last Modified
- Tue, 23 Jun 2026 10:40:51 GMT
0.4.0
**0.4.0** - Added projectile tracking
- Game Version
- 1.7.0.49
- Created
- Mon, 22 Jun 2026 19:10:08 GMT
- Last Modified
- Mon, 22 Jun 2026 19:10:11 GMT
0.3.37
**v0.3.37** Updated screenshots, description and summary on workshop
- Game Version
- 1.7.0.49
- Created
- Tue, 09 Jun 2026 20:25:32 GMT
- Last Modified
- Tue, 09 Jun 2026 20:25:36 GMT
0.3.36
**0.3.36** - Updated to compile with 1.7, fixed a variable name that had changed.
- Game Version
- 1.7.0.41
- Created
- Fri, 29 May 2026 08:33:40 GMT
- Last Modified
- Fri, 29 May 2026 08:33:44 GMT
0.3.35
**V0.3.35** **Removed map config** - No longer required to update mod to support new maps, the supported maps list is now fetched from the API
- Game Version
- 1.6.0.119
- Created
- Tue, 26 May 2026 19:25:41 GMT
- Last Modified
- Tue, 26 May 2026 19:25:44 GMT
0.3.34
**v0.3.34** **Added maps** - Normandy - BelleauWood - Kuhmo
- Game Version
- 1.6.0.119
- Created
- Tue, 26 May 2026 09:20:51 GMT
- Last Modified
- Tue, 26 May 2026 09:20:55 GMT
0.3.33
**0.3.33** Added better handling of timeout on POST to API
- Game Version
- 1.6.0.119
- Created
- Mon, 25 May 2026 16:56:51 GMT
- Last Modified
- Mon, 25 May 2026 16:56:53 GMT
0.3.32
**0.3.32 — Quiet Logs for Tenants Without 506IRRU** - **Log spam eliminated when 506IRRU Custom Name Tags mod isn't installed.** Previously, the helper logged `Failed to load $profile:custom_names.json` as a WARN every 5 seconds (driven by cache-miss force-reloads). On a tenant without the 506 mod, this filled the log file with thousands of identical warnings per mission. - **One log per state change.** The "file missing" message now fires exactly once per session as INFO (downgrade from WARN — missing file is the normal case for tenants without 506, not a warning condition). Subsequent checks are silent until the file actually appears, at which point you'll see `Custom names cache reloaded: N entries`. - **State-driven logging.** The helper now logs on state transitions (missing → present, present → missing, valid → invalid) instead of on every check. No more noise about persistent normal states.
- Game Version
- 1.6.0.119
- Created
- Sun, 24 May 2026 12:57:04 GMT
- Last Modified
- Sun, 24 May 2026 12:57:11 GMT
0.3.31
More fix
- Game Version
- 1.6.0.119
- Created
- Mon, 11 May 2026 18:54:00 GMT
- Last Modified
- Mon, 11 May 2026 18:54:04 GMT
0.3.30
Fix guard on custom_names length
- Game Version
- 1.6.0.119
- Created
- Mon, 11 May 2026 17:40:30 GMT
- Last Modified
- Mon, 11 May 2026 17:40:34 GMT
0.3.29
Fix wrongly published .28
- Game Version
- 1.6.0.119
- Created
- Mon, 11 May 2026 17:10:48 GMT
- Last Modified
- Mon, 11 May 2026 17:10:52 GMT
0.3.28
**0.3.28 — 506IRRU Custom Name Tags Support** - **Custom names from the 506IRRU Custom Name Tags mod are now picked up by OpsTrack** — no hard dependency required. If a player has set a custom name via the 506 mod, it'll appear in replay, kill feeds, mission rosters, and connection events instead of their default game name. If the mod isn't installed, everything works exactly as before. - **How it works:** OpsTrack reads `$profile:custom_names.json` (written by the 506 mod) and resolves names by player UID. The file is cached in memory and refreshed every **10 seconds**, so name changes mid-mission propagate automatically. Cache miss accelleration kicks in within **5 seconds** for newly-set names. - **Reload on demand:** `#opstrack_reload` (RCON or admin chat) now also force-refreshes the custom name cache. Useful if you've just edited the file manually and want instant pickup. - **Graceful degradation:** - File missing → silent fallback to default name (no spam, no retries) - JSON parse failure → keep previous cache, log one WARN (no warning spam) - Player has no custom name set → falls through to default name - Player UID not resolvable yet (early in connection) → uses default name - **Affected areas:** Player display names in entity definitions, kill events (actor + victim), connection events (join/leave), and AI death attribution when the killer is a player.
- Game Version
- 1.6.0.119
- Created
- Mon, 11 May 2026 15:13:36 GMT
- Last Modified
- Mon, 11 May 2026 15:13:40 GMT
0.3.27
**Added maps** - Yunakivka - Glenwood - WorthyIslands
- Game Version
- 1.6.0.119
- Created
- Wed, 06 May 2026 21:49:43 GMT
- Last Modified
- Wed, 06 May 2026 21:49:49 GMT
0.3.26
**0.3.26 — Each Life Is a Distinct Entity (Death Marker Fix)** - **Fixes "dead players appear alive after death" in replay.** Previously, the mod reused a single UUID per player across all their lives in a mission. After death events were sent (`isAlive=false`), the next respawn produced new alive states with the **same** UUID — so frontend queries that fetch "the latest state for this entity" found an alive row after the death timestamp. The result: dead players were rendered as living on the replay map. - **What changed.** Each life now gets its own UUID. When a player respawns into a new body, the mod generates a fresh UUID and sends a new entity definition. The dead UUID never receives any new alive states — its timeline correctly ends at death. - **Frontend death-markers feature now works.** The "show death markers for the rest of the replay" UX (frontend issue #30) relies on the assumption that *each life is a distinct entity*. With this fix, that assumption holds for all missions recorded going forward. - **Known impact on legacy data.** Missions recorded before this fix have reused-UUID rows and will continue to show the bug on replay. Cleaner data starts now — no migration shipped.
- Game Version
- 1.6.0.119
- Created
- Mon, 27 Apr 2026 17:39:38 GMT
- Last Modified
- Mon, 27 Apr 2026 17:39:40 GMT
0.3.25
0.3.25 — Entity Definition Self-Healing - API drift recovery: when the API reports unknownEntityIds (states referencing entities it doesn't know about), the mod now automatically re-sends those entity definitions in the next batch. Previously, any loss of entity definitions on the API side would permanently result in skipped states for the rest of the mission. The mod now detects the drift and heals itself with zero admin intervention. - Faction change detection: entity definitions are kept in sync when the faction changes mid-life. Previously, a vehicle first seen empty (faction="Unknown") retained that faction in the definition forever, even after being occupied by players. Same issue applied to players switching sides via Game Master or campaign mechanics. Now, any faction change triggers an entity definition update (sent as an idempotent upsert — no new endpoint required). - Internal: Entity cache refactored from JSON payload strings to full OpsTrack_Entity objects. Enables regenerating payloads on demand with current faction, and opens the door for future entity metadata updates. - 17 new automated tests covering UUID response parsing, re-enqueue edge cases (empty input, cached, partial hits, cache invalidation), and faction change detection (no change, occupied vehicle, null guards, uncached entities).
- Game Version
- 1.6.0.119
- Created
- Fri, 24 Apr 2026 18:34:19 GMT
- Last Modified
- Fri, 24 Apr 2026 18:34:22 GMT
0.3.24
Set baseurl to be a constant instead of configurable
- Game Version
- 1.6.0.119
- Created
- Thu, 23 Apr 2026 20:27:20 GMT
- Last Modified
- Thu, 23 Apr 2026 20:27:24 GMT
0.3.23
Added map - Novka
- Game Version
- 1.6.0.119
- Created
- Wed, 22 Apr 2026 04:40:39 GMT
- Last Modified
- Wed, 22 Apr 2026 04:40:41 GMT