diff --git a/assets/cn/template/TEMPLATE_SIREN_Compiler.gif b/assets/cn/template/TEMPLATE_SIREN_Compiler.gif new file mode 100644 index 000000000..a10542606 Binary files /dev/null and b/assets/cn/template/TEMPLATE_SIREN_Compiler.gif differ diff --git a/assets/cn/template/TEMPLATE_SIREN_PrinzEugen.gif b/assets/cn/template/TEMPLATE_SIREN_PrinzEugen.gif new file mode 100644 index 000000000..47618ef71 Binary files /dev/null and b/assets/cn/template/TEMPLATE_SIREN_PrinzEugen.gif differ diff --git a/assets/en/template/TEMPLATE_SIREN_Compiler.gif b/assets/en/template/TEMPLATE_SIREN_Compiler.gif new file mode 100644 index 000000000..a10542606 Binary files /dev/null and b/assets/en/template/TEMPLATE_SIREN_Compiler.gif differ diff --git a/assets/en/template/TEMPLATE_SIREN_PrinzEugen.gif b/assets/en/template/TEMPLATE_SIREN_PrinzEugen.gif new file mode 100644 index 000000000..47618ef71 Binary files /dev/null and b/assets/en/template/TEMPLATE_SIREN_PrinzEugen.gif differ diff --git a/assets/jp/template/TEMPLATE_SIREN_Compiler.gif b/assets/jp/template/TEMPLATE_SIREN_Compiler.gif new file mode 100644 index 000000000..a10542606 Binary files /dev/null and b/assets/jp/template/TEMPLATE_SIREN_Compiler.gif differ diff --git a/assets/jp/template/TEMPLATE_SIREN_PrinzEugen.gif b/assets/jp/template/TEMPLATE_SIREN_PrinzEugen.gif new file mode 100644 index 000000000..47618ef71 Binary files /dev/null and b/assets/jp/template/TEMPLATE_SIREN_PrinzEugen.gif differ diff --git a/assets/tw/template/TEMPLATE_SIREN_Compiler.gif b/assets/tw/template/TEMPLATE_SIREN_Compiler.gif new file mode 100644 index 000000000..a10542606 Binary files /dev/null and b/assets/tw/template/TEMPLATE_SIREN_Compiler.gif differ diff --git a/assets/tw/template/TEMPLATE_SIREN_PrinzEugen.gif b/assets/tw/template/TEMPLATE_SIREN_PrinzEugen.gif new file mode 100644 index 000000000..47618ef71 Binary files /dev/null and b/assets/tw/template/TEMPLATE_SIREN_PrinzEugen.gif differ diff --git a/campaign/event_20220428_cn/b1.py b/campaign/event_20220428_cn/b1.py index 65cf56229..a7d39e69d 100644 --- a/campaign/event_20220428_cn/b1.py +++ b/campaign/event_20220428_cn/b1.py @@ -38,6 +38,14 @@ MAP.weight_data = """ 50 50 50 50 50 50 50 50 """ MAP.spawn_data = [ + {'battle': 0, 'enemy': 4, 'siren': 1}, + {'battle': 1, 'enemy': 2}, + {'battle': 2, 'enemy': 4}, + {'battle': 3, 'enemy': 2}, + {'battle': 4, 'enemy': 4, 'boss': 1}, + {'battle': 5, 'enemy': 2}, +] +MAP.spawn_data_loop = [ {'battle': 0, 'enemy': 2, 'siren': 1}, {'battle': 1, 'enemy': 1}, {'battle': 2, 'enemy': 2}, @@ -68,6 +76,24 @@ class Config: MAP_HAS_MYSTERY = False # ===== End of generated config ===== + MAP_HAS_DECOY_ENEMY = True + INTERNAL_LINES_FIND_PEAKS_PARAMETERS = { + 'height': (120, 255 - 49), + 'width': (1.5, 10), + 'prominence': 10, + 'distance': 35, + } + EDGE_LINES_FIND_PEAKS_PARAMETERS = { + 'height': (255 - 49, 255), + 'prominence': 10, + 'distance': 50, + 'wlen': 1000 + } + HOMO_EDGE_COLOR_RANGE = (0, 49) + HOMO_EDGE_HOUGHLINES_THRESHOLD = 300 + MAP_SWIPE_MULTIPLY = 1.506 + MAP_SWIPE_MULTIPLY_MINITOUCH = 1.456 + class Campaign(CampaignBase): MAP = MAP diff --git a/campaign/event_20220428_cn/b2.py b/campaign/event_20220428_cn/b2.py index 70553b516..cd1f0a1fe 100644 --- a/campaign/event_20220428_cn/b2.py +++ b/campaign/event_20220428_cn/b2.py @@ -55,7 +55,7 @@ A7, B7, C7, D7, E7, F7, G7, H7, I7, \ class Config(ConfigBase): # ===== Start of generated config ===== - MAP_SIREN_TEMPLATE = ['CAlightning', 'sairenqianting_ii'] + MAP_SIREN_TEMPLATE = ['CAlightning', 'SS'] MOVABLE_ENEMY_TURN = (2,) MAP_HAS_SIREN = True MAP_HAS_MOVABLE_ENEMY = True @@ -65,6 +65,17 @@ class Config(ConfigBase): MAP_HAS_MYSTERY = False # ===== End of generated config ===== + MAP_ENEMY_GENRE_DETECTION_SCALING = { + 'CAlightning': 1.111, + 'BBlightning': 1.111, + 'SS': 1.111, + } + MAP_HAS_DECOY_ENEMY = False + MAP_WALK_USE_CURRENT_FLEET = True + MAP_ENSURE_EDGE_INSIGHT_CORNER = 'bottom-right' + MAP_SWIPE_MULTIPLY = 1.704 + MAP_SWIPE_MULTIPLY_MINITOUCH = 1.647 + class Campaign(CampaignBase): MAP = MAP diff --git a/campaign/event_20220428_cn/b3.py b/campaign/event_20220428_cn/b3.py index c626886ed..303f99c98 100644 --- a/campaign/event_20220428_cn/b3.py +++ b/campaign/event_20220428_cn/b3.py @@ -52,7 +52,7 @@ A9, B9, C9, D9, E9, F9, G9, H9, I9, \ class Config(ConfigBase): # ===== Start of generated config ===== - MAP_SIREN_TEMPLATE = ['sairenboss11'] + MAP_SIREN_TEMPLATE = ['Compiler'] MOVABLE_ENEMY_TURN = (2,) MAP_HAS_SIREN = True MAP_HAS_MOVABLE_ENEMY = True @@ -62,6 +62,28 @@ class Config(ConfigBase): MAP_HAS_MYSTERY = False # ===== End of generated config ===== + MAP_HAS_DECOY_ENEMY = False + INTERNAL_LINES_FIND_PEAKS_PARAMETERS = { + 'height': (120, 255 - 13), + 'width': (1.5, 10), + 'prominence': 10, + 'distance': 35, + } + EDGE_LINES_FIND_PEAKS_PARAMETERS = { + 'height': (255 - 13, 255), + 'prominence': 10, + 'distance': 50, + 'wlen': 1000 + } + INTERNAL_LINES_HOUGHLINES_THRESHOLD = 35 + EDGE_LINES_HOUGHLINES_THRESHOLD = 35 + HOMO_EDGE_COLOR_RANGE = (0, 13) + HOMO_EDGE_HOUGHLINES_THRESHOLD = 300 + MAP_WALK_USE_CURRENT_FLEET = True + MAP_ENSURE_EDGE_INSIGHT_CORNER = 'bottom' + MAP_SWIPE_MULTIPLY = 1.502 + MAP_SWIPE_MULTIPLY_MINITOUCH = 1.452 + class Campaign(CampaignBase): MAP = MAP diff --git a/campaign/event_20220428_cn/d1.py b/campaign/event_20220428_cn/d1.py index 070162e91..5e310e94e 100644 --- a/campaign/event_20220428_cn/d1.py +++ b/campaign/event_20220428_cn/d1.py @@ -38,6 +38,14 @@ MAP.weight_data = """ 50 50 50 50 50 50 50 50 """ MAP.spawn_data = [ + {'battle': 0, 'enemy': 4, 'siren': 2}, + {'battle': 1, 'enemy': 2}, + {'battle': 2, 'enemy': 4}, + {'battle': 3, 'enemy': 2}, + {'battle': 4, 'enemy': 4}, + {'battle': 5, 'enemy': 2, 'boss': 1}, +] +MAP.spawn_data_loop = [ {'battle': 0, 'enemy': 2, 'siren': 2}, {'battle': 1, 'enemy': 1}, {'battle': 2, 'enemy': 2}, @@ -68,6 +76,24 @@ class Config: MAP_HAS_MYSTERY = False # ===== End of generated config ===== + MAP_HAS_DECOY_ENEMY = True + INTERNAL_LINES_FIND_PEAKS_PARAMETERS = { + 'height': (120, 255 - 33), + 'width': (1.5, 10), + 'prominence': 10, + 'distance': 35, + } + EDGE_LINES_FIND_PEAKS_PARAMETERS = { + 'height': (255 - 33, 255), + 'prominence': 10, + 'distance': 50, + 'wlen': 1000 + } + HOMO_EDGE_COLOR_RANGE = (0, 33) + HOMO_EDGE_HOUGHLINES_THRESHOLD = 300 + MAP_SWIPE_MULTIPLY = 1.506 + MAP_SWIPE_MULTIPLY_MINITOUCH = 1.456 + class Campaign(CampaignBase): MAP = MAP diff --git a/campaign/event_20220428_cn/d2.py b/campaign/event_20220428_cn/d2.py index 8108af802..fe46f6075 100644 --- a/campaign/event_20220428_cn/d2.py +++ b/campaign/event_20220428_cn/d2.py @@ -56,7 +56,7 @@ A7, B7, C7, D7, E7, F7, G7, H7, I7, \ class Config(ConfigBase): # ===== Start of generated config ===== - MAP_SIREN_TEMPLATE = ['sairenqianting_ii', 'CAlightning', 'BBlightning'] + MAP_SIREN_TEMPLATE = ['SS', 'CAlightning', 'BBlightning'] MOVABLE_ENEMY_TURN = (2,) MAP_HAS_SIREN = True MAP_HAS_MOVABLE_ENEMY = True @@ -66,6 +66,17 @@ class Config(ConfigBase): MAP_HAS_MYSTERY = False # ===== End of generated config ===== + MAP_ENEMY_GENRE_DETECTION_SCALING = { + 'CAlightning': 1.111, + 'BBlightning': 1.111, + 'SS': 1.111, + } + MAP_HAS_DECOY_ENEMY = False + MAP_WALK_USE_CURRENT_FLEET = True + MAP_ENSURE_EDGE_INSIGHT_CORNER = 'bottom-right' + MAP_SWIPE_MULTIPLY = 1.704 + MAP_SWIPE_MULTIPLY_MINITOUCH = 1.647 + class Campaign(CampaignBase): MAP = MAP diff --git a/campaign/event_20220428_cn/d3.py b/campaign/event_20220428_cn/d3.py index 4a1351c78..88a431fb2 100644 --- a/campaign/event_20220428_cn/d3.py +++ b/campaign/event_20220428_cn/d3.py @@ -53,7 +53,7 @@ A9, B9, C9, D9, E9, F9, G9, H9, I9, \ class Config(ConfigBase): # ===== Start of generated config ===== - MAP_SIREN_TEMPLATE = ['sairenboss11'] + MAP_SIREN_TEMPLATE = ['Compiler'] MOVABLE_ENEMY_TURN = (2,) MAP_HAS_SIREN = True MAP_HAS_MOVABLE_ENEMY = True @@ -63,6 +63,28 @@ class Config(ConfigBase): MAP_HAS_MYSTERY = False # ===== End of generated config ===== + MAP_HAS_DECOY_ENEMY = False + INTERNAL_LINES_FIND_PEAKS_PARAMETERS = { + 'height': (120, 255 - 13), + 'width': (1.5, 10), + 'prominence': 10, + 'distance': 35, + } + EDGE_LINES_FIND_PEAKS_PARAMETERS = { + 'height': (255 - 13, 255), + 'prominence': 10, + 'distance': 50, + 'wlen': 1000 + } + INTERNAL_LINES_HOUGHLINES_THRESHOLD = 35 + EDGE_LINES_HOUGHLINES_THRESHOLD = 35 + HOMO_EDGE_COLOR_RANGE = (0, 13) + HOMO_EDGE_HOUGHLINES_THRESHOLD = 300 + MAP_WALK_USE_CURRENT_FLEET = True + MAP_ENSURE_EDGE_INSIGHT_CORNER = 'bottom' + MAP_SWIPE_MULTIPLY = 1.502 + MAP_SWIPE_MULTIPLY_MINITOUCH = 1.452 + class Campaign(CampaignBase): MAP = MAP diff --git a/dev_tools/map_extractor.py b/dev_tools/map_extractor.py index e6b6e50d3..a0f109d0d 100644 --- a/dev_tools/map_extractor.py +++ b/dev_tools/map_extractor.py @@ -160,6 +160,8 @@ DIC_SIREN_NAME_CHI_TO_ENG = { 'z2': 'Z2', 'laibixi': 'Leipzig', 'ougen': 'PrinzEugen', + 'sairenqianting_ii': 'SS', + 'sairenboss11': 'Compiler', } diff --git a/module/template/assets.py b/module/template/assets.py index 3db49293d..31d93f8d4 100644 --- a/module/template/assets.py +++ b/module/template/assets.py @@ -61,6 +61,7 @@ TEMPLATE_SIREN_Choukai = Template(file={'cn': './assets/cn/template/TEMPLATE_SIR TEMPLATE_SIREN_CL = Template(file={'cn': './assets/cn/template/TEMPLATE_SIREN_CL.gif', 'en': './assets/en/template/TEMPLATE_SIREN_CL.gif', 'jp': './assets/jp/template/TEMPLATE_SIREN_CL.gif', 'tw': './assets/tw/template/TEMPLATE_SIREN_CL.gif'}) TEMPLATE_SIREN_ClevelandIdol = Template(file={'cn': './assets/cn/template/TEMPLATE_SIREN_ClevelandIdol.gif', 'en': './assets/en/template/TEMPLATE_SIREN_ClevelandIdol.gif', 'jp': './assets/jp/template/TEMPLATE_SIREN_ClevelandIdol.gif', 'tw': './assets/tw/template/TEMPLATE_SIREN_ClevelandIdol.gif'}) TEMPLATE_SIREN_CLpurple = Template(file={'cn': './assets/cn/template/TEMPLATE_SIREN_CLpurple.gif', 'en': './assets/en/template/TEMPLATE_SIREN_CLpurple.gif', 'jp': './assets/jp/template/TEMPLATE_SIREN_CLpurple.gif', 'tw': './assets/tw/template/TEMPLATE_SIREN_CLpurple.gif'}) +TEMPLATE_SIREN_Compiler = Template(file={'cn': './assets/cn/template/TEMPLATE_SIREN_Compiler.gif', 'en': './assets/en/template/TEMPLATE_SIREN_Compiler.gif', 'jp': './assets/jp/template/TEMPLATE_SIREN_Compiler.gif', 'tw': './assets/tw/template/TEMPLATE_SIREN_Compiler.gif'}) TEMPLATE_SIREN_CV = Template(file={'cn': './assets/cn/template/TEMPLATE_SIREN_CV.gif', 'en': './assets/en/template/TEMPLATE_SIREN_CV.gif', 'jp': './assets/jp/template/TEMPLATE_SIREN_CV.gif', 'tw': './assets/tw/template/TEMPLATE_SIREN_CV.gif'}) TEMPLATE_SIREN_CVlightning = Template(file={'cn': './assets/cn/template/TEMPLATE_SIREN_CVlightning.gif', 'en': './assets/en/template/TEMPLATE_SIREN_CVlightning.gif', 'jp': './assets/jp/template/TEMPLATE_SIREN_CVlightning.gif', 'tw': './assets/tw/template/TEMPLATE_SIREN_CVlightning.gif'}) TEMPLATE_SIREN_CVpurple = Template(file={'cn': './assets/cn/template/TEMPLATE_SIREN_CVpurple.gif', 'en': './assets/en/template/TEMPLATE_SIREN_CVpurple.gif', 'jp': './assets/jp/template/TEMPLATE_SIREN_CVpurple.gif', 'tw': './assets/tw/template/TEMPLATE_SIREN_CVpurple.gif'}) @@ -110,6 +111,7 @@ TEMPLATE_SIREN_Nuremberg = Template(file={'cn': './assets/cn/template/TEMPLATE_S TEMPLATE_SIREN_NyotenguDOA = Template(file={'cn': './assets/cn/template/TEMPLATE_SIREN_NyotenguDOA.gif', 'en': './assets/en/template/TEMPLATE_SIREN_NyotenguDOA.gif', 'jp': './assets/jp/template/TEMPLATE_SIREN_NyotenguDOA.gif', 'tw': './assets/tw/template/TEMPLATE_SIREN_NyotenguDOA.gif'}) TEMPLATE_SIREN_PeterStrasser = Template(file={'cn': './assets/cn/template/TEMPLATE_SIREN_PeterStrasser.gif', 'en': './assets/en/template/TEMPLATE_SIREN_PeterStrasser.gif', 'jp': './assets/jp/template/TEMPLATE_SIREN_PeterStrasser.gif', 'tw': './assets/tw/template/TEMPLATE_SIREN_PeterStrasser.gif'}) TEMPLATE_SIREN_PrinceOfWales = Template(file={'cn': './assets/cn/template/TEMPLATE_SIREN_PrinceOfWales.gif', 'en': './assets/en/template/TEMPLATE_SIREN_PrinceOfWales.gif', 'jp': './assets/jp/template/TEMPLATE_SIREN_PrinceOfWales.gif', 'tw': './assets/tw/template/TEMPLATE_SIREN_PrinceOfWales.gif'}) +TEMPLATE_SIREN_PrinzEugen = Template(file={'cn': './assets/cn/template/TEMPLATE_SIREN_PrinzEugen.gif', 'en': './assets/en/template/TEMPLATE_SIREN_PrinzEugen.gif', 'jp': './assets/jp/template/TEMPLATE_SIREN_PrinzEugen.gif', 'tw': './assets/tw/template/TEMPLATE_SIREN_PrinzEugen.gif'}) TEMPLATE_SIREN_Renown = Template(file={'cn': './assets/cn/template/TEMPLATE_SIREN_Renown.gif', 'en': './assets/en/template/TEMPLATE_SIREN_Renown.gif', 'jp': './assets/jp/template/TEMPLATE_SIREN_Renown.gif', 'tw': './assets/tw/template/TEMPLATE_SIREN_Renown.gif'}) TEMPLATE_SIREN_Rodney = Template(file={'cn': './assets/cn/template/TEMPLATE_SIREN_Rodney.gif', 'en': './assets/en/template/TEMPLATE_SIREN_Rodney.gif', 'jp': './assets/jp/template/TEMPLATE_SIREN_Rodney.gif', 'tw': './assets/tw/template/TEMPLATE_SIREN_Rodney.gif'}) TEMPLATE_SIREN_RoonIdol = Template(file={'cn': './assets/cn/template/TEMPLATE_SIREN_RoonIdol.gif', 'en': './assets/en/template/TEMPLATE_SIREN_RoonIdol.gif', 'jp': './assets/jp/template/TEMPLATE_SIREN_RoonIdol.gif', 'tw': './assets/tw/template/TEMPLATE_SIREN_RoonIdol.gif'})