From c61581ee2565524097bcfac2e4fe3cff77c4cbb8 Mon Sep 17 00:00:00 2001 From: LmeSzinc <37934724+LmeSzinc@users.noreply.github.com> Date: Thu, 13 Aug 2026 18:41:00 +0800 Subject: [PATCH 1/4] Add: Event entrance of Depths of the Astrarium (event_20260813_cn) --- campaign/Readme.md | 5 +-- module/config/argument/args.json | 52 ++++++++++++++------------------ module/config/i18n/en-US.json | 2 +- module/config/i18n/ja-JP.json | 2 +- module/config/i18n/zh-CN.json | 2 +- module/config/i18n/zh-MIAO.json | 2 +- module/config/i18n/zh-TW.json | 4 +-- 7 files changed, 32 insertions(+), 37 deletions(-) diff --git a/campaign/Readme.md b/campaign/Readme.md index 0124d60d8..c4700378e 100644 --- a/campaign/Readme.md +++ b/campaign/Readme.md @@ -306,5 +306,6 @@ To add a new event, add a new row in here, and run `python -m module.config.conf | 20260625 | event 20260625 cn | Miracle by Midnight | 美梦巡演奇妙夜 | Miracle by Midnight | 幻夢のカヴァルカード | - | | 20260703 | coalition 20230323 | Frostfall | - | - | - | 極地風暴 | | 20260709 | event 20260625 cn | Miracle by Midnight | - | - | - | 美夢巡演奇秒夜 | -| 20260723 | coalition 20260723 | Authentic Horror Story | 怪谈纪实:逃离白夜山庄 | Authentic Horror Story | 怪談実録 | - | -| 20260813 | event 20260813 cn | 沉溺于星光之城 | 沉溺于星光之城 | - | - | - | +| 20260723 | coalition 20260723 | Authentic Horror Story | 怪谈纪实 | Authentic Horror Story | 怪談実録 | - | +| 20260806 | coalition 20260723 | Authentic Horror Story | - | - | - | 怪談紀實 | +| 20260813 | event 20260813 cn | Depths of the Astrarium | 沉溺于星光之城 | Depths of the Astrarium | 星の導く街 | - | diff --git a/module/config/argument/args.json b/module/config/argument/args.json index d8f08a3eb..01e5e1558 100644 --- a/module/config/argument/args.json +++ b/module/config/argument/args.json @@ -2406,10 +2406,10 @@ "event_20260813_cn" ], "option_en": [ - "event_20260625_cn" + "event_20260813_cn" ], "option_jp": [ - "event_20260625_cn" + "event_20260813_cn" ], "option_tw": [ "event_20260625_cn" @@ -2926,10 +2926,10 @@ "event_20260813_cn" ], "option_en": [ - "event_20260625_cn" + "event_20260813_cn" ], "option_jp": [ - "event_20260625_cn" + "event_20260813_cn" ], "option_tw": [ "event_20260625_cn" @@ -3878,10 +3878,10 @@ "event_20260813_cn" ], "option_en": [ - "event_20260625_cn" + "event_20260813_cn" ], "option_jp": [ - "event_20260625_cn" + "event_20260813_cn" ], "option_tw": [ "event_20260625_cn" @@ -4321,10 +4321,10 @@ "event_20260813_cn" ], "option_en": [ - "event_20260625_cn" + "event_20260813_cn" ], "option_jp": [ - "event_20260625_cn" + "event_20260813_cn" ], "option_tw": [ "event_20260625_cn" @@ -4764,10 +4764,10 @@ "event_20260813_cn" ], "option_en": [ - "event_20260625_cn" + "event_20260813_cn" ], "option_jp": [ - "event_20260625_cn" + "event_20260813_cn" ], "option_tw": [ "event_20260625_cn" @@ -6112,7 +6112,6 @@ "type": "state", "value": "campaign_main", "option": [ - "coalition_20230323", "coalition_20260723" ], "option_cn": [ @@ -6125,10 +6124,9 @@ "coalition_20260723" ], "option_tw": [ - "coalition_20230323" + "coalition_20260723" ], "option_bold": [ - "coalition_20230323", "coalition_20260723" ] }, @@ -6413,7 +6411,6 @@ "type": "state", "value": "campaign_main", "option": [ - "coalition_20230323", "coalition_20260723" ], "option_cn": [ @@ -6426,10 +6423,9 @@ "coalition_20260723" ], "option_tw": [ - "coalition_20230323" + "coalition_20260723" ], "option_bold": [ - "coalition_20230323", "coalition_20260723" ] }, @@ -7617,10 +7613,10 @@ "event_20260813_cn" ], "option_en": [ - "event_20260625_cn" + "event_20260813_cn" ], "option_jp": [ - "event_20260625_cn" + "event_20260813_cn" ], "option_tw": [ "event_20260625_cn" @@ -8077,10 +8073,10 @@ "event_20260813_cn" ], "option_en": [ - "event_20260625_cn" + "event_20260813_cn" ], "option_jp": [ - "event_20260625_cn" + "event_20260813_cn" ], "option_tw": [ "event_20260625_cn" @@ -8537,10 +8533,10 @@ "event_20260813_cn" ], "option_en": [ - "event_20260625_cn" + "event_20260813_cn" ], "option_jp": [ - "event_20260625_cn" + "event_20260813_cn" ], "option_tw": [ "event_20260625_cn" @@ -8997,10 +8993,10 @@ "event_20260813_cn" ], "option_en": [ - "event_20260625_cn" + "event_20260813_cn" ], "option_jp": [ - "event_20260625_cn" + "event_20260813_cn" ], "option_tw": [ "event_20260625_cn" @@ -9447,10 +9443,10 @@ "event_20260813_cn" ], "option_en": [ - "event_20260625_cn" + "event_20260813_cn" ], "option_jp": [ - "event_20260625_cn" + "event_20260813_cn" ], "option_tw": [ "event_20260625_cn" @@ -10167,7 +10163,6 @@ "type": "select", "value": "campaign_main", "option": [ - "coalition_20230323", "coalition_20260723" ], "option_cn": [ @@ -10180,10 +10175,9 @@ "coalition_20260723" ], "option_tw": [ - "coalition_20230323" + "coalition_20260723" ], "option_bold": [ - "coalition_20230323", "coalition_20260723" ] }, diff --git a/module/config/i18n/en-US.json b/module/config/i18n/en-US.json index 4da6f0d99..dc2a2a284 100644 --- a/module/config/i18n/en-US.json +++ b/module/config/i18n/en-US.json @@ -1181,7 +1181,7 @@ "event_20260417_cn": "Vacation Lane – Beachside Brilliance", "event_20260520_cn": "Alliance Before the Hagiobull", "event_20260625_cn": "Miracle by Midnight", - "event_20260813_cn": "沉溺于星光之城", + "event_20260813_cn": "Depths of the Astrarium", "raid_20200624": "Air Raid Drills with Essex Rerun", "raid_20210708": "Cross Wave rerun", "raid_20220127": "Mystery Investigation", diff --git a/module/config/i18n/ja-JP.json b/module/config/i18n/ja-JP.json index fcb890076..5dab2e8c6 100644 --- a/module/config/i18n/ja-JP.json +++ b/module/config/i18n/ja-JP.json @@ -1181,7 +1181,7 @@ "event_20260417_cn": "バケーションレーン・きらめく砂浜", "event_20260520_cn": "聖印前の同盟", "event_20260625_cn": "幻夢のカヴァルカード", - "event_20260813_cn": "沉溺于星光之城", + "event_20260813_cn": "星の導く街", "raid_20200624": "特別演習超空強襲波(復刻)", "raid_20210708": "交錯する新たな波 (復刻)", "raid_20220127": "秘密事件調査", diff --git a/module/config/i18n/zh-CN.json b/module/config/i18n/zh-CN.json index 3c18f44cb..b7d48cbbd 100644 --- a/module/config/i18n/zh-CN.json +++ b/module/config/i18n/zh-CN.json @@ -1095,7 +1095,7 @@ "coalition_20250626": "迷彩都市的寻踪者", "coalition_20251120": "DATE A LANE", "coalition_20260122": "光影风尚-拍摄进行时", - "coalition_20260723": "怪谈纪实:逃离白夜山庄", + "coalition_20260723": "怪谈纪实", "event_20200227_cn": "北境序曲", "event_20200312_cn": "复刻斯图尔特的硝烟", "event_20200326_cn": "微层混合", diff --git a/module/config/i18n/zh-MIAO.json b/module/config/i18n/zh-MIAO.json index 54065c8cb..929fc9c72 100644 --- a/module/config/i18n/zh-MIAO.json +++ b/module/config/i18n/zh-MIAO.json @@ -1181,7 +1181,7 @@ "event_20260417_cn": "Vacation Lane – Beachside Brilliance", "event_20260520_cn": "Alliance Before the Hagiobull", "event_20260625_cn": "Miracle by Midnight", - "event_20260813_cn": "沉溺于星光之城", + "event_20260813_cn": "Depths of the Astrarium", "raid_20200624": "Air Raid Drills with Essex Rerun", "raid_20210708": "Cross Wave rerun", "raid_20220127": "Mystery Investigation", diff --git a/module/config/i18n/zh-TW.json b/module/config/i18n/zh-TW.json index 4877bc34e..26b9afc91 100644 --- a/module/config/i18n/zh-TW.json +++ b/module/config/i18n/zh-TW.json @@ -1095,7 +1095,7 @@ "coalition_20250626": "迷彩都市的尋蹤者", "coalition_20251120": "DATE A LANE", "coalition_20260122": "光影風尚-拍攝進行時", - "coalition_20260723": "Authentic Horror Story", + "coalition_20260723": "怪談紀實", "event_20200227_cn": "Northern Overture", "event_20200312_cn": "斯圖爾特的硝煙", "event_20200326_cn": "Microlayer Medley", @@ -1181,7 +1181,7 @@ "event_20260417_cn": "假日航線閃耀海濱", "event_20260520_cn": "聖印前的同盟", "event_20260625_cn": "美夢巡演奇秒夜", - "event_20260813_cn": "沉溺于星光之城", + "event_20260813_cn": "Depths of the Astrarium", "raid_20200624": "特別演習埃塞克斯級(復刻)", "raid_20210708": "復刻穿越彼方的水線", "raid_20220127": "演習神秘事件調查", From a2d5bce7c22f2b656f2a31e41cab5fc65184795b Mon Sep 17 00:00:00 2001 From: LmeSzinc <37934724+LmeSzinc@users.noreply.github.com> Date: Thu, 13 Aug 2026 19:18:47 +0800 Subject: [PATCH 2/4] Add: chapter AC --- campaign/event_20260813_cn/a1.py | 22 +++++++++++++++++++--- campaign/event_20260813_cn/a2.py | 7 +------ campaign/event_20260813_cn/a3.py | 13 ++++++------- campaign/event_20260813_cn/c1.py | 22 +++++++++++++++++++--- campaign/event_20260813_cn/c2.py | 7 +------ campaign/event_20260813_cn/c3.py | 13 ++++++------- 6 files changed, 52 insertions(+), 32 deletions(-) diff --git a/campaign/event_20260813_cn/a1.py b/campaign/event_20260813_cn/a1.py index a99d6477f..96b97f890 100644 --- a/campaign/event_20260813_cn/a1.py +++ b/campaign/event_20260813_cn/a1.py @@ -44,7 +44,7 @@ class Config: # ===== Start of generated config ===== - MAP_SIREN_TEMPLATE = ['emotion_qz'] + MAP_SIREN_TEMPLATE = [] MOVABLE_ENEMY_TURN = (2,) MAP_HAS_SIREN = True MAP_HAS_MOVABLE_ENEMY = True @@ -52,12 +52,28 @@ class Config: MAP_HAS_FLEET_STEP = True MAP_HAS_AMBUSH = False MAP_HAS_MYSTERY = False + # ===== End of generated config ===== + MAP_CHAPTER_SWITCH_20241219 = True STAGE_ENTRANCE = ['half', '20240725'] MAP_HAS_MODE_SWITCH = True STAGE_INCREASE_AB = True - MAP_WALK_USE_CURRENT_FLEET = True - # ===== End of generated config ===== + MAP_SIREN_HAS_BOSS_ICON_SMALL = True + INTERNAL_LINES_FIND_PEAKS_PARAMETERS = { + 'height': (80, 255 - 17), + 'width': (0.9, 10), + 'prominence': 10, + 'distance': 35, + } + EDGE_LINES_FIND_PEAKS_PARAMETERS = { + 'height': (255 - 17, 255), + 'prominence': 10, + 'distance': 50, + 'wlen': 1000 + } + MAP_SWIPE_MULTIPLY = (1.207, 1.229) + MAP_SWIPE_MULTIPLY_MINITOUCH = (1.167, 1.189) + MAP_SWIPE_MULTIPLY_MAATOUCH = (1.133, 1.153) class Campaign(CampaignBase): diff --git a/campaign/event_20260813_cn/a2.py b/campaign/event_20260813_cn/a2.py index d9b7fbea8..93031e569 100644 --- a/campaign/event_20260813_cn/a2.py +++ b/campaign/event_20260813_cn/a2.py @@ -45,7 +45,7 @@ class Config(ConfigBase): # ===== Start of generated config ===== - MAP_SIREN_TEMPLATE = ['emotion_qz'] + MAP_SIREN_TEMPLATE = [] MOVABLE_ENEMY_TURN = (2,) MAP_HAS_SIREN = True MAP_HAS_MOVABLE_ENEMY = True @@ -53,11 +53,6 @@ class Config(ConfigBase): MAP_HAS_FLEET_STEP = True MAP_HAS_AMBUSH = False MAP_HAS_MYSTERY = False - MAP_CHAPTER_SWITCH_20241219 = True - STAGE_ENTRANCE = ['half', '20240725'] - MAP_HAS_MODE_SWITCH = True - STAGE_INCREASE_AB = True - MAP_WALK_USE_CURRENT_FLEET = True # ===== End of generated config ===== diff --git a/campaign/event_20260813_cn/a3.py b/campaign/event_20260813_cn/a3.py index ddf64f97c..6777b3ad7 100644 --- a/campaign/event_20260813_cn/a3.py +++ b/campaign/event_20260813_cn/a3.py @@ -6,7 +6,7 @@ MAP = CampaignMap('A3') MAP.shape = 'G9' -MAP.camera_data = ['D2', 'D6', 'D7'] +MAP.camera_data = ['D2', 'D4', 'D7'] MAP.camera_data_spawn_point = ['D7'] MAP.map_data = """ -- ME ++ ++ ++ ME -- @@ -51,7 +51,7 @@ class Config(ConfigBase): # ===== Start of generated config ===== - MAP_SIREN_TEMPLATE = ['emotion_qz'] + MAP_SIREN_TEMPLATE = [] MOVABLE_ENEMY_TURN = (2,) MAP_HAS_SIREN = True MAP_HAS_MOVABLE_ENEMY = True @@ -59,13 +59,12 @@ class Config(ConfigBase): MAP_HAS_FLEET_STEP = True MAP_HAS_AMBUSH = False MAP_HAS_MYSTERY = False - MAP_CHAPTER_SWITCH_20241219 = True - STAGE_ENTRANCE = ['half', '20240725'] - MAP_HAS_MODE_SWITCH = True - STAGE_INCREASE_AB = True - MAP_WALK_USE_CURRENT_FLEET = True # ===== End of generated config ===== + MAP_SWIPE_MULTIPLY = (1.007, 1.026) + MAP_SWIPE_MULTIPLY_MINITOUCH = (0.974, 0.992) + MAP_SWIPE_MULTIPLY_MAATOUCH = (0.946, 0.963) + class Campaign(CampaignBase): MAP = MAP diff --git a/campaign/event_20260813_cn/c1.py b/campaign/event_20260813_cn/c1.py index a254a0943..ec3cb78c6 100644 --- a/campaign/event_20260813_cn/c1.py +++ b/campaign/event_20260813_cn/c1.py @@ -44,7 +44,7 @@ class Config: # ===== Start of generated config ===== - MAP_SIREN_TEMPLATE = ['emotion_qz'] + MAP_SIREN_TEMPLATE = [] MOVABLE_ENEMY_TURN = (2,) MAP_HAS_SIREN = True MAP_HAS_MOVABLE_ENEMY = True @@ -52,12 +52,28 @@ class Config: MAP_HAS_FLEET_STEP = True MAP_HAS_AMBUSH = False MAP_HAS_MYSTERY = False + # ===== End of generated config ===== + MAP_CHAPTER_SWITCH_20241219 = True STAGE_ENTRANCE = ['half', '20240725'] MAP_HAS_MODE_SWITCH = True STAGE_INCREASE_AB = True - MAP_WALK_USE_CURRENT_FLEET = True - # ===== End of generated config ===== + MAP_SIREN_HAS_BOSS_ICON_SMALL = True + INTERNAL_LINES_FIND_PEAKS_PARAMETERS = { + 'height': (80, 255 - 17), + 'width': (0.9, 10), + 'prominence': 10, + 'distance': 35, + } + EDGE_LINES_FIND_PEAKS_PARAMETERS = { + 'height': (255 - 17, 255), + 'prominence': 10, + 'distance': 50, + 'wlen': 1000 + } + MAP_SWIPE_MULTIPLY = (1.207, 1.229) + MAP_SWIPE_MULTIPLY_MINITOUCH = (1.167, 1.189) + MAP_SWIPE_MULTIPLY_MAATOUCH = (1.133, 1.153) class Campaign(CampaignBase): diff --git a/campaign/event_20260813_cn/c2.py b/campaign/event_20260813_cn/c2.py index 3cd3afd64..7dcea24b9 100644 --- a/campaign/event_20260813_cn/c2.py +++ b/campaign/event_20260813_cn/c2.py @@ -45,7 +45,7 @@ class Config(ConfigBase): # ===== Start of generated config ===== - MAP_SIREN_TEMPLATE = ['emotion_qz'] + MAP_SIREN_TEMPLATE = [] MOVABLE_ENEMY_TURN = (2,) MAP_HAS_SIREN = True MAP_HAS_MOVABLE_ENEMY = True @@ -53,11 +53,6 @@ class Config(ConfigBase): MAP_HAS_FLEET_STEP = True MAP_HAS_AMBUSH = False MAP_HAS_MYSTERY = False - MAP_CHAPTER_SWITCH_20241219 = True - STAGE_ENTRANCE = ['half', '20240725'] - MAP_HAS_MODE_SWITCH = True - STAGE_INCREASE_AB = True - MAP_WALK_USE_CURRENT_FLEET = True # ===== End of generated config ===== diff --git a/campaign/event_20260813_cn/c3.py b/campaign/event_20260813_cn/c3.py index aa3539669..5f7bb4772 100644 --- a/campaign/event_20260813_cn/c3.py +++ b/campaign/event_20260813_cn/c3.py @@ -6,7 +6,7 @@ MAP = CampaignMap('C3') MAP.shape = 'G9' -MAP.camera_data = ['D2', 'D6', 'D7'] +MAP.camera_data = ['D2', 'D4', 'D7'] MAP.camera_data_spawn_point = ['D7'] MAP.map_data = """ -- ME ++ ++ ++ ME -- @@ -52,7 +52,7 @@ class Config(ConfigBase): # ===== Start of generated config ===== - MAP_SIREN_TEMPLATE = ['emotion_qz'] + MAP_SIREN_TEMPLATE = [] MOVABLE_ENEMY_TURN = (2,) MAP_HAS_SIREN = True MAP_HAS_MOVABLE_ENEMY = True @@ -60,13 +60,12 @@ class Config(ConfigBase): MAP_HAS_FLEET_STEP = True MAP_HAS_AMBUSH = False MAP_HAS_MYSTERY = False - MAP_CHAPTER_SWITCH_20241219 = True - STAGE_ENTRANCE = ['half', '20240725'] - MAP_HAS_MODE_SWITCH = True - STAGE_INCREASE_AB = True - MAP_WALK_USE_CURRENT_FLEET = True # ===== End of generated config ===== + MAP_SWIPE_MULTIPLY = (1.007, 1.026) + MAP_SWIPE_MULTIPLY_MINITOUCH = (0.974, 0.992) + MAP_SWIPE_MULTIPLY_MAATOUCH = (0.946, 0.963) + class Campaign(CampaignBase): MAP = MAP From ca98915807edd1875c833d7cb867edba8b1cda9a Mon Sep 17 00:00:00 2001 From: LmeSzinc <37934724+LmeSzinc@users.noreply.github.com> Date: Thu, 13 Aug 2026 19:48:08 +0800 Subject: [PATCH 3/4] Add: chapter BD --- .../TEMPLATE_SIREN_BonhommeRichard_BB.gif | Bin 0 -> 2205 bytes .../TEMPLATE_SIREN_BonhommeRichard_CV.gif | Bin 0 -> 3276 bytes .../TEMPLATE_SIREN_BonhommeRichard_BB.gif | Bin 0 -> 2205 bytes .../TEMPLATE_SIREN_BonhommeRichard_CV.gif | Bin 0 -> 3276 bytes .../TEMPLATE_SIREN_BonhommeRichard_BB.gif | Bin 0 -> 2205 bytes .../TEMPLATE_SIREN_BonhommeRichard_CV.gif | Bin 0 -> 3276 bytes .../TEMPLATE_SIREN_BonhommeRichard_BB.gif | Bin 0 -> 2205 bytes .../TEMPLATE_SIREN_BonhommeRichard_CV.gif | Bin 0 -> 3276 bytes campaign/event_20260813_cn/b1.py | 23 +++++++++++++++--- campaign/event_20260813_cn/b2.py | 11 +++------ campaign/event_20260813_cn/b3.py | 9 ++----- campaign/event_20260813_cn/d1.py | 23 +++++++++++++++--- campaign/event_20260813_cn/d2.py | 11 +++------ campaign/event_20260813_cn/d3.py | 9 ++----- dev_tools/map_extractor.py | 5 ++++ module/template/assets.py | 2 ++ 16 files changed, 57 insertions(+), 36 deletions(-) create mode 100644 assets/cn/template/TEMPLATE_SIREN_BonhommeRichard_BB.gif create mode 100644 assets/cn/template/TEMPLATE_SIREN_BonhommeRichard_CV.gif create mode 100644 assets/en/template/TEMPLATE_SIREN_BonhommeRichard_BB.gif create mode 100644 assets/en/template/TEMPLATE_SIREN_BonhommeRichard_CV.gif create mode 100644 assets/jp/template/TEMPLATE_SIREN_BonhommeRichard_BB.gif create mode 100644 assets/jp/template/TEMPLATE_SIREN_BonhommeRichard_CV.gif create mode 100644 assets/tw/template/TEMPLATE_SIREN_BonhommeRichard_BB.gif create mode 100644 assets/tw/template/TEMPLATE_SIREN_BonhommeRichard_CV.gif diff --git a/assets/cn/template/TEMPLATE_SIREN_BonhommeRichard_BB.gif b/assets/cn/template/TEMPLATE_SIREN_BonhommeRichard_BB.gif new file mode 100644 index 0000000000000000000000000000000000000000..05d155559295e7e43c240ee75645e0f8604d2f65 GIT binary patch literal 2205 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 AtN;K2 literal 0 HcmV?d00001 diff --git a/assets/en/template/TEMPLATE_SIREN_BonhommeRichard_BB.gif b/assets/en/template/TEMPLATE_SIREN_BonhommeRichard_BB.gif new file mode 100644 index 0000000000000000000000000000000000000000..05d155559295e7e43c240ee75645e0f8604d2f65 GIT binary patch literal 2205 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 AtN;K2 literal 0 HcmV?d00001 diff --git a/assets/jp/template/TEMPLATE_SIREN_BonhommeRichard_BB.gif b/assets/jp/template/TEMPLATE_SIREN_BonhommeRichard_BB.gif new file mode 100644 index 0000000000000000000000000000000000000000..05d155559295e7e43c240ee75645e0f8604d2f65 GIT binary patch literal 2205 zcmeIz|4-6+90%}^fr)8F_$4fl6c91L3w}2P1wlha^iYOvqD_ZH9xnkxIXdbavX5|lBCiiY`?sj*(pWE(Uf5CIl?fG~yA|nC< z(^1f2NCH7dqj6_v=j+$6+uPfpKY!lb+}zmM`1tYT`uh6X+S=Q>}92gi- zC=~tu{kL!5zIE%CTrThJ?Ul)7-QC??U0od=9XD>=Xm4+CYinz5ZIw!;EiElgO-;46 zwKX+0)z#Hvu~;M$35CL|SFcu7R9v}orL3&1w6yf{<;#~YT`DXrEGQ_rc=2L>etuqF zUT$t~PEO8+3m3Apv$L|YGBYy;0s)`T&&bF~PfzFZcxh>ADJdyjE;l(jIWaLYAt50? zK0Yokj?HGr#>U3P#6(9&vskRCsHn)uNG6j>r_*UPT3A>Zg+e)f`t+$&r$RzPf`Wnq z0|NsB0{s2`{rvoVeSOJfvX76Cx3{;KmzSrfr-z4!ySuxao13ev>&cTRi9{lSKyY$$ z!sGE+EY`un0fWKV+uI*Ib`1LezJmrFjTSNVg!phOo9^S`1v4=kA;&E^!VyGs`xfup zOdy02D($}JgR82=p&^JD*N3?2E6|W1v2in)(28-bL20sIxZitHyR|~7wD!q<4qv9? zSvEv#YYs2Y?6)e%$R(u`5~&Y*rVc^1(A1O}8OJtEDMgjyqsd+5yZg*y51S$!R7lP~ zTHVnTODyUDQBTuDwfbJk$!b;%YB(qD173gqWIZ^ z#+#wX$;zn`Ggdn>vQ@?%uDQ$iKTcp9IC_hA98;nB>63o=6%3Ad^Ctanj>2W>wbEY* zhwLB14tU9m=`1NOL6={9A9on-(`f1d-S4sFItfdCU#>Rj< z0G*+spf#bKuk$V2~eiExVWgO2v`G@0mJ}b{t=h+=g*%zckb-jvp|{D)YLs_l9G}DG#n0R zPZ>bWnKNhhlwmL!5fKppn(**&U=5W@1>A&&h5~DXgM$G#f3b!{BK-?DE-o%W9A{@| z0L`v4Xf)c^))s|AA(6=MU~d1#2tbcYr9)T-3~qB260A!Fk2}fPtA^wcSk_Hf26%&W z(8DUb*foWV6+w**EZER;R|rvuz=L2@92o~sm?f!ncSK>oA~3m{Z7sy3)L?~C8iQjM z41VN?26l0;)2tN&hLIybz^eCSut?Si4(*YRU-`}ePex%Nt$fk)vVE@~N%4HGjEiF; z-~>ER6|n4luno_UO{K#g0zIRXzJXugsaN@)XHk+NFpP!ePmy?r| zot@2Mv5p@gww3>`b9h$YipUlar&PqrJU7i9{k2 ziFiET&d$!p#>U#(+S1a}#KZ)H!9YLHCvyS9_TD6VT54oOGTqCassr2Jh6wNA`UJ3` z>kmu*@FtM{Hngu}g<45N7@!PH^m#o-wp2=sU`Do z%ssBBqrS^&ub~k-ii5!r#jS2fu9r?ODq@?+LGCzwI7^u6lpau_8h!Ebnt!mLH3Y%p zQ2VTPYnb(yE~9<8945rV^O0yH=IB^p_XG2gykn4L1{ybUI#j;FB(okfg-&wSZ2B0TLM~WmRH-35WmmdY1t)z?b#)bs)=| zH*a3OdIfMz-4S~4EQoKG6G})tN>GP z+_(W)>F@9F?d=7!?3e;5X>4rNY9f(Hc0dt{L_(oZAQ15Re89?u3m49xKVMN%aqir? z^73*nmkXdNDJl66%H-ze?uO>rv13P$965aWu-2O0&}fxOOiWBjNYE-19Uc8Yf(9t# z;NSqD(JG@Q#>&bHhr^kfnVFiJ0&B2X>?iYR|G$d>Jq*jF(vC{LE&?Kt)A}Bn8U_>$ zaU!sEq%mH-`u*E{v0W&4?c1;UjCd1r!P?4L$#RWl2uH=tF3HnFyXH*EitAx=0gj>O zP&#!)%^rEiv^@etbT_qdws)@>f)TSeF(e*}5?z7%N$Ha0f2Q3B|A{rdIt^0GEccF>ranb~nesZ?s+0BC57WO#TO&~fL^ouQ$j z!NI{>w{8JIfF7Vr03bV2vQs3@&CP%jP$c#B^}87XQ352XtgHlvT)cR(tgP(p*|Q)} z03D}KpVrn%VPWBq0%bQHzzq;6yWIeF0@7rsO8^@2@$tZo*w|PQC_8lgyFdvJ4*sti z#l^+tN137pMB6B~wzi;AfF3_L%BMgTK*M`fE#<-Z2tA0bk?Yp&({m0lSW#6f;QCk- z-U~%v0w(DEhGw$sZ%J)b*6QXv1;XgJ!M~any&%$KKeu73Who8(OL}Gri)wC;;IhPn zrD`dz=Z*3$jj1YTl|2$i&6AalgXEH^UbN5SI3vO{g;;-HJm%0_g$^j`a+y zvj4l6u=dwvLw1&WrZ=_`AJIWh+^d&>@;}`zz#40mIA7&cY5ixpMiyj-5XD_&*RH>! zJWF^={7%{G&*70s8K21?m^#dMeVf_PV`v*#s8UgBJxU3_Xig?$p AtN;K2 literal 0 HcmV?d00001 diff --git a/assets/tw/template/TEMPLATE_SIREN_BonhommeRichard_BB.gif b/assets/tw/template/TEMPLATE_SIREN_BonhommeRichard_BB.gif new file mode 100644 index 0000000000000000000000000000000000000000..05d155559295e7e43c240ee75645e0f8604d2f65 GIT binary patch literal 2205 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 AtN;K2 literal 0 HcmV?d00001 diff --git a/campaign/event_20260813_cn/b1.py b/campaign/event_20260813_cn/b1.py index 180574964..36b385e4c 100644 --- a/campaign/event_20260813_cn/b1.py +++ b/campaign/event_20260813_cn/b1.py @@ -6,7 +6,7 @@ MAP = CampaignMap('B1') MAP.shape = 'I7' MAP.camera_data = ['D2', 'D5', 'F2', 'F5'] -MAP.camera_data_spawn_point = ['D2', 'F2'] +MAP.camera_data_spawn_point = ['F2', 'D2'] MAP.map_data = """ ME ++ -- SP -- SP -- ++ ++ -- -- -- -- -- -- -- ME ++ @@ -45,7 +45,7 @@ class Config: # ===== Start of generated config ===== - MAP_SIREN_TEMPLATE = ['haorenlichade_m_zhanlie'] + MAP_SIREN_TEMPLATE = ['BonhommeRichard_BB', 'BonhommeRichard_CV'] MOVABLE_ENEMY_TURN = (2,) MAP_HAS_SIREN = True MAP_HAS_MOVABLE_ENEMY = True @@ -53,12 +53,29 @@ class Config: MAP_HAS_FLEET_STEP = True MAP_HAS_AMBUSH = False MAP_HAS_MYSTERY = False + # ===== End of generated config ===== + MAP_CHAPTER_SWITCH_20241219 = True STAGE_ENTRANCE = ['half', '20240725'] MAP_HAS_MODE_SWITCH = True STAGE_INCREASE_AB = True + MAP_SIREN_HAS_BOSS_ICON_SMALL = True MAP_WALK_USE_CURRENT_FLEET = True - # ===== End of generated config ===== + INTERNAL_LINES_FIND_PEAKS_PARAMETERS = { + 'height': (80, 255 - 17), + 'width': (0.9, 10), + 'prominence': 10, + 'distance': 35, + } + EDGE_LINES_FIND_PEAKS_PARAMETERS = { + 'height': (255 - 17, 255), + 'prominence': 10, + 'distance': 50, + 'wlen': 1000 + } + MAP_SWIPE_MULTIPLY = (1.136, 1.158) + MAP_SWIPE_MULTIPLY_MINITOUCH = (1.099, 1.119) + MAP_SWIPE_MULTIPLY_MAATOUCH = (1.067, 1.086) class Campaign(CampaignBase): diff --git a/campaign/event_20260813_cn/b2.py b/campaign/event_20260813_cn/b2.py index 7245473c4..f8df2cecb 100644 --- a/campaign/event_20260813_cn/b2.py +++ b/campaign/event_20260813_cn/b2.py @@ -6,8 +6,8 @@ MAP = CampaignMap('B2') MAP.shape = 'J8' -MAP.camera_data = ['D2', 'D6', 'G2', 'G6'] -MAP.camera_data_spawn_point = ['D2'] +MAP.camera_data = ['D3', 'D6', 'G2', 'G5'] +MAP.camera_data_spawn_point = ['D3'] MAP.map_data = """ ++ ++ ++ -- Me ++ Me ++ ME -- ++ -- SP -- -- -- -- -- -- ME @@ -49,7 +49,7 @@ class Config(ConfigBase): # ===== Start of generated config ===== - MAP_SIREN_TEMPLATE = ['haorenlichade_m_zhanlie'] + MAP_SIREN_TEMPLATE = ['BonhommeRichard_BB', 'BonhommeRichard_CV'] MOVABLE_ENEMY_TURN = (2,) MAP_HAS_SIREN = True MAP_HAS_MOVABLE_ENEMY = True @@ -57,11 +57,6 @@ class Config(ConfigBase): MAP_HAS_FLEET_STEP = True MAP_HAS_AMBUSH = False MAP_HAS_MYSTERY = False - MAP_CHAPTER_SWITCH_20241219 = True - STAGE_ENTRANCE = ['half', '20240725'] - MAP_HAS_MODE_SWITCH = True - STAGE_INCREASE_AB = True - MAP_WALK_USE_CURRENT_FLEET = True # ===== End of generated config ===== diff --git a/campaign/event_20260813_cn/b3.py b/campaign/event_20260813_cn/b3.py index e1ac8bc99..5dcf4157f 100644 --- a/campaign/event_20260813_cn/b3.py +++ b/campaign/event_20260813_cn/b3.py @@ -7,7 +7,7 @@ MAP = CampaignMap('B3') MAP.shape = 'I9' MAP.camera_data = ['D4', 'D6', 'F4', 'F6'] -MAP.camera_data_spawn_point = ['F4', 'D4'] +MAP.camera_data_spawn_point = ['D4'] MAP.map_data = """ ++ ++ ++ -- ++ -- ++ ++ ++ -- ++ -- ++ ++ ++ -- ++ -- @@ -52,7 +52,7 @@ class Config(ConfigBase): # ===== Start of generated config ===== - MAP_SIREN_TEMPLATE = ['haorenlichade_m_zhanlie'] + MAP_SIREN_TEMPLATE = ['BonhommeRichard_BB', 'BonhommeRichard_CV'] MOVABLE_ENEMY_TURN = (2,) MAP_HAS_SIREN = True MAP_HAS_MOVABLE_ENEMY = True @@ -60,11 +60,6 @@ class Config(ConfigBase): MAP_HAS_FLEET_STEP = True MAP_HAS_AMBUSH = False MAP_HAS_MYSTERY = False - MAP_CHAPTER_SWITCH_20241219 = True - STAGE_ENTRANCE = ['half', '20240725'] - MAP_HAS_MODE_SWITCH = True - STAGE_INCREASE_AB = True - MAP_WALK_USE_CURRENT_FLEET = True # ===== End of generated config ===== diff --git a/campaign/event_20260813_cn/d1.py b/campaign/event_20260813_cn/d1.py index bbf908f5b..6439e8fe1 100644 --- a/campaign/event_20260813_cn/d1.py +++ b/campaign/event_20260813_cn/d1.py @@ -6,7 +6,7 @@ MAP = CampaignMap('D1') MAP.shape = 'I7' MAP.camera_data = ['D2', 'D5', 'F2', 'F5'] -MAP.camera_data_spawn_point = ['D2', 'F2'] +MAP.camera_data_spawn_point = ['F2', 'D2'] MAP.map_data = """ ME ++ -- SP -- SP -- ++ ++ -- -- -- -- -- -- -- ME ++ @@ -45,7 +45,7 @@ class Config: # ===== Start of generated config ===== - MAP_SIREN_TEMPLATE = ['haorenlichade_m_zhanlie'] + MAP_SIREN_TEMPLATE = ['BonhommeRichard_BB', 'BonhommeRichard_CV'] MOVABLE_ENEMY_TURN = (2,) MAP_HAS_SIREN = True MAP_HAS_MOVABLE_ENEMY = True @@ -53,12 +53,29 @@ class Config: MAP_HAS_FLEET_STEP = True MAP_HAS_AMBUSH = False MAP_HAS_MYSTERY = False + # ===== End of generated config ===== + MAP_CHAPTER_SWITCH_20241219 = True STAGE_ENTRANCE = ['half', '20240725'] MAP_HAS_MODE_SWITCH = True STAGE_INCREASE_AB = True + MAP_SIREN_HAS_BOSS_ICON_SMALL = True MAP_WALK_USE_CURRENT_FLEET = True - # ===== End of generated config ===== + INTERNAL_LINES_FIND_PEAKS_PARAMETERS = { + 'height': (80, 255 - 17), + 'width': (0.9, 10), + 'prominence': 10, + 'distance': 35, + } + EDGE_LINES_FIND_PEAKS_PARAMETERS = { + 'height': (255 - 17, 255), + 'prominence': 10, + 'distance': 50, + 'wlen': 1000 + } + MAP_SWIPE_MULTIPLY = (1.136, 1.158) + MAP_SWIPE_MULTIPLY_MINITOUCH = (1.099, 1.119) + MAP_SWIPE_MULTIPLY_MAATOUCH = (1.067, 1.086) class Campaign(CampaignBase): diff --git a/campaign/event_20260813_cn/d2.py b/campaign/event_20260813_cn/d2.py index c8053201c..18c58eda7 100644 --- a/campaign/event_20260813_cn/d2.py +++ b/campaign/event_20260813_cn/d2.py @@ -6,8 +6,8 @@ MAP = CampaignMap('D2') MAP.shape = 'J8' -MAP.camera_data = ['D2', 'D6', 'G2', 'G6'] -MAP.camera_data_spawn_point = ['D2'] +MAP.camera_data = ['D3', 'D6', 'G2', 'G5'] +MAP.camera_data_spawn_point = ['D3'] MAP.map_data = """ ++ ++ ++ -- Me ++ Me ++ ME -- ++ -- SP -- -- -- -- -- -- ME @@ -50,7 +50,7 @@ class Config(ConfigBase): # ===== Start of generated config ===== - MAP_SIREN_TEMPLATE = ['haorenlichade_m_zhanlie'] + MAP_SIREN_TEMPLATE = ['BonhommeRichard_BB', 'BonhommeRichard_CV'] MOVABLE_ENEMY_TURN = (2,) MAP_HAS_SIREN = True MAP_HAS_MOVABLE_ENEMY = True @@ -58,11 +58,6 @@ class Config(ConfigBase): MAP_HAS_FLEET_STEP = True MAP_HAS_AMBUSH = False MAP_HAS_MYSTERY = False - MAP_CHAPTER_SWITCH_20241219 = True - STAGE_ENTRANCE = ['half', '20240725'] - MAP_HAS_MODE_SWITCH = True - STAGE_INCREASE_AB = True - MAP_WALK_USE_CURRENT_FLEET = True # ===== End of generated config ===== diff --git a/campaign/event_20260813_cn/d3.py b/campaign/event_20260813_cn/d3.py index ffbfa3232..8cbb15e20 100644 --- a/campaign/event_20260813_cn/d3.py +++ b/campaign/event_20260813_cn/d3.py @@ -7,7 +7,7 @@ MAP = CampaignMap('D3') MAP.shape = 'I9' MAP.camera_data = ['D4', 'D6', 'F4', 'F6'] -MAP.camera_data_spawn_point = ['F4', 'D4'] +MAP.camera_data_spawn_point = ['D4'] MAP.map_data = """ ++ ++ ++ -- ++ -- ++ ++ ++ -- ++ -- ++ ++ ++ -- ++ -- @@ -53,7 +53,7 @@ class Config(ConfigBase): # ===== Start of generated config ===== - MAP_SIREN_TEMPLATE = ['haorenlichade_m_zhanlie'] + MAP_SIREN_TEMPLATE = ['BonhommeRichard_BB', 'BonhommeRichard_CV'] MOVABLE_ENEMY_TURN = (2,) MAP_HAS_SIREN = True MAP_HAS_MOVABLE_ENEMY = True @@ -61,11 +61,6 @@ class Config(ConfigBase): MAP_HAS_FLEET_STEP = True MAP_HAS_AMBUSH = False MAP_HAS_MYSTERY = False - MAP_CHAPTER_SWITCH_20241219 = True - STAGE_ENTRANCE = ['half', '20240725'] - MAP_HAS_MODE_SWITCH = True - STAGE_INCREASE_AB = True - MAP_WALK_USE_CURRENT_FLEET = True # ===== End of generated config ===== diff --git a/dev_tools/map_extractor.py b/dev_tools/map_extractor.py index 824f40cc3..df5b137ef 100644 --- a/dev_tools/map_extractor.py +++ b/dev_tools/map_extractor.py @@ -332,6 +332,11 @@ 'youeryuan_boss03': 'MeowfficerBust_Playtime', 'youeryuan_boss04': 'MeowfficerBust_Hobbies', 'youeryuan_boss05': 'MeowfficerBust_Studying', + + # Depths of the Astrarium + 'haorenlichade_m_zhanlie': 'BonhommeRichard_BB', + 'haorenlichade_m_hangmu': 'BonhommeRichard_CV', + 'haorenlichade_m_qianting': 'BonhommeRichard_SS', } diff --git a/module/template/assets.py b/module/template/assets.py index 9411d6156..a392b2668 100644 --- a/module/template/assets.py +++ b/module/template/assets.py @@ -70,6 +70,8 @@ TEMPLATE_SIREN_BlackDragonBoss01 = Template(file={'cn': './assets/cn/template/TEMPLATE_SIREN_BlackDragonBoss01.gif', 'en': './assets/en/template/TEMPLATE_SIREN_BlackDragonBoss01.gif', 'jp': './assets/jp/template/TEMPLATE_SIREN_BlackDragonBoss01.gif', 'tw': './assets/tw/template/TEMPLATE_SIREN_BlackDragonBoss01.gif'}) TEMPLATE_SIREN_BlackDragonBoss02 = Template(file={'cn': './assets/cn/template/TEMPLATE_SIREN_BlackDragonBoss02.gif', 'en': './assets/en/template/TEMPLATE_SIREN_BlackDragonBoss02.gif', 'jp': './assets/jp/template/TEMPLATE_SIREN_BlackDragonBoss02.gif', 'tw': './assets/tw/template/TEMPLATE_SIREN_BlackDragonBoss02.gif'}) TEMPLATE_SIREN_BolzanoAlter = Template(file={'cn': './assets/cn/template/TEMPLATE_SIREN_BolzanoAlter.gif', 'en': './assets/en/template/TEMPLATE_SIREN_BolzanoAlter.gif', 'jp': './assets/jp/template/TEMPLATE_SIREN_BolzanoAlter.gif', 'tw': './assets/tw/template/TEMPLATE_SIREN_BolzanoAlter.gif'}) +TEMPLATE_SIREN_BonhommeRichard_BB = Template(file={'cn': './assets/cn/template/TEMPLATE_SIREN_BonhommeRichard_BB.gif', 'en': './assets/en/template/TEMPLATE_SIREN_BonhommeRichard_BB.gif', 'jp': './assets/jp/template/TEMPLATE_SIREN_BonhommeRichard_BB.gif', 'tw': './assets/tw/template/TEMPLATE_SIREN_BonhommeRichard_BB.gif'}) +TEMPLATE_SIREN_BonhommeRichard_CV = Template(file={'cn': './assets/cn/template/TEMPLATE_SIREN_BonhommeRichard_CV.gif', 'en': './assets/en/template/TEMPLATE_SIREN_BonhommeRichard_CV.gif', 'jp': './assets/jp/template/TEMPLATE_SIREN_BonhommeRichard_CV.gif', 'tw': './assets/tw/template/TEMPLATE_SIREN_BonhommeRichard_CV.gif'}) TEMPLATE_SIREN_Bremerton = Template(file={'cn': './assets/cn/template/TEMPLATE_SIREN_Bremerton.gif', 'en': './assets/en/template/TEMPLATE_SIREN_Bremerton.gif', 'jp': './assets/jp/template/TEMPLATE_SIREN_Bremerton.gif', 'tw': './assets/tw/template/TEMPLATE_SIREN_Bremerton.gif'}) TEMPLATE_SIREN_CA = Template(file={'cn': './assets/cn/template/TEMPLATE_SIREN_CA.gif', 'en': './assets/en/template/TEMPLATE_SIREN_CA.gif', 'jp': './assets/jp/template/TEMPLATE_SIREN_CA.gif', 'tw': './assets/tw/template/TEMPLATE_SIREN_CA.gif'}) TEMPLATE_SIREN_CAalchemist = Template(file={'cn': './assets/cn/template/TEMPLATE_SIREN_CAalchemist.gif', 'en': './assets/en/template/TEMPLATE_SIREN_CAalchemist.gif', 'jp': './assets/jp/template/TEMPLATE_SIREN_CAalchemist.gif', 'tw': './assets/tw/template/TEMPLATE_SIREN_CAalchemist.gif'}) From 61f823164103af1e59822e093e7dc0a47d52f22d Mon Sep 17 00:00:00 2001 From: LmeSzinc <37934724+LmeSzinc@users.noreply.github.com> Date: Thu, 13 Aug 2026 20:18:09 +0800 Subject: [PATCH 4/4] Add: chapter SP --- .../TEMPLATE_SIREN_BonhommeRichard_SS.gif | Bin 0 -> 6554 bytes .../TEMPLATE_SIREN_BonhommeRichard_SS.gif | Bin 0 -> 6554 bytes .../TEMPLATE_SIREN_BonhommeRichard_SS.gif | Bin 0 -> 6554 bytes .../TEMPLATE_SIREN_BonhommeRichard_SS.gif | Bin 0 -> 6554 bytes campaign/event_20260813_cn/b1.py | 1 - campaign/event_20260813_cn/d1.py | 1 - campaign/event_20260813_cn/sp.py | 28 +++++++++++++----- module/template/assets.py | 1 + 8 files changed, 22 insertions(+), 9 deletions(-) create mode 100644 assets/cn/template/TEMPLATE_SIREN_BonhommeRichard_SS.gif create mode 100644 assets/en/template/TEMPLATE_SIREN_BonhommeRichard_SS.gif create mode 100644 assets/jp/template/TEMPLATE_SIREN_BonhommeRichard_SS.gif create mode 100644 assets/tw/template/TEMPLATE_SIREN_BonhommeRichard_SS.gif diff --git a/assets/cn/template/TEMPLATE_SIREN_BonhommeRichard_SS.gif b/assets/cn/template/TEMPLATE_SIREN_BonhommeRichard_SS.gif new file mode 100644 index 0000000000000000000000000000000000000000..6873088f8ea0f42a9d5bbf975b014c9bdbc28b5c GIT binary patch literal 6554 zcmeI$X;4%58prVy2pAwN2?0VtNCY7uJBsWi5H?w4b4O(n0YwEt1*Mt*VUaBXL{QM6 zh-j%ruokUjSt5&~g~GIAUDztPUch~+-ly}QNpscSxpz9gGp~3uZ1{{8#6Z{NOo^XAp7S1(__eDUJN)2B~oW@a8edi3z&!-L^3JUh_-J6$}my?r|ot@3+^Ru$D zcsw4L%iXieadB~Wc6M@da&&Zb zaB#4^oGQRiQ6oMFi`~Z|?%a$!&x)hm$KtYapdwWY9VYAsliJP07L=y=m;K+gn3nY|STU%RM zS%D@JO283gV`HEM95FC3K$Og$JsT*|(b3V;($dt_1W-T|5{U$$sH&d z10PXhW_Muq!iX6WF4{+}#&yTt7T19+peEnZ8PSZqc*R;`&`E_ zMTabOSmFpw)GknVn7V#Cc|xU#=r=lfVr#7jPp0(IIAehBQ)Lr7Ue@0pJ7Fb;ph!tF5ht zP60kplAs=e7?DOqk|bb<1P)LG#YkFO8uSP%k>uoLfFmg>3G9&c2(m-EL?m{sUcDM( zWW|aV&?CTybdLlE2LAURkw)a>B$1{B96@37F(s%ysH@&wuh z59)vUe6}Y5eDJfZo8<)}*KC!0(;o5xRZd<-J|?nEp(4c+Udqs80hp3iXMO*Gr;-Yr zPbBS(%EU0OO=6;NvbUd(UG%k=J?<`CP$_XsdBU_%J zsD`yn#YF0`*A_jk8S_%swg@7=>JODysWEEzOo5FV&KAUx2FLDd0E1|^3y9%#%+ssoZ^)x;;LaG140b zg$ID~@r*(FA#H~An1TGz(9n=f8Wj~4VB<@Ed^R%v`eMLipL2~&&QE%7nS@6@p`FBo z4y;oGlhEU8#hRSuH+fGk_39}sPp@r@p7d2!U;p}{FxtbLhnaLHkZj}w%UyS4uS^EB zTDh{Td*jY^7i1myf>&_ur z71YOjbX}v!nWfa*^G0Q|l^xIe_uKlkWzucEQs;>xBeJL#i|Xp*+lM`ghW0kg<7A9_ z$wp2M*98o|$1KXymPjv+l1#U;UYPYJb(WD@#Dv6xZJ;gANc`z02`1Xzy_)i zG+&S$s6t@Az;Hpg5p);qqI(EH0u=(5z~gx?1ii zL&12Z6TuWyr*fjBIM!EH2HVgOnS883$6~KaKnY%f$iwNK9PTH3D;HC}X{p>Kacc%K zL0377;?b6^O|=LUaoY=O+3Anzw5?GEI`i1;Dtyl5s)`(z-5k^LgA%`umi5ni|TrJeH)3fgj;uPFI%O%90plA52;OU!Lll1yWA{XYOtP|>l zK8l8%3|)_7gd;m9-Drtak5$Nb+w@F8WoIcKFrHN)UkqD>{IH9dK7g zcMlNchaY}`>jyf0NMBdclz|!nM9_QzL8RvkvI8AJkQ&e-00(pk*nzGe5FsDT7r3RO z{MfQ(3xWe3QY9x;M255%uv%cRfDv#x{ojrFyVdf+_2c8of)1(D1p)^U!~_~EG#U+V zAV>H+EOC z%4$RFb(apKtJN;M?t~8sGjg-=26c(PnX&(>c3ooAkjQq&97w5W~x(x!LrJhH)HX+wFHZjk DK-hV> literal 0 HcmV?d00001 diff --git a/assets/en/template/TEMPLATE_SIREN_BonhommeRichard_SS.gif b/assets/en/template/TEMPLATE_SIREN_BonhommeRichard_SS.gif new file mode 100644 index 0000000000000000000000000000000000000000..6873088f8ea0f42a9d5bbf975b014c9bdbc28b5c GIT binary patch literal 6554 zcmeI$X;4%58prVy2pAwN2?0VtNCY7uJBsWi5H?w4b4O(n0YwEt1*Mt*VUaBXL{QM6 zh-j%ruokUjSt5&~g~GIAUDztPUch~+-ly}QNpscSxpz9gGp~3uZ1{{8#6Z{NOo^XAp7S1(__eDUJN)2B~oW@a8edi3z&!-L^3JUh_-J6$}my?r|ot@3+^Ru$D zcsw4L%iXieadB~Wc6M@da&&Zb zaB#4^oGQRiQ6oMFi`~Z|?%a$!&x)hm$KtYapdwWY9VYAsliJP07L=y=m;K+gn3nY|STU%RM zS%D@JO283gV`HEM95FC3K$Og$JsT*|(b3V;($dt_1W-T|5{U$$sH&d z10PXhW_Muq!iX6WF4{+}#&yTt7T19+peEnZ8PSZqc*R;`&`E_ zMTabOSmFpw)GknVn7V#Cc|xU#=r=lfVr#7jPp0(IIAehBQ)Lr7Ue@0pJ7Fb;ph!tF5ht zP60kplAs=e7?DOqk|bb<1P)LG#YkFO8uSP%k>uoLfFmg>3G9&c2(m-EL?m{sUcDM( zWW|aV&?CTybdLlE2LAURkw)a>B$1{B96@37F(s%ysH@&wuh z59)vUe6}Y5eDJfZo8<)}*KC!0(;o5xRZd<-J|?nEp(4c+Udqs80hp3iXMO*Gr;-Yr zPbBS(%EU0OO=6;NvbUd(UG%k=J?<`CP$_XsdBU_%J zsD`yn#YF0`*A_jk8S_%swg@7=>JODysWEEzOo5FV&KAUx2FLDd0E1|^3y9%#%+ssoZ^)x;;LaG140b zg$ID~@r*(FA#H~An1TGz(9n=f8Wj~4VB<@Ed^R%v`eMLipL2~&&QE%7nS@6@p`FBo z4y;oGlhEU8#hRSuH+fGk_39}sPp@r@p7d2!U;p}{FxtbLhnaLHkZj}w%UyS4uS^EB zTDh{Td*jY^7i1myf>&_ur z71YOjbX}v!nWfa*^G0Q|l^xIe_uKlkWzucEQs;>xBeJL#i|Xp*+lM`ghW0kg<7A9_ z$wp2M*98o|$1KXymPjv+l1#U;UYPYJb(WD@#Dv6xZJ;gANc`z02`1Xzy_)i zG+&S$s6t@Az;Hpg5p);qqI(EH0u=(5z~gx?1ii zL&12Z6TuWyr*fjBIM!EH2HVgOnS883$6~KaKnY%f$iwNK9PTH3D;HC}X{p>Kacc%K zL0377;?b6^O|=LUaoY=O+3Anzw5?GEI`i1;Dtyl5s)`(z-5k^LgA%`umi5ni|TrJeH)3fgj;uPFI%O%90plA52;OU!Lll1yWA{XYOtP|>l zK8l8%3|)_7gd;m9-Drtak5$Nb+w@F8WoIcKFrHN)UkqD>{IH9dK7g zcMlNchaY}`>jyf0NMBdclz|!nM9_QzL8RvkvI8AJkQ&e-00(pk*nzGe5FsDT7r3RO z{MfQ(3xWe3QY9x;M255%uv%cRfDv#x{ojrFyVdf+_2c8of)1(D1p)^U!~_~EG#U+V zAV>H+EOC z%4$RFb(apKtJN;M?t~8sGjg-=26c(PnX&(>c3ooAkjQq&97w5W~x(x!LrJhH)HX+wFHZjk DK-hV> literal 0 HcmV?d00001 diff --git a/assets/jp/template/TEMPLATE_SIREN_BonhommeRichard_SS.gif b/assets/jp/template/TEMPLATE_SIREN_BonhommeRichard_SS.gif new file mode 100644 index 0000000000000000000000000000000000000000..6873088f8ea0f42a9d5bbf975b014c9bdbc28b5c GIT binary patch literal 6554 zcmeI$X;4%58prVy2pAwN2?0VtNCY7uJBsWi5H?w4b4O(n0YwEt1*Mt*VUaBXL{QM6 zh-j%ruokUjSt5&~g~GIAUDztPUch~+-ly}QNpscSxpz9gGp~3uZ1{{8#6Z{NOo^XAp7S1(__eDUJN)2B~oW@a8edi3z&!-L^3JUh_-J6$}my?r|ot@3+^Ru$D zcsw4L%iXieadB~Wc6M@da&&Zb zaB#4^oGQRiQ6oMFi`~Z|?%a$!&x)hm$KtYapdwWY9VYAsliJP07L=y=m;K+gn3nY|STU%RM zS%D@JO283gV`HEM95FC3K$Og$JsT*|(b3V;($dt_1W-T|5{U$$sH&d z10PXhW_Muq!iX6WF4{+}#&yTt7T19+peEnZ8PSZqc*R;`&`E_ zMTabOSmFpw)GknVn7V#Cc|xU#=r=lfVr#7jPp0(IIAehBQ)Lr7Ue@0pJ7Fb;ph!tF5ht zP60kplAs=e7?DOqk|bb<1P)LG#YkFO8uSP%k>uoLfFmg>3G9&c2(m-EL?m{sUcDM( zWW|aV&?CTybdLlE2LAURkw)a>B$1{B96@37F(s%ysH@&wuh z59)vUe6}Y5eDJfZo8<)}*KC!0(;o5xRZd<-J|?nEp(4c+Udqs80hp3iXMO*Gr;-Yr zPbBS(%EU0OO=6;NvbUd(UG%k=J?<`CP$_XsdBU_%J zsD`yn#YF0`*A_jk8S_%swg@7=>JODysWEEzOo5FV&KAUx2FLDd0E1|^3y9%#%+ssoZ^)x;;LaG140b zg$ID~@r*(FA#H~An1TGz(9n=f8Wj~4VB<@Ed^R%v`eMLipL2~&&QE%7nS@6@p`FBo z4y;oGlhEU8#hRSuH+fGk_39}sPp@r@p7d2!U;p}{FxtbLhnaLHkZj}w%UyS4uS^EB zTDh{Td*jY^7i1myf>&_ur z71YOjbX}v!nWfa*^G0Q|l^xIe_uKlkWzucEQs;>xBeJL#i|Xp*+lM`ghW0kg<7A9_ z$wp2M*98o|$1KXymPjv+l1#U;UYPYJb(WD@#Dv6xZJ;gANc`z02`1Xzy_)i zG+&S$s6t@Az;Hpg5p);qqI(EH0u=(5z~gx?1ii zL&12Z6TuWyr*fjBIM!EH2HVgOnS883$6~KaKnY%f$iwNK9PTH3D;HC}X{p>Kacc%K zL0377;?b6^O|=LUaoY=O+3Anzw5?GEI`i1;Dtyl5s)`(z-5k^LgA%`umi5ni|TrJeH)3fgj;uPFI%O%90plA52;OU!Lll1yWA{XYOtP|>l zK8l8%3|)_7gd;m9-Drtak5$Nb+w@F8WoIcKFrHN)UkqD>{IH9dK7g zcMlNchaY}`>jyf0NMBdclz|!nM9_QzL8RvkvI8AJkQ&e-00(pk*nzGe5FsDT7r3RO z{MfQ(3xWe3QY9x;M255%uv%cRfDv#x{ojrFyVdf+_2c8of)1(D1p)^U!~_~EG#U+V zAV>H+EOC z%4$RFb(apKtJN;M?t~8sGjg-=26c(PnX&(>c3ooAkjQq&97w5W~x(x!LrJhH)HX+wFHZjk DK-hV> literal 0 HcmV?d00001 diff --git a/assets/tw/template/TEMPLATE_SIREN_BonhommeRichard_SS.gif b/assets/tw/template/TEMPLATE_SIREN_BonhommeRichard_SS.gif new file mode 100644 index 0000000000000000000000000000000000000000..6873088f8ea0f42a9d5bbf975b014c9bdbc28b5c GIT binary patch literal 6554 zcmeI$X;4%58prVy2pAwN2?0VtNCY7uJBsWi5H?w4b4O(n0YwEt1*Mt*VUaBXL{QM6 zh-j%ruokUjSt5&~g~GIAUDztPUch~+-ly}QNpscSxpz9gGp~3uZ1{{8#6Z{NOo^XAp7S1(__eDUJN)2B~oW@a8edi3z&!-L^3JUh_-J6$}my?r|ot@3+^Ru$D zcsw4L%iXieadB~Wc6M@da&&Zb zaB#4^oGQRiQ6oMFi`~Z|?%a$!&x)hm$KtYapdwWY9VYAsliJP07L=y=m;K+gn3nY|STU%RM zS%D@JO283gV`HEM95FC3K$Og$JsT*|(b3V;($dt_1W-T|5{U$$sH&d z10PXhW_Muq!iX6WF4{+}#&yTt7T19+peEnZ8PSZqc*R;`&`E_ zMTabOSmFpw)GknVn7V#Cc|xU#=r=lfVr#7jPp0(IIAehBQ)Lr7Ue@0pJ7Fb;ph!tF5ht zP60kplAs=e7?DOqk|bb<1P)LG#YkFO8uSP%k>uoLfFmg>3G9&c2(m-EL?m{sUcDM( zWW|aV&?CTybdLlE2LAURkw)a>B$1{B96@37F(s%ysH@&wuh z59)vUe6}Y5eDJfZo8<)}*KC!0(;o5xRZd<-J|?nEp(4c+Udqs80hp3iXMO*Gr;-Yr zPbBS(%EU0OO=6;NvbUd(UG%k=J?<`CP$_XsdBU_%J zsD`yn#YF0`*A_jk8S_%swg@7=>JODysWEEzOo5FV&KAUx2FLDd0E1|^3y9%#%+ssoZ^)x;;LaG140b zg$ID~@r*(FA#H~An1TGz(9n=f8Wj~4VB<@Ed^R%v`eMLipL2~&&QE%7nS@6@p`FBo z4y;oGlhEU8#hRSuH+fGk_39}sPp@r@p7d2!U;p}{FxtbLhnaLHkZj}w%UyS4uS^EB zTDh{Td*jY^7i1myf>&_ur z71YOjbX}v!nWfa*^G0Q|l^xIe_uKlkWzucEQs;>xBeJL#i|Xp*+lM`ghW0kg<7A9_ z$wp2M*98o|$1KXymPjv+l1#U;UYPYJb(WD@#Dv6xZJ;gANc`z02`1Xzy_)i zG+&S$s6t@Az;Hpg5p);qqI(EH0u=(5z~gx?1ii zL&12Z6TuWyr*fjBIM!EH2HVgOnS883$6~KaKnY%f$iwNK9PTH3D;HC}X{p>Kacc%K zL0377;?b6^O|=LUaoY=O+3Anzw5?GEI`i1;Dtyl5s)`(z-5k^LgA%`umi5ni|TrJeH)3fgj;uPFI%O%90plA52;OU!Lll1yWA{XYOtP|>l zK8l8%3|)_7gd;m9-Drtak5$Nb+w@F8WoIcKFrHN)UkqD>{IH9dK7g zcMlNchaY}`>jyf0NMBdclz|!nM9_QzL8RvkvI8AJkQ&e-00(pk*nzGe5FsDT7r3RO z{MfQ(3xWe3QY9x;M255%uv%cRfDv#x{ojrFyVdf+_2c8of)1(D1p)^U!~_~EG#U+V zAV>H+EOC z%4$RFb(apKtJN;M?t~8sGjg-=26c(PnX&(>c3ooAkjQq&97w5W~x(x!LrJhH)HX+wFHZjk DK-hV> literal 0 HcmV?d00001 diff --git a/campaign/event_20260813_cn/b1.py b/campaign/event_20260813_cn/b1.py index 36b385e4c..382f0ba92 100644 --- a/campaign/event_20260813_cn/b1.py +++ b/campaign/event_20260813_cn/b1.py @@ -59,7 +59,6 @@ class Config: STAGE_ENTRANCE = ['half', '20240725'] MAP_HAS_MODE_SWITCH = True STAGE_INCREASE_AB = True - MAP_SIREN_HAS_BOSS_ICON_SMALL = True MAP_WALK_USE_CURRENT_FLEET = True INTERNAL_LINES_FIND_PEAKS_PARAMETERS = { 'height': (80, 255 - 17), diff --git a/campaign/event_20260813_cn/d1.py b/campaign/event_20260813_cn/d1.py index 6439e8fe1..cca2982a8 100644 --- a/campaign/event_20260813_cn/d1.py +++ b/campaign/event_20260813_cn/d1.py @@ -59,7 +59,6 @@ class Config: STAGE_ENTRANCE = ['half', '20240725'] MAP_HAS_MODE_SWITCH = True STAGE_INCREASE_AB = True - MAP_SIREN_HAS_BOSS_ICON_SMALL = True MAP_WALK_USE_CURRENT_FLEET = True INTERNAL_LINES_FIND_PEAKS_PARAMETERS = { 'height': (80, 255 - 17), diff --git a/campaign/event_20260813_cn/sp.py b/campaign/event_20260813_cn/sp.py index 22472a987..03d3c1931 100644 --- a/campaign/event_20260813_cn/sp.py +++ b/campaign/event_20260813_cn/sp.py @@ -6,7 +6,7 @@ MAP = CampaignMap('SP') MAP.shape = 'I9' MAP.camera_data = ['D4', 'D6', 'F4', 'F6'] -MAP.camera_data_spawn_point = ['F4', 'D4'] +MAP.camera_data_spawn_point = ['D4', 'F4'] MAP.map_data = """ ++ ++ ++ -- ++ -- ++ ++ ++ -- ++ -- ++ ++ ++ -- ++ -- @@ -53,7 +53,7 @@ class Config: # ===== Start of generated config ===== - MAP_SIREN_TEMPLATE = ['haorenlichade_m_qianting'] + MAP_SIREN_TEMPLATE = ['BonhommeRichard_SS'] MOVABLE_ENEMY_TURN = (2,) MAP_HAS_SIREN = True MAP_HAS_MOVABLE_ENEMY = True @@ -61,17 +61,31 @@ class Config: MAP_HAS_FLEET_STEP = True MAP_HAS_AMBUSH = False MAP_HAS_MYSTERY = False - MAP_CHAPTER_SWITCH_20241219 = True - STAGE_ENTRANCE = ['half', '20240725'] - MAP_HAS_MODE_SWITCH = False - STAGE_INCREASE_AB = True - MAP_WALK_USE_CURRENT_FLEET = True STAR_REQUIRE_1 = 0 STAR_REQUIRE_2 = 0 STAR_REQUIRE_3 = 0 # ===== End of generated config ===== + MAP_CHAPTER_SWITCH_20241219 = True + STAGE_ENTRANCE = ['half', '20240725'] + STAGE_INCREASE_AB = True + INTERNAL_LINES_FIND_PEAKS_PARAMETERS = { + 'height': (80, 255 - 17), + 'width': (0.9, 10), + 'prominence': 10, + 'distance': 35, + } + EDGE_LINES_FIND_PEAKS_PARAMETERS = { + 'height': (255 - 17, 255), + 'prominence': 10, + 'distance': 50, + 'wlen': 1000 + } + MAP_ENSURE_EDGE_INSIGHT_CORNER = 'bottom' MAP_IS_ONE_TIME_STAGE = True + MAP_SWIPE_MULTIPLY = (1.149, 1.170) + MAP_SWIPE_MULTIPLY_MINITOUCH = (1.111, 1.132) + MAP_SWIPE_MULTIPLY_MAATOUCH = (1.079, 1.098) class Campaign(CampaignBase): diff --git a/module/template/assets.py b/module/template/assets.py index a392b2668..7f2609496 100644 --- a/module/template/assets.py +++ b/module/template/assets.py @@ -72,6 +72,7 @@ TEMPLATE_SIREN_BolzanoAlter = Template(file={'cn': './assets/cn/template/TEMPLATE_SIREN_BolzanoAlter.gif', 'en': './assets/en/template/TEMPLATE_SIREN_BolzanoAlter.gif', 'jp': './assets/jp/template/TEMPLATE_SIREN_BolzanoAlter.gif', 'tw': './assets/tw/template/TEMPLATE_SIREN_BolzanoAlter.gif'}) TEMPLATE_SIREN_BonhommeRichard_BB = Template(file={'cn': './assets/cn/template/TEMPLATE_SIREN_BonhommeRichard_BB.gif', 'en': './assets/en/template/TEMPLATE_SIREN_BonhommeRichard_BB.gif', 'jp': './assets/jp/template/TEMPLATE_SIREN_BonhommeRichard_BB.gif', 'tw': './assets/tw/template/TEMPLATE_SIREN_BonhommeRichard_BB.gif'}) TEMPLATE_SIREN_BonhommeRichard_CV = Template(file={'cn': './assets/cn/template/TEMPLATE_SIREN_BonhommeRichard_CV.gif', 'en': './assets/en/template/TEMPLATE_SIREN_BonhommeRichard_CV.gif', 'jp': './assets/jp/template/TEMPLATE_SIREN_BonhommeRichard_CV.gif', 'tw': './assets/tw/template/TEMPLATE_SIREN_BonhommeRichard_CV.gif'}) +TEMPLATE_SIREN_BonhommeRichard_SS = Template(file={'cn': './assets/cn/template/TEMPLATE_SIREN_BonhommeRichard_SS.gif', 'en': './assets/en/template/TEMPLATE_SIREN_BonhommeRichard_SS.gif', 'jp': './assets/jp/template/TEMPLATE_SIREN_BonhommeRichard_SS.gif', 'tw': './assets/tw/template/TEMPLATE_SIREN_BonhommeRichard_SS.gif'}) TEMPLATE_SIREN_Bremerton = Template(file={'cn': './assets/cn/template/TEMPLATE_SIREN_Bremerton.gif', 'en': './assets/en/template/TEMPLATE_SIREN_Bremerton.gif', 'jp': './assets/jp/template/TEMPLATE_SIREN_Bremerton.gif', 'tw': './assets/tw/template/TEMPLATE_SIREN_Bremerton.gif'}) TEMPLATE_SIREN_CA = Template(file={'cn': './assets/cn/template/TEMPLATE_SIREN_CA.gif', 'en': './assets/en/template/TEMPLATE_SIREN_CA.gif', 'jp': './assets/jp/template/TEMPLATE_SIREN_CA.gif', 'tw': './assets/tw/template/TEMPLATE_SIREN_CA.gif'}) TEMPLATE_SIREN_CAalchemist = Template(file={'cn': './assets/cn/template/TEMPLATE_SIREN_CAalchemist.gif', 'en': './assets/en/template/TEMPLATE_SIREN_CAalchemist.gif', 'jp': './assets/jp/template/TEMPLATE_SIREN_CAalchemist.gif', 'tw': './assets/tw/template/TEMPLATE_SIREN_CAalchemist.gif'})