Skip to content

Releases: Cec1c/MortarHUD

v1.1.0 —— M 键采集改进与炮口标尺

Choose a tag to compare

@github-actions github-actions released this 22 Sep 11:03

v1.1.0 —— M 键采集改进与炮口标尺

《Wardogs》迫击炮坐标解算外置 HUD。本版改进按 M 锁定炮位的采集策略,新增跟随目标 RNG 的外置炮口标尺。

下载与升级

下载 MortarHUD-1.1.0-win-x64-portable.zip,解压后双击 MortarHUD.exe。仅支持 Windows x64,无需安装 .NET、Python 或 Tesseract。

升级前从托盘退出旧版,保留原设置即可。首次启动会解压内置运行时与 OCR 资源;SHA256SUMS.txt 用于核对下载包。

M 键与识别改进

  • 开图后短时连拍,再识别冻结的画面;相邻两帧坐标一致才锁定炮位,避免 OCR 耗时让后续截图错过坐标显示窗口。
  • 默认等待由 350ms 调整为 150ms;已有自定义延迟保留。默认冻结 4 帧,间隔 60ms。
  • 连拍完成后移动鼠标不会取消已冻结的读数;按键、点击、滚轮、切窗和新操作仍使旧结果失效。失败保留原炮位和目标。
  • Auto 使用 C / C-Balanced 与两种 Tesseract 分页模式,抑制彩色地图边框干扰;所有有效读数仍必须一致,不用多数票接受有歧义的坐标。
  • 诊断整屏和识别小图取自同一帧,PNG 在后台保存。

炮口标尺

  1. 按 M 开图,光标短暂停留约 0.4 秒,确认炮位锁定;用中键记录目标。
  2. 打开 设置 → 炮口标尺,勾选 启用炮口标尺,点击应用。
  3. 在迫击炮瞄准视图中,调整炮口,使游戏的距离刻线与外置标尺的同名刻线重合;青色目标线显示当前计算的 RNG。
  4. F10 单独显示/隐藏标尺,F8 同时控制 HUD 与标尺。

例如目标为 327m,可将游戏里的 340M 刻线对准外置 340 刻线,不必凭感觉估计两条粗刻线之间的位置。

标尺按游戏客户区分辨率保存横坐标、中心高度与每 50 MIL 的像素间距。1920×1080 提供截图实测初值;其他分辨率先按画面高度缩放,可在设置中校准后保存。更换 FOV、武器或瞄准缩放后需要重新校准。

当前刻度表来自 L81 MORTAR 截图,范围为 80–684m,中间值采用分段线性插值;范围外不生成瞄准刻线。刻度对齐不代表已验证所有条件下的实际落点。推荐无边框窗口模式,独占全屏下外置 HUD 可能不可见。

验证与发布

  • 277 项自动测试,包括 54 张真实 ROI 的识别与拒绝回归。
  • 离线 281 帧样本中,接受数由 120 提高到 158;这是样本接受数,不是准确率或实机 M 成功率。
  • 用户已完成本次实机试用并批准发布。
  • 发布包由 GitHub Actions 从版本标签编译,测试通过并完成便携版启动/OCR 自检后公开。

程序不注入游戏进程、不读写游戏内存、不模拟键鼠输入、不联网。

v1.0.1 —— 修复采集丢失与地图键校准

Choose a tag to compare

@Cec1c Cec1c released this 17 Sep 14:14

《Wardogs》迫击炮坐标解算外置 HUD,1.0.1。

它做什么

打开游戏地图时,游戏会在光标旁显示该点的绝对坐标。MortarHUD 读出这两行,算出炮位到目标的方位角与距离,用透明置顶、鼠标穿透的 HUD 显示:

AZ  079.0°
RNG 152m

因为读的是游戏自己显示的绝对坐标,地图缩放、平移、重新居中都不影响结果。

下载

MortarHUD-1.0.1-win-x64-portable.zip —— 解压即用,目标机器不需要安装 .NET 或任何运行时。解压出来就是一个 exe,双击它。

OCR 的语言包与字形库都打在 exe 内部,首次启动时释放到 %TEMP%\.net\。不需要额外的启动脚本。

1.0.1 修了什么

