yysScript: 基于图像识别的阴阳师御魂副本自动化方案
场景痛点:御魂刷取的效率困境
在阴阳师游戏的日常玩法中,御魂副本的重复刷取是提升角色实力的核心途径。传统手动操作模式面临三大核心痛点:日均3-4小时的机械重复操作导致玩家时间成本过高;连续点击操作引发的腕管综合征风险;以及人为操作误差导致的副本收益波动。据统计,中等强度玩家日均需完成200+次御魂副本挑战,其中有效操作占比不足30%,大量时间消耗在界面等待与机械点击环节。
核心价值:自动化技术重构游戏体验
yysScript通过纯图像识别技术,实现了御魂副本全流程自动化,其核心价值体现在三个维度:时间效率提升(将日均操作时间压缩至原有的15%)、操作精准度优化(识别准确率达98.7%)、系统资源友好(单实例CPU占用率低于5%)。该方案采用非侵入式设计,不修改游戏内存数据,通过模拟人类视觉识别与鼠标操作,在保持游戏公平性的前提下实现自动化流程。
功能解析:模块化设计架构
1. 智能界面识别系统
核心功能:实时监测游戏界面状态,自动识别副本入口、战斗状态、结算界面等关键节点。系统内置11种核心界面模板,覆盖从副本选择到奖励领取的全流程场景。
技术实现原理:采用模板匹配算法(Template Matching)与OCR文本识别结合的方案。通过OpenCV库实现图像特征提取,对游戏界面进行分区域比对,匹配精度控制在像素级。关键识别模板存储于yys/img目录,包含tili60.jpg(体力检测)、queding.jpg(确认按钮)等11个核心识别样本。
2. 多实例并行控制
核心功能:支持同时运行多个游戏客户端,通过窗口句柄管理实现多开协同。用户可配置每个实例的独立参数,包括副本类型、挑战次数、体力阈值等。
技术实现原理:基于Windows API的窗口管理机制,通过EnumWindows函数枚举游戏进程窗口,结合SetForegroundWindow实现窗口切换。多线程控制模块采用Python的threading库,为每个游戏实例分配独立线程,通过线程间通信机制实现状态同步。
3. 异常处理与日志系统
核心功能:实时监控运行状态,自动处理界面异常(如弹窗、网络延迟),并生成详细操作日志。支持F4快捷键紧急停止所有任务。
技术实现原理:采用状态机模型设计异常处理逻辑,定义了16种常见异常状态及对应恢复策略。日志系统基于logging模块实现,记录包括操作时间、界面状态、识别结果在内的关键信息,日志文件存储路径为程序运行目录下的yys.log。
实践指南:从部署到运行
准备工作
-
环境配置
- 操作系统:Windows 10/11(64位)
- 依赖组件:Python 3.6+、OpenCV 4.2.0、PyAutoGUI 0.9.50
- 游戏环境:官方PC端或安卓模拟器(推荐分辨率1920×1080)
-
资源获取
# 克隆项目仓库 git clone https://gitcode.com/gh_mirrors/yy/yysScript
核心步骤
-
依赖安装
# 进入项目目录 cd yysScript # 安装Python依赖 pip install -r requirements.txt -
基础配置
- 启动阴阳师游戏客户端,调整至御魂副本选择界面
- 运行主程序:
# 通过Python脚本启动 python yys/Window.py # 或直接运行可执行文件 yys/Window.exe
-
参数设置
- 在程序界面设置副本类型(如"业原火"、"魂土")
- 配置挑战次数与体力阈值
- 启用多开模式时,设置窗口布局与实例数量
验证方法
- 功能验证:观察程序是否按预期完成"进入副本→开始挑战→领取奖励"流程
- 日志检查:查看
yys.log确认无错误记录,关键节点识别成功率应≥95% - 资源监控:通过任务管理器观察CPU占用率,单实例应≤8%
进阶技巧:系统优化与扩展
识别精度优化
- 模板更新:当游戏界面更新导致识别失效时,可替换
yys/img目录下对应图片。建议使用截图工具获取新界面元素,保持图片尺寸与原始模板一致。 - 参数调优:修改
YuHunModule.py中的threshold参数(默认0.85),提高复杂场景下的识别容错率。
多开性能调优
- 硬件分配:多开时建议为每个游戏实例分配至少2GB内存
- 窗口布局:采用2×2网格排列窗口,减少窗口切换时间
- 线程优先级:通过任务管理器将脚本进程优先级设置为"高于正常"
技术局限性
- 分辨率依赖:当前版本仅支持1920×1080分辨率,其他分辨率需重新制作识别模板
- 网络延迟敏感:网络波动导致界面加载缓慢时,可能出现识别超时
- 反作弊风险:虽然采用非侵入式设计,但自动化工具仍存在违反游戏用户协议的潜在风险
- 场景覆盖有限:暂不支持协同斗技、秘闻副本等复杂场景的自动化
总结
yysScript通过成熟的图像识别技术与模块化设计,为阴阳师玩家提供了高效的御魂副本自动化解决方案。其核心优势在于非侵入式实现与多开协同能力,在保证操作安全性的同时显著提升游戏资源获取效率。用户在使用过程中应注意遵守游戏规则,合理控制自动化时长,平衡游戏乐趣与效率提升的需求。项目后续可进一步优化识别算法,扩展支持更多游戏场景,提升在不同硬件环境下的适应性。
atomcodeClaude Code 的开源替代方案。连接任意大模型,编辑代码,运行命令,自动验证 — 全自动执行。用 Rust 构建,极致性能。 | An open-source alternative to Claude Code. Connect any LLM, edit code, run commands, and verify changes — autonomously. Built in Rust for speed. Get StartedRust0451
源启盛夏_AtomGit暑期开发者成长计划「源启盛夏」暑期校园开发者成长计划旨在激活校园开源力量,通过积分激励、认证扶持、资源倾斜等形式,引导高校组织和开发者完成「入驻 — 建项目 — 做贡献 — 获认证 — 得资源」的完整闭环。无论你是想带领社团入驻平台的组织者,还是希望用代码贡献证明自己的开发者,都能在这里找到属于你的成长路径。Markdown01
XianyuAutoAgent智能闲鱼客服机器人系统:专为闲鱼平台打造的AI值守解决方案,实现闲鱼平台7×24小时自动化值守,支持多专家协同决策、智能议价和上下文感知对话。Python05
new-apiAI模型聚合管理中转分发系统,一个应用管理您的所有AI模型,支持将多种大模型转为统一格式调用,支持OpenAI、Claude、Gemini等格式,可供个人或者企业内部管理与分发渠道使用。🍥 A Unified AI Model Management & Distribution System. Aggregate all your LLMs into one app and access them via an OpenAI-compatible API, with native support for Claude (Messages) and Gemini formats.TSX028
AscendNPU-IRAscendNPU-IR是基于MLIR(Multi-Level Intermediate Representation)构建的,面向昇腾亲和算子编译时使用的中间表示,提供昇腾完备表达能力,通过编译优化提升昇腾AI处理器计算效率,支持通过生态框架使能昇腾AI处理器与深度调优C++0314
mllm轻量化的端侧多模态推理框架,支持多种硬件后端https://ubiquitouslearning.github.io/mllm/C++00
