Skip to content

CS2 DemoTracer v0.8.0

Latest

Choose a tag to compare

@unicbm unicbm released this 18 Jul 03:10

CS2 DemoTracer v0.8.0

v0.8.0 是一次以本地 Demo 归档和 GUI 使用体验为核心的功能版本。DemoTracer 仍然专注于快速转换 Demo 并在本地 CS2 中回放;新界面把“我转换过什么、这些回放来自哪里、现在该怎样继续”整理成了可长期维护的工作流。

本地回放库

  • GUI 现在默认进入本地回放库。Windows 首次运行使用 文档\CS2 DemoTracer\Library,也可以设置主导出库并同时索引多个额外归档目录。
  • 新转换按 <库>\<地图>\<可读名称>--<hash12>\ 保存;完整 Demo SHA-256 仍是唯一身份,不再只有难以辨认的散落哈希目录。
  • 新增地图背景、搜索/筛选、队伍与选手概览,以及可展开的 SteamID64 和 K/D/A;核心信息保持在首屏,高级细节按需查看。
  • 每个归档增加本机 demo-info.jsondemo-source.json。它们保存可重建的显示元数据和原 Demo 指针,但不会污染可移植的 ABI 17 manifest.json

更可靠的 Demo 信息

  • 比分改为依据正式 round_end 和跨换边的稳定队伍身份计算,不再把回合开始记分板快照误当最终比分。
  • 归档会展示地图、队伍、选手、K/D/A、完整 Demo 时长、CS2 patch、转换器版本,以及来自服务器 header/文件名证据的平台信息。
  • Demo 文件时间明确显示为近似文件时间;不会伪装成 Demo 中不存在的可靠比赛日期。
  • 旧归档不会再显示未经证实的“最终比分”。在原 .dem 仍存在时,可用“补全资料”重新生成本机元数据而无需重写 .dtr

找回、整理和再次转换

  • 转换时会记住原 .dem 路径并用完整 SHA-256 校验。“补全资料”和“重新选择轮次”会优先自动使用这条指针,只有文件确实被移动或删除时才要求重新定位。
  • “整理旧归档”可以校验散落的回放目录、按完整 Demo 哈希去重并复制进按地图归类的主库;原目录不会被移动或删除。
  • 新侧栏明确区分回放库、转换任务和已打开的 Manifest;播放命令与语音、饰品等导出状态也使用更直接的说明。

Playback 修复

  • 当 Manifest 含有 Demo 记录的音乐盒证据时,DemoTracer 现在会同步 replay bot 的音乐盒与 MVP 音乐状态,并在加载切换或卸载时恢复原状态。
  • 同步带有受限重试窗口,用于处理 CS2 在玩家/库存服务稍晚就绪的情况,不会持续覆盖无关状态。

兼容性

  • .dtr writer 仍为 v7,reader 仍支持 v3–v7。
  • Manifest ABI 仍为 17;BotController native ABI 仍为 16(bundle minor 31);DemoTracer API 仍为 6。
  • 现有 .dtr 无需重新转换。只有需要新版归档元数据的旧条目才需要使用“补全资料”。
  • 正式发布资产仍只维护并验证 Windows x64。

下载

  • GUI:推荐给大多数用户,包含新的本地回放库、单 Demo 转换和播放命令生成。
  • CLI:用于 inspect、批量转换、pool、wizard 和独立 validate。
  • Playback Bundle:安装到本地 Windows x64 CS2 server,用于播放 .dtr;升级时请完整替换 bundle,不要混用新旧插件。
English

CS2 DemoTracer v0.8.0

v0.8.0 is a feature release centered on the local demo library and desktop workflow. DemoTracer remains focused on fast conversion and local CS2 playback; the redesigned GUI now keeps converted replays understandable, recoverable, and easy to reuse over time.

Local replay library

  • The GUI now opens in a local replay library. On first run Windows uses Documents\CS2 DemoTracer\Library; users can choose a main export library and index multiple additional archive folders.
  • New conversions use <library>\<map>\<readable-name>--<hash12>\, while the full demo SHA-256 remains the unique identity.
  • Embedded map artwork, search/filter controls, team and player summaries, and expandable SteamID64 and K/D/A details keep the first view focused without hiding useful evidence.
  • Each archive gains local demo-info.json and demo-source.json sidecars for rebuildable display metadata and source provenance. The portable ABI 17 manifest.json remains sanitized and unchanged.

More reliable demo metadata

  • Scores are derived from authoritative round_end events and stable team identities across side swaps instead of treating a round-start scoreboard snapshot as the final result.
  • Archive metadata includes map, teams, players, K/D/A, full demo duration, CS2 patch, converter version, and platform evidence inferred from the server header or filename.
  • Source file time is explicitly presented as approximate file time, not as a reliable match timestamp that the demo does not provide.
  • Legacy archives no longer present unverified snapshots as final scores. When the original .dem is available, Repair metadata rebuilds local sidecars without rewriting .dtr payloads.

Recovery, organization, and reconversion

  • Conversion remembers the source .dem path and verifies it with the full SHA-256. Metadata repair and Choose rounds again reuse that pointer automatically and ask for relocation only when the file has actually moved or disappeared.
  • Organize old archives validates scattered replay folders, deduplicates by full demo hash, and copies accepted archives into the map-grouped main library without moving or deleting their sources.
  • A persistent sidebar separates the library, conversion tasks, and an opened Manifest. Playback commands and voice/cosmetic export state use clearer, more direct wording.

Playback fix

  • When a Manifest contains demo-backed music-kit evidence, DemoTracer now synchronizes the replay bot's music kit and MVP music state, then restores the prior state on replacement or unload.
  • A bounded retry window handles CS2 player/inventory services becoming ready slightly later without continuously overwriting unrelated state.

Compatibility

  • The .dtr writer remains v7; the reader still supports v3–v7.
  • Manifest ABI remains 17, BotController native ABI remains 16 (bundle minor 31), and DemoTracer API remains 6.
  • Existing .dtr files do not require reconversion. Only legacy entries that need richer library metadata should use metadata repair.
  • Official release assets remain Windows x64 only.

Downloads

  • GUI for the new local replay library, single-demo conversion, and playback command generation.
  • CLI for inspect, batch, pool, wizard, and standalone validation workflows.
  • Playback Bundle for local Windows x64 CS2 server playback. Replace the complete bundle when upgrading instead of mixing old and new plugins.

Full Changelog: v0.7.2...v0.8.0