LmeSzinc / StarRailCopilot

崩坏:星穹铁道脚本 | Honkai: Star Rail auto bot (简体中文/繁體中文/English/Español)
GNU General Public License v3.0
3.14k stars 156 forks source link

周本(历战余响)剩余领取奖励次数在日志处不准确 #270

Open Asxcvbn opened 10 months ago

Asxcvbn commented 10 months ago

在提问之前...

描述你的问题

使用SRC完成周本任务后,会在日志页面的仪表盘更新各种状态,如历战余响次数,然而其更新并不准确,经常是每周一大早做完了3次,而历战余响显示2/3。 图片 图片

如何复现

  1. 前往 '...'
  2. 点击 '....'
  3. 滑动到 '....'
  4. 出现问题

预期行为

当然是能够正确反应剩余次数,而不是差1.

相关 Logs

─────────────────────────────────────────────────────── COMBAT ────────────────────────────────────────────────────────
2024-01-08 23:21:18.563 | INFO | COMBAT                                                                                
2024-01-08 23:21:18.563 | INFO | Combat, team=1, wave=1/2                                                              
2024-01-08 23:21:18.564 | INFO | <<< COMBAT PREPARE >>>                                                                
2024-01-08 23:21:18.565 | INFO | <<< COMBAT EXECUTE >>>                                                                
2024-01-08 23:21:18.566 | INFO | _combat_2x_checked                                                                    
2024-01-08 23:21:18.567 | INFO | _combat_auto_checked                                                                  
2024-01-08 23:21:24.065 | INFO | Combat continues                                                                      
2024-01-08 23:21:27.062 | INFO | Combat continues                                                                      
2024-01-08 23:21:35.762 | INFO | Combat continues                                                                      
2024-01-08 23:21:45.965 | INFO | Combat continues                                                                      
2024-01-08 23:21:57.266 | INFO | Combat continues                                                                      
2024-01-08 23:22:02.764 | INFO | Combat continues                                                                      
2024-01-08 23:22:07.062 | INFO | Combat continues                                                                      
2024-01-08 23:22:26.364 | INFO | Combat continues                                                                      
2024-01-08 23:22:50.863 | INFO | Combat continues                                                                      
2024-01-08 23:22:55.546 | INFO | Combat continues                                                                      
2024-01-08 23:23:01.330 | INFO | Combat continues                                                                      
2024-01-08 23:23:05.361 | INFO | Combat continues                                                                      
2024-01-08 23:23:05.765 | INFO | Combat continues                                                                      
2024-01-08 23:23:16.765 | INFO | Combat continues                                                                      
2024-01-08 23:23:23.064 | INFO | Combat continues                                                                      
2024-01-08 23:23:40.062 | INFO | Combat continues                                                                      
2024-01-08 23:23:51.567 | INFO | Combat continues                                                                      
2024-01-08 23:23:52.261 | INFO | Combat continues                                                                      
2024-01-08 23:24:14.042 | INFO | Combat continues                                                                      
2024-01-08 23:24:18.660 | INFO | Combat continues                                                                      
2024-01-08 23:24:18.860 | INFO | Combat continues                                                                      
2024-01-08 23:24:24.865 | INFO | Combat continues                                                                      
2024-01-08 23:24:29.264 | INFO | Combat continues                                                                      
2024-01-08 23:24:43.329 | INFO | Combat continues                                                                      
2024-01-08 23:25:12.760 | INFO | Combat continues                                                                      
2024-01-08 23:25:15.227 | INFO | Combat continues                                                                      
2024-01-08 23:25:23.461 | INFO | Combat execute ended at COMBAT_AGAIN                                                  
2024-01-08 23:25:23.462 | INFO | <<< COMBAT FINISH >>>                                                                 
2024-01-08 23:25:23.464 | INFO | Done 1 waves at total                                                                 
2024-01-08 23:25:23.475 | INFO | [OCR_TRAILBLAZE_POWER] 32/240                                                         
2024-01-08 23:25:23.476 | INFO | [OCR_TRAILBLAZE_POWER format] 32/240 -> (32, 208, 240)                                
2024-01-08 23:25:23.477 | INFO | [OCR_TRAILBLAZE_POWER 0.012s] (32, 208, 240)                                          
2024-01-08 23:25:23.480 | INFO | Bind task ['Alas', 'Weekly']                                                          
2024-01-08 23:25:23.481 | INFO | Save config ./config\src2.json, Dungeon.DungeonStorage.TrailblazePower={'time':       
datetime.datetime(2024, 1, 8, 23, 25, 23), 'total': 240, 'value': 32}                                                  
2024-01-08 23:25:23.485 | INFO | Combat wave limit: 2/2, can not run again                                             
2024-01-08 23:25:23.486 | INFO | Click ( 435,  585) @ COMBAT_EXIT                                                      
2024-01-08 23:25:29.061 | INFO | GET_LIGHT_CONE -> GET_REWARD                                                          
2024-01-08 23:25:29.063 | INFO | Click ( 887,  534) @ GET_REWARD                                                       
2024-01-08 23:25:31.162 | INFO | GET_LIGHT_CONE -> GET_REWARD                                                          
2024-01-08 23:25:31.162 | INFO | Click ( 890,  568) @ GET_REWARD                                                       
2024-01-08 23:25:31.763 | INFO | Combat finishes at page_main                                                          
2024-01-08 23:25:31.764 | INFO | [combat_wave_done] 2                                                                  
2024-01-08 23:25:31.765 | INFO | Achieve daily quest Obtain_victory_in_combat_with_Support_Characters_1_times          
2024-01-08 23:25:31.765 | INFO | [TrailblazePowerExhausted] False                                                      
2024-01-08 23:25:31.773 | INFO | Bind task ['Alas', 'Weekly']                                                          
2024-01-08 23:25:31.774 | INFO | [achieved_daily_quest] True                                                           
2024-01-08 23:25:31.774 | INFO | [achieved_weekly_quest] False                                                         
2024-01-08 23:25:31.775 | INFO | Task call: DailyQuest                                                                 
2024-01-08 23:25:31.776 | INFO | All Echo_of_War rewards got                                                           
2024-01-08 23:25:31.777 | INFO | Delay task `Weekly` to 2024-01-09 04:00:00 (server_update='04:00')                    
2024-01-08 23:25:31.779 | INFO | Bind task ['Alas', 'Weekly']                                                          
2024-01-08 23:25:31.780 | INFO | Save config ./config\src2.json, DailyQuest.Scheduler.NextRun=datetime.datetime(2024,  
1, 8, 23, 25, 31), DailyQuest.Scheduler.Enable=True, Weekly.Scheduler.NextRun=datetime.datetime(2024, 1, 9, 4, 0)      
2024-01-08 23:25:31.794 | INFO | Bind task ['Alas', 'Weekly']                                                          
2024-01-08 23:25:31.795 | INFO | Scheduler: End task `Weekly`                                                          
2024-01-08 23:25:31.796 | INFO | [Lang] cn                                                                             
2024-01-08 23:25:31.799 | INFO | Bind task ['Alas']                                                                    
2024-01-08 23:25:31.800 | INFO | Pending tasks: ['DailyQuest', 'Dungeon', 'Rogue']                                     
2024-01-08 23:25:31.801 | INFO | [Task] DailyQuest (Enable, 2024-01-08 23:25:31)                                       
2024-01-08 23:25:31.801 | INFO | Bind task ['Alas', 'DailyQuest']                                                      
2024-01-08 23:25:31.803 | INFO | Scheduler: Start task `DailyQuest`

