From c5423dc79df610cc5cd2f65773436f4e5776a335 Mon Sep 17 00:00:00 2001 From: LX666-666 Date: Mon, 5 May 2025 19:38:45 +0800 Subject: [PATCH] Add files via upload (#704) --- .../js/AutoEntrust/Data/commissions_data.json | 18 +-- .../AutoEntrust/Data/commissions_report.txt | 10 +- repo/js/AutoEntrust/Data/每日委托URL.txt | 11 ++ repo/js/AutoEntrust/README.md | 11 +- .../assets/丘丘人的一小步/低语森林-1.json | 153 ++++++++++++++++++ repo/js/AutoEntrust/main.js | 24 +-- repo/js/AutoEntrust/manifest.json | 8 +- 7 files changed, 204 insertions(+), 31 deletions(-) create mode 100644 repo/js/AutoEntrust/Data/每日委托URL.txt create mode 100644 repo/js/AutoEntrust/assets/丘丘人的一小步/低语森林-1.json diff --git a/repo/js/AutoEntrust/Data/commissions_data.json b/repo/js/AutoEntrust/Data/commissions_data.json index d092ebcf..5af7c770 100644 --- a/repo/js/AutoEntrust/Data/commissions_data.json +++ b/repo/js/AutoEntrust/Data/commissions_data.json @@ -1,29 +1,29 @@ { - "timestamp": "2025-05-04T15:37:24.038Z", + "timestamp": "2025-05-05T09:38:31.853Z", "commissions": [ { "id": 1, - "name": "攀高危险", + "name": "丘丘人的一小步", "supported": true, - "location": "果酒湖" + "location": "鹰翔海滩" }, { "id": 2, - "name": "临危受命", + "name": "圆滚滚的易爆品", "supported": true, - "location": "达达乌帕谷" + "location": "坠星山谷" }, { "id": 3, - "name": "为了执行官大人", + "name": "临危受命", "supported": true, - "location": "未知地点" + "location": "千风神殿" }, { "id": 4, - "name": "钥匙是易丢品", + "name": "餐品订单", "supported": false, - "location": "未知地点" + "location": "蒙德城" } ] } \ No newline at end of file diff --git a/repo/js/AutoEntrust/Data/commissions_report.txt b/repo/js/AutoEntrust/Data/commissions_report.txt index bd255908..0bc5706f 100644 --- a/repo/js/AutoEntrust/Data/commissions_report.txt +++ b/repo/js/AutoEntrust/Data/commissions_report.txt @@ -1,9 +1,9 @@ # 原神每日委托识别报告 -生成时间: 2025/5/4 23:37:24 +生成时间: 2025/5/5 17:38:31 ## 委托列表 -1. 攀高危险 (未知地点) - ✅ 支持 -2. 临危受命 (未知地点) - ✅ 支持 -3. 为了执行官大人 (未知地点) - ✅ 支持 -4. 钥匙是易丢品 (未知地点) - ❌ 不支持 +1. 丘丘人的一小步 (鹰翔海滩) - ✅ 支持 +2. 圆滚滚的易爆品 (坠星山谷) - ✅ 支持 +3. 临危受命 (千风神殿) - ✅ 支持 +4. 餐品订单 (蒙德城) - ❌ 不支持 diff --git a/repo/js/AutoEntrust/Data/每日委托URL.txt b/repo/js/AutoEntrust/Data/每日委托URL.txt new file mode 100644 index 00000000..067c2ad1 --- /dev/null +++ b/repo/js/AutoEntrust/Data/每日委托URL.txt @@ -0,0 +1,11 @@ +https://bbs.mihoyo.com/ys/obc/content/1117/detail?bbs_presentation_style=no_header&header_bar_hide_back=1&visit_device=pc +我要玩原神 +https://bbs.mihoyo.com/ys/obc/content/431/detail?bbs_presentation_style=no_header&header_bar_hide_back=1&visit_device=pc +我要玩原神 +https://bbs.mihoyo.com/ys/obc/content/426/detail?bbs_presentation_style=no_header&header_bar_hide_back=1&visit_device=pc +我要玩原神 +https://bbs.mihoyo.com/ys/obc/content/945/detail?bbs_presentation_style=no_header&header_bar_hide_back=1&visit_device=pc +我要玩原神 +https://bbs.mihoyo.com/ys/obc/content/535/detail?bbs_presentation_style=no_header&header_bar_hide_back=1&visit_device=pc +我要玩原神 +https://bbs.mihoyo.com/ys/obc/content/434/detail?bbs_presentation_style=no_header&header_bar_hide_back=1&visit_device=pc \ No newline at end of file diff --git a/repo/js/AutoEntrust/README.md b/repo/js/AutoEntrust/README.md index 65246e24..b58d2407 100644 --- a/repo/js/AutoEntrust/README.md +++ b/repo/js/AutoEntrust/README.md @@ -1,7 +1,7 @@ # 原神自动化脚本集合 ## 项目简介 -本项目是一个基于BetterGI的原神自动化脚本集合,主要功能包括自动完成每日委托、自动识别委托内容、自动追踪委托路径等。 +本项目是一个基于BetterGI的原神自动化脚本集合,主要功能包括自动完成每日委托、自动识别委托内容、自动追踪委托路径等。路径追踪脚本由换苏伟u大佬提供。未来准备支持全国家的每日委托,需要对话的委托来自动刷取成就奖励。 ## 主要功能 - 自动识别每日委托内容 @@ -10,23 +10,28 @@ ## 更新日志 +### 当前版本:0.92 +- 修复部分路径命名错误 +- 修复第4个委托识别失败 + ### 当前版本:0.91 - 修改寻路功能改为两条路径都尝试一遍 - 修复委托已完成退出错误 - 增加输入检测 -### 上一版本:0.90 +### 旧版本:0.90 - 实现基本的委托识别功能 - 支持委托地点OCR识别 - 基础的委托路径追踪功能 ## 使用说明 -1. 确保已安装BetterGI并正确配置 +1. 确保已安装BetterGI并正确配置,推荐在自动战斗中关闭拾取掉落物,因为会浪费大量时间。 2. 在脚本设置中可配置以下选项: - 跳过识别(直接从Data文件夹加载委托数据进行追踪) - 最小文本长度(小于此长度的文本将被过滤) - 调试模式(输出更多日志信息) - 战斗的队伍名称 +3. 常见问题:1.Q:明明这个地方没有委托,却跑回去打怪。A:脚本是这样写的,未来会增加检测功能,优化脚本。2.Q:为什么有的蒙德打怪委托未完成?A:因为请将脚本data/文件夹下面的数据,log/日志下今日日志,每日委托任务截图。反馈给3302871403 ## 注意事项 - 部分委托可能无法正确识别或追踪,遇到问题请手动完成 diff --git a/repo/js/AutoEntrust/assets/丘丘人的一小步/低语森林-1.json b/repo/js/AutoEntrust/assets/丘丘人的一小步/低语森林-1.json new file mode 100644 index 00000000..92cb6e76 --- /dev/null +++ b/repo/js/AutoEntrust/assets/丘丘人的一小步/低语森林-1.json @@ -0,0 +1,153 @@ +{ + "info": { + "name": "苍风高地南侧-丘丘人的一小步+圆滚滚易爆品4", + "type": "collect", + "author": "1", + "version": "1.0", + "description": "", + "bgiVersion": "0.35.1" + }, + "positions": [ + { + "id": 1, + "x": -601.4267910651051, + "y": 1842.75, + "action": "", + "move_mode": "walk", + "type": "teleport" + }, + { + "id": 2, + "x": -627.875397257787, + "y": 1820.25, + "action": "", + "move_mode": "walk", + "action_params": "", + "type": "path" + }, + { + "id": 3, + "x": -645.5177063470437, + "y": 1810.125, + "action": "", + "move_mode": "walk", + "action_params": "", + "type": "path" + }, + { + "id": 4, + "x": -656.0011350222467, + "y": 1801, + "action": "", + "move_mode": "run", + "type": "path" + }, + { + "id": 5, + "x": -668.0009931444656, + "y": 1789, + "action": "fight", + "move_mode": "walk", + "action_params": "", + "type": "path" + }, + { + "id": 6, + "x": -673.4395714155999, + "y": 1782.5625, + "action": "fight", + "move_mode": "walk", + "action_params": "", + "type": "path" + }, + { + "id": 7, + "x": -687.999091982203, + "y": 1783.75, + "action": "", + "move_mode": "run", + "type": "path" + }, + { + "id": 8, + "x": -715.7503405066745, + "y": 1764, + "action": "", + "move_mode": "run", + "type": "path" + }, + { + "id": 9, + "x": -731.9997729955503, + "y": 1752.5, + "action": "", + "move_mode": "run", + "type": "path" + }, + { + "id": 10, + "x": -765.7448923998909, + "y": 1754, + "action": "", + "move_mode": "run", + "type": "path" + }, + { + "id": 11, + "x": -795.4900118042315, + "y": 1752.75, + "action": "", + "move_mode": "run", + "type": "path" + }, + { + "id": 12, + "x": -810.9973894488339, + "y": 1719.25, + "action": "", + "move_mode": "run", + "type": "path" + }, + { + "id": 13, + "x": -815.0074911468273, + "y": 1684.25, + "action": "", + "move_mode": "run", + "type": "path" + }, + { + "id": 14, + "x": -812.2463679288121, + "y": 1659, + "action": "", + "move_mode": "walk", + "type": "path" + }, + { + "id": 15, + "x": -793.6370652864789, + "y": 1651.5, + "action": "", + "move_mode": "walk", + "type": "path" + }, + { + "id": 16, + "x": -760, + "y": 1649.5, + "action": "fight", + "move_mode": "walk", + "type": "target" + }, + { + "id": 17, + "x": -767.25, + "y": 1643.5, + "type": "path", + "move_mode": "walk", + "action": "fight", + "action_params": "" + } + ] +} \ No newline at end of file diff --git a/repo/js/AutoEntrust/main.js b/repo/js/AutoEntrust/main.js index 0701a32b..7f278ab3 100644 --- a/repo/js/AutoEntrust/main.js +++ b/repo/js/AutoEntrust/main.js @@ -135,7 +135,7 @@ click(300, 350); click(300, 350); click(300, 350); - await sleep(300); + await sleep(100); log.info("已进入委托界面"); return true; @@ -360,7 +360,7 @@ log.error("无法进入委托界面,脚本终止"); return; } - await sleep(5000); // 增加延迟,确保界面完全加载 + await sleep(1000); // 增加延迟,确保界面完全加载 // 步骤1: 执行第一次OCR识别 log.info("步骤1: 执行第一次OCR识别"); @@ -451,11 +451,13 @@ await sleep(2000); // 等待滑动完成 // 步骤4: 执行第二次OCR识别 - log.info("步骤4: 执行第二次OCR识别"); + log.info("步骤4: 执行第二次OCR识别({x}, {y}) ({width}, {height})", + OCR_REGION_X, OCR_REGION_Y, OCR_REGION_X + OCR_REGION_WIDTH, OCR_REGION_Y + OCR_REGION_HEIGHT); captureRegion = captureGameRegion(); let secondResults = captureRegion.findMulti(ocrRo); log.info("第二次OCR识别结果数量: {count}", secondResults.count); + // 处理第二次识别结果 let fourthCommission = null; for (let i = 0; i < secondResults.count; i++) { @@ -472,7 +474,7 @@ // 移除break,继续循环,取最后一个有效结果 } } - + // 步骤5: 点击委托4详情按钮 if (fourthCommission) { log.info("步骤5: 点击委托4详情按钮"); @@ -487,7 +489,8 @@ // 检测是否成功进入详情界面 const detailStatus = await checkDetailPageEntered(); log.info(`委托详情界面状态: ${detailStatus}`); - + const commission = firstCommissions[4]; + // 根据检测结果处理 if (detailStatus === "已完成") { log.info("该委托已完成,跳过地点识别和退出操作"); @@ -496,12 +499,13 @@ log.warn("无法确认是否进入详情界面,尝试继续执行"); // 尝试识别委托地点 const location = recognizeCommissionLocation(); + commission.location = location; + log.info("委托 {name} 的地点: {location}", commission.name,commission.location); + } else { + log.info("1"); + location = recognizeCommissionLocation(); fourthCommission.location = location; log.info("委托 {name} 的地点: {location}", fourthCommission.name, location); - } else { - const location = recognizeCommissionLocation(); - commission.location = location; - log.info("委托 {name} 的地点: {location}", commission.name, location); } // 如果不是已完成状态,需要执行退出操作 @@ -518,7 +522,7 @@ keyUp("VK_ESCAPE"); await sleep(1200); } - } + } // 合并所有委托结果 let allCommissions = [...firstCommissions]; diff --git a/repo/js/AutoEntrust/manifest.json b/repo/js/AutoEntrust/manifest.json index 2061ad4f..d41ba179 100644 --- a/repo/js/AutoEntrust/manifest.json +++ b/repo/js/AutoEntrust/manifest.json @@ -1,13 +1,13 @@ { "manifest_version": 1, "name": "(Beta)全自动寻路蒙德地区每日委托", - "version": "0.9", - "bgi_version": "0.36.1", - "description": "识别原神每日委托并与支持列表比对,确定可执行的委托,请阅读根目录下的README.md", + "version": "0.92", + "bgi_version": "0.44.7", + "description": "基于BetterGI的原神自动化脚本,可自动识别每日委托内容、OCR识别委托地点和状态、自动追踪委托路径。目前支持蒙德地区委托,未来将支持全国家委托。使用前请阅读README.md获取详细说明和常见问题解答。如果发生错误,如不支持的战斗委托,请将脚本data/文件夹下面的数据,log/日志下今日日志,每日委托任务尽量包含地点截图。反馈给3302871403", "authors": [ { "name": "LX666-666,换苏伟u", - "link": "" + "link": "https://github.com/LX666-666" } ], "settings_ui": "settings.json",