1.0.0 装上去你会发现按 M 经常失败、按中键偶尔没反应——都是这一版修的。

  • 采集被静默丢弃:结果作废时(采集期间光标动了)不写日志、不更新 HUD,表现就是「按了键没反应」。实机统计 140 次采集里有 23 次是这样无声消失的。现在会明确显示「光标移动,已取消」。
  • 按 M 失败:游戏的 M 是开关,地图已经打开时再按一次会把它关掉,程序随即采到一张没有坐标读数的画面。加上跳过时界面毫无提示(只写日志),用户以为没生效就再按一次——正好触发上一条。现在跳过会显示「地图没打开 / 再按一次 M」。
  • 「最多尝试几次」这个设置从来没生效过,代码里写死了 2 次。
  • 识别流水线换了一条:117 份实机采集回放显示 A 流水线是弱的那条(末位误读、丢前导数字),换成 C 的二值化配两种分页模式交叉校验,成功从 65/117 涨到 80/117,两条读法互相矛盾从 16 次降到 5 次。

新增

  • 中英双语界面。首次启动按系统语言选(中文系统用中文,其余用英文),之后可在设置 → 日常使用 → 语言里改,重启生效。
  • 界面小字更清晰,HUD 里的中文和数字字重统一了。

主要功能

  • 读屏 OCR:截取光标附近一小块,两种独立读法各自识别;结果不一致就报错,而不是挑一个用下去
  • 全局热键:F6 记录炮位、鼠标中键记录目标、F8 显示/隐藏 HUD、F9 打开设置,全部可改
  • 地图键自动校准:按 M 打开地图时光标会回到自己位置,程序据此自动锁定炮位
  • 可定制 HUD:布局、字体、颜色、描边、阴影、背景板、锚点与偏移;内置四套主题,也能自己调
  • 三页设置界面:日常使用 / 外观 / 诊断(中英双语)

采不到数据时 HUD 会说明原因——「地图没打开」「光标移动,已取消」——而不是默默什么都不做。

安全边界

不注入游戏进程、不读写游戏内存、不模拟任何键鼠输入、不联网。

只做两件事:注册全局热键,以及在你按键的那一刻截取屏幕上一小块。程序以普通用户权限运行,不需要管理员。

已知限制

  • 仅支持 Windows x64
  • 推荐无边框窗口模式;独占全屏下外置 HUD 可能不可见,这是外置工具的固有限制
  • ROI 默认值按 1920×1080 实测。游戏 UI 缩放差得多的话,用「诊断 → 查看单次识别结果」调一次即可

v1.0.0 —— 首个公开版本

Choose a tag to compare

@Cec1c Cec1c released this 17 Sep 10:02

《Wardogs》迫击炮坐标解算外置 HUD 的首个公开版本。

它做什么

打开游戏地图时,游戏会在光标旁显示该点的绝对坐标。MortarHUD 读出这两行,算出炮位到目标的方位角与距离,用透明置顶、鼠标穿透的 HUD 显示:

AZ  079.0°
RNG 152m

因为读的是游戏自己显示的绝对坐标,地图缩放、平移、重新居中都不影响结果。

下载

MortarHUD-1.0.0-win-x64-portable.zip —— 解压即用,目标机器不需要安装 .NET 或任何运行时。解压后双击 MortarHUD.exe。

解压出来就是一个 exe(外加一个 run.cmd):OCR 的语言包与字形库都打在 exe 内部,首次启动时释放到 %TEMP%\.net\。别只复制 exe 之外的某个文件,整包解压即可。

主要功能

  • 读屏 OCR:截取光标附近一小块,两条独立图像流水线各自识别;结果不一致就报错,而不是挑一个用下去
  • 全局热键:F6 记录炮位、鼠标中键记录目标、F8 显示/隐藏 HUD、F9 打开设置,全部可改
  • 地图键自动校准:按 M 打开地图时光标会回到自己位置,程序据此自动锁定炮位
  • 可定制 HUD:布局、字体、颜色、描边、阴影、背景板、锚点与偏移;内置四套主题,也能自己调
  • 三页设置界面:日常使用 / 外观 / 诊断

安全边界

不注入游戏进程、不读写游戏内存、不模拟任何键鼠输入、不联网。

只做两件事:注册全局热键,以及在你按键的那一刻截取屏幕上一小块。程序以普通用户权限运行,不需要管理员。

已知限制

  • 仅支持 Windows x64
  • 推荐无边框窗口模式;独占全屏下外置 HUD 可能不可见,这是外置工具的固有限制
  • OCR 基准测试集目前只有 3 张实机截图,正确率的统计意义有限;目标基准集是 30 张
  • 模板匹配引擎(语言包缺失时的兜底)的字形库缺数字 2 和 3——那三张样本里没出现过