From fcd6ff411f5b1c3d051594fb8fc45de253321169 Mon Sep 17 00:00:00 2001 From: LmeSzinc <37934724+LmeSzinc@users.noreply.github.com> Date: Sun, 5 Dec 2021 22:47:53 +0800 Subject: [PATCH 1/5] Refactor: Get zone name in OpSi --- module/os/globe_zone.py | 7 +++-- module/os/map_operation.py | 55 +++++++++++++++++++++++++++++++----- module/os/operation_siren.py | 25 +++------------- 3 files changed, 57 insertions(+), 30 deletions(-) diff --git a/module/os/globe_zone.py b/module/os/globe_zone.py index 065381f40..68939815d 100644 --- a/module/os/globe_zone.py +++ b/module/os/globe_zone.py @@ -2,7 +2,6 @@ import numpy as np from module.base.decorator import cached_property from module.exception import ScriptError -from module.logger import logger from module.map.map_grids import SelectedGrids from module.os.globe_detection import GLOBE_MAP_SHAPE from module.os.map_data import DIC_OS_MAP @@ -88,11 +87,16 @@ class ZoneManager: def name_to_zone(self, name): """ + Convert a name from various format to zone instance. + Args: name (str, int, Zone): Name in CN/EN/JP/TW, zone id, or Zone instance. Returns: Zone: + + Raises: + ScriptError: If Unable to find such zone. """ if isinstance(name, Zone): return name @@ -115,7 +119,6 @@ class ZoneManager: return zone if name == parse_name(zone.tw): return zone - logger.warning(f'Unable to find OS globe zone: {name}') raise ScriptError(f'Unable to find OS globe zone: {name}') def zone_nearest_azur_port(self, zone): diff --git a/module/os/map_operation.py b/module/os/map_operation.py index a60cf2327..ccb360d21 100644 --- a/module/os/map_operation.py +++ b/module/os/map_operation.py @@ -1,7 +1,7 @@ from module.base.decorator import Config from module.base.timer import Timer from module.base.utils import * -from module.exception import ScriptError +from module.exception import ScriptError, MapDetectionError from module.logger import logger from module.ocr.ocr import Ocr from module.os.assets import * @@ -88,17 +88,58 @@ class OSMapOperation(MapOrderHandler, MissionHandler, PortHandler, StorageHandle """ Returns: Zone: - """ - if not self.is_in_map(): - logger.warning('Trying to get zone name, but not in OS map') - raise ScriptError('Trying to get zone name, but not in OS map') + Raises: + MapDetectionError: If failed to parse zone name. + """ name = self.get_zone_name() logger.info(f'Map name processed: {name}') - self.zone = self.name_to_zone(name) + try: + self.zone = self.name_to_zone(name) + except ScriptError as e: + raise MapDetectionError(*e.args) logger.attr('Zone', self.zone) return self.zone + def zone_init(self, skip_first_screenshot=True): + """ + Wrap get_current_zone(), set self.zone to the current zone. + This method must be called after entering a new zone. + Handle map events and the animation that zone names appear from the top. + + Args: + skip_first_screenshot (bool): + + Returns: + Zone: Current zone. + + Raises: + MapDetectionError: If failed to parse zone name. + """ + timeout = Timer(1.5, count=5).start() + while 1: + if skip_first_screenshot: + skip_first_screenshot = False + else: + self.device.screenshot() + + if self.handle_map_event(): + timeout.reset() + continue + if self.is_in_map(): + try: + return self.get_current_zone() + except MapDetectionError: + continue + + if timeout.reached(): + logger.warning('Zone init timeout') + break + + if not self.is_in_map(): + logger.warning('Trying to get zone name, but not in OS map') + return self.get_current_zone() + def is_in_special_zone(self): """ Returns: @@ -143,4 +184,4 @@ class OSMapOperation(MapOrderHandler, MissionHandler, PortHandler, StorageHandle changed = True continue - self.get_current_zone() + self.zone_init() diff --git a/module/os/operation_siren.py b/module/os/operation_siren.py index eaee4df3c..cf4ce260f 100644 --- a/module/os/operation_siren.py +++ b/module/os/operation_siren.py @@ -25,30 +25,13 @@ class OperationSiren(Reward, OSMap): logger.info('Already in os map') elif self.is_in_globe(): self.os_globe_goto_map() - # Zone header has an animation to show. - self.device.sleep(0.3) - self.device.screenshot() else: if self.ui_page_appear(page_os): self.ui_goto_main() self.ui_ensure(page_os) - # Zone header has an animation to show. - self.device.sleep(0.3) - self.device.screenshot() # Init - _get_current_zone_success = False - for _ in range(5): - try: - self.get_current_zone() - _get_current_zone_success = True - break - except: - self.handle_map_event() - finally: - self.device.screenshot() - if not _get_current_zone_success: - self.get_current_zone() + self.zone_init() # self.map_init() self.hp_reset() @@ -117,7 +100,7 @@ class OperationSiren(Reward, OSMap): # IN_MAP if hasattr(self, 'zone'): del self.zone - self.get_current_zone() + self.zone_init() # Fleet repairs before starting if needed self.handle_fleet_repair(revert=False) # self.map_init() @@ -245,7 +228,7 @@ class OperationSiren(Reward, OSMap): if not result: break - self.get_current_zone() + self.zone_init() if result > 1: self.globe_goto(self.zone, refresh=True) self.run_auto_search() @@ -369,7 +352,7 @@ class OperationSiren(Reward, OSMap): self.config.task_delay(server_update=True) self.config.task_stop() - self.get_current_zone() + self.zone_init() self.os_order_execute(recon_scan=True, submarine_call=self.config.OpsiObscure_CallSubmarine) # Delay next run 30min or 60min. From d9facfb15606beb5a71583cd4eecd29ee1378168 Mon Sep 17 00:00:00 2001 From: LmeSzinc <37934724+LmeSzinc@users.noreply.github.com> Date: Mon, 6 Dec 2021 00:11:17 +0800 Subject: [PATCH 2/5] Fix: Re-add the original FoodT6 assets for compatibility --- assets/shop/general/FoodT6_2.png | Bin 0 -> 21967 bytes assets/shop/guild_cn/FoodT6_2.png | Bin 0 -> 21967 bytes assets/shop/medal/FoodT6_2.png | Bin 0 -> 21967 bytes 3 files changed, 0 insertions(+), 0 deletions(-) create mode 100644 assets/shop/general/FoodT6_2.png create mode 100644 assets/shop/guild_cn/FoodT6_2.png create mode 100644 assets/shop/medal/FoodT6_2.png diff --git a/assets/shop/general/FoodT6_2.png b/assets/shop/general/FoodT6_2.png new file mode 100644 index 0000000000000000000000000000000000000000..3e75b38a6898fd50f252c801eb8ba8c342544ec4 GIT binary patch literal 21967 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 Date: Mon, 6 Dec 2021 00:28:44 +0800 Subject: [PATCH 3/5] Fix: [CN][EN] Battle pass SP reward - TODO: [JP][TW] add assets for the battle_pass module --- assets/cn/battle_pass/REWARD_RECEIVE_SP.png | Bin 0 -> 8424 bytes assets/en/battle_pass/REWARD_RECEIVE_SP.png | Bin 0 -> 11329 bytes assets/jp/battle_pass/BATTLE_PASS_RED_DOT.png | Bin 0 -> 5534 bytes assets/jp/battle_pass/PURCHASE_POPUP.png | Bin 0 -> 6702 bytes assets/jp/battle_pass/REWARD_RECEIVE_SP.png | Bin 0 -> 10165 bytes assets/tw/battle_pass/BATTLE_PASS_RED_DOT.png | Bin 0 -> 5534 bytes assets/tw/battle_pass/PURCHASE_POPUP.png | Bin 0 -> 6702 bytes module/battle_pass/assets.py | 5 +++-- module/battle_pass/battle_pass.py | 3 +++ 9 files changed, 6 insertions(+), 2 deletions(-) create mode 100644 assets/cn/battle_pass/REWARD_RECEIVE_SP.png create mode 100644 assets/en/battle_pass/REWARD_RECEIVE_SP.png create mode 100644 assets/jp/battle_pass/BATTLE_PASS_RED_DOT.png create mode 100644 assets/jp/battle_pass/PURCHASE_POPUP.png create mode 100644 assets/jp/battle_pass/REWARD_RECEIVE_SP.png create mode 100644 assets/tw/battle_pass/BATTLE_PASS_RED_DOT.png create mode 100644 assets/tw/battle_pass/PURCHASE_POPUP.png diff --git a/assets/cn/battle_pass/REWARD_RECEIVE_SP.png b/assets/cn/battle_pass/REWARD_RECEIVE_SP.png new file mode 100644 index 0000000000000000000000000000000000000000..3e4640c5a28d131c0805d27e79b1829eaed7d752 GIT binary patch literal 8424 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 literal 0 HcmV?d00001 diff --git a/assets/en/battle_pass/REWARD_RECEIVE_SP.png b/assets/en/battle_pass/REWARD_RECEIVE_SP.png new file mode 100644 index 0000000000000000000000000000000000000000..dfcf5a76f7c56fe109130ac24c2ad42efe249ed0 GIT binary patch literal 11329 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 fKYmG|#|i`brU7pXJR=JJIH%&xYr?mqq><&C5a literal 0 HcmV?d00001 diff --git a/assets/jp/battle_pass/BATTLE_PASS_RED_DOT.png b/assets/jp/battle_pass/BATTLE_PASS_RED_DOT.png new file mode 100644 index 0000000000000000000000000000000000000000..6ce917a5c226beb5b0100b7c12e96c8688a60316 GIT binary patch literal 5534 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 vB5*|Dh`I(Zj_J+B7 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 N|Az7P3LX2W{{unz0Sf>C literal 0 HcmV?d00001 diff --git a/assets/jp/battle_pass/REWARD_RECEIVE_SP.png b/assets/jp/battle_pass/REWARD_RECEIVE_SP.png new file mode 100644 index 0000000000000000000000000000000000000000..8dc02620a96a50e7b82f3e250d651a87637ddf01 GIT binary patch literal 10165 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 literal 0 HcmV?d00001 diff --git a/assets/tw/battle_pass/BATTLE_PASS_RED_DOT.png b/assets/tw/battle_pass/BATTLE_PASS_RED_DOT.png new file mode 100644 index 0000000000000000000000000000000000000000..6ce917a5c226beb5b0100b7c12e96c8688a60316 GIT binary patch literal 5534 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 vB5*|Dh`I(Zj_J+B7 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 N|Az7P3LX2W{{unz0Sf>C literal 0 HcmV?d00001 diff --git a/module/battle_pass/assets.py b/module/battle_pass/assets.py index a960555a0..cab239b9b 100644 --- a/module/battle_pass/assets.py +++ b/module/battle_pass/assets.py @@ -4,6 +4,7 @@ from module.base.template import Template # This file was automatically generated by dev_tools.button_extract. # Don't modify it manually. -BATTLE_PASS_RED_DOT = Button(area={'cn': (623, 105, 629, 113), 'en': (623, 105, 629, 113), 'jp': (623, 105, 629, 113), 'tw': (623, 105, 629, 113)}, color={'cn': (202, 86, 66), 'en': (202, 86, 66), 'jp': (202, 86, 66), 'tw': (202, 86, 66)}, button={'cn': (623, 105, 629, 113), 'en': (623, 105, 629, 113), 'jp': (623, 105, 629, 113), 'tw': (623, 105, 629, 113)}, file={'cn': './assets/cn/battle_pass/BATTLE_PASS_RED_DOT.png', 'en': './assets/en/battle_pass/BATTLE_PASS_RED_DOT.png', 'jp': './assets/cn/battle_pass/BATTLE_PASS_RED_DOT.png', 'tw': './assets/cn/battle_pass/BATTLE_PASS_RED_DOT.png'}) -PURCHASE_POPUP = Button(area={'cn': (907, 204, 934, 229), 'en': (907, 204, 934, 229), 'jp': (907, 204, 934, 229), 'tw': (907, 204, 934, 229)}, color={'cn': (176, 130, 110), 'en': (176, 130, 110), 'jp': (176, 130, 110), 'tw': (176, 130, 110)}, button={'cn': (907, 204, 934, 229), 'en': (907, 204, 934, 229), 'jp': (907, 204, 934, 229), 'tw': (907, 204, 934, 229)}, file={'cn': './assets/cn/battle_pass/PURCHASE_POPUP.png', 'en': './assets/en/battle_pass/PURCHASE_POPUP.png', 'jp': './assets/cn/battle_pass/PURCHASE_POPUP.png', 'tw': './assets/cn/battle_pass/PURCHASE_POPUP.png'}) +BATTLE_PASS_RED_DOT = Button(area={'cn': (623, 105, 629, 113), 'en': (623, 105, 629, 113), 'jp': (623, 105, 629, 113), 'tw': (623, 105, 629, 113)}, color={'cn': (202, 86, 66), 'en': (202, 86, 66), 'jp': (202, 86, 66), 'tw': (202, 86, 66)}, button={'cn': (623, 105, 629, 113), 'en': (623, 105, 629, 113), 'jp': (623, 105, 629, 113), 'tw': (623, 105, 629, 113)}, file={'cn': './assets/cn/battle_pass/BATTLE_PASS_RED_DOT.png', 'en': './assets/en/battle_pass/BATTLE_PASS_RED_DOT.png', 'jp': './assets/jp/battle_pass/BATTLE_PASS_RED_DOT.png', 'tw': './assets/tw/battle_pass/BATTLE_PASS_RED_DOT.png'}) +PURCHASE_POPUP = Button(area={'cn': (907, 204, 934, 229), 'en': (907, 204, 934, 229), 'jp': (907, 204, 934, 229), 'tw': (907, 204, 934, 229)}, color={'cn': (176, 130, 110), 'en': (176, 130, 110), 'jp': (176, 130, 110), 'tw': (176, 130, 110)}, button={'cn': (907, 204, 934, 229), 'en': (907, 204, 934, 229), 'jp': (907, 204, 934, 229), 'tw': (907, 204, 934, 229)}, file={'cn': './assets/cn/battle_pass/PURCHASE_POPUP.png', 'en': './assets/en/battle_pass/PURCHASE_POPUP.png', 'jp': './assets/jp/battle_pass/PURCHASE_POPUP.png', 'tw': './assets/tw/battle_pass/PURCHASE_POPUP.png'}) REWARD_RECEIVE = Button(area={'cn': (1192, 520, 1255, 536), 'en': (1192, 522, 1254, 534), 'jp': (1192, 520, 1255, 536), 'tw': (1192, 520, 1255, 536)}, color={'cn': (191, 178, 163), 'en': (195, 182, 168), 'jp': (191, 178, 163), 'tw': (191, 178, 163)}, button={'cn': (1192, 520, 1255, 536), 'en': (1192, 522, 1254, 534), 'jp': (1192, 520, 1255, 536), 'tw': (1192, 520, 1255, 536)}, file={'cn': './assets/cn/battle_pass/REWARD_RECEIVE.png', 'en': './assets/en/battle_pass/REWARD_RECEIVE.png', 'jp': './assets/cn/battle_pass/REWARD_RECEIVE.png', 'tw': './assets/cn/battle_pass/REWARD_RECEIVE.png'}) +REWARD_RECEIVE_SP = Button(area={'cn': (1105, 579, 1184, 597), 'en': (1090, 580, 1197, 596), 'jp': (1091, 599, 1171, 618), 'tw': (1105, 579, 1184, 597)}, color={'cn': (178, 143, 126), 'en': (168, 129, 111), 'jp': (168, 127, 109), 'tw': (178, 143, 126)}, button={'cn': (1105, 579, 1184, 597), 'en': (1090, 580, 1197, 596), 'jp': (1091, 599, 1171, 618), 'tw': (1105, 579, 1184, 597)}, file={'cn': './assets/cn/battle_pass/REWARD_RECEIVE_SP.png', 'en': './assets/en/battle_pass/REWARD_RECEIVE_SP.png', 'jp': './assets/jp/battle_pass/REWARD_RECEIVE_SP.png', 'tw': './assets/cn/battle_pass/REWARD_RECEIVE_SP.png'}) diff --git a/module/battle_pass/battle_pass.py b/module/battle_pass/battle_pass.py index 5c371b80b..ac069eb63 100644 --- a/module/battle_pass/battle_pass.py +++ b/module/battle_pass/battle_pass.py @@ -72,6 +72,9 @@ class BattlePass(Combat, UI): if self.appear_then_click(REWARD_RECEIVE, offset=(20, 20), interval=2): confirm_timer.reset() continue + if self.appear_then_click(REWARD_RECEIVE_SP, offset=(20, 20), interval=2): + confirm_timer.reset() + continue if self.handle_battle_pass_popup(): confirm_timer.reset() continue From c5599fb011b1eac3804e42270179ba428005b6f1 Mon Sep 17 00:00:00 2001 From: LmeSzinc <37934724+LmeSzinc@users.noreply.github.com> Date: Mon, 6 Dec 2021 01:24:43 +0800 Subject: [PATCH 4/5] Fix: Screenshot retry decorator --- module/device/control.py | 4 ++-- module/device/screenshot.py | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/module/device/control.py b/module/device/control.py index af3ae4a97..bdd24ba0c 100644 --- a/module/device/control.py +++ b/module/device/control.py @@ -79,11 +79,11 @@ class Control(MiniTouch): else: self._click_adb(x, y) - @retry() + @retry(tries=10, delay=3, logger=logger) def _click_uiautomator2(self, x, y): self.device.click(int(x), int(y)) - @retry() + @retry(tries=10, delay=3, logger=logger) def _click_adb(self, x, y): self.adb_shell(['input', 'tap', str(x), str(y)]) diff --git a/module/device/screenshot.py b/module/device/screenshot.py index 51deca38d..5883873a7 100644 --- a/module/device/screenshot.py +++ b/module/device/screenshot.py @@ -6,7 +6,7 @@ from io import BytesIO from PIL import Image from cached_property import cached_property -from retrying import retry +from retry import retry from module.base.timer import Timer, timer from module.device.ascreencap import AScreenCap @@ -51,7 +51,7 @@ class Screenshot(AScreenCap): screenshot = self.adb_shell(['screencap', '-p']) return self._process_screenshot(screenshot) - # @retry(wait_fixed=5000, stop_max_attempt_number=10) + @retry(tries=10, delay=3, logger=logger) @timer def screenshot(self): """ From b6b17004071ac68c822d86b84b3df7c6c3c1604f Mon Sep 17 00:00:00 2001 From: LmeSzinc <37934724+LmeSzinc@users.noreply.github.com> Date: Mon, 6 Dec 2021 10:01:19 +0800 Subject: [PATCH 5/5] Fix: Replace retrying with retry --- module/device/control.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/module/device/control.py b/module/device/control.py index bdd24ba0c..4e6825862 100644 --- a/module/device/control.py +++ b/module/device/control.py @@ -1,7 +1,7 @@ import time from collections import deque -from retrying import retry +from retry import retry from module.base.timer import Timer from module.base.utils import *