Compare commits
2 Commits
6a93e6f78b
...
e8aeb5e801
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
e8aeb5e801 | ||
|
|
266e034f86 |
@@ -1,5 +1,5 @@
|
|||||||
{
|
{
|
||||||
"time": "20250621220837",
|
"time": "20250622092257",
|
||||||
"url": "https://github.com/babalae/bettergi-scripts-list/archive/refs/heads/main.zip",
|
"url": "https://github.com/babalae/bettergi-scripts-list/archive/refs/heads/main.zip",
|
||||||
"file": "repo.json",
|
"file": "repo.json",
|
||||||
"indexes": [
|
"indexes": [
|
||||||
@@ -53971,8 +53971,8 @@
|
|||||||
{
|
{
|
||||||
"name": "AutoArtifactsPro",
|
"name": "AutoArtifactsPro",
|
||||||
"type": "directory",
|
"type": "directory",
|
||||||
"hash": "52770222928b7c7553583479db3b49a696fe4f30",
|
"hash": "8e9721869b744ffe68617e4eef8af4471a8505f1",
|
||||||
"version": "1.3.3",
|
"version": "1.3.5",
|
||||||
"author": "mno",
|
"author": "mno",
|
||||||
"description": "自动狗粮重制版~|~通过不同好感任务卡时间后运行狗粮任务以提高狗粮总收益,需要正确配置好感队伍的战斗策略,并在自定义配置中指定好感和狗粮队伍名称",
|
"description": "自动狗粮重制版~|~通过不同好感任务卡时间后运行狗粮任务以提高狗粮总收益,需要正确配置好感队伍的战斗策略,并在自定义配置中指定好感和狗粮队伍名称",
|
||||||
"tags": [
|
"tags": [
|
||||||
@@ -53983,7 +53983,7 @@
|
|||||||
"兽肉",
|
"兽肉",
|
||||||
"狗粮"
|
"狗粮"
|
||||||
],
|
],
|
||||||
"lastUpdated": "2025-06-21 22:05:08"
|
"lastUpdated": "2025-06-22 09:22:40"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "AutoArtifactsSalvageOrDestroy(1-4star)",
|
"name": "AutoArtifactsSalvageOrDestroy(1-4star)",
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
# 自动好感与全富6A1B狗粮脚本
|
# 自动好感pro狗粮脚本
|
||||||
|
|
||||||
**重要免责声明:**
|
**重要免责声明:**
|
||||||
|
|
||||||
@@ -16,7 +16,7 @@
|
|||||||
|
|
||||||
使用即表示您已阅读并同意上述条款。
|
使用即表示您已阅读并同意上述条款。
|
||||||
|
|
||||||
**Last Updated:** 2025-06-21
|
**Last Updated:** 2025-06-22
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
@@ -129,6 +129,10 @@
|
|||||||
3. 在执行过程中,确保游戏窗口保持在前台,避免干扰。
|
3. 在执行过程中,确保游戏窗口保持在前台,避免干扰。
|
||||||
|
|
||||||
## 更新日志
|
## 更新日志
|
||||||
|
### 1.3.5(2025.06.22)
|
||||||
|
1.修复了对于四星狗粮数量的错误处理造成的统计结果中收益为负的问题
|
||||||
|
### 1.3.4(2025.06.21)
|
||||||
|
1.优化了换队伍的逻辑
|
||||||
### 1.3.3(2025.06.21)
|
### 1.3.3(2025.06.21)
|
||||||
1.尝试修复好感战斗超时时程序异常终止的问题
|
1.尝试修复好感战斗超时时程序异常终止的问题
|
||||||
### 1.23.4(2025.06.16)
|
### 1.23.4(2025.06.16)
|
||||||
|
|||||||
@@ -220,6 +220,9 @@ const DEFAULT_FIGHT_TIMEOUT_SECONDS = 120;
|
|||||||
// 启用自动拾取的实时任务
|
// 启用自动拾取的实时任务
|
||||||
dispatcher.addTimer(new RealtimeTimer("AutoPick"));
|
dispatcher.addTimer(new RealtimeTimer("AutoPick"));
|
||||||
|
|
||||||
|
//切换至好感队
|
||||||
|
await switchPartyIfNeeded(friendshipPartyName);
|
||||||
|
|
||||||
let runnedTimes = 0;
|
let runnedTimes = 0;
|
||||||
|
|
||||||
wait: {
|
wait: {
|
||||||
@@ -229,7 +232,6 @@ const DEFAULT_FIGHT_TIMEOUT_SECONDS = 120;
|
|||||||
if (operationType !== "不卡时间,ab交替运行") {
|
if (operationType !== "不卡时间,ab交替运行") {
|
||||||
// 输出结果
|
// 输出结果
|
||||||
log.info(`预期开始狗粮时间: ${endTime.toTimeString().slice(0, 8)}`);
|
log.info(`预期开始狗粮时间: ${endTime.toTimeString().slice(0, 8)}`);
|
||||||
|
|
||||||
// 检查当前时间是否晚于 endTime
|
// 检查当前时间是否晚于 endTime
|
||||||
if (timeNow > endTime) {
|
if (timeNow > endTime) {
|
||||||
log.warn('无需卡时间')
|
log.warn('无需卡时间')
|
||||||
@@ -305,10 +307,8 @@ const DEFAULT_FIGHT_TIMEOUT_SECONDS = 120;
|
|||||||
break artifacts;
|
break artifacts;
|
||||||
}
|
}
|
||||||
// 开始运行狗粮路线
|
// 开始运行狗粮路线
|
||||||
//切换至狗粮队
|
|
||||||
await switchPartyIfNeeded(grindPartyName);
|
|
||||||
let runArtifactsResult = true;
|
let runArtifactsResult = true;
|
||||||
runArtifactsResult = await runArtifactsPaths(runRouteA);
|
runArtifactsResult = await runArtifactsPaths(runRouteA, grindPartyName);
|
||||||
const result2 = await decomposeArtifacts(settings.keep4Star, settings.doDecompose);
|
const result2 = await decomposeArtifacts(settings.keep4Star, settings.doDecompose);
|
||||||
// 计算 mora 和 artifactExperience 的差值
|
// 计算 mora 和 artifactExperience 的差值
|
||||||
const moraDiff = Number(result2.mora) - Number(result1.mora); // 将字符串转换为数字后计算差值
|
const moraDiff = Number(result2.mora) - Number(result1.mora); // 将字符串转换为数字后计算差值
|
||||||
@@ -340,8 +340,10 @@ const DEFAULT_FIGHT_TIMEOUT_SECONDS = 120;
|
|||||||
//完成剩下好感
|
//完成剩下好感
|
||||||
|
|
||||||
if (runnedTimes < settings.minTimesForFirendship) {
|
if (runnedTimes < settings.minTimesForFirendship) {
|
||||||
|
|
||||||
//切换至好感队
|
//切换至好感队
|
||||||
await switchPartyIfNeeded(friendshipPartyName);
|
await switchPartyIfNeeded(friendshipPartyName);
|
||||||
|
|
||||||
// 验证超时设置
|
// 验证超时设置
|
||||||
const ocrTimeout = validateTimeoutSetting(settings.ocrTimeout, DEFAULT_OCR_TIMEOUT_SECONDS, "OCR");
|
const ocrTimeout = validateTimeoutSetting(settings.ocrTimeout, DEFAULT_OCR_TIMEOUT_SECONDS, "OCR");
|
||||||
const fightTimeout = validateTimeoutSetting(settings.fightTimeout, DEFAULT_FIGHT_TIMEOUT_SECONDS, "战斗");
|
const fightTimeout = validateTimeoutSetting(settings.fightTimeout, DEFAULT_FIGHT_TIMEOUT_SECONDS, "战斗");
|
||||||
@@ -391,7 +393,7 @@ async function writeRecordFile(lastRunDate, lastEndTime, lastRunRoute, records,
|
|||||||
}
|
}
|
||||||
|
|
||||||
//运行狗粮路线的逻辑
|
//运行狗粮路线的逻辑
|
||||||
async function runArtifactsPaths(runRouteA) {
|
async function runArtifactsPaths(runRouteA, grindPartyName) {
|
||||||
// 根据 runRouteA 的值给 runningRoute 赋值
|
// 根据 runRouteA 的值给 runningRoute 赋值
|
||||||
const runningRoute = runRouteA ? "A" : "B";
|
const runningRoute = runRouteA ? "A" : "B";
|
||||||
|
|
||||||
@@ -438,6 +440,10 @@ async function runArtifactsPaths(runRouteA) {
|
|||||||
}
|
}
|
||||||
// 启用自动拾取的实时任务
|
// 启用自动拾取的实时任务
|
||||||
dispatcher.addTimer(new RealtimeTimer("AutoPick"));
|
dispatcher.addTimer(new RealtimeTimer("AutoPick"));
|
||||||
|
|
||||||
|
//切换至狗粮队
|
||||||
|
await switchPartyIfNeeded(grindPartyName);
|
||||||
|
|
||||||
// 运行普通路线
|
// 运行普通路线
|
||||||
{
|
{
|
||||||
// 读取文件夹中的文件名并处理
|
// 读取文件夹中的文件名并处理
|
||||||
@@ -1097,7 +1103,7 @@ async function decomposeArtifacts(keep4Star, doDecompose) {
|
|||||||
log.warn(`在指定区域未识别到有效数字: ${initialValue}`);
|
log.warn(`在指定区域未识别到有效数字: ${initialValue}`);
|
||||||
}
|
}
|
||||||
let regionToCheck3 = { x: 100, y: 885, width: 170, height: 50 };
|
let regionToCheck3 = { x: 100, y: 885, width: 170, height: 50 };
|
||||||
let decomposedNum = await recognizeTextInRegion(regionToCheck3);
|
let decomposedNum = 0;
|
||||||
let firstNumber = 0;
|
let firstNumber = 0;
|
||||||
let firstNumber2 = 0;
|
let firstNumber2 = 0;
|
||||||
|
|
||||||
@@ -1109,7 +1115,7 @@ async function decomposeArtifacts(keep4Star, doDecompose) {
|
|||||||
await click(370, 1020); // 点击“确认选择”按钮
|
await click(370, 1020); // 点击“确认选择”按钮
|
||||||
await sleep(1500);
|
await sleep(1500);
|
||||||
|
|
||||||
|
decomposedNum = await recognizeTextInRegion(regionToCheck3);
|
||||||
|
|
||||||
// 使用正则表达式提取第一个数字
|
// 使用正则表达式提取第一个数字
|
||||||
const match = decomposedNum.match(/已选(\d+)/);
|
const match = decomposedNum.match(/已选(\d+)/);
|
||||||
@@ -1118,6 +1124,7 @@ async function decomposeArtifacts(keep4Star, doDecompose) {
|
|||||||
if (match) {
|
if (match) {
|
||||||
// 将匹配到的第一个数字转换为数字类型并存储在变量中
|
// 将匹配到的第一个数字转换为数字类型并存储在变量中
|
||||||
firstNumber = Number(match[1]);
|
firstNumber = Number(match[1]);
|
||||||
|
log.info(`1-4星总数量: ${firstNumber}`);
|
||||||
} else {
|
} else {
|
||||||
log.info("识别失败");
|
log.info("识别失败");
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
{
|
{
|
||||||
"manifest_version": 1,
|
"manifest_version": 1,
|
||||||
"name": "自动狗粮重制版",
|
"name": "自动狗粮重制版",
|
||||||
"version": "1.3.3",
|
"version": "1.3.5",
|
||||||
"tags": ["好感", "盗宝团", "愚人众", "鳄鱼", "兽肉", "狗粮"],
|
"tags": ["好感", "盗宝团", "愚人众", "鳄鱼", "兽肉", "狗粮"],
|
||||||
"description": "通过不同好感任务卡时间后运行狗粮任务以提高狗粮总收益,需要正确配置好感队伍的战斗策略,并在自定义配置中指定好感和狗粮队伍名称",
|
"description": "通过不同好感任务卡时间后运行狗粮任务以提高狗粮总收益,需要正确配置好感队伍的战斗策略,并在自定义配置中指定好感和狗粮队伍名称",
|
||||||
"authors": [
|
"authors": [
|
||||||
|
|||||||
Reference in New Issue
Block a user