Commit Graph

153 Commits

Author SHA1 Message Date
FishmanTheMurloc
8c85cb90c7 圣遗物分解的bugfix和优化 (#2114) 2025-08-29 14:50:35 +08:00
起个名字好难的喵
b4de6ef0ff fix 5.6-5.8 Teleport pos error (#2045) 2025-08-11 00:22:53 +08:00
起个名字好难的喵
cec40c6c62 feat: 5.6-5.8新增传送点 (#1976) 2025-08-02 14:40:13 +08:00
mfkvfhpdx
20565f4328 调度器配置中增加执行成功任务跳过执行配置 (#1893) 2025-07-26 14:19:45 +08:00
辉鸭蛋
4fa4ecc428 是否就近七天神像恢复血量、传送到七天神像之后是否需要移动后回血,两个选项将会默认不开启 @physligl 2025-07-20 21:28:00 +08:00
Juemin Lin
2b9a4f111a 视角识别算法优化,启用新的视角识别,分层地图小修改,启用模板匹配分层地图 (#1787)
* 小地图预处理和视角识别算法优化

* 模板匹配的相关类,包括快速带遮罩的SqDiff模板匹配,模板匹配归一化类,简易亚像素模板匹配实现,小地图匹配相关配置,和小地图匹配上下文。

* 实现小地图的分层地图模板匹配,修改 SceneBaseMap 的 GetMiniMapPosition 为 virtual 以便继承覆盖。

* 优化视角识别算法, 消除图标对视角识别影响, 修正上次提交里HImg的范围错误(BGR2HLS_FULL模式下H的范围在0~255), 启用新的视角识别算法。

* 模板匹配分层地图小修改

* 启用模板匹配的分层地图
2025-07-01 01:50:27 +08:00
秋云
c44fb6b62e fix: 优化传送点点击的逻辑,增加退出重登的延时 (#1773) 2025-06-27 00:38:13 +08:00
Patrick-Ze
bea9164c2b 将路径追踪相关的日志改为debug级别 (#1645) (#1684) 2025-06-07 22:13:57 +08:00
Shatyuka
b2958ac646 用Image<Rgb24>替换Bitmap (#1563) 2025-05-11 11:03:53 +08:00
辉鸭蛋
8ac795680b 修复大地图位置识别不正确的问题 2025-05-03 20:22:22 +08:00
辉鸭蛋
9e41808326 独立与分层地图支持 (#1503)
* 抽象基础类

* 修改定义

* 抽象出Feature2D相关能力

* 新增地图基类实现

* 临时提交

* 迁移坐标计算

* 加载分层特征数据

* 新增独立地图 层岩巨渊,渊下宫,旧日之海

* 支持不切分特征点匹配

* 添加远古圣山,修改地图参数

* 提瓦特大陆的大地图匹配

* 提瓦特大陆地图大地图位置获取使用256级别的地图

* 替换大地图匹配类 BigMap.cs

* 替换小地图匹配类 EntireMap

* 修改tp的入参方式,删除无用类

* 兼容新提交的内容

* 修复类方法覆盖不生效的问题

* 修复定位问题,迁移部分 MapCoordinate 的代码。MapCoordinate 标记为废弃

* 更多坐标方法的迁移

* 修复不正确的坐标转换

* 是用正确的特征匹配

* 体积较小的地图动态生成特征

* 路径追踪窗体支持多地图

* 传送时切换独立地图地区

* 更新传送点信息

* 修改独立地图相关命名,使用 Scene(场景) 命名,和原神内部命名保持一致

* 录制支持多独立地图

* 修复地区切换失败的问题
2025-05-03 21:59:37 +08:00
秋云
617254cb74 fix #1498 and _mapScaleFactor (#1505) 2025-05-02 13:37:51 +08:00
Shatyuka
7bb58ca37f 修复高DPI下TP地图移动 (#1469) 2025-04-29 11:16:52 +08:00
mfkvfhpdx
4760752e70 在调度器里面的任务之前,增加月卡处理,解决4点如果未进入任务会卡住的问题。增加了日志分析小怪详细。解决日志分析兜底结束日期不生效的问题。 (#1433)
* 修改调度器任务和部分独立任务失去焦点时,强制切换回游戏窗口,如果用常规的方式无法激活窗口,则第10次会尝试最小化所有窗口后激活游戏。

* 去除未引入的类引用

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

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

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

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

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

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

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

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

* 去除了未使用的引用

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

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

* 调整暂停拾取方法

* 调整个日志输出

* 路径追踪复苏时,暂停拾取
2025-04-26 21:47:57 +08:00
辉鸭蛋
5024ddbb61 修复自动秘境超时的时候重试 2025-04-14 23:00:07 +08:00
FishmanTheMurloc
fce70c0e96 分解5星圣遗物 (#1383)
* 分解圣遗物基础设施建设

* 分解圣遗物独立任务基本功能完成:单独的启动按钮,正则表达式逐一筛选;代码文件整理到单独的文件夹

* 自动分解5星圣遗物功能初步完成

* 修复上次修改快速分解产生的问题,主要点击分解按钮时的bug,还有与五星分解步骤衔接的问题

* 针对切换队伍时,多语言识别效果不佳的情况,将用户设定的队伍名作为正则表达式进行模糊匹配,并在LogInfo输出相关提示;传送任务对任务取消进行单独的异常处理

* 一个便于测试分解圣遗物OCR识别和正则匹配结果的弹窗
2025-04-05 19:53:52 +08:00
秋云
06364325b0 feat: 暴露部分大地图操作给js (#1390) 2025-04-02 22:30:21 +08:00
Takaranoao
cbaf1f6c36 更新OpenCvSharp4版本到4.10.0,PaddleOCR到2.7.0.3,尝试修复bitblt导致崩溃的问题 (#1381) 2025-04-01 14:47:13 +08:00
起个名字好难的喵
79d379f579 Add 安饶之野 Teleport (#1365) 2025-03-29 19:41:17 +08:00
FishmanTheMurloc
6d4f8b80e8 Feat/multi lan (#1336)
* 记录一次对hutaofisher的访谈,帮助开发者理解其算法

* 本地化HelloWorld

* .csproj取消windows版本号,此处导致了IDE在新建代码文件和自动生成代码时,默认命名空间丢失的问题。已知VisualStudio和ReSharper存在这个问题。

* 优化扩展方法写法,改为从localizer扩展;Converter优化写法,避免冲突;新增两种语言,待测试ocr效果

* Revert ".csproj取消windows版本号,此处导致了IDE在新建代码文件和自动生成代码时,默认命名空间丢失的问题。已知VisualStudio和ReSharper存在这个问题。"

This reverts commit 8bd7ee74c5.

* localizer改为由构造函数传入以支持单元测试;一个英语上钩的单元测试

* 传送任务支持英语游戏界面;本地化参数挪至OtherConfig类下,但界面位置暂不挪动,待定

* 调整resx位置风格,放在直接使用字符串的类下;一条龙合成树脂及领取每日奖励支持游戏内中英双语

* 删除无用碎片文件

* 删去两个不必要的Sdcb包引用

* Paddle服务类去掉分类模型;检测和识别新增支持繁中和法语,配有单元测试;因小语种识别效果不理想,使用正则匹配替换多处识别文本相等或包含判断;钓鱼、一条龙合成树脂及领取每日奖励支持游戏内繁中和法语;

* 检查今日奖励任务的多语言化;右侧联机的P图标检测区域宽度缩减,避免英语角色名被误识别成P

* AutoDomainTask的游戏多语言化,由于我的游戏账号无法测试,仅配一些测试用例

* 修复有3个Mizuki导致异常的bug,临时用拼音代替新角色英文名,并为该数据初始化方法添加单元测试

* 瓦雷莎删去别名“牛牛”,因荒泷一斗已占用此别名;别名加载和读取优化

* 加个锁避免单元测试中多线程初始化paddle崩溃
2025-03-28 11:00:08 +08:00
秋云
2423e36456 自动秘境添加【荒废砌造坞】,仅供临时使用 (#1354)
* fix: typos

* fix: 自动秘境添加【荒废砌造坞】,仅供临时使用
2025-03-27 20:30:52 +08:00
辉鸭蛋
807288ab90 重构底层截图器,大幅提升截图器耗时 (#1302)
* to mat init

* BitBlt 加锁

* 使用读写锁重构 Windows.Graphics.Capture,删除BGI自己命名的缓存设置

* dwm加锁并返回mat

* 队伍中没有对应元素角色修复日志问题

* 清除所有 DispatcherTimerOperationEnum 内容

* 修复单测的编译错误

* HDR Support

* 清理无用的截图器模式
2025-03-15 13:18:19 +08:00
秋云
76445ab19d fix: 修复换队时爬七天神像导致换队失败的问题 (#1295) 2025-03-14 11:43:58 +08:00
秋云
54e3db9228 fix: move mouse to center after adjust zoom level 2025-03-11 11:57:03 +08:00
辉鸭蛋
8246d1a2f2 Merge remote-tracking branch 'origin/main' 2025-03-06 00:25:11 +08:00
辉鸭蛋
fc2c809702 release all key before tp & release all key after auto fight 2025-03-06 00:22:12 +08:00
秋云
4e44bb0e78 fix: resolve mouse simulation issue due to resolution change on screen off (#1230)
* fix: resolve mouse simulation issue due to resolution change on screen off

* fix: typo
2025-03-05 00:30:35 +08:00
秋云
1adad8149b Fix: Update tp.json configuration and fix _selectedArea update (#1227)
* fix: new tp.json

* fix: _selectedArea only update when _selecteCountry change.

* fix(config): Change default _shouldMove from true to false
2025-03-02 09:41:31 +08:00
秋云
62da52d5d8 feat: add configurable HP restoration options at Statue of the Seven (#1223)
* feat: add configurable HP restoration options at Statue of the Seven

* fix: Create GiTpPosition as subclass of GiWorldPosition

* fix: Update teleport point selection logic in ViewModel

* fix: Change log info
2025-03-01 22:04:16 +08:00
秋云
4932c52af9 fix: remove while loop in TpTask (#1221)
* fix: prevent infinite loop in TpTask.cs

* fix: prevent redundant zoom operation

* fix: handle party switching failures in PathExecutor; add pre-switch check for switch party task

* fix: typos.
2025-02-28 10:00:59 +08:00
秋云
a9896f0ff1 修改部分细节 (#1189)
* 1. MoveMapTo之前保证缩放大于2,以保证初始中心点识别不会出错;
2. 重构MoveMapTo,主要去除了首次的试探过程(由于直接使用游戏坐标来确定需要移动的距离,试探已经不再需要)。

* 直接抛出异常而不是break

* 首次切换队伍时不会触发传送,而后续切换其他队伍时(RunnerContext.Instance.PartyName 已非空)才会触发传送。修改为任何时候都触发传送。

* 打开编队前添加少许延时

* 添加配置项 切换队伍前是否前往须弥七天神像
2025-02-23 23:39:57 +08:00
秋云
b82395cc3a 1. MoveMapTo之前保证缩放大于2,以保证初始中心点识别不会出错; (#1187)
2. 重构MoveMapTo,主要去除了首次的试探过程(由于直接使用游戏坐标来确定需要移动的距离,试探已经不再需要)。
2025-02-19 09:56:05 +08:00
辉鸭蛋
ccf1c37283 tp: expand non clickable areas 2025-02-12 23:12:26 +08:00
辉鸭蛋
3fcc11a617 edit tp config 2025-02-12 22:41:04 +08:00
辉鸭蛋
717bd931f7 edit tp config #1145 2025-02-12 22:13:08 +08:00
Scarlet
cb8a743d34 修复因原神更新引起的地图缩放问题 (#1151)
* bugfix: fix map navigation problem caused by Genshin update

* constant adjust
2025-02-12 20:53:41 +08:00
秋云
6bf0d886ca Merge pull request #1114 from physligl/main
Fix typos.
2025-02-08 13:49:11 +08:00
辉鸭蛋
33dc5f7d42 fix tptask 2025-02-06 14:11:19 +08:00
辉鸭蛋
2536b14af1 fist run not init key binding 2025-01-29 22:58:23 +08:00
辉鸭蛋
c3cffff4f3 fix CheckInBigMapUi 2025-01-29 22:23:12 +08:00
辉鸭蛋
efde38439d tp exception 2025-01-29 08:12:32 +08:00
辉鸭蛋
e42c886bbe fix domain tp 2025-01-28 16:23:43 +08:00
秋云
ce7c88f8e8 根据临近传送点的距离确定地图缩放,根据缩放等级确定当前剩余的距离。 2025-01-28 02:38:26 +08:00
辉鸭蛋
9ba3447ab1 modify the position of the UI for map teleportation settings
修改地图传送设置ui的位置
2025-01-26 00:20:01 +08:00
秋云
b445c71e52 增加了地图移动的相关参数设置。 2025-01-24 20:38:45 +08:00
秋云
3cc3eb44a4 fix typos. 2025-01-23 23:00:57 +08:00
辉鸭蛋
9ddd3c5564 code clean 2025-01-18 15:12:35 +08:00
秋云
89e00207cb 优化传送到七天神像回血的体验。 2025-01-17 03:27:58 +08:00
秋云
8a63ac8914 fix typo. 2025-01-16 08:24:08 +08:00
秋云
c87ba278e9 修复了影向山和太山府附近点错传送锚点的问题。 2025-01-16 08:18:50 +08:00