Commit Graph

280 Commits

Author SHA1 Message Date
辉鸭蛋
9f67726781 I18n v2 (#2709)
* feat(i18n): 添加界面与日志的国际化支持

- 新增 ITranslationService 接口及 JsonTranslationService 实现,提供基于 JSON 的翻译服务
- 添加 TrConverter 转换器,支持通过绑定动态翻译界面文本
- 引入 AutoTranslateInterceptor 行为,自动扫描并翻译界面中的静态文本
- 集成 TranslatingSerilogLoggerProvider,实现日志输出的实时翻译
- 在 App.xaml 中注册全局样式,为 Window、UserControl 和 Page 启用自动翻译

* refactor(AutoTranslateInterceptor): 优化自动翻译拦截器的加载与应用机制

- 移除 HomePage 中冗余的 EnableAutoTranslate 属性设置,改为继承属性
- 通过类构造函数注册全局 Loaded 事件处理器,替代在每个元素上单独添加
- 引入请求队列机制,批量处理待应用翻译的元素,避免重复调度
- 扩展属性类型检查,支持 object 类型以处理更多动态内容场景

* fix: 移除全局自动翻译拦截器以避免冲突

移除在 App.xaml 中为 Window、UserControl 和 Page 全局设置的 AutoTranslateInterceptor,
改为仅在 PickerWindow 中显式启用。这解决了全局样式可能导致的意外行为或冲突。

* feat(ui): 为多个窗口启用自动翻译拦截器

为 MapLabelSearchWindow、ArtifactOcrDialog、PromptDialog 等 14 个窗口添加了 AutoTranslateInterceptor.EnableAutoTranslate 属性,以启用自动翻译拦截功能。

* feat(i18n): 添加国际化目录支持并优化异常处理

* feat(ui): 添加软件UI语言设置并改进翻译服务

- 在通用设置页面新增UI语言选择控件,支持动态切换界面语言
- 修改游戏语言标签为“原神游戏语言”以明确区分
- 改进JsonTranslationService,支持UI语言切换时的实时翻译更新
- 优化AutoTranslateInterceptor,缓存原始文本值并在语言切换时恢复
- 添加属性变更监听机制,确保UI元素在语言切换后正确刷新

* feat(自动翻译): 添加排除自动翻译的依赖属性

在 AutoTranslateInterceptor 中新增 ExcludeAutoTranslate 附加属性,允许对特定依赖对象禁用自动翻译功能。当遍历元素进行翻译时,会检查此属性并跳过已标记排除的元素。

* feat(translation): 为缺失文本翻译添加详细上下文信息

扩展翻译服务以收集缺失文本的详细上下文,包括视图路径、元素类型、属性名等。
重构 `ITranslationService` 接口,引入 `TranslationSourceInfo` 类封装上下文信息。
修改 `AutoTranslateInterceptor` 自动收集 UI 元素信息,`JsonTranslationService` 合并多来源上下文。

* Revert "feat(自动翻译): 添加排除自动翻译的依赖属性"

This reverts commit a1c2334951.

* fix: 跳过 GridViewRowPresenter 中的文本翻译

添加 IsInGridViewRowPresenter 检查,避免在 GridViewRowPresenter 控件内进行自动翻译,防止潜在的界面显示问题。

* fix: 修复自动翻译拦截器在组合框上下文中的误触发

在自动翻译拦截器中添加了 IsInComboBoxContext 方法,用于检测依赖对象是否处于 ComboBox 或其相关弹出菜单的上下文中。当检测到对象位于组合框上下文时,跳过自动翻译逻辑,避免对下拉选项等界面元素进行不必要的翻译操作,从而解决潜在的界面干扰问题。

* feat(translation): 添加缺失翻译上报至 Supabase 的功能

- 新增 IMissingTranslationReporter 接口及 SupabaseMissingTranslationReporter 实现
- 在 JsonTranslationService 中集成缺失翻译上报逻辑
- 添加缺失翻译收集的配置设置(MissingTranslationCollectionSettings)
- 优化缺失翻译文件的序列化格式,将 Source 字段改为紧凑的数字表示
- 移除 ScriptRepoUpdater 中未使用的 using 语句
- 在 App.xaml.cs 中注册 SupabaseMissingTranslationReporter 服务

* fix: 修复自动翻译功能中原始值恢复和重复报告问题

- 移除未使用的法语翻译支持以简化语言选项
- 修复 Supabase 报告序列化时移除冗余字段
- 添加已缺失翻译键的缓存以避免重复报告
- 重构自动翻译拦截器,将原始值存储移至依赖属性
- 修复原始值恢复逻辑,确保正确遍历所有子元素

* feat(ui): 添加更新UI语言文件功能

- 在 ITranslationService 接口中添加 Reload 方法
- 在 JsonTranslationService 中实现 Reload 方法,支持重新加载语言文件并发送变更通知
- 在通用设置页面添加“更新”按钮,点击后从远程仓库下载最新语言文件
- 实现 OnUpdateUiLanguageAsync 命令,支持从 GitHub 和镜像源下载语言文件
- 下载后自动替换本地文件并重新加载翻译服务
2026-02-15 19:03:33 +08:00
ddaodan
c24329eca6 新增:自动地脉花独立任务 (#2583)
* 新增自动地脉花任务代码

* 新增自动地脉花任务资源

* 优化自动地脉花界面文案

* 删除地脉花旧脚本与无用资源

* 完善自动地脉花说明与任务日志

* 完善一条龙地脉花配置与教程入口

* feat: Enhance AutoLeyLineOutcrop functionality and add new pathing data

- Refactored combat text detection logic to improve accuracy.
- Added new regions and positions for "挪德卡莱" in LeyLineOutcropData.json.
- Introduced new pathing files for "挪德卡莱4-望崖营垒" and "挪德卡莱5-厄布拉神柱".
- Updated config.json with new strategies and coordinates for enhanced navigation.
- Improved error handling during party switch operations.
- Removed outdated README.md file from pathing assets.

* 修复一些日志打印

* 移动所有assets文件

* feat: clear drawn content in VisionContext before activating mask window

---------

Co-authored-by: 辉鸭蛋 <huiyadanli@gmail.com>
2026-02-14 16:35:17 +08:00
躁动的氨气
292dc8fb4f feat: 显示后台角色技能cd (#2754)
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: 辉鸭蛋 <huiyadanli@gmail.com>
2026-02-13 23:19:32 +08:00
躁动的氨气
908294e2fe feat: 优化地图遮罩UI,添加快捷键 (#2775) 2026-02-13 21:20:28 +08:00
辉鸭蛋
200f904a64 fix: 调整日志级别及UI元素位置比例
将米游社地图接口调用失败日志级别从Warning降为Debug,避免频繁警告干扰
调整日志文本框和状态列表的顶部位置及宽度比例,优化界面布局
2026-01-29 00:17:02 +08:00
辉鸭蛋
62481baba9 地图遮罩功能(把米游社大地图搬到原神内) (#2655) 2026-01-26 02:58:23 +08:00
辉鸭蛋
4e24701b1d feat(界面): 实现遮罩窗口布局的相对比例定位
添加相对比例定位功能,将遮罩窗口中的状态列表和日志文本框从绝对坐标改为基于窗口宽高的比例坐标
新增OverlayRelativeOrAbsoluteConverter转换器处理坐标转换
修改相关视图模型和配置以支持比例定位
2026-01-17 22:07:27 +08:00
辉鸭蛋
5f4185b7f0 添加动态修改log窗口位置的功能 2026-01-17 16:07:34 +08:00
辉鸭蛋
1c05245b83 feat: add option to start game with CMD for improved launch flexibility 2026-01-14 01:43:22 +08:00
躁动的小氨气
26d8499419 新手引导标志迁移至本体 (#2612) 2026-01-10 21:53:33 +08:00
躁动的氨气
be2918ef56 记录仓库页面位置和大小,提供默认值 (#2458) 2025-11-14 21:49:43 +08:00
bling-yshs
cb0bd2310a feat: 支持调整遮罩文本透明度 (#2454) 2025-11-09 17:49:49 +08:00
ShadowLemoon
a58e93976c feat: 支持私有脚本仓库鉴权 (#2361) 2025-10-19 21:14:16 +08:00
辉鸭蛋
e6d1867b26 添加兑换码窗口以显示最新兑换码动态 (#2276) 2025-10-12 19:30:48 +08:00
kaedelcb
8dcf563b31 新增战斗中的游泳检测 (#2315) 2025-10-10 02:51:38 +08:00
FishmanTheMurloc
17790317d9 ScreenshotUidCoverEnabled配置的默认值改为true (#2262) 2025-09-25 15:41:00 +08:00
bhbghghbgb
94e50307a5 重构服务器重置时间处理 (#2160) 2025-09-23 00:59:07 +08:00
大头鱼
d37dd443a7 [BUG修复] 为Windows10添加深浅主题切换功能以确保其界面正常显示 (#2125) 2025-09-04 00:48:40 +08:00
辉鸭蛋
21ce9912e4 新增V4Auto的Ocr类型,使用最优模型识别,单测 PaddleOcrService_VariousLangWords_ShouldEqualOrMatch 已通过 2025-08-27 01:13:19 +08:00
大头鱼
126e39f77c 完善Markdown To FlowDocument的,在WIn11下为bgi添加浅色主题支持 (#2082) 2025-08-24 15:58:21 +08:00
辉鸭蛋
016ed49181 添加自动兑换码剪切板的监听 #2041 2025-08-17 15:06:20 +08:00
辉鸭蛋
ce529fc2de 自动吃药相关问题修正,配置调整 2025-08-17 13:45:44 +08:00
FishmanTheMurloc
8a41148ba6 拓展自动吃药,基于图标识别 (#2051) 2025-08-16 13:51:46 +08:00
辉鸭蛋
1b1c0ab051 修复一些问题 2025-08-11 00:59:10 +08:00
xoipz
d8ba04f97b 实时触发 - 自动吃药(秘境中的自动吃药功能改进作为实时触发功能 (#1993)
Co-authored-by: 辉鸭蛋 <huiyadanli@gmail.com>
2025-08-10 13:48:25 +08:00
Luckylhz
98b7dbefda Update HardwareAccelerationConfig.cs (#2021) 2025-08-08 22:09:43 +08:00
辉鸭蛋
dafd07b74a 模型默认使用V4 2025-08-07 01:18:16 +08:00
Takaranoao
9ab70aae32 fix: update default setting for CPU OCR inference to disabled and adjust related UI text (#2013) 2025-08-06 22:04:39 +08:00
辉鸭蛋
73244ee1b0 强制OCR使用CPU的功能默认关闭 2025-08-06 00:03:32 +08:00
Takaranoao
c45448d521 fix: CUDA目录嗅探默认关闭&尝试修复在奇奇怪怪权限的环境下嗅探CUDA目录导致异常的问题。 (#1994) 2025-08-04 02:01:03 +08:00
Takaranoao
1497727cb4 feat: add OpenVINO cache support and configuration options (#1992) 2025-08-03 13:07:29 +08:00
Takaranoao
a868fd46be openvino 支持 (#1987) 2025-08-03 01:11:48 +08:00
Takaranoao
6d9da4d15b feat: PaddleOcrV5 (#1966) 2025-08-02 14:51:07 +08:00
辉鸭蛋
885cb1723b 地图追踪的配置与缓存调整 2025-08-01 00:11:09 +08:00
mfkvfhpdx
20565f4328 调度器配置中增加执行成功任务跳过执行配置 (#1893) 2025-07-26 14:19:45 +08:00
辉鸭蛋
559d88bb6c 可以选择当前的地图追踪方式 2025-07-20 22:59:14 +08:00
辉鸭蛋
26d8c9863e Revert "添加 HTTP 服务器配置和服务 (#1873)" (#1892) 2025-07-20 12:39:59 +08:00
mfkvfhpdx
36236dedfd 路径追踪支持通过目录中的control.json5文件来覆盖目录json配置。 (#1855) 2025-07-17 21:37:10 +08:00
辉鸭蛋
daa4aea7a8 添加 HTTP 服务器配置和服务 (#1873) 2025-07-14 00:58:24 +08:00
Takaranoao
021d1f937a 选中的更新渠道URL写入配置文件并允许从自定义URL更新脚本仓库 (#1864)
Co-authored-by: 辉鸭蛋 <huiyadanli@gmail.com>
2025-07-12 14:32:28 +08:00
FishmanTheMurloc
d73f21464e 截取物品图标独立任务 (#1856) 2025-07-09 23:26:18 +08:00
辉鸭蛋
38a7cfce0b 针对 #1797 新增的尘歌壶进入方式添加配置 2025-07-06 12:29:09 +08:00
辉鸭蛋
4adb9ca7cd fix: add AutoStygianOnslaughtConfig to property change notifications 2025-06-30 01:53:53 +08:00
辉鸭蛋
94db5d16cc 自动幽境危战 (#1786)
* feat: add AutoStygianOnslaught task and configuration for resin usage management

* UI

* feat: enhance AutoStygianOnslaught task with improved detection and handling
2025-06-28 20:22:57 +08:00
辉鸭蛋
f83a673280 删除 “允许在jsScript脚本中使用此地图追踪配置” 和 “允许在此调度器中(一般在JS脚本中)调用自动战斗任务时,采用此追踪配置里的战斗策略” 配置。默认启用 2025-06-26 01:14:14 +08:00
Zhicheng Zhang
112f49c7d8 将每天的定义更改4点后。 (#1675) 2025-06-04 12:26:24 +08:00
mfkvfhpdx
468a54e037 执行调度器任务增加继续执行功能 (#1658)
* 完全跳过的配置组,不发送通知。给周期配置增加说明。

* 启动参数增加 --no-single ,允许多开,实现特殊需求(重启需要)。增加了一个重启bgi的方法。增加了任务进度的功能,执行调度器任务时,会记录当前任务执行位置,当关闭后(比如F11),下次可以通过继续菜单,选择记录,从上次关闭任务处执行。

* 调整继续执行,最后一次成功的下一个任务执行

* 设置,其他设置,增加了调度器任务,遇到异常时,连续累计一定次数时,重启BGI,和可配置的重启游戏。

* 连续任务支持循环,右键支持从连续的某一个任务开始执行。修改了一些配置变量的写法,使之不会保存到json文件中。
2025-06-02 00:03:26 +08:00
mfkvfhpdx
823f4c6882 修复暂停后恢复异常bug。调度器设置增加周期配置。 (#1590)
* 修改调度器任务和部分独立任务失去焦点时,强制切换回游戏窗口,如果用常规的方式无法激活窗口,则第10次会尝试最小化所有窗口后激活游戏。

* 去除未引入的类引用

* 修正战斗结束后,大概率打开队伍界面的问题

* 修复有些电脑上因未知原因,战斗0秒打断

* 把失焦激活放入了设置-通用设置-其他设置中,默认关闭。暂停恢复时,重置移动的起始时间,防止因暂停而导致超时放弃任务。

* 在调度器里面的任务之前,增加月卡处理,解决4点如果未进入任务会卡住的问题。增加了日志分析小怪详细。解决日志分析兜底结束日期不生效的问题。

* 在设置=》其他设置中 增加调度器任务传送过程中自动领取探索奖励功能配置。

* 调整自动派遣后恢复原任务的逻辑

* 自动领取派遣奖励时,跳过异常,防止整个配置组任务被打断。

* 把打开大地图方法从TpTask中抽出为公共方法,自动领取派遣代码调整到了调度器中。

* 去除了未使用的引用

* 暂停恢复逻辑增加恢复中条件和非空判断

* 增加了临时暂停自动拾取的逻辑(RunnerContext.AutoPickTriggerStopCount 为0时不限制,大于0时停止,多次暂停会累加该值,每次恢复-1),支持嵌套情况的暂停,在自动派遣(和结束后5秒)或暂停调度器任务时,同时暂停自动拾取功能。

* 调整暂停拾取方法

* 调整个日志输出

* 路径追踪复苏时,暂停拾取

* 增加根据点位配置,支持能在点位未识别情况下,使用大地图中心点的方式来定位,从而支持像铜锁小岛处这种小地图无法识别的点位。调整了对未识别点位的默认逻辑,未配置点位配置情况下,未识别点位,会取上一个识别的点位,从而支持在某些地方断续小地图能识别情况下的脚本。

* Changes

* 修复暂停后,距离过远,小地图无法识别时,无限取当前一个坐标,导致无法正常恢复的问题。调度器管理增加了按天为单位的周期配置,适用于批量执行时,无需人工判断当天执行哪个任务。

* 调度器配置增加,或开启万叶拾取,并且不存在万叶,但配置了万叶队伍情况下,会切换队伍进行拾取。
2025-05-15 00:15:55 +08:00
kaedelcb
1c706d90e6 合成树脂保留/周日秘境奖励选择/一条龙尘歌壶优化 (#1565)
* 一条龙列表空时添加提示,按钮优化

* 1.自动秘境:添加周日材料本三种奖励选择、优化进入秘境横幅点击
2.合成浓缩树脂:添加合成浓缩后保留原粹树脂数量的功能

* 1.自动秘境:添加周日材料本三种奖励选择、优化进入秘境横幅点击
2.合成浓缩树脂:添加合成浓缩后保留原粹树脂数量的功能

* 1.优化加入浓缩树脂判断,最大合成数量限制。

* 1.优化一条龙页面UI显示。
2.合成树脂次数判断逻辑修复。

* 一条龙任务列表UI微调优化

* 代码微调

* 时间判断错误修复

* 合成树脂数量逻辑调整,应该没啥问题了

* 新增图片识别的图片

* 优化最大合成数的写法

* 一条龙内置尘歌壶添加配置日期和商品名称
优化寻找啊圆逻辑

* 1.自动秘境进入优化

* 优化寻找啊圆的逻辑

* 优化初始状态判断

* 优化购买逻辑判断代码

* 优化确定洞天名称方法

* 优化合成树脂判断为负数归零

* 自动秘境跳过判断删除秘境队伍判断

* OCR修改

* 一些无效using删除

---------

Co-authored-by: 辉鸭蛋 <huiyadanli@gmail.com>
2025-05-11 17:01:25 +08:00
kaedelcb
a5473aa129 合成树脂保留,周日副本奖励选择和一条龙UI微调 (#1531)
* 一条龙列表空时添加提示,按钮优化

* 1.自动秘境:添加周日材料本三种奖励选择、优化进入秘境横幅点击
2.合成浓缩树脂:添加合成浓缩后保留原粹树脂数量的功能

* 1.自动秘境:添加周日材料本三种奖励选择、优化进入秘境横幅点击
2.合成浓缩树脂:添加合成浓缩后保留原粹树脂数量的功能

* 1.优化加入浓缩树脂判断,最大合成数量限制。

* 1.优化一条龙页面UI显示。
2.合成树脂次数判断逻辑修复。

* 一条龙任务列表UI微调优化

* 代码微调

* 时间判断错误修复

* 合成树脂数量逻辑调整,应该没啥问题了

* 新增图片识别的图片

* 优化最大合成数的写法

---------

Co-authored-by: 辉鸭蛋 <huiyadanli@gmail.com>
2025-05-11 01:23:25 +08:00