diff --git a/assets/cn/template/TEMPLATE_SIREN_fengfan_ghost_xl.png b/assets/cn/template/TEMPLATE_SIREN_fengfan_ghost_xl.png deleted file mode 100644 index 214055458..000000000 Binary files a/assets/cn/template/TEMPLATE_SIREN_fengfan_ghost_xl.png and /dev/null differ diff --git a/assets/cn/template/TEMPLATE_SIREN_fengfan_xl.png b/assets/cn/template/TEMPLATE_SIREN_fengfan_xl.png deleted file mode 100644 index db178631c..000000000 Binary files a/assets/cn/template/TEMPLATE_SIREN_fengfan_xl.png and /dev/null differ diff --git a/campaign/Readme.md b/campaign/Readme.md index f2a1d0c3b..9b5375436 100644 --- a/campaign/Readme.md +++ b/campaign/Readme.md @@ -12,154 +12,154 @@ To add a new event, add a new row in here, and run `python -m module.config.conf **CN, EN, JP, TW** Event names in GUI. If an event is not aired on some servers, use `-`. -| Aired Date | Directory | Event Name | CN | EN | JP | TW | -|------------|--------------------------|----------------------------------------------|----------------------| -------------------------------------------- | ------------------------------------ | ------------------------ | -| 20170607 | war archives 20181020 en | Strive, Wish, and Strategize | 努力、希望和计划 | Strive, Wish, and Strategize | 努力、希望と計画 | 努力、希望和計劃 | -| 20170802 | war archives 20191031 en | Divergent Chessboard | 异色格 | Divergent Chessboard | 鏡写されし異色 | 異色格 | -| 20170928 | war archives 20190321 en | Visitors Dyed in Red | 红染的参访者 | Visitors Dyed in Red | 紅染の来訪者 | 紅染的參訪者 | -| 20171026 | war archives 20190620 en | Glorious Battle | 光荣的一战 | Glorious Battle | 栄光なる最終戦 | 光榮的一戰 | -| 20171228 | war archives 20181026 en | Fallen Wings | 坠落之翼 | Fallen Wings | 闇に堕ちた青き翼 | 墜落之翼 | -| 20180119 | war archives 20191010 en | Encircling Graf Spee | 围剿斯佩伯爵 | Encircling Graf Spee | アドミラル・グラーフ・シュペー追撃戦 | 圍剿斯佩伯爵 | -| 20180226 | war archives 20190221 en | Winter\'s Crown | 凛冬王冠 | Winter\'s Crown | 凛冽なりし冬の王冠 | 凜冬王冠 | -| 20180607 | war archives 20180607 cn | Ink Stained Steel Sakura | 墨染的钢铁之花 | Ink Stained Steel Sakura | 墨染まりし鋼の桜 | 墨染的鋼鐵之花 | -| 20180726 | war archives 20180726 cn | Iris of Light and Dark | 光与影的鸢尾之华 | Iris of Light and Dark | 光と影のアイリス | 光與影的鳶尾之華 | -| 20210121 | war archives 20181227 cn | Crimson Echoes | 苍红的回响 | Crimson Echoes | 縹映る深緋の残響 | 蒼紅的迴響 | -| 20210513 | war archives 20200820 cn | Scherzo of Iron and Blood | 铁血音符誓言 | Scherzo of Iron and Blood | 黒鉄の楽章 誓いの海 | - | -| 20211014 | war archives 20211014 cn | Crescendo of Polaris | 激奏的Polaris | Crescendo of Polaris | 激奏のポラリス | - | -| 20220113 | war archives 20190911 cn | Empyreal Tragicomedy | 神圣的悲喜剧 | Empyreal Tragicomedy | 悲歎せし焔海の詩 | - | -| 20220407 | war archives 20210325 cn | Ashen Simulacrum | 箱庭疗法 | Ashen Simulacrum | 開かれし紺碧の砂箱 | - | -| 20220721 | war archives 20210624 cn | Swirling Cherry Blossoms | 浮樱影华 | Swirling Cherry Blossoms | 翳りし満ちる影の華 | - | -| 20220901 | war archives 20200806 cn | The Enigma and the Shark | 最重要的宝物 | The Enigma and the Shark | 鉄血鮫とエニグマ | - | -| 20221013 | war archives 20201029 cn | Universe in Unison | 激唱的UNIVERSE | Universe in Unison | 激唱のユニバース | - | -| 20221117 | war archives 20200903 cn | Stars of the Shimmering Fjord | 峡湾间的星辰 | Stars of the Shimmering Fjord | 輝ける峡湾の星 | - | -| 20221117 | war archives 20210819 cn | Microlayer Medley | 微层混合 | Microlayer Medley | 闇靄払う銀翼 | - | -| 20211028 | war archives 20211028 cn | Skybound Oratorio | 穹顶下的圣咏曲 | Skybound Oratorio | 神穹を衝く聖歌 | 穹頂下的聖詠曲 | -| 20230420 | war archives 20220210 cn | Northern Overture | 北境序曲 | Northern Overture | 凍絶の北海 | 北境序曲 | -| 20230511 | war archives 20220414 cn | Aurora Noctis | 永夜幻光 | Aurora Noctis | 極夜照らす幻光 | 永夜幻光 | -| 20230831 | war archives 20201229 cn | Inverted Orthant | 负象限作战 | Inverted Orthant | 虚畳なりし限象 | - | -| 20200227 | event 20200227 cn | Northern Overture | 北境序曲 | Northern Overture | 凍絶の北海 | - | -| 20200312 | event 20200312 cn | The Solomon Ranger | 复刻斯图尔特的硝烟 | The Solomon Ranger Rerun | 南洋に靡く硝煙(復刻) | - | -| 20200326 | event 20200326 cn | Microlayer Medley | 微层混合 | Microlayer Medley | 闇靄払う銀翼 | - | -| 20200423 | event 20200423 cn | Crimson Echoes | 复刻苍红的回响 | Crimson Echoes Rerun | 縹映る深緋の残響(復刻) | - | -| 20200507 | event 20200507 cn | The Way Home in the Night | 夜幕下的归途 | The Way Home in the Night | 帰路は海色の陰りへと | - | -| 20200521 | event 20200521 cn | Skybound Oratorio | 穹顶下的圣咏曲 | - | 神穹を衝く聖歌 | - | -| 20200521 | event 20200521 en | Iris of Light and Dark | - | Iris of Light and Dark Rerun | - | - | -| 20200603 | event 20200603 cn | Counterattack Within the Fjord | 峡湾间的反击 | - | 峡湾間の反撃 | - | -| 20200603 | event 20200603 en | Prelude under the Moon | - | Prelude under the Moon Rerun | - | - | -| 20200611 | event 20200611 en | Skybound Oratorio | - | Skybound Oratorio | - | - | -| 20200624 | raid 20200624 | Air Raid Drills with Essex | 复刻特别演习埃塞克斯级 | Air Raid Drills with Essex Rerun | 特別演習超空強襲波(復刻) | 特別演習埃塞克斯級 | -| 20200716 | event 20200716 en | Ink Stained Steel Sakura | - | Ink Stained Steel Sakura Rerun | - | - | -| 20200723 | event 20200723 cn | Aurora Noctis | 永夜幻光 | Aurora Noctis | 極夜照らす幻光 | - | -| 20200806 | event 20200806 cn | The Enigma and the Shark | 复刻最重要的宝物 | - | 鉄血鮫とエニグマ(復刻) | - | -| 20200820 | event 20200820 cn | Scherzo of Iron and Blood | 复刻铁血音符誓言 | Scherzo of Iron and Blood Rerun | 黒鉄の楽章 誓いの海(復刻) | - | -| 20200903 | event 20200903 en | Stars of the Shimmering Fjord | - | Stars of the Shimmering Fjord | - | - | -| 20200917 | event 20200917 cn | Dreamwaker's Butterfly | 蝶海梦花 | Dreamwaker's Butterfly | 刹那觀る胡蝶の夢 | - | -| 20201002 | event 20201002 en | Counterattack Within the Fjord | - | Counterattack Within the Fjord | - | - | -| 20201012 | event 20201012 cn | Sundered Blue | 划破海空之翼 | - | 奔る彩帆の青 | - | -| 20201029 | event 20201029 cn | Universe in Unison | 激唱的UNIVERSE | Universe in Unison | 激唱のユニバース | - | -| 20201105 | event 20200312 cn | The Solomon Ranger | - | - | - | 斯圖爾特的硝煙 | -| 20201112 | event 20200903 en | Stars of the Shimmering Fjord | 复刻峡湾间的星辰 | - | 輝ける峡湾の星(復刻) | - | -| 20201112 | event 20201012 cn | Sundered Blue | - | Sundered Blue | - | - | -| 20201126 | event 20201126 cn | Vacation Lane | 假日航线 | Vacation Lane | バケーションレーン | - | -| 20201210 | event 20200806 cn | The Enigma and the Shark | - | The Enigma and the Shark Rerun | - | - | -| 20201229 | event 20201229 cn | Inverted Orthant | 负象限作战 | Inverted Orthant | 虚畳なりし限象 | - | -| 20210121 | event 20210121 cn | Empyreal Tragicomedy | 复刻神圣的悲喜剧 | Empyreal Tragicomedy Rerun | 悲歎せし焔海の詩(復刻) | - | -| 20210225 | event 20210225 cn | Khorovod of Dawn's Rime | 破晓冰华 | Khorovod of Dawn's Rime | 暁射す氷華の嵐 | - | -| 20210225 | event 20210225 tw | Northern Overture | - | - | - | 北境序曲 | -| 20210325 | event 20210325 cn | Ashen Simulacrum | 复刻箱庭疗法 | Ashen Simulacrum Rerun | 開かれし紺碧の砂箱(復刻) | - | -| 20210415 | event 20210415 tw | Encircling Graf Spee | - | - | - | 復刻圍剿施佩伯爵 | -| 20210422 | event 20210422 cn | Daedalian Hymn | 复兴的赞美诗 | Daedalian Hymn | 讃える復興の迷路 | - | -| 20210429 | event 20210429 tw | Ink Stained Steel Sakura | - | - | - | 復刻墨染的鋼鐵之花 | -| 20210527 | event 20210527 tw | Microlayer Medley | - | - | - | 微層混合 | -| 20210527 | event 20210527 cn | Mirror Involution | 镜位螺旋 | Mirror Involution | 照らす螺旋の鏡海 | - | -| 20210610 | event 20210610 tw | The Way Home in the Night | - | - | - | 夜幕下的歸途 | -| 20210624 | event 20210624 tw | Skybound Oratorio | - | - | - | 穹頂下的聖詠曲 | -| 20210624 | event 20210624 cn | Swirling Cherry Blossoms | 复刻浮樱影华 | Swirling Cherry Blossoms Rerun | 翳りし満ちる影の華(復刻) | - | -| 20210708 | raid 20210708 | Cross Wave | 复刻穿越彼方的水线 | Cross Wave rerun | 交錯する新たな波 (復刻) | - | -| 20210708 | event 20200903 en | Stars of the Shimmering Fjord | - | - | - | 峽灣間的星辰 | -| 20210722 | event 20210722 cn | Azur Anthem | 响彻碧海的偶像歌 | Azur Anthem | 海に響くアイドルの歌 | - | -| 20210729 | event 20200723 cn | Aurora Noctis | - | - | - | 永夜幻光 | -| 20210812 | event 20200806 cn | The Enigma and the Shark | - | - | - | 最重要的寶物 | -| 20210819 | event 20210819 cn | Microlayer Medley | 复刻微层混合 | Microlayer Medley Rerun | 闇靄払う銀翼(復刻) | - | -| 20210826 | event 20210722 cn | Azur Anthem | - | - | - | 響徹碧海的偶像歌 | -| 20210916 | event 20210916 cn | Upon the Shimmering Blue | 碧海光粼 | Upon the Shimmering Blue | 駆けよ 碧海の吹き風 | - | -| 20210923 | event 20200917 cn | Dreamwaker's Butterfly | - | - | - | 蝶海夢花 | -| 20211008 | event 20201012 cn | Sundered Blue | - | - | - | 劃破海空之翼 | -| 20211014 | raid 20210708 | Cross Wave | - | - | - | 穿越彼方的水線 | -| 20211028 | event 20211028 cn | Skybound Oratorio | 复刻穹顶下的圣咏曲 | Skybound Oratorio Rerun | 神穹を衝く聖歌(復刻) | - | -| 20211028 | event 20211028 tw | Iris of Light and Dark | - | - | - | 復刻光與影的鳶尾之華 | -| 20211111 | event 20211111 cn | The Flame-Touched Dagger | 杰诺瓦的焰火 | The Flame-Touched Dagger | 燈火のシニエ | - | -| 20211125 | event 20211125 cn | World-spanning Arclight | 交汇世界的弧光 | World-spanning Arclight | 弧光は交わる世界にて | - | -| 20211130 | event 20211125 cn | World-spanning Arclight | - | - | - | 交匯世界的弧光 | -| 20211214 | event 20200603 cn | Counterattack Within the Fjord | - | - | - | 峽灣間的反擊 | -| 20211229 | event 20211229 cn | Tower of Transcendence | 逆转彩虹之塔 | Tower of Transcendence | 遡望せし虹彩の塔 | - | -| 20211230 | event 20201229 cn | Inverted Orthant | - | - | - | 負象限作戰 | -| 20220127 | raid 20220127 | Mystery Investigation | 演习神秘事件调查 | Mystery Investigation | 秘密事件調査 | - | -| 20220210 | event 20220210 cn | Northern Overture Rerun | 复刻北境序曲 | Northern Overture Rerun | 凍絶の北海(復刻) | - | -| 20220224 | event 20210225 cn | Khorovod of Dawn's Rime | - | - | - | 破曉冰華 | -| 20220224 | event 20220224 cn | Abyssal Refrain | 深度回音 | Abyssal Refrain | 鳴動せし星霜の淵 | - | -| 20220310 | event 20200603 cn | Counterattack Within the Fjord | 复刻峡湾间的反击 | Counterattack Within the Fjord Rerun | 峡湾間の反撃(復刻) | - | -| 20220310 | event 20220310 tw | The Solomon Ranger | - | - | - | 復刻斯圖爾特的硝煙 | -| 20220324 | event 20220324 cn | Virtual Tower | 虚像构筑之塔 | Virtual Tower | 幻像の塔 | - | -| 20220324 | event 20210422 cn | Daedalian Hymn | - | - | - | 復興的讚美詩 | -| 20220407 | event 20220407 tw | Crimson Echoes | - | - | - | 蒼紅的迴響(復刻) | -| 20220414 | event 20220414 cn | Aurora Noctis | 复刻永夜幻光 | Aurora Noctis Rerun | 極夜照らす幻光(復刻) | - | -| 20220428 | event 20220428 cn | Rondo at Rainbow's End | 虹彩的终幕曲 | Rondo at Rainbow's End | 吟ずる瑠璃の楽章 | - | -| 20220505 | raid 20200624 | Air Raid Drills with Essex | - | - | - | 特別演習埃塞克斯級(復刻) | -| 20220526 | event 20220526 cn | Pledge of the Radiant Court | 泠誓光庭 | Pledge of the Radiant Court | 诚閃の剣 搖光の城 | - | -| 20220526 | event 20210527 cn | Mirror Involution | - | - | - | 鏡位螺旋 | -| 20220616 | event 20201012 cn | Sundered Blue | 复刻划破海空之翼 | Sundered Blue Rerun | 奔る彩帆の青(復刻) | - | -| 20220616 | event 20200820 cn | Scherzo of Iron and Blood | - | - | - | 復刻鐵血音符誓言 | -| 20220630 | raid 20210708 | Cross Wave | - | - | - | 復刻穿越彼方的水線 | -| 20220630 | raid 20220630 | Angel of Iris | 来自鸢尾的天使 | Angel of Iris | アイリスの天使 | - | -| 20220714 | event 20201029 cn | Universe in Unison | - | - | - | 激唱的UNIVERSE | -| 20220714 | event 20200917 cn | Dreamwaker's Butterfly | 复刻蝶海梦花 | Dreamwaker's Butterfly Rerun | 刹那觀る胡蝶の夢(復刻) | - | -| 20220728 | event 20220728 cn | Aquilifer's Ballade | 雄鹰的叙事歌 | Aquilifer's Ballade | 鋼鷲の冒険譚 | - | -| 20220804 | event 20211028 cn | Skybound Oratorio Rerun | - | - | - | 復刻穹頂下的聖詠曲 | -| 20220818 | event 20220324 cn | Virtual Tower | - | - | - | 虛像構築之塔 | -| 20220818 | event 20220818 cn | Operation Convergence | 远汇点作战 | Operation Convergence | 結像点作戦 | - | -| 20220901 | event 20200903 en | Stars of the Shimmering Fjord | - | - | - | 復刻峽灣間的星辰 | -| 20220915 | event 20210916 cn | Upon the Shimmering Blue | - | - | - | 碧海光粼 | -| 20220915 | event 20220915 cn | Violet Tempest Blooming Lycoris | 紫绛槿岚 | Violet Tempest Blooming Lycoris | 赫の涙月 菫の暁風 | - | -| 20221021 | event 20210121 cn | Empyreal Tragicomedy | - | - | - | 復刻神聖的悲喜劇 | -| 20221027 | raid 20221027 | Fight! Royal Maid | 战斗!皇家女仆队3rd | Fight On, Royal Maids!(Part 3) | 戦え!ロイヤルメイド隊3rd | - | -| 20221103 | event 20211111 cn | The Flame-Touched Dagger | - | - | - | 杰諾瓦的焰火 | -| 20221110 | event 20201229 cn | Inverted Orthant | 复刻负象限作战 | Inverted Orthant Rerun | 虚畳なりし限象(復刻) | - | -| 20221117 | event 20210325 cn | Ashen Simulacrum | - | - | - | 復刻箱庭療法 | -| 20221124 | event 20221124 cn | The Alchemist and the Archipelago of Secrets | 炼金术士与秘密遗迹群岛 | The Alchemist and the Archipelago of Secrets | 錬金術士と謎の遺跡群島 | - | -| 20221201 | event 20221124 cn | The Alchemist and the Archipelago of Secrets | - | - | - | 鍊金術士與秘密遺跡群島 | -| 20221222 | event 20221222 cn | Parallel Superimposition | 定向折叠 | Parallel Superimposition | 積重なる事象の幻界 | - | -| 20221222 | event 20211229 cn | Tower of Transcendence | - | - | - | 逆轉彩虹之塔 | -| 20230105 | event 20210225 cn | Khorovod of Dawn's Rime | 复刻破晓冰华 | Khorovod of Dawn's Rime Rerun | 暁射す氷華の嵐(復刻) | - | -| 20230105 | event 20210610 tw | The Way Home in the Night | - | - | - | 復刻夜幕下的歸途 | -| 20230118 | raid 20230118 | Winter Pathfinder | 冬日的寻路人 | Winter Pathfinder | 冬の案内人 | - | -| 20230118 | raid 20220127 | - | - | - | - | 演習神秘事件調查 | -| 20230202 | event 20200806 cn | The Enigma and the Shark | - | - | - | 復刻最重要的寶物 | -| 20230216 | event 20220224 cn | Abyssal Refrain | - | - | - | 深度回音 | -| 20230223 | event 20230223 cn | Revelations of Dust | 湮烬尘墟 | Revelations of Dust | 黙示の遺構 | - | -| 20230309 | event 20210624 cn | Swirling Cherry Blossoms | - | - | - | 復刻-浮櫻影華 | -| 20230309 | event 20210422 cn | Daedalian Hymn | 复刻复兴的赞美诗 | Daedalian Hymn Rerun | 讃える復興の迷路(復刻) | - | -| 20230323 | raid 20220630 | Angel of Iris | - | - | - | 來自鳶尾的天使 | -| 20230323 | coalition 20230323 | Frostfall | 极地风暴 | Frostfall | 星霜海嵐 | - | -| 20230413 | event 20211111 cn | The Flame-Touched Dagger | 复刻杰诺瓦的焰火 | The Flame-Touched Dagger Rerun | 復刻-燈火のシニエ | - | -| 20230413 | event 20210819 cn | Microlayer Medley | - | - | - | 復刻-微層混合 | -| 20230427 | event 20201126 cn | Vacation Lane | 假日航线 | Vacation Lane | バケーションレーン | 假日航線 | -| 20230525 | event 20220526 cn | Pledge of the Radiant Court | - | - | - | 泠誓光庭 | -| 20230525 | event 20230525 cn | Confluence of Nothingness | 空相交汇点 | Confluence of Nothingness | 覆天せし万象の塵 | - | -| 20230615 | event 20200603 cn | Counterattack Within the Fjord | - | - | - | 復刻峽灣間的反擊 | -| 20230621 | event 20210527 cn | Mirror Involution Rerun | 复刻镜位螺旋 | Mirror Involution Rerun | 照らす螺旋の鏡海(復刻) | - | -| 20230629 | event 20220428 cn | Rondo at Rainbow's End | - | - | - | 虹彩的終幕曲 | -| 20230629 | raid 20230629 | Reflections of the Oasis | 绿洲往事 | Reflections of the Oasis | 緑地伽話 | - | -| 20230713 | event 20220818 cn | Operation Convergence | - | - | 結像点作戦 | 遠匯點作戰 | -| 20230720 | event 20211125 cn | World-spanning Arclight | 复刻交汇世界的弧光 | World-spanning Arclight Rerun | 弧光は交わる世界にて(復刻) | - | -| 20230727 | event 20200917 cn | Dreamwaker's Butterfly | - | - | - | 復刻-蝶海夢花 | -| 20230803 | event 20211125 cn | World-spanning Arclight | - | - | - | 復刻-交匯世界的弧光 | -| 20230803 | event 20230803 cn | Anthem of Remembrance | 奏响鸢尾之歌 | Anthem of Remembrance | 燃ゆる聖都の回想曲 | - | -| 20230817 | event 20230817 cn | The Fool's Scales | 愚者的天平 | The Fool's Scales | 愚者の天秤 | - | -| 20230817 | event 20220414 cn | Aurora Noctis | - | - | - | 復刻-永夜幻光 | -| 20230824 | coalition 20230323 | Frostfall | - | - | - | 極地風暴 | -| 20230914 | event 20220915 cn | Violet Tempest Blooming Lycoris | - | - | - | 紫絳槿嵐 | -| 20230914 | event 20230914 cn | Effulgence Before Eclipse | 须臾望月抄 | Effulgence Before Eclipse | 須臾望月抄 | - | -| 20231012 | event 20201229 cn | Inverted Orthant | - | - | - | 復刻-負象限作戰 | -| 20231026 | event 20231026 cn | Tempesta and the Fountain of Youth | 飓风与青春之泉 | - | - | 復刻-負象限作戰 | +| Aired Date | Directory | Event Name | CN | EN | JP | TW | +| ---------- | ------------------------ | -------------------------------------------- | ---------------------- | -------------------------------------------- | ------------------------------------ | ------------------------ | +| 20170607 | war archives 20181020 en | Strive, Wish, and Strategize | 努力、希望和计划 | Strive, Wish, and Strategize | 努力、希望と計画 | 努力、希望和計劃 | +| 20170802 | war archives 20191031 en | Divergent Chessboard | 异色格 | Divergent Chessboard | 鏡写されし異色 | 異色格 | +| 20170928 | war archives 20190321 en | Visitors Dyed in Red | 红染的参访者 | Visitors Dyed in Red | 紅染の来訪者 | 紅染的參訪者 | +| 20171026 | war archives 20190620 en | Glorious Battle | 光荣的一战 | Glorious Battle | 栄光なる最終戦 | 光榮的一戰 | +| 20171228 | war archives 20181026 en | Fallen Wings | 坠落之翼 | Fallen Wings | 闇に堕ちた青き翼 | 墜落之翼 | +| 20180119 | war archives 20191010 en | Encircling Graf Spee | 围剿斯佩伯爵 | Encircling Graf Spee | アドミラル・グラーフ・シュペー追撃戦 | 圍剿斯佩伯爵 | +| 20180226 | war archives 20190221 en | Winter\'s Crown | 凛冬王冠 | Winter\'s Crown | 凛冽なりし冬の王冠 | 凜冬王冠 | +| 20180607 | war archives 20180607 cn | Ink Stained Steel Sakura | 墨染的钢铁之花 | Ink Stained Steel Sakura | 墨染まりし鋼の桜 | 墨染的鋼鐵之花 | +| 20180726 | war archives 20180726 cn | Iris of Light and Dark | 光与影的鸢尾之华 | Iris of Light and Dark | 光と影のアイリス | 光與影的鳶尾之華 | +| 20210121 | war archives 20181227 cn | Crimson Echoes | 苍红的回响 | Crimson Echoes | 縹映る深緋の残響 | 蒼紅的迴響 | +| 20210513 | war archives 20200820 cn | Scherzo of Iron and Blood | 铁血音符誓言 | Scherzo of Iron and Blood | 黒鉄の楽章 誓いの海 | - | +| 20211014 | war archives 20211014 cn | Crescendo of Polaris | 激奏的Polaris | Crescendo of Polaris | 激奏のポラリス | - | +| 20220113 | war archives 20190911 cn | Empyreal Tragicomedy | 神圣的悲喜剧 | Empyreal Tragicomedy | 悲歎せし焔海の詩 | - | +| 20220407 | war archives 20210325 cn | Ashen Simulacrum | 箱庭疗法 | Ashen Simulacrum | 開かれし紺碧の砂箱 | - | +| 20220721 | war archives 20210624 cn | Swirling Cherry Blossoms | 浮樱影华 | Swirling Cherry Blossoms | 翳りし満ちる影の華 | - | +| 20220901 | war archives 20200806 cn | The Enigma and the Shark | 最重要的宝物 | The Enigma and the Shark | 鉄血鮫とエニグマ | - | +| 20221013 | war archives 20201029 cn | Universe in Unison | 激唱的UNIVERSE | Universe in Unison | 激唱のユニバース | - | +| 20221117 | war archives 20200903 cn | Stars of the Shimmering Fjord | 峡湾间的星辰 | Stars of the Shimmering Fjord | 輝ける峡湾の星 | - | +| 20221117 | war archives 20210819 cn | Microlayer Medley | 微层混合 | Microlayer Medley | 闇靄払う銀翼 | - | +| 20211028 | war archives 20211028 cn | Skybound Oratorio | 穹顶下的圣咏曲 | Skybound Oratorio | 神穹を衝く聖歌 | 穹頂下的聖詠曲 | +| 20230420 | war archives 20220210 cn | Northern Overture | 北境序曲 | Northern Overture | 凍絶の北海 | 北境序曲 | +| 20230511 | war archives 20220414 cn | Aurora Noctis | 永夜幻光 | Aurora Noctis | 極夜照らす幻光 | 永夜幻光 | +| 20230831 | war archives 20201229 cn | Inverted Orthant | 负象限作战 | Inverted Orthant | 虚畳なりし限象 | - | +| 20200227 | event 20200227 cn | Northern Overture | 北境序曲 | Northern Overture | 凍絶の北海 | - | +| 20200312 | event 20200312 cn | The Solomon Ranger | 复刻斯图尔特的硝烟 | The Solomon Ranger Rerun | 南洋に靡く硝煙(復刻) | - | +| 20200326 | event 20200326 cn | Microlayer Medley | 微层混合 | Microlayer Medley | 闇靄払う銀翼 | - | +| 20200423 | event 20200423 cn | Crimson Echoes | 复刻苍红的回响 | Crimson Echoes Rerun | 縹映る深緋の残響(復刻) | - | +| 20200507 | event 20200507 cn | The Way Home in the Night | 夜幕下的归途 | The Way Home in the Night | 帰路は海色の陰りへと | - | +| 20200521 | event 20200521 cn | Skybound Oratorio | 穹顶下的圣咏曲 | - | 神穹を衝く聖歌 | - | +| 20200521 | event 20200521 en | Iris of Light and Dark | - | Iris of Light and Dark Rerun | - | - | +| 20200603 | event 20200603 cn | Counterattack Within the Fjord | 峡湾间的反击 | - | 峡湾間の反撃 | - | +| 20200603 | event 20200603 en | Prelude under the Moon | - | Prelude under the Moon Rerun | - | - | +| 20200611 | event 20200611 en | Skybound Oratorio | - | Skybound Oratorio | - | - | +| 20200624 | raid 20200624 | Air Raid Drills with Essex | 复刻特别演习埃塞克斯级 | Air Raid Drills with Essex Rerun | 特別演習超空強襲波(復刻) | 特別演習埃塞克斯級 | +| 20200716 | event 20200716 en | Ink Stained Steel Sakura | - | Ink Stained Steel Sakura Rerun | - | - | +| 20200723 | event 20200723 cn | Aurora Noctis | 永夜幻光 | Aurora Noctis | 極夜照らす幻光 | - | +| 20200806 | event 20200806 cn | The Enigma and the Shark | 复刻最重要的宝物 | - | 鉄血鮫とエニグマ(復刻) | - | +| 20200820 | event 20200820 cn | Scherzo of Iron and Blood | 复刻铁血音符誓言 | Scherzo of Iron and Blood Rerun | 黒鉄の楽章 誓いの海(復刻) | - | +| 20200903 | event 20200903 en | Stars of the Shimmering Fjord | - | Stars of the Shimmering Fjord | - | - | +| 20200917 | event 20200917 cn | Dreamwaker's Butterfly | 蝶海梦花 | Dreamwaker's Butterfly | 刹那觀る胡蝶の夢 | - | +| 20201002 | event 20201002 en | Counterattack Within the Fjord | - | Counterattack Within the Fjord | - | - | +| 20201012 | event 20201012 cn | Sundered Blue | 划破海空之翼 | - | 奔る彩帆の青 | - | +| 20201029 | event 20201029 cn | Universe in Unison | 激唱的UNIVERSE | Universe in Unison | 激唱のユニバース | - | +| 20201105 | event 20200312 cn | The Solomon Ranger | - | - | - | 斯圖爾特的硝煙 | +| 20201112 | event 20200903 en | Stars of the Shimmering Fjord | 复刻峡湾间的星辰 | - | 輝ける峡湾の星(復刻) | - | +| 20201112 | event 20201012 cn | Sundered Blue | - | Sundered Blue | - | - | +| 20201126 | event 20201126 cn | Vacation Lane | 假日航线 | Vacation Lane | バケーションレーン | - | +| 20201210 | event 20200806 cn | The Enigma and the Shark | - | The Enigma and the Shark Rerun | - | - | +| 20201229 | event 20201229 cn | Inverted Orthant | 负象限作战 | Inverted Orthant | 虚畳なりし限象 | - | +| 20210121 | event 20210121 cn | Empyreal Tragicomedy | 复刻神圣的悲喜剧 | Empyreal Tragicomedy Rerun | 悲歎せし焔海の詩(復刻) | - | +| 20210225 | event 20210225 cn | Khorovod of Dawn's Rime | 破晓冰华 | Khorovod of Dawn's Rime | 暁射す氷華の嵐 | - | +| 20210225 | event 20210225 tw | Northern Overture | - | - | - | 北境序曲 | +| 20210325 | event 20210325 cn | Ashen Simulacrum | 复刻箱庭疗法 | Ashen Simulacrum Rerun | 開かれし紺碧の砂箱(復刻) | - | +| 20210415 | event 20210415 tw | Encircling Graf Spee | - | - | - | 復刻圍剿施佩伯爵 | +| 20210422 | event 20210422 cn | Daedalian Hymn | 复兴的赞美诗 | Daedalian Hymn | 讃える復興の迷路 | - | +| 20210429 | event 20210429 tw | Ink Stained Steel Sakura | - | - | - | 復刻墨染的鋼鐵之花 | +| 20210527 | event 20210527 tw | Microlayer Medley | - | - | - | 微層混合 | +| 20210527 | event 20210527 cn | Mirror Involution | 镜位螺旋 | Mirror Involution | 照らす螺旋の鏡海 | - | +| 20210610 | event 20210610 tw | The Way Home in the Night | - | - | - | 夜幕下的歸途 | +| 20210624 | event 20210624 tw | Skybound Oratorio | - | - | - | 穹頂下的聖詠曲 | +| 20210624 | event 20210624 cn | Swirling Cherry Blossoms | 复刻浮樱影华 | Swirling Cherry Blossoms Rerun | 翳りし満ちる影の華(復刻) | - | +| 20210708 | raid 20210708 | Cross Wave | 复刻穿越彼方的水线 | Cross Wave rerun | 交錯する新たな波 (復刻) | - | +| 20210708 | event 20200903 en | Stars of the Shimmering Fjord | - | - | - | 峽灣間的星辰 | +| 20210722 | event 20210722 cn | Azur Anthem | 响彻碧海的偶像歌 | Azur Anthem | 海に響くアイドルの歌 | - | +| 20210729 | event 20200723 cn | Aurora Noctis | - | - | - | 永夜幻光 | +| 20210812 | event 20200806 cn | The Enigma and the Shark | - | - | - | 最重要的寶物 | +| 20210819 | event 20210819 cn | Microlayer Medley | 复刻微层混合 | Microlayer Medley Rerun | 闇靄払う銀翼(復刻) | - | +| 20210826 | event 20210722 cn | Azur Anthem | - | - | - | 響徹碧海的偶像歌 | +| 20210916 | event 20210916 cn | Upon the Shimmering Blue | 碧海光粼 | Upon the Shimmering Blue | 駆けよ 碧海の吹き風 | - | +| 20210923 | event 20200917 cn | Dreamwaker's Butterfly | - | - | - | 蝶海夢花 | +| 20211008 | event 20201012 cn | Sundered Blue | - | - | - | 劃破海空之翼 | +| 20211014 | raid 20210708 | Cross Wave | - | - | - | 穿越彼方的水線 | +| 20211028 | event 20211028 cn | Skybound Oratorio | 复刻穹顶下的圣咏曲 | Skybound Oratorio Rerun | 神穹を衝く聖歌(復刻) | - | +| 20211028 | event 20211028 tw | Iris of Light and Dark | - | - | - | 復刻光與影的鳶尾之華 | +| 20211111 | event 20211111 cn | The Flame-Touched Dagger | 杰诺瓦的焰火 | The Flame-Touched Dagger | 燈火のシニエ | - | +| 20211125 | event 20211125 cn | World-spanning Arclight | 交汇世界的弧光 | World-spanning Arclight | 弧光は交わる世界にて | - | +| 20211130 | event 20211125 cn | World-spanning Arclight | - | - | - | 交匯世界的弧光 | +| 20211214 | event 20200603 cn | Counterattack Within the Fjord | - | - | - | 峽灣間的反擊 | +| 20211229 | event 20211229 cn | Tower of Transcendence | 逆转彩虹之塔 | Tower of Transcendence | 遡望せし虹彩の塔 | - | +| 20211230 | event 20201229 cn | Inverted Orthant | - | - | - | 負象限作戰 | +| 20220127 | raid 20220127 | Mystery Investigation | 演习神秘事件调查 | Mystery Investigation | 秘密事件調査 | - | +| 20220210 | event 20220210 cn | Northern Overture Rerun | 复刻北境序曲 | Northern Overture Rerun | 凍絶の北海(復刻) | - | +| 20220224 | event 20210225 cn | Khorovod of Dawn's Rime | - | - | - | 破曉冰華 | +| 20220224 | event 20220224 cn | Abyssal Refrain | 深度回音 | Abyssal Refrain | 鳴動せし星霜の淵 | - | +| 20220310 | event 20200603 cn | Counterattack Within the Fjord | 复刻峡湾间的反击 | Counterattack Within the Fjord Rerun | 峡湾間の反撃(復刻) | - | +| 20220310 | event 20220310 tw | The Solomon Ranger | - | - | - | 復刻斯圖爾特的硝煙 | +| 20220324 | event 20220324 cn | Virtual Tower | 虚像构筑之塔 | Virtual Tower | 幻像の塔 | - | +| 20220324 | event 20210422 cn | Daedalian Hymn | - | - | - | 復興的讚美詩 | +| 20220407 | event 20220407 tw | Crimson Echoes | - | - | - | 蒼紅的迴響(復刻) | +| 20220414 | event 20220414 cn | Aurora Noctis | 复刻永夜幻光 | Aurora Noctis Rerun | 極夜照らす幻光(復刻) | - | +| 20220428 | event 20220428 cn | Rondo at Rainbow's End | 虹彩的终幕曲 | Rondo at Rainbow's End | 吟ずる瑠璃の楽章 | - | +| 20220505 | raid 20200624 | Air Raid Drills with Essex | - | - | - | 特別演習埃塞克斯級(復刻) | +| 20220526 | event 20220526 cn | Pledge of the Radiant Court | 泠誓光庭 | Pledge of the Radiant Court | 诚閃の剣 搖光の城 | - | +| 20220526 | event 20210527 cn | Mirror Involution | - | - | - | 鏡位螺旋 | +| 20220616 | event 20201012 cn | Sundered Blue | 复刻划破海空之翼 | Sundered Blue Rerun | 奔る彩帆の青(復刻) | - | +| 20220616 | event 20200820 cn | Scherzo of Iron and Blood | - | - | - | 復刻鐵血音符誓言 | +| 20220630 | raid 20210708 | Cross Wave | - | - | - | 復刻穿越彼方的水線 | +| 20220630 | raid 20220630 | Angel of Iris | 来自鸢尾的天使 | Angel of Iris | アイリスの天使 | - | +| 20220714 | event 20201029 cn | Universe in Unison | - | - | - | 激唱的UNIVERSE | +| 20220714 | event 20200917 cn | Dreamwaker's Butterfly | 复刻蝶海梦花 | Dreamwaker's Butterfly Rerun | 刹那觀る胡蝶の夢(復刻) | - | +| 20220728 | event 20220728 cn | Aquilifer's Ballade | 雄鹰的叙事歌 | Aquilifer's Ballade | 鋼鷲の冒険譚 | - | +| 20220804 | event 20211028 cn | Skybound Oratorio Rerun | - | - | - | 復刻穹頂下的聖詠曲 | +| 20220818 | event 20220324 cn | Virtual Tower | - | - | - | 虛像構築之塔 | +| 20220818 | event 20220818 cn | Operation Convergence | 远汇点作战 | Operation Convergence | 結像点作戦 | - | +| 20220901 | event 20200903 en | Stars of the Shimmering Fjord | - | - | - | 復刻峽灣間的星辰 | +| 20220915 | event 20210916 cn | Upon the Shimmering Blue | - | - | - | 碧海光粼 | +| 20220915 | event 20220915 cn | Violet Tempest Blooming Lycoris | 紫绛槿岚 | Violet Tempest Blooming Lycoris | 赫の涙月 菫の暁風 | - | +| 20221021 | event 20210121 cn | Empyreal Tragicomedy | - | - | - | 復刻神聖的悲喜劇 | +| 20221027 | raid 20221027 | Fight! Royal Maid | 战斗!皇家女仆队3rd | Fight On, Royal Maids!(Part 3) | 戦え!ロイヤルメイド隊3rd | - | +| 20221103 | event 20211111 cn | The Flame-Touched Dagger | - | - | - | 杰諾瓦的焰火 | +| 20221110 | event 20201229 cn | Inverted Orthant | 复刻负象限作战 | Inverted Orthant Rerun | 虚畳なりし限象(復刻) | - | +| 20221117 | event 20210325 cn | Ashen Simulacrum | - | - | - | 復刻箱庭療法 | +| 20221124 | event 20221124 cn | The Alchemist and the Archipelago of Secrets | 炼金术士与秘密遗迹群岛 | The Alchemist and the Archipelago of Secrets | 錬金術士と謎の遺跡群島 | - | +| 20221201 | event 20221124 cn | The Alchemist and the Archipelago of Secrets | - | - | - | 鍊金術士與秘密遺跡群島 | +| 20221222 | event 20221222 cn | Parallel Superimposition | 定向折叠 | Parallel Superimposition | 積重なる事象の幻界 | - | +| 20221222 | event 20211229 cn | Tower of Transcendence | - | - | - | 逆轉彩虹之塔 | +| 20230105 | event 20210225 cn | Khorovod of Dawn's Rime | 复刻破晓冰华 | Khorovod of Dawn's Rime Rerun | 暁射す氷華の嵐(復刻) | - | +| 20230105 | event 20210610 tw | The Way Home in the Night | - | - | - | 復刻夜幕下的歸途 | +| 20230118 | raid 20230118 | Winter Pathfinder | 冬日的寻路人 | Winter Pathfinder | 冬の案内人 | - | +| 20230118 | raid 20220127 | - | - | - | - | 演習神秘事件調查 | +| 20230202 | event 20200806 cn | The Enigma and the Shark | - | - | - | 復刻最重要的寶物 | +| 20230216 | event 20220224 cn | Abyssal Refrain | - | - | - | 深度回音 | +| 20230223 | event 20230223 cn | Revelations of Dust | 湮烬尘墟 | Revelations of Dust | 黙示の遺構 | - | +| 20230309 | event 20210624 cn | Swirling Cherry Blossoms | - | - | - | 復刻-浮櫻影華 | +| 20230309 | event 20210422 cn | Daedalian Hymn | 复刻复兴的赞美诗 | Daedalian Hymn Rerun | 讃える復興の迷路(復刻) | - | +| 20230323 | raid 20220630 | Angel of Iris | - | - | - | 來自鳶尾的天使 | +| 20230323 | coalition 20230323 | Frostfall | 极地风暴 | Frostfall | 星霜海嵐 | - | +| 20230413 | event 20211111 cn | The Flame-Touched Dagger | 复刻杰诺瓦的焰火 | The Flame-Touched Dagger Rerun | 復刻-燈火のシニエ | - | +| 20230413 | event 20210819 cn | Microlayer Medley | - | - | - | 復刻-微層混合 | +| 20230427 | event 20201126 cn | Vacation Lane | 假日航线 | Vacation Lane | バケーションレーン | 假日航線 | +| 20230525 | event 20220526 cn | Pledge of the Radiant Court | - | - | - | 泠誓光庭 | +| 20230525 | event 20230525 cn | Confluence of Nothingness | 空相交汇点 | Confluence of Nothingness | 覆天せし万象の塵 | - | +| 20230615 | event 20200603 cn | Counterattack Within the Fjord | - | - | - | 復刻峽灣間的反擊 | +| 20230621 | event 20210527 cn | Mirror Involution Rerun | 复刻镜位螺旋 | Mirror Involution Rerun | 照らす螺旋の鏡海(復刻) | - | +| 20230629 | event 20220428 cn | Rondo at Rainbow's End | - | - | - | 虹彩的終幕曲 | +| 20230629 | raid 20230629 | Reflections of the Oasis | 绿洲往事 | Reflections of the Oasis | 緑地伽話 | - | +| 20230713 | event 20220818 cn | Operation Convergence | - | - | 結像点作戦 | 遠匯點作戰 | +| 20230720 | event 20211125 cn | World-spanning Arclight | 复刻交汇世界的弧光 | World-spanning Arclight Rerun | 弧光は交わる世界にて(復刻) | - | +| 20230727 | event 20200917 cn | Dreamwaker's Butterfly | - | - | - | 復刻-蝶海夢花 | +| 20230803 | event 20211125 cn | World-spanning Arclight | - | - | - | 復刻-交匯世界的弧光 | +| 20230803 | event 20230803 cn | Anthem of Remembrance | 奏响鸢尾之歌 | Anthem of Remembrance | 燃ゆる聖都の回想曲 | - | +| 20230817 | event 20230817 cn | The Fool's Scales | 愚者的天平 | The Fool's Scales | 愚者の天秤 | - | +| 20230817 | event 20220414 cn | Aurora Noctis | - | - | - | 復刻-永夜幻光 | +| 20230824 | coalition 20230323 | Frostfall | - | - | - | 極地風暴 | +| 20230914 | event 20220915 cn | Violet Tempest Blooming Lycoris | - | - | - | 紫絳槿嵐 | +| 20230914 | event 20230914 cn | Effulgence Before Eclipse | 须臾望月抄 | Effulgence Before Eclipse | 須臾望月抄 | - | +| 20231012 | event 20201229 cn | Inverted Orthant | - | - | - | 復刻-負象限作戰 | | 20231019 | raid 20221027 | Fight! Royal Maid | - | - | - | 戰鬥!皇家女僕隊3rd | + diff --git a/campaign/event_20231026_cn/campaign_base.py b/campaign/event_20231026_cn/campaign_base.py deleted file mode 100644 index 33aa6421e..000000000 --- a/campaign/event_20231026_cn/campaign_base.py +++ /dev/null @@ -1,63 +0,0 @@ -import numpy as np - -from module.base.button import Button -from module.base.utils import get_color -from module.campaign.campaign_base import CampaignBase as CampaignBase_ -from module.logger import logger -from module.campaign.assets import CHAPTER_NEXT, CHAPTER_PREV - - -class CampaignBase(CampaignBase_): - STAGE_INCREASE = [ - 'T1 > T2 > T3', - 'T4 > T5 > T6', - ] - - def campaign_set_chapter(self, name, mode='normal'): - """ - Args: - name (str): Campaign name, such as '7-2', 'd3', 'sp3'. - mode (str): 'normal' or 'hard'. - """ - chapter, stage = self._campaign_separate_name(name) - name = chapter + stage - - if chapter.isdigit(): - self.ui_goto_campaign() - self.campaign_ensure_mode('normal') - self.campaign_ensure_chapter(index=chapter) - if mode == 'hard': - self.campaign_ensure_mode('hard') - - elif chapter in 'abcd' or chapter == 'ex_sp': - self.ui_goto_event() - if chapter in 'ab': - self.campaign_ensure_mode('normal') - elif chapter in 'cd': - self.campaign_ensure_mode('hard') - elif chapter == 'ex_sp': - self.campaign_ensure_mode('ex') - self.campaign_ensure_chapter(index=chapter) - - elif chapter == 'sp': - self.ui_goto_sp() - self.campaign_ensure_chapter(index=chapter) - - elif chapter in ['t', 'ts', 'ht', 'hts']: - self.ui_goto_event() - # Campaign mode - if chapter in ['t', 'ts']: - self.campaign_ensure_mode('normal') - if chapter in ['ht', 'hts']: - self.campaign_ensure_mode('hard') - if chapter == 'ex_sp': - self.campaign_ensure_mode('ex') - if chapter in ['t', 'ht']: - if stage in ["1", "2", "3"]: - self.device.click(CHAPTER_PREV) - elif stage in ["4", "5", "6"]: - self.device.click(CHAPTER_NEXT) - # Get stage - self.campaign_ensure_chapter(index=1) - else: - logger.warning(f'Unknown campaign chapter: {name}') diff --git a/campaign/event_20231026_cn/ex.py b/campaign/event_20231026_cn/ex.py deleted file mode 100644 index 240b34cf9..000000000 --- a/campaign/event_20231026_cn/ex.py +++ /dev/null @@ -1,64 +0,0 @@ -from module.campaign.campaign_base import CampaignBase -from module.map.map_base import CampaignMap -from module.map.map_grids import SelectedGrids, RoadGrids -from module.logger import logger - -MAP = CampaignMap('EX') -MAP.shape = 'E7' -MAP.camera_data = ['C4'] -MAP.camera_data_spawn_point = ['C4'] -MAP.map_data = """ - ++ ++ ++ ++ ++ - -- ++ ++ ++ -- - -- ++ ++ ++ -- - ++ ++ MB ++ ++ - ++ -- -- -- ++ - -- -- SP -- -- - -- ++ ++ ++ -- -""" -MAP.weight_data = """ - 50 50 50 50 50 - 50 50 50 50 50 - 50 50 50 50 50 - 50 50 50 50 50 - 50 50 50 50 50 - 50 50 50 50 50 - 50 50 50 50 50 -""" -MAP.spawn_data = [ - {'battle': 0, 'boss': 1}, -] -A1, B1, C1, D1, E1, \ -A2, B2, C2, D2, E2, \ -A3, B3, C3, D3, E3, \ -A4, B4, C4, D4, E4, \ -A5, B5, C5, D5, E5, \ -A6, B6, C6, D6, E6, \ -A7, B7, C7, D7, E7, \ - = MAP.flatten() - - -class Config: - # ===== Start of generated config ===== - MAP_HAS_MAP_STORY = False - MAP_HAS_FLEET_STEP = False - MAP_HAS_AMBUSH = False - MAP_HAS_MYSTERY = False - STAR_REQUIRE_1 = 0 - STAR_REQUIRE_2 = 0 - STAR_REQUIRE_3 = 0 - # ===== End of generated config ===== - - -class Campaign(CampaignBase): - MAP = MAP - ENEMY_FILTER = '1L > 1M > 1E > 1C > 2L > 2M > 2E > 2C > 3L > 3M > 3E > 3C' - - def battle_0(self): - if self.clear_filter_enemy(self.ENEMY_FILTER, preserve=0): - return True - - return self.battle_default() - - def battle_0(self): - return self.clear_boss() diff --git a/campaign/event_20231026_cn/sp.py b/campaign/event_20231026_cn/sp.py deleted file mode 100644 index 66c6347cf..000000000 --- a/campaign/event_20231026_cn/sp.py +++ /dev/null @@ -1,88 +0,0 @@ -from module.campaign.campaign_base import CampaignBase -from module.map.map_base import CampaignMap -from module.map.map_grids import SelectedGrids, RoadGrids -from module.logger import logger - -MAP = CampaignMap('SP') -MAP.shape = 'G8' -MAP.camera_data = ['D2', 'D6'] -MAP.camera_data_spawn_point = ['D6'] -MAP.map_data = """ - ++ ++ -- MB -- ++ ++ - ++ ++ -- -- -- ++ ++ - -- -- -- -- -- -- -- - -- -- -- __ -- -- -- - ++ ++ SP -- SP ++ ++ - ME -- -- -- -- -- ME - -- ME -- ME -- ME -- - ++ -- ME -- ME -- ++ -""" -MAP.weight_data = """ - 50 50 50 50 50 50 50 - 50 50 50 50 50 50 50 - 50 50 50 50 50 50 50 - 50 50 50 50 50 50 50 - 50 50 50 50 50 50 50 - 50 50 50 50 50 50 50 - 50 50 50 50 50 50 50 - 50 50 50 50 50 50 50 -""" -MAP.spawn_data = [ - {'battle': 0}, - {'battle': 1}, - {'battle': 2}, - {'battle': 3, 'enemy': 7}, - {'battle': 4}, - {'battle': 5}, - {'battle': 6}, - {'battle': 7, 'boss': 1}, -] -A1, B1, C1, D1, E1, F1, G1, \ -A2, B2, C2, D2, E2, F2, G2, \ -A3, B3, C3, D3, E3, F3, G3, \ -A4, B4, C4, D4, E4, F4, G4, \ -A5, B5, C5, D5, E5, F5, G5, \ -A6, B6, C6, D6, E6, F6, G6, \ -A7, B7, C7, D7, E7, F7, G7, \ -A8, B8, C8, D8, E8, F8, G8, \ - = MAP.flatten() - - -class Config: - # ===== Start of generated config ===== - MAP_SIREN_TEMPLATE = ['mali', 'weida', 'jinluhao'] - MOVABLE_ENEMY_TURN = (2,) - MAP_HAS_SIREN = True - MAP_HAS_MOVABLE_ENEMY = True - MAP_HAS_MAP_STORY = False - MAP_HAS_FLEET_STEP = False - MAP_HAS_AMBUSH = False - MAP_HAS_MYSTERY = False - STAR_REQUIRE_1 = 0 - STAR_REQUIRE_2 = 0 - STAR_REQUIRE_3 = 0 - # ===== End of generated config ===== - - -class Campaign(CampaignBase): - MAP = MAP - ENEMY_FILTER = '1L > 1M > 1E > 1C > 2L > 2M > 2E > 2C > 3L > 3M > 3E > 3C' - - def battle_0(self): - if self.clear_siren(): - return True - if self.clear_filter_enemy(self.ENEMY_FILTER, preserve=2): - return True - - return self.battle_default() - - def battle_5(self): - if self.clear_siren(): - return True - if self.clear_filter_enemy(self.ENEMY_FILTER, preserve=0): - return True - - return self.battle_default() - - def battle_7(self): - return self.fleet_boss.clear_boss() diff --git a/campaign/event_20231026_cn/t1.py b/campaign/event_20231026_cn/t1.py deleted file mode 100644 index ed7961f78..000000000 --- a/campaign/event_20231026_cn/t1.py +++ /dev/null @@ -1,74 +0,0 @@ -from .campaign_base import CampaignBase -from module.map.map_base import CampaignMap -from module.map.map_grids import SelectedGrids, RoadGrids -from module.logger import logger - -MAP = CampaignMap('T1') -MAP.shape = 'I8' -MAP.camera_data = ['E2', 'E5', 'F2', 'F5'] -MAP.camera_data_spawn_point = ['F5', 'E5'] -MAP.map_data = """ - ++ -- -- -- -- -- -- ++ MB - -- ME -- -- ME -- ME -- -- - -- -- ME ++ ++ -- -- -- -- - -- -- -- Me ++ Me -- ME ++ - -- ME -- -- MS -- -- -- ++ - -- ++ ++ -- __ -- Me -- -- - -- ME -- SP -- SP -- ++ -- - -- -- -- -- -- -- -- -- -- -""" -MAP.weight_data = """ - 50 50 50 50 50 50 50 50 50 - 50 50 50 50 50 50 50 50 50 - 50 50 50 50 50 50 50 50 50 - 50 50 50 50 50 50 50 50 50 - 50 50 50 50 50 50 50 50 50 - 50 50 50 50 50 50 50 50 50 - 50 50 50 50 50 50 50 50 50 - 50 50 50 50 50 50 50 50 50 -""" -MAP.spawn_data = [ - {'battle': 0, 'enemy': 2, 'siren': 1}, - {'battle': 1, 'enemy': 2}, - {'battle': 2, 'enemy': 1}, - {'battle': 3, 'enemy': 1}, - {'battle': 4, 'boss': 1}, -] -A1, B1, C1, D1, E1, F1, G1, H1, I1, \ -A2, B2, C2, D2, E2, F2, G2, H2, I2, \ -A3, B3, C3, D3, E3, F3, G3, H3, I3, \ -A4, B4, C4, D4, E4, F4, G4, H4, I4, \ -A5, B5, C5, D5, E5, F5, G5, H5, I5, \ -A6, B6, C6, D6, E6, F6, G6, H6, I6, \ -A7, B7, C7, D7, E7, F7, G7, H7, I7, \ -A8, B8, C8, D8, E8, F8, G8, H8, I8, \ - = MAP.flatten() - - -class Config: - # ===== Start of generated config ===== - MAP_SIREN_TEMPLATE = ['DD'] - MOVABLE_ENEMY_TURN = (2,) - MAP_HAS_SIREN = True - MAP_HAS_MOVABLE_ENEMY = True - MAP_HAS_MAP_STORY = True - MAP_HAS_FLEET_STEP = True - MAP_HAS_AMBUSH = False - MAP_HAS_MYSTERY = False - # ===== End of generated config ===== - - -class Campaign(CampaignBase): - MAP = MAP - ENEMY_FILTER = '1L > 1M > 1E > 1C > 2L > 2M > 2E > 2C > 3L > 3M > 3E > 3C' - - def battle_0(self): - if self.clear_siren(): - return True - if self.clear_filter_enemy(self.ENEMY_FILTER, preserve=0): - return True - - return self.battle_default() - - def battle_4(self): - return self.clear_boss() diff --git a/campaign/event_20231026_cn/t2.py b/campaign/event_20231026_cn/t2.py deleted file mode 100644 index 13447d623..000000000 --- a/campaign/event_20231026_cn/t2.py +++ /dev/null @@ -1,75 +0,0 @@ -from .campaign_base import CampaignBase -from module.map.map_base import CampaignMap -from module.map.map_grids import SelectedGrids, RoadGrids -from module.logger import logger -from .t1 import Config as ConfigBase - -MAP = CampaignMap('T2') -MAP.shape = 'I8' -MAP.camera_data = ['D2', 'D5', 'F2', 'F5'] -MAP.camera_data_spawn_point = ['F2'] -MAP.map_data = """ - -- -- -- ++ ++ -- -- SP -- - -- ME -- ++ ++ MS -- -- SP - ME -- ME -- MB -- __ -- -- - ++ -- ++ Me -- Me -- MS -- - ME -- -- -- -- ++ ++ ++ -- - -- ME -- ME -- -- Me -- -- - -- ++ ++ -- -- ME ++ ME -- - -- -- -- -- -- -- -- -- -- -""" -MAP.weight_data = """ - 50 50 50 50 50 50 50 50 50 - 50 50 50 50 50 50 50 50 50 - 50 50 50 50 50 50 50 50 50 - 50 50 50 50 50 50 50 50 50 - 50 50 50 50 50 50 50 50 50 - 50 50 50 50 50 50 50 50 50 - 50 50 50 50 50 50 50 50 50 - 50 50 50 50 50 50 50 50 50 -""" -MAP.spawn_data = [ - {'battle': 0, 'enemy': 3, 'siren': 1}, - {'battle': 1, 'enemy': 2}, - {'battle': 2, 'enemy': 1}, - {'battle': 3, 'enemy': 1}, - {'battle': 4, 'boss': 1}, -] -A1, B1, C1, D1, E1, F1, G1, H1, I1, \ -A2, B2, C2, D2, E2, F2, G2, H2, I2, \ -A3, B3, C3, D3, E3, F3, G3, H3, I3, \ -A4, B4, C4, D4, E4, F4, G4, H4, I4, \ -A5, B5, C5, D5, E5, F5, G5, H5, I5, \ -A6, B6, C6, D6, E6, F6, G6, H6, I6, \ -A7, B7, C7, D7, E7, F7, G7, H7, I7, \ -A8, B8, C8, D8, E8, F8, G8, H8, I8, \ - = MAP.flatten() - - -class Config(ConfigBase): - # ===== Start of generated config ===== - MAP_SIREN_TEMPLATE = ['fengfan_xl'] - MOVABLE_ENEMY_TURN = (2,) - MAP_HAS_SIREN = True - MAP_HAS_MOVABLE_ENEMY = True - MAP_HAS_MAP_STORY = True - MAP_HAS_FLEET_STEP = True - MAP_HAS_AMBUSH = False - MAP_HAS_MYSTERY = False - # ===== End of generated config ===== - - -class Campaign(CampaignBase): - MAP = MAP - ENEMY_FILTER = '1L > 1M > 1E > 1C > 2L > 2M > 2E > 2C > 3L > 3M > 3E > 3C' - - def battle_0(self): - if self.clear_siren(): - return True - if self.clear_filter_enemy(self.ENEMY_FILTER, preserve=0): - return True - - return self.battle_default() - - def battle_4(self): - return self.clear_boss() diff --git a/campaign/event_20231026_cn/t3.py b/campaign/event_20231026_cn/t3.py deleted file mode 100644 index 1d01a37a2..000000000 --- a/campaign/event_20231026_cn/t3.py +++ /dev/null @@ -1,76 +0,0 @@ -from .campaign_base import CampaignBase -from module.map.map_base import CampaignMap -from module.map.map_grids import SelectedGrids, RoadGrids -from module.logger import logger -from .t1 import Config as ConfigBase - -MAP = CampaignMap('T3') -MAP.shape = 'J8' -MAP.camera_data = ['D3', 'D6', 'G3', 'G6'] -MAP.camera_data_spawn_point = ['D3'] -MAP.map_data = """ - ++ ++ -- -- -- -- ++ ++ -- -- - MB ++ -- SP -- -- -- -- ME -- - -- -- SP -- -- MS ++ -- -- ME - Me -- -- -- MS -- Me -- ME -- - -- Me ++ ++ -- ++ ++ -- -- ++ - ME -- -- Me __ Me -- -- Me -- - ++ ME -- -- -- -- -- ME ++ ++ - -- -- ME ++ ++ ++ ME -- ++ ++ -""" -MAP.weight_data = """ - 50 50 50 50 50 50 50 50 50 50 - 50 50 50 50 50 50 50 50 50 50 - 50 50 50 50 50 50 50 50 50 50 - 50 50 50 50 50 50 50 50 50 50 - 50 50 50 50 50 50 50 50 50 50 - 50 50 50 50 50 50 50 50 50 50 - 50 50 50 50 50 50 50 50 50 50 - 50 50 50 50 50 50 50 50 50 50 -""" -MAP.spawn_data = [ - {'battle': 0, 'enemy': 3, 'siren': 2}, - {'battle': 1, 'enemy': 2}, - {'battle': 2, 'enemy': 1}, - {'battle': 3, 'enemy': 1}, - {'battle': 4}, - {'battle': 5, 'boss': 1}, -] -A1, B1, C1, D1, E1, F1, G1, H1, I1, J1, \ -A2, B2, C2, D2, E2, F2, G2, H2, I2, J2, \ -A3, B3, C3, D3, E3, F3, G3, H3, I3, J3, \ -A4, B4, C4, D4, E4, F4, G4, H4, I4, J4, \ -A5, B5, C5, D5, E5, F5, G5, H5, I5, J5, \ -A6, B6, C6, D6, E6, F6, G6, H6, I6, J6, \ -A7, B7, C7, D7, E7, F7, G7, H7, I7, J7, \ -A8, B8, C8, D8, E8, F8, G8, H8, I8, J8, \ - = MAP.flatten() - - -class Config(ConfigBase): - # ===== Start of generated config ===== - MAP_SIREN_TEMPLATE = ['CL', 'CA'] - MOVABLE_ENEMY_TURN = (2,) - MAP_HAS_SIREN = True - MAP_HAS_MOVABLE_ENEMY = True - MAP_HAS_MAP_STORY = True - MAP_HAS_FLEET_STEP = True - MAP_HAS_AMBUSH = False - MAP_HAS_MYSTERY = False - # ===== End of generated config ===== - - -class Campaign(CampaignBase): - MAP = MAP - ENEMY_FILTER = '1L > 1M > 1E > 1C > 2L > 2M > 2E > 2C > 3L > 3M > 3E > 3C' - - def battle_0(self): - if self.clear_siren(): - return True - if self.clear_filter_enemy(self.ENEMY_FILTER, preserve=0): - return True - - return self.battle_default() - - def battle_5(self): - return self.fleet_boss.clear_boss() diff --git a/campaign/event_20231026_cn/t4.py b/campaign/event_20231026_cn/t4.py deleted file mode 100644 index f0d0b311c..000000000 --- a/campaign/event_20231026_cn/t4.py +++ /dev/null @@ -1,76 +0,0 @@ -from .campaign_base import CampaignBase -from module.map.map_base import CampaignMap -from module.map.map_grids import SelectedGrids, RoadGrids -from module.logger import logger -from .t1 import Config as ConfigBase - -MAP = CampaignMap('T4') -MAP.shape = 'J8' -MAP.camera_data = ['D3', 'D6', 'G3', 'G6'] -MAP.camera_data_spawn_point = ['G3'] -MAP.map_data = """ - ++ ++ -- -- -- -- -- -- ++ ++ - -- ME -- Me ++ -- -- SP MB ++ - ME -- -- -- -- MS -- -- SP -- - -- ME -- ME ME -- __ -- -- -- - -- -- ++ ++ -- Me -- MS -- Me - ++ ++ ++ -- ME -- -- -- ++ -- - ++ ++ ++ ++ ME -- ME -- Me -- - ++ ++ ++ ++ -- ME -- ++ ++ ++ -""" -MAP.weight_data = """ - 50 50 50 50 50 50 50 50 50 50 - 50 50 50 50 50 50 50 50 50 50 - 50 50 50 50 50 50 50 50 50 50 - 50 50 50 50 50 50 50 50 50 50 - 50 50 50 50 50 50 50 50 50 50 - 50 50 50 50 50 50 50 50 50 50 - 50 50 50 50 50 50 50 50 50 50 - 50 50 50 50 50 50 50 50 50 50 -""" -MAP.spawn_data = [ - {'battle': 0, 'enemy': 3, 'siren': 2}, - {'battle': 1, 'enemy': 2}, - {'battle': 2, 'enemy': 1}, - {'battle': 3, 'enemy': 1}, - {'battle': 4, 'enemy': 1}, - {'battle': 5, 'boss': 1}, -] -A1, B1, C1, D1, E1, F1, G1, H1, I1, J1, \ -A2, B2, C2, D2, E2, F2, G2, H2, I2, J2, \ -A3, B3, C3, D3, E3, F3, G3, H3, I3, J3, \ -A4, B4, C4, D4, E4, F4, G4, H4, I4, J4, \ -A5, B5, C5, D5, E5, F5, G5, H5, I5, J5, \ -A6, B6, C6, D6, E6, F6, G6, H6, I6, J6, \ -A7, B7, C7, D7, E7, F7, G7, H7, I7, J7, \ -A8, B8, C8, D8, E8, F8, G8, H8, I8, J8, \ - = MAP.flatten() - - -class Config(ConfigBase): - # ===== Start of generated config ===== - MAP_SIREN_TEMPLATE = ['CL', 'CA'] - MOVABLE_ENEMY_TURN = (2,) - MAP_HAS_SIREN = True - MAP_HAS_MOVABLE_ENEMY = True - MAP_HAS_MAP_STORY = True - MAP_HAS_FLEET_STEP = True - MAP_HAS_AMBUSH = False - MAP_HAS_MYSTERY = False - # ===== End of generated config ===== - - -class Campaign(CampaignBase): - MAP = MAP - ENEMY_FILTER = '1L > 1M > 1E > 1C > 2L > 2M > 2E > 2C > 3L > 3M > 3E > 3C' - - def battle_0(self): - if self.clear_siren(): - return True - if self.clear_filter_enemy(self.ENEMY_FILTER, preserve=0): - return True - - return self.battle_default() - - def battle_5(self): - return self.fleet_boss.clear_boss() diff --git a/campaign/event_20231026_cn/t5.py b/campaign/event_20231026_cn/t5.py deleted file mode 100644 index 03870f139..000000000 --- a/campaign/event_20231026_cn/t5.py +++ /dev/null @@ -1,91 +0,0 @@ -from .campaign_base import CampaignBase -from module.map.map_base import CampaignMap -from module.map.map_grids import SelectedGrids, RoadGrids -from module.logger import logger -from .t1 import Config as ConfigBase - -MAP = CampaignMap('T5') -MAP.shape = 'I10' -MAP.camera_data = ['D3', 'D7', 'D8', 'F3', 'F7', 'F8'] -MAP.camera_data_spawn_point = ['D8', 'F8'] -MAP.map_data = """ - ++ ++ ++ ++ ++ ++ ++ ++ ++ - -- ME -- ++ ++ ++ -- ME -- - -- -- ME ++ ++ ++ ME -- -- - ME -- -- ++ MB ++ -- -- ME - -- ME -- -- -- -- -- ME -- - ++ -- ME Me -- Me ME -- ++ - -- Me ++ ++ MS ++ ++ Me -- - ME -- MS -- __ -- MS -- ME - -- Me -- -- -- -- -- Me -- - ++ ++ ++ SP -- SP ++ ++ ++ -""" -MAP.weight_data = """ - 50 50 50 50 50 50 50 50 50 - 50 50 50 50 50 50 50 50 50 - 50 50 50 50 50 50 50 50 50 - 50 50 50 50 50 50 50 50 50 - 50 50 50 50 50 50 50 50 50 - 50 50 50 50 50 50 50 50 50 - 50 50 50 50 50 50 50 50 50 - 50 50 50 50 50 50 50 50 50 - 50 50 50 50 50 50 50 50 50 - 50 50 50 50 50 50 50 50 50 -""" -MAP.spawn_data = [ - {'battle': 0, 'enemy': 3, 'siren': 2}, - {'battle': 1, 'enemy': 2, 'siren': 1}, - {'battle': 2, 'enemy': 1}, - {'battle': 3, 'enemy': 1}, - {'battle': 4, 'enemy': 1}, - {'battle': 5}, - {'battle': 6, 'boss': 1}, -] -A1, B1, C1, D1, E1, F1, G1, H1, I1, \ -A2, B2, C2, D2, E2, F2, G2, H2, I2, \ -A3, B3, C3, D3, E3, F3, G3, H3, I3, \ -A4, B4, C4, D4, E4, F4, G4, H4, I4, \ -A5, B5, C5, D5, E5, F5, G5, H5, I5, \ -A6, B6, C6, D6, E6, F6, G6, H6, I6, \ -A7, B7, C7, D7, E7, F7, G7, H7, I7, \ -A8, B8, C8, D8, E8, F8, G8, H8, I8, \ -A9, B9, C9, D9, E9, F9, G9, H9, I9, \ -A10, B10, C10, D10, E10, F10, G10, H10, I10, \ - = MAP.flatten() - - -class Config(ConfigBase): - # ===== Start of generated config ===== - MAP_SIREN_TEMPLATE = ['fengfan_ghost_xl'] - MOVABLE_ENEMY_TURN = (2,) - MAP_HAS_SIREN = True - MAP_HAS_MOVABLE_ENEMY = True - MAP_HAS_MAP_STORY = True - MAP_HAS_FLEET_STEP = True - MAP_HAS_AMBUSH = False - MAP_HAS_MYSTERY = False - # ===== End of generated config ===== - - -class Campaign(CampaignBase): - MAP = MAP - ENEMY_FILTER = '1L > 1M > 1E > 1C > 2L > 2M > 2E > 2C > 3L > 3M > 3E > 3C' - - def battle_0(self): - if self.clear_siren(): - return True - if self.clear_filter_enemy(self.ENEMY_FILTER, preserve=1): - return True - - return self.battle_default() - - def battle_5(self): - if self.clear_siren(): - return True - if self.clear_filter_enemy(self.ENEMY_FILTER, preserve=0): - return True - - return self.battle_default() - - def battle_6(self): - return self.fleet_boss.clear_boss() diff --git a/campaign/event_20231026_cn/t6.py b/campaign/event_20231026_cn/t6.py deleted file mode 100644 index ab06e2e24..000000000 --- a/campaign/event_20231026_cn/t6.py +++ /dev/null @@ -1,91 +0,0 @@ -from .campaign_base import CampaignBase -from module.map.map_base import CampaignMap -from module.map.map_grids import SelectedGrids, RoadGrids -from module.logger import logger -from .t1 import Config as ConfigBase - -MAP = CampaignMap('T6') -MAP.shape = 'I10' -MAP.camera_data = ['E5', 'E8'] -MAP.camera_data_spawn_point = ['E8'] -MAP.map_data = """ - -- -- -- -- -- -- -- -- -- - -- -- -- -- -- -- -- -- -- - -- -- ++ ++ ++ ++ ++ -- -- - -- -- ++ MS -- MS ++ -- -- - -- -- ++ -- MB -- ++ -- -- - -- -- ++ -- MS -- ++ -- -- - -- -- ++ ++ -- ++ ++ -- -- - -- ME -- SP -- SP -- ME -- - -- Me -- -- __ -- -- Me -- - -- -- ME ME -- ME ME -- -- -""" -MAP.weight_data = """ - 50 50 50 50 50 50 50 50 50 - 50 50 50 50 50 50 50 50 50 - 50 50 50 50 50 50 50 50 50 - 50 50 50 50 50 50 50 50 50 - 50 50 50 50 50 50 50 50 50 - 50 50 50 50 50 50 50 50 50 - 50 50 50 50 50 50 50 50 50 - 50 50 50 50 50 50 50 50 50 - 50 50 50 50 50 50 50 50 50 - 50 50 50 50 50 50 50 50 50 -""" -MAP.spawn_data = [ - {'battle': 0, 'enemy': 8, 'siren': 3}, - {'battle': 1}, - {'battle': 2}, - {'battle': 3}, - {'battle': 4}, - {'battle': 5}, - {'battle': 6, 'boss': 1}, -] -A1, B1, C1, D1, E1, F1, G1, H1, I1, \ -A2, B2, C2, D2, E2, F2, G2, H2, I2, \ -A3, B3, C3, D3, E3, F3, G3, H3, I3, \ -A4, B4, C4, D4, E4, F4, G4, H4, I4, \ -A5, B5, C5, D5, E5, F5, G5, H5, I5, \ -A6, B6, C6, D6, E6, F6, G6, H6, I6, \ -A7, B7, C7, D7, E7, F7, G7, H7, I7, \ -A8, B8, C8, D8, E8, F8, G8, H8, I8, \ -A9, B9, C9, D9, E9, F9, G9, H9, I9, \ -A10, B10, C10, D10, E10, F10, G10, H10, I10, \ - = MAP.flatten() - - -class Config(ConfigBase): - # ===== Start of generated config ===== - MAP_SIREN_TEMPLATE = ['BB', 'CV'] - MOVABLE_ENEMY_TURN = (2,) - MAP_HAS_SIREN = True - MAP_HAS_MOVABLE_ENEMY = True - MAP_HAS_MAP_STORY = True - MAP_HAS_FLEET_STEP = True - MAP_HAS_AMBUSH = False - MAP_HAS_MYSTERY = False - # ===== End of generated config ===== - - -class Campaign(CampaignBase): - MAP = MAP - ENEMY_FILTER = '1L > 1M > 1E > 1C > 2L > 2M > 2E > 2C > 3L > 3M > 3E > 3C' - - def battle_0(self): - if self.clear_siren(): - return True - if self.clear_filter_enemy(self.ENEMY_FILTER, preserve=1): - return True - - return self.battle_default() - - def battle_5(self): - if self.clear_siren(): - return True - if self.clear_filter_enemy(self.ENEMY_FILTER, preserve=0): - return True - - return self.battle_default() - - def battle_6(self): - return self.fleet_boss.clear_boss() diff --git a/module/campaign/campaign_ui.py b/module/campaign/campaign_ui.py index 3d2df02fe..f6fd2cacd 100644 --- a/module/campaign/campaign_ui.py +++ b/module/campaign/campaign_ui.py @@ -83,11 +83,9 @@ class CampaignUI(CampaignEvent, CampaignOcr): if mode == 'ex': logger.warning('Trying to goto EX, but no EX mode switch') elif mode == 'normal': - if self.appear(SWITCH_1_NORMAL): - MODE_SWITCH_1.set('hard', main=self) + MODE_SWITCH_1.set('hard', main=self) elif mode == 'hard': - if self.appear(SWITCH_1_HARD): - MODE_SWITCH_1.set('normal', main=self) + MODE_SWITCH_1.set('normal', main=self) else: logger.warning(f'Unknown campaign mode: {mode}') else: diff --git a/module/campaign/run.py b/module/campaign/run.py index 14835e84b..d7568df81 100644 --- a/module/campaign/run.py +++ b/module/campaign/run.py @@ -231,8 +231,7 @@ class CampaignRun(CampaignEvent, ShopStatus): 'event_20200917_cn', 'event_20221124_cn', 'event_20230525_cn', - 'event_20211125_cn', - 'event_20231026_cn',# chapter T + 'event_20211125_cn', # chapter T ]: name = convert.get(name, name) else: @@ -389,15 +388,6 @@ class CampaignRun(CampaignEvent, ShopStatus): self.device.click_record_clear() try: self.campaign.run() - if self.config.task.command in ['ResearchFarm', 'ResearchFarm2', 'ResearchFarm3', 'ResearchFarm4', 'ResearchFarm5', 'ResearchFarm6']: - CurrentTimes = deep_get(self.config.data, "ResearchFarmingSetting.ResearchFarmingSetting.CurrentCampaignTimes") + 1 - CheckInterval = deep_get(self.config.data, "ResearchFarmingSetting.ResearchFarmingSetting.CheckInterval") - self.config.modified["ResearchFarmingSetting.ResearchFarmingSetting.CurrentCampaignTimes"] = CurrentTimes - if CurrentTimes % CheckInterval == 0: - from module.research_farming.farming import ResearchFarming - ResearchFarming(config=self.config, device=self.device).CheckResearchShipExperience() - self.config.update() - except ScriptEnd as e: logger.hr('Script end') logger.info(str(e)) diff --git a/module/config/argument/args.json b/module/config/argument/args.json index 3db95b30f..f8e1cc38a 100644 --- a/module/config/argument/args.json +++ b/module/config/argument/args.json @@ -1694,14 +1694,13 @@ "event_20230525_cn", "event_20230803_cn", "event_20230817_cn", - "event_20230914_cn", - "event_20231026_cn" + "event_20230914_cn" ], "display": "hide", - "cn": "event_20231026_cn", + "cn": "event_20230914_cn", "en": "event_20230914_cn", "jp": "event_20230914_cn", - "tw": "event_20231026_cn" + "tw": "event_20201229_cn" }, "Mode": { "type": "select", @@ -2017,13 +2016,12 @@ "event_20230525_cn", "event_20230803_cn", "event_20230817_cn", - "event_20230914_cn", - "event_20231026_cn" + "event_20230914_cn" ], - "cn": "event_20231026_cn", + "cn": "event_20230914_cn", "en": "event_20230914_cn", "jp": "event_20230914_cn", - "tw": "event_20231026_cn" + "tw": "event_20201229_cn" }, "Mode": { "type": "select", @@ -2454,13 +2452,12 @@ "event_20230525_cn", "event_20230803_cn", "event_20230817_cn", - "event_20230914_cn", - "event_20231026_cn" + "event_20230914_cn" ], - "cn": "event_20231026_cn", + "cn": "event_20230914_cn", "en": "event_20230914_cn", "jp": "event_20230914_cn", - "tw": "event_20231026_cn" + "tw": "event_20220915_cn" }, "Mode": { "type": "select", @@ -2891,13 +2888,12 @@ "event_20230525_cn", "event_20230803_cn", "event_20230817_cn", - "event_20230914_cn", - "event_20231026_cn" + "event_20230914_cn" ], - "cn": "event_20231026_cn", + "cn": "event_20230914_cn", "en": "event_20230914_cn", "jp": "event_20230914_cn", - "tw": "event_20231026_cn" + "tw": "event_20201229_cn" }, "Mode": { "type": "select", @@ -4241,14 +4237,13 @@ "event_20230525_cn", "event_20230803_cn", "event_20230817_cn", - "event_20230914_cn", - "event_20231026_cn" + "event_20230914_cn" ], "display": "disabled", - "cn": "event_20231026_cn", + "cn": "event_20230914_cn", "en": "event_20230914_cn", "jp": "event_20230914_cn", - "tw": "event_20231026_cn" + "tw": "event_20201229_cn" }, "Mode": { "type": "select", @@ -4696,14 +4691,13 @@ "event_20230525_cn", "event_20230803_cn", "event_20230817_cn", - "event_20230914_cn", - "event_20231026_cn" + "event_20230914_cn" ], "display": "disabled", - "cn": "event_20231026_cn", + "cn": "event_20230914_cn", "en": "event_20230914_cn", "jp": "event_20230914_cn", - "tw": "event_20231026_cn" + "tw": "event_20201229_cn" }, "Mode": { "type": "select", @@ -5151,14 +5145,13 @@ "event_20230525_cn", "event_20230803_cn", "event_20230817_cn", - "event_20230914_cn", - "event_20231026_cn" + "event_20230914_cn" ], "display": "disabled", - "cn": "event_20231026_cn", + "cn": "event_20230914_cn", "en": "event_20230914_cn", "jp": "event_20230914_cn", - "tw": "event_20231026_cn" + "tw": "event_20201229_cn" }, "Mode": { "type": "select", @@ -5606,14 +5599,13 @@ "event_20230525_cn", "event_20230803_cn", "event_20230817_cn", - "event_20230914_cn", - "event_20231026_cn" + "event_20230914_cn" ], "display": "disabled", - "cn": "event_20231026_cn", + "cn": "event_20230914_cn", "en": "event_20230914_cn", "jp": "event_20230914_cn", - "tw": "event_20231026_cn" + "tw": "event_20201229_cn" }, "Mode": { "type": "select", @@ -6051,14 +6043,13 @@ "event_20230525_cn", "event_20230803_cn", "event_20230817_cn", - "event_20230914_cn", - "event_20231026_cn" + "event_20230914_cn" ], "display": "disabled", - "cn": "event_20231026_cn", + "cn": "event_20230914_cn", "en": "event_20230914_cn", "jp": "event_20230914_cn", - "tw": "event_20231026_cn" + "tw": "event_20201229_cn" }, "Mode": { "type": "select", diff --git a/module/config/i18n/en-US.json b/module/config/i18n/en-US.json index ddf43156f..dc4de287b 100644 --- a/module/config/i18n/en-US.json +++ b/module/config/i18n/en-US.json @@ -724,7 +724,6 @@ "event_20230803_cn": "Anthem of Remembrance", "event_20230817_cn": "The Fools Scales", "event_20230914_cn": "Effulgence Before Eclipse", - "event_20231026_cn": "飓风与青春之泉", "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 5e3fd9694..6a8c32b27 100644 --- a/module/config/i18n/ja-JP.json +++ b/module/config/i18n/ja-JP.json @@ -724,7 +724,6 @@ "event_20230803_cn": "燃ゆる聖都の回想曲", "event_20230817_cn": "愚者の天秤", "event_20230914_cn": "須臾望月抄", - "event_20231026_cn": "飓风与青春之泉", "raid_20200624": "特別演習超空強襲波(復刻)", "raid_20210708": "交錯する新たな波 (復刻)", "raid_20220127": "秘密事件調査", diff --git a/module/config/i18n/zh-CN.json b/module/config/i18n/zh-CN.json index 0fe0c414b..172cba9a4 100644 --- a/module/config/i18n/zh-CN.json +++ b/module/config/i18n/zh-CN.json @@ -724,7 +724,6 @@ "event_20230803_cn": "奏响鸢尾之歌", "event_20230817_cn": "愚者的天平", "event_20230914_cn": "须臾望月抄", - "event_20231026_cn": "飓风与青春之泉", "raid_20200624": "复刻特别演习埃塞克斯级", "raid_20210708": "复刻穿越彼方的水线", "raid_20220127": "演习神秘事件调查", diff --git a/module/config/i18n/zh-TW.json b/module/config/i18n/zh-TW.json index 64f9a03bb..b1eaa6f20 100644 --- a/module/config/i18n/zh-TW.json +++ b/module/config/i18n/zh-TW.json @@ -724,7 +724,6 @@ "event_20230803_cn": "Anthem of Remembrance", "event_20230817_cn": "The Fools Scales", "event_20230914_cn": "Effulgence Before Eclipse", - "event_20231026_cn": "復刻-負象限作戰", "raid_20200624": "特別演習埃塞克斯級(復刻)", "raid_20210708": "復刻穿越彼方的水線", "raid_20220127": "演習神秘事件調查", diff --git a/module/template/assets.py b/module/template/assets.py index 0d72aedfc..85932cf72 100644 --- a/module/template/assets.py +++ b/module/template/assets.py @@ -89,8 +89,6 @@ TEMPLATE_SIREN_DogPink = Template(file={'cn': './assets/cn/template/TEMPLATE_SIR TEMPLATE_SIREN_Dorsetshire = Template(file={'cn': './assets/cn/template/TEMPLATE_SIREN_Dorsetshire.gif', 'en': './assets/en/template/TEMPLATE_SIREN_Dorsetshire.gif', 'jp': './assets/jp/template/TEMPLATE_SIREN_Dorsetshire.gif', 'tw': './assets/tw/template/TEMPLATE_SIREN_Dorsetshire.gif'}) TEMPLATE_SIREN_DukeOfYork = Template(file={'cn': './assets/cn/template/TEMPLATE_SIREN_DukeOfYork.gif', 'en': './assets/en/template/TEMPLATE_SIREN_DukeOfYork.gif', 'jp': './assets/jp/template/TEMPLATE_SIREN_DukeOfYork.gif', 'tw': './assets/tw/template/TEMPLATE_SIREN_DukeOfYork.gif'}) TEMPLATE_SIREN_ELpurple = Template(file={'cn': './assets/cn/template/TEMPLATE_SIREN_ELpurple.gif', 'en': './assets/en/template/TEMPLATE_SIREN_ELpurple.gif', 'jp': './assets/jp/template/TEMPLATE_SIREN_ELpurple.gif', 'tw': './assets/tw/template/TEMPLATE_SIREN_ELpurple.gif'}) -TEMPLATE_SIREN_fengfan_ghost_xl = Template(file={'cn': './assets/cn/template/TEMPLATE_SIREN_fengfan_ghost_xl.png', 'en': './assets/cn/template/TEMPLATE_SIREN_fengfan_ghost_xl.png', 'jp': './assets/cn/template/TEMPLATE_SIREN_fengfan_ghost_xl.png', 'tw': './assets/cn/template/TEMPLATE_SIREN_fengfan_ghost_xl.png'}) -TEMPLATE_SIREN_fengfan_xl = Template(file={'cn': './assets/cn/template/TEMPLATE_SIREN_fengfan_xl.png', 'en': './assets/cn/template/TEMPLATE_SIREN_fengfan_xl.png', 'jp': './assets/cn/template/TEMPLATE_SIREN_fengfan_xl.png', 'tw': './assets/cn/template/TEMPLATE_SIREN_fengfan_xl.png'}) TEMPLATE_SIREN_Formidable = Template(file={'cn': './assets/cn/template/TEMPLATE_SIREN_Formidable.gif', 'en': './assets/en/template/TEMPLATE_SIREN_Formidable.gif', 'jp': './assets/jp/template/TEMPLATE_SIREN_Formidable.gif', 'tw': './assets/tw/template/TEMPLATE_SIREN_Formidable.gif'}) TEMPLATE_SIREN_Gascogne = Template(file={'cn': './assets/cn/template/TEMPLATE_SIREN_Gascogne.gif', 'en': './assets/en/template/TEMPLATE_SIREN_Gascogne.gif', 'jp': './assets/jp/template/TEMPLATE_SIREN_Gascogne.gif', 'tw': './assets/tw/template/TEMPLATE_SIREN_Gascogne.gif'}) TEMPLATE_SIREN_Gloucester = Template(file={'cn': './assets/cn/template/TEMPLATE_SIREN_Gloucester.gif', 'en': './assets/en/template/TEMPLATE_SIREN_Gloucester.gif', 'jp': './assets/jp/template/TEMPLATE_SIREN_Gloucester.gif', 'tw': './assets/tw/template/TEMPLATE_SIREN_Gloucester.gif'}) diff --git a/webapp/packages/main/public/deploy.yaml.tpl b/webapp/packages/main/public/deploy.yaml.tpl index 58732023f..9eeac55d4 100644 --- a/webapp/packages/main/public/deploy.yaml.tpl +++ b/webapp/packages/main/public/deploy.yaml.tpl @@ -1,13 +1,13 @@ Deploy: Git: # URL of AzurLaneAutoScript repository - # [CN user] Use 'git://git.lyoko.io/AzurLaneAutoScript' for faster and more stable download - # [Other] Use 'https://github.com/LmeSzinc/AzurLaneAutoScript' + # [CN user] Use 'https://gitee.com/O0o0oOoO00O/Alas' for faster and more stable download + # [Other] Use 'https://github.com/0O0o0oOoO00/Alas' Repository: {{repository}} # Branch of Alas # [Developer] Use 'dev', 'app', etc, to try new features # [Other] Use 'master', the stable branch - Branch: master + Branch: smallkai # Filepath of git executable `git.exe` # [Easy installer] Use './toolkit/Git/mingw64/bin/git.exe' # [Other] Use you own git