框选舒尔特方格区域,自动识别 1..N² 全部数字位置,按顺序用 Win32 API 极速点击。
在 Windows 原生 Python 下(用 py 启动器):
py -m pip install -r requirements.txt
py schulte_autoclicker.py # 框选区域 -> 点一次鼠标左键 -> 自动点击
py schulte_autoclicker.py --reuse # 复用上次框选区域
py schulte_autoclicker.py --no-click # 只识别不点击, 输出调试图
py schulte_autoclicker.py --debug # 保存调试图(正常点击时也保存)
py schulte_autoclicker.py --delay 0.05 # 每格间隔秒数(默认 0 极速)
py schulte_autoclicker.py --warmup 0.2 # 点击启动后到截屏的缓冲秒数(默认 0.1)
启动流程:框选区域 -> 把游戏窗口置前 -> 点一次鼠标左键(通常就是点游戏"开始"按钮)-> 缓冲后自动识别并点击。
- 默认模板匹配:二值化(Otsu) -> 连通域 -> 与本地缓存的 0-9 数字模板做归一化互相关分类,全程 cv2+numpy,几毫秒完成。
- 首次运行自动用 RapidOCR 自举生成模板缓存到 schulte_templates.npz,之后零 OCR。
- 游戏字体变化时自动回退 OCR 并刷新模板(自愈)。
- schulte_region.json 框选区域缓存(--reuse 复用)
- schulte_templates.npz 数字模板缓存(首次自举生成)
- schulte_debug_*.png 调试图(仅 --debug / --no-click 时生成)
以上均为本地运行产物, 已加入 .gitignore, 不会提交。
本项目由 AI (Hermes Agent) 辅助开发, 代码已人工审阅与测试。 This project was developed with the assistance of AI (Hermes Agent). The code has been human-reviewed and tested.
MIT © HX0922