NZM_CMD 是《逆战:未来》的自动化执行终端与辅助框架。
本项目采用了 双模驱动架构 (Dual-Mode Driver Architecture) 与 计算机视觉 (Computer Vision) 相结合的方案,旨在提供最安全、最稳定的自动化体验。
⚠️ 注意:可执行文件无效传播, 却不能对项目有任何改进. 本项目目前不提供预编译的可执行文件 (EXE),直至软件进入稳定阶段。请参照下文自行编译。
本项目是 MINKE 体系 的一部分,建议配合以下项目使用以获得完整体验:
(策略生产工场)
NZM_CMD 专注于执行,而 MINKE 专注于生产。
* 可视化编辑:使用 MINKE 提供的可视化地图编辑器,您可以直观地在游戏截图上标记网格、绘制地形、规划陷阱布局。
* 数据生成:MINKE 负责生成 NZM_CMD 所需的核心配置文件:
* *地图.json:包含地图的物理参数、网格数据和预备动作。
* *策略.json:定义每一波的建造、升级和拆除指令。
* 工作流:
1. 在 MINKE 中加载游戏截图,绘制地图与策略。
2. 导出 JSON 文件。
3. 将 JSON 文件放入 NZM_CMD 的运行目录。
4. 启动 NZM_CMD 执行全自动挂机。
为了确保 CV 识别准确,请务必将游戏设置为以下配置:
| 模块 | 特性说明 | 完成时间 |
|---|---|---|
| 核心驱动 | 双模架构 (Dual-Mode):支持硬件串口与软件模拟热切换,集成 CLI 参数控制 | 2026-02-04 |
| 拟人算法 | 生物力学模拟:实现贝塞尔曲线鼠标轨迹、高斯分布按键延迟与微颤算法 | 2026-02-05 |
| 智能导航 | NavEngine:基于 TOML 配置的场景感知、OCR 状态识别与动态路由分发 | 2026-02-07 |
| 塔防业务 | 策略引擎:支持 JSON 定义建造/升级/拆除序列,实现坐标自动修正与双击防漏 | 2026-02-08 |
| 日活业务 | 任务闭环:实现每日任务的自动识别、刷新、领奖及弹窗跳过逻辑 | 2026-02-09 |
| OCR增强 | 智能波次识别:基于上下文的OCR纠错、波次递增验证、文本去重逻辑 | 2026-02-28 |
| 配置工具 | UI可视化编辑器:tools/UI_tool/ 支持TOML场景可视化编辑与导出 |
2026-02-28 |
启动游戏 -> 自动登录 -> 选区进入 -> 执行任务 -> 退出游戏 的全流程托管。ui_map.toml 和 strategy.json,应对游戏热更新。NZM_CMD/
├── src/
│ ├── main.rs # [入口] CLI 参数解析与路由分发 (Router)
│ ├── hardware.rs # [驱动] InputDriver Trait 定义及软/硬件实现
│ ├── human.rs # [核心] 拟人化算法 (曲线生成、抖动控制)
│ ├── nav.rs # [核心] 导航引擎、Windows OCR 封装、场景识别
│ ├── daily_routine.rs # [业务] 日常任务自动化逻辑
│ ├── tower_defense.rs # [业务] 塔防战斗逻辑、陷阱策略调度
│ └── models.rs # 数据结构定义
├── tools/
│ └── UI_tool/ # [工具] UI场景可视化编辑器 (TOML编辑与导出)
├── maps/ # [配置] 地图与策略文件目录
│ └── 地图名称/
│ ├── *地图.json # 地图元数据 (网格、安全区、相机参数)
│ ├── *策略.json # 波次策略 (建造/升级/拆除指令)
│ └── *防御塔.json # 防御塔配置 (可选)
├── ui_map.toml # 界面导航与路由配置文件
└── start_task.bat # 自动提权启动脚本
# 推荐使用 Release 模式以获得最佳 OCR 性能
cargo build --release
本项目支持命令行参数控制,或使用批处理脚本一键启动。
直接运行根目录下的 启动日活.bat (或自定义的 .bat 文件)。脚本会自动请求管理员权限并运行程序。
请以管理员身份打开 PowerShell 或 CMD:
通用语法:
cargo run --release -- -p <端口> -t <目标任务>
示例 1:使用软件模拟 (无需硬件)
# 自动回退到软件模式,执行赛季任务
cargo run --release -- -p SOFT -t "赛季任务"
示例 2:使用硬件串口
# 连接 COM3 端口,前往空间站地图
cargo run --release -- -p COM3 -t "空间站普通"
| 参数 | 简写 | 默认值 | 说明 |
|---|---|---|---|
--port |
-p |
COM3 |
指定串口号 (如 COM9)。输入 SOFT 强制使用软件模拟。 |
--target |
-t |
空间站普通 |
导航的目标界面名称 (对应 ui_map.toml 中的 id)。 |
--test |
无 | None |
运行单元测试模式:input (键鼠), screen (截图), ocr (识别), scroll (滚轮)。 |
ui_map.toml)你可以通过修改此文件来定义界面跳转逻辑及业务接管:
[[scenes]]
id = "每日目标"
name = "每日目标"
handler = "daily" # 指定由 DailyRoutineApp 接管
[[scenes]]
id = "空间站炼狱"
handler = "td" # 指定由 TowerDefenseApp 接管
*策略.json)定义塔防模式下的建造顺序和位置。强烈建议使用 MINKE 环境 生成此文件。
进入 tool 目录运行调试工具,用于获取屏幕坐标和测试 OCR 识别率:
cd tool
cargo run --release
MIT License
$ claude mcp add NZM_CMD \
-- python -m otcore.mcp_server <graph>