js,背包材料统计修复bug (#875)

* Add files via upload

* Delete repo/js/背包材料统计/pathing directory

* Add files via upload
This commit is contained in:
JJMdzh
2025-05-20 01:28:01 +08:00
committed by GitHub
parent f9a681a825
commit 8adfeea5ce
5 changed files with 85 additions and 13 deletions

View File

@@ -0,0 +1,71 @@
// ==UserScript==
// @name 背包材料统计
// @version 2.24
// @description 识别路径文件,根据材料数量,自动执行路线,或者主动选择材料类别,统计材料数量
// @author 吉吉喵
// @match 原神版本5.6BGI 版本0.44.8
// ==/UserScript==
/**
* === 重要免责声明 ===
* 1. 使用风险
* - 本脚本为开源学习项目,禁止用于商业用途或违反游戏条款的行为。
* - 滥用可能导致游戏账号封禁,开发者不承担任何直接或间接责任。
*
* 2. 责任限制
* - 本脚本按“现状”提供,不承诺兼容性、安全性或功能完整性。
* - 因使用本脚本导致的账号、数据、设备损失,开发者概不负责。
*
* 3. 禁止条款
* - 严禁逆向工程、恶意篡改或用于外挂等非法用途。
* - 如游戏运营商提出要求,开发者保留随时停止维护的权利。
*
* 使用即表示您已阅读并同意上述条款。
*
* Last Updated: 2025-05-19
*/
# 背包材料统计
## 简介:
背包材料统计可统计背包养成道具、部分食物、素材的数量并保存本地还可根据设定数量自动根据CD执行采集路径。
## 文件结构
./📁BetterGI/📁User/📁JsScript/
📁背包材料统计/
📁pathing/
📁 薄荷/
📄 薄荷1.json
📁 薄荷效率/
📄 薄荷-吉吉喵.json
📁 苹果/
📄 旅行者的果园.json
📁history_record/ 背包统计 自动生成每类的历史记录每类中旧纪录上限为365个
📁overwrite_record/ 背包统计 自动生成,每类的最新一次记录
📁pathing_record/ 自动生成,路径运行时间记录
📁materialsCD/ 路径CD管理 自带的CD文件
📄 latest_record.txt 背包统计 自动生成,最新一次统计
📁assets 图包
## 使用方法
1. 将脚本添加至调度器。
2. 右键点击脚本以修改JS自定义配置。
3. 执行路径功能需要📁pathing有路径文件夹
## 后言
本脚本目前处于测试阶段,欢迎反馈问题至 QQ频道号: bettergiv1。
## 更新日志
+ v0.1 OCR名单 输出图片名和材料名
+ v1.0图包(素材)
+ v1.1 图包(素材+养成道具)
+ v1.2 识图分类
+ v1.3 加速寻找(前位材料识别)
+ v1.31本地保存调整
+ v1.32 新增后位材料识别
+ v2.0 多组材料多个分类 开发版 - 前、后位材料识别
+ v2.1 CD管理版
+ v2.2 路径顺序 材料数量优化
+ v2.21 储存路径修改
+ v2.22 精简log
+ v2.23 优化部分函数
+ v2.24 修复不能空路径使用背包统计功能等bug

View File

@@ -1019,8 +1019,8 @@ function matchImageAndGetCategory(resourceName, imagesDir) {
// 从路径文件中提取材料名 // 从路径文件中提取材料名
const resourceNames = pathEntries const resourceNames = pathEntries
.map(entry => entry.resourceName) ?.map(entry => entry.resourceName)
.filter(name => name); .filter(name => name) || []; // 确保 resourceNames 是一个数组
// 生成材料与分类的映射对象 // 生成材料与分类的映射对象
const materialCategoryMap = resourceNames.reduce((acc, resourceName) => { const materialCategoryMap = resourceNames.reduce((acc, resourceName) => {
@@ -1033,14 +1033,15 @@ function matchImageAndGetCategory(resourceName, imagesDir) {
acc[category].push(resourceName); acc[category].push(resourceName);
} }
} }
// 检查是否需要初始化选中的分类
selected_materials_array.forEach(selectedCategory => {
if (!acc[selectedCategory]) {
acc[selectedCategory] = [];
}
});
return acc; return acc;
}, {}); }, {});
// 确保 selected_materials_array 中的分类被初始化为空数组
selected_materials_array.forEach(selectedCategory => {
if (!materialCategoryMap[selectedCategory]) {
materialCategoryMap[selectedCategory] = [];
}
});
// log.info(JSON.stringify(materialCategoryMap, null, 2)); // log.info(JSON.stringify(materialCategoryMap, null, 2));
// 调用背包材料统计 // 调用背包材料统计

View File

@@ -1,9 +1,9 @@
{ {
"manifest_version": 1, "manifest_version": 1,
"name": "背包材料统计 ", "name": "背包材料统计",
"version": "2.23", "version": "2.24",
"bgi_version": "0.44.8", "bgi_version": "0.44.8",
"description": "默认四行为一页模板匹配材料OCR识别数量。\n数字太小可能无法识别用?代替。\n目前支持采集路线。\n材料种类数量或导入js本地\n图包文件夹images放入assets下\n链接https://share.weiyun.com/DVBGMPzU 密码sg7avi", "description": "默认四行为一页模板匹配材料OCR识别数量。\n数字太小可能无法识别用?代替。\n目前支持采集路线。\n材料种类数量或导入js本地\n图包文件夹images放入assets下\nv2.24修复不能空路径使用背包统计功能等bug",
"authors": [ "authors": [
{ {
"name": "吉吉喵" "name": "吉吉喵"

View File

@@ -12,7 +12,7 @@
{ {
"name": "unselected", "name": "unselected",
"type": "checkbox", "type": "checkbox",
"label": "=============\n反选材料分类" "label": "上2项可不填\n=============\n反选材料分类"
}, },
{ {
"name": "Smithing", "name": "Smithing",