LmeSzinc / StarRailCopilot

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

使用角色养成功能后的每日副本任务出现错误 #632

Closed YukiiYuna closed 1 month ago

YukiiYuna commented 1 month ago

在提问之前...

描述你的问题

使用角色养成功能后的每日副本任务出现错误

如何复现

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

预期行为

No response

相关 Logs

───────────────────────────────────────────────────── OBTAIN GET ──────────────────────────────────────────────────────
2024-09-18 02:46:44.026 | INFO | OBTAIN GET                                                                            
2024-09-18 02:46:44.026 | INFO | Find may obtain                                                                       
2024-09-18 02:46:44.116 | INFO | [trailblaze_exp] False                                                                
2024-09-18 02:46:44.117 | INFO | Obtain enter OBTAIN_1                                                                 
2024-09-18 02:46:44.119 | INFO | Click ( 847,  448) @ OBTAIN_1                                                         
2024-09-18 02:46:44.729 | INFO | [ITEM_NAME 0.018s] 沉沦黑曜                                                           
2024-09-18 02:46:44.730 | INFO | [ITEM_NAME matched] ItemTrace(Obsidian_of_Obsession)                                  
2024-09-18 02:46:44.747 | INFO | [ITEM_AMOUNT] 8                                                                       
2024-09-18 02:46:44.748 | INFO | [ITEM_AMOUNT format] 当前持有:8 -> 8                                                 
2024-09-18 02:46:44.748 | INFO | [ITEM_AMOUNT 0.018s] 8                                                                
2024-09-18 02:46:44.749 | INFO | Obtain close                                                                          
2024-09-18 02:46:44.750 | INFO | Click (1050,  200) @ ITEM_CLOSE                                                       
2024-09-18 02:46:45.221 | INFO | [trailblaze_exp] False                                                                
2024-09-18 02:46:45.222 | INFO | Obtain enter OBTAIN_2                                                                 
2024-09-18 02:46:45.223 | INFO | Click ( 940,  435) @ OBTAIN_2                                                         
2024-09-18 02:46:45.836 | INFO | [ITEM_NAME 0.021s] 虚空黑曜                                                           
2024-09-18 02:46:45.837 | INFO | [ITEM_NAME matched] ItemTrace(Obsidian_of_Desolation)                                 
2024-09-18 02:46:45.857 | INFO | [ITEM_AMOUNT] 7                                                                       
2024-09-18 02:46:45.858 | INFO | [ITEM_AMOUNT format] 当前持有:7 -> 7                                                 
2024-09-18 02:46:45.858 | INFO | [ITEM_AMOUNT 0.022s] 7                                                                
2024-09-18 02:46:45.859 | INFO | Obtain close                                                                          
2024-09-18 02:46:45.860 | INFO | Click (1048,  198) @ ITEM_CLOSE                                                       
2024-09-18 02:46:46.316 | INFO | [trailblaze_exp] False                                                                
2024-09-18 02:46:46.317 | INFO | Obtain enter OBTAIN_3                                                                 
2024-09-18 02:46:46.318 | INFO | Click (1007,  451) @ OBTAIN_3                                                         
2024-09-18 02:46:46.936 | INFO | [ITEM_NAME 0.021s] 黯淡黑曜                                                           
2024-09-18 02:46:46.937 | INFO | [ITEM_NAME matched] ItemTrace(Obsidian_of_Dread)                                      
2024-09-18 02:46:46.954 | INFO | [ITEM_AMOUNT] 0                                                                       
2024-09-18 02:46:46.954 | INFO | [ITEM_AMOUNT format] 当前持有:0 -> 0                                                 
2024-09-18 02:46:46.955 | INFO | [ITEM_AMOUNT 0.018s] 0                                                                
2024-09-18 02:46:46.955 | INFO | Obtain close                                                                          
2024-09-18 02:46:46.956 | INFO | Click (1055,  195) @ ITEM_CLOSE                                                       
2024-09-18 02:46:47.415 | INFO | [trailblaze_exp] False                                                                
2024-09-18 02:46:47.416 | INFO | Obtain get end                                                                        
2024-09-18 02:46:47.416 | INFO | <<< OBTAINED RESULT >>>                                                               
2024-09-18 02:46:47.417 | INFO | Obtained item: Obsidian_of_Obsession, 8                                               
2024-09-18 02:46:47.417 | INFO | Obtained item: Obsidian_of_Desolation, 7                                              
2024-09-18 02:46:47.418 | INFO | Obtained item: Obsidian_of_Dread, 0                                                   
2024-09-18 02:46:47.420 | INFO | Bind task ['Alas', 'Dungeon']                                                         
2024-09-18 02:46:47.420 | INFO | Save config ./config\src.json, Dungeon.Planner.Item_Squirming_Core={'item':           
'Squirming_Core', 'value': {'purple': 36, 'blue': 28, 'green': 0}, 'total': {'purple': 42, 'blue': 10, 'green': 0},    
'synthesize': {'purple': 6, 'blue': 0, 'green': 0}, 'time': '2024-09-18 02:39:12', 'progress': 100.0, 'eta': 0.0},     
Dungeon.Planner.PlannerOverall={'time': datetime.datetime(2024, 9, 18, 2, 46, 47), 'comment': '<14.1d', 'value':       
'9.18%'}                                                                                                               
2024-09-18 02:46:47.434 | INFO | <<< PLANNER >>>                                                                       
2024-09-18 02:46:47.435 | INFO | item=ItemExp(Refined_Aether) value=MultiValue(purple=14, blue=0, green=0)             
total=MultiValue(purple=56, blue=0, green=0) synthesize=MultiValue(purple=0, blue=0, green=0)                          
time=datetime.datetime(2024, 9, 18, 2, 39, 12) progress=25.0 eta=0.9                                                   
2024-09-18 02:46:47.436 | INFO | item=ItemTrace(Obsidian_of_Obsession) value=MultiValue(purple=8, blue=7, green=0)     
total=MultiValue(purple=205, blue=12, green=0) synthesize=MultiValue(purple=0, blue=0, green=0)                        
time=datetime.datetime(2024, 9, 18, 2, 39, 12) progress=4.94 eta=13.2                                                  
2024-09-18 02:46:47.437 | INFO | item=ItemCalyx(Squirming_Core) value=MultiValue(purple=36, blue=28, green=0)          
total=MultiValue(purple=42, blue=10, green=0) synthesize=MultiValue(purple=6, blue=0, green=0)                         
time=datetime.datetime(2024, 9, 18, 2, 39, 12) progress=100.0 eta=0.0                                                  
2024-09-18 02:46:47.438 | INFO | Planner item=ItemTrace(Obsidian_of_Obsession) value=MultiValue(purple=8, blue=7,      
green=0) total=MultiValue(purple=205, blue=12, green=0) synthesize=MultiValue(purple=0, blue=0, green=0)               
time=datetime.datetime(2024, 9, 18, 2, 39, 12) progress=4.94 eta=13.2 come from                                        
DungeonList(Calyx_Crimson_Nihility_Jarilo_GreatMine)                                                                   
2024-09-18 02:46:47.438 | INFO | [is_approaching_total] False                                                          
2024-09-18 02:46:47.444 | INFO | [OCR_WAVE_COST] 10                                                                    
2024-09-18 02:46:47.445 | INFO | [OCR_WAVE_COST format] 10 -> 10                                                       
2024-09-18 02:46:47.445 | INFO | [OCR_WAVE_COST 0.007s] 10                                                             
2024-09-18 02:46:47.451 | INFO | [CombatMultiWave] True                                                                
2024-09-18 02:46:47.466 | INFO | [RESERVED_OCR] 3                                                                      
2024-09-18 02:46:47.467 | INFO | [RESERVED_OCR format] 3 -> 3                                                          
2024-09-18 02:46:47.468 | INFO | [RESERVED_OCR 0.009s] 3                                                               
2024-09-18 02:46:47.478 | INFO | Bind task ['Alas', 'Dungeon']                                                         
2024-09-18 02:46:47.478 | INFO | Save config ./config\src.json, Dungeon.DungeonStorage.Reserved={'time':               
datetime.datetime(2024, 9, 18, 2, 46, 47), 'total': 2400, 'value': 3}                                                  
2024-09-18 02:46:47.623 | INFO | [RESERVED_OCR] 3                                                                      
2024-09-18 02:46:47.624 | INFO | [RESERVED_OCR format] 3 -> 3                                                          
2024-09-18 02:46:47.624 | INFO | [RESERVED_OCR 0.009s] 3                                                               
2024-09-18 02:46:47.631 | INFO | Bind task ['Alas', 'Dungeon']                                                         
2024-09-18 02:46:47.632 | INFO | Save config ./config\src.json, Dungeon.DungeonStorage.Reserved={'time':               
datetime.datetime(2024, 9, 18, 2, 46, 47), 'total': 2400, 'value': 3}                                                  
2024-09-18 02:46:47.729 | INFO | [RESERVED_OCR] 3                                                                      
2024-09-18 02:46:47.729 | INFO | [RESERVED_OCR format] 3 -> 3                                                          
2024-09-18 02:46:47.730 | INFO | [RESERVED_OCR 0.010s] 3                                                               
2024-09-18 02:46:47.737 | INFO | Bind task ['Alas', 'Dungeon']                                                         
2024-09-18 02:46:47.738 | INFO | Save config ./config\src.json, Dungeon.DungeonStorage.Reserved={'time':               
datetime.datetime(2024, 9, 18, 2, 46, 47), 'total': 2400, 'value': 3}                                                  
2024-09-18 02:46:47.827 | INFO | [RESERVED_OCR] 3                                                                      
2024-09-18 02:46:47.828 | INFO | [RESERVED_OCR format] 3 -> 3                                                          
2024-09-18 02:46:47.829 | INFO | [RESERVED_OCR 0.017s] 3                                                               
2024-09-18 02:46:47.840 | INFO | Bind task ['Alas', 'Dungeon']                                                         
2024-09-18 02:46:47.841 | INFO | Save config ./config\src.json, Dungeon.DungeonStorage.Reserved={'time':               
datetime.datetime(2024, 9, 18, 2, 46, 47), 'total': 2400, 'value': 3}                                                  
2024-09-18 02:46:47.925 | INFO | [RESERVED_OCR] 3                                                                      
2024-09-18 02:46:47.926 | INFO | [RESERVED_OCR format] 3 -> 3                                                          
2024-09-18 02:46:47.927 | INFO | [RESERVED_OCR 0.008s] 3                                                               
2024-09-18 02:46:47.935 | INFO | Bind task ['Alas', 'Dungeon']                                                         
2024-09-18 02:46:47.936 | INFO | Save config ./config\src.json, Dungeon.DungeonStorage.Reserved={'time':               
datetime.datetime(2024, 9, 18, 2, 46, 47), 'total': 2400, 'value': 3}                                                  
2024-09-18 02:46:48.024 | INFO | [RESERVED_OCR] 来3                                                                    
2024-09-18 02:46:48.025 | INFO | [RESERVED_OCR format] 来3 -> 3                                                        
2024-09-18 02:46:48.025 | INFO | [RESERVED_OCR 0.010s] 3                                                               
2024-09-18 02:46:48.032 | INFO | Bind task ['Alas', 'Dungeon']                                                         
2024-09-18 02:46:48.033 | INFO | Save config ./config\src.json, Dungeon.DungeonStorage.Reserved={'time':               
datetime.datetime(2024, 9, 18, 2, 46, 48), 'total': 2400, 'value': 3}                                                  
2024-09-18 02:46:48.124 | INFO | [RESERVED_OCR] 来3                                                                    
2024-09-18 02:46:48.125 | INFO | [RESERVED_OCR format] 来3 -> 3                                                        
2024-09-18 02:46:48.126 | INFO | [RESERVED_OCR 0.012s] 3                                                               
2024-09-18 02:46:48.133 | INFO | Bind task ['Alas', 'Dungeon']                                                         
2024-09-18 02:46:48.134 | INFO | Save config ./config\src.json, Dungeon.DungeonStorage.Reserved={'time':               
datetime.datetime(2024, 9, 18, 2, 46, 48), 'total': 2400, 'value': 3}                                                  
2024-09-18 02:46:48.224 | INFO | [RESERVED_OCR] 来3                                                                    
2024-09-18 02:46:48.224 | INFO | [RESERVED_OCR format] 来3 -> 3                                                        
2024-09-18 02:46:48.225 | INFO | [RESERVED_OCR 0.010s] 3                                                               
2024-09-18 02:46:48.233 | INFO | Bind task ['Alas', 'Dungeon']                                                         
2024-09-18 02:46:48.234 | INFO | Save config ./config\src.json, Dungeon.DungeonStorage.Reserved={'time':               
datetime.datetime(2024, 9, 18, 2, 46, 48), 'total': 2400, 'value': 3}                                                  
2024-09-18 02:46:48.325 | INFO | [RESERVED_OCR] 来3                                                                    
2024-09-18 02:46:48.326 | INFO | [RESERVED_OCR format] 来3 -> 3                                                        
2024-09-18 02:46:48.327 | INFO | [RESERVED_OCR 0.011s] 3                                                               
2024-09-18 02:46:48.335 | INFO | Bind task ['Alas', 'Dungeon']                                                         
2024-09-18 02:46:48.336 | INFO | Save config ./config\src.json, Dungeon.DungeonStorage.Reserved={'time':               
datetime.datetime(2024, 9, 18, 2, 46, 48), 'total': 2400, 'value': 3}                                                  
2024-09-18 02:46:48.425 | INFO | [RESERVED_OCR] 来3                                                                    
2024-09-18 02:46:48.425 | INFO | [RESERVED_OCR format] 来3 -> 3                                                        
2024-09-18 02:46:48.426 | INFO | [RESERVED_OCR 0.010s] 3                                                               
2024-09-18 02:46:48.433 | INFO | Bind task ['Alas', 'Dungeon']                                                         
2024-09-18 02:46:48.434 | INFO | Save config ./config\src.json, Dungeon.DungeonStorage.Reserved={'time':               
datetime.datetime(2024, 9, 18, 2, 46, 48), 'total': 2400, 'value': 3}                                                  
2024-09-18 02:46:48.526 | INFO | [RESERVED_OCR] 来3                                                                    
2024-09-18 02:46:48.526 | INFO | [RESERVED_OCR format] 来3 -> 3                                                        
2024-09-18 02:46:48.527 | INFO | [RESERVED_OCR 0.012s] 3                                                               
2024-09-18 02:46:48.534 | INFO | Bind task ['Alas', 'Dungeon']                                                         
2024-09-18 02:46:48.535 | INFO | Save config ./config\src.json, Dungeon.DungeonStorage.Reserved={'time':               
datetime.datetime(2024, 9, 18, 2, 46, 48), 'total': 2400, 'value': 3}                                                  
2024-09-18 02:46:48.538 | ERROR | TypeError: '<' not supported between instances of 'NoneType' and 'int'               
┌───────────────────────────────────────── Traceback (most recent call last) ─────────────────────────────────────────┐
│ D:\Program Files\StarRailCopilot\module\alas.py:79 in run                                                           │
│                                                                                                                     │
│    76 │   │   try:                                                                                                  │
│    77 │   │   │   self.device.screenshot()                                                                          │
│    78 │   │   │   self.device.screenshot_tracking.clear()                                                           │
│ >  79 │   │   │   self.__getattribute__(command)()                                                                  │
│    80 │   │   │   return True                                                                                       │
│    81 │   │   except TaskEnd:                                                                                       │
│    82 │   │   │   return True                                                                                       │
│                                                                                                                     │
│ ┌────────────────────────────────────── locals ──────────────────────────────────────┐                              │
│ │ command = 'dungeon'                                                                │                              │
│ │       e = TypeError("'<' not supported between instances of 'NoneType' and 'int'") │                              │
│ │    self = <src.StarRailCopilot object at 0x0000026642D8FAF0>                       │                              │
│ └────────────────────────────────────────────────────────────────────────────────────┘                              │
│                                                                                                                     │
│ D:\Program Files\StarRailCopilot\src.py:31 in dungeon                                                               │
│                                                                                                                     │
│   28 │                                                                                                              │
│   29 │   def dungeon(self):                                                                                         │
│   30 │   │   from tasks.dungeon.dungeon import Dungeon                                                              │
│ > 31 │   │   Dungeon(config=self.config, device=self.device).run()                                                  │
│   32 │                                                                                                              │
│   33 │   def weekly(self):                                                                                          │
│   34 │   │   from tasks.dungeon.weekly import WeeklyDungeon                                                         │
│                                                                                                                     │
│ ┌─────────────────────────── locals ───────────────────────────┐                                                    │
│ │ Dungeon = <class 'tasks.dungeon.dungeon.Dungeon'>            │                                                    │
│ │    self = <src.StarRailCopilot object at 0x0000026642D8FAF0> │                                                    │
│ └──────────────────────────────────────────────────────────────┘                                                    │
│                                                                                                                     │
│ D:\Program Files\StarRailCopilot\tasks\dungeon\dungeon.py:340 in run                                                │
│                                                                                                                     │
│   337 │   │   │   │   self.config.task_stop()                                                                       │
│   338 │   │   else:                                                                                                 │
│   339 │   │   │   # Combat                                                                                          │
│ > 340 │   │   │   self.dungeon_run(final)                                                                           │
│   341 │   │   │   self.is_doing_planner = False                                                                     │
│   342 │   │   │   # Scheduler                                                                                       │
│   343 │   │   │   self.delay_dungeon_task(final)                                                                    │
│                                                                                                                     │
│ ┌──────────────────────────────── locals ─────────────────────────────────┐                                         │
│ │ do_rogue = False                                                        │                                         │
│ │    final = DungeonList(Calyx_Crimson_Nihility_Jarilo_GreatMine)         │                                         │
│ │  planner = DungeonList(Calyx_Crimson_Nihility_Jarilo_GreatMine)         │                                         │
│ │     self = <tasks.dungeon.dungeon.Dungeon object at 0x0000026621809CF0> │                                         │
│ └─────────────────────────────────────────────────────────────────────────┘                                         │
│                                                                                                                     │
│ D:\Program Files\StarRailCopilot\tasks\dungeon\dungeon.py:220 in dungeon_run                                        │
│                                                                                                                     │
│   217 │   │                                                                                                         │
│   218 │   │   else:                                                                                                 │
│   219 │   │   │   # Normal run                                                                                      │
│ > 220 │   │   │   return self._dungeon_run(dungeon=dungeon, team=team, wave_limit=wave_limit,                       │
│   221 │   │   │   │   │   │   │   │   │    support_character=support_character)                                     │
│   222 │                                                                                                             │
│   223 │   def update_double_event_record(self):                                                                     │
│                                                                                                                     │
│ ┌───────────────────────────────────── locals ─────────────────────────────────────┐                                │
│ │           dungeon = DungeonList(Calyx_Crimson_Nihility_Jarilo_GreatMine)         │                                │
│ │           require = False                                                        │                                │
│ │              self = <tasks.dungeon.dungeon.Dungeon object at 0x0000026621809CF0> │                                │
│ │ support_character = None                                                         │                                │
│ │              team = None                                                         │                                │
│ │        wave_limit = 0                                                            │                                │
│ └──────────────────────────────────────────────────────────────────────────────────┘                                │
│                                                                                                                     │
│ D:\Program Files\StarRailCopilot\tasks\dungeon\dungeon.py:95 in _dungeon_run                                        │
│                                                                                                                     │
│    92 │   │                                                                                                         │
│    93 │   │   # Combat                                                                                              │
│    94 │   │   self.dungeon = dungeon                                                                                │
│ >  95 │   │   count = self.combat(team=team, wave_limit=wave_limit,                                                 │
│       support_character=support_character)                                                                          │
│    96 │   │   self.dungeon = None                                                                                   │
│    97 │   │                                                                                                         │
│    98 │   │   # Update quest states                                                                                 │
│                                                                                                                     │
│ ┌───────────────────────────────────── locals ─────────────────────────────────────┐                                │
│ │           dungeon = DungeonList(Calyx_Crimson_Nihility_Jarilo_GreatMine)         │                                │
│ │          interact = None                                                         │                                │
│ │              self = <tasks.dungeon.dungeon.Dungeon object at 0x0000026621809CF0> │                                │
│ │    skip_ui_switch = False                                                        │                                │
│ │ support_character = None                                                         │                                │
│ │              team = 1                                                            │                                │
│ │        wave_limit = 0                                                            │                                │
│ └──────────────────────────────────────────────────────────────────────────────────┘                                │
│                                                                                                                     │
│ D:\Program Files\StarRailCopilot\tasks\combat\combat.py:422 in combat                                               │
│                                                                                                                     │
│   419 │   │   │   logger.hr('Combat', level=2)                                                                      │
│   420 │   │   │   logger.info(f'Combat, team={team},                                                                │
│       wave={self.combat_wave_done}/{self.combat_wave_limit}')                                                       │
│   421 │   │   │   # Prepare                                                                                         │
│ > 422 │   │   │   prepare = self.combat_prepare(team, support_character)                                            │
│   423 │   │   │   if not prepare:                                                                                   │
│   424 │   │   │   │   self.combat_exit()                                                                            │
│   425 │   │   │   │   break                                                                                         │
│                                                                                                                     │
│ ┌─────────────────────────────────────── locals ───────────────────────────────────────┐                            │
│ │                  self = <tasks.dungeon.dungeon.Dungeon object at 0x0000026621809CF0> │                            │
│ │ skip_first_screenshot = True                                                         │                            │
│ │     support_character = None                                                         │                            │
│ │                  team = 1                                                            │                            │
│ │            wave_limit = 0                                                            │                            │
│ └──────────────────────────────────────────────────────────────────────────────────────┘                            │
│                                                                                                                     │
│ D:\Program Files\StarRailCopilot\tasks\combat\combat.py:140 in combat_prepare                                       │
│                                                                                                                     │
│   137 │   │   │   │   │   # Update stamina so task can be delayed if both obtained_is_full and                      │
│       stamina exhausted                                                                                             │
│   138 │   │   │   │   │   self.combat_get_trailblaze_power()                                                        │
│   139 │   │   │   │   │   return False                                                                              │
│ > 140 │   │   │   │   if not self.handle_combat_prepare():                                                          │
│   141 │   │   │   │   │   return False                                                                              │
│   142 │   │   │   │   if self.is_doing_planner and self.combat_wave_cost == 0:                                      │
│   143 │   │   │   │   │   logger.info('Free combat gets nothing cannot meet planner needs')                         │
│                                                                                                                     │
│ ┌─────────────────────────────────────── locals ───────────────────────────────────────┐                            │
│ │                  self = <tasks.dungeon.dungeon.Dungeon object at 0x0000026621809CF0> │                            │
│ │ skip_first_screenshot = False                                                        │                            │
│ │     support_character = None                                                         │                            │
│ │           support_set = True                                                         │                            │
│ │                  team = 1                                                            │                            │
│ │                 trial = 0                                                            │                            │
│ └──────────────────────────────────────────────────────────────────────────────────────┘                            │
│                                                                                                                     │
│ D:\Program Files\StarRailCopilot\tasks\combat\combat.py:36 in handle_combat_prepare                                 │
│                                                                                                                     │
│    33 │   │   self.combat_waves = 1                                                                                 │
│    34 │   │   cost = self.combat_get_wave_cost()                                                                    │
│    35 │   │   current = self.combat_get_trailblaze_power()                                                          │
│ >  36 │   │   if current < self.combat_wave_cost:                                                                   │
│    37 │   │   │   if self._try_get_more_trablaize_power(self.combat_wave_cost):                                     │
│    38 │   │   │   │   current = self.config.stored.TrailblazePower.value                                            │
│    39 │   │   │   else:                                                                                             │
│                                                                                                                     │
│ ┌──────────────────────────────── locals ────────────────────────────────┐                                          │
│ │    cost = 10                                                           │                                          │
│ │ current = None                                                         │                                          │
│ │    self = <tasks.dungeon.dungeon.Dungeon object at 0x0000026621809CF0> │                                          │
│ └────────────────────────────────────────────────────────────────────────┘                                          │
└─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┘
TypeError: '<' not supported between instances of 'NoneType' and 'int'                                                 
2024-09-18 02:46:48.641 | WARNING | Saving error: ./log/error/1726598808641

截图

2024-09-18_02-46-48-513632

还有别的吗?

log.txt

YukiiYuna commented 1 month ago

好像不止是每日副本 历战也出现了这个问题 2024-09-18_11-10-34-060956 log.txt

LmeSzinc commented 1 month ago

你模拟器渲染的画面跟正常的不一样,色彩黯淡一点