截图

2024-01-08_src2.txt

还有别的吗?

mumu12@1280x720@30fps?

感觉就是没在打完周本之后再次更新当前的剩余次数

aaahai00 commented 10 months ago

这三次是你自己打的还是src挂的,感觉只是没有更新仪表盘的问题

Asxcvbn commented 10 months ago

src挂的,确实只是没更新仪表盘(

Asxcvbn commented 9 months ago

图片 图片 2024-01-15_src.txt 似乎还是存在一点问题;

另外一个实例的仪表盘倒是正常的,符合预期的0/3, 但是这个就还是有点问题

Asxcvbn commented 9 months ago

一段时间后似乎正常了...? 图片 此时还没跑到第二轮的周本调度任务 2024-01-16_src - 副本.txt

aaahai00 commented 9 months ago

一段时间后似乎正常了...? 图片 此时还没跑到第二轮的周本调度任务 2024-01-16_src - 副本.txt

不是挂着已修复待反馈的标吗

Asxcvbn commented 9 months ago

一段时间后似乎正常了...? 图片 此时还没跑到第二轮的周本调度任务 2024-01-16_src - 副本.txt

不是挂着已修复待反馈的标吗

这不是反馈了嘛(),看上面的回复,有些上下文的。

主要是看起来这次的log,似乎是 周本次数 3/3 2024-01-15 23:19:43.842 | INFO | [OCR_WEEKLY_LIMIT] 3/3
->SRC刷完了周本 2024-01-15 23:31:33.956 | INFO | Done 1 waves at total
此时体力恰好刷完 [OCR_TRAILBLAZE_POWER] 10/240 有这么一句,周本时期: Combat wave limit: 3/3, can not run again ->周本次数0/3但是SRC以为3/3,预约了等够30体力的时间再次运行周本 2024-01-15 23:31:38.079 | INFO | Delay task Weekly to 2024-01-16 01:31:38
->到预约的时候OCR发现已经到周限制了,才把仪表盘改回0/3。 2024-01-16 01:32:47.481 | INFO | [OCR_WEEKLY_LIMIT] 0/3

15日的log到第一次提交的时候并没有彻底结束, 没包括 2024-01-16 01:32:47.481的情况。当天完整log重新上传一下在这 2024-01-15_src.txt

考虑到这次情况比较特殊(周一晚上才启动了SRC),不排除这次仪表盘不正常是因为这个原因导致的。但是每天晚上启动一次SRC应该也算官方支持的用法吧,尽管推荐用法是一直开着。 另外,另一个实例虽然也是晚上启动,但是没遇到这个问题。

aaahai00 commented 9 months ago

一段时间后似乎正常了...? 图片 此时还没跑到第二轮的周本调度任务 2024-01-16_src - 副本.txt

不是挂着已修复待反馈的标吗

这不是反馈了嘛(),看上面的回复,有些上下文的。

主要是看起来这次的log,似乎是 周本次数 3/3 2024-01-15 23:19:43.842 | INFO | [OCR_WEEKLY_LIMIT] 3/3
->SRC刷完了周本 2024-01-15 23:31:33.956 | INFO | Done 1 waves at total
此时体力恰好刷完 [OCR_TRAILBLAZE_POWER] 10/240 有这么一句,周本时期: Combat wave limit: 3/3, can not run again ->周本次数0/3但是SRC以为3/3,预约了等够30体力的时间再次运行周本 2024-01-15 23:31:38.079 | INFO | Delay task Weekly to 2024-01-16 01:31:38
->到预约的时候OCR发现已经到周限制了,才把仪表盘改回0/3。 2024-01-16 01:32:47.481 | INFO | [OCR_WEEKLY_LIMIT] 0/3

15日的log到第一次提交的时候并没有彻底结束, 没包括 2024-01-16 01:32:47.481的情况。当天完整log重新上传一下在这 2024-01-15_src.txt

考虑到这次情况比较特殊(周一晚上才启动了SRC),不排除这次仪表盘不正常是因为这个原因导致的。但是每天晚上启动一次SRC应该也算官方支持的用法吧,尽管推荐用法是一直开着。 另外,另一个实例虽然也是晚上启动,但是没遇到这个问题。

一直开着不是占电脑性能吗,估计一般都是一天就开一次 一直开着不是费电吗

Asxcvbn commented 9 months ago

现在看起来好像一次打2,不一口气把3次周本打完,这个仪表盘就不准确? 图片 图片 2024-01-24_src2.txt

作为对比,另一边是一口气打完的,它的仪表盘还算正常。 2024-01-23_src.txt

Asxcvbn commented 9 months ago

大约02:37的时候SRC启动并跑了一次周本,但是显然结果依然不对: 图片 图片 2024-01-24_src2.txt

Asxcvbn commented 9 months ago

我的观察差不多是,似乎在运行历战余响这个任务之前?和部分情况下的任务之后,会进行检测更新当前状态,但是如果运行一半因为比如体力不够被打断,那么就不会更新剩余历战余响次数,需要等到比如也许下一次历战余响任务运行前才会更新。

aaahai00 commented 9 months ago

我的观察差不多是,似乎在运行历战余响这个任务之前?和部分情况下的任务之后,会进行检测更新当前状态,但是如果运行一半因为比如体力不够被打断,那么就不会更新剩余历战余响次数,需要等到比如也许下一次历战余响任务运行前才会更新。

你这样一说我注意到一个情况,他的更新机制貌似是全部打完才会更新,因为我看他点击再次挑战不会更新仪表板,这有可能就是问题根源

Asxcvbn commented 9 months ago

而且如果这个任务被打断了,那么跑第三个的时候仪表盘也不会更新,于是当体力不足分开一个一个跑完,实际上是0/3的时候,仪表盘是1/3,还会预约3个小时之后的历战余响任务,虽然到那个时候可能才会发现这个破任务打完了= =

Asxcvbn commented 8 months ago

2024-02-19_src.txt 图片 冒个泡证明问题还存在jpg

Asxcvbn commented 7 months ago

一个简单的复现手段是, 关闭历战余响,并等待体力回复至60~80附近(保证历战余响三连打不完)

然后打开历战余响,开始刷取:当刷完二连的时候会直接退出而不更新仪表盘,此时看起来历战余响还是3/3.