Takaranoao
|
7cf826a80b
|
修复手动设置cd不生效和快速跳过战斗时有时会导致刷屏的问题。 (#1410)
|
2025-04-06 14:36:53 +08:00 |
|
Takaranoao
|
399441b9e8
|
优化技能冷却处理逻辑 (#1321)
* 在路径追踪重构了部分冷却处理逻辑,战斗脚本e增加wait参数可等待技能冷却而不是跳过。采矿e增加等待。尝试修复路径追踪 UseElementalSkill 与采矿脚本冲突的问题。
* 给CombatCommand加入快速跳过e的选项
* 优化技能冷却处理逻辑,增加OcrSkillCd属性以支持OCR识别的技能冷却时间,并调整相关技能CD计算和等待逻辑,尝试修复纳西妲采集终止时按键未弹起的问题
* 优化战斗任务中的技能冷却处理逻辑
* 更新纳西妲技能冷却时间记录,改为使用UTC时间并增加日志输出以便调试
* 增加最大技能CD检查,以排除系统时间/日期同步导致无限卡死。修复跑图路切人。(ps:主板电池没电应该去修主板)
* 修复CheckAvatarAvailable
* fix AutoFightTask skill cooldown logic and improve comments
* 尝试修复脚本在"当前角色"下的小问题
* 尝试修复脚本在"当前角色"下的小问题,Avatar类结构调整,重新做了"根据技能cd优化出招"部分。
* Refactor avatar retrieval in PathingConditionConfig to use GetAvatars method and update skill cooldown references
* Fix variable naming for clarity in CombatScenes
* 在自动战斗执行前预先过滤不可执行的脚本。
---------
Co-authored-by: 辉鸭蛋 <huiyadanli@gmail.com>
|
2025-04-04 13:54:44 +08:00 |
|
辉鸭蛋
|
4c820d09c5
|
replace: 路径追踪 -> 地图追踪
|
2025-03-08 20:56:36 +08:00 |
|
辉鸭蛋
|
fc2c809702
|
release all key before tp & release all key after auto fight
|
2025-03-06 00:22:12 +08:00 |
|
mfkvfhpdx
|
91a0e771b9
|
修改调度器任务和部分独立任务失去焦点时,强制切换回游戏窗口,如果用常规的方式无法激活窗口,则第10次会尝试最小化所有窗口后激活游戏。 (#1185)
* 修改调度器任务和部分独立任务失去焦点时,强制切换回游戏窗口,如果用常规的方式无法激活窗口,则第10次会尝试最小化所有窗口后激活游戏。
* 去除未引入的类引用
* 修正战斗结束后,大概率打开队伍界面的问题
* 修复有些电脑上因未知原因,战斗0秒打断
* 把失焦激活放入了设置-通用设置-其他设置中,默认关闭。暂停恢复时,重置移动的起始时间,防止因暂停而导致超时放弃任务。
|
2025-02-25 00:01:33 +08:00 |
|
Scarlet
|
1f2ed388d6
|
feature:自动战斗增加换队延迟 (#1174)
* feat: increase the delay before switching party
* feat: expose the delay before checking fight ended to user
* add example value to prompt text
|
2025-02-17 11:33:48 +08:00 |
|
Scarlet
|
73c73b63dd
|
feat: drop climbing before actions that could be blocked (#1150)
|
2025-02-15 12:16:43 +08:00 |
|
辉鸭蛋
|
5118308e9d
|
fight: kazuha cd opt
|
2025-02-05 21:43:05 +08:00 |
|
Scarlet
|
c2e028c529
|
optimize: fight finish detection
|
2025-01-31 16:41:42 -06:00 |
|
辉鸭蛋
|
0468854ac5
|
fix auto fight NPE
|
2025-01-26 18:47:35 +08:00 |
|
zjl
|
919818a424
|
调度器配置增加 “根据技能CD优化出招人员”配置。根据填入人或人和cd,来决定当此人元素战技cd未结束时,跳过此人出招,来优化战斗流程,可填入人名或人名数字(用逗号分隔),多种用分号分隔,例如:白术;钟离,12;,如果人名,则用内置cd检查(或填入数字也小于0),如果是人名和数字,则把数字当做出招cd(秒)。
|
2025-01-19 22:11:47 +08:00 |
|
zjl
|
e2d0ca5974
|
去掉战斗部分,主界面判断,减少误判
|
2025-01-17 14:07:47 +08:00 |
|
辉鸭蛋
|
4f6724613a
|
fix some bug
|
2025-01-16 01:13:05 +08:00 |
|
辉鸭蛋
|
340c4caf49
|
fix 4 am skip blessing of the welkin moon
|
2025-01-15 01:03:16 +08:00 |
|
辉鸭蛋
|
5e03a29a8e
|
Merge pull request #996 from mfkvfhpdx/main
功能调整和日志分析增加锄地统计
|
2025-01-12 22:00:05 +08:00 |
|
辉鸭蛋
|
dd9e700485
|
more game resolution check
|
2025-01-12 21:45:02 +08:00 |
|
mfkvfhpdx
|
ebd8031f2c
|
Merge branch 'main' into main
|
2025-01-10 10:29:53 +08:00 |
|
辉鸭蛋
|
2e27154871
|
mandatory verification of game resolution
自动战斗 秘境 强制校验游戏分辨率
|
2025-01-10 00:11:22 +08:00 |
|
mfkvfhpdx
|
a9d8659be7
|
界面去除了偏色调整,战斗识别颜色调整为范围白和范围黄。当万叶技能cd大于3秒或当前一人次就结束了战斗(基本为没有怪物情况),则跳过此次万叶也拾取。未知界面检查,支持暂停情况。
|
2025-01-09 19:25:42 +08:00 |
|
Ayu0K
|
2bf74c466b
|
fix: 删除了中途更改全局改键功能的实现方式时遗留的无用代码
|
2025-01-06 23:30:36 +08:00 |
|
Ayu0K
|
c7e2d83fb8
|
mod: 使用新方案改写AutoFightTask
|
2025-01-06 22:55:07 +08:00 |
|
Ayu0K
|
ca3b31f84e
|
mod: 将按键设置与VK解耦合,并提供KeyId向WPF按键、WPF鼠标按键以及VK的互相转换。
|
2025-01-06 22:55:07 +08:00 |
|
Ayu0K
|
4cfff57b2c
|
mod: 修改AutoFightTask中检测战斗结束使用的打开编队界面和取消攀爬的按键为KeyBindingsConfig记录的按键;修改方案参考AutoWood,在调用Start方法时将该模块需要用到的按键从KeyBindingsConfig中取出
|
2025-01-06 22:55:07 +08:00 |
|
mfkvfhpdx
|
f34e6c3530
|
当最后出招人为万叶,并且剩余cd>3时,跳过此次万叶拾取 (#906)
|
2025-01-01 09:20:08 +08:00 |
|
zjl
|
ac85cda170
|
修正开启万叶拾取后,不生效的问题。修正战斗检查时间的换算问题,以及一个逻辑判断问题。
|
2024-12-30 21:42:03 +08:00 |
|
zjl
|
ac2c7e7ac7
|
战斗未检查成功时,如果按空格会跳跃,导致队伍切换失败。改成x后,应不会影响其他操作
|
2024-12-29 21:13:22 +08:00 |
|
mfkvfhpdx
|
f4f9f22977
|
Merge branch 'babalae:main' into main
|
2024-12-29 21:01:27 +08:00 |
|
zjl
|
e6c8804b09
|
1、判断战斗结束、万叶捡材料、自动拾取,三个配置独立执行。
2、增加 更快检查结束战斗配置,可以根据时间或角色,在一轮角本未走完情况下检查,而加快检查战斗速度。
3、增加了万叶拾取的配置
4、增加 检查战斗结束的延时 ,可根据不同人物更精细的制定策略。
|
2024-12-29 20:59:05 +08:00 |
|
辉鸭蛋
|
2b658afad6
|
fix the character is still fighting after resurrection
|
2024-12-29 16:27:14 +08:00 |
|
辉鸭蛋
|
7e04d77f88
|
kazuha e hold when fight end
|
2024-12-29 00:28:53 +08:00 |
|
辉鸭蛋
|
0a5c78ebbe
|
code format
|
2024-12-28 23:01:22 +08:00 |
|
mfkvfhpdx
|
81a7518f72
|
暂停后按下的键会释放,增加战斗检查偏色配置,由于跟队伍无关,只在独立任务,自动战斗处设置。
|
2024-12-28 17:12:47 +08:00 |
|
mfkvfhpdx
|
bb7d84ffe3
|
战斗配置增加超时,调度器增加清空功能
|
2024-12-27 23:47:58 +08:00 |
|
zjl
|
b19adcfba4
|
更快的检查战斗结束,以及降低L识别结束精度。
|
2024-12-23 23:37:56 +08:00 |
|
zjl
|
36e49bcbc7
|
1、战斗优化,只保留按L的情况下
2、暂停功能根据点位状态记录,支持暂停后,当判断路径过于远时,会不消耗重试次数重试此任务
3、重试点位时,将只保留跑图的那部分,跳过如打架、挖矿等操作,提升效率
|
2024-12-21 12:49:39 +08:00 |
|
辉鸭蛋
|
0c435a9393
|
fix #852
|
2024-12-13 02:23:57 +08:00 |
|
辉鸭蛋
|
11dda84592
|
pick drops
|
2024-12-09 00:57:17 +08:00 |
|
辉鸭蛋
|
23973bb679
|
auto task opt
|
2024-11-10 12:28:53 +08:00 |
|
辉鸭蛋
|
ebc2b7b42e
|
edit fight end judge 2
|
2024-11-10 01:24:35 +08:00 |
|
辉鸭蛋
|
8d2ee35b7c
|
edit fight end judge
|
2024-11-10 01:20:45 +08:00 |
|
辉鸭蛋
|
5b054bf31b
|
0.36.0
|
2024-11-04 21:33:07 +08:00 |
|
辉鸭蛋
|
a4bc632ae7
|
ui test
新增任务类属性和配置页面,优化日志记录
在 `BetterGenshinImpact.csproj` 文件中,添加了两个新文件夹路径 `GameTask\OneDragon\` 和 `User\AutoPathing\`。
在多个任务类文件中(如 `AutoDomainTask.cs`、`AutoFightTask.cs`、`AutoGeniusInvokationTask.cs`、`AutoMusicGameTask.cs`、`AutoWoodTask.cs`),新增了 `Name` 属性。
在 `PickAroundHandler.cs` 文件中,优化了 `RunAsync` 方法的日志记录,并添加了超时检查。
在 `ISoloTask.cs` 文件中,新增了 `Name` 属性和 `Start` 方法的接口定义。
在 `OneDragonTaskItem.cs` 文件中,新增了 `ViewModel` 属性。
在 `OneDragonFlowPage.xaml` 文件中,右侧配置部分从 `StackPanel` 改为 `ContentControl`,并添加了 `DataTemplate` 以支持不同任务类型的配置页面。
在 `IViewModel.cs` 文件中,将 `IViewModel` 接口的访问修饰符从 `internal` 改为 `public`。
在 `OneDragonFlowViewModel.cs` 文件中,初始化了任务项的 `ViewModel` 属性。
在 `ScriptControlViewModel.cs` 文件中,移除了构造函数的 `HomePageViewModel` 参数。
新增了 `LoginConfigViewModel.cs` 和 `MailConfigViewModel.cs` 文件,定义了相应的 ViewModel 类。
新增了 `LoginConfigPage.xaml` 和 `MailConfigPage.xaml` 文件,定义了相应的 XAML 布局及其交互逻辑。
|
2024-10-19 17:42:58 +08:00 |
|
辉鸭蛋
|
11ec9bc45d
|
refactor: CancellationTokenSource -> CancellationToken
|
2024-10-19 01:50:21 +08:00 |
|
辉鸭蛋
|
6e00e3f91e
|
collect fight screenshots
|
2024-10-01 01:56:53 +08:00 |
|
辉鸭蛋
|
c15cb33c2c
|
rename variables and properties, refactor code, add new configuration options
重命名变量和属性,重构代码,添加新配置选项
主要更改:
* 将 `AutoFightConfig` 和 `AutoFightParam` 类中的字段和属性重命名,以提高名称的清晰度和一致性。
* 移除不必要的 `using` 语句,并调整顺序。
* 重构 `AutoFightTask` 和 `AutoFightHandler` 类中的条件判断和方法逻辑。
* 调整 `CameraRotateTask` 类中的参数值。
* 在 `PathExecutor` 类中添加 `_rotateTask` 字段,并修改相关方法调用。
* 在 `TaskSettingsPage.xaml` 中添加新的配置选项。
* 在 `HotKeyPageViewModel` 类中添加 `using` 语句,并修改热键回调逻辑。
* 修改 `TaskSettingsPageViewModel` 类中 `AutoFightParam` 的初始化。
|
2024-09-30 13:42:11 +08:00 |
|
辉鸭蛋
|
d9e5f2f1dd
|
add rotate task
在 `BgiYoloV8Predictor.cs` 文件中,添加了 `System.Diagnostics`、`System.Drawing.Imaging` 和 `System.IO` 的引用,并在 YOLOv8 识别结果返回前,添加了调试输出,使用 `JsonSerializer` 序列化识别结果并输出到调试窗口。
在 `AutoFightTask.cs` 文件中,添加了 `System.Collections.Generic` 和 `BetterGenshinImpact.GameTask.AutoPathing` 的引用,修改了 `combatScenes.BeforeTask` 方法的调用,使用新的取消令牌 `cts2`。在战斗操作的 `Task.Run` 中添加了 `try-catch` 块,以捕获并忽略异常。修改了战斗结束检测线程,使用 `async` 和 `await` 关键字,并在检测战斗结束时添加了 `try-catch` 块。修改了 `CheckFightFinish` 方法,改为异步方法 `CheckFightFinish`,并在检测战斗结束时添加了旋转视角的逻辑。
在 `PathExecutor.cs` 文件中,添加了关于 DPI 和分辨率影响转动速度的注释。
在 `TaskSettingsPageViewModel.cs` 文件中,在获取战斗策略后,创建了 `AutoFightParam` 对象,并设置了 `EndDetect` 和 `AutoPickAfterFight` 参数。修改了 `RunSoloTaskAsync` 方法的调用,传入了新的 `AutoFightParam` 对象。
在 `CameraRotateTask.cs` 文件中,添加了新的 `CameraRotateTask` 类,用于处理相机视角的旋转,实现了 `RotateToApproach` 方法,用于将视角旋转到接近目标角度,实现了 `WaitUntilRotatedTo` 异步方法,用于等待视角旋转到目标角度。
|
2024-09-30 00:10:08 +08:00 |
|
辉鸭蛋
|
0549df75b6
|
auto fight: init end detect
在 `BetterGenshinImpact.csproj` 文件中,删除了 `Assets\Model\World\` 和 `Script\JustTp\` 文件夹的包含项。
在 `AutoFightConfig.cs` 文件中,`AutoFightConfig` 类新增了两个属性:`_endDetect` 和 `_autoPickAfterFight`,并且默认值分别为 `true`。
在 `AutoFightParam.cs` 文件中,`AutoFightParam` 类新增了两个属性:`EndDetect` 和 `AutoPickAfterFight`,并且默认值分别为 `false`。
在 `AutoFightTask.cs` 文件中:
* 修改了 `using` 引用,添加了 `BetterGenshinImpact.Core.Config` 和 `BetterGenshinImpact.GameTask.Model.Area`,删除了 `BetterGenshinImpact.GameTask.AutoGeniusInvokation.Exception`。
* 在 `AutoFightTask` 类中,新增了 `_predictor` 和 `_lastFightFlagTime` 字段。
* 在 `AutoFightTask` 构造函数中,增加了对 `EndDetect` 和 `AutoPickAfterFight` 属性的检查,并在满足条件时初始化 `_predictor`。
* 修改了 `Start` 方法,增加了战斗结束检测线程和自动拾取掉落物的功能。
* 新增了 `CheckFightFinish` 和 `HasFightFlag` 方法,用于检测战斗是否结束。
在 `BetterGenshinImpact.Core.Recognition.ONNX` 命名空间下新增了 `BgiYoloV8Predictor` 类,并实现了 `IDisposable` 接口。
* 添加了一个只读字段 `_predictor`,并通过 `YoloV8Builder` 创建了一个默认的 YoloV8 预测器。
* 添加了一个 `Predictor` 属性,用于获取 `_predictor`。
* 添加了一个 `Detect` 方法,该方法接受一个 `ImageRegion` 对象作为参数,并返回一个包含类别和矩形框的字典。
* 添加了 `Dispose` 方法,用于释放 `_predictor` 的资源。
|
2024-09-29 23:01:29 +08:00 |
|
辉鸭蛋
|
5a0f7226ed
|
update ISoloTask
更新 Start 方法以接受 CancellationTokenSource 参数
这些更改主要是为了使 `Start` 方法能够接受 `CancellationTokenSource` 参数,从而更好地控制任务的取消操作。通过传递 `CancellationTokenSource`,可以在需要时取消正在运行的任务,提高了代码的灵活性和可控性。
具体更改包括:
- 将 `Start` 方法的签名从无参数更改为接受 `CancellationTokenSource` 参数。
- 在多个任务类(如 `AutoDomainTask.cs`、`AutoFightTask.cs`、`AutoGeniusInvokationTask.cs`、`AutoMusicGameTask.cs`、`AutoWoodTask.cs`)中,更新 `Start` 方法以接受并使用传入的 `CancellationTokenSource`。
- 在 `Duel.cs` 中,更新 `RunAsync` 和 `Run` 方法的参数以接受 `CancellationTokenSource`,并将 `Cts` 赋值为传入的 `cts`。
- 在 `ISoloTask.cs` 接口中,更新 `Start` 方法的签名以接受 `CancellationTokenSource` 参数。
- 在 `TaskRunner.cs` 中,调用 `soloTask.Start` 时传入 `CancellationContext.Instance.Cts` 作为参数。
|
2024-09-23 00:04:09 +08:00 |
|
辉鸭蛋
|
8bb1d728ff
|
refactor: solo task
|
2024-09-22 23:56:39 +08:00 |
|
辉鸭蛋
|
059e21775f
|
unified capture image method
|
2024-07-21 20:38:06 +08:00 |
|