NZM_CMD 是《逆战:未来》的自动化执行终端与辅助框架。
本项目采用了 双模驱动架构 (Dual-Mode Driver Architecture) 与 计算机视觉 (Computer Vision) 相结合的方案,旨在提供最安全、最稳定的自动化体验。
⚠️ 注意:可执行文件无效传播, 却不能对项目有任何改进. 本项目目前不提供预编译的可执行文件 (EXE),直至软件进入稳定阶段。请参照下文自行编译。
💬 加入讨论: 1075480881
本项目是 MINKE 体系 的一部分,建议配合以下项目使用以获得完整体验:
(策略生产工场)
NZM_CMD 专注于执行,而 MINKE 专注于生产。
- 可视化编辑:使用
MINKE提供的可视化地图编辑器,您可以直观地在游戏截图上标记网格、绘制地形、规划陷阱布局。 - 数据生成:
MINKE负责生成NZM_CMD所需的核心配置文件:*地图.json:包含地图的物理参数、网格数据和预备动作。*策略.json:定义每一波的建造、升级和拆除指令。
- 工作流:
- 在 MINKE 中加载游戏截图,绘制地图与策略。
- 导出 JSON 文件。
- 将 JSON 文件放入 NZM_CMD 的运行目录。
- 启动 NZM_CMD 执行全自动挂机。
为了确保 CV 识别准确,请务必将游戏设置为以下配置:
- 显示模式: 无边框全屏 (Borderless Windowed)
- 分辨率: 1920x1080
- 帧率限制: 60 FPS (包括大厅和局内,必须锁定以保证时序稳定)
- 画质设置: 推荐低/中画质,关闭动态模糊和光影特效(减少 OCR 干扰)
| 模块 | 特性说明 | 完成时间 |
|---|---|---|
| 核心驱动 | 双模架构 (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 |
- 相机系统优化
- 多矩形安全区域拼接、边界校准与累计误差消除
- 全链路无人值守
- 实现
启动游戏 -> 自动登录 -> 选区进入 -> 执行任务 -> 退出游戏的全流程托管。
- 实现
- 事件调度系统 (Event Scheduler)
- 支持 Cron 表达式风格的定时任务(如:每天凌晨 3 点自动刷首胜)。
- 云端策略库
- 支持从远程服务器拉取最新的
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 # 自动提权启动脚本
- OS: Windows 10 / 11 (需启用 Windows OCR 服务)
- Rust: Stable toolchain (请自行安装 Rust 环境进行编译)
# 推荐使用 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 (滚轮)。 |
你可以通过修改此文件来定义界面跳转逻辑及业务接管:
[[scenes]]
id = "每日目标"
name = "每日目标"
handler = "daily" # 指定由 DailyRoutineApp 接管
[[scenes]]
id = "空间站炼狱"
handler = "td" # 指定由 TowerDefenseApp 接管
定义塔防模式下的建造顺序和位置。强烈建议使用 MINKE 环境 生成此文件。
进入 tool 目录运行调试工具,用于获取屏幕坐标和测试 OCR 识别率:
cd tool
cargo run --release
- 本项目仅作为 Rust 系统编程、计算机视觉及自动化控制技术的学习研究案例。
- 严禁将本项目用于任何破坏游戏平衡、盈利或非法用途。
- 使用任何辅助软件均存在账号封禁风险,开发者不对使用本项目产生的任何后果负责。
MIT License