update AbundantOre js script (#1740)

This commit is contained in:
Jamis
2025-08-28 11:33:55 +08:00
committed by GitHub
parent e087a96c32
commit ea62e3bc02
5 changed files with 586 additions and 236 deletions

View File

@@ -1,6 +1,6 @@
# 说明
该脚本按挖矿路线的效率从高到低挖矿,记录矿产资源的冷却时间,自动规划挖矿路线,可选挖矿种类和挖矿区域。
该脚本按挖矿路线的效率从高到低挖矿,记录矿产资源的刷新时间,自动规划挖矿路线,可选挖矿种类和挖矿区域。
- 目前支持5种运行模式
1. 最速480矿
@@ -25,4 +25,9 @@
顾名思义
- 地面挖矿队伍中必须有诺艾尔,只挖水下的矿则无此限制
- 矿产资源的冷却时间记录在脚本目录下`records/persistent_data.json`文件中升级、重新订阅脚本或重新安装BetterGI可能导致该记录丢失请自行备份。
- 矿产资源的刷新时间记录在脚本目录下`records/persistent_data.json`文件中升级、重新订阅脚本或重新安装BetterGI可能导致该记录丢失请自行备份。
## 进阶使用
- 如果有多个游戏帐号可在最后一个输入框内为每个游戏帐号填写一个唯一的字符串以使他们的刷新时间分开保存互不干扰。这个唯一的字符串并不必须是帐号的UID只要互不相同就可以了。
- 对于少部分路线没有完成地图探索任务,又不想跳过整个区域的玩家,可以将想要跳过的脚本文件名称填入`assets/disabled_paths.conf`文件中以跳过这些地图追踪脚本,注意这个文件在重新订阅或更新时会被覆写。

File diff suppressed because it is too large Load Diff

View File

@@ -81,7 +81,7 @@ function load_persistent_data() {
const disabled_paths = new Set();
function load_disabled_paths() {
const file_content = file.readTextSync("assets/disabled_paths.txt");
const file_content = file.readTextSync("assets/disabled_paths.conf");
for (var l of file_content.split("\n")) {
l = l.trim();
if (l.length === 0) {
@@ -94,6 +94,12 @@ function load_disabled_paths() {
}
}
var statistics = {};
function load_statistics_data() {
statistics = JSON.parse(file.readTextSync("assets/statistics.json")).data;
}
async function flush_persistent_data() {
await file.writeText("records/persistent_data.json", JSON.stringify(persistent_data, null, " "));
}
@@ -127,7 +133,6 @@ function is_ore_respawned(t) {
}
function get_some_tasks() {
const statistics = JSON.parse(file.readTextSync("assets/statistics.json")).data;
const exclude_tags = new Set(get_exclude_tags());
var filtered_statistics = [];
for (const [key, value] of Object.entries(statistics)) {
@@ -240,8 +245,6 @@ async function run_pathing_script(name, path_state_change, current_states) {
path_state_change.add ||= [];
path_state_change.sustain ||= [];
const statistics = JSON.parse(file.readTextSync("assets/statistics.json")).data;
for (const s of path_state_change.require) {
if (!current_states.has(s)) {
log.debug("Trying to get {s}", s);
@@ -315,6 +318,7 @@ async function main() {
load_filename_to_path_map();
load_persistent_data();
load_disabled_paths();
load_statistics_data();
dispatcher.addTimer(new RealtimeTimer("AutoPick"));
if (["natlan", "fontaine terrestrial", "sumeru", "inazuma", "liyue", "chasm underground", "mondstadt"].filter(i => !get_exclude_tags().includes(i)).length > 0) {
if (!Array.from(getAvatars()).includes("诺艾尔")) {

View File

@@ -1,6 +1,7 @@
# 说明
- 因BetterGI移动鼠标函数存在无法适配DPI scaling的bug鼠标转动的角度可能会因为设置不同而有所差异故提供缩放比1.0和1.75两个配置的路线请根据自己的显示器缩放比设置选择一个较接近的路线运行。后续BetterGI中的bug修复之后将只保留1.0的路线。
- 推荐使用可自动进行DPI scaling适配的JS挖矿脚本`AbundantOre`,绕过以上问题。
- 不限制配队移动速度(游泳速度),可以用龙王+迪希雅+双风提高效率
- 建议行走位用血量较高的角色,推荐钟剑迪希雅,避免挖矿过程中被打回七天神像回血失去螃蟹技能,导致后续不能挖矿
- ABC-开头的路线假设已经习得螃蟹技能不按顺序运行或者中途暂停出水面将导致角色失去螃蟹技能运行或恢复运行前请确保角色学习了螃蟹技能A00路线专门用来学螃蟹技能