From 6bd7209464aab0fc41b905550c93b54a626506c8 Mon Sep 17 00:00:00 2001 From: X-Zero-L Date: Wed, 27 Dec 2023 13:09:44 +0800 Subject: [PATCH 01/16] Upd: Character --- assets/character/RuanMei.png | Bin 0 -> 16798 bytes assets/character/Xueyi.png | Bin 0 -> 15553 bytes config/template.json | 18 +- dev_tools/keyword_extract.py | 12 +- module/config/argument/args.json | 214 +++- module/config/config_generated.py | 18 +- module/config/config_updater.py | 4 +- module/config/i18n/en-US.json | 128 ++- module/config/i18n/es-ES.json | 114 +- module/config/i18n/ja-JP.json | 116 +- module/config/i18n/zh-CN.json | 114 +- module/config/i18n/zh-TW.json | 114 +- tasks/battle_pass/keywords/quest.py | 61 +- tasks/character/keywords/character_list.py | 87 +- tasks/character/keywords/height.py | 1 + tasks/daily/keywords/daily_quest.py | 132 ++- tasks/dungeon/dungeon.py | 6 +- tasks/dungeon/keywords/dungeon.py | 57 +- tasks/dungeon/keywords/dungeon_detailed.py | 30 +- tasks/dungeon/ui.py | 12 +- tasks/rogue/keywords/bonus.py | 44 +- tasks/rogue/keywords/curio.py | 144 +++ tasks/rogue/keywords/event_option.py | 1123 ++++++++++++++------ tasks/rogue/keywords/event_title.py | 334 ++++-- tasks/rogue/keywords/path.py | 54 + tasks/rogue/keywords/resonance.py | 332 +++++- 26 files changed, 2610 insertions(+), 659 deletions(-) create mode 100644 assets/character/RuanMei.png create mode 100644 assets/character/Xueyi.png diff --git a/assets/character/RuanMei.png b/assets/character/RuanMei.png new file mode 100644 index 0000000000000000000000000000000000000000..60557a872bc4b7446f370875a2b5e90e20e8d987 GIT binary patch literal 16798 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 literal 0 HcmV?d00001 diff --git a/assets/character/Xueyi.png b/assets/character/Xueyi.png new file mode 100644 index 0000000000000000000000000000000000000000..86a310ae7841ccd795eb0802b630b0b594344f0a GIT binary patch literal 15553 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 literal 0 HcmV?d00001 diff --git a/config/template.json b/config/template.json index 88a76434d..17e4408d4 100644 --- a/config/template.json +++ b/config/template.json @@ -88,7 +88,7 @@ "Complete_Forgotten_Hall_1_time": "achievable", "Complete_Echo_of_War_1_times": "not_set", "Complete_1_stage_in_Simulated_Universe_Any_world": "not_set", - "Obtain_victory_in_combat_with_support_characters_1_time": "achievable", + "Obtain_victory_in_combat_with_Support_Characters_1_time": "achievable", "Use_an_Ultimate_to_deal_the_final_blow_1_time": "achievable", "Level_up_any_character_1_time": "not_supported", "Level_up_any_Light_Cone_1_time": "not_supported", @@ -96,7 +96,21 @@ "Salvage_any_Relic": "achievable", "Synthesize_Consumable_1_time": "achievable", "Synthesize_material_1_time": "achievable", - "Use_Consumables_1_time": "achievable" + "Use_Consumables_1_time": "achievable", + "Log_in_to_the_game": "achievable", + "Dispatch_1_assignments": "achievable", + "Complete_Simulated_Universe_1_times": "achievable", + "Clear_Calyx_Crimson_1_times": "achievable", + "Enter_combat_by_attacking_enemie_Weakness_and_win_1_times": "achievable", + "Use_Technique_1_times": "achievable", + "Destroy_1_destructible_objects": "achievable", + "Obtain_victory_in_combat_with_Support_Characters_1_times": "achievable", + "Level_up_any_character_1_times": "achievable", + "Level_up_any_Light_Cone_1_times": "achievable", + "Use_the_Omni_Synthesizer_1_times": "achievable", + "Take_photos_1_times": "achievable", + "Consume_1_Trailblaze_Power": "achievable", + "Level_up_any_Relic_1_times": "achievable" }, "DailyStorage": { "DailyActivity": {}, diff --git a/dev_tools/keyword_extract.py b/dev_tools/keyword_extract.py index eefa357a4..7b0187485 100644 --- a/dev_tools/keyword_extract.py +++ b/dev_tools/keyword_extract.py @@ -19,6 +19,7 @@ def text_to_variable(text): text = re.sub('[ \-—:\'/•.]+', '_', text) text = re.sub(r'[(),#"?!&%*]|', '', text) # text = re.sub(r'[#_]?\d+(_times?)?', '', text) + text = re.sub(r'', '', text) return text.strip('_') @@ -118,6 +119,7 @@ def replace_templates(text: str) -> str: """ text = re.sub(r'#4', '1', text) text = re.sub(r'', '', text) + text = re.sub(r'', '', text) return text @@ -162,8 +164,8 @@ class KeywordExtract: def load_keywords(self, keywords: list[str | int], lang='cn'): text_map = self.text_map[lang] - keywords_id = [text_map.find(keyword)[0] for keyword in keywords] - self.keywords_id = [keyword for keyword in keywords_id if keyword != 0] + keywords_id = [text_map.find(keyword) for keyword in keywords] + self.keywords_id = [keyword[0] for keyword in keywords_id if keyword[0] != 0 and keyword[1].strip()] def clear_keywords(self): self.keywords_id = [] @@ -419,8 +421,10 @@ class KeywordExtract: def generate_battle_pass_quests(self): battle_pass_quests = read_file(os.path.join(TextMap.DATA_FOLDER, 'ExcelOutput', 'BattlePassConfig.json')) latest_quests = list(battle_pass_quests.values())[-1] - quests = deep_get(latest_quests, "DailyQuestList") + deep_get(latest_quests, "WeekQuestList") + deep_get( - latest_quests, "WeekOrder1") + week_quest_list = deep_get(latest_quests, "WeekQuestList") + week_order1 = deep_get(latest_quests, "WeekOrder1") + week_chain_quest_list = deep_get(latest_quests, "WeekChainQuestList") + quests = week_quest_list + week_order1 + week_chain_quest_list self.load_quests(quests) self.write_keywords(keyword_class='BattlePassQuest', output_file='./tasks/battle_pass/keywords/quest.py') diff --git a/module/config/argument/args.json b/module/config/argument/args.json index d382f09f1..2ca9376c2 100644 --- a/module/config/argument/args.json +++ b/module/config/argument/args.json @@ -376,6 +376,7 @@ "Natasha", "Pela", "Qingque", + "RuanMei", "Sampo", "Seele", "Serval", @@ -386,6 +387,7 @@ "TrailblazerDestruction", "TrailblazerPreservation", "Welt", + "Xueyi", "Yanqing", "Yukong" ] @@ -697,7 +699,7 @@ "not_supported" ] }, - "Obtain_victory_in_combat_with_support_characters_1_time": { + "Obtain_victory_in_combat_with_Support_Characters_1_time": { "type": "state", "value": "achievable", "option": [ @@ -831,6 +833,216 @@ "option_light": [ "not_supported" ] + }, + "Log_in_to_the_game": { + "type": "state", + "value": "achievable", + "option": [ + "achievable", + "not_set", + "not_supported" + ], + "option_bold": [ + "achievable" + ], + "option_light": [ + "not_supported" + ] + }, + "Dispatch_1_assignments": { + "type": "state", + "value": "achievable", + "option": [ + "achievable", + "not_set", + "not_supported" + ], + "option_bold": [ + "achievable" + ], + "option_light": [ + "not_supported" + ] + }, + "Complete_Simulated_Universe_1_times": { + "type": "state", + "value": "achievable", + "option": [ + "achievable", + "not_set", + "not_supported" + ], + "option_bold": [ + "achievable" + ], + "option_light": [ + "not_supported" + ] + }, + "Clear_Calyx_Crimson_1_times": { + "type": "state", + "value": "achievable", + "option": [ + "achievable", + "not_set", + "not_supported" + ], + "option_bold": [ + "achievable" + ], + "option_light": [ + "not_supported" + ] + }, + "Enter_combat_by_attacking_enemie_Weakness_and_win_1_times": { + "type": "state", + "value": "achievable", + "option": [ + "achievable", + "not_set", + "not_supported" + ], + "option_bold": [ + "achievable" + ], + "option_light": [ + "not_supported" + ] + }, + "Use_Technique_1_times": { + "type": "state", + "value": "achievable", + "option": [ + "achievable", + "not_set", + "not_supported" + ], + "option_bold": [ + "achievable" + ], + "option_light": [ + "not_supported" + ] + }, + "Destroy_1_destructible_objects": { + "type": "state", + "value": "achievable", + "option": [ + "achievable", + "not_set", + "not_supported" + ], + "option_bold": [ + "achievable" + ], + "option_light": [ + "not_supported" + ] + }, + "Obtain_victory_in_combat_with_Support_Characters_1_times": { + "type": "state", + "value": "achievable", + "option": [ + "achievable", + "not_set", + "not_supported" + ], + "option_bold": [ + "achievable" + ], + "option_light": [ + "not_supported" + ] + }, + "Level_up_any_character_1_times": { + "type": "state", + "value": "achievable", + "option": [ + "achievable", + "not_set", + "not_supported" + ], + "option_bold": [ + "achievable" + ], + "option_light": [ + "not_supported" + ] + }, + "Level_up_any_Light_Cone_1_times": { + "type": "state", + "value": "achievable", + "option": [ + "achievable", + "not_set", + "not_supported" + ], + "option_bold": [ + "achievable" + ], + "option_light": [ + "not_supported" + ] + }, + "Use_the_Omni_Synthesizer_1_times": { + "type": "state", + "value": "achievable", + "option": [ + "achievable", + "not_set", + "not_supported" + ], + "option_bold": [ + "achievable" + ], + "option_light": [ + "not_supported" + ] + }, + "Take_photos_1_times": { + "type": "state", + "value": "achievable", + "option": [ + "achievable", + "not_set", + "not_supported" + ], + "option_bold": [ + "achievable" + ], + "option_light": [ + "not_supported" + ] + }, + "Consume_1_Trailblaze_Power": { + "type": "state", + "value": "achievable", + "option": [ + "achievable", + "not_set", + "not_supported" + ], + "option_bold": [ + "achievable" + ], + "option_light": [ + "not_supported" + ] + }, + "Level_up_any_Relic_1_times": { + "type": "state", + "value": "achievable", + "option": [ + "achievable", + "not_set", + "not_supported" + ], + "option_bold": [ + "achievable" + ], + "option_light": [ + "not_supported" + ] } }, "DailyStorage": { diff --git a/module/config/config_generated.py b/module/config/config_generated.py index 480990676..e571ae82e 100644 --- a/module/config/config_generated.py +++ b/module/config/config_generated.py @@ -53,7 +53,7 @@ class GeneratedConfig: # Group `DungeonSupport` DungeonSupport_Use = 'when_daily' # always_use, when_daily, do_not_use - DungeonSupport_Character = 'FirstCharacter' # FirstCharacter, Argenti, Arlan, Asta, Bailu, Blade, Bronya, Clara, DanHeng, DanHengImbibitorLunae, FuXuan, Gepard, Guinaifen, Hanya, Herta, Himeko, Hook, Huohuo, JingYuan, Jingliu, Kafka, Luka, Luocha, Lynx, March7th, Natasha, Pela, Qingque, Sampo, Seele, Serval, SilverWolf, Sushang, Tingyun, TopazNumby, TrailblazerDestruction, TrailblazerPreservation, Welt, Yanqing, Yukong + DungeonSupport_Character = 'FirstCharacter' # FirstCharacter, Argenti, Arlan, Asta, Bailu, Blade, Bronya, Clara, DanHeng, DanHengImbibitorLunae, FuXuan, Gepard, Guinaifen, Hanya, Herta, Himeko, Hook, Huohuo, JingYuan, Jingliu, Kafka, Luka, Luocha, Lynx, March7th, Natasha, Pela, Qingque, RuanMei, Sampo, Seele, Serval, SilverWolf, Sushang, Tingyun, TopazNumby, TrailblazerDestruction, TrailblazerPreservation, Welt, Xueyi, Yanqing, Yukong # Group `DungeonStorage` DungeonStorage_TrailblazePower = {} @@ -86,7 +86,7 @@ class GeneratedConfig: AchievableQuest_Complete_Forgotten_Hall_1_time = 'achievable' # achievable, not_set, not_supported AchievableQuest_Complete_Echo_of_War_1_times = 'achievable' # achievable, not_set, not_supported AchievableQuest_Complete_1_stage_in_Simulated_Universe_Any_world = 'achievable' # achievable, not_set, not_supported - AchievableQuest_Obtain_victory_in_combat_with_support_characters_1_time = 'achievable' # achievable, not_set, not_supported + AchievableQuest_Obtain_victory_in_combat_with_Support_Characters_1_time = 'achievable' # achievable, not_set, not_supported AchievableQuest_Use_an_Ultimate_to_deal_the_final_blow_1_time = 'achievable' # achievable, not_set, not_supported AchievableQuest_Level_up_any_character_1_time = 'achievable' # achievable, not_set, not_supported AchievableQuest_Level_up_any_Light_Cone_1_time = 'achievable' # achievable, not_set, not_supported @@ -95,6 +95,20 @@ class GeneratedConfig: AchievableQuest_Synthesize_Consumable_1_time = 'achievable' # achievable, not_set, not_supported AchievableQuest_Synthesize_material_1_time = 'achievable' # achievable, not_set, not_supported AchievableQuest_Use_Consumables_1_time = 'achievable' # achievable, not_set, not_supported + AchievableQuest_Log_in_to_the_game = 'achievable' # achievable, not_set, not_supported + AchievableQuest_Dispatch_1_assignments = 'achievable' # achievable, not_set, not_supported + AchievableQuest_Complete_Simulated_Universe_1_times = 'achievable' # achievable, not_set, not_supported + AchievableQuest_Clear_Calyx_Crimson_1_times = 'achievable' # achievable, not_set, not_supported + AchievableQuest_Enter_combat_by_attacking_enemie_Weakness_and_win_1_times = 'achievable' # achievable, not_set, not_supported + AchievableQuest_Use_Technique_1_times = 'achievable' # achievable, not_set, not_supported + AchievableQuest_Destroy_1_destructible_objects = 'achievable' # achievable, not_set, not_supported + AchievableQuest_Obtain_victory_in_combat_with_Support_Characters_1_times = 'achievable' # achievable, not_set, not_supported + AchievableQuest_Level_up_any_character_1_times = 'achievable' # achievable, not_set, not_supported + AchievableQuest_Level_up_any_Light_Cone_1_times = 'achievable' # achievable, not_set, not_supported + AchievableQuest_Use_the_Omni_Synthesizer_1_times = 'achievable' # achievable, not_set, not_supported + AchievableQuest_Take_photos_1_times = 'achievable' # achievable, not_set, not_supported + AchievableQuest_Consume_1_Trailblaze_Power = 'achievable' # achievable, not_set, not_supported + AchievableQuest_Level_up_any_Relic_1_times = 'achievable' # achievable, not_set, not_supported # Group `DailyStorage` DailyStorage_DailyActivity = {} diff --git a/module/config/config_updater.py b/module/config/config_updater.py index dfb25de77..2eb981f24 100644 --- a/module/config/config_updater.py +++ b/module/config/config_updater.py @@ -92,7 +92,7 @@ class ConfigGenerator: options=[dungeon.name for dungeon in DungeonList.instances.values() if dungeon.is_Echo_of_War]) # Insert characters from tasks.character.keywords import CharacterList - unsupported_characters = [] + unsupported_characters = ["DrRatio"] characters = [character.name for character in CharacterList.instances.values() if character.name not in unsupported_characters] option_add(keys='DungeonSupport.Character.option', options=characters) @@ -704,7 +704,7 @@ class ConfigUpdater: set_daily('Complete_Echo_of_War_1_times', deep_get(data, 'Weekly.Scheduler.Enable')) set_daily('Complete_1_stage_in_Simulated_Universe_Any_world', deep_get(data, 'Rogue.Scheduler.Enable')) - set_daily('Obtain_victory_in_combat_with_support_characters_1_time', + set_daily('Obtain_victory_in_combat_with_Support_Characters_1_time', dungeon and deep_get(data, 'Dungeon.DungeonSupport.Use') in ['when_daily', 'always_use']) set_daily('Use_an_Ultimate_to_deal_the_final_blow_1_time', 'achievable') # Build diff --git a/module/config/i18n/en-US.json b/module/config/i18n/en-US.json index bb91a64dd..1a54706ff 100644 --- a/module/config/i18n/en-US.json +++ b/module/config/i18n/en-US.json @@ -240,10 +240,10 @@ "Stagnant_Shadow_Spike": "Ascension: Physical (Natasha / Clara / Luka / Sushang)", "Stagnant_Shadow_Rime": "Ascension: Ice (March 7th / Herta / Gepard / Pela)", "Stagnant_Shadow_Mirage": "Ascension: Imaginary (Welt / Luocha / Yukong)", - "Stagnant_Shadow_Icicle": "Ascension: Ice (Yanqing / Jingliu)", + "Stagnant_Shadow_Icicle": "Ascension: Ice (Yanqing / Jingliu / Ruan Mei)", "Stagnant_Shadow_Doom": "Ascension: Lightning (Kafka / Jing Yuan)", - "Stagnant_Shadow_Puppetry": "Ascension: Imaginary (Dan Heng • Imbibitor Lunae)", - "Stagnant_Shadow_Abomination": "Ascension: Quantum (Lynx / Fu Xuan)", + "Stagnant_Shadow_Puppetry": "Ascension: Imaginary (Dan Heng • Imbibitor Lunae / Dr. Ratio)", + "Stagnant_Shadow_Abomination": "Ascension: Quantum (Lynx / Fu Xuan / Xueyi)", "Stagnant_Shadow_Scorch": "Ascension: Fire (Guinaifen / Topaz & Numby)", "Stagnant_Shadow_Celestial": "Ascension: Wind (Blade / Huohuo)", "Stagnant_Shadow_Perdition": "Ascension: Physical (Hanya / Argenti)", @@ -331,10 +331,10 @@ "Stagnant_Shadow_Spike": "Ascension: Physical (Natasha / Clara / Luka / Sushang)", "Stagnant_Shadow_Rime": "Ascension: Ice (March 7th / Herta / Gepard / Pela)", "Stagnant_Shadow_Mirage": "Ascension: Imaginary (Welt / Luocha / Yukong)", - "Stagnant_Shadow_Icicle": "Ascension: Ice (Yanqing / Jingliu)", + "Stagnant_Shadow_Icicle": "Ascension: Ice (Yanqing / Jingliu / Ruan Mei)", "Stagnant_Shadow_Doom": "Ascension: Lightning (Kafka / Jing Yuan)", - "Stagnant_Shadow_Puppetry": "Ascension: Imaginary (Dan Heng • Imbibitor Lunae)", - "Stagnant_Shadow_Abomination": "Ascension: Quantum (Lynx / Fu Xuan)", + "Stagnant_Shadow_Puppetry": "Ascension: Imaginary (Dan Heng • Imbibitor Lunae / Dr. Ratio)", + "Stagnant_Shadow_Abomination": "Ascension: Quantum (Lynx / Fu Xuan / Xueyi)", "Stagnant_Shadow_Scorch": "Ascension: Fire (Guinaifen / Topaz & Numby)", "Stagnant_Shadow_Celestial": "Ascension: Wind (Blade / Huohuo)", "Stagnant_Shadow_Perdition": "Ascension: Physical (Hanya / Argenti)" @@ -396,6 +396,7 @@ "Natasha": "Natasha", "Pela": "Pela", "Qingque": "Qingque", + "RuanMei": "Ruan Mei", "Sampo": "Sampo", "Seele": "Seele", "Serval": "Serval", @@ -406,6 +407,7 @@ "TrailblazerDestruction": "Trailblazer Destruction", "TrailblazerPreservation": "Trailblazer Preservation", "Welt": "Welt", + "Xueyi": "Xueyi", "Yanqing": "Yanqing", "Yukong": "Yukong" } @@ -586,8 +588,8 @@ "not_set": "Not Set", "not_supported": "Not Supported Yet" }, - "Obtain_victory_in_combat_with_support_characters_1_time": { - "name": "Obtain victory in combat with support characters 1 time", + "Obtain_victory_in_combat_with_Support_Characters_1_time": { + "name": "Obtain victory in combat with Support Characters 1 time", "help": "Need to configure and enable the \"Dungeon\" task, configure support settings also", "achievable": "Achievable", "not_set": "Not Set", @@ -648,6 +650,104 @@ "achievable": "Achievable", "not_set": "Not Set", "not_supported": "Not Supported Yet" + }, + "Log_in_to_the_game": { + "name": "Log in to the game", + "help": "AchievableQuest.Log_in_to_the_game.help", + "achievable": "Achievable", + "not_set": "Not Set", + "not_supported": "Not Supported Yet" + }, + "Dispatch_1_assignments": { + "name": "Dispatch 1 assignment(s)", + "help": "AchievableQuest.Dispatch_1_assignments.help", + "achievable": "Achievable", + "not_set": "Not Set", + "not_supported": "Not Supported Yet" + }, + "Complete_Simulated_Universe_1_times": { + "name": "Complete Simulated Universe 1 time(s)", + "help": "AchievableQuest.Complete_Simulated_Universe_1_times.help", + "achievable": "Achievable", + "not_set": "Not Set", + "not_supported": "Not Supported Yet" + }, + "Clear_Calyx_Crimson_1_times": { + "name": "Clear Calyx (Crimson) 1 time(s)", + "help": "AchievableQuest.Clear_Calyx_Crimson_1_times.help", + "achievable": "Achievable", + "not_set": "Not Set", + "not_supported": "Not Supported Yet" + }, + "Enter_combat_by_attacking_enemie_Weakness_and_win_1_times": { + "name": "Enter combat by attacking enemies' Weakness and win 1 time(s)", + "help": "AchievableQuest.Enter_combat_by_attacking_enemie_Weakness_and_win_1_times.help", + "achievable": "Achievable", + "not_set": "Not Set", + "not_supported": "Not Supported Yet" + }, + "Use_Technique_1_times": { + "name": "Use Technique 1 time(s)", + "help": "AchievableQuest.Use_Technique_1_times.help", + "achievable": "Achievable", + "not_set": "Not Set", + "not_supported": "Not Supported Yet" + }, + "Destroy_1_destructible_objects": { + "name": "Destroy 1 destructible object(s)", + "help": "AchievableQuest.Destroy_1_destructible_objects.help", + "achievable": "Achievable", + "not_set": "Not Set", + "not_supported": "Not Supported Yet" + }, + "Obtain_victory_in_combat_with_Support_Characters_1_times": { + "name": "Obtain victory in combat with Support Characters 1 time(s)", + "help": "AchievableQuest.Obtain_victory_in_combat_with_Support_Characters_1_times.help", + "achievable": "Achievable", + "not_set": "Not Set", + "not_supported": "Not Supported Yet" + }, + "Level_up_any_character_1_times": { + "name": "Level up any character 1 time(s)", + "help": "AchievableQuest.Level_up_any_character_1_times.help", + "achievable": "Achievable", + "not_set": "Not Set", + "not_supported": "Not Supported Yet" + }, + "Level_up_any_Light_Cone_1_times": { + "name": "Level up any Light Cone 1 time(s)", + "help": "AchievableQuest.Level_up_any_Light_Cone_1_times.help", + "achievable": "Achievable", + "not_set": "Not Set", + "not_supported": "Not Supported Yet" + }, + "Use_the_Omni_Synthesizer_1_times": { + "name": "Use the Omni-Synthesizer 1 time(s)", + "help": "AchievableQuest.Use_the_Omni_Synthesizer_1_times.help", + "achievable": "Achievable", + "not_set": "Not Set", + "not_supported": "Not Supported Yet" + }, + "Take_photos_1_times": { + "name": "Take photos 1 time(s)", + "help": "AchievableQuest.Take_photos_1_times.help", + "achievable": "Achievable", + "not_set": "Not Set", + "not_supported": "Not Supported Yet" + }, + "Consume_1_Trailblaze_Power": { + "name": "Consume 1 Trailblaze Power", + "help": "AchievableQuest.Consume_1_Trailblaze_Power.help", + "achievable": "Achievable", + "not_set": "Not Set", + "not_supported": "Not Supported Yet" + }, + "Level_up_any_Relic_1_times": { + "name": "Level up any Relic 1 time(s)", + "help": "AchievableQuest.Level_up_any_Relic_1_times.help", + "achievable": "Achievable", + "not_set": "Not Set", + "not_supported": "Not Supported Yet" } }, "DailyStorage": { @@ -798,12 +898,12 @@ "World": { "name": "World", "help": "", - "Simulated_Universe_World_3": "Simulated Universe — World 3", - "Simulated_Universe_World_4": "Simulated Universe — World 4", - "Simulated_Universe_World_5": "Simulated Universe — World 5", - "Simulated_Universe_World_6": "Simulated Universe — World 6", - "Simulated_Universe_World_7": "Simulated Universe — World 7", - "Simulated_Universe_World_8": "Simulated Universe — World 8" + "Simulated_Universe_World_3": "Simulated Universe: World 3", + "Simulated_Universe_World_4": "Simulated Universe: World 4", + "Simulated_Universe_World_5": "Simulated Universe: World 5", + "Simulated_Universe_World_6": "Simulated Universe: World 6", + "Simulated_Universe_World_7": "Simulated Universe: World 7", + "Simulated_Universe_World_8": "Simulated Universe: World 8" }, "Path": { "name": "Path", diff --git a/module/config/i18n/es-ES.json b/module/config/i18n/es-ES.json index 8c8574ecc..906bb7978 100644 --- a/module/config/i18n/es-ES.json +++ b/module/config/i18n/es-ES.json @@ -240,10 +240,10 @@ "Stagnant_Shadow_Spike": "Ascension: Físico (Natasha / Clara / Luka / Sushang)", "Stagnant_Shadow_Rime": "Ascension: Hielo (Siete de Marzo / Herta / Gepard / Pela)", "Stagnant_Shadow_Mirage": "Ascension: Imaginario (Welt / Luocha / Yukong)", - "Stagnant_Shadow_Icicle": "Ascension: Hielo (Yanqing / Jingliu)", + "Stagnant_Shadow_Icicle": "Ascension: Hielo (Yanqing / Jingliu / Ruan Mei)", "Stagnant_Shadow_Doom": "Ascension: Rayo (Kafka / Jing Yuan)", - "Stagnant_Shadow_Puppetry": "Ascension: Imaginario (Dan Heng - Imbibitor Lunae)", - "Stagnant_Shadow_Abomination": "Ascension: Cuántico (Lynx / Fu Xuan)", + "Stagnant_Shadow_Puppetry": "Ascension: Imaginario (Dan Heng - Imbibitor Lunae / Dr. Ratio)", + "Stagnant_Shadow_Abomination": "Ascension: Cuántico (Lynx / Fu Xuan / Xueyi)", "Stagnant_Shadow_Scorch": "Ascension: Fuego (Guinaifen / Topaz y Conti)", "Stagnant_Shadow_Celestial": "Ascension: Viento (Blade / Huohuo)", "Stagnant_Shadow_Perdition": "Ascension: Físico (Hanya / Argenti)", @@ -331,10 +331,10 @@ "Stagnant_Shadow_Spike": "Ascension: Físico (Natasha / Clara / Luka / Sushang)", "Stagnant_Shadow_Rime": "Ascension: Hielo (Siete de Marzo / Herta / Gepard / Pela)", "Stagnant_Shadow_Mirage": "Ascension: Imaginario (Welt / Luocha / Yukong)", - "Stagnant_Shadow_Icicle": "Ascension: Hielo (Yanqing / Jingliu)", + "Stagnant_Shadow_Icicle": "Ascension: Hielo (Yanqing / Jingliu / Ruan Mei)", "Stagnant_Shadow_Doom": "Ascension: Rayo (Kafka / Jing Yuan)", - "Stagnant_Shadow_Puppetry": "Ascension: Imaginario (Dan Heng - Imbibitor Lunae)", - "Stagnant_Shadow_Abomination": "Ascension: Cuántico (Lynx / Fu Xuan)", + "Stagnant_Shadow_Puppetry": "Ascension: Imaginario (Dan Heng - Imbibitor Lunae / Dr. Ratio)", + "Stagnant_Shadow_Abomination": "Ascension: Cuántico (Lynx / Fu Xuan / Xueyi)", "Stagnant_Shadow_Scorch": "Ascension: Fuego (Guinaifen / Topaz y Conti)", "Stagnant_Shadow_Celestial": "Ascension: Viento (Blade / Huohuo)", "Stagnant_Shadow_Perdition": "Ascension: Físico (Hanya / Argenti)" @@ -396,6 +396,7 @@ "Natasha": "Natasha", "Pela": "Pela", "Qingque": "Qingque", + "RuanMei": "Ruan Mei", "Sampo": "Sampo", "Seele": "Seele", "Serval": "Serval", @@ -406,6 +407,7 @@ "TrailblazerDestruction": "Trailblazer de Destrucción", "TrailblazerPreservation": "Trailblazer de Conservación", "Welt": "Welt", + "Xueyi": "Xueyi", "Yanqing": "Yanqing", "Yukong": "Yukong" } @@ -586,7 +588,7 @@ "not_set": "No configurado", "not_supported": "No soportado aún" }, - "Obtain_victory_in_combat_with_support_characters_1_time": { + "Obtain_victory_in_combat_with_Support_Characters_1_time": { "name": "Gana 1 batalla utilizando personajes de apoyo", "help": "Necesitas configurar la tarea de \"Mazmorra\", así como configurar a los héroes de apoyo.", "achievable": "Completable", @@ -648,6 +650,104 @@ "achievable": "Completable", "not_set": "No configurado", "not_supported": "No soportado aún" + }, + "Log_in_to_the_game": { + "name": "Inicia sesión en el juego", + "help": "AchievableQuest.Log_in_to_the_game.help", + "achievable": "Completable", + "not_set": "No configurado", + "not_supported": "No soportado aún" + }, + "Dispatch_1_assignments": { + "name": "Asigna 1 encargo", + "help": "AchievableQuest.Dispatch_1_assignments.help", + "achievable": "Completable", + "not_set": "No configurado", + "not_supported": "No soportado aún" + }, + "Complete_Simulated_Universe_1_times": { + "name": "Completa el Universo Simulado 1 vez", + "help": "AchievableQuest.Complete_Simulated_Universe_1_times.help", + "achievable": "Completable", + "not_set": "No configurado", + "not_supported": "No soportado aún" + }, + "Clear_Calyx_Crimson_1_times": { + "name": "Completa Cáliz (carmesí) 1 vez", + "help": "AchievableQuest.Clear_Calyx_Crimson_1_times.help", + "achievable": "Completable", + "not_set": "No configurado", + "not_supported": "No soportado aún" + }, + "Enter_combat_by_attacking_enemie_Weakness_and_win_1_times": { + "name": "Entra en combate atacando la debilidad del enemigo y gana 1 veces", + "help": "AchievableQuest.Enter_combat_by_attacking_enemie_Weakness_and_win_1_times.help", + "achievable": "Completable", + "not_set": "No configurado", + "not_supported": "No soportado aún" + }, + "Use_Technique_1_times": { + "name": "Usa técnicas 1 veces", + "help": "AchievableQuest.Use_Technique_1_times.help", + "achievable": "Completable", + "not_set": "No configurado", + "not_supported": "No soportado aún" + }, + "Destroy_1_destructible_objects": { + "name": "Destruye 1 objetos destruibles", + "help": "AchievableQuest.Destroy_1_destructible_objects.help", + "achievable": "Completable", + "not_set": "No configurado", + "not_supported": "No soportado aún" + }, + "Obtain_victory_in_combat_with_Support_Characters_1_times": { + "name": "Gana 1 batalla(s) utilizando personajes de apoyo", + "help": "AchievableQuest.Obtain_victory_in_combat_with_Support_Characters_1_times.help", + "achievable": "Completable", + "not_set": "No configurado", + "not_supported": "No soportado aún" + }, + "Level_up_any_character_1_times": { + "name": "Mejora el nivel de cualquier personaje 1 vez", + "help": "AchievableQuest.Level_up_any_character_1_times.help", + "achievable": "Completable", + "not_set": "No configurado", + "not_supported": "No soportado aún" + }, + "Level_up_any_Light_Cone_1_times": { + "name": "Mejora cualquier cono de luz 1 vez", + "help": "AchievableQuest.Level_up_any_Light_Cone_1_times.help", + "achievable": "Completable", + "not_set": "No configurado", + "not_supported": "No soportado aún" + }, + "Use_the_Omni_Synthesizer_1_times": { + "name": "Utiliza la máquina sintetizadora multiusos 1 veces", + "help": "AchievableQuest.Use_the_Omni_Synthesizer_1_times.help", + "achievable": "Completable", + "not_set": "No configurado", + "not_supported": "No soportado aún" + }, + "Take_photos_1_times": { + "name": "Haz 1 foto(s)", + "help": "AchievableQuest.Take_photos_1_times.help", + "achievable": "Completable", + "not_set": "No configurado", + "not_supported": "No soportado aún" + }, + "Consume_1_Trailblaze_Power": { + "name": "Consume 1 pts. de Poder trazacaminos", + "help": "AchievableQuest.Consume_1_Trailblaze_Power.help", + "achievable": "Completable", + "not_set": "No configurado", + "not_supported": "No soportado aún" + }, + "Level_up_any_Relic_1_times": { + "name": "Mejora cualquier artefacto 1 vez", + "help": "AchievableQuest.Level_up_any_Relic_1_times.help", + "achievable": "Completable", + "not_set": "No configurado", + "not_supported": "No soportado aún" } }, "DailyStorage": { diff --git a/module/config/i18n/ja-JP.json b/module/config/i18n/ja-JP.json index fd1d223f9..abc8df42e 100644 --- a/module/config/i18n/ja-JP.json +++ b/module/config/i18n/ja-JP.json @@ -240,10 +240,10 @@ "Stagnant_Shadow_Spike": "キャラクター昇格素材:物理(ナターシャ / クラーラ / ルカ / 素裳)", "Stagnant_Shadow_Rime": "キャラクター昇格素材:氷(三月なのか / ヘルタ / ジェパード / ペラ)", "Stagnant_Shadow_Mirage": "キャラクター昇格素材:虚数(ヴェルト / 羅刹 / 御空)", - "Stagnant_Shadow_Icicle": "キャラクター昇格素材:氷(彦卿 / 鏡流)", + "Stagnant_Shadow_Icicle": "キャラクター昇格素材:氷(彦卿 / 鏡流 / ルアン・メェイ)", "Stagnant_Shadow_Doom": "キャラクター昇格素材:雷(カフカ / 景元)", - "Stagnant_Shadow_Puppetry": "キャラクター昇格素材:虚数(丹恒・飲月)", - "Stagnant_Shadow_Abomination": "キャラクター昇格素材:量子(リンクス / 符玄)", + "Stagnant_Shadow_Puppetry": "キャラクター昇格素材:虚数(丹恒・飲月 / Dr.レイシオ)", + "Stagnant_Shadow_Abomination": "キャラクター昇格素材:量子(リンクス / 符玄 / 雪衣)", "Stagnant_Shadow_Scorch": "キャラクター昇格素材:炎(桂乃芬 / トパーズ&カブ)", "Stagnant_Shadow_Celestial": "キャラクター昇格素材:風(刃 / フォフォ)", "Stagnant_Shadow_Perdition": "キャラクター昇格素材:物理(寒鴉 / アルジェンティ)", @@ -331,10 +331,10 @@ "Stagnant_Shadow_Spike": "キャラクター昇格素材:物理(ナターシャ / クラーラ / ルカ / 素裳)", "Stagnant_Shadow_Rime": "キャラクター昇格素材:氷(三月なのか / ヘルタ / ジェパード / ペラ)", "Stagnant_Shadow_Mirage": "キャラクター昇格素材:虚数(ヴェルト / 羅刹 / 御空)", - "Stagnant_Shadow_Icicle": "キャラクター昇格素材:氷(彦卿 / 鏡流)", + "Stagnant_Shadow_Icicle": "キャラクター昇格素材:氷(彦卿 / 鏡流 / ルアン・メェイ)", "Stagnant_Shadow_Doom": "キャラクター昇格素材:雷(カフカ / 景元)", - "Stagnant_Shadow_Puppetry": "キャラクター昇格素材:虚数(丹恒・飲月)", - "Stagnant_Shadow_Abomination": "キャラクター昇格素材:量子(リンクス / 符玄)", + "Stagnant_Shadow_Puppetry": "キャラクター昇格素材:虚数(丹恒・飲月 / Dr.レイシオ)", + "Stagnant_Shadow_Abomination": "キャラクター昇格素材:量子(リンクス / 符玄 / 雪衣)", "Stagnant_Shadow_Scorch": "キャラクター昇格素材:炎(桂乃芬 / トパーズ&カブ)", "Stagnant_Shadow_Celestial": "キャラクター昇格素材:風(刃 / フォフォ)", "Stagnant_Shadow_Perdition": "キャラクター昇格素材:物理(寒鴉 / アルジェンティ)" @@ -396,6 +396,7 @@ "Natasha": "ナターシャ", "Pela": "ペラ", "Qingque": "青雀", + "RuanMei": "ルアン・メェイ", "Sampo": "サンポ", "Seele": "ゼーレ", "Serval": "セーバル", @@ -406,6 +407,7 @@ "TrailblazerDestruction": "開拓者・壊滅", "TrailblazerPreservation": "開拓者・存護", "Welt": "ヴェルト", + "Xueyi": "雪衣", "Yanqing": "彦卿", "Yukong": "御空" } @@ -586,9 +588,9 @@ "not_set": "not_set", "not_supported": "not_supported" }, - "Obtain_victory_in_combat_with_support_characters_1_time": { + "Obtain_victory_in_combat_with_Support_Characters_1_time": { "name": "サポートキャラを使い、戦闘に1回勝利する", - "help": "AchievableQuest.Obtain_victory_in_combat_with_support_characters_1_time.help", + "help": "AchievableQuest.Obtain_victory_in_combat_with_Support_Characters_1_time.help", "achievable": "achievable", "not_set": "not_set", "not_supported": "not_supported" @@ -648,6 +650,104 @@ "achievable": "achievable", "not_set": "not_set", "not_supported": "not_supported" + }, + "Log_in_to_the_game": { + "name": "ゲームにログインする", + "help": "AchievableQuest.Log_in_to_the_game.help", + "achievable": "achievable", + "not_set": "not_set", + "not_supported": "not_supported" + }, + "Dispatch_1_assignments": { + "name": "依頼に1回派遣する", + "help": "AchievableQuest.Dispatch_1_assignments.help", + "achievable": "achievable", + "not_set": "not_set", + "not_supported": "not_supported" + }, + "Complete_Simulated_Universe_1_times": { + "name": "「模擬宇宙」を1回クリアする", + "help": "AchievableQuest.Complete_Simulated_Universe_1_times.help", + "achievable": "achievable", + "not_set": "not_set", + "not_supported": "not_supported" + }, + "Clear_Calyx_Crimson_1_times": { + "name": "「疑似花萼(赤)」を1回クリアする", + "help": "AchievableQuest.Clear_Calyx_Crimson_1_times.help", + "achievable": "achievable", + "not_set": "not_set", + "not_supported": "not_supported" + }, + "Enter_combat_by_attacking_enemie_Weakness_and_win_1_times": { + "name": "弱点を攻撃して戦闘に入り、1回勝利する", + "help": "AchievableQuest.Enter_combat_by_attacking_enemie_Weakness_and_win_1_times.help", + "achievable": "achievable", + "not_set": "not_set", + "not_supported": "not_supported" + }, + "Use_Technique_1_times": { + "name": "累計で秘技を1回発動する", + "help": "AchievableQuest.Use_Technique_1_times.help", + "achievable": "achievable", + "not_set": "not_set", + "not_supported": "not_supported" + }, + "Destroy_1_destructible_objects": { + "name": "破壊できるオブジェクトを累計で1個破壊する", + "help": "AchievableQuest.Destroy_1_destructible_objects.help", + "achievable": "achievable", + "not_set": "not_set", + "not_supported": "not_supported" + }, + "Obtain_victory_in_combat_with_Support_Characters_1_times": { + "name": "サポートキャラを使い、戦闘に1回勝利する", + "help": "AchievableQuest.Obtain_victory_in_combat_with_Support_Characters_1_times.help", + "achievable": "achievable", + "not_set": "not_set", + "not_supported": "not_supported" + }, + "Level_up_any_character_1_times": { + "name": "任意のキャラを1回レベルアップする", + "help": "AchievableQuest.Level_up_any_character_1_times.help", + "achievable": "achievable", + "not_set": "not_set", + "not_supported": "not_supported" + }, + "Level_up_any_Light_Cone_1_times": { + "name": "任意の光円錐を1回レベルアップする", + "help": "AchievableQuest.Level_up_any_Light_Cone_1_times.help", + "achievable": "achievable", + "not_set": "not_set", + "not_supported": "not_supported" + }, + "Use_the_Omni_Synthesizer_1_times": { + "name": "「万能合成マシン」を1回使用する", + "help": "AchievableQuest.Use_the_Omni_Synthesizer_1_times.help", + "achievable": "achievable", + "not_set": "not_set", + "not_supported": "not_supported" + }, + "Take_photos_1_times": { + "name": "1回撮影する", + "help": "AchievableQuest.Take_photos_1_times.help", + "achievable": "achievable", + "not_set": "not_set", + "not_supported": "not_supported" + }, + "Consume_1_Trailblaze_Power": { + "name": "累計で開拓力×1を消費する", + "help": "AchievableQuest.Consume_1_Trailblaze_Power.help", + "achievable": "achievable", + "not_set": "not_set", + "not_supported": "not_supported" + }, + "Level_up_any_Relic_1_times": { + "name": "任意の遺物を1回レベルアップする", + "help": "AchievableQuest.Level_up_any_Relic_1_times.help", + "achievable": "achievable", + "not_set": "not_set", + "not_supported": "not_supported" } }, "DailyStorage": { diff --git a/module/config/i18n/zh-CN.json b/module/config/i18n/zh-CN.json index 7664e11c0..8160ba036 100644 --- a/module/config/i18n/zh-CN.json +++ b/module/config/i18n/zh-CN.json @@ -240,10 +240,10 @@ "Stagnant_Shadow_Spike": "角色晋阶材料:物理(娜塔莎 / 克拉拉 / 卢卡 / 素裳)", "Stagnant_Shadow_Rime": "角色晋阶材料:冰(三月七 / 黑塔 / 杰帕德 / 佩拉)", "Stagnant_Shadow_Mirage": "角色晋阶材料:虚数(瓦尔特 / 罗刹 / 驭空)", - "Stagnant_Shadow_Icicle": "角色晋阶材料:冰(彦卿 / 镜流)", + "Stagnant_Shadow_Icicle": "角色晋阶材料:冰(彦卿 / 镜流 / 阮•梅)", "Stagnant_Shadow_Doom": "角色晋阶材料:雷(卡芙卡 / 景元)", - "Stagnant_Shadow_Puppetry": "角色晋阶材料:虚数(丹恒•饮月)", - "Stagnant_Shadow_Abomination": "角色晋阶材料:量子(玲可 / 符玄)", + "Stagnant_Shadow_Puppetry": "角色晋阶材料:虚数(丹恒•饮月 / 真理医生)", + "Stagnant_Shadow_Abomination": "角色晋阶材料:量子(玲可 / 符玄 / 雪衣)", "Stagnant_Shadow_Scorch": "角色晋阶材料:火(桂乃芬 / 托帕&账账)", "Stagnant_Shadow_Celestial": "角色晋阶材料:风(刃 / 藿藿)", "Stagnant_Shadow_Perdition": "角色晋阶材料:物理(寒鸦 / 银枝)", @@ -331,10 +331,10 @@ "Stagnant_Shadow_Spike": "角色晋阶材料:物理(娜塔莎 / 克拉拉 / 卢卡 / 素裳)", "Stagnant_Shadow_Rime": "角色晋阶材料:冰(三月七 / 黑塔 / 杰帕德 / 佩拉)", "Stagnant_Shadow_Mirage": "角色晋阶材料:虚数(瓦尔特 / 罗刹 / 驭空)", - "Stagnant_Shadow_Icicle": "角色晋阶材料:冰(彦卿 / 镜流)", + "Stagnant_Shadow_Icicle": "角色晋阶材料:冰(彦卿 / 镜流 / 阮•梅)", "Stagnant_Shadow_Doom": "角色晋阶材料:雷(卡芙卡 / 景元)", - "Stagnant_Shadow_Puppetry": "角色晋阶材料:虚数(丹恒•饮月)", - "Stagnant_Shadow_Abomination": "角色晋阶材料:量子(玲可 / 符玄)", + "Stagnant_Shadow_Puppetry": "角色晋阶材料:虚数(丹恒•饮月 / 真理医生)", + "Stagnant_Shadow_Abomination": "角色晋阶材料:量子(玲可 / 符玄 / 雪衣)", "Stagnant_Shadow_Scorch": "角色晋阶材料:火(桂乃芬 / 托帕&账账)", "Stagnant_Shadow_Celestial": "角色晋阶材料:风(刃 / 藿藿)", "Stagnant_Shadow_Perdition": "角色晋阶材料:物理(寒鸦 / 银枝)" @@ -396,6 +396,7 @@ "Natasha": "娜塔莎", "Pela": "佩拉", "Qingque": "青雀", + "RuanMei": "阮•梅", "Sampo": "桑博", "Seele": "希儿", "Serval": "希露瓦", @@ -406,6 +407,7 @@ "TrailblazerDestruction": "开拓者•毁灭", "TrailblazerPreservation": "开拓者•存护", "Welt": "瓦尔特", + "Xueyi": "雪衣", "Yanqing": "彦卿", "Yukong": "驭空" } @@ -586,7 +588,7 @@ "not_set": "未设置", "not_supported": "暂未支持" }, - "Obtain_victory_in_combat_with_support_characters_1_time": { + "Obtain_victory_in_combat_with_Support_Characters_1_time": { "name": "使用支援角色并获得战斗胜利1次", "help": "需要设置并启用\"每日副本\",且设置好友支援", "achievable": "可完成", @@ -648,6 +650,104 @@ "achievable": "可完成", "not_set": "未设置", "not_supported": "暂未支持" + }, + "Log_in_to_the_game": { + "name": "登录游戏", + "help": "AchievableQuest.Log_in_to_the_game.help", + "achievable": "可完成", + "not_set": "未设置", + "not_supported": "暂未支持" + }, + "Dispatch_1_assignments": { + "name": "派遣1次委托", + "help": "AchievableQuest.Dispatch_1_assignments.help", + "achievable": "可完成", + "not_set": "未设置", + "not_supported": "暂未支持" + }, + "Complete_Simulated_Universe_1_times": { + "name": "完成1次「模拟宇宙」", + "help": "AchievableQuest.Complete_Simulated_Universe_1_times.help", + "achievable": "可完成", + "not_set": "未设置", + "not_supported": "暂未支持" + }, + "Clear_Calyx_Crimson_1_times": { + "name": "完成1次「拟造花萼(赤)」", + "help": "AchievableQuest.Clear_Calyx_Crimson_1_times.help", + "achievable": "可完成", + "not_set": "未设置", + "not_supported": "暂未支持" + }, + "Enter_combat_by_attacking_enemie_Weakness_and_win_1_times": { + "name": "利用弱点进入战斗并获胜1次", + "help": "AchievableQuest.Enter_combat_by_attacking_enemie_Weakness_and_win_1_times.help", + "achievable": "可完成", + "not_set": "未设置", + "not_supported": "暂未支持" + }, + "Use_Technique_1_times": { + "name": "累计施放1次秘技", + "help": "AchievableQuest.Use_Technique_1_times.help", + "achievable": "可完成", + "not_set": "未设置", + "not_supported": "暂未支持" + }, + "Destroy_1_destructible_objects": { + "name": "累计击碎1个可破坏物", + "help": "AchievableQuest.Destroy_1_destructible_objects.help", + "achievable": "可完成", + "not_set": "未设置", + "not_supported": "暂未支持" + }, + "Obtain_victory_in_combat_with_Support_Characters_1_times": { + "name": "使用支援角色并获得战斗胜利1次", + "help": "AchievableQuest.Obtain_victory_in_combat_with_Support_Characters_1_times.help", + "achievable": "可完成", + "not_set": "未设置", + "not_supported": "暂未支持" + }, + "Level_up_any_character_1_times": { + "name": "将任意角色等级提升1次", + "help": "AchievableQuest.Level_up_any_character_1_times.help", + "achievable": "可完成", + "not_set": "未设置", + "not_supported": "暂未支持" + }, + "Level_up_any_Light_Cone_1_times": { + "name": "将任意光锥等级提升1次", + "help": "AchievableQuest.Level_up_any_Light_Cone_1_times.help", + "achievable": "可完成", + "not_set": "未设置", + "not_supported": "暂未支持" + }, + "Use_the_Omni_Synthesizer_1_times": { + "name": "使用1次「万能合成机」", + "help": "AchievableQuest.Use_the_Omni_Synthesizer_1_times.help", + "achievable": "可完成", + "not_set": "未设置", + "not_supported": "暂未支持" + }, + "Take_photos_1_times": { + "name": "拍照1次", + "help": "AchievableQuest.Take_photos_1_times.help", + "achievable": "可完成", + "not_set": "未设置", + "not_supported": "暂未支持" + }, + "Consume_1_Trailblaze_Power": { + "name": "累计消耗1点开拓力", + "help": "AchievableQuest.Consume_1_Trailblaze_Power.help", + "achievable": "可完成", + "not_set": "未设置", + "not_supported": "暂未支持" + }, + "Level_up_any_Relic_1_times": { + "name": "将任意遗器等级提升1次", + "help": "AchievableQuest.Level_up_any_Relic_1_times.help", + "achievable": "可完成", + "not_set": "未设置", + "not_supported": "暂未支持" } }, "DailyStorage": { diff --git a/module/config/i18n/zh-TW.json b/module/config/i18n/zh-TW.json index de1d41ff5..b7c692e66 100644 --- a/module/config/i18n/zh-TW.json +++ b/module/config/i18n/zh-TW.json @@ -240,10 +240,10 @@ "Stagnant_Shadow_Spike": "角色晉階材料:物理(娜塔莎 / 克拉拉 / 盧卡 / 素裳)", "Stagnant_Shadow_Rime": "角色晉階材料:冰(三月七 / 黑塔 / 傑帕德 / 佩拉)", "Stagnant_Shadow_Mirage": "角色晉階材料:虛數(瓦爾特 / 羅剎 / 馭空)", - "Stagnant_Shadow_Icicle": "角色晉階材料:冰(彥卿 / 鏡流)", + "Stagnant_Shadow_Icicle": "角色晉階材料:冰(彥卿 / 鏡流 / 阮•梅)", "Stagnant_Shadow_Doom": "角色晉階材料:雷(卡芙卡 / 景元)", - "Stagnant_Shadow_Puppetry": "角色晉階材料:虛數(丹恆•飲月)", - "Stagnant_Shadow_Abomination": "角色晉階材料:量子(玲可 / 符玄)", + "Stagnant_Shadow_Puppetry": "角色晉階材料:虛數(丹恆•飲月 / 真理醫生)", + "Stagnant_Shadow_Abomination": "角色晉階材料:量子(玲可 / 符玄 / 雪衣)", "Stagnant_Shadow_Scorch": "角色晉階材料:火(桂乃芬 / 托帕&帳帳)", "Stagnant_Shadow_Celestial": "角色晉階材料:風(刃 / 藿藿)", "Stagnant_Shadow_Perdition": "角色晉階材料:物理(寒鴉 / 銀枝)", @@ -331,10 +331,10 @@ "Stagnant_Shadow_Spike": "角色晉階材料:物理(娜塔莎 / 克拉拉 / 盧卡 / 素裳)", "Stagnant_Shadow_Rime": "角色晉階材料:冰(三月七 / 黑塔 / 傑帕德 / 佩拉)", "Stagnant_Shadow_Mirage": "角色晉階材料:虛數(瓦爾特 / 羅剎 / 馭空)", - "Stagnant_Shadow_Icicle": "角色晉階材料:冰(彥卿 / 鏡流)", + "Stagnant_Shadow_Icicle": "角色晉階材料:冰(彥卿 / 鏡流 / 阮•梅)", "Stagnant_Shadow_Doom": "角色晉階材料:雷(卡芙卡 / 景元)", - "Stagnant_Shadow_Puppetry": "角色晉階材料:虛數(丹恆•飲月)", - "Stagnant_Shadow_Abomination": "角色晉階材料:量子(玲可 / 符玄)", + "Stagnant_Shadow_Puppetry": "角色晉階材料:虛數(丹恆•飲月 / 真理醫生)", + "Stagnant_Shadow_Abomination": "角色晉階材料:量子(玲可 / 符玄 / 雪衣)", "Stagnant_Shadow_Scorch": "角色晉階材料:火(桂乃芬 / 托帕&帳帳)", "Stagnant_Shadow_Celestial": "角色晉階材料:風(刃 / 藿藿)", "Stagnant_Shadow_Perdition": "角色晉階材料:物理(寒鴉 / 銀枝)" @@ -396,6 +396,7 @@ "Natasha": "娜塔莎", "Pela": "佩拉", "Qingque": "青雀", + "RuanMei": "阮•梅", "Sampo": "桑博", "Seele": "希兒", "Serval": "希露瓦", @@ -406,6 +407,7 @@ "TrailblazerDestruction": "開拓者•毀滅", "TrailblazerPreservation": "開拓者•存護", "Welt": "瓦爾特", + "Xueyi": "雪衣", "Yanqing": "彥卿", "Yukong": "馭空" } @@ -586,7 +588,7 @@ "not_set": "未設定", "not_supported": "暫未支援" }, - "Obtain_victory_in_combat_with_support_characters_1_time": { + "Obtain_victory_in_combat_with_Support_Characters_1_time": { "name": "使用支援角色並獲得戰鬥勝利1次", "help": "需要設定並啟用\"每日副本\",且設並好友支援", "achievable": "可完成", @@ -648,6 +650,104 @@ "achievable": "可完成", "not_set": "未設定", "not_supported": "暫未支援" + }, + "Log_in_to_the_game": { + "name": "登入遊戲", + "help": "AchievableQuest.Log_in_to_the_game.help", + "achievable": "可完成", + "not_set": "未設定", + "not_supported": "暫未支援" + }, + "Dispatch_1_assignments": { + "name": "派遣1次委託", + "help": "AchievableQuest.Dispatch_1_assignments.help", + "achievable": "可完成", + "not_set": "未設定", + "not_supported": "暫未支援" + }, + "Complete_Simulated_Universe_1_times": { + "name": "完成1次「模擬宇宙」", + "help": "AchievableQuest.Complete_Simulated_Universe_1_times.help", + "achievable": "可完成", + "not_set": "未設定", + "not_supported": "暫未支援" + }, + "Clear_Calyx_Crimson_1_times": { + "name": "完成1次「擬造花萼(赤)」", + "help": "AchievableQuest.Clear_Calyx_Crimson_1_times.help", + "achievable": "可完成", + "not_set": "未設定", + "not_supported": "暫未支援" + }, + "Enter_combat_by_attacking_enemie_Weakness_and_win_1_times": { + "name": "利用弱點進入戰鬥並獲勝1次", + "help": "AchievableQuest.Enter_combat_by_attacking_enemie_Weakness_and_win_1_times.help", + "achievable": "可完成", + "not_set": "未設定", + "not_supported": "暫未支援" + }, + "Use_Technique_1_times": { + "name": "累積施放1次秘技", + "help": "AchievableQuest.Use_Technique_1_times.help", + "achievable": "可完成", + "not_set": "未設定", + "not_supported": "暫未支援" + }, + "Destroy_1_destructible_objects": { + "name": "累積擊碎1個可破壞物", + "help": "AchievableQuest.Destroy_1_destructible_objects.help", + "achievable": "可完成", + "not_set": "未設定", + "not_supported": "暫未支援" + }, + "Obtain_victory_in_combat_with_Support_Characters_1_times": { + "name": "使用支援角色並獲得戰鬥勝利1次", + "help": "AchievableQuest.Obtain_victory_in_combat_with_Support_Characters_1_times.help", + "achievable": "可完成", + "not_set": "未設定", + "not_supported": "暫未支援" + }, + "Level_up_any_character_1_times": { + "name": "將任意角色等級提升1次", + "help": "AchievableQuest.Level_up_any_character_1_times.help", + "achievable": "可完成", + "not_set": "未設定", + "not_supported": "暫未支援" + }, + "Level_up_any_Light_Cone_1_times": { + "name": "將任意光錐等級提升1次", + "help": "AchievableQuest.Level_up_any_Light_Cone_1_times.help", + "achievable": "可完成", + "not_set": "未設定", + "not_supported": "暫未支援" + }, + "Use_the_Omni_Synthesizer_1_times": { + "name": "使用1次「萬能合成機」", + "help": "AchievableQuest.Use_the_Omni_Synthesizer_1_times.help", + "achievable": "可完成", + "not_set": "未設定", + "not_supported": "暫未支援" + }, + "Take_photos_1_times": { + "name": "拍照1次", + "help": "AchievableQuest.Take_photos_1_times.help", + "achievable": "可完成", + "not_set": "未設定", + "not_supported": "暫未支援" + }, + "Consume_1_Trailblaze_Power": { + "name": "累積消耗1點開拓力", + "help": "AchievableQuest.Consume_1_Trailblaze_Power.help", + "achievable": "可完成", + "not_set": "未設定", + "not_supported": "暫未支援" + }, + "Level_up_any_Relic_1_times": { + "name": "將任意遺器等級提升1次", + "help": "AchievableQuest.Level_up_any_Relic_1_times.help", + "achievable": "可完成", + "not_set": "未設定", + "not_supported": "暫未支援" } }, "DailyStorage": { diff --git a/tasks/battle_pass/keywords/quest.py b/tasks/battle_pass/keywords/quest.py index ab0827a7f..f1e548d7c 100644 --- a/tasks/battle_pass/keywords/quest.py +++ b/tasks/battle_pass/keywords/quest.py @@ -3,44 +3,8 @@ from .classes import BattlePassQuest # This file was auto-generated, do not modify it manually. To generate: # ``` python -m dev_tools.keyword_extract ``` -Log_in_to_the_game = BattlePassQuest( - id=1, - name='Log_in_to_the_game', - cn='登录游戏', - cht='登入遊戲', - en='Log in to the game', - jp='ゲームにログインする', - es='Inicia sesión en el juego', -) -Consume_1_Trailblaze_Power = BattlePassQuest( - id=2, - name='Consume_1_Trailblaze_Power', - cn='累计消耗1点开拓力', - cht='累積消耗1點開拓力', - en='Consume 1 Trailblaze Power', - jp='累計で開拓力×1を消費する', - es='Consume 1 pts. de Poder trazacaminos', -) -Dispatch_1_assignments = BattlePassQuest( - id=3, - name='Dispatch_1_assignments', - cn='派遣1次委托', - cht='派遣1次委託', - en='Dispatch 1 assignment(s)', - jp='依頼に1回派遣する', - es='Asigna 1 encargo', -) -Reach_500_on_Daily_Training_Activity = BattlePassQuest( - id=4, - name='Reach_500_on_Daily_Training_Activity', - cn='每日实训活跃度达到500', - cht='每日實訓活躍度達到500', - en='Reach 500 on Daily Training Activity', - jp='デイリー訓練のアクティブ度が500に到達する', - es='Acumula 500 pts. de actividad en el Entrenamiento diario', -) Complete_Simulated_Universe_1_times = BattlePassQuest( - id=5, + id=1, name='Complete_Simulated_Universe_1_times', cn='完成1次「模拟宇宙」', cht='完成1次「模擬宇宙」', @@ -49,7 +13,7 @@ Complete_Simulated_Universe_1_times = BattlePassQuest( es='Completa el Universo Simulado 1 vez', ) Clear_Calyx_1_times = BattlePassQuest( - id=6, + id=2, name='Clear_Calyx_1_times', cn='完成1次「拟造花萼」', cht='完成1次「擬造花萼」', @@ -58,7 +22,7 @@ Clear_Calyx_1_times = BattlePassQuest( es='Completa Cáliz 1 vez', ) Complete_Echo_of_War_1_times = BattlePassQuest( - id=7, + id=3, name='Complete_Echo_of_War_1_times', cn='完成1次「历战余响」', cht='完成1次「歷戰餘響」', @@ -67,16 +31,16 @@ Complete_Echo_of_War_1_times = BattlePassQuest( es='Completa Ecos de la guerra 1 vez', ) Use_300000_credits = BattlePassQuest( - id=8, + id=4, name='Use_300000_credits', cn='累计消耗30万信用点', cht='累積消耗30萬信用點', en='Use 300,000 credits', jp='累計で信用ポイント×30万を消費する', - es='Consume 300000 créditos', + es='Consume 300 000 créditos', ) Synthesize_Consumables_1_times = BattlePassQuest( - id=9, + id=5, name='Synthesize_Consumables_1_times', cn='累计合成消耗品1次', cht='累積合成消耗品1次', @@ -85,7 +49,7 @@ Synthesize_Consumables_1_times = BattlePassQuest( es='Sintetiza consumibles 1 veces', ) Clear_Stagnant_Shadow_1_times = BattlePassQuest( - id=10, + id=6, name='Clear_Stagnant_Shadow_1_times', cn='完成1次「凝滞虚影」', cht='完成1次「凝滯虛影」', @@ -94,7 +58,7 @@ Clear_Stagnant_Shadow_1_times = BattlePassQuest( es='Completa Sombra paralizada 1 veces', ) Clear_Cavern_of_Corrosion_1_times = BattlePassQuest( - id=11, + id=7, name='Clear_Cavern_of_Corrosion_1_times', cn='完成1次「侵蚀隧洞」', cht='完成1次「侵蝕隧洞」', @@ -102,3 +66,12 @@ Clear_Cavern_of_Corrosion_1_times = BattlePassQuest( jp='「侵蝕トンネル」を1回クリアする', es='Completa Caverna de la corrosión 1 veces', ) +Consume_a_total_of_1_Trailblaze_Power_1400_Trailblazer_Power_max = BattlePassQuest( + id=8, + name='Consume_a_total_of_1_Trailblaze_Power_1400_Trailblazer_Power_max', + cn='累计消耗1点开拓力(上限1400点开拓力)', + cht='累積消耗1點開拓力(上限1400點開拓力)', + en='Consume a total of 1 Trailblaze Power (1400 Trailblazer Power max)', + jp='累計で開拓力を1消費する(上限:1400開拓力)', + es='Consume un total de 1 pts. de Poder trazacaminos (máx. 1400 pts.)', +) diff --git a/tasks/character/keywords/character_list.py b/tasks/character/keywords/character_list.py index cd8d267d5..4c58396b5 100644 --- a/tasks/character/keywords/character_list.py +++ b/tasks/character/keywords/character_list.py @@ -84,8 +84,17 @@ DanHengImbibitorLunae = CharacterList( jp='丹恒・飲月', es='Dan Heng - Imbibitor Lunae', ) -FuXuan = CharacterList( +DrRatio = CharacterList( id=10, + name='DrRatio', + cn='真理医生', + cht='真理醫生', + en='Dr. Ratio', + jp='Dr.レイシオ', + es='Dr. Ratio', +) +FuXuan = CharacterList( + id=11, name='FuXuan', cn='符玄', cht='符玄', @@ -94,7 +103,7 @@ FuXuan = CharacterList( es='Fu Xuan', ) Gepard = CharacterList( - id=11, + id=12, name='Gepard', cn='杰帕德', cht='傑帕德', @@ -103,7 +112,7 @@ Gepard = CharacterList( es='Gepard', ) Guinaifen = CharacterList( - id=12, + id=13, name='Guinaifen', cn='桂乃芬', cht='桂乃芬', @@ -112,7 +121,7 @@ Guinaifen = CharacterList( es='Guinaifen', ) Hanya = CharacterList( - id=13, + id=14, name='Hanya', cn='寒鸦', cht='寒鴉', @@ -121,7 +130,7 @@ Hanya = CharacterList( es='Hanya', ) Herta = CharacterList( - id=14, + id=15, name='Herta', cn='黑塔', cht='黑塔', @@ -130,7 +139,7 @@ Herta = CharacterList( es='Herta', ) Himeko = CharacterList( - id=15, + id=16, name='Himeko', cn='姬子', cht='姬子', @@ -139,7 +148,7 @@ Himeko = CharacterList( es='Himeko', ) Hook = CharacterList( - id=16, + id=17, name='Hook', cn='虎克', cht='虎克', @@ -148,7 +157,7 @@ Hook = CharacterList( es='Hook', ) Huohuo = CharacterList( - id=17, + id=18, name='Huohuo', cn='藿藿', cht='藿藿', @@ -157,7 +166,7 @@ Huohuo = CharacterList( es='Huohuo', ) JingYuan = CharacterList( - id=18, + id=19, name='JingYuan', cn='景元', cht='景元', @@ -166,7 +175,7 @@ JingYuan = CharacterList( es='Jing Yuan', ) Jingliu = CharacterList( - id=19, + id=20, name='Jingliu', cn='镜流', cht='鏡流', @@ -175,7 +184,7 @@ Jingliu = CharacterList( es='Jingliu', ) Kafka = CharacterList( - id=20, + id=21, name='Kafka', cn='卡芙卡', cht='卡芙卡', @@ -184,7 +193,7 @@ Kafka = CharacterList( es='Kafka', ) Luka = CharacterList( - id=21, + id=22, name='Luka', cn='卢卡', cht='盧卡', @@ -193,7 +202,7 @@ Luka = CharacterList( es='Luka', ) Luocha = CharacterList( - id=22, + id=23, name='Luocha', cn='罗刹', cht='羅剎', @@ -202,7 +211,7 @@ Luocha = CharacterList( es='Luocha', ) Lynx = CharacterList( - id=23, + id=24, name='Lynx', cn='玲可', cht='玲可', @@ -211,7 +220,7 @@ Lynx = CharacterList( es='Lynx', ) March7th = CharacterList( - id=24, + id=25, name='March7th', cn='三月七', cht='三月七', @@ -220,7 +229,7 @@ March7th = CharacterList( es='Siete de Marzo', ) Natasha = CharacterList( - id=25, + id=26, name='Natasha', cn='娜塔莎', cht='娜塔莎', @@ -229,7 +238,7 @@ Natasha = CharacterList( es='Natasha', ) Pela = CharacterList( - id=26, + id=27, name='Pela', cn='佩拉', cht='佩拉', @@ -238,7 +247,7 @@ Pela = CharacterList( es='Pela', ) Qingque = CharacterList( - id=27, + id=28, name='Qingque', cn='青雀', cht='青雀', @@ -246,8 +255,17 @@ Qingque = CharacterList( jp='青雀', es='Qingque', ) +RuanMei = CharacterList( + id=29, + name='RuanMei', + cn='阮•梅', + cht='阮•梅', + en='Ruan Mei', + jp='ルアン・メェイ', + es='Ruan Mei', +) Sampo = CharacterList( - id=28, + id=30, name='Sampo', cn='桑博', cht='桑博', @@ -256,7 +274,7 @@ Sampo = CharacterList( es='Sampo', ) Seele = CharacterList( - id=29, + id=31, name='Seele', cn='希儿', cht='希兒', @@ -265,7 +283,7 @@ Seele = CharacterList( es='Seele', ) Serval = CharacterList( - id=30, + id=32, name='Serval', cn='希露瓦', cht='希露瓦', @@ -274,7 +292,7 @@ Serval = CharacterList( es='Serval', ) SilverWolf = CharacterList( - id=31, + id=33, name='SilverWolf', cn='银狼', cht='銀狼', @@ -283,7 +301,7 @@ SilverWolf = CharacterList( es='Silver Wolf', ) Sushang = CharacterList( - id=32, + id=34, name='Sushang', cn='素裳', cht='素裳', @@ -292,7 +310,7 @@ Sushang = CharacterList( es='Sushang', ) Tingyun = CharacterList( - id=33, + id=35, name='Tingyun', cn='停云', cht='停雲', @@ -301,7 +319,7 @@ Tingyun = CharacterList( es='Tingyun', ) TopazNumby = CharacterList( - id=34, + id=36, name='TopazNumby', cn='托帕&账账', cht='托帕&帳帳', @@ -310,7 +328,7 @@ TopazNumby = CharacterList( es='Topaz y Conti', ) TrailblazerDestruction = CharacterList( - id=35, + id=37, name='TrailblazerDestruction', cn='Trailblazer•毁灭', cht='Trailblazer•毀滅', @@ -319,7 +337,7 @@ TrailblazerDestruction = CharacterList( es='Trailblazer: Destrucción', ) TrailblazerPreservation = CharacterList( - id=36, + id=38, name='TrailblazerPreservation', cn='Trailblazer•存护', cht='Trailblazer•存護', @@ -328,7 +346,7 @@ TrailblazerPreservation = CharacterList( es='Trailblazer: Conservación', ) Welt = CharacterList( - id=37, + id=39, name='Welt', cn='瓦尔特', cht='瓦爾特', @@ -336,8 +354,17 @@ Welt = CharacterList( jp='ヴェルト', es='Welt', ) +Xueyi = CharacterList( + id=40, + name='Xueyi', + cn='雪衣', + cht='雪衣', + en='Xueyi', + jp='雪衣', + es='Xueyi', +) Yanqing = CharacterList( - id=38, + id=41, name='Yanqing', cn='彦卿', cht='彥卿', @@ -346,7 +373,7 @@ Yanqing = CharacterList( es='Yanqing', ) Yukong = CharacterList( - id=39, + id=42, name='Yukong', cn='驭空', cht='馭空', diff --git a/tasks/character/keywords/height.py b/tasks/character/keywords/height.py index 7563a4631..d1b79ee91 100644 --- a/tasks/character/keywords/height.py +++ b/tasks/character/keywords/height.py @@ -9,6 +9,7 @@ CHARACTER_HEIGHT = { 'FuXuan': 'Girl', 'Yanqing': 'Boy', 'Arlan': 'Boy', + 'Xueyi': 'Maid', 'Tingyun': 'Maid', 'Sushang': 'Maid', 'Seele': 'Maid', diff --git a/tasks/daily/keywords/daily_quest.py b/tasks/daily/keywords/daily_quest.py index feaa269a8..99892b7b2 100644 --- a/tasks/daily/keywords/daily_quest.py +++ b/tasks/daily/keywords/daily_quest.py @@ -147,12 +147,12 @@ Complete_1_stage_in_Simulated_Universe_Any_world = DailyQuest( jp='「模擬宇宙」のエリアを1つクリアする(任意の世界)', es='Supera 1 zona del Universo Simulado (cualquier mundo)', ) -Obtain_victory_in_combat_with_support_characters_1_time = DailyQuest( +Obtain_victory_in_combat_with_Support_Characters_1_time = DailyQuest( id=17, - name='Obtain_victory_in_combat_with_support_characters_1_time', + name='Obtain_victory_in_combat_with_Support_Characters_1_time', cn='使用支援角色并获得战斗胜利1次', cht='使用支援角色並獲得戰鬥勝利1次', - en='Obtain victory in combat with support characters 1 time', + en='Obtain victory in combat with Support Characters 1 time', jp='サポートキャラを使い、戦闘に1回勝利する', es='Gana 1 batalla utilizando personajes de apoyo', ) @@ -228,3 +228,129 @@ Use_Consumables_1_time = DailyQuest( jp='消耗品を1個使う', es='Usa 1 consumible', ) +Log_in_to_the_game = DailyQuest( + id=26, + name='Log_in_to_the_game', + cn='登录游戏', + cht='登入遊戲', + en='Log in to the game', + jp='ゲームにログインする', + es='Inicia sesión en el juego', +) +Dispatch_1_assignments = DailyQuest( + id=27, + name='Dispatch_1_assignments', + cn='派遣1次委托', + cht='派遣1次委託', + en='Dispatch 1 assignment(s)', + jp='依頼に1回派遣する', + es='Asigna 1 encargo', +) +Complete_Simulated_Universe_1_times = DailyQuest( + id=28, + name='Complete_Simulated_Universe_1_times', + cn='完成1次「模拟宇宙」', + cht='完成1次「模擬宇宙」', + en='Complete Simulated Universe 1 time(s)', + jp='「模擬宇宙」を1回クリアする', + es='Completa el Universo Simulado 1 vez', +) +Clear_Calyx_Crimson_1_times = DailyQuest( + id=29, + name='Clear_Calyx_Crimson_1_times', + cn='完成1次「拟造花萼(赤)」', + cht='完成1次「擬造花萼(赤)」', + en='Clear Calyx (Crimson) 1 time(s)', + jp='「疑似花萼(赤)」を1回クリアする', + es='Completa Cáliz (carmesí) 1 vez', +) +Enter_combat_by_attacking_enemie_Weakness_and_win_1_times = DailyQuest( + id=30, + name='Enter_combat_by_attacking_enemie_Weakness_and_win_1_times', + cn='利用弱点进入战斗并获胜1次', + cht='利用弱點進入戰鬥並獲勝1次', + en="Enter combat by attacking enemies' Weakness and win 1 time(s)", + jp='弱点を攻撃して戦闘に入り、1回勝利する', + es='Entra en combate atacando la debilidad del enemigo y gana 1 veces', +) +Use_Technique_1_times = DailyQuest( + id=31, + name='Use_Technique_1_times', + cn='累计施放1次秘技', + cht='累積施放1次秘技', + en='Use Technique 1 time(s)', + jp='累計で秘技を1回発動する', + es='Usa técnicas 1 veces', +) +Destroy_1_destructible_objects = DailyQuest( + id=32, + name='Destroy_1_destructible_objects', + cn='累计击碎1个可破坏物', + cht='累積擊碎1個可破壞物', + en='Destroy 1 destructible object(s)', + jp='破壊できるオブジェクトを累計で1個破壊する', + es='Destruye 1 objetos destruibles', +) +Obtain_victory_in_combat_with_Support_Characters_1_times = DailyQuest( + id=33, + name='Obtain_victory_in_combat_with_Support_Characters_1_times', + cn='使用支援角色并获得战斗胜利1次', + cht='使用支援角色並獲得戰鬥勝利1次', + en='Obtain victory in combat with Support Characters 1 time(s)', + jp='サポートキャラを使い、戦闘に1回勝利する', + es='Gana 1 batalla(s) utilizando personajes de apoyo', +) +Level_up_any_character_1_times = DailyQuest( + id=34, + name='Level_up_any_character_1_times', + cn='将任意角色等级提升1次', + cht='將任意角色等級提升1次', + en='Level up any character 1 time(s)', + jp='任意のキャラを1回レベルアップする', + es='Mejora el nivel de cualquier personaje 1 vez', +) +Level_up_any_Light_Cone_1_times = DailyQuest( + id=35, + name='Level_up_any_Light_Cone_1_times', + cn='将任意光锥等级提升1次', + cht='將任意光錐等級提升1次', + en='Level up any Light Cone 1 time(s)', + jp='任意の光円錐を1回レベルアップする', + es='Mejora cualquier cono de luz 1 vez', +) +Use_the_Omni_Synthesizer_1_times = DailyQuest( + id=36, + name='Use_the_Omni_Synthesizer_1_times', + cn='使用1次「万能合成机」', + cht='使用1次「萬能合成機」', + en='Use the Omni-Synthesizer 1 time(s)', + jp='「万能合成マシン」を1回使用する', + es='Utiliza la máquina sintetizadora multiusos 1 veces', +) +Take_photos_1_times = DailyQuest( + id=37, + name='Take_photos_1_times', + cn='拍照1次', + cht='拍照1次', + en='Take photos 1 time(s)', + jp='1回撮影する', + es='Haz 1 foto(s)', +) +Consume_1_Trailblaze_Power = DailyQuest( + id=38, + name='Consume_1_Trailblaze_Power', + cn='累计消耗1点开拓力', + cht='累積消耗1點開拓力', + en='Consume 1 Trailblaze Power', + jp='累計で開拓力×1を消費する', + es='Consume 1 pts. de Poder trazacaminos', +) +Level_up_any_Relic_1_times = DailyQuest( + id=39, + name='Level_up_any_Relic_1_times', + cn='将任意遗器等级提升1次', + cht='將任意遺器等級提升1次', + en='Level up any Relic 1 time(s)', + jp='任意の遺物を1回レベルアップする', + es='Mejora cualquier artefacto 1 vez', +) diff --git a/tasks/dungeon/dungeon.py b/tasks/dungeon/dungeon.py index 3e70fe61a..89442a489 100644 --- a/tasks/dungeon/dungeon.py +++ b/tasks/dungeon/dungeon.py @@ -94,8 +94,8 @@ class Dungeon(DungeonStamina, DungeonEvent, Combat): self.achieved_daily_quest = True if support_character is not None: self.called_daily_support = True - if KEYWORDS_DAILY_QUEST.Obtain_victory_in_combat_with_support_characters_1_time: - logger.info('Achieve daily quest Obtain_victory_in_combat_with_support_characters_1_time') + if KEYWORDS_DAILY_QUEST.Obtain_victory_in_combat_with_Support_Characters_1_time: + logger.info('Achieve daily quest Obtain_victory_in_combat_with_Support_Characters_1_time') self.achieved_daily_quest = True # Check trailblaze power, this may stop current task @@ -326,7 +326,7 @@ class Dungeon(DungeonStamina, DungeonEvent, Combat): require = False if not self.config.stored.DailyActivity.is_full(): - if KEYWORDS_DAILY_QUEST.Obtain_victory_in_combat_with_support_characters_1_time \ + if KEYWORDS_DAILY_QUEST.Obtain_victory_in_combat_with_Support_Characters_1_time \ in self.daily_quests: require = True diff --git a/tasks/dungeon/keywords/dungeon.py b/tasks/dungeon/keywords/dungeon.py index 0787c2f3b..99fed389f 100644 --- a/tasks/dungeon/keywords/dungeon.py +++ b/tasks/dungeon/keywords/dungeon.py @@ -318,89 +318,80 @@ Echo_of_War_Divine_Seed = DungeonList( jp='歴戦余韻・不死の神実', es='Semilla divina', ) -Simulated_Universe_World_1 = DungeonList( +Borehole_Planet_Old_Crater = DungeonList( id=36, + name='Borehole_Planet_Old_Crater', + cn='蛀星的旧靥•历战余响', + cht='蛀星的舊靨•歷戰餘響', + en="Borehole Planet's Old Crater", + jp='歴戦余韻・星を蝕む往日の面影', + es='Cráter del planeta devorado', +) +Simulated_Universe_World_1 = DungeonList( + id=37, name='Simulated_Universe_World_1', cn='第一世界•模拟宇宙', cht='第一世界•模擬宇宙', - en='Simulated Universe — World 1', + en='Simulated Universe: World 1', jp='第一世界・模擬宇宙', es='Mundo 1', ) Simulated_Universe_World_3 = DungeonList( - id=37, + id=38, name='Simulated_Universe_World_3', cn='第三世界•模拟宇宙', cht='第三世界•模擬宇宙', - en='Simulated Universe — World 3', + en='Simulated Universe: World 3', jp='第三世界・模擬宇宙', es='Mundo 3', ) Simulated_Universe_World_4 = DungeonList( - id=38, + id=39, name='Simulated_Universe_World_4', cn='第四世界•模拟宇宙', cht='第四世界•模擬宇宙', - en='Simulated Universe — World 4', + en='Simulated Universe: World 4', jp='第四世界・模擬宇宙', es='Mundo 4', ) Simulated_Universe_World_5 = DungeonList( - id=39, + id=40, name='Simulated_Universe_World_5', cn='第五世界•模拟宇宙', cht='第五世界•模擬宇宙', - en='Simulated Universe — World 5', + en='Simulated Universe: World 5', jp='第五世界・模擬宇宙', es='Mundo 5', ) Simulated_Universe_World_6 = DungeonList( - id=40, + id=41, name='Simulated_Universe_World_6', cn='第六世界•模拟宇宙', cht='第六世界•模擬宇宙', - en='Simulated Universe — World 6', + en='Simulated Universe: World 6', jp='第六世界・模擬宇宙', es='Mundo 6', ) Simulated_Universe_World_7 = DungeonList( - id=41, + id=42, name='Simulated_Universe_World_7', cn='第七世界•模拟宇宙', cht='第七世界•模擬宇宙', - en='Simulated Universe — World 7', + en='Simulated Universe: World 7', jp='第七世界・模擬宇宙', es='Mundo 7', ) Simulated_Universe_World_8 = DungeonList( - id=42, + id=43, name='Simulated_Universe_World_8', cn='第八世界•模拟宇宙', cht='第八世界•模擬宇宙', - en='Simulated Universe — World 8', + en='Simulated Universe: World 8', jp='第八世界・模擬宇宙', es='Mundo 8', ) -The_Voyage_of_Navis_Astriger = DungeonList( - id=43, - name='The_Voyage_of_Navis_Astriger', - cn='天艟求仙迷航录', - cht='天艟求仙迷航錄', - en='The Voyage of Navis Astriger', - jp='天艟求仙放浪記', - es='El viaje de las naves astriger', -) -The_Last_Vestiges_of_Towering_Citadel = DungeonList( - id=44, - name='The_Last_Vestiges_of_Towering_Citadel', - cn='永屹之城遗秘', - cht='永屹之城遺秘', - en='The Last Vestiges of Towering Citadel', - jp='永屹の城の秘密', - es='Herencia de la Ciudadela Imponente', -) Memory_of_Chaos = DungeonList( - id=45, + id=44, name='Memory_of_Chaos', cn='混沌回忆', cht='混沌回憶', diff --git a/tasks/dungeon/keywords/dungeon_detailed.py b/tasks/dungeon/keywords/dungeon_detailed.py index 6d5086141..6c752846d 100644 --- a/tasks/dungeon/keywords/dungeon_detailed.py +++ b/tasks/dungeon/keywords/dungeon_detailed.py @@ -69,11 +69,11 @@ Stagnant_Shadow_Mirage = DungeonDetailed( Stagnant_Shadow_Icicle = DungeonDetailed( id=8, name='Stagnant_Shadow_Icicle', - cn='角色晋阶材料:冰(彦卿 / 镜流)', - cht='角色晉階材料:冰(彥卿 / 鏡流)', - en='Ascension: Ice (Yanqing / Jingliu)', - jp='キャラクター昇格素材:氷(彦卿 / 鏡流)', - es='Ascension: Hielo (Yanqing / Jingliu)', + cn='角色晋阶材料:冰(彦卿 / 镜流 / 阮•梅)', + cht='角色晉階材料:冰(彥卿 / 鏡流 / 阮•梅)', + en='Ascension: Ice (Yanqing / Jingliu / Ruan Mei)', + jp='キャラクター昇格素材:氷(彦卿 / 鏡流 / ルアン・メェイ)', + es='Ascension: Hielo (Yanqing / Jingliu / Ruan Mei)', ) Stagnant_Shadow_Doom = DungeonDetailed( id=9, @@ -87,20 +87,20 @@ Stagnant_Shadow_Doom = DungeonDetailed( Stagnant_Shadow_Puppetry = DungeonDetailed( id=10, name='Stagnant_Shadow_Puppetry', - cn='角色晋阶材料:虚数(丹恒•饮月)', - cht='角色晉階材料:虛數(丹恆•飲月)', - en='Ascension: Imaginary (Dan Heng • Imbibitor Lunae)', - jp='キャラクター昇格素材:虚数(丹恒・飲月)', - es='Ascension: Imaginario (Dan Heng - Imbibitor Lunae)', + cn='角色晋阶材料:虚数(丹恒•饮月 / 真理医生)', + cht='角色晉階材料:虛數(丹恆•飲月 / 真理醫生)', + en='Ascension: Imaginary (Dan Heng • Imbibitor Lunae / Dr. Ratio)', + jp='キャラクター昇格素材:虚数(丹恒・飲月 / Dr.レイシオ)', + es='Ascension: Imaginario (Dan Heng - Imbibitor Lunae / Dr. Ratio)', ) Stagnant_Shadow_Abomination = DungeonDetailed( id=11, name='Stagnant_Shadow_Abomination', - cn='角色晋阶材料:量子(玲可 / 符玄)', - cht='角色晉階材料:量子(玲可 / 符玄)', - en='Ascension: Quantum (Lynx / Fu Xuan)', - jp='キャラクター昇格素材:量子(リンクス / 符玄)', - es='Ascension: Cuántico (Lynx / Fu Xuan)', + cn='角色晋阶材料:量子(玲可 / 符玄 / 雪衣)', + cht='角色晉階材料:量子(玲可 / 符玄 / 雪衣)', + en='Ascension: Quantum (Lynx / Fu Xuan / Xueyi)', + jp='キャラクター昇格素材:量子(リンクス / 符玄 / 雪衣)', + es='Ascension: Cuántico (Lynx / Fu Xuan / Xueyi)', ) Stagnant_Shadow_Scorch = DungeonDetailed( id=12, diff --git a/tasks/dungeon/ui.py b/tasks/dungeon/ui.py index 3d6644ae6..99e66757a 100644 --- a/tasks/dungeon/ui.py +++ b/tasks/dungeon/ui.py @@ -195,7 +195,7 @@ class DungeonUI(DungeonState): logger.info('Survival index loaded') return True - def _dungeon_wait_until_forgotten_hall_stabled(self, skip_first_screenshot=True): + def _dungeon_wait_until_echo_or_war_stabled(self, skip_first_screenshot=True): """ Returns: bool: True if wait success, False if wait timeout. @@ -213,20 +213,20 @@ class DungeonUI(DungeonState): # End if timeout.reached(): - logger.warning('Wait until Forgotten_Hall stabled timeout') + logger.warning('Wait until Echo_of_War stabled timeout') return False DUNGEON_NAV_LIST.load_rows(main=self) # End - button = DUNGEON_NAV_LIST.keyword2button(KEYWORDS_DUNGEON_NAV.Forgotten_Hall, show_warning=False) + button = DUNGEON_NAV_LIST.keyword2button(KEYWORDS_DUNGEON_NAV.Echo_of_War, show_warning=False) if button: # 513 is the top of the last row of DungeonNav if button.area[1] > 513: - logger.info('DungeonNav row Forgotten_Hall stabled') + logger.info('DungeonNav row Echo_of_War stabled') return True else: - logger.info('No Forgotten_Hall in list skip waiting') + logger.info('No Echo_of_War in list skip waiting') return False def _dungeon_nav_goto(self, dungeon: DungeonList, skip_first_screenshot=True): @@ -296,7 +296,7 @@ class DungeonUI(DungeonState): while 1: DUNGEON_NAV_LIST.drag_page('down', main=self) # No skip_first_screenshot since drag_page is just called - if self._dungeon_wait_until_forgotten_hall_stabled(skip_first_screenshot=False): + if self._dungeon_wait_until_echo_or_war_stabled(skip_first_screenshot=False): DUNGEON_NAV_LIST.select_row(dungeon.dungeon_nav, main=self, insight=False) return True diff --git a/tasks/rogue/keywords/bonus.py b/tasks/rogue/keywords/bonus.py index 1e2ad033b..4be45d1d2 100644 --- a/tasks/rogue/keywords/bonus.py +++ b/tasks/rogue/keywords/bonus.py @@ -3,32 +3,32 @@ from .classes import RogueBonus # This file was auto-generated, do not modify it manually. To generate: # ``` python -m dev_tools.keyword_extract ``` -Fragmented_Cosmos = RogueBonus( +Fragmented_Universe = RogueBonus( id=1, - name='Fragmented_Cosmos', + name='Fragmented_Universe', cn='破碎宇宙', cht='破碎宇宙', - en='Fragmented Cosmos', + en='Fragmented Universe', jp='破裂した宇宙', - es='Cosmos fragmentado', + es='Universo fragmentado', ) -Blessing_Cosmos = RogueBonus( +Blessing_Universe = RogueBonus( id=2, - name='Blessing_Cosmos', + name='Blessing_Universe', cn='祝福宇宙', cht='祝福宇宙', - en='Blessing Cosmos', + en='Blessing Universe', jp='祝福された宇宙', - es='Cosmos de bendiciones', + es='Universo de bendiciones', ) -Miracle_Cosmos = RogueBonus( +Miracle_Universe = RogueBonus( id=3, - name='Miracle_Cosmos', + name='Miracle_Universe', cn='神奇宇宙', cht='神奇宇宙', - en='Miracle Cosmos', + en='Miracle Universe', jp='奇跡的な宇宙', - es='Cosmos milagroso', + es='Universo milagroso', ) Orderly_Universe = RogueBonus( id=4, @@ -46,7 +46,7 @@ Hungry_Universe = RogueBonus( cht='巨胃宇宙', en='Hungry Universe', jp='大食いな宇宙', - es='Universo barrigudo', + es='Universo hambriento', ) Bloodthirsty_Universe = RogueBonus( id=6, @@ -57,3 +57,21 @@ Bloodthirsty_Universe = RogueBonus( jp='血を好む宇宙', es='Universo chupasangre', ) +Inorganic_Universe = RogueBonus( + id=7, + name='Inorganic_Universe', + cn='无机宇宙', + cht='無機宇宙', + en='Inorganic Universe', + jp='無機の宇宙', + es='Universo inorgánico', +) +Equilibrium_Universe = RogueBonus( + id=8, + name='Equilibrium_Universe', + cn='均衡宇宙', + cht='均衡宇宙', + en='Equilibrium Universe', + jp='均衡な宇宙', + es='Universo equilibrado', +) diff --git a/tasks/rogue/keywords/curio.py b/tasks/rogue/keywords/curio.py index d1528212b..bfd7fedf3 100644 --- a/tasks/rogue/keywords/curio.py +++ b/tasks/rogue/keywords/curio.py @@ -714,3 +714,147 @@ Shattered_Star_Bait_Infinite = RogueCurio( jp='砕けた星の釣り餌∞', es='Cebo de las estrellas despedazadas (infinito)', ) +Wish_Upon_a_Star = RogueCurio( + id=80, + name='Wish_Upon_a_Star', + cn='许愿星', + cht='許願星', + en='Wish Upon a Star', + jp='願い星', + es='Estrella de los deseos', +) +Price_of_Peace = RogueCurio( + id=81, + name='Price_of_Peace', + cn='和平的代价', + cht='和平的代價', + en='Price of Peace', + jp='平和の代価', + es='El precio de la paz', +) +Jellyfish_on_the_Staircase = RogueCurio( + id=82, + name='Jellyfish_on_the_Staircase', + cn='「楼梯上的水母」', + cht='「樓梯上的水母」', + en='"Jellyfish on the Staircase"', + jp='「階段の上のクラゲ」', + es='La medusa de las escaleras', +) +Rationality_Fall = RogueCurio( + id=83, + name='Rationality_Fall', + cn='理性的溃败', + cht='理性的潰敗', + en="Rationality's Fall", + jp='理性の崩壊', + es='El colapso de la lógica', +) +Indecipherable_Box = RogueCurio( + id=84, + name='Indecipherable_Box', + cn='猜不透匣', + cht='猜不透匣', + en='Indecipherable Box', + jp='計り知れない匣', + es='Caja indescifrable', +) +Rotting_Fruit_of_the_Alien_Tree = RogueCurio( + id=85, + name='Rotting_Fruit_of_the_Alien_Tree', + cn='腐化异木果实', + cht='腐化異木果實', + en='Rotting Fruit of the Alien Tree', + jp='腐敗した異木の果実', + es='Fruto podrido del árbol extraño', +) +King_of_Sponges = RogueCurio( + id=86, + name='King_of_Sponges', + cn='海绵王', + cht='海綿王', + en='King of Sponges', + jp='スポンジ王', + es='Rey de las esponjas', +) +Mysterious_Magnetism = RogueCurio( + id=87, + name='Mysterious_Magnetism', + cn='「神秘」磁力', + cht='「神秘」磁力', + en='Mysterious Magnetism', + jp='「神秘」の磁力', + es='Magnetismo misterioso', +) +Organic_Heart = RogueCurio( + id=88, + name='Organic_Heart', + cn='「有机心脏」', + cht='「有機心臟」', + en='"Organic Heart"', + jp='「有機の心臓」', + es='Corazón orgánico', +) +A_Ruan_Pouch = RogueCurio( + id=89, + name='A_Ruan_Pouch', + cn='阿阮袋', + cht='阿阮袋', + en='A-Ruan Pouch', + jp='ルアン袋', + es='Bolsa de Ruan Mei', +) +Sealing_Wax_of_Erudition = RogueCurio( + id=90, + name='Sealing_Wax_of_Erudition', + cn='智识火漆', + cht='智識火漆', + en='Sealing Wax of Erudition', + jp='知恵の封蝋', + es='Lacre de la Erudición', +) +Cognito_Invalidater_Codebuilder = RogueCurio( + id=91, + name='Cognito_Invalidater_Codebuilder', + cn='「无效念头」代码机', + cht='「無效念頭」程式碼機', + en='"Cognito Invalidater" Codebuilder', + jp='「無効アイデア」コード機', + es='Codificador del pensamiento invalidante', +) +Cognito_Averagifier_Communal_Nexus = RogueCurio( + id=92, + name='Cognito_Averagifier_Communal_Nexus', + cn='「中等念头」群体机', + cht='「中等念頭」群體機', + en='"Cognito Averagifier" Communal Nexus', + jp='「平凡アイデア」集団機', + es='Agrupador del pensamiento promedio', +) +Ashheart_Ciphertech = RogueCurio( + id=93, + name='Ashheart_Ciphertech', + cn='「心如死灰」密码机', + cht='「心如死灰」密碼機', + en='"Ashheart" Ciphertech', + jp='「意気消沈」暗号機', + es='Cifrador Corazón ceniciento', +) +Revelrous_Rainbowmaker = RogueCurio( + id=94, + name='Revelrous_Rainbowmaker', + cn='「极佳念头」彩虹机', + cht='「極佳念頭」彩虹機', + en='"Revelrous" Rainbowmaker', + jp='「最高アイデア」レインボー機', + es='Crearcoíris del pensamiento espléndido', +) +Wildminder_Machine_Cell = RogueCurio( + id=95, + name='Wildminder_Machine_Cell', + cn='「奇思狂想」机器团', + cht='「奇思狂想」機器團', + en='"Wildminder" Machine Cell', + jp='「奇想天外」培養脳', + es='Maquinaria del pensamiento loco', +) diff --git a/tasks/rogue/keywords/event_option.py b/tasks/rogue/keywords/event_option.py index cf6c25313..c11560faa 100644 --- a/tasks/rogue/keywords/event_option.py +++ b/tasks/rogue/keywords/event_option.py @@ -21,8 +21,17 @@ Want_lots_of_money = RogueEventOption( jp='お金がたくさん欲しい', es='Quiero mucho dinero.', ) -Purchase_a_1_star_Blessing = RogueEventOption( +You_are_Ruan_Mei = RogueEventOption( id=3, + name='You_are_Ruan_Mei', + cn='你…就是阮•梅?', + cht='你……就是阮•梅?', + en='You are... Ruan Mei?', + jp='あなたが……ルアン・メェイ?', + es='¿Eres... Ruan Mei?', +) +Purchase_a_1_star_Blessing = RogueEventOption( + id=4, name='Purchase_a_1_star_Blessing', cn='购买1个1星祝福。', cht='購買1個一星祝福。', @@ -31,7 +40,7 @@ Purchase_a_1_star_Blessing = RogueEventOption( es='Compra 1 bendición de 1 estrella.', ) Purchase_1_Curio = RogueEventOption( - id=4, + id=5, name='Purchase_1_Curio', cn='购买1个奇物。', cht='購買1個奇物。', @@ -40,7 +49,7 @@ Purchase_1_Curio = RogueEventOption( es='Compra 1 objeto raro.', ) Enhance_2_random_Blessings = RogueEventOption( - id=5, + id=6, name='Enhance_2_random_Blessings', cn='强化2个随机祝福。', cht='強化2個隨機祝福。', @@ -49,7 +58,7 @@ Enhance_2_random_Blessings = RogueEventOption( es='Potencias 2 bendiciones al azar.', ) Leave_1436 = RogueEventOption( - id=6, + id=7, name='Leave_1436', cn='离开。', cht='離開。', @@ -58,7 +67,7 @@ Leave_1436 = RogueEventOption( es='Márchate.', ) Claim_an_equal_amount_of_Data_Exchange = RogueEventOption( - id=7, + id=8, name='Claim_an_equal_amount_of_Data_Exchange', cn='领取等量的『数据兑换』。', cht='領取等量的「資料兌換」。', @@ -67,7 +76,7 @@ Claim_an_equal_amount_of_Data_Exchange = RogueEventOption( es='Recoge la misma cantidad de "intercambio de datos".', ) Leave_0837 = RogueEventOption( - id=8, + id=9, name='Leave_0837', cn='离开', cht='離開', @@ -76,7 +85,7 @@ Leave_0837 = RogueEventOption( es='Salir', ) Qlipoth_Favor = RogueEventOption( - id=9, + id=10, name='Qlipoth_Favor', cn='克里珀的恩赐。', cht='克里珀的恩賜。', @@ -85,7 +94,7 @@ Qlipoth_Favor = RogueEventOption( es='Gracia de Qlipoth.', ) Qlipoth_Blessing = RogueEventOption( - id=10, + id=11, name='Qlipoth_Blessing', cn='克里珀的祝福。', cht='克里珀的祝福。', @@ -94,7 +103,7 @@ Qlipoth_Blessing = RogueEventOption( es='Bendición de Qlipoth.', ) Fight_with_the_lead_miner_and_grab_the_stuff = RogueEventOption( - id=11, + id=12, name='Fight_with_the_lead_miner_and_grab_the_stuff', cn='和*头号矿工*打一架,把好东西抢过来!', cht='和*頭號礦工*打一架,把好東西搶過來!', @@ -103,7 +112,7 @@ Fight_with_the_lead_miner_and_grab_the_stuff = RogueEventOption( es='¡Pelea con el capataz y aprópiate del material!', ) Dedicate_to_the_Amber_Lord = RogueEventOption( - id=12, + id=13, name='Dedicate_to_the_Amber_Lord', cn='献给琥珀王。', cht='獻給琥珀王。', @@ -112,7 +121,7 @@ Dedicate_to_the_Amber_Lord = RogueEventOption( es='Dedícalo al Señor del Ámbar.', ) Record_of_the_Aeon_of_1 = RogueEventOption( - id=13, + id=14, name='Record_of_the_Aeon_of_1', cn='关于#1星神的记载。', cht='關於#1星神的記載。', @@ -121,7 +130,7 @@ Record_of_the_Aeon_of_1 = RogueEventOption( es='Registros del Eón (#1).', ) Let_Elation_override_the_other_records = RogueEventOption( - id=14, + id=15, name='Let_Elation_override_the_other_records', cn='让「欢愉」覆盖别的记载!', cht='讓「歡愉」覆蓋別的記載!', @@ -130,7 +139,7 @@ Let_Elation_override_the_other_records = RogueEventOption( es='¡Deja que la Exultación sobrescriba los demás registros!', ) Editing_records_of_the_Remembrance = RogueEventOption( - id=15, + id=16, name='Editing_records_of_the_Remembrance', cn='改写关于「记忆」的记载。', cht='改寫關於「記憶」的記載。', @@ -138,8 +147,17 @@ Editing_records_of_the_Remembrance = RogueEventOption( jp='「記憶」に関する記録を書き換える', es='Edita los registros de la Reminiscencia.', ) +Rewrite_the_record_of_the_Aeon_of_1 = RogueEventOption( + id=17, + name='Rewrite_the_record_of_the_Aeon_of_1', + cn='改写关于#1星神的记载。', + cht='改寫關於#1星神的記載。', + en='Rewrite the record of the Aeon of #1.', + jp='#1の星神に関する記載を書き換える', + es='Reescribe el registro del Eón de la #1.', +) Jim_Hulk_collection = RogueEventOption( - id=16, + id=18, name='Jim_Hulk_collection', cn='杰姆·哈克的藏品。', cht='傑姆•哈克的收藏。', @@ -148,7 +166,7 @@ Jim_Hulk_collection = RogueEventOption( es='Colección de Jim Hulk.', ) Walk_away = RogueEventOption( - id=17, + id=19, name='Walk_away', cn='转身走开。', cht='轉身走開。', @@ -157,7 +175,7 @@ Walk_away = RogueEventOption( es='Te marchas.', ) Preserve_Jim_Hulk_remains = RogueEventOption( - id=18, + id=20, name='Preserve_Jim_Hulk_remains', cn='保存杰姆·哈克的遗体。', cht='保存傑姆•哈克的遺體。', @@ -166,7 +184,7 @@ Preserve_Jim_Hulk_remains = RogueEventOption( es='Conserva los restos de Jim Hulk.', ) Pay_the_price_Continue_its_operation = RogueEventOption( - id=19, + id=21, name='Pay_the_price_Continue_its_operation', cn='付出代价…延续它的运转。', cht='付出代價……延續它的運轉。', @@ -175,7 +193,7 @@ Pay_the_price_Continue_its_operation = RogueEventOption( es='Paga el precio... Y continúa las operaciones.', ) A_box_of_expired_doughnuts = RogueEventOption( - id=20, + id=22, name='A_box_of_expired_doughnuts', cn='一盒过期甜甜圈。', cht='一盒過期甜甜圈。', @@ -184,7 +202,7 @@ A_box_of_expired_doughnuts = RogueEventOption( es='Una caja de rosquillas caducadas.', ) A_lotus_that_can_sing_the_Happy_Birthday_song = RogueEventOption( - id=21, + id=23, name='A_lotus_that_can_sing_the_Happy_Birthday_song', cn='会唱生日快乐的莲花。', cht='會唱〈生日快樂〉的蓮花。', @@ -193,7 +211,7 @@ A_lotus_that_can_sing_the_Happy_Birthday_song = RogueEventOption( es='Un loto que puede cantar cumpleaños feliz.', ) A_mechanical_box = RogueEventOption( - id=22, + id=24, name='A_mechanical_box', cn='机械匣子。', cht='機械盒子。', @@ -202,7 +220,7 @@ A_mechanical_box = RogueEventOption( es='Una caja mecánica.', ) Leave_this_place = RogueEventOption( - id=23, + id=25, name='Leave_this_place', cn='离开这里。', cht='離開這裡。', @@ -211,7 +229,7 @@ Leave_this_place = RogueEventOption( es='Deja este lugar.', ) Smash_this_television = RogueEventOption( - id=24, + id=26, name='Smash_this_television', cn='打碎这个电视机!', cht='打碎這台電視機!', @@ -220,7 +238,7 @@ Smash_this_television = RogueEventOption( es='¡Destruye este televisor!', ) Give_everything_to_them = RogueEventOption( - id=25, + id=27, name='Give_everything_to_them', cn='将一切奉献给「祂」。', cht='將一切奉獻給「祂」。', @@ -229,7 +247,7 @@ Give_everything_to_them = RogueEventOption( es='Dedícalo todo a "ellos".', ) Bear_ten_carats_of_trash = RogueEventOption( - id=26, + id=28, name='Bear_ten_carats_of_trash', cn='承担十克拉的垃圾。', cht='承擔十克拉的垃圾。', @@ -238,7 +256,7 @@ Bear_ten_carats_of_trash = RogueEventOption( es='Toma 10 quilates de basura.', ) Worship_the_Aeon_of_Remembrance = RogueEventOption( - id=27, + id=29, name='Worship_the_Aeon_of_Remembrance', cn='信仰「记忆」的星神。', cht='信仰「記憶」的星神。', @@ -247,7 +265,7 @@ Worship_the_Aeon_of_Remembrance = RogueEventOption( es='Adora al Eón de la Reminiscencia.', ) Burn_the_memories_you_long_to_forget = RogueEventOption( - id=28, + id=30, name='Burn_the_memories_you_long_to_forget', cn='焚烧你渴望遗忘的「记忆」。', cht='焚燒你渴望遺忘的「記憶」。', @@ -255,8 +273,17 @@ Burn_the_memories_you_long_to_forget = RogueEventOption( jp='あなたが忘れたいと切望していた「記憶」を燃やす', es='Quema los recuerdos que quieres olvidar.', ) +Forget_all_the_bleak_memories = RogueEventOption( + id=31, + name='Forget_all_the_bleak_memories', + cn='忘却所有黯淡的「记忆」。', + cht='忘卻所有黯淡的「記憶」。', + en='Forget all the bleak memories.', + jp='淡い「記憶」を忘れる', + es='Olvida todos los recuerdos sombríos.', +) Musical = RogueEventOption( - id=29, + id=32, name='Musical', cn='歌舞片。', cht='歌舞片。', @@ -265,7 +292,7 @@ Musical = RogueEventOption( es='Musical.', ) Action = RogueEventOption( - id=30, + id=33, name='Action', cn='动作片。', cht='動作片。', @@ -274,7 +301,7 @@ Action = RogueEventOption( es='Acción.', ) Please_let_me_live = RogueEventOption( - id=31, + id=34, name='Please_let_me_live', cn='请放我一条生路。', cht='請放我一條生路。', @@ -283,7 +310,7 @@ Please_let_me_live = RogueEventOption( es='Por favor, déjame vivir.', ) Watch_the_secret_flick_A_Moment = RogueEventOption( - id=32, + id=35, name='Watch_the_secret_flick_A_Moment', cn='观看「瞬间」的秘密影片。', cht='觀看「瞬間」的秘密影片。', @@ -292,7 +319,7 @@ Watch_the_secret_flick_A_Moment = RogueEventOption( es='Ve la película secreta «Un instante».', ) Watch_the_secret_flick_Life = RogueEventOption( - id=33, + id=36, name='Watch_the_secret_flick_Life', cn='观看「生命」的秘密影片。', cht='觀看「生命」的秘密影片。', @@ -300,8 +327,17 @@ Watch_the_secret_flick_Life = RogueEventOption( jp='「生命」の秘密映画を見る', es='Ve la película secreta «Vida».', ) +Watch_the_secret_flick = RogueEventOption( + id=37, + name='Watch_the_secret_flick', + cn='观看秘密「影片」。', + cht='觀看秘密「影片」。', + en='Watch the secret flick.', + jp='秘密の「映画」を見る', + es='Mira la película secreta.', +) Climb_into_the_pipes_to_the_left = RogueEventOption( - id=34, + id=38, name='Climb_into_the_pipes_to_the_left', cn='爬进左边的管道。', cht='爬進左邊的管道。', @@ -310,7 +346,7 @@ Climb_into_the_pipes_to_the_left = RogueEventOption( es='Sube a las tuberías de la izquierda.', ) Jump_onto_the_bricks_to_the_right = RogueEventOption( - id=35, + id=39, name='Jump_onto_the_bricks_to_the_right', cn='跳上右边的砖块。', cht='跳上右邊的磚塊。', @@ -319,7 +355,7 @@ Jump_onto_the_bricks_to_the_right = RogueEventOption( es='Salta sobre los ladrillos de la derecha.', ) Hop_around_and_explore_the_hidden_bricks = RogueEventOption( - id=36, + id=40, name='Hop_around_and_explore_the_hidden_bricks', cn='四处乱蹦,探索隐藏砖块!', cht='四處亂蹦,探索隱藏磚塊!', @@ -328,7 +364,7 @@ Hop_around_and_explore_the_hidden_bricks = RogueEventOption( es='¡Salta y explora los ladrillos ocultos!', ) Climb_the_farthest_vine = RogueEventOption( - id=37, + id=41, name='Climb_the_farthest_vine', cn='爬上最远端的藤蔓。', cht='爬上最遠端的藤蔓。', @@ -336,8 +372,17 @@ Climb_the_farthest_vine = RogueEventOption( jp='最も遠くの藤つるに登る', es='Sube a la enredadera más lejana.', ) +Find_the_Cheat_Room = RogueEventOption( + id=42, + name='Find_the_Cheat_Room', + cn='摸索出「作弊房间」。', + cht='摸索出「作弊房間」。', + en='Find the "Cheat Room."', + jp='「チート部屋」を探し当てる', + es='Encuentra la "sala de trampas".', +) Pat_it_lightly = RogueEventOption( - id=38, + id=43, name='Pat_it_lightly', cn='轻轻拍它一下。', cht='輕輕拍它一下。', @@ -346,7 +391,7 @@ Pat_it_lightly = RogueEventOption( es='Le das unas palmaditas.', ) Hit_it_hard = RogueEventOption( - id=39, + id=44, name='Hit_it_hard', cn='狠狠重击!', cht='狠狠重擊!', @@ -355,7 +400,7 @@ Hit_it_hard = RogueEventOption( es='¡Dale fuerte!', ) Twist_the_switch_on_the_doll_bottom = RogueEventOption( - id=40, + id=45, name='Twist_the_switch_on_the_doll_bottom', cn='拧一下玩偶屁股上的开关!', cht='擰一下玩偶屁股上的開關!', @@ -364,7 +409,7 @@ Twist_the_switch_on_the_doll_bottom = RogueEventOption( es='¡Gira el interruptor en la base de la muñeca!', ) Directly_receive_the_I_O_U_Dispenser_investment_reward = RogueEventOption( - id=41, + id=46, name='Directly_receive_the_I_O_U_Dispenser_investment_reward', cn='直接获得谢债发行机的投资奖励。', cht='直接獲得謝債發行機的投資獎勵。', @@ -372,8 +417,17 @@ Directly_receive_the_I_O_U_Dispenser_investment_reward = RogueEventOption( jp='謝債発行機の投資報酬を直接獲得する', es='Recibe directamente la recompensa de inversión del Dispensador de deuda.', ) +Dismantle_it = RogueEventOption( + id=47, + name='Dismantle_it', + cn='把它拆了。', + cht='把它拆了。', + en='Dismantle it.', + jp='それを折る', + es='Lo desmontas.', +) I_ll_buy_it_f619 = RogueEventOption( - id=42, + id=48, name='I_ll_buy_it_f619', cn='我买下了。', cht='我買下了。', @@ -382,7 +436,7 @@ I_ll_buy_it_f619 = RogueEventOption( es='Lo compraré.', ) You_re_not_a_reliable_investment_manager = RogueEventOption( - id=43, + id=49, name='You_re_not_a_reliable_investment_manager', cn='你不是一个值得信任的*投资经理*。', cht='你不是一個值得信任的*投資經理*。', @@ -391,7 +445,7 @@ You_re_not_a_reliable_investment_manager = RogueEventOption( es='No eres {F#una}{M#un} "{F#gestora}{M#gestor} de inversiones" fiable.', ) I_hate_this_era = RogueEventOption( - id=44, + id=50, name='I_hate_this_era', cn='我讨厌这个时代。', cht='我討厭這個時代。', @@ -400,7 +454,7 @@ I_hate_this_era = RogueEventOption( es='Odio esta época.', ) I_want_money = RogueEventOption( - id=45, + id=51, name='I_want_money', cn='我想要钱。', cht='我想要錢。', @@ -409,7 +463,7 @@ I_want_money = RogueEventOption( es='Quiero dinero.', ) I_want_love = RogueEventOption( - id=46, + id=52, name='I_want_love', cn='我想要*爱*。', cht='我想要*愛*。', @@ -418,7 +472,7 @@ I_want_love = RogueEventOption( es='Quiero "amor".', ) I_don_t_want_anything_This_is_very_nihilistic = RogueEventOption( - id=47, + id=53, name='I_don_t_want_anything_This_is_very_nihilistic', cn='我什么也不想要,这很虚无。', cht='我什麼也不想要,這很虛無。', @@ -427,7 +481,7 @@ I_don_t_want_anything_This_is_very_nihilistic = RogueEventOption( es='No quiero nada. Esto es muy nihilista.', ) I_don_t_need_it = RogueEventOption( - id=48, + id=54, name='I_don_t_need_it', cn='我不需要。', cht='我不需要。', @@ -436,7 +490,7 @@ I_don_t_need_it = RogueEventOption( es='No lo necesito.', ) I_ll_buy_it_f1b5 = RogueEventOption( - id=49, + id=55, name='I_ll_buy_it_f1b5', cn='我买了。', cht='我買了。', @@ -445,7 +499,7 @@ I_ll_buy_it_f1b5 = RogueEventOption( es='Lo compraré.', ) Claim_an_investment_insurance_policy = RogueEventOption( - id=50, + id=56, name='Claim_an_investment_insurance_policy', cn='索求一份投资保险。', cht='索求一份投資保險。', @@ -453,8 +507,17 @@ Claim_an_investment_insurance_policy = RogueEventOption( jp='投資保険への加入を要請する', es='Reclama una póliza de seguro de inversión.', ) +Demand_a_more_customized_investment_plan = RogueEventOption( + id=57, + name='Demand_a_more_customized_investment_plan', + cn='索求一份更*定制化*的投资计划。', + cht='索取一份更*客製化*的投資計畫。', + en='Demand a more "customized" investment plan.', + jp='投資計画への加入を要請する', + es='Solicita un plan de inversión más "personalizado".', +) Discard_the_statue_Be_decisive = RogueEventOption( - id=51, + id=58, name='Discard_the_statue_Be_decisive', cn='丢下雕像!要果断。', cht='丟下雕像!要果斷。', @@ -463,7 +526,7 @@ Discard_the_statue_Be_decisive = RogueEventOption( es='¡Suelta la estatua! Con decisión.', ) Believe_in_them_with_pure_devotion = RogueEventOption( - id=52, + id=59, name='Believe_in_them_with_pure_devotion', cn='对「祂」虔诚信仰,身心无垢。', cht='對「祂」虔誠信仰,身心無垢。', @@ -472,7 +535,7 @@ Believe_in_them_with_pure_devotion = RogueEventOption( es='Cree en "ellos" con gran devoción.', ) Mania_takes_over_you = RogueEventOption( - id=53, + id=60, name='Mania_takes_over_you', cn='狂热吞没了你…', cht='狂熱吞沒了你……', @@ -480,8 +543,17 @@ Mania_takes_over_you = RogueEventOption( jp='情熱があなたを呑み込んだ…', es='La locura se apodera de ti...', ) +You_can_be_more_frenzied = RogueEventOption( + id=61, + name='You_can_be_more_frenzied', + cn='你还可以更加*狂热*。', + cht='你還可以更加*狂熱*。', + en='You can be more "frenzied."', + jp='もっと*マニアック*になれる', + es='Puedes "enloquecer" más.', +) Go_deeper_into_the_insect_nest = RogueEventOption( - id=54, + id=62, name='Go_deeper_into_the_insect_nest', cn='深入虫巢。', cht='深入蟲巢。', @@ -490,7 +562,7 @@ Go_deeper_into_the_insect_nest = RogueEventOption( es='Adéntrate en el nido de insectos.', ) Hug_it = RogueEventOption( - id=55, + id=63, name='Hug_it', cn='拥抱它。', cht='擁抱它。', @@ -499,7 +571,7 @@ Hug_it = RogueEventOption( es='Abrázalo.', ) Wait_for_them = RogueEventOption( - id=56, + id=64, name='Wait_for_them', cn='等待「祂」。', cht='等待「祂」。', @@ -508,7 +580,7 @@ Wait_for_them = RogueEventOption( es='Espéralos.', ) Stop_at_the_entrance_of_the_nest = RogueEventOption( - id=57, + id=65, name='Stop_at_the_entrance_of_the_nest', cn='止步于巢穴门口。', cht='止步於巢穴門口。', @@ -517,7 +589,7 @@ Stop_at_the_entrance_of_the_nest = RogueEventOption( es='Detente en la entrada del nido.', ) Enter_the_Insect_Nest_and_snuff_them_out = RogueEventOption( - id=58, + id=66, name='Enter_the_Insect_Nest_and_snuff_them_out', cn='进入虫巢,绞杀它们!', cht='進入蟲巢,絞殺牠們!', @@ -526,7 +598,7 @@ Enter_the_Insect_Nest_and_snuff_them_out = RogueEventOption( es='¡Entra en el nido de insectos y sácalos!', ) Save_a_Bug_Bubble = RogueEventOption( - id=59, + id=67, name='Save_a_Bug_Bubble', cn='保存一枚「虫泡」。', cht='保存一枚「蟲泡」。', @@ -535,7 +607,7 @@ Save_a_Bug_Bubble = RogueEventOption( es='Guarda un saco de huevos.', ) Play_a_bit_with_Sequence_Trotters = RogueEventOption( - id=60, + id=68, name='Play_a_bit_with_Sequence_Trotters', cn='和序列扑满玩一下。', cht='和序列撲滿玩一下。', @@ -544,7 +616,7 @@ Play_a_bit_with_Sequence_Trotters = RogueEventOption( es='Juega un rato con el Chanchito Secuencial.', ) Leave_b5f1 = RogueEventOption( - id=61, + id=69, name='Leave_b5f1', cn='离去。', cht='離去。', @@ -553,7 +625,7 @@ Leave_b5f1 = RogueEventOption( es='Márchate.', ) Excellent_Trotter_catching_skills_Gotta_be_fast = RogueEventOption( - id=62, + id=70, name='Excellent_Trotter_catching_skills_Gotta_be_fast', cn='优秀的捉扑满技巧…速度要快!', cht='優秀的捉撲滿技巧……速度要快!', @@ -562,7 +634,7 @@ Excellent_Trotter_catching_skills_Gotta_be_fast = RogueEventOption( es='Excelentes habilidades para atrapar Chanchitos... ¡Hay que moverse con rapidez!', ) You_pass_on_a_good_sense_of_safeguarding_against_Trotters = RogueEventOption( - id=63, + id=71, name='You_pass_on_a_good_sense_of_safeguarding_against_Trotters', cn='你传达了良好的扑满保护意识。', cht='你傳達了良好的撲滿保護意識。', @@ -571,7 +643,7 @@ You_pass_on_a_good_sense_of_safeguarding_against_Trotters = RogueEventOption( es='Transmites mucha confianza en lo relativo a la protección de Chanchitos.', ) Head_into_the_darkness = RogueEventOption( - id=64, + id=72, name='Head_into_the_darkness', cn='前往黑暗。', cht='前往黑暗。', @@ -580,7 +652,7 @@ Head_into_the_darkness = RogueEventOption( es='Adéntrate en la oscuridad.', ) Fight_the_pull = RogueEventOption( - id=65, + id=73, name='Fight_the_pull', cn='对抗引力。', cht='對抗引力。', @@ -589,7 +661,7 @@ Fight_the_pull = RogueEventOption( es='Lucha contra la gravedad.', ) Enjoy_something = RogueEventOption( - id=66, + id=74, name='Enjoy_something', cn='享受其中…', cht='享受其中……', @@ -598,7 +670,7 @@ Enjoy_something = RogueEventOption( es='Disfruta de algo...', ) Thank_the_Aeon_Qlipoth = RogueEventOption( - id=67, + id=75, name='Thank_the_Aeon_Qlipoth', cn='感恩克里珀星神。', cht='感恩克里珀星神。', @@ -607,7 +679,7 @@ Thank_the_Aeon_Qlipoth = RogueEventOption( es='Gracias al Eón Qlipoth.', ) Accept_the_flames_of_Self_destruction_and_destroy_the_black_box = RogueEventOption( - id=68, + id=76, name='Accept_the_flames_of_Self_destruction_and_destroy_the_black_box', cn='接受「自灭」的火种,摧毁黑匣。', cht='接受「自滅」的火種,摧毀黑盒子。', @@ -616,7 +688,7 @@ Accept_the_flames_of_Self_destruction_and_destroy_the_black_box = RogueEventOpti es='Acepta las llamas de la "autodestrucción" y destruye la caja negra.', ) Refuse_54fd = RogueEventOption( - id=69, + id=77, name='Refuse_54fd', cn='拒绝。', cht='拒絕。', @@ -625,7 +697,7 @@ Refuse_54fd = RogueEventOption( es='Recházalo.', ) Hurry_and_terminate_black_box_Get_it_out = RogueEventOption( - id=70, + id=78, name='Hurry_and_terminate_black_box_Get_it_out', cn='抓紧时间终止黑匣;将其救出。', cht='抓緊時間終止黑匣,將其救出。', @@ -634,7 +706,7 @@ Hurry_and_terminate_black_box_Get_it_out = RogueEventOption( es='Date prisa y acaba con la caja negra. Sácalo todo.', ) Purchase_a_metal_Wish_In_A_Bottle = RogueEventOption( - id=71, + id=79, name='Purchase_a_metal_Wish_In_A_Bottle', cn='购买金属许愿瓶。', cht='購買金屬許願瓶。', @@ -643,7 +715,7 @@ Purchase_a_metal_Wish_In_A_Bottle = RogueEventOption( es='Compra una botella de los deseos de metal.', ) Purchase_a_silver_ore_Wish_In_A_Bottle = RogueEventOption( - id=72, + id=80, name='Purchase_a_silver_ore_Wish_In_A_Bottle', cn='购买银矿许愿瓶。', cht='購買銀礦許願瓶。', @@ -652,7 +724,7 @@ Purchase_a_silver_ore_Wish_In_A_Bottle = RogueEventOption( es='Compra una botella de los deseos de plata.', ) Leave_4fa0 = RogueEventOption( - id=73, + id=81, name='Leave_4fa0', cn='走开。', cht='走開。', @@ -661,7 +733,7 @@ Leave_4fa0 = RogueEventOption( es='Márchate.', ) Purchase_an_amber_Wish_In_A_Bottle = RogueEventOption( - id=74, + id=82, name='Purchase_an_amber_Wish_In_A_Bottle', cn='购买琥珀许愿匣。', cht='購買琥珀許願匣。', @@ -670,7 +742,7 @@ Purchase_an_amber_Wish_In_A_Bottle = RogueEventOption( es='Compra una botella de los deseos de ámbar.', ) Purchase_a_supernium_Wish_In_A_Bottle = RogueEventOption( - id=75, + id=83, name='Purchase_a_supernium_Wish_In_A_Bottle', cn='购买超钛许愿匣。', cht='購買超鈦許願匣。', @@ -679,7 +751,7 @@ Purchase_a_supernium_Wish_In_A_Bottle = RogueEventOption( es='Compra una botella de los deseos de supernio.', ) Purchase_a_diamond_box = RogueEventOption( - id=76, + id=84, name='Purchase_a_diamond_box', cn='购买一个钻石盒。', cht='購買一個鑽石盒。', @@ -688,7 +760,7 @@ Purchase_a_diamond_box = RogueEventOption( es='Compra una caja de diamante.', ) Purchase_an_ore_box = RogueEventOption( - id=77, + id=85, name='Purchase_an_ore_box', cn='购买一个原矿盒。', cht='購買一個原礦盒。', @@ -697,7 +769,7 @@ Purchase_an_ore_box = RogueEventOption( es='Compra una caja de mineral.', ) Swallow_the_other_fish_eye_and_continue_to_enjoy_the_massage = RogueEventOption( - id=78, + id=86, name='Swallow_the_other_fish_eye_and_continue_to_enjoy_the_massage', cn='吞下另一只*鱼眼*,继续享受按摩。', cht='吞下另一隻*魚眼*,繼續享受按摩。', @@ -706,7 +778,7 @@ Swallow_the_other_fish_eye_and_continue_to_enjoy_the_massage = RogueEventOption( es='Te tragas el otro ojo de pez y sigues disfrutando del masaje.', ) Return_to_work = RogueEventOption( - id=79, + id=87, name='Return_to_work', cn='回去上班。', cht='回去上班。', @@ -715,7 +787,7 @@ Return_to_work = RogueEventOption( es='Vuelve al trabajo.', ) Never_go_to_work_again_Never = RogueEventOption( - id=80, + id=88, name='Never_go_to_work_again_Never', cn='永远的不上班了!永远的……', cht='永遠不上班了!永遠……', @@ -724,7 +796,7 @@ Never_go_to_work_again_Never = RogueEventOption( es='¡No vuelvas a trabajar! Nunca...', ) Catch_more_fish_eyes = RogueEventOption( - id=81, + id=89, name='Catch_more_fish_eyes', cn='捕获更多鱼眼……', cht='捕獲更多魚眼……', @@ -732,8 +804,17 @@ Catch_more_fish_eyes = RogueEventOption( jp='もっと多くの魚眼を捕獲する……', es='Atrapa más ojos de pez...', ) +Shatter_the_work_communicator_that_can_be_used_to_contact_you = RogueEventOption( + id=90, + name='Shatter_the_work_communicator_that_can_be_used_to_contact_you', + cn='摔碎可以联络到你的*工作通讯器*!', + cht='摔碎可以聯絡到你的*工作通訊器*!', + en='Shatter the "work communicator" that can be used to contact you!', + jp='自分への連絡を受信する*作業用通信機*を投げて壊す!', + es='¡Rompe el "comunicador de trabajo" que sirve para que contacten contigo!', +) Pick_Sal = RogueEventOption( - id=82, + id=91, name='Pick_Sal', cn='选择萨里。', cht='選擇薩里。', @@ -742,7 +823,7 @@ Pick_Sal = RogueEventOption( es='Elige a Sal.', ) Pick_Leo = RogueEventOption( - id=83, + id=92, name='Pick_Leo', cn='选择里奥。', cht='選擇里奧。', @@ -751,7 +832,7 @@ Pick_Leo = RogueEventOption( es='Elige a Leo.', ) Let_Leo_out = RogueEventOption( - id=84, + id=93, name='Let_Leo_out', cn='让里奥出来吧。', cht='讓里奧出來吧。', @@ -760,7 +841,7 @@ Let_Leo_out = RogueEventOption( es='Deja salir a Leo.', ) Let_Sal_out = RogueEventOption( - id=85, + id=94, name='Let_Sal_out', cn='让萨里出来吧。', cht='讓薩里出來吧。', @@ -769,7 +850,7 @@ Let_Sal_out = RogueEventOption( es='Deja salir a Sal.', ) Mix_the_two_personalities_together = RogueEventOption( - id=86, + id=95, name='Mix_the_two_personalities_together', cn='把两种人格混在一起。', cht='把兩種人格混在一起。', @@ -777,8 +858,17 @@ Mix_the_two_personalities_together = RogueEventOption( jp='2種類の人格を混ぜる', es='Mezcla las dos personalidades.', ) +Get_rid_of_these_two_troublesome_neighbors = RogueEventOption( + id=96, + name='Get_rid_of_these_two_troublesome_neighbors', + cn='直接解决这两个麻烦的*邻居*。', + cht='直接解決這兩個麻煩的*鄰居*。', + en='Get rid of these two troublesome "neighbors."', + jp='面倒な*お隣さん*を始末する', + es='Deshazte de estos dos "vecinos" problemáticos.', +) Give_him_the_fur_you_re_wearing = RogueEventOption( - id=87, + id=97, name='Give_him_the_fur_you_re_wearing', cn='把身上披的皮毛给他。', cht='把身上披的皮毛給他。', @@ -787,7 +877,7 @@ Give_him_the_fur_you_re_wearing = RogueEventOption( es='Dale la piel que llevas puesta.', ) Rip_off_his_badge = RogueEventOption( - id=88, + id=98, name='Rip_off_his_badge', cn='把他的徽章扯下来!', cht='把他的徽章扯下來!', @@ -796,7 +886,7 @@ Rip_off_his_badge = RogueEventOption( es='¡Arráncale la placa!', ) Buy_his_calfskin_boots_for_cheap = RogueEventOption( - id=89, + id=99, name='Buy_his_calfskin_boots_for_cheap', cn='低价反收购他的*小牛皮靴*!', cht='低價反收購他的*小牛皮靴*!', @@ -804,8 +894,17 @@ Buy_his_calfskin_boots_for_cheap = RogueEventOption( jp='彼の※牛皮の革靴※を安く買い戻す!', es='¡Cómprale sus botas de piel de becerro a bajo precio!', ) +Get_more_intelligence_from_him = RogueEventOption( + id=100, + name='Get_more_intelligence_from_him', + cn='向他套取更多*情报*。', + cht='向他套取更多*情報*。', + en='Get more "intelligence" from him.', + jp='彼から更なる*情報*を引き出す', + es='Consigue más "inteligencia" de su parte.', +) Pick_an_Error_Code_Curio = RogueEventOption( - id=90, + id=101, name='Pick_an_Error_Code_Curio', cn='选择一个错误代码奇物。', cht='選擇一個錯誤程式碼奇物。', @@ -814,7 +913,7 @@ Pick_an_Error_Code_Curio = RogueEventOption( es='Elige un objeto raro de código de error.', ) Let_the_entropy_increase_more_violently = RogueEventOption( - id=91, + id=102, name='Let_the_entropy_increase_more_violently', cn='让熵增更猛烈些!', cht='讓熵增更猛烈點!', @@ -823,7 +922,7 @@ Let_the_entropy_increase_more_violently = RogueEventOption( es='¡Que la entropía aumente con más violencia!', ) Recall_the_code_for_the_right_item = RogueEventOption( - id=92, + id=103, name='Recall_the_code_for_the_right_item', cn='回忆起「正确道具」的代码。', cht='回憶起「正確道具」的程式碼。', @@ -832,7 +931,7 @@ Recall_the_code_for_the_right_item = RogueEventOption( es='Recuerda el código del "artículo correcto".', ) Pay = RogueEventOption( - id=93, + id=104, name='Pay', cn='付钱。', cht='付錢。', @@ -841,7 +940,7 @@ Pay = RogueEventOption( es='Paga.', ) Protect_the_cowboy_final_honor = RogueEventOption( - id=94, + id=105, name='Protect_the_cowboy_final_honor', cn='保卫「牛仔」最后的名誉。', cht='保衛「牛仔」最後的名譽。', @@ -850,7 +949,7 @@ Protect_the_cowboy_final_honor = RogueEventOption( es='Protege el honor que le queda al vaquero.', ) Let_them_experience_the_real_cowboy = RogueEventOption( - id=95, + id=106, name='Let_them_experience_the_real_cowboy', cn='让他们见识见识真正的「牛仔」。', cht='讓他們見識見識真正的「牛仔」。', @@ -859,7 +958,7 @@ Let_them_experience_the_real_cowboy = RogueEventOption( es='Dejémosles probar al verdadero "vaquero".', ) Surrender_immediately = RogueEventOption( - id=96, + id=107, name='Surrender_immediately', cn='直接投降。', cht='直接投降。', @@ -867,8 +966,17 @@ Surrender_immediately = RogueEventOption( jp='そのまま降参する', es='Te rindes inmediatamente.', ) +Make_a_trade_with_them = RogueEventOption( + id=108, + name='Make_a_trade_with_them', + cn='与他们做一笔*交易*。', + cht='與他們做一筆*交易*。', + en='Make a "trade" with them.', + jp='彼らと*取引*する', + es='Haz negocios con ellos.', +) Give_up = RogueEventOption( - id=97, + id=109, name='Give_up', cn='放弃。', cht='放棄。', @@ -877,7 +985,7 @@ Give_up = RogueEventOption( es='Ríndete.', ) Flip_the_card = RogueEventOption( - id=98, + id=110, name='Flip_the_card', cn='翻开牌。', cht='翻牌。', @@ -886,7 +994,7 @@ Flip_the_card = RogueEventOption( es='Dale la vuelta a la carta.', ) Fight_for_the_0_63_chance = RogueEventOption( - id=99, + id=111, name='Fight_for_the_0_63_chance', cn='为0.63%的概率而战。', cht='為0.63%的機率而戰。', @@ -895,7 +1003,7 @@ Fight_for_the_0_63_chance = RogueEventOption( es='Lucha por el 0.63% de probabilidades.', ) Pick_the_100_security = RogueEventOption( - id=100, + id=112, name='Pick_the_100_security', cn='选择100%的安全感。', cht='選擇100%的安全感。', @@ -904,7 +1012,7 @@ Pick_the_100_security = RogueEventOption( es='Elige el 100% de seguridad.', ) Acutely_sense_the_vulnerabilities_of_the_astral_computer = RogueEventOption( - id=101, + id=113, name='Acutely_sense_the_vulnerabilities_of_the_astral_computer', cn='敏锐察觉星体计算机的*漏洞*。', cht='敏銳察覺星體電腦的*漏洞*。', @@ -913,7 +1021,7 @@ Acutely_sense_the_vulnerabilities_of_the_astral_computer = RogueEventOption( es='Percibes de forma aguda las vulnerabilidades de la computadora estelar.', ) You_remember_its_rule_Scissors_first = RogueEventOption( - id=102, + id=114, name='You_remember_its_rule_Scissors_first', cn='你想起了它的规律!先出剪刀!', cht='你想起了它的規律!先出剪刀!', @@ -921,8 +1029,17 @@ You_remember_its_rule_Scissors_first = RogueEventOption( jp='その規則を思い出した!先にハサミを出す!', es='¡Recuerdas su regla! ¡Las tijeras primero!', ) +Ask_Screwllum_for_help_on_how_to_disassemble_the_hard_disk = RogueEventOption( + id=115, + name='Ask_Screwllum_for_help_on_how_to_disassemble_the_hard_disk', + cn='向螺丝咕姆求助如何拆解*硬盘*。', + cht='向螺絲咕姆求助如何拆解*硬碟*。', + en='Ask Screwllum for help on how to disassemble the "hard disk."', + jp='スクリューガムに*ハードディスク*の解体方法について助けを求める', + es='Pregunta a Tornillum cómo desmontar el "disco duro".', +) Challenge_Mr_France_security_team = RogueEventOption( - id=103, + id=116, name='Challenge_Mr_France_security_team', cn='挑战弗朗斯先生的安保团队。', cht='挑戰弗朗斯先生的保全團隊。', @@ -931,7 +1048,7 @@ Challenge_Mr_France_security_team = RogueEventOption( es='Desafía al equipo de seguridad del Sr. France.', ) Challenge_the_burly_Avila_mercenary_company = RogueEventOption( - id=104, + id=117, name='Challenge_the_burly_Avila_mercenary_company', cn='挑战亚威拉壮汉的佣兵集团。', cht='挑戰亞威拉壯漢的傭兵集團。', @@ -940,7 +1057,7 @@ Challenge_the_burly_Avila_mercenary_company = RogueEventOption( es='Desafía a los fornidos mercenarios de Ávila.', ) Fight_both_together = RogueEventOption( - id=105, + id=118, name='Fight_both_together', cn='两个一起打!', cht='兩個一起打!', @@ -949,7 +1066,7 @@ Fight_both_together = RogueEventOption( es='¡Pelea contra dos!', ) And_you_long_for_stronger_guys_to_show_up = RogueEventOption( - id=106, + id=119, name='And_you_long_for_stronger_guys_to_show_up', cn='你还渴望*更强*的家伙出现…', cht='你還渴望*更強*的傢伙出現……', @@ -958,7 +1075,7 @@ And_you_long_for_stronger_guys_to_show_up = RogueEventOption( es='Y estás deseando que aparezcan tipos más fuertes...', ) Bet_on_the_name_of_a_competition_winner = RogueEventOption( - id=107, + id=120, name='Bet_on_the_name_of_a_competition_winner', cn='赌一个擂台赢家的*名字*!', cht='賭一個擂台贏家的*名字*!', @@ -966,8 +1083,17 @@ Bet_on_the_name_of_a_competition_winner = RogueEventOption( jp='リングの勝者の※名前※を賭ける!', es='¡Apuestas por el nombre del ganador de la competición!', ) +Use_additional_methods_to_get_rid_of_both_batches_of_visitors = RogueEventOption( + id=121, + name='Use_additional_methods_to_get_rid_of_both_batches_of_visitors', + cn='用更多手段解决这两队*来客*。', + cht='用更多手段解決這兩隊*來客*。', + en='Use additional methods to get rid of both batches of "visitors."', + jp='より多く手段で2チームの*来客*を対処する', + es='Usa métodos adicionales para deshacerte de los dos grupos de "visitantes".', +) Hurry_and_delete_the_Cyclic_Demon_Lord_life_algorithm = RogueEventOption( - id=108, + id=122, name='Hurry_and_delete_the_Cyclic_Demon_Lord_life_algorithm', cn='抓紧时间,删除周期性魔王的生命方程。', cht='把握時間,刪除週期性魔王的生命方程式。', @@ -976,7 +1102,7 @@ Hurry_and_delete_the_Cyclic_Demon_Lord_life_algorithm = RogueEventOption( es='Date prisa y borra el algoritmo vital del Rey Demonio Cíclico.', ) Overload_the_Cyclic_Demon_Lord_life_algorithm_and_fight_on = RogueEventOption( - id=109, + id=123, name='Overload_the_Cyclic_Demon_Lord_life_algorithm_and_fight_on', cn='过载周期性魔王的生命方程,争取活下去!', cht='超載週期性魔王的生命方程式,努力活下去!', @@ -985,7 +1111,7 @@ Overload_the_Cyclic_Demon_Lord_life_algorithm_and_fight_on = RogueEventOption( es='¡Sobrecargas el algoritmo vital del Rey Demonio Cíclico y sigues peleando!', ) Blessing_Reforge = RogueEventOption( - id=110, + id=124, name='Blessing_Reforge', cn='祝福重铸', cht='祝福重鑄', @@ -994,7 +1120,7 @@ Blessing_Reforge = RogueEventOption( es='Reforja de bendición', ) Blessing_Exchange = RogueEventOption( - id=111, + id=125, name='Blessing_Exchange', cn='祝福交换', cht='祝福交換', @@ -1003,7 +1129,7 @@ Blessing_Exchange = RogueEventOption( es='Intercambio de bendición', ) Leave_3c49 = RogueEventOption( - id=112, + id=126, name='Leave_3c49', cn='离开', cht='離開', @@ -1012,7 +1138,7 @@ Leave_3c49 = RogueEventOption( es='Salir.', ) Exchange_your_memories = RogueEventOption( - id=113, + id=127, name='Exchange_your_memories', cn='互换你们的「记忆」。', cht='互換你們的「記憶」。', @@ -1021,7 +1147,7 @@ Exchange_your_memories = RogueEventOption( es='Intercambias recuerdos.', ) Throw_out_your_story_Then_loot_the_Fun_Experiences_from_the_car = RogueEventOption( - id=114, + id=128, name='Throw_out_your_story_Then_loot_the_Fun_Experiences_from_the_car', cn='抛出你的故事!然后从车厢中掠夺「趣味经历」。', cht='拋出你的故事!然後從車廂中掠奪「趣味經歷」。', @@ -1030,7 +1156,7 @@ Throw_out_your_story_Then_loot_the_Fun_Experiences_from_the_car = RogueEventOpti es='¡Te deshaces de tu historia! Acto seguido, saqueas las experiencias divertidas del auto.', ) Exchange_for_a_2_star_Blessing = RogueEventOption( - id=115, + id=129, name='Exchange_for_a_2_star_Blessing', cn='换取1个2星祝福', cht='換取1個二星祝福', @@ -1039,7 +1165,7 @@ Exchange_for_a_2_star_Blessing = RogueEventOption( es='Intercambia por 1 bendición de 2 estrellas', ) Exchange_for_a_3_star_Blessing = RogueEventOption( - id=116, + id=130, name='Exchange_for_a_3_star_Blessing', cn='换取1个3星祝福', cht='換取1個三星祝福', @@ -1048,7 +1174,7 @@ Exchange_for_a_3_star_Blessing = RogueEventOption( es='Intercambia por 1 bendición de 3 estrellas', ) Let_the_sleeping_soldiers_wake_up_again = RogueEventOption( - id=117, + id=131, name='Let_the_sleeping_soldiers_wake_up_again', cn='让沉睡的士兵「再次醒来」。', cht='讓沉睡的士兵「再次醒來」。', @@ -1057,7 +1183,7 @@ Let_the_sleeping_soldiers_wake_up_again = RogueEventOption( es='Dejas que los soldados dormidos despierten nuevamente.', ) Purchase_a_1_2_star_Blessing = RogueEventOption( - id=118, + id=132, name='Purchase_a_1_2_star_Blessing', cn='购买1个1-2星祝福', cht='購買1個一至二星祝福', @@ -1066,7 +1192,7 @@ Purchase_a_1_2_star_Blessing = RogueEventOption( es='Compra 1 bendición de 1-2 estrellas.', ) Purchase_a_1_3_star_Blessing = RogueEventOption( - id=119, + id=133, name='Purchase_a_1_3_star_Blessing', cn='购买1个1-3星祝福', cht='購買1個一至三星祝福', @@ -1075,7 +1201,7 @@ Purchase_a_1_3_star_Blessing = RogueEventOption( es='Compra 1 bendición de 1-3 estrellas.', ) You_recall_the_long_forgotten_bargaining_technique = RogueEventOption( - id=120, + id=134, name='You_recall_the_long_forgotten_bargaining_technique', cn='你回想起忘却已久的「还价技巧」。', cht='你回想起忘卻已久的「還價技巧」。', @@ -1084,7 +1210,7 @@ You_recall_the_long_forgotten_bargaining_technique = RogueEventOption( es='Recuerdas la olvidada técnica de regateo.', ) The_protective_net_that_surrounds_the_sales_terminal = RogueEventOption( - id=121, + id=135, name='The_protective_net_that_surrounds_the_sales_terminal', cn='吞没销售终端的「防护网」。', cht='吞沒銷售終端機的「防護網」。', @@ -1092,8 +1218,17 @@ The_protective_net_that_surrounds_the_sales_terminal = RogueEventOption( jp='販売端末の「セキュリティネットワーク」を呑み込む', es='La red de protección que rodea la terminal de ventas.', ) +Ask_about_its_after_sales_service = RogueEventOption( + id=136, + name='Ask_about_its_after_sales_service', + cn='向它询问*售后服务*。', + cht='向它詢問*售後服務*。', + en='Ask about its "after-sales service."', + jp='*アフターサービス*について問い合わせる', + es='Pregunta por su "servicio posventa".', +) Review_those_geniuse_manuscripts = RogueEventOption( - id=122, + id=137, name='Review_those_geniuse_manuscripts', cn='翻阅那些天才手稿。', cht='翻閱那些天才手稿。', @@ -1102,7 +1237,7 @@ Review_those_geniuse_manuscripts = RogueEventOption( es='Revisa los manuscritos de esos genios.', ) Let_burn_them_up = RogueEventOption( - id=123, + id=138, name='Let_burn_them_up', cn='干脆抢先烧了它!', cht='乾脆搶先燒了它!', @@ -1111,7 +1246,7 @@ Let_burn_them_up = RogueEventOption( es='¡Hay que quemarlo!', ) Speak_with_the_photo_frame = RogueEventOption( - id=124, + id=139, name='Speak_with_the_photo_frame', cn='对着相框说话。', cht='對著相框說話。', @@ -1120,7 +1255,7 @@ Speak_with_the_photo_frame = RogueEventOption( es='Habla con el marco de fotos.', ) Make_a_small_cut_with_a_small_knife = RogueEventOption( - id=125, + id=140, name='Make_a_small_cut_with_a_small_knife', cn='用小刀划一划!', cht='用小刀劃一劃!', @@ -1129,7 +1264,7 @@ Make_a_small_cut_with_a_small_knife = RogueEventOption( es='¡Haz un pequeño corte con un cuchillo!', ) Give_it_a_knock = RogueEventOption( - id=126, + id=141, name='Give_it_a_knock', cn='敲敲它。', cht='敲敲它。', @@ -1138,7 +1273,7 @@ Give_it_a_knock = RogueEventOption( es='Dale un golpecito.', ) Leave_2a92 = RogueEventOption( - id=127, + id=142, name='Leave_2a92', cn='走开。', cht='走開。', @@ -1147,7 +1282,7 @@ Leave_2a92 = RogueEventOption( es='Márchate.', ) A_certain_nobleman_once_recorded_before_he_fell_into_a_crazed_state = RogueEventOption( - id=128, + id=143, name='A_certain_nobleman_once_recorded_before_he_fell_into_a_crazed_state', cn='某位爵士,在他堕入疯狂之前曾记载…', cht='某位爵士在墮入瘋狂之前曾記載……', @@ -1156,7 +1291,7 @@ A_certain_nobleman_once_recorded_before_he_fell_into_a_crazed_state = RogueEvent es='Cierto noble lo registró alguna vez antes de caer en la locura...', ) A_certain_traveler_with_an_active_imagination_murmurs_to_himself_behind_the_glass_wall_after_being_confined = RogueEventOption( - id=129, + id=144, name='A_certain_traveler_with_an_active_imagination_murmurs_to_himself_behind_the_glass_wall_after_being_confined', cn='某擅长想象的头脑旅行家,在被禁闭后隔着玻璃墙喃喃自语…', cht='某位擅長想像的頭腦旅行家在被禁閉後,隔著玻璃牆喃喃自語……', @@ -1165,7 +1300,7 @@ A_certain_traveler_with_an_active_imagination_murmurs_to_himself_behind_the_glas es='Cierto viajero con una prolífica imaginación murmura para sí mismo detrás de la pared de cristal después de haber sido confinado...', ) A_piece_of_evidence_left_behind_by_a_certain_Armed_Archaeologist_before_they_were_murdered = RogueEventOption( - id=130, + id=145, name='A_piece_of_evidence_left_behind_by_a_certain_Armed_Archaeologist_before_they_were_murdered', cn='某考古武装学派成员,在被谋命前留下的考据…', cht='某考古武裝學派成員在被謀命前留下的考據……', @@ -1174,7 +1309,7 @@ A_piece_of_evidence_left_behind_by_a_certain_Armed_Archaeologist_before_they_wer es='Una evidencia que cierto miembro del Cuerpo de Arqueólogos Armados dejó antes de ser asesinado...', ) Tell_her_about_the_fate_that_she_must_accept = RogueEventOption( - id=131, + id=146, name='Tell_her_about_the_fate_that_she_must_accept', cn='告诉她*必须接受*的命运。', cht='告訴她*必須接受*的命運。', @@ -1183,7 +1318,7 @@ Tell_her_about_the_fate_that_she_must_accept = RogueEventOption( es='Cuéntale sobre el destino que deberá aceptar.', ) It_better_to_seal_the_window_up = RogueEventOption( - id=132, + id=147, name='It_better_to_seal_the_window_up', cn='还是把窗封起来吧。', cht='還是把窗戶封起來吧。', @@ -1192,7 +1327,7 @@ It_better_to_seal_the_window_up = RogueEventOption( es='Será mejor sellar la ventana.', ) Participate_in_the_psychological_intervention_and_assistance_work_after_the_catastrophic_swarm_in_the_Elothean_Empire = RogueEventOption( - id=133, + id=148, name='Participate_in_the_psychological_intervention_and_assistance_work_after_the_catastrophic_swarm_in_the_Elothean_Empire', cn='参与艾洛蒂亚帝国·特大虫潮灾害后心理干预与救助', cht='參與艾洛蒂亞帝國•特大蟲潮災害後心理干預與救助', @@ -1201,7 +1336,7 @@ Participate_in_the_psychological_intervention_and_assistance_work_after_the_cata es='Participa en la intervención psicológica y asistencia tras la catástrofe del enjambre del Imperio Eloteano.', ) Sitting_beside_the_14th_Emperor_and_helping_him_equivocate_and_embellish = RogueEventOption( - id=134, + id=149, name='Sitting_beside_the_14th_Emperor_and_helping_him_equivocate_and_embellish', cn='坐在第十四世皇帝身边,帮他编篡…', cht='坐在第十四世皇帝身邊,幫他編篡……', @@ -1210,7 +1345,7 @@ Sitting_beside_the_14th_Emperor_and_helping_him_equivocate_and_embellish = Rogue es='Te sientas junto al Emperador XIV y lo ayudas a componer...', ) I_will_put_down_my_gun = RogueEventOption( - id=135, + id=150, name='I_will_put_down_my_gun', cn='我会放下枪。', cht='我會放下槍。', @@ -1219,7 +1354,7 @@ I_will_put_down_my_gun = RogueEventOption( es='Bajaré mi arma.', ) I_wanna_populate_my_insectoid_index = RogueEventOption( - id=136, + id=151, name='I_wanna_populate_my_insectoid_index', cn='我想收集虫类图鉴!', cht='我想蒐集蟲類圖鑑!', @@ -1228,7 +1363,7 @@ I_wanna_populate_my_insectoid_index = RogueEventOption( es='¡Quiero coleccionar enciclopedias de insectos!', ) Let_me_hear_its_voice = RogueEventOption( - id=137, + id=152, name='Let_me_hear_its_voice', cn='让我听听它的声音…', cht='讓我聽聽它的聲音……', @@ -1237,7 +1372,7 @@ Let_me_hear_its_voice = RogueEventOption( es='Déjame escuchar su voz...', ) Break_it = RogueEventOption( - id=138, + id=153, name='Break_it', cn='摔碎它!', cht='摔碎它!', @@ -1246,7 +1381,7 @@ Break_it = RogueEventOption( es='¡Rómpelo!', ) Before_entering_take_a_big_whiff = RogueEventOption( - id=139, + id=154, name='Before_entering_take_a_big_whiff', cn='进门前,嗅一嗅。', cht='進門前,嗅一嗅。', @@ -1255,7 +1390,7 @@ Before_entering_take_a_big_whiff = RogueEventOption( es='Antes de entrar, inhala profundamente.', ) Before_entering_take_off_your_shoes = RogueEventOption( - id=140, + id=155, name='Before_entering_take_off_your_shoes', cn='进门前,把自己的鞋子脱了!', cht='進門前,把自己的鞋子脫了!', @@ -1264,7 +1399,7 @@ Before_entering_take_off_your_shoes = RogueEventOption( es='¡Antes de entrar, quítate los zapatos!', ) I_will_join = RogueEventOption( - id=141, + id=156, name='I_will_join', cn='我会加入。', cht='我會加入。', @@ -1273,7 +1408,7 @@ I_will_join = RogueEventOption( es='Me uniré.', ) I_refuse = RogueEventOption( - id=142, + id=157, name='I_refuse', cn='我拒绝。', cht='我拒絕。', @@ -1282,7 +1417,7 @@ I_refuse = RogueEventOption( es='Mejor no.', ) Approach_and_strike_up_a_conversation = RogueEventOption( - id=143, + id=158, name='Approach_and_strike_up_a_conversation', cn='上前搭讪。', cht='上前搭訕。', @@ -1291,7 +1426,7 @@ Approach_and_strike_up_a_conversation = RogueEventOption( es='Acércate y entabla una conversación.', ) Expeditiously_avoid = RogueEventOption( - id=144, + id=159, name='Expeditiously_avoid', cn='匆匆逃开。', cht='匆匆逃開。', @@ -1300,7 +1435,7 @@ Expeditiously_avoid = RogueEventOption( es='Huye a toda prisa.', ) Eat_it_up = RogueEventOption( - id=145, + id=160, name='Eat_it_up', cn='把它吃掉!', cht='把牠吃掉!', @@ -1309,7 +1444,7 @@ Eat_it_up = RogueEventOption( es='¡Comételo!', ) Tell_it_its_name_when_it_was_alive = RogueEventOption( - id=146, + id=161, name='Tell_it_its_name_when_it_was_alive', cn='告诉它生前的名字。', cht='告訴牠生前的名字。', @@ -1318,7 +1453,7 @@ Tell_it_its_name_when_it_was_alive = RogueEventOption( es='Dile el nombre con el que nació.', ) Look_around_while_making_the_record = RogueEventOption( - id=147, + id=162, name='Look_around_while_making_the_record', cn='在记录时打量四周。', cht='在記錄時打量四周。', @@ -1327,7 +1462,7 @@ Look_around_while_making_the_record = RogueEventOption( es='Mira a tu alrededor mientras lo registras.', ) Stealthily_release_the_little_ones_he_had_caught = RogueEventOption( - id=148, + id=163, name='Stealthily_release_the_little_ones_he_had_caught', cn='悄悄把他捉来的小家伙们放生。', cht='悄悄把他捉來的小傢伙們放生。', @@ -1336,7 +1471,7 @@ Stealthily_release_the_little_ones_he_had_caught = RogueEventOption( es='Libera sigilosamente a los pequeños que había atrapado.', ) Sincere_praise = RogueEventOption( - id=149, + id=164, name='Sincere_praise', cn='善意地夸奖。', cht='善意地誇獎。', @@ -1345,7 +1480,7 @@ Sincere_praise = RogueEventOption( es='Elogio sincero.', ) Extend_an_index_finger = RogueEventOption( - id=150, + id=165, name='Extend_an_index_finger', cn='伸出一根食指……', cht='伸出一根食指……', @@ -1354,7 +1489,7 @@ Extend_an_index_finger = RogueEventOption( es='Extiende el dedo índice...', ) Kill_it_quick = RogueEventOption( - id=151, + id=166, name='Kill_it_quick', cn='快把它击毙!', cht='快把它擊斃!', @@ -1363,7 +1498,7 @@ Kill_it_quick = RogueEventOption( es='¡Rápido, mátala!', ) What_kind_of_a_Shadow_of_Nihility_is_it = RogueEventOption( - id=152, + id=167, name='What_kind_of_a_Shadow_of_Nihility_is_it', cn='那是个怎样的「虚无之影」?', cht='那是個怎樣的「虛無之影」?', @@ -1372,7 +1507,7 @@ What_kind_of_a_Shadow_of_Nihility_is_it = RogueEventOption( es='¿Qué tipo de Sombra de la Nihilidad es esta?', ) Hold_that_hand = RogueEventOption( - id=153, + id=168, name='Hold_that_hand', cn='握住那只手。', cht='握住那隻手。', @@ -1381,7 +1516,7 @@ Hold_that_hand = RogueEventOption( es='Toma esa mano.', ) Refuse_8f72 = RogueEventOption( - id=154, + id=169, name='Refuse_8f72', cn='拒绝。', cht='拒絕。', @@ -1390,7 +1525,7 @@ Refuse_8f72 = RogueEventOption( es='Recházala.', ) Attempt_to_call_the_system_contact_number = RogueEventOption( - id=155, + id=170, name='Attempt_to_call_the_system_contact_number', cn='尝试拨打星系联络电话。', cht='嘗試撥打星系聯絡電話。', @@ -1399,7 +1534,7 @@ Attempt_to_call_the_system_contact_number = RogueEventOption( es='Intenta llamar al número de contacto del sistema.', ) Wash_its_hands_again = RogueEventOption( - id=156, + id=171, name='Wash_its_hands_again', cn='再帮它洗一次手。', cht='再幫它洗一次手。', @@ -1408,7 +1543,7 @@ Wash_its_hands_again = RogueEventOption( es='Lava sus manos de nuevo.', ) Chase_it_away = RogueEventOption( - id=157, + id=172, name='Chase_it_away', cn='把它赶走。', cht='把它趕走。', @@ -1417,7 +1552,7 @@ Chase_it_away = RogueEventOption( es='Ahuyéntalo.', ) I_don_t_want_to_shoot = RogueEventOption( - id=158, + id=173, name='I_don_t_want_to_shoot', cn='我不想开枪。', cht='我不想開槍。', @@ -1426,7 +1561,7 @@ I_don_t_want_to_shoot = RogueEventOption( es='No quiero disparar.', ) Stay_alert = RogueEventOption( - id=159, + id=174, name='Stay_alert', cn='清醒点!', cht='清醒點!', @@ -1435,7 +1570,7 @@ Stay_alert = RogueEventOption( es='¡Mantente alerta!', ) Make_the_little_screws_quiet_down = RogueEventOption( - id=160, + id=175, name='Make_the_little_screws_quiet_down', cn='让小螺丝们安静点儿!', cht='讓小螺絲們安靜點!', @@ -1444,7 +1579,7 @@ Make_the_little_screws_quiet_down = RogueEventOption( es='¡Haz que esos tornillos se callen!', ) Touch_his_hat = RogueEventOption( - id=161, + id=176, name='Touch_his_hat', cn='伸手摸他的帽子!', cht='伸手摸他的帽子!', @@ -1453,7 +1588,7 @@ Touch_his_hat = RogueEventOption( es='¡Toca su sombrero!', ) Flick_them_off = RogueEventOption( - id=162, + id=177, name='Flick_them_off', cn='赶紧把它们掸下来。', cht='趕緊把牠們撣下來。', @@ -1462,7 +1597,7 @@ Flick_them_off = RogueEventOption( es='Espántalas.', ) Keep_them_on_your_palm_for_a_while_longer = RogueEventOption( - id=163, + id=178, name='Keep_them_on_your_palm_for_a_while_longer', cn='留在手上玩一会儿。', cht='留在手上玩一會。', @@ -1471,7 +1606,7 @@ Keep_them_on_your_palm_for_a_while_longer = RogueEventOption( es='Mantenlas en la palma de tu mano un rato más.', ) Catch_its_tail = RogueEventOption( - id=164, + id=179, name='Catch_its_tail', cn='抓起它的尾巴…', cht='抓起牠的尾巴……', @@ -1480,7 +1615,7 @@ Catch_its_tail = RogueEventOption( es='Agarra su cola...', ) I_don_t_want_to_be_near_it = RogueEventOption( - id=165, + id=180, name='I_don_t_want_to_be_near_it', cn='我不想靠近它…', cht='我不想靠近牠……', @@ -1489,7 +1624,7 @@ I_don_t_want_to_be_near_it = RogueEventOption( es='No quiero estar cerca...', ) Move_the_universe_sandbox = RogueEventOption( - id=166, + id=181, name='Move_the_universe_sandbox', cn='挪移这份宇宙沙盘。', cht='挪移這組宇宙沙盤。', @@ -1498,7 +1633,7 @@ Move_the_universe_sandbox = RogueEventOption( es='Mueve la caja de arena del universo.', ) I_m_more_concerned_about_the_origins_of_that_Depth_Crawler = RogueEventOption( - id=167, + id=182, name='I_m_more_concerned_about_the_origins_of_that_Depth_Crawler', cn='我还是比较关心那只渊兽的身世。', cht='我還是比較關心那隻淵獸的身世。', @@ -1507,7 +1642,7 @@ I_m_more_concerned_about_the_origins_of_that_Depth_Crawler = RogueEventOption( es='Me preocupa más el origen de la bestia del abismo.', ) Act_according_to_the_record = RogueEventOption( - id=168, + id=183, name='Act_according_to_the_record', cn='按照上述记载行动。', cht='按照上述記載行動。', @@ -1516,7 +1651,7 @@ Act_according_to_the_record = RogueEventOption( es='Actúa de acuerdo con el registro.', ) Flip_through = RogueEventOption( - id=169, + id=184, name='Flip_through', cn='翻翻。', cht='翻翻。', @@ -1525,7 +1660,7 @@ Flip_through = RogueEventOption( es='Echa un vistazo.', ) Not_looking_through = RogueEventOption( - id=170, + id=185, name='Not_looking_through', cn='不看。', cht='不看。', @@ -1534,7 +1669,7 @@ Not_looking_through = RogueEventOption( es='No mires.', ) And = RogueEventOption( - id=171, + id=186, name='And', cn='接着呢?', cht='接著呢?', @@ -1543,7 +1678,7 @@ And = RogueEventOption( es='¿Y?', ) Isn_t_it_dead = RogueEventOption( - id=172, + id=187, name='Isn_t_it_dead', cn='不是死亡了吗?', cht='不是死亡了嗎?', @@ -1552,7 +1687,7 @@ Isn_t_it_dead = RogueEventOption( es='¿No está muerto?', ) Do_I_really_not_know = RogueEventOption( - id=173, + id=188, name='Do_I_really_not_know', cn='我真的不知道吗?', cht='我真的不知道嗎?', @@ -1561,7 +1696,7 @@ Do_I_really_not_know = RogueEventOption( es='¿De verdad no lo sé?', ) The_name_not_bad = RogueEventOption( - id=174, + id=189, name='The_name_not_bad', cn='这个名字不错。', cht='這個名字不錯。', @@ -1570,7 +1705,7 @@ The_name_not_bad = RogueEventOption( es='Ese nombre no está mal.', ) I_think_it_needs_another_name = RogueEventOption( - id=175, + id=190, name='I_think_it_needs_another_name', cn='我觉得应该换个名字…', cht='我覺得應該換個名字……', @@ -1579,7 +1714,7 @@ I_think_it_needs_another_name = RogueEventOption( es='Creo que necesita otro nombre...', ) What_kind_of_experiences_did_he_have_when_he_was_alive = RogueEventOption( - id=176, + id=191, name='What_kind_of_experiences_did_he_have_when_he_was_alive', cn='他生前有什么经历吗?', cht='他生前有什麼經歷嗎?', @@ -1588,7 +1723,7 @@ What_kind_of_experiences_did_he_have_when_he_was_alive = RogueEventOption( es='¿Qué clase de experiencias tuvo en su vida?', ) How_did_he_pass_away = RogueEventOption( - id=177, + id=192, name='How_did_he_pass_away', cn='他如何逝世?', cht='他如何逝世的?', @@ -1597,7 +1732,7 @@ How_did_he_pass_away = RogueEventOption( es='¿Cómo murió?', ) Will_he_return = RogueEventOption( - id=178, + id=193, name='Will_he_return', cn='他还会回来吗?', cht='他還會回來嗎?', @@ -1606,7 +1741,7 @@ Will_he_return = RogueEventOption( es='¿Volverá?', ) I_want_to_leave_a_scathing_review = RogueEventOption( - id=179, + id=194, name='I_want_to_leave_a_scathing_review', cn='我也想给差评。', cht='我也想給負評。', @@ -1615,7 +1750,7 @@ I_want_to_leave_a_scathing_review = RogueEventOption( es='Quiero darle una mala crítica.', ) Touch_those_Memory_Bubbles = RogueEventOption( - id=180, + id=195, name='Touch_those_Memory_Bubbles', cn='摸摸那些忆泡。', cht='摸摸那些憶泡。', @@ -1624,7 +1759,7 @@ Touch_those_Memory_Bubbles = RogueEventOption( es='Toca la burbuja del recuerdo.', ) Hide_under_the_boat_together = RogueEventOption( - id=181, + id=196, name='Hide_under_the_boat_together', cn='一起藏在船底。', cht='一起躲在船底。', @@ -1633,7 +1768,7 @@ Hide_under_the_boat_together = RogueEventOption( es='Escóndanse junt{F#as}{M#os} debajo del bote.', ) Bottoms_up = RogueEventOption( - id=182, + id=197, name='Bottoms_up', cn='干杯!', cht='乾杯!', @@ -1642,7 +1777,7 @@ Bottoms_up = RogueEventOption( es='¡Salud!', ) Dance_on_the_spot = RogueEventOption( - id=183, + id=198, name='Dance_on_the_spot', cn='原地跳舞!', cht='原地跳舞!', @@ -1651,7 +1786,7 @@ Dance_on_the_spot = RogueEventOption( es='¡Baila en tu sitio!', ) Burn_the_boat = RogueEventOption( - id=184, + id=199, name='Burn_the_boat', cn='把船烧了!', cht='把船燒了!', @@ -1660,7 +1795,7 @@ Burn_the_boat = RogueEventOption( es='¡Quema el barco!', ) Pretend_to_not_notice_that_something_was_off = RogueEventOption( - id=185, + id=200, name='Pretend_to_not_notice_that_something_was_off', cn='装作没发现哪里不对劲。', cht='裝作沒發現哪裡不對勁。', @@ -1669,7 +1804,7 @@ Pretend_to_not_notice_that_something_was_off = RogueEventOption( es='Finge que no te das cuenta de que algo anda mal.', ) They_re_here = RogueEventOption( - id=186, + id=201, name='They_re_here', cn='祂出现了!', cht='祂出現了!', @@ -1678,7 +1813,7 @@ They_re_here = RogueEventOption( es='¡Está aquí!', ) Accept_it = RogueEventOption( - id=187, + id=202, name='Accept_it', cn='收下它。', cht='收下它。', @@ -1687,7 +1822,7 @@ Accept_it = RogueEventOption( es='Acéptala.', ) Decline_respectfully = RogueEventOption( - id=188, + id=203, name='Decline_respectfully', cn='委婉地拒绝。', cht='委婉地拒絕。', @@ -1696,7 +1831,7 @@ Decline_respectfully = RogueEventOption( es='Recházala respetuosamente.', ) Put_the_fragments_back_together = RogueEventOption( - id=189, + id=204, name='Put_the_fragments_back_together', cn='把碎片拼好。', cht='把碎片拼好。', @@ -1705,7 +1840,7 @@ Put_the_fragments_back_together = RogueEventOption( es='Vuelve a juntar los fragmentos.', ) Calm_down_the_Self_Annihilator_first = RogueEventOption( - id=190, + id=205, name='Calm_down_the_Self_Annihilator_first', cn='先安抚「自灭者」。', cht='先安撫「自滅者」。', @@ -1714,7 +1849,7 @@ Calm_down_the_Self_Annihilator_first = RogueEventOption( es='Primero calma al Autodestructor.', ) Sit_on_that_chair = RogueEventOption( - id=191, + id=206, name='Sit_on_that_chair', cn='坐在那把椅子上。', cht='坐在那張椅子上。', @@ -1723,7 +1858,7 @@ Sit_on_that_chair = RogueEventOption( es='Siéntate en esa silla.', ) Join_this_choir = RogueEventOption( - id=192, + id=207, name='Join_this_choir', cn='加入这场合唱。', cht='加入這場合唱。', @@ -1732,7 +1867,7 @@ Join_this_choir = RogueEventOption( es='Únete a este coro.', ) Kneel_in_a_straight_angle_next_to_the_shore = RogueEventOption( - id=193, + id=208, name='Kneel_in_a_straight_angle_next_to_the_shore', cn='在岸边跪成直角型状。', cht='在岸邊跪成直角狀。', @@ -1741,7 +1876,7 @@ Kneel_in_a_straight_angle_next_to_the_shore = RogueEventOption( es='Arrodíllate en un ángulo recto junto a la orilla.', ) Devote_yourself_to_saving_him = RogueEventOption( - id=194, + id=209, name='Devote_yourself_to_saving_him', cn='现在投身去救他!', cht='現在投身去救他!', @@ -1750,7 +1885,7 @@ Devote_yourself_to_saving_him = RogueEventOption( es='¡Haz lo posible por salvarlo!', ) For_Equilibrium = RogueEventOption( - id=195, + id=210, name='For_Equilibrium', cn='为了均衡!', cht='為了均衡!', @@ -1759,7 +1894,7 @@ For_Equilibrium = RogueEventOption( es='¡Por el Equilibrio!', ) Can_I_refuse_Equilibrium = RogueEventOption( - id=196, + id=211, name='Can_I_refuse_Equilibrium', cn='可以拒绝均衡吗?', cht='可以拒絕均衡嗎?', @@ -1768,7 +1903,7 @@ Can_I_refuse_Equilibrium = RogueEventOption( es='¿Puedo rechazar al Equilibrio?', ) Plant_the_Synesthesia_Beacon_on_him = RogueEventOption( - id=197, + id=212, name='Plant_the_Synesthesia_Beacon_on_him', cn='给他插上联觉信标。', cht='為他插上聯覺信標。', @@ -1777,7 +1912,7 @@ Plant_the_Synesthesia_Beacon_on_him = RogueEventOption( es='Pon la baliza sinestésica en él.', ) Scratch_his_heel_with_the_Synesthesia_Beacon = RogueEventOption( - id=198, + id=213, name='Scratch_his_heel_with_the_Synesthesia_Beacon', cn='用联觉信标刮刮他的脚后跟。', cht='用聯覺信標刮刮他的腳後跟。', @@ -1786,7 +1921,7 @@ Scratch_his_heel_with_the_Synesthesia_Beacon = RogueEventOption( es='Raspa sus talones con la baliza sinestésica.', ) We_meet_again = RogueEventOption( - id=199, + id=214, name='We_meet_again', cn='又见面了!', cht='又見面了!', @@ -1795,7 +1930,7 @@ We_meet_again = RogueEventOption( es='¡Nos volvemos a encontrar!', ) Wait_with_him = RogueEventOption( - id=200, + id=215, name='Wait_with_him', cn='陪他一起等待。', cht='陪他一起等待。', @@ -1804,7 +1939,7 @@ Wait_with_him = RogueEventOption( es='Espera con él.', ) I_can_try = RogueEventOption( - id=201, + id=216, name='I_can_try', cn='我可以试试。', cht='我可以試試。', @@ -1813,7 +1948,7 @@ I_can_try = RogueEventOption( es='Puedo intentarlo.', ) I_don_t_think_this_is_effective = RogueEventOption( - id=202, + id=217, name='I_don_t_think_this_is_effective', cn='我不认为这样有效…', cht='我不認為這樣有效……', @@ -1822,7 +1957,7 @@ I_don_t_think_this_is_effective = RogueEventOption( es='No creo que esto funcione...', ) Accept_help_from_the_Knight_of_Beauty_Stilott = RogueEventOption( - id=203, + id=218, name='Accept_help_from_the_Knight_of_Beauty_Stilott', cn='接受纯美骑士「斯狄洛特」的帮助。', cht='接受純美騎士「斯狄洛特」的幫助。', @@ -1831,7 +1966,7 @@ Accept_help_from_the_Knight_of_Beauty_Stilott = RogueEventOption( es='Acepta la ayuda del Caballero de la Belleza, Stilott.', ) Accept_help_from_the_Knight_of_Beauty_Abomins = RogueEventOption( - id=204, + id=219, name='Accept_help_from_the_Knight_of_Beauty_Abomins', cn='接受纯美骑士「憎」的帮助。', cht='接受純美騎士「憎」的幫助。', @@ -1840,7 +1975,7 @@ Accept_help_from_the_Knight_of_Beauty_Abomins = RogueEventOption( es='Acepta la ayuda del Caballero de la Belleza, Odium.', ) Accept_help_from_the_Knight_of_Beauty_Argenti = RogueEventOption( - id=205, + id=220, name='Accept_help_from_the_Knight_of_Beauty_Argenti', cn='接受纯美骑士「银枝」的帮助。', cht='接受純美騎士「銀枝」的幫助。', @@ -1849,7 +1984,7 @@ Accept_help_from_the_Knight_of_Beauty_Argenti = RogueEventOption( es='Acepta la ayuda del Caballero de la Belleza, Argenti.', ) Accept_help_from_the_Knight_of_Beauty_Will_Garner = RogueEventOption( - id=206, + id=221, name='Accept_help_from_the_Knight_of_Beauty_Will_Garner', cn='接受纯美骑士「维尔•迦娜」的帮助。', cht='接受純美騎士「維爾•迦娜」的幫助。', @@ -1858,7 +1993,7 @@ Accept_help_from_the_Knight_of_Beauty_Will_Garner = RogueEventOption( es='Acepta la ayuda del Caballero de la Belleza, Will Garner.', ) Accept_help_from_the_Knight_of_Beauty_Pomaine = RogueEventOption( - id=207, + id=222, name='Accept_help_from_the_Knight_of_Beauty_Pomaine', cn='接受纯美骑士「波美茵」的帮助。', cht='接受純美騎士「波美茵」的幫助。', @@ -1867,7 +2002,7 @@ Accept_help_from_the_Knight_of_Beauty_Pomaine = RogueEventOption( es='Acepta la ayuda del Caballero de la Belleza, Pomaine.', ) Accept_help_from_the_Knight_of_Beauty_Anoklay = RogueEventOption( - id=208, + id=223, name='Accept_help_from_the_Knight_of_Beauty_Anoklay', cn='接受纯美骑士「阿诺克雷」的帮助。', cht='接受純美騎士「阿諾克雷」的幫助。', @@ -1876,7 +2011,7 @@ Accept_help_from_the_Knight_of_Beauty_Anoklay = RogueEventOption( es='Acepta la ayuda del Caballero de la Belleza, Anoklay.', ) Accept_help_from_the_Knight_of_Beauty_Holvisio = RogueEventOption( - id=209, + id=224, name='Accept_help_from_the_Knight_of_Beauty_Holvisio', cn='接受纯美骑士「全视」的帮助。', cht='接受純美騎士「全視」的幫助。', @@ -1885,7 +2020,7 @@ Accept_help_from_the_Knight_of_Beauty_Holvisio = RogueEventOption( es='Acepta la ayuda del Caballero de la Belleza, Holvisio.', ) Accept_help_from_the_Knight_of_Beauty_Galahad_Icahn = RogueEventOption( - id=210, + id=225, name='Accept_help_from_the_Knight_of_Beauty_Galahad_Icahn', cn='接受纯美骑士「加莱哈德•伊坎」的帮助。', cht='接受純美騎士「加拉哈德•伊坎」的幫助。', @@ -1894,7 +2029,7 @@ Accept_help_from_the_Knight_of_Beauty_Galahad_Icahn = RogueEventOption( es='Acepta la ayuda del Caballero de la Belleza, Galahad Icahn.', ) Listen = RogueEventOption( - id=211, + id=226, name='Listen', cn='听一听。', cht='聽一聽。', @@ -1903,7 +2038,7 @@ Listen = RogueEventOption( es='Escúchalo.', ) Don_t_listen = RogueEventOption( - id=212, + id=227, name='Don_t_listen', cn='不听。', cht='不聽。', @@ -1912,7 +2047,7 @@ Don_t_listen = RogueEventOption( es='No lo escuches.', ) Join_the_choir = RogueEventOption( - id=213, + id=228, name='Join_the_choir', cn='参与大合唱!', cht='參與大合唱!', @@ -1920,8 +2055,17 @@ Join_the_choir = RogueEventOption( jp='大合唱に参加する!', es='¡Únete al coro!', ) +Make_the_chorus_more_intense = RogueEventOption( + id=229, + name='Make_the_chorus_more_intense', + cn='令大合唱更加*激烈*!', + cht='令大合唱更加*激烈*!', + en='Make the chorus more "intense"!', + jp='大合唱をより*激しい*ものに!', + es='¡Aumenta la "intensidad" del coro!', +) Add_sugar = RogueEventOption( - id=214, + id=230, name='Add_sugar', cn='加入糖。', cht='加入糖。', @@ -1930,7 +2074,7 @@ Add_sugar = RogueEventOption( es='Añade azúcar.', ) Add_toothpaste = RogueEventOption( - id=215, + id=231, name='Add_toothpaste', cn='加入牙膏。', cht='加入牙膏。', @@ -1939,7 +2083,7 @@ Add_toothpaste = RogueEventOption( es='Agrega pasta de dientes.', ) Stir_vigorously = RogueEventOption( - id=216, + id=232, name='Stir_vigorously', cn='大力搅拌!', cht='大力攪拌!', @@ -1948,7 +2092,7 @@ Stir_vigorously = RogueEventOption( es='¡Remuévelo con fuerza!', ) Stir_gently = RogueEventOption( - id=217, + id=233, name='Stir_gently', cn='轻轻搅拌…', cht='輕輕攪拌……', @@ -1957,7 +2101,7 @@ Stir_gently = RogueEventOption( es='Remuévelo suavemente...', ) Give_in_to_the_sleepiness = RogueEventOption( - id=218, + id=234, name='Give_in_to_the_sleepiness', cn='顺着睡意昏沉睡去…', cht='順著睡意昏沉睡去……', @@ -1966,7 +2110,7 @@ Give_in_to_the_sleepiness = RogueEventOption( es='Entrégate al sueño...', ) First_take_care_of_the_unfriendly_eyes_around_you = RogueEventOption( - id=219, + id=235, name='First_take_care_of_the_unfriendly_eyes_around_you', cn='先解决身边不友好的目光!', cht='先解決身邊不友好的目光!', @@ -1975,7 +2119,7 @@ First_take_care_of_the_unfriendly_eyes_around_you = RogueEventOption( es='Para empezar, ¡cuídate de los ojos maliciosos que te rodean!', ) Deal_with_the_mutant = RogueEventOption( - id=220, + id=236, name='Deal_with_the_mutant', cn='解决变异者。', cht='解決變異者。', @@ -1984,7 +2128,7 @@ Deal_with_the_mutant = RogueEventOption( es='Enfrenta al mutante.', ) A_glass_of_wine_should_learn_to_swirl_itself = RogueEventOption( - id=221, + id=237, name='A_glass_of_wine_should_learn_to_swirl_itself', cn='一杯酒应学会自己搅拌自己。', cht='一杯酒應學會自己攪拌自己。', @@ -1993,7 +2137,7 @@ A_glass_of_wine_should_learn_to_swirl_itself = RogueEventOption( es='Una copa de vino debería aprender a girarse sola.', ) You_decide_to_add_more_weird_stuff_to_it = RogueEventOption( - id=222, + id=238, name='You_decide_to_add_more_weird_stuff_to_it', cn='你决定加更多奇怪的东西进去…', cht='你決定加更多奇怪的東西進去……', @@ -2001,8 +2145,17 @@ You_decide_to_add_more_weird_stuff_to_it = RogueEventOption( jp='変なものをもっと入れることにした…', es='Decides añadirle más cosas raras...', ) +Extrapolate_a_better_method = RogueEventOption( + id=239, + name='Extrapolate_a_better_method', + cn='推演出更好的*方式*。', + cht='推演出更好的*方式*。', + en='Extrapolate a better "method."', + jp='推演でよりいい*方法*を得る。', + es='Extrapola un "método" mejor.', +) Help_the_young_beasts_get_free = RogueEventOption( - id=223, + id=240, name='Help_the_young_beasts_get_free', cn='帮助幼兽「解脱」。', cht='幫助幼獸「解脫」。', @@ -2011,7 +2164,7 @@ Help_the_young_beasts_get_free = RogueEventOption( es='Ayuda a las bestias jóvenes a "liberarse".', ) Take_care_of_the_adult_beast_pain = RogueEventOption( - id=224, + id=241, name='Take_care_of_the_adult_beast_pain', cn='解决成年巨兽的「痛苦」。', cht='解決成年巨獸的「痛苦」。', @@ -2020,7 +2173,7 @@ Take_care_of_the_adult_beast_pain = RogueEventOption( es='Atiende el "dolor" de la bestia adulta.', ) Release_them_together_from_the_pain = RogueEventOption( - id=225, + id=242, name='Release_them_together_from_the_pain', cn='将它们一并从「痛苦」中释放。', cht='將牠們一併從「痛苦」中釋放。', @@ -2028,8 +2181,17 @@ Release_them_together_from_the_pain = RogueEventOption( jp='彼らをまとめて「苦痛」から解放する', es='Libéral{F#as}{M#os} junt{F#as}{M#os} del "dolor".', ) +Give_the_adult_beast_a_send_off = RogueEventOption( + id=243, + name='Give_the_adult_beast_a_send_off', + cn='为成年巨兽「送行」。', + cht='為成年巨獸「送行」。', + en='Give the adult beast a "send-off."', + jp='大人の巨獣の「見送り」をする。', + es='"Despídete" de la bestia adulta.', +) Repair_a_damaged_Curio = RogueEventOption( - id=226, + id=244, name='Repair_a_damaged_Curio', cn='修理一个损毁的奇物。', cht='修理一個損毀的奇物。', @@ -2038,7 +2200,7 @@ Repair_a_damaged_Curio = RogueEventOption( es='Reparas un objeto raro destruido.', ) Repair_all_damaged_Curios = RogueEventOption( - id=227, + id=245, name='Repair_all_damaged_Curios', cn='修理全部损毁的奇物。', cht='修理全部損毀的奇物。', @@ -2047,7 +2209,7 @@ Repair_all_damaged_Curios = RogueEventOption( es='Reparas todos los objetos raros destruidos.', ) Express_friendship_to_the_inorganic_life = RogueEventOption( - id=228, + id=246, name='Express_friendship_to_the_inorganic_life', cn='向无机生命表示友好。', cht='向無機生命表示友好。', @@ -2056,7 +2218,7 @@ Express_friendship_to_the_inorganic_life = RogueEventOption( es='Expresa tu amistad a la vida inorgánica.', ) Have_a_pleasant_inorganic_exchange = RogueEventOption( - id=229, + id=247, name='Have_a_pleasant_inorganic_exchange', cn='进行一次愉快的无机交流!', cht='進行一次愉快的無機交流!', @@ -2065,7 +2227,7 @@ Have_a_pleasant_inorganic_exchange = RogueEventOption( es='¡Ten un placentero intercambio inorgánico!', ) Leave_7e11 = RogueEventOption( - id=230, + id=248, name='Leave_7e11', cn='离开。', cht='離開。', @@ -2073,8 +2235,17 @@ Leave_7e11 = RogueEventOption( jp='立ち去る', es='Márchate.', ) +Make_all_inorganic_life_fall_for_you_with_your_irresistible_charm = RogueEventOption( + id=249, + name='Make_all_inorganic_life_fall_for_you_with_your_irresistible_charm', + cn='用魅力令无机生命为你所倾倒!', + cht='用魅力令無機生命為你所傾倒!', + en='Make all inorganic life fall for you with your irresistible charm!', + jp='無機生命体を魅力で落とす!', + es='¡Usa tu encanto irresistible para que toda la vida inorgánica se enamore de ti!', +) Select_the_cup_on_the_left = RogueEventOption( - id=231, + id=250, name='Select_the_cup_on_the_left', cn='选择左边的杯子。', cht='選擇左邊的杯子。', @@ -2083,7 +2254,7 @@ Select_the_cup_on_the_left = RogueEventOption( es='Selecciona la copa de la izquierda.', ) Select_the_cup_on_the_right = RogueEventOption( - id=232, + id=251, name='Select_the_cup_on_the_right', cn='选择右边的杯子。', cht='選擇右邊的杯子。', @@ -2091,8 +2262,17 @@ Select_the_cup_on_the_right = RogueEventOption( jp='右側のコップを選ぶ', es='Selecciona la copa de la derecha.', ) +You_can_also_smash_the_cup = RogueEventOption( + id=252, + name='You_can_also_smash_the_cup', + cn='你还可以将杯子砸了!', + cht='你還可以把杯子砸了!', + en='You can also smash the cup!', + jp='コップも壊せる!', + es='¡También puedes hacer añicos la copa!', +) I_m_voting_for_Oswald_Schneider = RogueEventOption( - id=233, + id=253, name='I_m_voting_for_Oswald_Schneider', cn='我要为「奥施瓦尔多·施耐德」的竞选投票!', cht='我要為「奧施瓦爾多•施耐德」的競選投票!', @@ -2101,7 +2281,7 @@ I_m_voting_for_Oswald_Schneider = RogueEventOption( es='¡Voto por Oswaldo Schneider!', ) I_want_to_get_the_Double_Delight_experience = RogueEventOption( - id=234, + id=254, name='I_want_to_get_the_Double_Delight_experience', cn='我要得到「双乐透」体验!', cht='我要得到「雙樂透」體驗!', @@ -2109,8 +2289,17 @@ I_want_to_get_the_Double_Delight_experience = RogueEventOption( jp='「ダブルロッタリー」体験を手に入れる!', es='¡Quiero conseguir la experiencia de la doble lotería!', ) +Hack_into_the_code_of_the_lotto_series_Curios = RogueEventOption( + id=255, + name='Hack_into_the_code_of_the_lotto_series_Curios', + cn='拆解大乐透系列奇物的*代码*。', + cht='拆解大樂透系列奇物的*程式碼*。', + en='Hack into the "code" of the lotto series Curios.', + jp='ロッタリーシリーズの奇物の*コード*を解析する', + es='Accede al "código" de los objetos raros de la serie Gran Lotería.', +) Steal_some_goodies_from_Herta = RogueEventOption( - id=235, + id=256, name='Steal_some_goodies_from_Herta', cn='偷拿点黑塔的好东西。', cht='偷拿點黑塔的好東西。', @@ -2119,7 +2308,7 @@ Steal_some_goodies_from_Herta = RogueEventOption( es='Roba algunas cosas de Herta.', ) More_opportunities_to_cheat_against_Stephen = RogueEventOption( - id=236, + id=257, name='More_opportunities_to_cheat_against_Stephen', cn='更多与斯蒂芬作对的作弊机会。', cht='更多與史帝芬作對的作弊機會。', @@ -2128,7 +2317,7 @@ More_opportunities_to_cheat_against_Stephen = RogueEventOption( es='Más oportunidades de hacer trampa a Stephen.', ) Embark_on_the_challenge_to_become_the_perfect_man_for_one_time = RogueEventOption( - id=237, + id=258, name='Embark_on_the_challenge_to_become_the_perfect_man_for_one_time', cn='开展一次*完美型男*挑战!', cht='展開一次*完美型男*挑戰!', @@ -2137,7 +2326,7 @@ Embark_on_the_challenge_to_become_the_perfect_man_for_one_time = RogueEventOptio es='¡Acepta el desafío para convertirte en una persona perfecta!', ) A_perfect_man_needs_a_clay_doll = RogueEventOption( - id=238, + id=259, name='A_perfect_man_needs_a_clay_doll', cn='完美型男需要「黏土玩偶」。', cht='完美型男需要「黏土玩偶」。', @@ -2146,7 +2335,7 @@ A_perfect_man_needs_a_clay_doll = RogueEventOption( es='Una persona perfecta necesita un muñeco de cerámica.', ) A_perfect_man_needs_a_popular_gacha_toy = RogueEventOption( - id=239, + id=260, name='A_perfect_man_needs_a_popular_gacha_toy', cn='完美型男需要「潮流扭蛋人」。', cht='完美型男需要「潮流扭蛋人」。', @@ -2154,8 +2343,17 @@ A_perfect_man_needs_a_popular_gacha_toy = RogueEventOption( jp='美形ハンサムには「流行ガチャマン」が必要だ', es='Una persona perfecta necesita un juguete gacha popular.', ) +A_perfectionist_wants_them_all = RogueEventOption( + id=261, + name='A_perfectionist_wants_them_all', + cn='完美型男*全都要*!', + cht='完美型男*全都要*!', + en='A perfectionist "wants them all"!', + jp='美形ハンサムには*全て*が必要だ!', + es='Un perfeccionista los quiere todos.', +) Halfheartedly_sell_Interastral_Peace_Groceries = RogueEventOption( - id=240, + id=262, name='Halfheartedly_sell_Interastral_Peace_Groceries', cn='敷衍地售卖「星际和平杂货」。', cht='敷衍地販售「星際和平雜貨」。', @@ -2164,7 +2362,7 @@ Halfheartedly_sell_Interastral_Peace_Groceries = RogueEventOption( es='Vendes de mala gana Comestibles de la Paz Interastral.', ) Secretly_goof_off = RogueEventOption( - id=241, + id=263, name='Secretly_goof_off', cn='悄悄偷懒。', cht='悄悄偷懶。', @@ -2173,7 +2371,7 @@ Secretly_goof_off = RogueEventOption( es='Holgazaneas en secreto.', ) Dedicate_off_duty_time_to_the_Amber_Lord = RogueEventOption( - id=242, + id=264, name='Dedicate_off_duty_time_to_the_Amber_Lord', cn='将下班时间献给琥珀王。', cht='將下班時間獻給琥珀王。', @@ -2182,7 +2380,7 @@ Dedicate_off_duty_time_to_the_Amber_Lord = RogueEventOption( es='Dedicas tu tiempo libre al Señor del Ámbar.', ) Accurately_find_the_target_to_sell_star_systems_to = RogueEventOption( - id=243, + id=265, name='Accurately_find_the_target_to_sell_star_systems_to', cn='精准地寻找目标销售星系。', cht='精準地尋找目標銷售星系。', @@ -2191,7 +2389,7 @@ Accurately_find_the_target_to_sell_star_systems_to = RogueEventOption( es='Encuentras con precisión el objetivo al que vender sistemas estelares.', ) Convene_the_Universal_Finance_Conference = RogueEventOption( - id=244, + id=266, name='Convene_the_Universal_Finance_Conference', cn='召开「宇宙金融会议」。', cht='召開「宇宙金融會議」。', @@ -2200,7 +2398,7 @@ Convene_the_Universal_Finance_Conference = RogueEventOption( es='Convocas la Conferencia Financiera Universal.', ) Settle_the_Expert_Skills_Training = RogueEventOption( - id=245, + id=267, name='Settle_the_Expert_Skills_Training', cn='沉淀「专家技能培训」。', cht='沉澱「專家技能培訓」。', @@ -2209,7 +2407,7 @@ Settle_the_Expert_Skills_Training = RogueEventOption( es='Convocas el Entrenamiento de Habilidades para Expertos.', ) Care_for_the_physical_and_mental_health_of_the_temporary_workers = RogueEventOption( - id=246, + id=268, name='Care_for_the_physical_and_mental_health_of_the_temporary_workers', cn='关心临时雇佣工的身心健康。', cht='關心臨時工的身心健康。', @@ -2218,7 +2416,7 @@ Care_for_the_physical_and_mental_health_of_the_temporary_workers = RogueEventOpt es='Velas por la salud física y mental de los trabajadores temporales.', ) Fully_book_the_following_week_with_the_Interspecies_Bonding_Party = RogueEventOption( - id=247, + id=269, name='Fully_book_the_following_week_with_the_Interspecies_Bonding_Party', cn='把下周约满*跨物种联谊派对*!', cht='把下週約滿*跨物種聯誼派對*!', @@ -2227,7 +2425,7 @@ Fully_book_the_following_week_with_the_Interspecies_Bonding_Party = RogueEventOp es='¡Reservas íntegramente la semana siguiente para la Fiesta de Cortejo Interespecies!', ) Launch_Celebrity_High_Social = RogueEventOption( - id=248, + id=270, name='Launch_Celebrity_High_Social', cn='展开「名流高级社交」。', cht='展開「名流高級社交」。', @@ -2236,7 +2434,7 @@ Launch_Celebrity_High_Social = RogueEventOption( es='Lanzas el evento Celebridades de la Alta Sociedad.', ) Give_a_shocking_interstellar_speech = RogueEventOption( - id=249, + id=271, name='Give_a_shocking_interstellar_speech', cn='发表震撼人心的「星际演讲」!', cht='發表震撼人心的「星際演講」!', @@ -2245,7 +2443,7 @@ Give_a_shocking_interstellar_speech = RogueEventOption( es='¡Pronuncias un impactante discurso interastral!', ) You_are_eager_to_beat_the_big_shots = RogueEventOption( - id=250, + id=272, name='You_are_eager_to_beat_the_big_shots', cn='你渴望打败大人物!', cht='你渴望打敗大人物!', @@ -2254,7 +2452,7 @@ You_are_eager_to_beat_the_big_shots = RogueEventOption( es='¡Estás deseando vencer a los peces gordos!', ) Review_the_secrets_of_interstellar_success = RogueEventOption( - id=251, + id=273, name='Review_the_secrets_of_interstellar_success', cn='回顾星际成功秘传…', cht='回顧星際成功秘傳……', @@ -2263,7 +2461,7 @@ Review_the_secrets_of_interstellar_success = RogueEventOption( es='Repasa los secretos del éxito interastral...', ) Directly_provoke_P_48_Taravan_Keane = RogueEventOption( - id=252, + id=274, name='Directly_provoke_P_48_Taravan_Keane', cn='…直接挑衅「P-48」塔拉梵•基恩!', cht='……直接挑釁「P-48」塔拉梵•基恩!', @@ -2272,7 +2470,7 @@ Directly_provoke_P_48_Taravan_Keane = RogueEventOption( es='... ¡Provocas directamente a Taravan Keane P-48!', ) Directly_provoke_P_48_Madam_Scarred_Eye = RogueEventOption( - id=253, + id=275, name='Directly_provoke_P_48_Madam_Scarred_Eye', cn='…直接挑衅「P-48」疤眼夫人!', cht='……直接挑釁「P-48」疤眼夫人!', @@ -2281,7 +2479,7 @@ Directly_provoke_P_48_Madam_Scarred_Eye = RogueEventOption( es='... ¡Provocas directamente a la señora Ojo Marcado P-48!', ) You_look_at_the_emptiness_all_around_you = RogueEventOption( - id=254, + id=276, name='You_look_at_the_emptiness_all_around_you', cn='你望着四周空荡荡的一片。', cht='你望著四周空蕩蕩的一片。', @@ -2290,7 +2488,7 @@ You_look_at_the_emptiness_all_around_you = RogueEventOption( es='Contemplas el vacío a tu alrededor.', ) Deposit_2_Cosmic_Fragments = RogueEventOption( - id=255, + id=277, name='Deposit_2_Cosmic_Fragments', cn='存入#2宇宙碎片。', cht='存入#2宇宙碎片。', @@ -2299,7 +2497,7 @@ Deposit_2_Cosmic_Fragments = RogueEventOption( es='Depositas #2 fragmentos cósmicos.', ) Tamper_with_the_bank_teller_memory = RogueEventOption( - id=256, + id=278, name='Tamper_with_the_bank_teller_memory', cn='篡改银行柜员的记忆。', cht='篡改銀行行員的記憶。', @@ -2308,7 +2506,7 @@ Tamper_with_the_bank_teller_memory = RogueEventOption( es='Saboteas la memoria del cajero del banco.', ) Show_off_your_muscles_to_the_teller = RogueEventOption( - id=257, + id=279, name='Show_off_your_muscles_to_the_teller', cn='向柜员秀出你的肌肉!', cht='向行員秀出你的肌肉!', @@ -2317,7 +2515,7 @@ Show_off_your_muscles_to_the_teller = RogueEventOption( es='¡Muestras tus músculos al cajero!', ) Withdraw_2_Cosmic_Fragments = RogueEventOption( - id=258, + id=280, name='Withdraw_2_Cosmic_Fragments', cn='取出#2宇宙碎片。', cht='取出#2宇宙碎片。', @@ -2325,8 +2523,17 @@ Withdraw_2_Cosmic_Fragments = RogueEventOption( jp='宇宙の欠片を#2引き出す', es='Retiras #2 fragmentos cósmicos.', ) +Receive_a_money_management_service_gift_from_the_bank = RogueEventOption( + id=281, + name='Receive_a_money_management_service_gift_from_the_bank', + cn='领取银行的*理财*赠品。', + cht='領取銀行的*理財*贈品。', + en='Receive a "money management service" gift from the bank.', + jp='銀行からの*財テク商品*のおまけを受け取る', + es='Recibe un regalo de la gestión financiera del banco.', +) Feed_the_Erethian_galaxy_sea_salt_snack = RogueEventOption( - id=259, + id=282, name='Feed_the_Erethian_galaxy_sea_salt_snack', cn='喂食厄勒特希亚星系「海盐点心」。', cht='餵食厄勒特希亞星系「海鹽點心」。', @@ -2335,7 +2542,7 @@ Feed_the_Erethian_galaxy_sea_salt_snack = RogueEventOption( es='Le das un bocadillo de sal marina de la galaxia de Erethia.', ) Use_the_specialty_cleaning_foam_of_Washtopia = RogueEventOption( - id=260, + id=283, name='Use_the_specialty_cleaning_foam_of_Washtopia', cn='使用洗车星埠口特产「清洁泡沫」。', cht='使用洗車星埠口特產「清潔泡沫」。', @@ -2344,7 +2551,7 @@ Use_the_specialty_cleaning_foam_of_Washtopia = RogueEventOption( es='Utilizas la espuma limpiadora especial de Lavatopia.', ) Feed_the_Vortex_Colony_special_milk_tea = RogueEventOption( - id=261, + id=284, name='Feed_the_Vortex_Colony_special_milk_tea', cn='喂食漩涡星聚落「特饮奶茶」。', cht='餵食漩渦星聚落「特調奶茶」。', @@ -2353,7 +2560,7 @@ Feed_the_Vortex_Colony_special_milk_tea = RogueEventOption( es='Le das un té con leche especial de la colonia Vórtice.', ) Use_your_own_blood_to_feed_it = RogueEventOption( - id=262, + id=285, name='Use_your_own_blood_to_feed_it', cn='用自己的血液喂饱*它*。', cht='用自己的血液餵飽*牠*。', @@ -2362,7 +2569,7 @@ Use_your_own_blood_to_feed_it = RogueEventOption( es='Usas tu propia sangre para alimentar "eso".', ) Take_care_of_it_wholeheartedly = RogueEventOption( - id=263, + id=286, name='Take_care_of_it_wholeheartedly', cn='用心呵护*它*。', cht='用心呵護*牠*。', @@ -2371,7 +2578,7 @@ Take_care_of_it_wholeheartedly = RogueEventOption( es='Cuidas de "eso" con todo tu corazón.', ) Accept_the_Heartfelt_Gift = RogueEventOption( - id=264, + id=287, name='Accept_the_Heartfelt_Gift', cn='接受「爱心小礼物」。', cht='接受「愛心小禮物」。', @@ -2380,7 +2587,7 @@ Accept_the_Heartfelt_Gift = RogueEventOption( es='Aceptas el regalo de corazón.', ) Accept_the_Life_Favor = RogueEventOption( - id=265, + id=288, name='Accept_the_Life_Favor', cn='接受「生命的回馈」。', cht='接受「生命的回饋」。', @@ -2388,8 +2595,17 @@ Accept_the_Life_Favor = RogueEventOption( jp='「命の贈物」を受け取る', es='Aceptas el favor de la vida.', ) +Feed_mung_bean_soda_from_the_Xianzhou_Luofu = RogueEventOption( + id=289, + name='Feed_mung_bean_soda_from_the_Xianzhou_Luofu', + cn='喂食仙舟罗浮特产「苏打豆汁儿」。', + cht='餵食仙舟羅浮特產「蘇打豆汁兒」。', + en='Feed mung bean soda from the Xianzhou Luofu.', + jp='仙舟羅浮の名物「ソーダ豆汁」を飲ませる', + es='Dale refresco de frijoles del Luofu de Xianzhou.', +) Toss_your_trash_in = RogueEventOption( - id=266, + id=290, name='Toss_your_trash_in', cn='把你的废物丢进去!', cht='把你的垃圾丟進去!', @@ -2398,7 +2614,7 @@ Toss_your_trash_in = RogueEventOption( es='¡Arrojas tu basura adentro!', ) Quickly_take_it_while_he_not_paying_attention = RogueEventOption( - id=267, + id=291, name='Quickly_take_it_while_he_not_paying_attention', cn='趁他不注意,快速窃取!', cht='趁他不注意,快速竊取!', @@ -2407,7 +2623,7 @@ Quickly_take_it_while_he_not_paying_attention = RogueEventOption( es='Rápido, ¡llévatelo mientras no está prestando atención!', ) You_recall_the_past_lives_of_these_discarded_objects = RogueEventOption( - id=268, + id=292, name='You_recall_the_past_lives_of_these_discarded_objects', cn='你想起了这些废弃物品的前世今生。', cht='你想起了這些廢棄物品的前世今生。', @@ -2415,8 +2631,17 @@ You_recall_the_past_lives_of_these_discarded_objects = RogueEventOption( jp='これらの廃棄物の過去と現在を思い出した', es='Recuerdas las vidas pasadas de estos objetos desechados.', ) +Even_trash_has_its_unique_value = RogueEventOption( + id=293, + name='Even_trash_has_its_unique_value', + cn='垃圾也有自己的*意义*……', + cht='垃圾也有自己的*意義*……', + en='Even trash has its unique "value"...', + jp='ゴミにも自分の*意味*がある……', + es='Incluso la basura tiene valor...', +) Make_a_detour = RogueEventOption( - id=269, + id=294, name='Make_a_detour', cn='绕路。', cht='繞路。', @@ -2425,7 +2650,7 @@ Make_a_detour = RogueEventOption( es='Das un rodeo.', ) Take_spore = RogueEventOption( - id=270, + id=295, name='Take_spore', cn='窃取「孢子」。', cht='竊取「孢子」。', @@ -2434,7 +2659,7 @@ Take_spore = RogueEventOption( es='Tomas esporas.', ) Help_the_Nameless = RogueEventOption( - id=271, + id=296, name='Help_the_Nameless', cn='解救「无名客」。', cht='解救「無名客」。', @@ -2443,7 +2668,7 @@ Help_the_Nameless = RogueEventOption( es='Ayudas a los Anónimos.', ) Leave_immediately = RogueEventOption( - id=272, + id=297, name='Leave_immediately', cn='立刻后退。', cht='立刻後退。', @@ -2452,7 +2677,7 @@ Leave_immediately = RogueEventOption( es='Márchate inmediatamente.', ) Tidy_things_up = RogueEventOption( - id=273, + id=298, name='Tidy_things_up', cn='清理它们。', cht='清理牠們。', @@ -2461,7 +2686,7 @@ Tidy_things_up = RogueEventOption( es='Pones algo de orden.', ) Absorb_its_power = RogueEventOption( - id=274, + id=299, name='Absorb_its_power', cn='「吸取」它的力量。', cht='「吸取」牠的力量。', @@ -2470,7 +2695,7 @@ Absorb_its_power = RogueEventOption( es='Absorbes su poder.', ) Give_it_power = RogueEventOption( - id=275, + id=300, name='Give_it_power', cn='「给予」它力量', cht='「給予」牠力量', @@ -2479,7 +2704,7 @@ Give_it_power = RogueEventOption( es='Darle fuerza.', ) Kill_them = RogueEventOption( - id=276, + id=301, name='Kill_them', cn='进入杀死它们。', cht='進入殺死牠們。', @@ -2488,7 +2713,7 @@ Kill_them = RogueEventOption( es='Los matas.', ) Leave_quietly = RogueEventOption( - id=277, + id=302, name='Leave_quietly', cn='悄悄离开。', cht='悄悄離開。', @@ -2497,7 +2722,7 @@ Leave_quietly = RogueEventOption( es='Te marchas en silencio.', ) Leave_hurriedly = RogueEventOption( - id=278, + id=303, name='Leave_hurriedly', cn='慌忙逃走。', cht='慌忙逃走。', @@ -2506,7 +2731,7 @@ Leave_hurriedly = RogueEventOption( es='Márchate de prisa.', ) Enter_and_explore_the_Nameless_relics = RogueEventOption( - id=279, + id=304, name='Enter_and_explore_the_Nameless_relics', cn='进入探取无名客遗物。', cht='進入探取無名客遺物。', @@ -2515,7 +2740,7 @@ Enter_and_explore_the_Nameless_relics = RogueEventOption( es='Entras y explora las reliquias de los Anónimos.', ) Join_the_Combatobug_combat_unit = RogueEventOption( - id=280, + id=305, name='Join_the_Combatobug_combat_unit', cn='加入「鏖兜虫」作战单位。', cht='加入「鏖兜蟲」作戰單位。', @@ -2524,7 +2749,7 @@ Join_the_Combatobug_combat_unit = RogueEventOption( es='Te unes a la unidad de combate Puñoinsecto.', ) Invite_the_Device_Assistant_to_arrange_remotely = RogueEventOption( - id=281, + id=306, name='Invite_the_Device_Assistant_to_arrange_remotely', cn='邀请「设备助理」远程布局。', cht='邀請「設備助理」遠端佈局。', @@ -2533,7 +2758,7 @@ Invite_the_Device_Assistant_to_arrange_remotely = RogueEventOption( es='Invitas al asistente de dispositivos a organizarlo a distancia.', ) Take_care_of_the_surrounding_Swarm = RogueEventOption( - id=282, + id=307, name='Take_care_of_the_surrounding_Swarm', cn='解决周围的虫群。', cht='解決周圍的蟲群。', @@ -2542,7 +2767,7 @@ Take_care_of_the_surrounding_Swarm = RogueEventOption( es='Te encargas del Enjambre de alrededor.', ) Drink_the_Doctors_of_Chaos_medicine = RogueEventOption( - id=283, + id=308, name='Drink_the_Doctors_of_Chaos_medicine', cn='喝下「混沌医师」的药。', cht='喝下「混沌醫師」的藥。', @@ -2551,7 +2776,7 @@ Drink_the_Doctors_of_Chaos_medicine = RogueEventOption( es='Bebes la medicina de los Doctores del Caos.', ) Charge_head_on = RogueEventOption( - id=284, + id=309, name='Charge_head_on', cn='正面突入!', cht='正面突入!', @@ -2560,7 +2785,7 @@ Charge_head_on = RogueEventOption( es='¡A la carga de frente!', ) It_is_an_all_or_nothing_move = RogueEventOption( - id=285, + id=310, name='It_is_an_all_or_nothing_move', cn='这是一场孤注一掷的行动。', cht='這是一場孤注一擲的行動。', @@ -2569,7 +2794,7 @@ It_is_an_all_or_nothing_move = RogueEventOption( es='Es una acción desesperada.', ) Tell_fortune = RogueEventOption( - id=286, + id=311, name='Tell_fortune', cn='抽签。', cht='抽籤。', @@ -2578,7 +2803,7 @@ Tell_fortune = RogueEventOption( es='Quieres saber tu fortuna.', ) Refuse_invitation = RogueEventOption( - id=287, + id=312, name='Refuse_invitation', cn='拒绝邀请。', cht='拒絕邀請。', @@ -2587,7 +2812,7 @@ Refuse_invitation = RogueEventOption( es='Rechazas la invitación.', ) Choose_number_four_It_has_a_tiny_bow = RogueEventOption( - id=288, + id=313, name='Choose_number_four_It_has_a_tiny_bow', cn='选择四号:它装饰着小蝴蝶结!', cht='選擇四號:它裝飾著小蝴蝶結!', @@ -2596,7 +2821,7 @@ Choose_number_four_It_has_a_tiny_bow = RogueEventOption( es='Eliges la número 4: ¡tiene un lacito!', ) Choose_number_three_Its_teeth_are_rusted = RogueEventOption( - id=289, + id=314, name='Choose_number_three_Its_teeth_are_rusted', cn='选择三号:它的牙齿生锈了…', cht='選擇三號:它的牙齒生鏽了……', @@ -2605,7 +2830,7 @@ Choose_number_three_Its_teeth_are_rusted = RogueEventOption( es='Eliges la número 3: tiene los dientes podridos...', ) Choose_number_two_It_snores_like_Andatur_Zazzalo = RogueEventOption( - id=290, + id=315, name='Choose_number_two_It_snores_like_Andatur_Zazzalo', cn='选择二号:它打了个安达吐尔•扎罗式呼噜。', cht='選擇二號:它打了個安達吐爾•扎羅式式呼嚕。', @@ -2614,7 +2839,7 @@ Choose_number_two_It_snores_like_Andatur_Zazzalo = RogueEventOption( es='Eliges la número 2: ronca igual que Andatur Zazzalo.', ) Light_the_first_candle = RogueEventOption( - id=291, + id=316, name='Light_the_first_candle', cn='点亮第一盏烛火。', cht='點亮第一盞燭火。', @@ -2623,7 +2848,7 @@ Light_the_first_candle = RogueEventOption( es='Enciende la primera vela.', ) Light_the_second_candle = RogueEventOption( - id=292, + id=317, name='Light_the_second_candle', cn='点亮第二盏烛火。', cht='點亮第二盞燭火。', @@ -2632,7 +2857,7 @@ Light_the_second_candle = RogueEventOption( es='Enciende la segunda vela.', ) Light_the_third_candle = RogueEventOption( - id=293, + id=318, name='Light_the_third_candle', cn='点亮第三盏烛火。', cht='點亮第三盞燭火。', @@ -2641,7 +2866,7 @@ Light_the_third_candle = RogueEventOption( es='Enciende la tercera vela.', ) Silently_recite_what_you_want = RogueEventOption( - id=294, + id=319, name='Silently_recite_what_you_want', cn='默念你想要的。', cht='默唸你想要的。', @@ -2650,7 +2875,7 @@ Silently_recite_what_you_want = RogueEventOption( es='Recitas silenciosamente lo que quieres.', ) Make_a_wish_to_get_her_out_of_the_mirror = RogueEventOption( - id=295, + id=320, name='Make_a_wish_to_get_her_out_of_the_mirror', cn='许愿让她从镜子里出来。', cht='許願讓她從鏡子裡出來。', @@ -2659,7 +2884,7 @@ Make_a_wish_to_get_her_out_of_the_mirror = RogueEventOption( es='Pides un deseo para sacarla del espejo.', ) Give_me_some_startup_capital = RogueEventOption( - id=296, + id=321, name='Give_me_some_startup_capital', cn='给我一些启动资金吧', cht='給我一些啟動資金吧', @@ -2668,7 +2893,7 @@ Give_me_some_startup_capital = RogueEventOption( es='¡Necesito un capital inicial!', ) Give_me_some_good_stuff = RogueEventOption( - id=297, + id=322, name='Give_me_some_good_stuff', cn='给我点好东西吧', cht='給我點好東西吧', @@ -2677,7 +2902,7 @@ Give_me_some_good_stuff = RogueEventOption( es='¡Dame algo bueno!', ) Do_nothing = RogueEventOption( - id=298, + id=323, name='Do_nothing', cn='什么也不做', cht='什麼也不做', @@ -2685,3 +2910,309 @@ Do_nothing = RogueEventOption( jp='何もしない', es='No hacer nada.', ) +Adjust_Intra_Cognition_Understand_the_rules_of_improving_Intelligence = RogueEventOption( + id=324, + name='Adjust_Intra_Cognition_Understand_the_rules_of_improving_Intelligence', + cn='调整「自我认知」-了解提升『智力』的法则', + cht='調整「自我認知」-瞭解提升「智力」的法則', + en='Adjust Intra-Cognition — Understand the rules of improving Intelligence', + jp='「自己認識」を調整-『知力』を上げる法則を理解した', + es='Ajusta tu autopercepción: entiende las normas para mejorar tu inteligencia.', +) +Adjust_Intra_Cognition_Understand_the_rules_of_improving_Charm = RogueEventOption( + id=325, + name='Adjust_Intra_Cognition_Understand_the_rules_of_improving_Charm', + cn='调整「自我认知」-了解提升『魅力』的法则', + cht='調整「自我認知」-瞭解提升「魅力」的法則', + en='Adjust Intra-Cognition — Understand the rules of improving Charm', + jp='「自己認識」を調整-『魅力』を上げる法則を理解した', + es='Ajusta tu autopercepción: entiende las normas para mejorar tu encanto.', +) +Choose_1_pair_of_machine_flower_underpants = RogueEventOption( + id=326, + name='Choose_1_pair_of_machine_flower_underpants', + cn='选择1件机器花裤衩。', + cht='選擇1件機器花內褲。', + en='Choose 1 pair of machine flower underpants.', + jp='ロボット柄パンツを1着選んだ', + es='Elige 1 bóxer floral mecánico.', +) +Choose_1_machine_shirt = RogueEventOption( + id=327, + name='Choose_1_machine_shirt', + cn='选择1件机器衬衫。', + cht='選擇1件機器襯衫。', + en='Choose 1 machine shirt.', + jp='ロボットシャツを1着選んだ', + es='Elige 1 camisa mecánica.', +) +Adjust_Intra_Cognition_I_choose_Good = RogueEventOption( + id=328, + name='Adjust_Intra_Cognition_I_choose_Good', + cn='调整「自我认知」-我选择『善』。', + cht='調整「自我認知」-我選擇「善」。', + en='Adjust Intra-Cognition — I choose "Good."', + jp='「自己認識」を調整-『善』を選ぶ', + es='Ajusta tu autopercepción: yo elijo el "bien".', +) +Adjust_Intra_Cognition_I_choose_Evil = RogueEventOption( + id=329, + name='Adjust_Intra_Cognition_I_choose_Evil', + cn='调整「自我认知」-我选择『恶』。', + cht='調整「自我認知」-我選擇「惡」。', + en='Adjust Intra-Cognition — I choose "Evil."', + jp='「自己認識」を調整-『悪』を選ぶ', + es='Ajusta tu autopercepción: yo elijo el "mal".', +) +Agree_with_Dr_No_5 = RogueEventOption( + id=330, + name='Agree_with_Dr_No_5', + cn='赞成No.5博士。', + cht='贊成No.5博士。', + en='Agree with Dr. No.5.', + jp='博士No.5に賛成', + es='Muestra tu acuerdo con el Dr. N.º 5.', +) +Agree_with_Dr_Ratio = RogueEventOption( + id=331, + name='Agree_with_Dr_Ratio', + cn='赞成真理医生。', + cht='贊成真理醫生。', + en='Agree with Dr. Ratio.', + jp='Dr.レイシオに賛成', + es='Estás de acuerdo con el Dr. Ratio.', +) +Adjust_Intra_Cognition_I_am_organic = RogueEventOption( + id=332, + name='Adjust_Intra_Cognition_I_am_organic', + cn='调整「自我认知」-我是有机。', + cht='調整「自我認知」-我是有機。', + en='Adjust Intra-Cognition — I am organic.', + jp='「自己認識」を調整-{F#私}{M#俺}は有機生命体', + es='Ajusta tu autopercepción: soy orgánico.', +) +Adjust_Intra_Cognition_I_am_inorganic = RogueEventOption( + id=333, + name='Adjust_Intra_Cognition_I_am_inorganic', + cn='调整「自我认知」-我是无机。', + cht='調整「自我認知」-我是無機。', + en='Adjust Intra-Cognition — I am inorganic.', + jp='「自己認識」を調整-{F#私}{M#俺}は無機生命体', + es='Ajusta tu autopercepción: soy inorgánico.', +) +Pick_a_family_element = RogueEventOption( + id=334, + name='Pick_a_family_element', + cn='挑取一个亲情元件。', + cht='挑取一個親情元件。', + en='Pick a family element.', + jp='家族愛のパーツを1個ピックアップする', + es='Elige un componente familiar.', +) +Pick_a_friendship_element = RogueEventOption( + id=335, + name='Pick_a_friendship_element', + cn='挑取一个友情元件。', + cht='挑取一個友情元件。', + en='Pick a friendship element.', + jp='友情のパーツを1個ピックアップする', + es='Elige un componente de amistad.', +) +Accept_the_Curio_Organic_Heart = RogueEventOption( + id=336, + name='Accept_the_Curio_Organic_Heart', + cn='接受奇物:「有机心脏」。', + cht='接受奇物:「有機心臟」。', + en='Accept the Curio "Organic Heart."', + jp='奇物「有機の心臓」を受け入れる', + es='Acepta el objeto raro Corazón orgánico.', +) +Accept_the_Curio_Mysterious_Magnetism = RogueEventOption( + id=337, + name='Accept_the_Curio_Mysterious_Magnetism', + cn='接受奇物:「神秘」磁力。', + cht='接受奇物:「神秘」磁力。', + en='Accept the Curio "Mysterious Magnetism."', + jp='奇物「神秘」の磁力を受け入れる', + es='Acepta el objeto raro Magnetismo misterioso.', +) +Leave_53f7 = RogueEventOption( + id=338, + name='Leave_53f7', + cn='离开。', + cht='離開。', + en='Leave.', + jp='離れる', + es='Marcharte.', +) +Sealing_Wax_Blessing = RogueEventOption( + id=339, + name='Sealing_Wax_Blessing', + cn='火漆祝福。', + cht='火漆祝福。', + en='Sealing Wax Blessing.', + jp='封蝋の祝福', + es='Bendición de Lacre.', +) +Sealing_Wax_Enhancement = RogueEventOption( + id=340, + name='Sealing_Wax_Enhancement', + cn='火漆强化。', + cht='火漆強化。', + en='Sealing Wax Enhancement.', + jp='封蝋の強化', + es='Potenciación de Lacre.', +) +Sealing_Wax_Casting = RogueEventOption( + id=341, + name='Sealing_Wax_Casting', + cn='火漆熔铸。', + cht='火漆熔鑄。', + en='Sealing Wax Casting.', + jp='封蝋を鋳造', + es='Fundición de Lacre.', +) +Level_up_your_Cognition = RogueEventOption( + id=342, + name='Level_up_your_Cognition', + cn='升级你的认知。', + cht='升級你的認知。', + en='Level up your Cognition.', + jp='認知を高める', + es='Aumenta tu percepción.', +) +Invest_in_your_trust = RogueEventOption( + id=343, + name='Invest_in_your_trust', + cn='投资你的*信任*。', + cht='投資你的*信任*。', + en='Invest in your *trust*.', + jp='「信頼」を投資する', + es='Invierte en tu confianza.', +) +Don_t_take = RogueEventOption( + id=344, + name='Don_t_take', + cn='不拿。', + cht='不拿。', + en="Don't take.", + jp='受け取らない', + es='No lo tomas.', +) +Keep_investing_in_your_trust_a35b = RogueEventOption( + id=345, + name='Keep_investing_in_your_trust_a35b', + cn='继续投资你的*信任*。', + cht='繼續投資你的*信任*。', + en='Keep investing in your *trust*.', + jp='「信頼」を投資を続ける', + es='Continúas invirtiendo en tu confianza.', +) +Keep_investing_in_your_trust_0176 = RogueEventOption( + id=346, + name='Keep_investing_in_your_trust_0176', + cn='继续投资你的*信任*', + cht='繼續投資你的*信任*', + en='Keep investing in your *trust*', + jp='「信頼」を投資を続ける', + es='Continúas invirtiendo en tu confianza.', +) +Ambergris_Cheese = RogueEventOption( + id=347, + name='Ambergris_Cheese', + cn='香涎干酪。', + cht='香涎乾酪。', + en='Ambergris Cheese.', + jp='香涎チーズ', + es='Queso de ámbar gris.', +) +Casket_of_Inaccuracy = RogueEventOption( + id=348, + name='Casket_of_Inaccuracy', + cn='测不准匣。', + cht='測不準匣。', + en='Casket of Inaccuracy.', + jp='不確定の匣', + es='Caja de la imprecisión.', +) +Fruit_of_the_Alien_Tree = RogueEventOption( + id=349, + name='Fruit_of_the_Alien_Tree', + cn='异木果实。', + cht='異木果實。', + en='Fruit of the Alien Tree.', + jp='異木の果実', + es='Fruto del árbol extraño.', +) +Level_up_Ambergris_Cheese = RogueEventOption( + id=350, + name='Level_up_Ambergris_Cheese', + cn='升级香涎干酪。', + cht='升級香涎乾酪。', + en='Level up Ambergris Cheese.', + jp='香涎チーズをレベルアップ', + es='Mejora Queso de ámbar gris.', +) +Level_up_Casket_of_Inaccuracy = RogueEventOption( + id=351, + name='Level_up_Casket_of_Inaccuracy', + cn='升级测不准匣。', + cht='升級測不準匣。', + en='Level up Casket of Inaccuracy.', + jp='不確定の匣をレベルアップ', + es='Mejora Caja de la imprecisión.', +) +Level_up_Fruit_of_the_Alien_Tree = RogueEventOption( + id=352, + name='Level_up_Fruit_of_the_Alien_Tree', + cn='升级异木果实。', + cht='升級異木果實。', + en='Level up Fruit of the Alien Tree.', + jp='異木の果実をレベルアップ', + es='Mejora Fruto del árbol extraño.', +) +Take_2_Cosmic_Fragments = RogueEventOption( + id=353, + name='Take_2_Cosmic_Fragments', + cn='拿#2块钱。', + cht='拿#2塊錢。', + en='Take #2 Cosmic Fragments.', + jp='宇宙の欠片を#2もらう', + es='Toma #2 fragmentos cósmicos.', +) +Obtain_2_random_Curios = RogueEventOption( + id=354, + name='Obtain_2_random_Curios', + cn='获得#2个随机奇物。', + cht='獲得#2個隨機奇物。', + en='Obtain #2 random Curio(s).', + jp='奇物をランダムで#2個獲得する', + es='Obtienes #2 objeto(s) raro(s) al azar.', +) +Want_both_Cosmic_Fragments_and_Curios = RogueEventOption( + id=355, + name='Want_both_Cosmic_Fragments_and_Curios', + cn='钱和奇物全要了。', + cht='錢和奇物全要了。', + en='Want both Cosmic Fragments and Curios.', + jp='宇宙の欠片も奇物も全部もらう', + es='Quiero los fragmentos cósmicos y el objeto raro.', +) +You_don_t_need_it = RogueEventOption( + id=356, + name='You_don_t_need_it', + cn='你不需要。', + cht='你不需要。', + en="You don't need it.", + jp='必要ない', + es='No lo necesitas.', +) +Forced_to_fight = RogueEventOption( + id=357, + name='Forced_to_fight', + cn='被迫战斗。', + cht='被迫戰鬥。', + en='Forced to fight.', + jp='戦闘を強いられる', + es='Obligad{F#a}{M#o} a combatir.', +) diff --git a/tasks/rogue/keywords/event_title.py b/tasks/rogue/keywords/event_title.py index da954ce96..6b03050d9 100644 --- a/tasks/rogue/keywords/event_title.py +++ b/tasks/rogue/keywords/event_title.py @@ -11,7 +11,7 @@ Ruan_Mei = RogueEventTitle( en='Ruan Mei', jp='ルアン・メェイ', es='Ruan Mei', - option_ids=[1, 2], + option_ids=[1, 2, 3], ) Rest_Area = RogueEventTitle( id=2, @@ -21,7 +21,7 @@ Rest_Area = RogueEventTitle( en='Rest Area', jp='休憩エリア', es='Área de descanso', - option_ids=[3, 4, 5, 6, 7, 8], + option_ids=[4, 5, 6, 7, 8, 9], ) Nomadic_Miners = RogueEventTitle( id=3, @@ -31,7 +31,7 @@ Nomadic_Miners = RogueEventTitle( en='Nomadic Miners', jp='遊牧の鉱夫', es='Mineros nómadas', - option_ids=[9, 10, 11, 12], + option_ids=[10, 11, 12, 13], ) History_Fictionologists = RogueEventTitle( id=4, @@ -41,7 +41,7 @@ History_Fictionologists = RogueEventTitle( en='History Fictionologists', jp='虚構歴史学者', es='Historiador Espurio', - option_ids=[6, 13, 14, 15], + option_ids=[7, 14, 15, 16, 17], ) Jim_Hulk_and_Jim_Hall = RogueEventTitle( id=5, @@ -51,7 +51,7 @@ Jim_Hulk_and_Jim_Hall = RogueEventTitle( en='Jim Hulk and Jim Hall', jp='ジャック・ハックとジャック・ハウル', es='Jim Hulk y Jim Hall', - option_ids=[16, 17, 18, 19], + option_ids=[18, 19, 20, 21], ) Shopping_Channel = RogueEventTitle( id=6, @@ -61,7 +61,7 @@ Shopping_Channel = RogueEventTitle( en='Shopping Channel', jp='テレビショッピングチャンネル', es='Teletienda', - option_ids=[20, 21, 22, 23, 24], + option_ids=[22, 23, 24, 25, 26], ) The_Cremators = RogueEventTitle( id=7, @@ -71,7 +71,7 @@ The_Cremators = RogueEventTitle( en='The Cremators', jp='焼却人', es='Incineradores', - option_ids=[25, 26, 27, 28], + option_ids=[27, 28, 29, 30, 31], ) Interactive_Arts = RogueEventTitle( id=8, @@ -81,7 +81,7 @@ Interactive_Arts = RogueEventTitle( en='Interactive Arts', jp='相互性芸術', es='Arte interactivo', - option_ids=[29, 30, 31, 32, 33], + option_ids=[32, 33, 34, 35, 36, 37], ) Pixel_World = RogueEventTitle( id=9, @@ -91,7 +91,7 @@ Pixel_World = RogueEventTitle( en='Pixel World', jp='ピクセルワールド', es='Mundo de píxeles', - option_ids=[34, 35, 36, 37], + option_ids=[38, 39, 40, 41, 42], ) Aha_Stuffed_Toy = RogueEventTitle( id=10, @@ -101,7 +101,7 @@ Aha_Stuffed_Toy = RogueEventTitle( en='Aha Stuffed Toy', jp='アッハ人形', es='Muñeco de Aha', - option_ids=[38, 39, 40, 41], + option_ids=[43, 44, 45, 46, 47], ) I_O_U_Dispenser = RogueEventTitle( id=11, @@ -111,7 +111,7 @@ I_O_U_Dispenser = RogueEventTitle( en='I.O.U. Dispenser', jp='謝債発行機', es='Dispensador de deuda', - option_ids=[41, 42, 43, 44, 45, 46, 47, 48, 49, 50], + option_ids=[46, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57], ) Statue = RogueEventTitle( id=12, @@ -121,7 +121,7 @@ Statue = RogueEventTitle( en='Statue', jp='彫像', es='Estatua', - option_ids=[50, 51, 52, 53], + option_ids=[56, 58, 59, 60, 61], ) Insect_Nest = RogueEventTitle( id=13, @@ -131,7 +131,7 @@ Insect_Nest = RogueEventTitle( en='Insect Nest', jp='蟲の巣', es='Nido de insectos', - option_ids=[54, 55, 56, 57, 58, 59], + option_ids=[62, 63, 64, 65, 66, 67], ) Three_Little_Pigs = RogueEventTitle( id=14, @@ -141,7 +141,7 @@ Three_Little_Pigs = RogueEventTitle( en='Three Little Pigs', jp='三匹の子豚', es='Los tres cerditos', - option_ids=[60, 61, 62, 63], + option_ids=[68, 69, 70, 71], ) Unending_Darkness = RogueEventTitle( id=15, @@ -151,7 +151,7 @@ Unending_Darkness = RogueEventTitle( en='Unending Darkness', jp='果て無き暗闇', es='Oscuridad infinita', - option_ids=[64, 65, 66], + option_ids=[72, 73, 74], ) The_Architects = RogueEventTitle( id=16, @@ -161,7 +161,7 @@ The_Architects = RogueEventTitle( en='The Architects', jp='建創者', es='Los Arquitectos', - option_ids=[6, 67], + option_ids=[7, 75], ) Kindling_of_the_Self_Annihilator = RogueEventTitle( id=17, @@ -171,7 +171,7 @@ Kindling_of_the_Self_Annihilator = RogueEventTitle( en='Kindling of the Self-Annihilator', jp='自滅者の火種', es='Yesca del Autodestructor', - option_ids=[68, 69, 70], + option_ids=[76, 77, 78], ) Cosmic_Merchant_Part_1 = RogueEventTitle( id=18, @@ -181,7 +181,7 @@ Cosmic_Merchant_Part_1 = RogueEventTitle( en='Cosmic Merchant (Part 1)', jp='銀河の商人(その1)', es='Comerciante galáctico (I)', - option_ids=[71, 72, 73, 74, 75, 76, 77], + option_ids=[79, 80, 81, 82, 83, 84, 85], ) Cosmic_Con_Job_Part_2 = RogueEventTitle( id=19, @@ -191,7 +191,7 @@ Cosmic_Con_Job_Part_2 = RogueEventTitle( en='Cosmic Con Job (Part 2)', jp='銀河のペテン師(その2)', es='Engaño galáctico (II)', - option_ids=[72, 73, 74, 75, 76, 77], + option_ids=[80, 81, 82, 83, 84, 85], ) Cosmic_Altruist_Part_3 = RogueEventTitle( id=20, @@ -201,7 +201,7 @@ Cosmic_Altruist_Part_3 = RogueEventTitle( en='Cosmic Altruist (Part 3)', jp='銀河のお人好し(その3)', es='Altruismo galáctico (III)', - option_ids=[73, 74, 75, 76, 77], + option_ids=[81, 82, 83, 84, 85], ) Societal_Dreamscape = RogueEventTitle( id=21, @@ -211,7 +211,7 @@ Societal_Dreamscape = RogueEventTitle( en='Societal Dreamscape', jp='社会性の夢', es='Sueños de sociedad', - option_ids=[78, 79, 80, 81], + option_ids=[86, 87, 88, 89, 90], ) Saleo_Part_1 = RogueEventTitle( id=22, @@ -221,7 +221,7 @@ Saleo_Part_1 = RogueEventTitle( en='Saleo (Part 1)', jp='サリオ(その1)', es='Saleo (I)', - option_ids=[82, 83, 84, 85, 86], + option_ids=[91, 92, 93, 94, 95, 96], ) Sal_Part_2 = RogueEventTitle( id=23, @@ -231,7 +231,7 @@ Sal_Part_2 = RogueEventTitle( en='Sal (Part 2)', jp='サリ(その2)', es='Sal (II)', - option_ids=[82, 83, 84, 85, 86], + option_ids=[91, 92, 93, 94, 95, 96], ) Leo_Part_3 = RogueEventTitle( id=24, @@ -241,7 +241,7 @@ Leo_Part_3 = RogueEventTitle( en='Leo (Part 3)', jp='リオ(その3)', es='Leo (III)', - option_ids=[82, 83, 84, 85, 86], + option_ids=[91, 92, 93, 94, 95, 96], ) Bounty_Hunter = RogueEventTitle( id=25, @@ -251,7 +251,7 @@ Bounty_Hunter = RogueEventTitle( en='Bounty Hunter', jp='賞金稼ぎ', es='Cazarrecompensas', - option_ids=[17, 87, 88, 89], + option_ids=[19, 97, 98, 99, 100], ) Implement_of_Error = RogueEventTitle( id=26, @@ -261,7 +261,7 @@ Implement_of_Error = RogueEventTitle( en='Implement of Error', jp='エラーアイテム', es='Objeto erróneo', - option_ids=[6, 90, 91, 92], + option_ids=[7, 101, 102, 103], ) We_Are_Cowboys = RogueEventTitle( id=27, @@ -271,7 +271,7 @@ We_Are_Cowboys = RogueEventTitle( en='We Are Cowboys', jp='俺たちカウボーイ', es='Somos vaqueros', - option_ids=[93, 94, 95, 96], + option_ids=[104, 105, 106, 107, 108], ) Nildis = RogueEventTitle( id=28, @@ -281,7 +281,7 @@ Nildis = RogueEventTitle( en='Nildis', jp='ニールディスカード', es='Nildis', - option_ids=[97, 98], + option_ids=[109, 110], ) Rock_Paper_Scissors = RogueEventTitle( id=29, @@ -291,7 +291,7 @@ Rock_Paper_Scissors = RogueEventTitle( en='Rock, Paper, Scissors', jp='じゃんけん', es='Piedra, papel o tijera', - option_ids=[99, 100, 101, 102], + option_ids=[111, 112, 113, 114, 115], ) Tavern = RogueEventTitle( id=30, @@ -301,7 +301,7 @@ Tavern = RogueEventTitle( en='Tavern', jp='パブ', es='Taberna', - option_ids=[103, 104, 105, 106, 107], + option_ids=[116, 117, 118, 119, 120, 121], ) Periodic_Demon_Lord = RogueEventTitle( id=31, @@ -311,7 +311,7 @@ Periodic_Demon_Lord = RogueEventTitle( en='Periodic Demon Lord', jp='周期性大魔王', es='Rey Demonio Cíclico', - option_ids=[108, 109], + option_ids=[122, 123], ) Let_Exchange_Gifts = RogueEventTitle( id=32, @@ -321,7 +321,7 @@ Let_Exchange_Gifts = RogueEventTitle( en="Let's Exchange Gifts", jp='プレゼントを交換しようよ', es='¡Intercambiemos regalos!', - option_ids=[110, 111, 112, 113, 114], + option_ids=[124, 125, 126, 127, 128], ) Make_A_Wish = RogueEventTitle( id=33, @@ -331,7 +331,7 @@ Make_A_Wish = RogueEventTitle( en='Make A Wish', jp='願い事しようよ', es='Pide un deseo', - option_ids=[112, 115, 116, 117], + option_ids=[126, 129, 130, 131], ) Robot_Sales_Terminal = RogueEventTitle( id=34, @@ -341,7 +341,7 @@ Robot_Sales_Terminal = RogueEventTitle( en='Robot Sales Terminal', jp='ロボット販売端末', es='Terminal de venta de robots', - option_ids=[112, 118, 119, 120, 121], + option_ids=[126, 132, 133, 134, 135, 136], ) Sand_King_Tayzzyronth_Part_1 = RogueEventTitle( id=35, @@ -351,7 +351,7 @@ Sand_King_Tayzzyronth_Part_1 = RogueEventTitle( en='Sand King: Tayzzyronth (Part 1)', jp='「砂の王-タイズルス」・その1', es='Rey de la Arena: Tayzzyronth(I)', - option_ids=[122, 123], + option_ids=[137, 138], ) Sand_King_Tayzzyronth_Part_2 = RogueEventTitle( id=36, @@ -361,7 +361,7 @@ Sand_King_Tayzzyronth_Part_2 = RogueEventTitle( en='Sand King: Tayzzyronth (Part 2)', jp='「砂の王-タイズルス」・その2', es='Rey de la Arena: Tayzzyronth(II)', - option_ids=[124, 125], + option_ids=[139, 140], ) Sand_King_Tayzzyronth_Part_3 = RogueEventTitle( id=37, @@ -371,7 +371,7 @@ Sand_King_Tayzzyronth_Part_3 = RogueEventTitle( en='Sand King: Tayzzyronth (Part 3)', jp='「砂の王-タイズルス」・その3', es='Rey de la Arena: Tayzzyronth(III)', - option_ids=[126, 127], + option_ids=[141, 142], ) Sand_King_Tayzzyronth_Part_4 = RogueEventTitle( id=38, @@ -381,7 +381,7 @@ Sand_King_Tayzzyronth_Part_4 = RogueEventTitle( en='Sand King: Tayzzyronth (Part 4)', jp='「砂の王-タイズルス」・その4', es='Rey de la Arena: Tayzzyronth(IV)', - option_ids=[127, 128, 129, 130], + option_ids=[142, 143, 144, 145], ) Sand_King_Tayzzyronth_Part_5 = RogueEventTitle( id=39, @@ -391,7 +391,7 @@ Sand_King_Tayzzyronth_Part_5 = RogueEventTitle( en='Sand King: Tayzzyronth (Part 5)', jp='「砂の王-タイズルス」・その5', es='Rey de la Arena: Tayzzyronth(V)', - option_ids=[131, 132], + option_ids=[146, 147], ) Sand_King_Tayzzyronth_Part_6 = RogueEventTitle( id=40, @@ -401,7 +401,7 @@ Sand_King_Tayzzyronth_Part_6 = RogueEventTitle( en='Sand King: Tayzzyronth (Part 6)', jp='「砂の王-タイズルス」・その6', es='Rey de la Arena: Tayzzyronth(VI)', - option_ids=[127, 133, 134], + option_ids=[142, 148, 149], ) Sand_King_Tayzzyronth_Part_7 = RogueEventTitle( id=41, @@ -411,7 +411,7 @@ Sand_King_Tayzzyronth_Part_7 = RogueEventTitle( en='Sand King: Tayzzyronth (Part 7)', jp='「砂の王-タイズルス」・その7', es='Rey de la Arena: Tayzzyronth(VII)', - option_ids=[135, 136], + option_ids=[150, 151], ) Sand_King_Tayzzyronth_Part_8 = RogueEventTitle( id=42, @@ -421,7 +421,7 @@ Sand_King_Tayzzyronth_Part_8 = RogueEventTitle( en='Sand King: Tayzzyronth (Part 8)', jp='「砂の王-タイズルス」・その8', es='Rey de la Arena: Tayzzyronth(VIII)', - option_ids=[137, 138], + option_ids=[152, 153], ) Sand_King_Tayzzyronth_Part_9 = RogueEventTitle( id=43, @@ -431,7 +431,7 @@ Sand_King_Tayzzyronth_Part_9 = RogueEventTitle( en='Sand King: Tayzzyronth (Part 9)', jp='「砂の王-タイズルス」・その9', es='Rey de la Arena: Tayzzyronth(IX)', - option_ids=[139, 140], + option_ids=[154, 155], ) Lepismat_System_Massacre_Saga_Part_1 = RogueEventTitle( id=44, @@ -441,7 +441,7 @@ Lepismat_System_Massacre_Saga_Part_1 = RogueEventTitle( en='Lepismat System: Massacre Saga (Part 1)', jp='「蟲星系-虐殺紀」・その1', es='Galaxia de Insectiria: saga de la masacre(I)', - option_ids=[141, 142], + option_ids=[156, 157], ) Lepismat_System_Massacre_Saga_Part_2 = RogueEventTitle( id=45, @@ -451,7 +451,7 @@ Lepismat_System_Massacre_Saga_Part_2 = RogueEventTitle( en='Lepismat System: Massacre Saga (Part 2)', jp='「蟲星系-虐殺紀」・その2', es='Galaxia de Insectiria: saga de la masacre(II)', - option_ids=[143, 144], + option_ids=[158, 159], ) Lepismat_System_Massacre_Saga_Part_3 = RogueEventTitle( id=46, @@ -461,7 +461,7 @@ Lepismat_System_Massacre_Saga_Part_3 = RogueEventTitle( en='Lepismat System: Massacre Saga (Part 3)', jp='「蟲星系-虐殺紀」・その3', es='Galaxia de Insectiria: saga de la masacre(III)', - option_ids=[145, 146], + option_ids=[160, 161], ) Lepismat_System_Massacre_Saga_Part_4 = RogueEventTitle( id=47, @@ -471,7 +471,7 @@ Lepismat_System_Massacre_Saga_Part_4 = RogueEventTitle( en='Lepismat System: Massacre Saga (Part 4)', jp='「蟲星系-虐殺紀」・その4', es='Galaxia de Insectiria: saga de la masacre(IV)', - option_ids=[147, 148], + option_ids=[162, 163], ) Lepismat_System_Massacre_Saga_Part_5 = RogueEventTitle( id=48, @@ -481,7 +481,7 @@ Lepismat_System_Massacre_Saga_Part_5 = RogueEventTitle( en='Lepismat System: Massacre Saga (Part 5)', jp='「蟲星系-虐殺紀」・その5', es='Galaxia de Insectiria: saga de la masacre(V)', - option_ids=[149, 150], + option_ids=[164, 165], ) Lepismat_System_Massacre_Saga_Part_6 = RogueEventTitle( id=49, @@ -491,7 +491,7 @@ Lepismat_System_Massacre_Saga_Part_6 = RogueEventTitle( en='Lepismat System: Massacre Saga (Part 6)', jp='「蟲星系-虐殺紀」・その6', es='Galaxia de Insectiria: saga de la masacre(VI)', - option_ids=[151, 152], + option_ids=[166, 167], ) Bounty_Hunter_Crimson_Cleansing_Chronicle_Part_1 = RogueEventTitle( id=50, @@ -501,7 +501,7 @@ Bounty_Hunter_Crimson_Cleansing_Chronicle_Part_1 = RogueEventTitle( en='Bounty Hunter: Crimson Cleansing Chronicle (Part 1)', jp='「賞金稼ぎ-洗狩紀」・その1', es='Cazarrecompensas: crónica de la depuración carmesí(I)', - option_ids=[153, 154], + option_ids=[168, 169], ) Bounty_Hunter_Crimson_Cleansing_Chronicle_Part_2 = RogueEventTitle( id=51, @@ -511,7 +511,7 @@ Bounty_Hunter_Crimson_Cleansing_Chronicle_Part_2 = RogueEventTitle( en='Bounty Hunter: Crimson Cleansing Chronicle (Part 2)', jp='「賞金稼ぎ-洗狩紀」・その2', es='Cazarrecompensas: crónica de la depuración carmesí(II)', - option_ids=[155], + option_ids=[170], ) Bounty_Hunter_Crimson_Cleansing_Chronicle_Part_3 = RogueEventTitle( id=52, @@ -521,7 +521,7 @@ Bounty_Hunter_Crimson_Cleansing_Chronicle_Part_3 = RogueEventTitle( en='Bounty Hunter: Crimson Cleansing Chronicle (Part 3)', jp='「賞金稼ぎ-洗狩紀」・その3', es='Cazarrecompensas: crónica de la depuración carmesí(III)', - option_ids=[156, 157], + option_ids=[171, 172], ) Bounty_Hunter_Crimson_Cleansing_Chronicle_Part_4 = RogueEventTitle( id=53, @@ -531,7 +531,7 @@ Bounty_Hunter_Crimson_Cleansing_Chronicle_Part_4 = RogueEventTitle( en='Bounty Hunter: Crimson Cleansing Chronicle (Part 4)', jp='「賞金稼ぎ-洗狩紀」・その4', es='Cazarrecompensas: crónica de la depuración carmesí(IV)', - option_ids=[158, 159], + option_ids=[173, 174], ) Bounty_Hunter_Crimson_Cleansing_Chronicle_Part_5 = RogueEventTitle( id=54, @@ -541,7 +541,7 @@ Bounty_Hunter_Crimson_Cleansing_Chronicle_Part_5 = RogueEventTitle( en='Bounty Hunter: Crimson Cleansing Chronicle (Part 5)', jp='「賞金稼ぎ-洗狩紀」・その5', es='Cazarrecompensas: crónica de la depuración carmesí(V)', - option_ids=[160, 161], + option_ids=[175, 176], ) Bounty_Hunter_Crimson_Cleansing_Chronicle_Part_6 = RogueEventTitle( id=55, @@ -551,7 +551,7 @@ Bounty_Hunter_Crimson_Cleansing_Chronicle_Part_6 = RogueEventTitle( en='Bounty Hunter: Crimson Cleansing Chronicle (Part 6)', jp='「賞金稼ぎ-洗狩紀」・その6', es='Cazarrecompensas: crónica de la depuración carmesí(VI)', - option_ids=[156], + option_ids=[171], ) Tragedy_and_Insects_The_Dwindling_of_Stars_Part_1 = RogueEventTitle( id=56, @@ -561,7 +561,7 @@ Tragedy_and_Insects_The_Dwindling_of_Stars_Part_1 = RogueEventTitle( en='Tragedy and Insects: The Dwindling of Stars (Part 1)', jp='「凶と虫-諸星消滅紀」・その1', es='Tragedia e insectos: el ocaso de las estrellas(I)', - option_ids=[162, 163], + option_ids=[177, 178], ) Tragedy_and_Insects_The_Dwindling_of_Stars_Part_2 = RogueEventTitle( id=57, @@ -571,7 +571,7 @@ Tragedy_and_Insects_The_Dwindling_of_Stars_Part_2 = RogueEventTitle( en='Tragedy and Insects: The Dwindling of Stars (Part 2)', jp='「凶と虫-諸星消滅紀」・その2', es='Tragedia e insectos: el ocaso de las estrellas(II)', - option_ids=[164, 165], + option_ids=[179, 180], ) Tragedy_and_Insects_The_Dwindling_of_Stars_Part_3 = RogueEventTitle( id=58, @@ -581,7 +581,7 @@ Tragedy_and_Insects_The_Dwindling_of_Stars_Part_3 = RogueEventTitle( en='Tragedy and Insects: The Dwindling of Stars (Part 3)', jp='「凶と虫-諸星消滅紀」・その3', es='Tragedia e insectos: el ocaso de las estrellas(III)', - option_ids=[166, 167], + option_ids=[181, 182], ) Tragedy_and_Insects_The_Dwindling_of_Stars_Part_4 = RogueEventTitle( id=59, @@ -591,7 +591,7 @@ Tragedy_and_Insects_The_Dwindling_of_Stars_Part_4 = RogueEventTitle( en='Tragedy and Insects: The Dwindling of Stars (Part 4)', jp='「凶と虫-諸星消滅紀」・その4', es='Tragedia e insectos: el ocaso de las estrellas(IV)', - option_ids=[69, 168], + option_ids=[77, 183], ) Tragedy_and_Insects_The_Dwindling_of_Stars_Part_5 = RogueEventTitle( id=60, @@ -601,7 +601,7 @@ Tragedy_and_Insects_The_Dwindling_of_Stars_Part_5 = RogueEventTitle( en='Tragedy and Insects: The Dwindling of Stars (Part 5)', jp='「凶と虫-諸星消滅紀」・その5', es='Tragedia e insectos: el ocaso de las estrellas(V)', - option_ids=[169, 170], + option_ids=[184, 185], ) Tragedy_and_Insects_The_Dwindling_of_Stars_Part_6 = RogueEventTitle( id=61, @@ -611,7 +611,7 @@ Tragedy_and_Insects_The_Dwindling_of_Stars_Part_6 = RogueEventTitle( en='Tragedy and Insects: The Dwindling of Stars (Part 6)', jp='「凶と虫-諸星消滅紀」・その6', es='Tragedia e insectos: el ocaso de las estrellas(VI)', - option_ids=[171, 172, 173], + option_ids=[186, 187, 188], ) Genius_Society_Regular_Experiments_Part_1 = RogueEventTitle( id=62, @@ -621,7 +621,7 @@ Genius_Society_Regular_Experiments_Part_1 = RogueEventTitle( en='Genius Society: Regular Experiments (Part 1)', jp='「天才クラブ-通常実験」・その1', es='Círculo de Genios: experimentos cotidianos(I)', - option_ids=[174, 175], + option_ids=[189, 190], ) Genius_Society_Regular_Experiments_Part_2 = RogueEventTitle( id=63, @@ -631,7 +631,7 @@ Genius_Society_Regular_Experiments_Part_2 = RogueEventTitle( en='Genius Society: Regular Experiments (Part 2)', jp='「天才クラブ-通常実験」・その2', es='Círculo de Genios: experimentos cotidianos(II)', - option_ids=[176, 177], + option_ids=[191, 192], ) Genius_Society_Regular_Experiments_Part_3 = RogueEventTitle( id=64, @@ -641,7 +641,7 @@ Genius_Society_Regular_Experiments_Part_3 = RogueEventTitle( en='Genius Society: Regular Experiments (Part 3)', jp='「天才クラブ-通常実験」・その3', es='Círculo de Genios: experimentos cotidianos(III)', - option_ids=[178, 179], + option_ids=[193, 194], ) Gondola_Helping_Gods_Part_1 = RogueEventTitle( id=65, @@ -651,7 +651,7 @@ Gondola_Helping_Gods_Part_1 = RogueEventTitle( en='Gondola: Helping Gods! (Part 1)', jp='「ゴンドラ-神を助ける!」・その1', es='Góndola: ¡ayudando a los dioses!(I)', - option_ids=[180, 181], + option_ids=[195, 196], ) Gondola_Helping_Gods_Part_2 = RogueEventTitle( id=66, @@ -661,7 +661,7 @@ Gondola_Helping_Gods_Part_2 = RogueEventTitle( en='Gondola: Helping Gods! (Part 2)', jp='「ゴンドラ-神を助ける!」・その2', es='Góndola: ¡ayudando a los dioses!(II)', - option_ids=[69, 182], + option_ids=[77, 197], ) Gondola_Helping_Gods_Part_3 = RogueEventTitle( id=67, @@ -671,7 +671,7 @@ Gondola_Helping_Gods_Part_3 = RogueEventTitle( en='Gondola: Helping Gods! (Part 3)', jp='「ゴンドラ-神を助ける!」・その3', es='Góndola: ¡ayudando a los dioses!(III)', - option_ids=[183, 184], + option_ids=[198, 199], ) Gondola_Helping_Gods_Part_4 = RogueEventTitle( id=68, @@ -681,7 +681,7 @@ Gondola_Helping_Gods_Part_4 = RogueEventTitle( en='Gondola: Helping Gods! (Part 4)', jp='「ゴンドラ-神を助ける!」・その4', es='Góndola: ¡ayudando a los dioses!(IV)', - option_ids=[185, 186], + option_ids=[200, 201], ) Gondola_Helping_Gods_Part_5 = RogueEventTitle( id=69, @@ -691,7 +691,7 @@ Gondola_Helping_Gods_Part_5 = RogueEventTitle( en='Gondola: Helping Gods! (Part 5)', jp='「ゴンドラ-神を助ける!」・その5', es='Góndola: ¡ayudando a los dioses!(V)', - option_ids=[187, 188], + option_ids=[202, 203], ) Gondola_Helping_Gods_Part_6 = RogueEventTitle( id=70, @@ -701,7 +701,7 @@ Gondola_Helping_Gods_Part_6 = RogueEventTitle( en='Gondola: Helping Gods! (Part 6)', jp='「ゴンドラ-神を助ける!」・その6', es='Góndola: ¡ayudando a los dioses!(VI)', - option_ids=[189, 190], + option_ids=[204, 205], ) Beyond_the_Sky_Choir_Anomaly_Archives_Part_1 = RogueEventTitle( id=71, @@ -711,7 +711,7 @@ Beyond_the_Sky_Choir_Anomaly_Archives_Part_1 = RogueEventTitle( en='Beyond the Sky Choir: Anomaly Archives (Part 1)', jp='「天外聖歌隊-異象紀」・その1', es='Coro del Firmamento: crónicas sobre anomalías(I)', - option_ids=[191, 192], + option_ids=[206, 207], ) Beyond_the_Sky_Choir_Anomaly_Archives_Part_2 = RogueEventTitle( id=72, @@ -721,7 +721,7 @@ Beyond_the_Sky_Choir_Anomaly_Archives_Part_2 = RogueEventTitle( en='Beyond the Sky Choir: Anomaly Archives (Part 2)', jp='「天外聖歌隊-異象紀」・その2', es='Coro del Firmamento: crónicas sobre anomalías(II)', - option_ids=[193, 194], + option_ids=[208, 209], ) Beyond_the_Sky_Choir_Anomaly_Archives_Part_3 = RogueEventTitle( id=73, @@ -731,7 +731,7 @@ Beyond_the_Sky_Choir_Anomaly_Archives_Part_3 = RogueEventTitle( en='Beyond the Sky Choir: Anomaly Archives (Part 3)', jp='「天外聖歌隊-異象紀」・その3', es='Coro del Firmamento: crónicas sobre anomalías(III)', - option_ids=[195, 196], + option_ids=[210, 211], ) The_Architects_Annals_of_Fortification_Part_1 = RogueEventTitle( id=74, @@ -741,7 +741,7 @@ The_Architects_Annals_of_Fortification_Part_1 = RogueEventTitle( en='The Architects: Annals of Fortification (Part 1)', jp='「建創者-修築紀」・その1', es='Los Arquitectos: anales de la fortificación(I)', - option_ids=[197, 198], + option_ids=[212, 213], ) The_Architects_Annals_of_Fortification_Part_2 = RogueEventTitle( id=75, @@ -751,7 +751,7 @@ The_Architects_Annals_of_Fortification_Part_2 = RogueEventTitle( en='The Architects: Annals of Fortification (Part 2)', jp='「建創者-修築紀」・その2', es='Los Arquitectos: anales de la fortificación(II)', - option_ids=[199, 200], + option_ids=[214, 215], ) The_Architects_Annals_of_Fortification_Part_3 = RogueEventTitle( id=76, @@ -761,7 +761,7 @@ The_Architects_Annals_of_Fortification_Part_3 = RogueEventTitle( en='The Architects: Annals of Fortification (Part 3)', jp='「建創者-修築紀」・その3', es='Los Arquitectos: anales de la fortificación(III)', - option_ids=[201, 202], + option_ids=[216, 217], ) Screwllum_Blessing_Store = RogueEventTitle( id=77, @@ -771,7 +771,7 @@ Screwllum_Blessing_Store = RogueEventTitle( en="Screwllum's Blessing Store", jp='スクリューガムの祝福ショップ', es='Tienda de bendiciones de Tornillum', - option_ids=[6, 7, 8], + option_ids=[7, 8, 9], ) Herta_Store = RogueEventTitle( id=78, @@ -781,7 +781,7 @@ Herta_Store = RogueEventTitle( en="Herta's Store", jp='ヘルタショップ', es='Tienda de Herta', - option_ids=[7, 8], + option_ids=[8, 9], ) Screwllum_Store = RogueEventTitle( id=79, @@ -791,7 +791,7 @@ Screwllum_Store = RogueEventTitle( en="Screwllum's Store", jp='スクリューガムショップ', es='Tienda de Tornillum', - option_ids=[8], + option_ids=[9], ) Knights_of_Beauty_to_the_Rescue = RogueEventTitle( id=80, @@ -801,7 +801,7 @@ Knights_of_Beauty_to_the_Rescue = RogueEventTitle( en='Knights of Beauty to the Rescue', jp='純美の騎士の助け', es='Caballeros de la Belleza al rescate', - option_ids=[203, 204, 205, 206, 207, 208, 209, 210], + option_ids=[218, 219, 220, 221, 222, 223, 224, 225], ) Cosmic_Crescendo = RogueEventTitle( id=81, @@ -811,7 +811,7 @@ Cosmic_Crescendo = RogueEventTitle( en='Cosmic Crescendo', jp='天外大合唱', es='Crescendo cósmico', - option_ids=[211, 212, 213], + option_ids=[226, 227, 228, 229], ) Genius_Society_55_Yu_Qingtu = RogueEventTitle( id=82, @@ -821,7 +821,7 @@ Genius_Society_55_Yu_Qingtu = RogueEventTitle( en='Genius Society #55 Yu Qingtu', jp='天才クラブ#55余清塗', es='Yu Qingtu, miembro n.º 55 del Círculo de Genios', - option_ids=[214, 215, 216, 217, 218, 219, 220, 221, 222], + option_ids=[230, 231, 232, 233, 234, 235, 236, 237, 238, 239], ) Beast_Horde_Voracious_Catastrophe = RogueEventTitle( id=83, @@ -831,7 +831,7 @@ Beast_Horde_Voracious_Catastrophe = RogueEventTitle( en='Beast Horde: Voracious Catastrophe', jp='獣の群れ・貪慾の災厄', es='Horda de bestias: catástrofe voraz', - option_ids=[223, 224, 225], + option_ids=[240, 241, 242, 243], ) The_Curio_Fixer = RogueEventTitle( id=84, @@ -841,7 +841,7 @@ The_Curio_Fixer = RogueEventTitle( en='The Curio Fixer', jp='奇物修理エキスパート', es='Reparador de objetos raros', - option_ids=[226, 227, 228, 229, 230], + option_ids=[244, 245, 246, 247, 248, 249], ) Showman_Sleight = RogueEventTitle( id=85, @@ -851,7 +851,7 @@ Showman_Sleight = RogueEventTitle( en="Showman's Sleight", jp='伶人の手品', es='El truco del actor', - option_ids=[231, 232], + option_ids=[250, 251, 252], ) The_Double_Lottery_Experience = RogueEventTitle( id=86, @@ -861,7 +861,7 @@ The_Double_Lottery_Experience = RogueEventTitle( en='The Double Lottery Experience', jp='ダブルロッタリー体験', es='La experiencia de la doble lotería', - option_ids=[69, 233, 234], + option_ids=[77, 253, 254, 255], ) Ruan_Mei_Part_2 = RogueEventTitle( id=87, @@ -871,7 +871,7 @@ Ruan_Mei_Part_2 = RogueEventTitle( en='Ruan Mei (Part 2)', jp='ルアン・メェイ(2)', es='Ruan Mei II', - option_ids=[1, 235, 236], + option_ids=[1, 3, 256, 257], ) The_Perfect_Grand_Challenge = RogueEventTitle( id=88, @@ -881,7 +881,7 @@ The_Perfect_Grand_Challenge = RogueEventTitle( en='The *Perfect* Grand Challenge!', jp='※完璧※大挑戦!', es='¡El gran desafío perfecto!', - option_ids=[127, 237, 238, 239], + option_ids=[142, 258, 259, 260, 261], ) The_IPC_Promotion_Saga_Part_1 = RogueEventTitle( id=89, @@ -891,7 +891,7 @@ The_IPC_Promotion_Saga_Part_1 = RogueEventTitle( en='The IPC Promotion Saga (Part 1)', jp='スターピースカンパニー「昇進記」(1)', es='La saga del ascenso de la Corporación I', - option_ids=[240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254], + option_ids=[262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276], ) The_IPC_Promotion_Saga_Part_2 = RogueEventTitle( id=90, @@ -901,7 +901,7 @@ The_IPC_Promotion_Saga_Part_2 = RogueEventTitle( en='The IPC Promotion Saga (Part 2)', jp='スターピースカンパニー「昇進記」(2)', es='La saga del ascenso de la Corporación II', - option_ids=[241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254], + option_ids=[263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276], ) The_IPC_Promotion_Saga_Part_3 = RogueEventTitle( id=91, @@ -911,7 +911,7 @@ The_IPC_Promotion_Saga_Part_3 = RogueEventTitle( en='The IPC Promotion Saga (Part 3)', jp='スターピースカンパニー「昇進記」(3)', es='La saga del ascenso de la Corporación III', - option_ids=[242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254], + option_ids=[264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276], ) The_IPC_Promotion_Saga_Part_4 = RogueEventTitle( id=92, @@ -921,7 +921,7 @@ The_IPC_Promotion_Saga_Part_4 = RogueEventTitle( en='The IPC Promotion Saga (Part 4)', jp='スターピースカンパニー「昇進記」(4)', es='La saga del ascenso de la Corporación IV', - option_ids=[243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254], + option_ids=[265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276], ) Ka_ching_IPC_Banking_Part_1 = RogueEventTitle( id=93, @@ -931,7 +931,7 @@ Ka_ching_IPC_Banking_Part_1 = RogueEventTitle( en='Ka-ching! IPC Banking (Part 1)', jp='カチャッ――スターピース銀行!(1)', es='El banco de la Corporación I', - option_ids=[127, 255, 256, 257, 258], + option_ids=[142, 277, 278, 279, 280, 281], ) Ka_ching_IPC_Banking_Part_2 = RogueEventTitle( id=94, @@ -941,7 +941,7 @@ Ka_ching_IPC_Banking_Part_2 = RogueEventTitle( en='Ka-ching! IPC Banking (Part 2)', jp='カチャッ――スターピース銀行!(2)', es='El banco de la Corporación II', - option_ids=[127, 255, 256, 257, 258], + option_ids=[142, 277, 278, 279, 280, 281], ) Loneliness_Costic_Beauty_Bugs_Simulated_Universe_Part_1 = RogueEventTitle( id=95, @@ -951,7 +951,7 @@ Loneliness_Costic_Beauty_Bugs_Simulated_Universe_Part_1 = RogueEventTitle( en='Loneliness, Costic Beauty Bugs, Simulated Universe (Part 1)', jp='孤独、宇宙の美虫、模擬宇宙(1)', es='Soledad, gusanos espaciales y el Universo Simulado I', - option_ids=[69, 259, 260, 261, 262, 263, 264, 265], + option_ids=[77, 282, 283, 284, 285, 286, 287, 288, 289], ) Loneliness_Costic_Beauty_Bugs_Simulated_Universe_Part_2 = RogueEventTitle( id=96, @@ -961,7 +961,7 @@ Loneliness_Costic_Beauty_Bugs_Simulated_Universe_Part_2 = RogueEventTitle( en='Loneliness, Costic Beauty Bugs, Simulated Universe (Part 2)', jp='孤独、宇宙の美虫、模擬宇宙(2)', es='Soledad, gusanos espaciales y el Universo Simulado II', - option_ids=[69, 260, 261, 262, 263, 264, 265], + option_ids=[77, 283, 284, 285, 286, 287, 288, 289], ) Ace_Trash_Digger = RogueEventTitle( id=97, @@ -971,7 +971,7 @@ Ace_Trash_Digger = RogueEventTitle( en='Ace Trash Digger', jp='ゴミ箱あさりの達人', es='Gran rebuscador de la basura', - option_ids=[230, 266, 267, 268], + option_ids=[248, 290, 291, 292, 293], ) Swarm_Slumbering_Overlord_First_Praetorian = RogueEventTitle( id=98, @@ -981,7 +981,7 @@ Swarm_Slumbering_Overlord_First_Praetorian = RogueEventTitle( en='Swarm: Slumbering Overlord (First Praetorian)', jp='虫の潮・深眠の領主(一級守備)', es='Enjambre: Cacique dormido (primer pretoriano)', - option_ids=[230, 269, 270, 271, 272, 273], + option_ids=[248, 294, 295, 296, 297, 298], ) Swarm_Slumbering_Overlord_Second_Praetorian = RogueEventTitle( id=99, @@ -991,7 +991,7 @@ Swarm_Slumbering_Overlord_Second_Praetorian = RogueEventTitle( en='Swarm: Slumbering Overlord (Second Praetorian)', jp='虫の潮・深眠の領主(二級守備)', es='Enjambre: Cacique dormido (segundo pretoriano)', - option_ids=[230, 270, 271, 272, 273], + option_ids=[248, 295, 296, 297, 298], ) Swarm_Slumbering_Overlord_Third_Praetorian = RogueEventTitle( id=100, @@ -1001,7 +1001,7 @@ Swarm_Slumbering_Overlord_Third_Praetorian = RogueEventTitle( en='Swarm: Slumbering Overlord (Third Praetorian)', jp='虫の潮・深眠の領主(三級守備)', es='Enjambre: Cacique dormido (tercer pretoriano)', - option_ids=[230, 271, 272, 273], + option_ids=[248, 296, 297, 298], ) Propagation_Slumbering_Overlord_First_Praetorian = RogueEventTitle( id=101, @@ -1011,7 +1011,7 @@ Propagation_Slumbering_Overlord_First_Praetorian = RogueEventTitle( en='Propagation: Slumbering Overlord (First Praetorian)', jp='繁殖・深眠の領主(一級守備)', es='Propagación: Cacique dormido (primer pretoriano)', - option_ids=[274, 275], + option_ids=[299, 300], ) Propagation_Slumbering_Overlord_Second_Praetorian = RogueEventTitle( id=102, @@ -1021,7 +1021,7 @@ Propagation_Slumbering_Overlord_Second_Praetorian = RogueEventTitle( en='Propagation: Slumbering Overlord (Second Praetorian)', jp='繁殖・深眠の領主(二級守備)', es='Propagación: Cacique dormido (segundo pretoriano)', - option_ids=[274, 275], + option_ids=[299, 300], ) Propagation_Slumbering_Overlord_Third_Praetorian = RogueEventTitle( id=103, @@ -1031,7 +1031,7 @@ Propagation_Slumbering_Overlord_Third_Praetorian = RogueEventTitle( en='Propagation: Slumbering Overlord (Third Praetorian)', jp='繁殖・深眠の領主(三級守備)', es='Propagación: Cacique dormido (tercer pretoriano)', - option_ids=[274, 275], + option_ids=[299, 300], ) Swarm_Nest_Exploration_First_Praetorian = RogueEventTitle( id=104, @@ -1041,7 +1041,7 @@ Swarm_Nest_Exploration_First_Praetorian = RogueEventTitle( en='Swarm: Nest Exploration (First Praetorian)', jp='虫の潮・虫の巣探険(一級守備)', es='Enjambre: Exploración del nido (primer pretoriano)', - option_ids=[276, 277, 278], + option_ids=[301, 302, 303], ) Swarm_Nest_Exploration_Second_Praetorian = RogueEventTitle( id=105, @@ -1051,7 +1051,7 @@ Swarm_Nest_Exploration_Second_Praetorian = RogueEventTitle( en='Swarm: Nest Exploration (Second Praetorian)', jp='虫の潮・虫の巣探険(二級守備)', es='Enjambre: Exploración del nido (segundo pretoriano)', - option_ids=[276, 277, 278], + option_ids=[301, 302, 303], ) Swarm_Nest_Exploration_Third_Praetorian = RogueEventTitle( id=106, @@ -1061,7 +1061,7 @@ Swarm_Nest_Exploration_Third_Praetorian = RogueEventTitle( en='Swarm: Nest Exploration (Third Praetorian)', jp='虫の潮・虫の巣探険(三級守備)', es='Enjambre: Exploración del nido (tercer pretoriano)', - option_ids=[276, 277, 278], + option_ids=[301, 302, 303], ) Propagation_Nest_Exploration_First_Praetorian = RogueEventTitle( id=107, @@ -1071,7 +1071,7 @@ Propagation_Nest_Exploration_First_Praetorian = RogueEventTitle( en='Propagation: Nest Exploration (First Praetorian)', jp='繁殖・虫の巣探険(一級守備)', es='Propagación: Exploración del nido (primer pretoriano)', - option_ids=[279, 280], + option_ids=[304, 305], ) Propagation_Nest_Exploration_Second_Praetorian = RogueEventTitle( id=108, @@ -1081,7 +1081,7 @@ Propagation_Nest_Exploration_Second_Praetorian = RogueEventTitle( en='Propagation: Nest Exploration (Second Praetorian)', jp='繁殖・虫の巣探険(二級守備)', es='Propagación: Exploración del nido (segundo pretoriano)', - option_ids=[279, 280], + option_ids=[304, 305], ) Swarm_Mind_of_the_Domain_First_Praetorian = RogueEventTitle( id=109, @@ -1091,7 +1091,7 @@ Swarm_Mind_of_the_Domain_First_Praetorian = RogueEventTitle( en='Swarm: Mind of the Domain (First Praetorian)', jp='虫の潮・区域脳(一級守備)', es='Enjambre: Mente de zona (primer pretoriano)', - option_ids=[281, 282, 283, 284, 285], + option_ids=[306, 307, 308, 309, 310], ) Swarm_Mind_of_the_Domain_Second_Praetorian = RogueEventTitle( id=110, @@ -1101,7 +1101,7 @@ Swarm_Mind_of_the_Domain_Second_Praetorian = RogueEventTitle( en='Swarm: Mind of the Domain (Second Praetorian)', jp='虫の潮・区域脳(二級守備)', es='Enjambre: Mente de zona (segundo pretoriano)', - option_ids=[282, 283, 284, 285], + option_ids=[307, 308, 309, 310], ) Swarm_Mind_of_the_Domain_Third_Praetorian = RogueEventTitle( id=111, @@ -1111,7 +1111,7 @@ Swarm_Mind_of_the_Domain_Third_Praetorian = RogueEventTitle( en='Swarm: Mind of the Domain (Third Praetorian)', jp='虫の潮・区域脳(三級守備)', es='Enjambre: Mente de zona (tercer pretoriano)', - option_ids=[283, 284, 285], + option_ids=[308, 309, 310], ) Insights_from_the_Universal_Dancer = RogueEventTitle( id=112, @@ -1121,7 +1121,7 @@ Insights_from_the_Universal_Dancer = RogueEventTitle( en='Insights from the Universal Dancer', jp='世界の踊り手の啓示', es='Reflexiones del bailarín universal', - option_ids=[286, 287], + option_ids=[311, 312], ) Pixel_World_Hidden_Stage = RogueEventTitle( id=113, @@ -1131,7 +1131,7 @@ Pixel_World_Hidden_Stage = RogueEventTitle( en='Pixel World: Hidden Stage', jp='ピクセルワールド・隠しステージ', es='Mundo de píxeles: Mecanismo invisible', - option_ids=[288, 289, 290], + option_ids=[313, 314, 315], ) Mirror_of_Transcendence = RogueEventTitle( id=114, @@ -1141,7 +1141,7 @@ Mirror_of_Transcendence = RogueEventTitle( en='Mirror of Transcendence', jp='超越の鏡', es='Espejo de la Trascendencia', - option_ids=[61, 291, 292, 293, 294, 295], + option_ids=[69, 316, 317, 318, 319, 320], ) The_Cuckoo_Clock_Fanatic_Part_1 = RogueEventTitle( id=115, @@ -1151,7 +1151,7 @@ The_Cuckoo_Clock_Fanatic_Part_1 = RogueEventTitle( en='The Cuckoo Clock Fanatic (Part 1)', jp='鳩時計の熱狂的ファン(1)', es='El fanático del reloj de cuco I', - option_ids=[296, 297, 298], + option_ids=[321, 322, 323], ) The_Cuckoo_Clock_Fanatic_Part_2 = RogueEventTitle( id=116, @@ -1161,7 +1161,7 @@ The_Cuckoo_Clock_Fanatic_Part_2 = RogueEventTitle( en='The Cuckoo Clock Fanatic (Part 2)', jp='鳩時計の熱狂的ファン(2)', es='El fanático del reloj de cuco II', - option_ids=[297, 298], + option_ids=[322, 323], ) The_Cuckoo_Clock_Fanatic_Part_3 = RogueEventTitle( id=117, @@ -1171,5 +1171,105 @@ The_Cuckoo_Clock_Fanatic_Part_3 = RogueEventTitle( en='The Cuckoo Clock Fanatic (Part 3)', jp='鳩時計の熱狂的ファン(3)', es='El fanático del reloj de cuco III', - option_ids=[298], + option_ids=[323], +) +Mechanical_City_Cogito_Hair_Salon_Screwllita = RogueEventTitle( + id=118, + name='Mechanical_City_Cogito_Hair_Salon_Screwllita', + cn='机械城「认知理发馆」-机械咕母', + cht='機械城「認知理髮館」-機械咕母', + en='Mechanical City "Cogito Hair Salon" — Screwllita', + jp='機械城「認識理容所」-マザーマキーナ', + es='Peluquería cognitiva de Ciudad Mecánica - Mecanillum', + option_ids=[324, 325, 326, 327], +) +Mechanical_City_Cogito_Hair_Salon_Intelligentsia_Guild = RogueEventTitle( + id=119, + name='Mechanical_City_Cogito_Hair_Salon_Intelligentsia_Guild', + cn='机械城「认知理发馆」-博识学会', + cht='機械城「認知理髮館」-博識學會', + en='Mechanical City "Cogito Hair Salon" — Intelligentsia Guild', + jp='機械城「認識理容所」-博識学会', + es='Peluquería cognitiva de Ciudad Mecánica - Sociedad del Conocimiento', + option_ids=[328, 329, 330, 331], +) +Mechanical_City_Cogito_Hair_Salon_Genius_Society = RogueEventTitle( + id=120, + name='Mechanical_City_Cogito_Hair_Salon_Genius_Society', + cn='机械城「认知理发馆」-天才俱乐部', + cht='機械城「認知理髮館」-天才俱樂部', + en='Mechanical City "Cogito Hair Salon" — Genius Society', + jp='機械城「認識理容所」-天才クラブ', + es='Peluquería cognitiva de Ciudad Mecánica - Círculo de Genios', + option_ids=[332, 333, 334, 335], +) +Curio_Hacker = RogueEventTitle( + id=121, + name='Curio_Hacker', + cn='奇物黑客', + cht='奇物駭客', + en='Curio Hacker', + jp='奇物ハッカー', + es='Hacker de objetos raros', + option_ids=[336, 337, 338], +) +Sealing_Wax_Manufacture_Machine = RogueEventTitle( + id=122, + name='Sealing_Wax_Manufacture_Machine', + cn='火漆制造机', + cht='火漆製造機', + en='Sealing Wax Manufacture Machine', + jp='封蝋製造機', + es='Máquina de producción de lacre', + option_ids=[339, 340, 341, 342], +) +Interastral_Peace_Investment_Device = RogueEventTitle( + id=123, + name='Interastral_Peace_Investment_Device', + cn='星际和平投资机器', + cht='星際和平投資機器', + en='Interastral Peace Investment Device', + jp='スターピース投資ロボット', + es='Dispositivo de inversión de la Paz Interastral', + option_ids=[343, 344, 345, 346], +) +Interastral_Peace_Mechanical_Branch_Shopping_Mall_I = RogueEventTitle( + id=124, + name='Interastral_Peace_Mechanical_Branch_Shopping_Mall_I', + cn='星际和平机械分部商城(其一)', + cht='星際和平機械分部商城(其一)', + en='Interastral Peace Mechanical Branch Shopping Mall (I)', + jp='スターピースショッピングセンター・機械支部(その1)', + es='Centro comercial mecánico de la Paz Interastral (I)', + option_ids=[342, 347, 348, 349], +) +Interastral_Peace_Mechanical_Branch_Shopping_Mall_II = RogueEventTitle( + id=125, + name='Interastral_Peace_Mechanical_Branch_Shopping_Mall_II', + cn='星际和平机械分部商城(其二)', + cht='星際和平機械分部商城(其二)', + en='Interastral Peace Mechanical Branch Shopping Mall (II)', + jp='スターピースショッピングセンター・機械支部(その2)', + es='Centro comercial mecánico de la Paz Interastral (II)', + option_ids=[342, 350, 351, 352], +) +Cheating_Code_I = RogueEventTitle( + id=126, + name='Cheating_Code_I', + cn='作弊代码(其一)', + cht='作弊程式碼(其一)', + en='Cheating Code (I)', + jp='チートコード(その1)', + es='Código de trampa (I)', + option_ids=[353, 354, 355, 356, 357], +) +Cheating_Code_II = RogueEventTitle( + id=127, + name='Cheating_Code_II', + cn='作弊代码(其二)', + cht='作弊程式碼(其二)', + en='Cheating Code (II)', + jp='チートコード(その2)', + es='Código de trampa (II)', + option_ids=[354, 355, 356, 357], ) diff --git a/tasks/rogue/keywords/path.py b/tasks/rogue/keywords/path.py index 4b9ccaced..f177bdcfd 100644 --- a/tasks/rogue/keywords/path.py +++ b/tasks/rogue/keywords/path.py @@ -75,3 +75,57 @@ Propagation = RoguePath( jp='繁殖', es='Propagación', ) +Erudition = RoguePath( + id=9, + name='Erudition', + cn='智识', + cht='智識', + en='Erudition', + jp='知恵', + es='Erudición', +) +The_Harmony = RoguePath( + id=10, + name='The_Harmony', + cn='同谐', + cht='同諧', + en='The Harmony', + jp='調和', + es='Armonía', +) +The_Order = RoguePath( + id=11, + name='The_Order', + cn='秩序', + cht='秩序', + en='The Order', + jp='秩序', + es='Orden', +) +The_Voracity = RoguePath( + id=12, + name='The_Voracity', + cn='贪饕', + cht='貪饕', + en='The Voracity', + jp='貪慾', + es='Voracidad', +) +The_Equilibrium = RoguePath( + id=13, + name='The_Equilibrium', + cn='均衡', + cht='均衡', + en='The Equilibrium', + jp='均衡', + es='Equilibrio', +) +The_Enigmata = RoguePath( + id=14, + name='The_Enigmata', + cn='神秘', + cht='神秘', + en='The Enigmata', + jp='神秘', + es='Enigma', +) diff --git a/tasks/rogue/keywords/resonance.py b/tasks/rogue/keywords/resonance.py index 9d644d29a..4faa8dcb7 100644 --- a/tasks/rogue/keywords/resonance.py +++ b/tasks/rogue/keywords/resonance.py @@ -69,8 +69,30 @@ Resonance_Interplay_Cold_Snap = RogueResonance( path_id=1, rarity=3, ) -Path_Resonance_Remembrance = RogueResonance( +Resonance_Interplay_Reverse_Quenching = RogueResonance( id=7, + name='Resonance_Interplay_Reverse_Quenching', + cn='回响交错:逆淬火', + cht='迴響交錯:逆淬火', + en='Resonance Interplay: Reverse Quenching', + jp='反響交錯:再焼入れ', + es='Interacción de Resonancia: Templado inverso', + path_id=1, + rarity=3, +) +Resonance_Interplay_Displaced_Ascent = RogueResonance( + id=8, + name='Resonance_Interplay_Displaced_Ascent', + cn='回响交错:位错攀移', + cht='迴響交錯:位錯攀移', + en='Resonance Interplay: Displaced Ascent', + jp='反響交錯:転位上昇', + es='Interacción de Resonancia: Elevación desplazada', + path_id=1, + rarity=3, +) +Path_Resonance_Remembrance = RogueResonance( + id=9, name='Path_Resonance_Remembrance', cn='命途回响:「记忆」', cht='命途迴響:「記憶」', @@ -81,7 +103,7 @@ Path_Resonance_Remembrance = RogueResonance( rarity=3, ) Resonance_Formation_Total_Recall = RogueResonance( - id=8, + id=10, name='Resonance_Formation_Total_Recall', cn='回响构音:全面回忆', cht='迴響構音:全面回憶', @@ -92,7 +114,7 @@ Resonance_Formation_Total_Recall = RogueResonance( rarity=3, ) Resonance_Formation_Rich_Experience = RogueResonance( - id=9, + id=11, name='Resonance_Formation_Rich_Experience', cn='回响构音:体验的富翁', cht='迴響構音:體驗的富翁', @@ -103,7 +125,7 @@ Resonance_Formation_Rich_Experience = RogueResonance( rarity=3, ) Resonance_Formation_First_Love_Once_More = RogueResonance( - id=10, + id=12, name='Resonance_Formation_First_Love_Once_More', cn='回响构音:第二次初恋', cht='迴響構音:第二次初戀', @@ -114,7 +136,7 @@ Resonance_Formation_First_Love_Once_More = RogueResonance( rarity=3, ) Resonance_Interplay_Faces_Places = RogueResonance( - id=11, + id=13, name='Resonance_Interplay_Faces_Places', cn='回响交错:脸庞,村庄', cht='迴響交錯:臉龐,村莊', @@ -125,7 +147,7 @@ Resonance_Interplay_Faces_Places = RogueResonance( rarity=3, ) Resonance_Interplay_Landscape_in_the_Mist = RogueResonance( - id=12, + id=14, name='Resonance_Interplay_Landscape_in_the_Mist', cn='回响交错:雾中风景', cht='迴響交錯:霧中風景', @@ -135,8 +157,30 @@ Resonance_Interplay_Landscape_in_the_Mist = RogueResonance( path_id=2, rarity=3, ) +Resonance_Interplay_Roar_and_Rustle = RogueResonance( + id=15, + name='Resonance_Interplay_Roar_and_Rustle', + cn='回响交错:呼喊与细语', + cht='迴響交錯:呼喊與細語', + en='Resonance Interplay: Roar and Rustle', + jp='反響交錯:叫びとささやき', + es='Interacción de Resonancia: Rugido y murmullo', + path_id=2, + rarity=3, +) +Resonance_Interplay_Seemingly_Mirrored = RogueResonance( + id=16, + name='Resonance_Interplay_Seemingly_Mirrored', + cn='回响交错:犹在镜中', + cht='迴響交錯:猶在鏡中', + en='Resonance Interplay: Seemingly Mirrored', + jp='反響交錯:鏡の中にある如く', + es='Interacción de Resonancia: Aún en el espejo', + path_id=2, + rarity=3, +) Path_Resonance_Nihility = RogueResonance( - id=13, + id=17, name='Path_Resonance_Nihility', cn='命途回响:「虚无」', cht='命途迴響:「虛無」', @@ -147,7 +191,7 @@ Path_Resonance_Nihility = RogueResonance( rarity=3, ) Resonance_Formation_The_Doubtful_Fourfold_Root = RogueResonance( - id=14, + id=18, name='Resonance_Formation_The_Doubtful_Fourfold_Root', cn='回响构音:怀疑的四重根', cht='迴響構音:懷疑的四重根', @@ -158,7 +202,7 @@ Resonance_Formation_The_Doubtful_Fourfold_Root = RogueResonance( rarity=3, ) Resonance_Formation_Suffering_and_Sunshine = RogueResonance( - id=15, + id=19, name='Resonance_Formation_Suffering_and_Sunshine', cn='回响构音:苦难与阳光', cht='迴響構音:苦難與陽光', @@ -169,7 +213,7 @@ Resonance_Formation_Suffering_and_Sunshine = RogueResonance( rarity=3, ) Resonance_Formation_Outsider = RogueResonance( - id=16, + id=20, name='Resonance_Formation_Outsider', cn='回响构音:局外人', cht='迴響構音:局外人', @@ -180,7 +224,7 @@ Resonance_Formation_Outsider = RogueResonance( rarity=3, ) Resonance_Interplay_Off_the_Beaten_Track = RogueResonance( - id=17, + id=21, name='Resonance_Interplay_Off_the_Beaten_Track', cn='回响交错:林中路', cht='迴響交錯:林中路', @@ -191,7 +235,7 @@ Resonance_Interplay_Off_the_Beaten_Track = RogueResonance( rarity=3, ) Resonance_Interplay_White_Nights = RogueResonance( - id=18, + id=22, name='Resonance_Interplay_White_Nights', cn='回响交错:白夜', cht='迴響交錯:白夜', @@ -201,8 +245,30 @@ Resonance_Interplay_White_Nights = RogueResonance( path_id=3, rarity=3, ) +Resonance_Interplay_Reign_of_Keys = RogueResonance( + id=23, + name='Resonance_Interplay_Reign_of_Keys', + cn='回响交错:钥匙的统治', + cht='迴響交錯:鑰匙的統治', + en='Resonance Interplay: Reign of Keys', + jp='反響交錯:カギの統治', + es='Interacción de Resonancia: Reinado de las llaves', + path_id=3, + rarity=3, +) +Resonance_Interplay_Terror_and_Tremble = RogueResonance( + id=24, + name='Resonance_Interplay_Terror_and_Tremble', + cn='回响交错:恐惧与颤栗', + cht='迴響交錯:恐懼與顫慄', + en='Resonance Interplay: Terror and Tremble', + jp='反響交錯:恐怖と戦慄', + es='Interacción de Resonancia: Terror y temblor', + path_id=3, + rarity=3, +) Path_Resonance_Abundance = RogueResonance( - id=19, + id=25, name='Path_Resonance_Abundance', cn='命途回响:「丰饶」', cht='命途迴響:「豐饒」', @@ -213,7 +279,7 @@ Path_Resonance_Abundance = RogueResonance( rarity=3, ) Resonance_Formation_Terminal_Nirvana = RogueResonance( - id=20, + id=26, name='Resonance_Formation_Terminal_Nirvana', cn='回响构音:无余涅槃', cht='迴響構音:無餘涅槃', @@ -224,7 +290,7 @@ Resonance_Formation_Terminal_Nirvana = RogueResonance( rarity=3, ) Resonance_Formation_Anicca = RogueResonance( - id=21, + id=27, name='Resonance_Formation_Anicca', cn='回响构音:诸行无常', cht='迴響構音:諸行無常', @@ -235,7 +301,7 @@ Resonance_Formation_Anicca = RogueResonance( rarity=3, ) Resonance_Formation_Anatta = RogueResonance( - id=22, + id=28, name='Resonance_Formation_Anatta', cn='回响构音:诸法无我', cht='迴響構音:諸法無我', @@ -245,19 +311,19 @@ Resonance_Formation_Anatta = RogueResonance( path_id=4, rarity=3, ) -Resonance_Interplay_First_Illuminate_the_Mountains = RogueResonance( - id=23, - name='Resonance_Interplay_First_Illuminate_the_Mountains', +Resonance_Interplay_Mountain_High = RogueResonance( + id=29, + name='Resonance_Interplay_Mountain_High', cn='回响交错:先照高山', cht='迴響交錯:先照高山', - en='Resonance Interplay: First Illuminate the Mountains', + en='Resonance Interplay: Mountain High', jp='反響交錯:先に山を照らす', es='Interacción de Resonancia: Primero ilumina las montañas', path_id=4, rarity=3, ) Resonance_Interplay_Nullifying_Ardor = RogueResonance( - id=24, + id=30, name='Resonance_Interplay_Nullifying_Ardor', cn='回响交错:旃檀薪尽', cht='迴響交錯:旃檀薪盡', @@ -267,8 +333,30 @@ Resonance_Interplay_Nullifying_Ardor = RogueResonance( path_id=4, rarity=3, ) +Resonance_Interplay_Fleeting_Samadhi = RogueResonance( + id=31, + name='Resonance_Interplay_Fleeting_Samadhi', + cn='回响交错:般舟三昧', + cht='迴響交錯:般舟三昧', + en='Resonance Interplay: Fleeting Samadhi', + jp='反響交錯:般舟三昧', + es='Interacción de Resonancia: Samadhi efímero', + path_id=4, + rarity=3, +) +Resonance_Interplay_Destined_Death = RogueResonance( + id=32, + name='Resonance_Interplay_Destined_Death', + cn='回响交错:生即无生', + cht='迴響交錯:生即無生', + en='Resonance Interplay: Destined Death', + jp='反響交錯:生即無生', + es='Interacción de Resonancia: Muerte destinada', + path_id=4, + rarity=3, +) Path_Resonance_The_Hunt = RogueResonance( - id=25, + id=33, name='Path_Resonance_The_Hunt', cn='命途回响:「巡猎」', cht='命途迴響:「巡獵」', @@ -279,7 +367,7 @@ Path_Resonance_The_Hunt = RogueResonance( rarity=3, ) Resonance_Formation_Star_Hunter = RogueResonance( - id=26, + id=34, name='Resonance_Formation_Star_Hunter', cn='回响构音:狩星巡日', cht='迴響構音:狩星巡日', @@ -290,7 +378,7 @@ Resonance_Formation_Star_Hunter = RogueResonance( rarity=3, ) Resonance_Formation_Bow_and_Arrow = RogueResonance( - id=27, + id=35, name='Resonance_Formation_Bow_and_Arrow', cn='回响构音:柘弓危矢', cht='迴響構音:柘弓危矢', @@ -301,7 +389,7 @@ Resonance_Formation_Bow_and_Arrow = RogueResonance( rarity=3, ) Resonance_Formation_Perfect_Aim = RogueResonance( - id=28, + id=36, name='Resonance_Formation_Perfect_Aim', cn='回响构音:射不主皮', cht='迴響構音:射不主皮', @@ -312,7 +400,7 @@ Resonance_Formation_Perfect_Aim = RogueResonance( rarity=3, ) Resonance_Interplay_Startling_Breeze = RogueResonance( - id=29, + id=37, name='Resonance_Interplay_Startling_Breeze', cn='回响交错:足逸惊飙', cht='迴響交錯:足逸驚飆', @@ -323,7 +411,7 @@ Resonance_Interplay_Startling_Breeze = RogueResonance( rarity=3, ) Resonance_Interplay_Shooting_Starfire = RogueResonance( - id=30, + id=38, name='Resonance_Interplay_Shooting_Starfire', cn='回响交错:火驰星流', cht='迴響交錯:火馳星流', @@ -333,8 +421,30 @@ Resonance_Interplay_Shooting_Starfire = RogueResonance( path_id=5, rarity=3, ) +Resonance_Interplay_Solemn_Snare = RogueResonance( + id=39, + name='Resonance_Interplay_Solemn_Snare', + cn='回响交错:肃肃罝罗', + cht='迴響交錯:肅肅罝羅', + en='Resonance Interplay: Solemn Snare', + jp='反響交錯:粛々たる羅網', + es='Interacción de Resonancia: Redoble solemne', + path_id=5, + rarity=3, +) +Resonance_Interplay_Waiting_with_Drawn_Bow = RogueResonance( + id=40, + name='Resonance_Interplay_Waiting_with_Drawn_Bow', + cn='回响交错:张弓以待', + cht='迴響交錯:張弓以待', + en='Resonance Interplay: Waiting with Drawn Bow', + jp='反響交錯:弓張り時を待つ', + es='Interacción de Resonancia: Espera con arco preparado', + path_id=5, + rarity=3, +) Path_Resonance_Destruction = RogueResonance( - id=31, + id=41, name='Path_Resonance_Destruction', cn='命途回响:「毁灭」', cht='命途迴響:「毀滅」', @@ -345,7 +455,7 @@ Path_Resonance_Destruction = RogueResonance( rarity=3, ) Resonance_Formation_Cataclysmic_Variable = RogueResonance( - id=32, + id=42, name='Resonance_Formation_Cataclysmic_Variable', cn='回响构音:激变变星', cht='迴響構音:激變變星', @@ -356,7 +466,7 @@ Resonance_Formation_Cataclysmic_Variable = RogueResonance( rarity=3, ) Resonance_Formation_Extreme_Helium_Flash = RogueResonance( - id=33, + id=43, name='Resonance_Formation_Extreme_Helium_Flash', cn='回响构音:极端氦闪', cht='迴響構音:極端氦閃', @@ -367,7 +477,7 @@ Resonance_Formation_Extreme_Helium_Flash = RogueResonance( rarity=3, ) Resonance_Formation_Event_Horizon = RogueResonance( - id=34, + id=44, name='Resonance_Formation_Event_Horizon', cn='回响构音:事件视界', cht='迴響構音:事件視界', @@ -378,7 +488,7 @@ Resonance_Formation_Event_Horizon = RogueResonance( rarity=3, ) Resonance_Interplay_Substellar_Belt = RogueResonance( - id=35, + id=45, name='Resonance_Interplay_Substellar_Belt', cn='回响交错:次行星带', cht='迴響交錯:次行星帶', @@ -389,7 +499,7 @@ Resonance_Interplay_Substellar_Belt = RogueResonance( rarity=3, ) Resonance_Interplay_Zero_Age_Main_Sequence = RogueResonance( - id=36, + id=46, name='Resonance_Interplay_Zero_Age_Main_Sequence', cn='回响交错:零龄主序', cht='迴響交錯:零齡主序', @@ -399,8 +509,30 @@ Resonance_Interplay_Zero_Age_Main_Sequence = RogueResonance( path_id=6, rarity=3, ) +Resonance_Interplay_Nuclear_Implosion = RogueResonance( + id=47, + name='Resonance_Interplay_Nuclear_Implosion', + cn='回响交错:核区坍缩', + cht='迴響交錯:核區坍縮', + en='Resonance Interplay: Nuclear Implosion', + jp='反響交錯:コア崩壊', + es='Interacción de Resonancia: Colapso nuclear', + path_id=6, + rarity=3, +) +Resonance_Interplay_Protostar = RogueResonance( + id=48, + name='Resonance_Interplay_Protostar', + cn='回响交错:恒星胚胎', + cht='迴響交錯:恆星胚胎', + en='Resonance Interplay: Protostar', + jp='反響交錯:恒星胚胎', + es='Interacción de Resonancia: Embrión estelar', + path_id=6, + rarity=3, +) Path_Resonance_Elation = RogueResonance( - id=37, + id=49, name='Path_Resonance_Elation', cn='命途回响:「欢愉」', cht='命途迴響:「歡愉」', @@ -411,7 +543,7 @@ Path_Resonance_Elation = RogueResonance( rarity=3, ) Resonance_Formation_Doomsday_Carnival = RogueResonance( - id=38, + id=50, name='Resonance_Formation_Doomsday_Carnival', cn='回响构音:末日狂欢', cht='迴響構音:末日狂歡', @@ -422,7 +554,7 @@ Resonance_Formation_Doomsday_Carnival = RogueResonance( rarity=3, ) Resonance_Formation_Dance_of_Growth = RogueResonance( - id=39, + id=51, name='Resonance_Formation_Dance_of_Growth', cn='回响构音:树苗长高舞', cht='迴響構音:樹苗長高舞', @@ -433,7 +565,7 @@ Resonance_Formation_Dance_of_Growth = RogueResonance( rarity=3, ) Resonance_Formation_Instant_Win = RogueResonance( - id=40, + id=52, name='Resonance_Formation_Instant_Win', cn='回响构音:开盖有奖', cht='迴響構音:開蓋有獎', @@ -444,7 +576,7 @@ Resonance_Formation_Instant_Win = RogueResonance( rarity=3, ) Resonance_Interplay_The_Taste_of_Anglerfish = RogueResonance( - id=41, + id=53, name='Resonance_Interplay_The_Taste_of_Anglerfish', cn='回响交错:安康鱼之味', cht='迴響交錯:鮟鱇魚之味', @@ -455,7 +587,7 @@ Resonance_Interplay_The_Taste_of_Anglerfish = RogueResonance( rarity=3, ) Resonance_Interplay_Guinea_Pig_in_Ice_Coffin = RogueResonance( - id=42, + id=54, name='Resonance_Interplay_Guinea_Pig_in_Ice_Coffin', cn='回响交错:冰棺与豚鼠', cht='迴響交錯:冰棺與豚鼠', @@ -465,8 +597,30 @@ Resonance_Interplay_Guinea_Pig_in_Ice_Coffin = RogueResonance( path_id=7, rarity=3, ) +Resonance_Interplay_Unending_Night = RogueResonance( + id=55, + name='Resonance_Interplay_Unending_Night', + cn='回响交错:夜以继夜', + cht='迴響交錯:夜以繼夜', + en='Resonance Interplay: Unending Night', + jp='反響交錯:すべて真夜中', + es='Interacción de Resonancia: Noche interminable', + path_id=7, + rarity=3, +) +Resonance_Interplay_Pit_and_Pendulum = RogueResonance( + id=56, + name='Resonance_Interplay_Pit_and_Pendulum', + cn='回响交错:深坑、钟摆', + cht='迴響交錯:深坑、鐘擺', + en='Resonance Interplay: Pit and Pendulum', + jp='反響交錯:落とし穴と振り子', + es='Interacción de Resonancia: Pozo y péndulo', + path_id=7, + rarity=3, +) Path_Resonance_Propagation = RogueResonance( - id=43, + id=57, name='Path_Resonance_Propagation', cn='命途回响:「繁育」', cht='命途迴響:「繁育」', @@ -477,7 +631,7 @@ Path_Resonance_Propagation = RogueResonance( rarity=3, ) Resonance_Formation_Proboscis = RogueResonance( - id=44, + id=58, name='Resonance_Formation_Proboscis', cn='回响构音:刺吸口器', cht='迴響構音:刺吸口器', @@ -488,7 +642,7 @@ Resonance_Formation_Proboscis = RogueResonance( rarity=3, ) Resonance_Formation_Phenol_Compounds = RogueResonance( - id=45, + id=59, name='Resonance_Formation_Phenol_Compounds', cn='回响构音:酚类物质', cht='迴響構音:酚類物質', @@ -499,7 +653,7 @@ Resonance_Formation_Phenol_Compounds = RogueResonance( rarity=3, ) Resonance_Formation_Crystal_Pincers = RogueResonance( - id=46, + id=60, name='Resonance_Formation_Crystal_Pincers', cn='回响构音:结晶螯刺', cht='迴響構音:結晶螯刺', @@ -510,7 +664,7 @@ Resonance_Formation_Crystal_Pincers = RogueResonance( rarity=3, ) Resonance_Interplay_Superposition_Eye = RogueResonance( - id=47, + id=61, name='Resonance_Interplay_Superposition_Eye', cn='回响交错:重叠象眼', cht='迴響交錯:重疊象眼', @@ -521,7 +675,7 @@ Resonance_Interplay_Superposition_Eye = RogueResonance( rarity=3, ) Resonance_Interplay_Adherent_Microbial_Mat = RogueResonance( - id=48, + id=62, name='Resonance_Interplay_Adherent_Microbial_Mat', cn='回响交错:附着菌毯', cht='迴響交錯:附著菌毯', @@ -531,3 +685,91 @@ Resonance_Interplay_Adherent_Microbial_Mat = RogueResonance( path_id=8, rarity=3, ) +Resonance_Interplay_Compounded_Macrospore = RogueResonance( + id=63, + name='Resonance_Interplay_Compounded_Macrospore', + cn='回响交错:复大孢子', + cht='迴響交錯:複大孢子', + en='Resonance Interplay: Compounded Macrospore', + jp='反響交錯:増大胞子', + es='Interacción de Resonancia: Macroespora compuesta', + path_id=8, + rarity=3, +) +Resonance_Interplay_Condensation_Cavity = RogueResonance( + id=64, + name='Resonance_Interplay_Condensation_Cavity', + cn='回响交错:冷凝腔体', + cht='迴響交錯:冷凝腔體', + en='Resonance Interplay: Condensation Cavity', + jp='反響交錯:凝縮腔体', + es='Interacción de Resonancia: Cavidad de condensación', + path_id=8, + rarity=3, +) +Path_Resonance_Erudition = RogueResonance( + id=65, + name='Path_Resonance_Erudition', + cn='命途回响:「智识」', + cht='命途迴響:「智識」', + en='Path Resonance: "Erudition"', + jp='運命の反響:「知恵」', + es='Resonancia de Vía: Erudición', + path_id=9, + rarity=3, +) +Resonance_Formation_Melt_Core = RogueResonance( + id=66, + name='Resonance_Formation_Melt_Core', + cn='回响构音:核心熔毁', + cht='迴響構音:核心熔毀', + en='Resonance Formation: Melt Core', + jp='反響構音:メルトダウン', + es='Formación de Resonancia: Fusión del núcleo', + path_id=9, + rarity=3, +) +Resonance_Formation_Chain_Contagion = RogueResonance( + id=67, + name='Resonance_Formation_Chain_Contagion', + cn='回响构音:连带传染', + cht='迴響構音:連帶傳染', + en='Resonance Formation: Chain Contagion', + jp='反響構音:連帯伝染', + es='Formación de Resonancia: Contagio en cadena', + path_id=9, + rarity=3, +) +Resonance_Formation_Memetic_Inversion = RogueResonance( + id=68, + name='Resonance_Formation_Memetic_Inversion', + cn='回响构音:模因逆推', + cht='迴響構音:迷因逆推', + en='Resonance Formation: Memetic Inversion', + jp='反響構音:ミーム遡及', + es='Formación de Resonancia: Inversión memética', + path_id=9, + rarity=3, +) +Resonance_Interplay_Full_Scan = RogueResonance( + id=69, + name='Resonance_Interplay_Full_Scan', + cn='回响交错:全盘扫描', + cht='迴響交錯:全盤掃描', + en='Resonance Interplay: Full Scan', + jp='反響交錯:フルスキャン', + es='Interacción de Resonancia: Escaneo completo', + path_id=9, + rarity=3, +) +Resonance_Interplay_Data_Reinforcement = RogueResonance( + id=70, + name='Resonance_Interplay_Data_Reinforcement', + cn='回响交错:数据加固', + cht='迴響交錯:數據加固', + en='Resonance Interplay: Data Reinforcement', + jp='反響交錯:セキュリティ強化', + es='Interacción de Resonancia: Refuerzo de datos', + path_id=9, + rarity=3, +) From 523bc0f44cc40049fdc1400ca983b20f8680b92a Mon Sep 17 00:00:00 2001 From: X-Zero-L Date: Wed, 27 Dec 2023 13:15:45 +0800 Subject: [PATCH 02/16] Fix: Rename keyword in dungeon --- tasks/dungeon/dungeon.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/tasks/dungeon/dungeon.py b/tasks/dungeon/dungeon.py index 89442a489..c4115189d 100644 --- a/tasks/dungeon/dungeon.py +++ b/tasks/dungeon/dungeon.py @@ -268,8 +268,8 @@ class Dungeon(DungeonStamina, DungeonEvent, Combat): with self.config.multi_set(): # Check battle pass quests = self.config.stored.BattlePassTodayQuest.load_quests() - if KEYWORD_BATTLE_PASS_QUEST.Consume_1_Trailblaze_Power in quests: - logger.info('Probably achieved battle pass quest Consume_1_Trailblaze_Power') + if KEYWORD_BATTLE_PASS_QUEST.Consume_a_total_of_1_Trailblaze_Power_1400_Trailblazer_Power_max in quests: + logger.info('Probably achieved battle pass quest Consume_a_total_of_1_Trailblaze_Power_1400_Trailblazer_Power_max') if self.config.stored.BattlePassLevel.is_full(): logger.info('BattlePassLevel full, no task call') else: From 3e4a528a5fd40fbc3ef00cc2344b44d079d73b4d Mon Sep 17 00:00:00 2001 From: X-Zero-L Date: Wed, 27 Dec 2023 13:18:41 +0800 Subject: [PATCH 03/16] Fix: Rename keyword in daily quest --- tasks/daily/daily_quest.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/tasks/daily/daily_quest.py b/tasks/daily/daily_quest.py index 5f2d8e709..425619026 100644 --- a/tasks/daily/daily_quest.py +++ b/tasks/daily/daily_quest.py @@ -321,8 +321,8 @@ class DailyQuestUI(DungeonUI, RouteLoader): # Check battle pass if self.config.stored.DailyActivity.value == 500: quests = self.config.stored.BattlePassTodayQuest.load_quests() - if KEYWORD_BATTLE_PASS_QUEST.Reach_500_on_Daily_Training_Activity in quests: - logger.info('Achieved battle pass quest Reach_500_on_Daily_Training_Activity') + if KEYWORD_BATTLE_PASS_QUEST.Consume_a_total_of_1_Trailblaze_Power_1400_Trailblazer_Power_max in quests: + logger.info('Achieved battle pass quest Consume_a_total_of_1_Trailblaze_Power_1400_Trailblazer_Power_max') if self.config.stored.BattlePassLevel.is_full(): logger.info('BattlePassLevel full, no task call') else: From cde23a479e4faf0e4e40e320f7825d1977511cc3 Mon Sep 17 00:00:00 2001 From: X-Zero-L Date: Wed, 27 Dec 2023 13:22:35 +0800 Subject: [PATCH 04/16] Fix: Rename keyword in assignment --- tasks/assignment/assignment.py | 14 ++++---------- 1 file changed, 4 insertions(+), 10 deletions(-) diff --git a/tasks/assignment/assignment.py b/tasks/assignment/assignment.py index 2174548e9..116b631ce 100644 --- a/tasks/assignment/assignment.py +++ b/tasks/assignment/assignment.py @@ -63,21 +63,15 @@ class Assignment(AssignmentClaim, SynthesizeUI): # Scheduler logger.attr('has_new_dispatch', self.has_new_dispatch) with self.config.multi_set(): - # Check battle pass - quests = self.config.stored.BattlePassTodayQuest.load_quests() - if self.has_new_dispatch: - if KEYWORD_BATTLE_PASS_QUEST.Dispatch_1_assignments in quests: - logger.info( - 'Achieved battle pass quest Dispatch_1_assignments') - if self.config.stored.BattlePassLevel.is_full(): - logger.info('BattlePassLevel full, no task call') - else: - self.config.task_call('BattlePass') # Check daily quests = self.config.stored.DailyQuest.load_quests() if KEYWORDS_DAILY_QUEST.Go_on_assignment_1_time in quests: logger.info('Achieved daily quest Go_on_assignment_1_time') self.config.task_call('DailyQuest') + if self.has_new_dispatch: + if KEYWORDS_DAILY_QUEST.Dispatch_1_assignments in quests: + logger.info('Achieved daily quest Dispatch_1_assignments') + self.config.task_call('DailyQuest') # Delay self if len(self.dispatched): delay = min(self.dispatched.values()) From 12997ca42144e649392ade5dd2f12479889ec6e8 Mon Sep 17 00:00:00 2001 From: X-Zero-L Date: Wed, 27 Dec 2023 14:18:17 +0800 Subject: [PATCH 05/16] Upd: rogue assets --- assets/share/base/page/ROGUE_CHECK.png | Bin 8093 -> 8680 bytes assets/share/rogue/entry/OCR_WORLD.png | Bin 11377 -> 12263 bytes assets/share/rogue/path/CHECK_ABUNDANCE.png | Bin 9714 -> 11244 bytes assets/share/rogue/path/CHECK_DESTRUCTION.png | Bin 8647 -> 10274 bytes assets/share/rogue/path/CHECK_ELATION.png | Bin 8528 -> 8786 bytes assets/share/rogue/path/CHECK_NIHILITY.png | Bin 8876 -> 9120 bytes .../share/rogue/path/CHECK_PRESERVATION.png | Bin 9335 -> 9094 bytes assets/share/rogue/path/CHECK_THE_HUNT.png | Bin 9815 -> 11729 bytes assets/share/rogue/path/CLICK_REMEMBRANCE.png | Bin 9889 -> 8027 bytes .../share/rogue/path/CONFIRM_PATH.BUTTON.png | Bin 9135 -> 9971 bytes assets/share/rogue/path/CONFIRM_PATH.png | Bin 6797 -> 6800 bytes .../rogue/weekly/REWARD_ENTER.BUTTON.png | Bin 17268 -> 9334 bytes assets/share/rogue/weekly/REWARD_ENTER.png | Bin 7925 -> 7907 bytes tasks/base/assets/assets_base_page.py | 8 +-- tasks/rogue/assets/assets_rogue_entry.py | 8 +-- tasks/rogue/assets/assets_rogue_path.py | 64 +++++++++--------- tasks/rogue/assets/assets_rogue_weekly.py | 8 +-- 17 files changed, 44 insertions(+), 44 deletions(-) diff --git a/assets/share/base/page/ROGUE_CHECK.png b/assets/share/base/page/ROGUE_CHECK.png index 8f4118d1e6bdd2ea86d33072deb0e4bce1c7913f..69db4403544307a91318e130e34cd5e65a412149 100644 GIT binary patch literal 8680 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 AXaE2J literal 8093 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 KPs)_uef%FS%K7C0 diff --git a/assets/share/rogue/entry/OCR_WORLD.png b/assets/share/rogue/entry/OCR_WORLD.png index cb24908b87e1aafe4d6bd311d23cb81c4710783d..041ea2d2700af20cfc67f671f7b224e948a418ce 100644 GIT binary patch literal 12263 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 literal 11377 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 diff --git a/assets/share/rogue/path/CHECK_ABUNDANCE.png b/assets/share/rogue/path/CHECK_ABUNDANCE.png index 706ba5e0d689ff7806aa4034705bad84d58e5965..2a77ddffc049bc594de1063f711225835b8cd5af 100644 GIT binary patch literal 11244 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 literal 9714 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 H>fQeV3w)fr diff --git a/assets/share/rogue/path/CHECK_DESTRUCTION.png b/assets/share/rogue/path/CHECK_DESTRUCTION.png index cfca8536db2a5a2f15c6a9c49c4534e44a933cfb..8d9b83b14b741cedc8f7665aefe213ad2f47c008 100644 GIT binary patch literal 10274 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 literal 8647 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 literal 8528 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 diff --git a/assets/share/rogue/path/CHECK_NIHILITY.png b/assets/share/rogue/path/CHECK_NIHILITY.png index 91e8c0108207d14a999beddd682c91ec34606cd0..727ef6cd34cb4c63dd7b7bb8f3d99a31f7afc261 100644 GIT binary patch literal 9120 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 diff --git a/assets/share/rogue/path/CHECK_PRESERVATION.png b/assets/share/rogue/path/CHECK_PRESERVATION.png index db7fb473863500b6e2090ba75924b7487c1b46da..215ff1fddf7a95ebfe7fda7bc92d0eb5de27ad8a 100644 GIT binary patch literal 9094 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 literal 9335 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 f|2qOHBp3~_3dPZ&*A9hI`jFW>$Tj`Ya@ diff --git a/assets/share/rogue/path/CHECK_THE_HUNT.png b/assets/share/rogue/path/CHECK_THE_HUNT.png index 0bebf8f4bac937669e21811c5441de1acdc3f1a1..df406887dc9c374e54333aecacb10ebe0572e877 100644 GIT binary patch literal 11729 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 diff --git a/assets/share/rogue/path/CLICK_REMEMBRANCE.png b/assets/share/rogue/path/CLICK_REMEMBRANCE.png index 71a4203d71d8ee9073ddd75f3237d76e1fb01a98..def4c5c2bed925ca22dbc39aaafb2466e6bf4494 100644 GIT binary patch literal 8027 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 Ue=zQXVJ+mu@x)`SqnS1T4SZ1aP5=M^ literal 9889 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 Wuzl$~na+RCf1vq9qv-zgH~$AasPMM{ diff --git a/assets/share/rogue/path/CONFIRM_PATH.BUTTON.png b/assets/share/rogue/path/CONFIRM_PATH.BUTTON.png index 8d43372c3a94cc38881ce377e5e5a06cd4918fe4..32f363ba4bd29a4405c21fde284e842ab5c8ce65 100644 GIT binary patch literal 9971 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 G&;J5^=XNFl literal 9135 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
FE*bc}l9FgWaFQzZ;} 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 Swn45liyEqrA5Km;1wg9)8HP^6h7Td%xe>`+L{B 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 diff --git a/assets/share/rogue/weekly/REWARD_ENTER.png b/assets/share/rogue/weekly/REWARD_ENTER.png index 23e66f527fe89dccc481ec3ef4eb082dce92097c..f22bd21aa190f826b8233afe1d372a5aca7167d4 100644 GIT binary patch literal 7907 zcmeHMYgCfi8YV4Ao77sJrs-lf(;8i^nWp9#rYKR<#mWh~DG4Dql@^HDD4-yUdD7{W zIWu;dyw;dk6fi{$6l^@@sl25i3L;+03y5e47}xVLt@HQ%J%9M|t#|M5Ti<&3e)s!4 z@3Z&5aRMIZxpL!55D4UX^vJC)@&2ACeYA`%4JQgig+{xc~>vkF>g35njZ zpiP=xbD6Mx#WA$U#N{>1{DZv8v)#{pb7z0%ovkN4y>gNp^1sT?^vF39^YbX9+2h&g zch5(C$ssW+SQEQ~&t6>paI;(EoqH?q^z|p5Wih7>(plRzbH4QJr%BK&rDkf0I>Anz zGMedv8eB6l3J~Ln!WOj*Xl%U?a(BFVwtSz%xch-z0JCq`vel06H4lcvto{MC959R+ zm#vQO^0lD9e*N9~t20c_lyD-)$r4URbQTV0k#q_Ir*3j;M5mN?ZX29iB>9QJ*IW}R6gCNMdNxmM z78EAb0>k1(hT4B5DERLV%#S(_Wiv+TUIx7$d=S34xPHU!{Ii&wxTmDpr6im1BT0$DHBxU@D$-radc_5;!u{@fl;ZjXA_S)^IE5rnz zVj#gtw=8t1mL~Gp2fU%2$d-8&h9rs5zt}_+7X>Hba(oW+wl@ZU%ej#ORmi(n&8n+q zcE$$MySvDNm;OD39+$M46>)!^nDz!k$SV`qP8$X<IYaDbYUO?#|E+tp#av8wD=|rNkmAt<%RZnEnRjQZRpvHR$wAp6%kpk60fyG5RN7; zegtwhWG;x$5}H)hrLi3OI)-DddyhgOpuo8IKIuzilK%eFFxx^NUfXJ9ElhOqPSZPb zHzCZ*M0}`PfnRpR`$|!AkF1 zAR#2ra?)xK-`*U>78*{`%_dP@0362jWE}q{e#F%=&*H~fl^{fwafHT>WTn-0L)5h@ zt(N(wEKK^Z8~L(2VOLOIspYLdsq?!Iaa-Fy=zN=16F4@hj@8GMZFv9P?&i8o;o|!w zeVePd_}?e#n$O0=cM2Xyvd%^I!0g}Gp|~|bJEF3fjKW;~aLIQ*-{H2+pdMYvP=I&u zKF36|S;dr*r@85LI$a_Ucrqul+xWUlN+UX}Fv(UhwzW$ojJ-69p(rADiY!01>IcvS z_act23NrmL3pY3X6buAo;~t^NXZid75L-PwXdwwarSq3sKIrgchq~#cg*pKWCP{A6Y(iW9S6Bj~XK(-E@*4?Ff1F`%<-$fYHI=m})5c|yjJDzT)&^Eur7YlSI; z@xF6ZduZDvU4fCa4ruK~vCR1$yx~4LNcds05Y`*#xKd%**|$9zU8(724G*iJs_VGP zGks)<@?@A#1jX8qP*)U+(7-o@-e?5KdY>Y>pMp2cPN=&>v{hKEs(NGa6P_1zvDeTk z@>ol*$$W(4eIQea=6zH?AD>u-Q^!b1QVg~suJmjk%$5Sxbq4re^Z!VB()!a3QPcEq z1-q}DqQC1Ao%_T$EpZ3drZ#j60cf`vhT^Ej$$h0wOmq6eO{{o!s6nkOh1FLeN~3Rn zW{sdv26PNGUOA0di6^(4?92`;w)F2{phgbvJj~)H2Tb z1BBuE?oVv9j>vLaA>wB5r&;ARS!R>8b%asm955<*Ykms%*60As(Vkm^3 zCH!uG7cZ~Kt_J~?WF_5*YEC>)%T|s*zlneI$02TPR{?*r0I$-6iQ>j9{W7Bnpdd~1 zSS)S+(0a@nm}SgcjxQVfa@Z~?bRcD4&NNkYmsHe|Vf}H_;%C-(NI5~+5ZeVXx*w7D zhrOIvDa+i_we^?qZ=XIcNi}^a2u=N|IPLvQ%?8E=^6(>{zxAzJw_#7hIlW<#7iR^# z9w_*HFn*`dAj9KhVyb+0KOyVGZA6Ew-tQoRppsyFk81qpPFAZ?Rwi7?6;-!;nJ0i6 zJp|s}q6rn%*so-w-P~j;#zLi~0v@98l(nQL3C4+ui5&7~Sb|)veDufwriuq4K+?!( zL{p_1=>q;d09f{~+rmC&0FFS(MYo}@i3&ami1u#)%VW7?2^tw!U%nG_Ry~r&b5p`< zh%t$Bu7Jt&OgC#q849{lLHhR>IpTpGSzr#Ss6r2VZz`OLn!Ro}03u z5MkF1Din(JJe}R)W%^)O+i-Zu!g}S^%9lWuLW4ukOuWctulTgP4tSVlc_mTzvFWMD zAN;+%0?u2;$i8I@A=w$r*em-kA;yxWM1x3XjAbNC3?})~w=broA=lyy=&-?w{=N+g2M3a&J3OxV-jM`f2 zh5$fKzNP$4OGy^WypJfzg3e3J!WRG-F8#eIfSlaR06?$nqNb*=|H2dO>HEUdi%(lk zjnB)+)5*on5dZ=w@{9t^(+M1kGXzIwQ`NEU>MXZcfPf&3_7{sq5zAY^E|P^+xjibD z-jt2~Vy>1++v{O^t-RRz55fp%mH61F2_{x@TfErP@1a5X&CTP{<3?OA?xYWbVUD=S zDwMWd^b)vd81+DYj5kG3tF5akf|6Zp_8cF}GP>27x*Y(vsUU%2;IB$26jh!8CEztI zc8#@j?(7XxU&svLO9N&FSaA##sfNHWG2>rsz^}`|SEFyw>4A3u;06g%6#&W^fsH+F zMQUKIEFB91#)`PhXn`aOAX`}T8l`dr@XX|u;cd#6R^S6nSwQSuOC?2wMV*8uWkeG- z;Gb-s%B=hhh{#sG-2?E+Q37gLFZELK=}>*RGk}^cv-OHXXi)$y=#1X1#{-gVh>YJ? z0{(2z&hyW=x>c*%fo`%m(Jcz(W)L z>bmVIpvb>7bK00lc@AKCg27MNE-j5vd392J^+UOqSppNLz>688wd5q-ho|(vgNO+b zxfA89`Gxww9`JC}Gcaskw=ZnEvyh;8COPLhn-F$DetJ3?v<-OYC}&r+6u%*P+j;m` z8Ybh==Tz@{5O9L0ol)VW$1!S{|^do?ndMrZ2pl zslsX8B0qNS`&X(fA1>z1vDE&!E60eNWwm;>?gcvk>~enV<;G~bb1J`RFWK?S$6mBg z9uw%J1!X6n6R^{gdK*!~w;Ic4AkhBHr-ZUh^<|p1mf#;zAGUi*R?0`IlfU>R;!olm zHSfNARbxOkMCqqo|C#qne8&ghey|j?bwp;7YyXwns|pcyMWy|ZSNy<0Xne9mME_kT zr^InPtHckWbQ&w91jgII}ef%fv%spb!1LR#6Qt(~Gn<5iq{2Glgk|8$jZJ(_l!hVY z48~tfn7`PVhJJcz@=brCjBbeI%WxTwNkf@TWuIYyVTwM+z_z&Amh}3_fw3k!>fwiI ztzu&bcn4<^KSzgzt1N`fbSHc{@n9VzHQ#b4m{Xcl-m-Tu z1ye`$?DoC!+(&)ku8rh-!?~{ccFp6BlP5`0A2o8@A0@~n zbY@OuhM=i4bu$UD_oj-b5Yv6rQJD6K)%xvq_YpHUeJ(TT1*kj}UH7>HTG8eYb)R9I zXG^&`aC6_tW8&_{$p-yK&c^x8dk1z0*ALteFg!intUM$4!S_RazIT!lo?Mj0_Jx)clX8C72ftwvYqg2ltDi4Nz>wxcksl zk3xIsmt$QqC|8&DPX)Zn-ZsH}-n(ZZuM}F^x|@m)A1 z%h@J$@H2Tu1;?YlRVu{}MaqJpf|%w{%>pwD&4OVgVcB6cC;7+skISq)`D3&OiUR`v5lbJ&0)A`s<>SAj8y8ar96;7ix& zHscoC#@ZC(7JMmjZaI>jY*9UEd9@FnAMn6J+9EYXF6upNR*llq8$MNi z@ymKkr5?IGm;OXTqx3YIi;{{As^N%758f{4nPwcwP2CSwJ9-hV_t39Hl1|T11d_)2 zwq9^o*HnFE8ipD79v8j$F85t-u_2>NX06ER9k?)D&q+iiopBMe?B30l9@9-&6eRlY zPO`g2>GT)Z8dmBvap;JD774VxY#E5qYSMZ-Bst@Bx<(Xac+C;gl=@X4@%7snBG6)I zRsf~Zz#*7m1PTzlYi)>p9_X??5Q=_*uE`|n&zl>X{CNq%{z*1`Gw|`Fn#gN2sf@CB zU1*QWy{GjK>~_glqCZ-?3yEoUh z)=SnsU<3;9aISJnZ+U@$WVozl#K#xi)Ep?t2Vuy`D9TXC{zudyP-_dRV{h1C1`}_1avbe;Jeq;TTHDg zOFwSRdhXEjW|5(vDd1Ggn~ z?M~xTthXDz_5=v_lh@&oD-@?9_Gk_ZJ`_w!$>ZhaV!YDy=XqcHTxm_|B}{ji=^13* z_X}=@G=KaUV}3HW%|J}Rpei9{yFU0YWmWQ>f}OmLeGrA6PbU?9lc9J79y!z5#G5UA zqI{~q+kfQHS^8U#poj}OJrO5F?jBzsD3By)n|uyhhPnU{bR7U9-T(mcj4W3H!0!$K ztUUt&`S$<-@_cLC{ty7z1hmyvi~}b&ur8@4OL;W21nlG#9E7w)R;N{PsdHRpYo}&> z$nCAc&(EG${U`~o?(lmSxZ9Q}V#*n((Rx|)2A!msbbJS5_I3ZWY8r0NgAaC>C|+fL zBs7P5&Peh;jWaodYzSeDN|8^d6mgq`>7!8MFbYriH!J?v{t@^`;2(j11pX2DN8lfU z|2G5O@8@4Y)2#2X*DA5E3!N}RlAXdWNQ%vRj2!q?dfgh2x8aH)c@bKRbHQ_7}f(smH2XrFNqh=NV#{dF%YA zqI<)MULA?|ZNirJd9m_-^KIy@hJX%qRb#bN?-~Y_xI|{GOtA$Hx@zV(ns}3OUssa% z{Wn)kzFG`Z8^4*2sl@!^rK*O5a^qWPv#-=bj}NZMgS}K#encnnZj3iMuMWuK`a+j+ z%x7zLlg;6nseot}CrlWuuyA$vx*!j^toc{F$KkY+v@HC={t!L@KR$__NOi?5&tpqz zm@3V8Y-}WQfkuTvLW8nJK-Zg3DPn$Q@%4lLDqpbn#UCtq}rOAqRL9| zuD9$C9f`?BT1;fylY`>K;0p^u2k)iVt505Ue+wtg!BKwRVJbGX-U9UFZvH#-?4DwQ zH^fnV@vQFIJ%f6f`=^I%yBMW_p870C&IjAown_ultvS-`{u_tF;!4EdYTw9-GBAr* zAB6%{L7sjpD)#Fmn?UWsEe2KVx)A}J6Z>7$ zq4ieB-_A(KQ^5yfR*1l!_utO%;mNgI9id=EWntZcvhQP88K|g;$UWS~x9K2PyIUrK zr(?b;u8qIt3}c6jGLV&D4=8>{zqrrqH&@(5kQ zq2x(>X`x4ZYY2FSsHAh>LR3@+zdHGdKPBzdAG^BxJtIS=MhxBy-?$eQMI;gpWT24c zY@Bm%5coJbG+W1M@z+Jik5e5fD6*Gld@(gMBe-~YgzXQ@LZQ%6m^I3wQxnr0yn~ol zv&ln!_`d&)mOoN1-DR@I@A!A2vvuH3$|Aqa#}~{HebF_7OC^dr8#={+6W(jI1cDcbsc=G^mlw z&N`YryVqIRq;N@9ERqE`|6C&N37kjX81BCrt)1R{gM*Auv!GIz!Uh$lCX}8n<Xjy<-D4fiHyJXX7wo zXU`z4<|&<&@SE9^@&@&kD!$(N_@9H>qJF5I7h;WLX>E;qoF9DpQCOWnQh4q1O0--g zOOe|r$KB-=)mY4fg(1>+nm@a{rBCu6_`Rg%PgFSja!~9AKO6doiYc$7ym4e2rIye%6kryeI9DHmzQtxAg` zO*LAH1rQIbWwC*l@>BlLqaKSL#U!V@$prU}JJbHBLc86&(V??1c`$j6D`p#h09{`} z6_(v>3fzfb9rQ?9z&fOyZT;FDwI-y*sSC6fe)@#3?mS@myURq4kjy!oc&*e-@~{qd z5J-zH5>C_FldJP-+b+CO@BjvbNky`#vdzmedDk_OPHAwtUab+l*bq|j*#Xpj(w~f6 zSpM{o;^W8b{E?O(^)`Q%u9S2nHPkjXnwgmBR@qQ>cLyb3@$>f`{80xEbw$sSjuo3v zkD&Ak$s)Jb%#5w9|DJ{lp+|{F$O*;JwYq3$=JQDpvWQ(J19BLiSb+%8XALM{V=6vOua@dAq<^emB2D99`L;r)x`9Kkkdm0cXQr^BXkqd;Prh&%ILNma3J7D^^Zp|3AG@|__L7Rb6km9=mCy0+GQBVX=tC{6Iu+I=8t2++uw=e%$yQM&6Nk}g_&f!ZD*sI5hOX+C@Lwz%xf^< z8+S{W92H7+^N@Bw*LWtCu+^kDDsQ4qO!j%CUYPssw{&;gC1 zSwXyLdRGXpK~~K2AdH+hVL3GFPfkwU>M8=N@=3>|d%XHa76t~!R_}YA{=#Som}!LU lUL!AC|JwgKftAElPoT%$K$p(S>e*lI+8R&PD^;Jp{vSjolqUcH diff --git a/tasks/base/assets/assets_base_page.py b/tasks/base/assets/assets_base_page.py index 4ea863018..1f6c8b2b4 100644 --- a/tasks/base/assets/assets_base_page.py +++ b/tasks/base/assets/assets_base_page.py @@ -356,10 +356,10 @@ ROGUE_CHECK = ButtonWrapper( name='ROGUE_CHECK', share=Button( file='./assets/share/base/page/ROGUE_CHECK.png', - area=(40, 19, 73, 49), - search=(20, 0, 93, 69), - color=(104, 96, 90), - button=(40, 19, 73, 49), + area=(39, 17, 76, 51), + search=(19, 0, 96, 71), + color=(81, 74, 76), + button=(39, 17, 76, 51), ), ) SYNTHESIZE_CHECK = ButtonWrapper( diff --git a/tasks/rogue/assets/assets_rogue_entry.py b/tasks/rogue/assets/assets_rogue_entry.py index c7c219a1e..9b51156c6 100644 --- a/tasks/rogue/assets/assets_rogue_entry.py +++ b/tasks/rogue/assets/assets_rogue_entry.py @@ -27,10 +27,10 @@ OCR_WORLD = ButtonWrapper( name='OCR_WORLD', share=Button( file='./assets/share/rogue/entry/OCR_WORLD.png', - area=(500, 362, 700, 390), - search=(480, 342, 720, 410), - color=(51, 51, 62), - button=(500, 362, 700, 390), + area=(518, 342, 623, 370), + search=(498, 322, 643, 390), + color=(84, 83, 101), + button=(518, 342, 623, 370), ), ) WORLD_ENTER = ButtonWrapper( diff --git a/tasks/rogue/assets/assets_rogue_path.py b/tasks/rogue/assets/assets_rogue_path.py index 9ed78a752..f94f7906e 100644 --- a/tasks/rogue/assets/assets_rogue_path.py +++ b/tasks/rogue/assets/assets_rogue_path.py @@ -17,50 +17,50 @@ CHECK_ABUNDANCE = ButtonWrapper( name='CHECK_ABUNDANCE', share=Button( file='./assets/share/rogue/path/CHECK_ABUNDANCE.png', - area=(202, 315, 252, 365), - search=(182, 295, 272, 385), - color=(143, 120, 86), - button=(202, 315, 252, 365), + area=(198, 266, 233, 327), + search=(178, 246, 253, 347), + color=(141, 120, 86), + button=(198, 266, 233, 327), ), ) CHECK_DESTRUCTION = ButtonWrapper( name='CHECK_DESTRUCTION', share=Button( file='./assets/share/rogue/path/CHECK_DESTRUCTION.png', - area=(219, 336, 269, 386), - search=(199, 316, 289, 406), - color=(131, 109, 78), - button=(219, 336, 269, 386), + area=(221, 306, 272, 349), + search=(201, 286, 292, 369), + color=(130, 109, 77), + button=(221, 306, 272, 349), ), ) CHECK_ELATION = ButtonWrapper( name='CHECK_ELATION', share=Button( file='./assets/share/rogue/path/CHECK_ELATION.png', - area=(220, 309, 270, 359), - search=(200, 289, 290, 379), - color=(142, 119, 85), - button=(220, 309, 270, 359), + area=(228, 275, 266, 320), + search=(208, 255, 286, 340), + color=(152, 129, 91), + button=(228, 275, 266, 320), ), ) CHECK_NIHILITY = ButtonWrapper( name='CHECK_NIHILITY', share=Button( file='./assets/share/rogue/path/CHECK_NIHILITY.png', - area=(220, 306, 270, 356), - search=(200, 286, 290, 376), - color=(130, 106, 75), - button=(220, 306, 270, 356), + area=(230, 267, 257, 318), + search=(210, 247, 277, 338), + color=(135, 111, 77), + button=(230, 267, 257, 318), ), ) CHECK_PRESERVATION = ButtonWrapper( name='CHECK_PRESERVATION', share=Button( file='./assets/share/rogue/path/CHECK_PRESERVATION.png', - area=(220, 308, 270, 358), - search=(200, 288, 290, 378), - color=(144, 120, 86), - button=(220, 308, 270, 358), + area=(223, 284, 271, 314), + search=(203, 264, 291, 334), + color=(146, 122, 85), + button=(223, 284, 271, 314), ), ) CHECK_PROPAGATION = ButtonWrapper( @@ -87,10 +87,10 @@ CHECK_THE_HUNT = ButtonWrapper( name='CHECK_THE_HUNT', share=Button( file='./assets/share/rogue/path/CHECK_THE_HUNT.png', - area=(221, 324, 271, 374), - search=(201, 304, 291, 394), - color=(127, 104, 74), - button=(221, 324, 271, 374), + area=(221, 279, 266, 340), + search=(201, 259, 286, 360), + color=(119, 97, 66), + button=(221, 279, 266, 340), ), ) CHOOSE_LEFT = ButtonWrapper( @@ -167,10 +167,10 @@ CLICK_REMEMBRANCE = ButtonWrapper( name='CLICK_REMEMBRANCE', share=Button( file='./assets/share/rogue/path/CLICK_REMEMBRANCE.png', - area=(278, 362, 328, 412), - search=(258, 342, 348, 432), - color=(61, 62, 69), - button=(278, 362, 328, 412), + area=(231, 305, 263, 344), + search=(211, 285, 283, 364), + color=(131, 110, 77), + button=(231, 305, 263, 344), ), ) CLICK_THE_HUNT = ButtonWrapper( @@ -187,10 +187,10 @@ CONFIRM_PATH = ButtonWrapper( name='CONFIRM_PATH', share=Button( file='./assets/share/rogue/path/CONFIRM_PATH.png', - area=(845, 634, 868, 681), - search=(825, 614, 888, 701), - color=(178, 178, 178), - button=(865, 640, 1139, 675), + area=(937, 632, 963, 679), + search=(917, 612, 983, 699), + color=(193, 194, 194), + button=(959, 638, 1238, 675), ), ) PAGE_ROGUE_PATH = ButtonWrapper( diff --git a/tasks/rogue/assets/assets_rogue_weekly.py b/tasks/rogue/assets/assets_rogue_weekly.py index b87040bf1..ba29c3ca5 100644 --- a/tasks/rogue/assets/assets_rogue_weekly.py +++ b/tasks/rogue/assets/assets_rogue_weekly.py @@ -37,10 +37,10 @@ REWARD_ENTER = ButtonWrapper( name='REWARD_ENTER', share=Button( file='./assets/share/rogue/weekly/REWARD_ENTER.png', - area=(59, 601, 92, 629), - search=(39, 581, 112, 649), - color=(128, 128, 129), - button=(43, 583, 117, 657), + area=(46, 657, 76, 679), + search=(26, 637, 96, 699), + color=(139, 142, 149), + button=(41, 651, 116, 679), ), ) REWARD_RED_DOT = ButtonWrapper( From eafed9da6fa3277200062c48f02bd1cf02353ef1 Mon Sep 17 00:00:00 2001 From: X-Zero-L Date: Wed, 27 Dec 2023 14:27:49 +0800 Subject: [PATCH 06/16] Fix: Rename Cosmos to Universe --- config/template.json | 2 +- module/config/argument/args.json | 8 ++++---- module/config/argument/argument.yaml | 4 ++-- module/config/config_generated.py | 2 +- module/config/i18n/en-US.json | 6 +++--- module/config/i18n/es-ES.json | 6 +++--- module/config/i18n/ja-JP.json | 6 +++--- module/config/i18n/zh-CN.json | 6 +++--- module/config/i18n/zh-TW.json | 6 +++--- 9 files changed, 23 insertions(+), 23 deletions(-) diff --git a/config/template.json b/config/template.json index 17e4408d4..6fd78777a 100644 --- a/config/template.json +++ b/config/template.json @@ -191,7 +191,7 @@ "RogueWorld": { "World": "Simulated_Universe_World_7", "Path": "The_Hunt", - "Bonus": "Blessing Cosmos", + "Bonus": "Blessing Universe", "DomainStrategy": "combat", "UseImmersifier": true, "UseStamina": false diff --git a/module/config/argument/args.json b/module/config/argument/args.json index 2ca9376c2..c5961895c 100644 --- a/module/config/argument/args.json +++ b/module/config/argument/args.json @@ -1426,11 +1426,11 @@ }, "Bonus": { "type": "select", - "value": "Blessing Cosmos", + "value": "Blessing Universe", "option": [ - "Blessing Cosmos", - "Miracle Cosmos", - "Fragmented Cosmos" + "Blessing Universe", + "Miracle Universe", + "Fragmented Universe" ] }, "DomainStrategy": { diff --git a/module/config/argument/argument.yaml b/module/config/argument/argument.yaml index 7b029707a..c3445da4a 100644 --- a/module/config/argument/argument.yaml +++ b/module/config/argument/argument.yaml @@ -214,8 +214,8 @@ RogueWorld: value: The_Hunt option: [ Preservation, Remembrance, Nihility, Abundance, The_Hunt, Destruction, Elation, Propagation ] Bonus: - value: Blessing Cosmos - option: [ Blessing Cosmos, Miracle Cosmos, Fragmented Cosmos ] + value: Blessing Universe + option: [ Blessing Universe, Miracle Universe, Fragmented Universe ] DomainStrategy: value: combat option: [ combat, occurrence ] diff --git a/module/config/config_generated.py b/module/config/config_generated.py index e571ae82e..cbf940a43 100644 --- a/module/config/config_generated.py +++ b/module/config/config_generated.py @@ -134,7 +134,7 @@ class GeneratedConfig: # Group `RogueWorld` RogueWorld_World = 'Simulated_Universe_World_7' # Simulated_Universe_World_3, Simulated_Universe_World_4, Simulated_Universe_World_5, Simulated_Universe_World_6, Simulated_Universe_World_7, Simulated_Universe_World_8 RogueWorld_Path = 'The_Hunt' # Preservation, Remembrance, Nihility, Abundance, The_Hunt, Destruction, Elation, Propagation - RogueWorld_Bonus = 'Blessing Cosmos' # Blessing Cosmos, Miracle Cosmos, Fragmented Cosmos + RogueWorld_Bonus = 'Blessing Universe' # Blessing Universe, Miracle Universe, Fragmented Universe RogueWorld_DomainStrategy = 'combat' # combat, occurrence RogueWorld_UseImmersifier = True RogueWorld_UseStamina = False diff --git a/module/config/i18n/en-US.json b/module/config/i18n/en-US.json index 1a54706ff..7c402088c 100644 --- a/module/config/i18n/en-US.json +++ b/module/config/i18n/en-US.json @@ -920,9 +920,9 @@ "Bonus": { "name": "Blessings of Trailblaze", "help": "", - "Blessing Cosmos": "Blessing Cosmos (Choose a blessing)", - "Miracle Cosmos": "Miracle Cosmos (Choose a curio)", - "Fragmented Cosmos": "Fragmented Cosmos (Claim some Cosmic Fragments)" + "Blessing Universe": "Blessing Universe (Choose a blessing)", + "Miracle Universe": "Miracle Universe (Choose a curio)", + "Fragmented Universe": "Fragmented Universe (Claim some Cosmic Fragments)" }, "DomainStrategy": { "name": "Domain Strategy", diff --git a/module/config/i18n/es-ES.json b/module/config/i18n/es-ES.json index 906bb7978..83db6dfd1 100644 --- a/module/config/i18n/es-ES.json +++ b/module/config/i18n/es-ES.json @@ -920,9 +920,9 @@ "Bonus": { "name": "Bendiciones", "help": "", - "Blessing Cosmos": "Cosmos de Bendición (Elige una bendición)", - "Miracle Cosmos": "Cosmos milagroso (Elige un objeto raro)", - "Fragmented Cosmos": "Fragmented Cosmos (Claim some Cosmic Fragments)" + "Blessing Universe": "Cosmos de Bendición (Elige una bendición)", + "Miracle Universe": "Cosmos milagroso (Elige un objeto raro)", + "Fragmented Universe": "Fragmented Universe (Claim some Cosmic Fragments)" }, "DomainStrategy": { "name": "Estrategia de dominio", diff --git a/module/config/i18n/ja-JP.json b/module/config/i18n/ja-JP.json index abc8df42e..2d580fa53 100644 --- a/module/config/i18n/ja-JP.json +++ b/module/config/i18n/ja-JP.json @@ -920,9 +920,9 @@ "Bonus": { "name": "RogueWorld.Bonus.name", "help": "RogueWorld.Bonus.help", - "Blessing Cosmos": "Blessing Cosmos", - "Miracle Cosmos": "Miracle Cosmos", - "Fragmented Cosmos": "Fragmented Cosmos" + "Blessing Universe": "Blessing Universe", + "Miracle Universe": "Miracle Universe", + "Fragmented Universe": "Fragmented Universe" }, "DomainStrategy": { "name": "RogueWorld.DomainStrategy.name", diff --git a/module/config/i18n/zh-CN.json b/module/config/i18n/zh-CN.json index 8160ba036..0c29e07ea 100644 --- a/module/config/i18n/zh-CN.json +++ b/module/config/i18n/zh-CN.json @@ -920,9 +920,9 @@ "Bonus": { "name": "开拓祝福三选一", "help": "", - "Blessing Cosmos": "祝福宇宙(获得一个祝福)", - "Miracle Cosmos": "神奇宇宙(获得一个奇物)", - "Fragmented Cosmos": "破碎宇宙(获得宇宙碎片)" + "Blessing Universe": "祝福宇宙(获得一个祝福)", + "Miracle Universe": "神奇宇宙(获得一个奇物)", + "Fragmented Universe": "破碎宇宙(获得宇宙碎片)" }, "DomainStrategy": { "name": "区域策略", diff --git a/module/config/i18n/zh-TW.json b/module/config/i18n/zh-TW.json index b7c692e66..f1dd931f2 100644 --- a/module/config/i18n/zh-TW.json +++ b/module/config/i18n/zh-TW.json @@ -920,9 +920,9 @@ "Bonus": { "name": "開拓祝福三選一", "help": "", - "Blessing Cosmos": "祝福宇宙(獲得一個祝福)", - "Miracle Cosmos": "神奇宇宙(獲得一個奇物)", - "Fragmented Cosmos": "破碎宇宙(獲得宇宙碎片)" + "Blessing Universe": "祝福宇宙(獲得一個祝福)", + "Miracle Universe": "神奇宇宙(獲得一個奇物)", + "Fragmented Universe": "破碎宇宙(獲得宇宙碎片)" }, "DomainStrategy": { "name": "區域策略", From 051864decc2d68845c53e9d6373443e68ebcf16a Mon Sep 17 00:00:00 2001 From: X-Zero-L Date: Wed, 27 Dec 2023 14:29:13 +0800 Subject: [PATCH 07/16] Fix: Random choice of bonus --- tasks/rogue/blessing/bonus.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tasks/rogue/blessing/bonus.py b/tasks/rogue/blessing/bonus.py index 94a33304b..3790236d8 100644 --- a/tasks/rogue/blessing/bonus.py +++ b/tasks/rogue/blessing/bonus.py @@ -85,7 +85,7 @@ class RogueBonusSelector(RogueSelector): options = {result.matched_keyword.en: result for result in self.ocr_results} if self.main.config.RogueWorld_Bonus not in options.keys(): logger.warning(f"Can not find option: {self.main.config.RogueWorld_Bonus}, randomly choose one") - target = np.random.choice(options) + target = np.random.choice(list(options.values())) else: target = options[self.main.config.RogueWorld_Bonus] logger.info(f"Choose bonus: {target}") From c42108f9aedc5ca0b9c2a6c72dabf3a88f7eec18 Mon Sep 17 00:00:00 2001 From: X-Zero-L Date: Wed, 27 Dec 2023 22:15:49 +0800 Subject: [PATCH 08/16] Upd: ocr_world asset --- assets/share/rogue/entry/OCR_WORLD.png | Bin 12263 -> 15699 bytes tasks/rogue/assets/assets_rogue_entry.py | 8 ++++---- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/assets/share/rogue/entry/OCR_WORLD.png b/assets/share/rogue/entry/OCR_WORLD.png index 041ea2d2700af20cfc67f671f7b224e948a418ce..51bb5f5f70571cdff6d6b38d4efafad5652a46eb 100644 GIT binary patch literal 15699 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 E0p4YH>Hq)$ literal 12263 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 diff --git a/tasks/rogue/assets/assets_rogue_entry.py b/tasks/rogue/assets/assets_rogue_entry.py index 9b51156c6..e2bc4c06d 100644 --- a/tasks/rogue/assets/assets_rogue_entry.py +++ b/tasks/rogue/assets/assets_rogue_entry.py @@ -27,10 +27,10 @@ OCR_WORLD = ButtonWrapper( name='OCR_WORLD', share=Button( file='./assets/share/rogue/entry/OCR_WORLD.png', - area=(518, 342, 623, 370), - search=(498, 322, 643, 390), - color=(84, 83, 101), - button=(518, 342, 623, 370), + area=(488, 339, 718, 371), + search=(468, 319, 738, 391), + color=(45, 44, 68), + button=(488, 339, 718, 371), ), ) WORLD_ENTER = ButtonWrapper( From 328f6032550363b71fd01afad473c43c9a08d6e1 Mon Sep 17 00:00:00 2001 From: X-Zero-L Date: Wed, 27 Dec 2023 23:28:55 +0800 Subject: [PATCH 09/16] Fix: unique daily quests --- dev_tools/keyword_extract.py | 69 ++++++++++++- tasks/daily/keywords/daily_quest.py | 155 +++++----------------------- 2 files changed, 96 insertions(+), 128 deletions(-) diff --git a/dev_tools/keyword_extract.py b/dev_tools/keyword_extract.py index 8918314bf..3c2f2431b 100644 --- a/dev_tools/keyword_extract.py +++ b/dev_tools/keyword_extract.py @@ -235,10 +235,77 @@ class KeywordExtract: quest_keywords = list(dict.fromkeys([self.text_map[lang].find(quest_hash)[1] for quest_hash in quests_hash])) self.load_keywords(quest_keywords, lang) + def write_daily_quest_keywords(self): + text_convert = text_to_variable + keyword_class = 'DailyQuest' + gen = CodeGenerator() + gen.Import(f""" + from .classes import {keyword_class} + """) + gen.CommentAutoGenerage('dev_tools.keyword_extract') + + old_quest = [ + "Go_on_assignment_1_time", # -> Dispatch_1_assignments + "Complete_1_stage_in_Simulated_Universe_Any_world", # -> Complete_Simulated_Universe_1_times + "Complete_Calyx_Crimson_1_time", # -> Clear_Calyx_Crimson_1_times + "Enter_combat_by_attacking_enemy_Weakness_and_win_3_times", # -> Enter_combat_by_attacking_enemie_Weakness_and_win_1_times + "Use_Technique_2_times", # -> Use_Technique_1_times + "Destroy_3_destructible_objects" # -> Destroy_1_destructible_objects + "Obtain_victory_in_combat_with_Support_Characters_1_time", # -> Obtain_victory_in_combat_with_Support_Characters_1_times + "Level_up_any_character_1_time", # -> Level_up_any_character_1_times + "Level_up_any_Light_Cone_1_time", # -> Level_up_any_Light_Cone_1_times + "Synthesize_Consumable_1_time", # -> Use_the_Omni_Synthesizer_1_times + "Synthesize_material_1_time", # -> Use_the_Omni_Synthesizer_1_times + "Take_1_photo", # -> Take_photos_1_times + "Level_up_any_Relic_1_time", # -> Level_up_any_Relic_1_times + ] + + correct_times = { + # "Dispatch_1_assignments": 1, + # "Complete_Simulated_Universe_1_times": 1, + # "Clear_Calyx_Crimson_1_times": 1, + "Enter_combat_by_attacking_enemie_Weakness_and_win_1_times": 3, + "Use_Technique_1_times": 2, + "Destroy_1_destructible_objects": 3, + # "Obtain_victory_in_combat_with_Support_Characters_1_times": 1, + # "Level_up_any_character_1_times": 1, + # "Level_up_any_Light_Cone_1_times": 1, + # "Use_the_Omni_Synthesizer_1_times": 1, + # "Take_photos_1_times": 1, + # "Level_up_any_Relic_1_times": 1, + "Consume_1_Trailblaze_Power": 120 + + } + def replace_templates_quest(text: str, correct_time = 1) -> str: + text = replace_templates(text) + text = text.replace('1', f'{correct_time}') + return text + + last_id = getattr(gen, 'last_id', 0) + for index, keyword in enumerate(self.keywords_id): + _, old_name = self.find_keyword(keyword, lang='en') + old_name = text_convert(replace_templates(old_name)) + if old_name in old_quest: + continue + name = old_name.replace('1', str(correct_times.setdefault(old_name, 1))) + + with gen.Object(key=name, object_class=keyword_class): + gen.ObjectAttr(key='id', value=index + last_id + 1) + gen.ObjectAttr(key='name', value=name) + for lang in UI_LANGUAGES: + gen.ObjectAttr(key=lang, value=replace_templates_quest(self.find_keyword(keyword, lang=lang)[1], correct_times.setdefault(old_name, 1))) + gen.last_id = index + last_id + 1 + + output_file = './tasks/daily/keywords/daily_quest.py' + print(f'Write {output_file}') + gen.write(output_file) + self.clear_keywords() + return gen + def generate_daily_quests(self): daily_quest = read_file(os.path.join(TextMap.DATA_FOLDER, 'ExcelOutput', 'DailyQuest.json')) self.load_quests(daily_quest.keys()) - self.write_keywords(keyword_class='DailyQuest', output_file='./tasks/daily/keywords/daily_quest.py') + self.write_daily_quest_keywords() def load_character_name_keywords(self, lang='en'): file_name = 'ItemConfigAvatarPlayerIcon.json' diff --git a/tasks/daily/keywords/daily_quest.py b/tasks/daily/keywords/daily_quest.py index 99892b7b2..8fe347f8f 100644 --- a/tasks/daily/keywords/daily_quest.py +++ b/tasks/daily/keywords/daily_quest.py @@ -21,15 +21,6 @@ Clear_Calyx_Golden_1_times = DailyQuest( jp='「疑似花萼(金)」を1回クリアする', es='Completa Cáliz (oro) 1 vez', ) -Complete_Calyx_Crimson_1_time = DailyQuest( - id=3, - name='Complete_Calyx_Crimson_1_time', - cn='完成1次「拟造花萼(赤)」', - cht='完成1次「擬造花萼(赤)」', - en='Complete Calyx (Crimson) 1 time', - jp='「疑似花萼(赤)」を1回クリアする', - es='Completa Cáliz (carmesí) 1 vez', -) Clear_Stagnant_Shadow_1_times = DailyQuest( id=4, name='Clear_Stagnant_Shadow_1_times', @@ -75,42 +66,6 @@ Defeat_a_total_of_20_enemies = DailyQuest( jp='敵を累計で20体倒す', es='Derrota a 20 enemigos', ) -Enter_combat_by_attacking_enemy_Weakness_and_win_3_times = DailyQuest( - id=9, - name='Enter_combat_by_attacking_enemy_Weakness_and_win_3_times', - cn='利用弱点进入战斗并获胜3次', - cht='利用弱點進入戰鬥並獲勝3次', - en="Enter combat by attacking enemy's Weakness and win 3 times", - jp='弱点を攻撃して戦闘に入り、3回勝利する', - es='Entra en combate atacando la debilidad del enemigo y gana 3 veces', -) -Use_Technique_2_times = DailyQuest( - id=10, - name='Use_Technique_2_times', - cn='累计施放2次秘技', - cht='累積施放2次秘技', - en='Use Technique 2 times', - jp='秘技を累計2回発動する', - es='Usa técnicas 2 veces', -) -Go_on_assignment_1_time = DailyQuest( - id=11, - name='Go_on_assignment_1_time', - cn='派遣1次委托', - cht='派遣1次委託', - en='Go on assignment 1 time', - jp='依頼に1回派遣する', - es='Asigna un encargo', -) -Take_1_photo = DailyQuest( - id=12, - name='Take_1_photo', - cn='拍照1次', - cht='拍照1次', - en='Take 1 photo', - jp='1回撮影する', - es='Haz 1 foto', -) Destroy_3_destructible_objects = DailyQuest( id=13, name='Destroy_3_destructible_objects', @@ -138,15 +93,6 @@ Complete_Echo_of_War_1_times = DailyQuest( jp='「歴戦余韻」を1回クリアする', es='Completa Ecos de la guerra 1 vez', ) -Complete_1_stage_in_Simulated_Universe_Any_world = DailyQuest( - id=16, - name='Complete_1_stage_in_Simulated_Universe_Any_world', - cn='通关「模拟宇宙」(任意世界)的1个区域', - cht='完成「模擬宇宙」任意世界的1個區域', - en='Complete 1 stage in Simulated Universe (Any world)', - jp='「模擬宇宙」のエリアを1つクリアする(任意の世界)', - es='Supera 1 zona del Universo Simulado (cualquier mundo)', -) Obtain_victory_in_combat_with_Support_Characters_1_time = DailyQuest( id=17, name='Obtain_victory_in_combat_with_Support_Characters_1_time', @@ -165,33 +111,6 @@ Use_an_Ultimate_to_deal_the_final_blow_1_time = DailyQuest( jp='必殺技で最後の一撃を1回与える', es='Asesta el golpe final con una habilidad definitiva 1 vez', ) -Level_up_any_character_1_time = DailyQuest( - id=19, - name='Level_up_any_character_1_time', - cn='将任意角色等级提升1次', - cht='將任意角色等級提升1次', - en='Level up any character 1 time', - jp='任意のキャラを1回レベルアップする', - es='Mejora el nivel de cualquier personaje 1 vez', -) -Level_up_any_Light_Cone_1_time = DailyQuest( - id=20, - name='Level_up_any_Light_Cone_1_time', - cn='将任意光锥等级提升1次', - cht='將任意光錐等級提升1次', - en='Level up any Light Cone 1 time', - jp='任意の光円錐を1回レベルアップする', - es='Mejora cualquier cono de luz 1 vez', -) -Level_up_any_Relic_1_time = DailyQuest( - id=21, - name='Level_up_any_Relic_1_time', - cn='将任意遗器等级提升1次', - cht='將任意遺器等級提升1次', - en='Level up any Relic 1 time', - jp='任意の遺物を1回レベルアップする', - es='Mejora cualquier artefacto 1 vez', -) Salvage_any_Relic = DailyQuest( id=22, name='Salvage_any_Relic', @@ -201,24 +120,6 @@ Salvage_any_Relic = DailyQuest( jp='任意の遺物1つを分解する', es='Destruye 1 artefacto', ) -Synthesize_Consumable_1_time = DailyQuest( - id=23, - name='Synthesize_Consumable_1_time', - cn='合成1次消耗品', - cht='合成1次消耗品', - en='Synthesize Consumable 1 time', - jp='消耗品を1回合成する', - es='Sintetiza consumibles 1 vez', -) -Synthesize_material_1_time = DailyQuest( - id=24, - name='Synthesize_material_1_time', - cn='合成1次材料', - cht='合成1次素材', - en='Synthesize material 1 time', - jp='素材を1回合成する', - es='Sintetiza materiales 1 vez', -) Use_Consumables_1_time = DailyQuest( id=25, name='Use_Consumables_1_time', @@ -264,32 +165,32 @@ Clear_Calyx_Crimson_1_times = DailyQuest( jp='「疑似花萼(赤)」を1回クリアする', es='Completa Cáliz (carmesí) 1 vez', ) -Enter_combat_by_attacking_enemie_Weakness_and_win_1_times = DailyQuest( +Enter_combat_by_attacking_enemie_Weakness_and_win_3_times = DailyQuest( id=30, - name='Enter_combat_by_attacking_enemie_Weakness_and_win_1_times', - cn='利用弱点进入战斗并获胜1次', - cht='利用弱點進入戰鬥並獲勝1次', - en="Enter combat by attacking enemies' Weakness and win 1 time(s)", - jp='弱点を攻撃して戦闘に入り、1回勝利する', - es='Entra en combate atacando la debilidad del enemigo y gana 1 veces', + name='Enter_combat_by_attacking_enemie_Weakness_and_win_3_times', + cn='利用弱点进入战斗并获胜3次', + cht='利用弱點進入戰鬥並獲勝3次', + en="Enter combat by attacking enemies' Weakness and win 3 time(s)", + jp='弱点を攻撃して戦闘に入り、3回勝利する', + es='Entra en combate atacando la debilidad del enemigo y gana 3 veces', ) -Use_Technique_1_times = DailyQuest( +Use_Technique_2_times = DailyQuest( id=31, - name='Use_Technique_1_times', - cn='累计施放1次秘技', - cht='累積施放1次秘技', - en='Use Technique 1 time(s)', - jp='累計で秘技を1回発動する', - es='Usa técnicas 1 veces', + name='Use_Technique_2_times', + cn='累计施放2次秘技', + cht='累積施放2次秘技', + en='Use Technique 2 time(s)', + jp='累計で秘技を2回発動する', + es='Usa técnicas 2 veces', ) -Destroy_1_destructible_objects = DailyQuest( +Destroy_3_destructible_objects = DailyQuest( id=32, - name='Destroy_1_destructible_objects', - cn='累计击碎1个可破坏物', - cht='累積擊碎1個可破壞物', - en='Destroy 1 destructible object(s)', - jp='破壊できるオブジェクトを累計で1個破壊する', - es='Destruye 1 objetos destruibles', + name='Destroy_3_destructible_objects', + cn='累计击碎3个可破坏物', + cht='累積擊碎3個可破壞物', + en='Destroy 3 destructible object(s)', + jp='破壊できるオブジェクトを累計で3個破壊する', + es='Destruye 3 objetos destruibles', ) Obtain_victory_in_combat_with_Support_Characters_1_times = DailyQuest( id=33, @@ -336,14 +237,14 @@ Take_photos_1_times = DailyQuest( jp='1回撮影する', es='Haz 1 foto(s)', ) -Consume_1_Trailblaze_Power = DailyQuest( +Consume_120_Trailblaze_Power = DailyQuest( id=38, - name='Consume_1_Trailblaze_Power', - cn='累计消耗1点开拓力', - cht='累積消耗1點開拓力', - en='Consume 1 Trailblaze Power', - jp='累計で開拓力×1を消費する', - es='Consume 1 pts. de Poder trazacaminos', + name='Consume_120_Trailblaze_Power', + cn='累计消耗120点开拓力', + cht='累積消耗120點開拓力', + en='Consume 120 Trailblaze Power', + jp='累計で開拓力×120を消費する', + es='Consume 120 pts. de Poder trazacaminos', ) Level_up_any_Relic_1_times = DailyQuest( id=39, From e272b56db54242553aa7499b5a38c9f81932aa22 Mon Sep 17 00:00:00 2001 From: X-Zero-L Date: Wed, 27 Dec 2023 23:41:59 +0800 Subject: [PATCH 10/16] Upd: config and i18n --- config/template.json | 30 +++-- module/config/argument/args.json | 186 +----------------------------- module/config/config_generated.py | 18 +-- module/config/i18n/en-US.json | 104 ++--------------- module/config/i18n/es-ES.json | 102 ++-------------- module/config/i18n/ja-JP.json | 104 ++--------------- module/config/i18n/zh-CN.json | 122 +++----------------- module/config/i18n/zh-TW.json | 120 +++---------------- 8 files changed, 86 insertions(+), 700 deletions(-) diff --git a/config/template.json b/config/template.json index 6fd78777a..263b8d86b 100644 --- a/config/template.json +++ b/config/template.json @@ -74,43 +74,41 @@ "AchievableQuest": { "Complete_1_Daily_Mission": "not_supported", "Clear_Calyx_Golden_1_times": "achievable", - "Complete_Calyx_Crimson_1_time": "achievable", "Clear_Stagnant_Shadow_1_times": "achievable", "Clear_Cavern_of_Corrosion_1_times": "achievable", "In_a_single_battle_inflict_3_Weakness_Break_of_different_Types": "achievable", "Inflict_Weakness_Break_5_times": "achievable", "Defeat_a_total_of_20_enemies": "achievable", - "Enter_combat_by_attacking_enemy_Weakness_and_win_3_times": "achievable", - "Use_Technique_2_times": "achievable", - "Go_on_assignment_1_time": "achievable", - "Take_1_photo": "achievable", "Destroy_3_destructible_objects": "achievable", "Complete_Forgotten_Hall_1_time": "achievable", "Complete_Echo_of_War_1_times": "not_set", - "Complete_1_stage_in_Simulated_Universe_Any_world": "not_set", "Obtain_victory_in_combat_with_Support_Characters_1_time": "achievable", "Use_an_Ultimate_to_deal_the_final_blow_1_time": "achievable", - "Level_up_any_character_1_time": "not_supported", - "Level_up_any_Light_Cone_1_time": "not_supported", - "Level_up_any_Relic_1_time": "not_supported", "Salvage_any_Relic": "achievable", - "Synthesize_Consumable_1_time": "achievable", - "Synthesize_material_1_time": "achievable", "Use_Consumables_1_time": "achievable", "Log_in_to_the_game": "achievable", "Dispatch_1_assignments": "achievable", "Complete_Simulated_Universe_1_times": "achievable", "Clear_Calyx_Crimson_1_times": "achievable", - "Enter_combat_by_attacking_enemie_Weakness_and_win_1_times": "achievable", - "Use_Technique_1_times": "achievable", - "Destroy_1_destructible_objects": "achievable", + "Enter_combat_by_attacking_enemie_Weakness_and_win_3_times": "achievable", + "Use_Technique_2_times": "achievable", "Obtain_victory_in_combat_with_Support_Characters_1_times": "achievable", "Level_up_any_character_1_times": "achievable", "Level_up_any_Light_Cone_1_times": "achievable", "Use_the_Omni_Synthesizer_1_times": "achievable", "Take_photos_1_times": "achievable", - "Consume_1_Trailblaze_Power": "achievable", - "Level_up_any_Relic_1_times": "achievable" + "Consume_120_Trailblaze_Power": "achievable", + "Level_up_any_Relic_1_times": "achievable", + "Complete_Calyx_Crimson_1_time": "achievable", + "Enter_combat_by_attacking_enemy_Weakness_and_win_3_times": "achievable", + "Go_on_assignment_1_time": "achievable", + "Take_1_photo": "achievable", + "Complete_1_stage_in_Simulated_Universe_Any_world": "not_set", + "Level_up_any_character_1_time": "not_supported", + "Level_up_any_Light_Cone_1_time": "not_supported", + "Level_up_any_Relic_1_time": "not_supported", + "Synthesize_Consumable_1_time": "achievable", + "Synthesize_material_1_time": "achievable" }, "DailyStorage": { "DailyActivity": {}, diff --git a/module/config/argument/args.json b/module/config/argument/args.json index c5961895c..dfdb7aa1b 100644 --- a/module/config/argument/args.json +++ b/module/config/argument/args.json @@ -489,21 +489,6 @@ "not_supported" ] }, - "Complete_Calyx_Crimson_1_time": { - "type": "state", - "value": "achievable", - "option": [ - "achievable", - "not_set", - "not_supported" - ], - "option_bold": [ - "achievable" - ], - "option_light": [ - "not_supported" - ] - }, "Clear_Stagnant_Shadow_1_times": { "type": "state", "value": "achievable", @@ -579,66 +564,6 @@ "not_supported" ] }, - "Enter_combat_by_attacking_enemy_Weakness_and_win_3_times": { - "type": "state", - "value": "achievable", - "option": [ - "achievable", - "not_set", - "not_supported" - ], - "option_bold": [ - "achievable" - ], - "option_light": [ - "not_supported" - ] - }, - "Use_Technique_2_times": { - "type": "state", - "value": "achievable", - "option": [ - "achievable", - "not_set", - "not_supported" - ], - "option_bold": [ - "achievable" - ], - "option_light": [ - "not_supported" - ] - }, - "Go_on_assignment_1_time": { - "type": "state", - "value": "achievable", - "option": [ - "achievable", - "not_set", - "not_supported" - ], - "option_bold": [ - "achievable" - ], - "option_light": [ - "not_supported" - ] - }, - "Take_1_photo": { - "type": "state", - "value": "achievable", - "option": [ - "achievable", - "not_set", - "not_supported" - ], - "option_bold": [ - "achievable" - ], - "option_light": [ - "not_supported" - ] - }, "Destroy_3_destructible_objects": { "type": "state", "value": "achievable", @@ -684,21 +609,6 @@ "not_supported" ] }, - "Complete_1_stage_in_Simulated_Universe_Any_world": { - "type": "state", - "value": "achievable", - "option": [ - "achievable", - "not_set", - "not_supported" - ], - "option_bold": [ - "achievable" - ], - "option_light": [ - "not_supported" - ] - }, "Obtain_victory_in_combat_with_Support_Characters_1_time": { "type": "state", "value": "achievable", @@ -729,51 +639,6 @@ "not_supported" ] }, - "Level_up_any_character_1_time": { - "type": "state", - "value": "achievable", - "option": [ - "achievable", - "not_set", - "not_supported" - ], - "option_bold": [ - "achievable" - ], - "option_light": [ - "not_supported" - ] - }, - "Level_up_any_Light_Cone_1_time": { - "type": "state", - "value": "achievable", - "option": [ - "achievable", - "not_set", - "not_supported" - ], - "option_bold": [ - "achievable" - ], - "option_light": [ - "not_supported" - ] - }, - "Level_up_any_Relic_1_time": { - "type": "state", - "value": "achievable", - "option": [ - "achievable", - "not_set", - "not_supported" - ], - "option_bold": [ - "achievable" - ], - "option_light": [ - "not_supported" - ] - }, "Salvage_any_Relic": { "type": "state", "value": "achievable", @@ -789,36 +654,6 @@ "not_supported" ] }, - "Synthesize_Consumable_1_time": { - "type": "state", - "value": "achievable", - "option": [ - "achievable", - "not_set", - "not_supported" - ], - "option_bold": [ - "achievable" - ], - "option_light": [ - "not_supported" - ] - }, - "Synthesize_material_1_time": { - "type": "state", - "value": "achievable", - "option": [ - "achievable", - "not_set", - "not_supported" - ], - "option_bold": [ - "achievable" - ], - "option_light": [ - "not_supported" - ] - }, "Use_Consumables_1_time": { "type": "state", "value": "achievable", @@ -894,7 +729,7 @@ "not_supported" ] }, - "Enter_combat_by_attacking_enemie_Weakness_and_win_1_times": { + "Enter_combat_by_attacking_enemie_Weakness_and_win_3_times": { "type": "state", "value": "achievable", "option": [ @@ -909,22 +744,7 @@ "not_supported" ] }, - "Use_Technique_1_times": { - "type": "state", - "value": "achievable", - "option": [ - "achievable", - "not_set", - "not_supported" - ], - "option_bold": [ - "achievable" - ], - "option_light": [ - "not_supported" - ] - }, - "Destroy_1_destructible_objects": { + "Use_Technique_2_times": { "type": "state", "value": "achievable", "option": [ @@ -1014,7 +834,7 @@ "not_supported" ] }, - "Consume_1_Trailblaze_Power": { + "Consume_120_Trailblaze_Power": { "type": "state", "value": "achievable", "option": [ diff --git a/module/config/config_generated.py b/module/config/config_generated.py index cbf940a43..41c7ecdf6 100644 --- a/module/config/config_generated.py +++ b/module/config/config_generated.py @@ -72,42 +72,30 @@ class GeneratedConfig: # Group `AchievableQuest` AchievableQuest_Complete_1_Daily_Mission = 'achievable' # achievable, not_set, not_supported AchievableQuest_Clear_Calyx_Golden_1_times = 'achievable' # achievable, not_set, not_supported - AchievableQuest_Complete_Calyx_Crimson_1_time = 'achievable' # achievable, not_set, not_supported AchievableQuest_Clear_Stagnant_Shadow_1_times = 'achievable' # achievable, not_set, not_supported AchievableQuest_Clear_Cavern_of_Corrosion_1_times = 'achievable' # achievable, not_set, not_supported AchievableQuest_In_a_single_battle_inflict_3_Weakness_Break_of_different_Types = 'achievable' # achievable, not_set, not_supported AchievableQuest_Inflict_Weakness_Break_5_times = 'achievable' # achievable, not_set, not_supported AchievableQuest_Defeat_a_total_of_20_enemies = 'achievable' # achievable, not_set, not_supported - AchievableQuest_Enter_combat_by_attacking_enemy_Weakness_and_win_3_times = 'achievable' # achievable, not_set, not_supported - AchievableQuest_Use_Technique_2_times = 'achievable' # achievable, not_set, not_supported - AchievableQuest_Go_on_assignment_1_time = 'achievable' # achievable, not_set, not_supported - AchievableQuest_Take_1_photo = 'achievable' # achievable, not_set, not_supported AchievableQuest_Destroy_3_destructible_objects = 'achievable' # achievable, not_set, not_supported AchievableQuest_Complete_Forgotten_Hall_1_time = 'achievable' # achievable, not_set, not_supported AchievableQuest_Complete_Echo_of_War_1_times = 'achievable' # achievable, not_set, not_supported - AchievableQuest_Complete_1_stage_in_Simulated_Universe_Any_world = 'achievable' # achievable, not_set, not_supported AchievableQuest_Obtain_victory_in_combat_with_Support_Characters_1_time = 'achievable' # achievable, not_set, not_supported AchievableQuest_Use_an_Ultimate_to_deal_the_final_blow_1_time = 'achievable' # achievable, not_set, not_supported - AchievableQuest_Level_up_any_character_1_time = 'achievable' # achievable, not_set, not_supported - AchievableQuest_Level_up_any_Light_Cone_1_time = 'achievable' # achievable, not_set, not_supported - AchievableQuest_Level_up_any_Relic_1_time = 'achievable' # achievable, not_set, not_supported AchievableQuest_Salvage_any_Relic = 'achievable' # achievable, not_set, not_supported - AchievableQuest_Synthesize_Consumable_1_time = 'achievable' # achievable, not_set, not_supported - AchievableQuest_Synthesize_material_1_time = 'achievable' # achievable, not_set, not_supported AchievableQuest_Use_Consumables_1_time = 'achievable' # achievable, not_set, not_supported AchievableQuest_Log_in_to_the_game = 'achievable' # achievable, not_set, not_supported AchievableQuest_Dispatch_1_assignments = 'achievable' # achievable, not_set, not_supported AchievableQuest_Complete_Simulated_Universe_1_times = 'achievable' # achievable, not_set, not_supported AchievableQuest_Clear_Calyx_Crimson_1_times = 'achievable' # achievable, not_set, not_supported - AchievableQuest_Enter_combat_by_attacking_enemie_Weakness_and_win_1_times = 'achievable' # achievable, not_set, not_supported - AchievableQuest_Use_Technique_1_times = 'achievable' # achievable, not_set, not_supported - AchievableQuest_Destroy_1_destructible_objects = 'achievable' # achievable, not_set, not_supported + AchievableQuest_Enter_combat_by_attacking_enemie_Weakness_and_win_3_times = 'achievable' # achievable, not_set, not_supported + AchievableQuest_Use_Technique_2_times = 'achievable' # achievable, not_set, not_supported AchievableQuest_Obtain_victory_in_combat_with_Support_Characters_1_times = 'achievable' # achievable, not_set, not_supported AchievableQuest_Level_up_any_character_1_times = 'achievable' # achievable, not_set, not_supported AchievableQuest_Level_up_any_Light_Cone_1_times = 'achievable' # achievable, not_set, not_supported AchievableQuest_Use_the_Omni_Synthesizer_1_times = 'achievable' # achievable, not_set, not_supported AchievableQuest_Take_photos_1_times = 'achievable' # achievable, not_set, not_supported - AchievableQuest_Consume_1_Trailblaze_Power = 'achievable' # achievable, not_set, not_supported + AchievableQuest_Consume_120_Trailblaze_Power = 'achievable' # achievable, not_set, not_supported AchievableQuest_Level_up_any_Relic_1_times = 'achievable' # achievable, not_set, not_supported # Group `DailyStorage` diff --git a/module/config/i18n/en-US.json b/module/config/i18n/en-US.json index 7c402088c..3926f5f3b 100644 --- a/module/config/i18n/en-US.json +++ b/module/config/i18n/en-US.json @@ -490,13 +490,6 @@ "not_set": "Not Set", "not_supported": "Not Supported Yet" }, - "Complete_Calyx_Crimson_1_time": { - "name": "Complete Calyx (Crimson) 1 time", - "help": "Need to configure and enable the \"Dungeon\" task", - "achievable": "Achievable", - "not_set": "Not Set", - "not_supported": "Not Supported Yet" - }, "Clear_Stagnant_Shadow_1_times": { "name": "Clear Stagnant Shadow 1 time(s)", "help": "Need to configure and enable the \"Dungeon\" task", @@ -532,36 +525,8 @@ "not_set": "Not Set", "not_supported": "Not Supported Yet" }, - "Enter_combat_by_attacking_enemy_Weakness_and_win_3_times": { - "name": "Enter combat by attacking enemy's Weakness and win 3 times", - "help": "Achievable by default, will do Himeko trial", - "achievable": "Achievable", - "not_set": "Not Set", - "not_supported": "Not Supported Yet" - }, - "Use_Technique_2_times": { - "name": "Use Technique 2 times", - "help": "Achievable by default, will go to the abyssal 1 and use technique twice", - "achievable": "Achievable", - "not_set": "Not Set", - "not_supported": "Not Supported Yet" - }, - "Go_on_assignment_1_time": { - "name": "Go on assignment 1 time", - "help": "Need to configure and enable the \"Assignment\" task", - "achievable": "Achievable", - "not_set": "Not Set", - "not_supported": "Not Supported Yet" - }, - "Take_1_photo": { - "name": "Take 1 photo", - "help": "Achievable by default", - "achievable": "Achievable", - "not_set": "Not Set", - "not_supported": "Not Supported Yet" - }, "Destroy_3_destructible_objects": { - "name": "Destroy 3 destructible objects", + "name": "Destroy 3 destructible object(s)", "help": "Achievable by default, will do Himeko trial", "achievable": "Achievable", "not_set": "Not Set", @@ -581,13 +546,6 @@ "not_set": "Not Set", "not_supported": "Not Supported Yet" }, - "Complete_1_stage_in_Simulated_Universe_Any_world": { - "name": "Complete 1 stage in Simulated Universe (Any world)", - "help": "Need to configure and enable the \"Simulated Universe\" task", - "achievable": "Achievable", - "not_set": "Not Set", - "not_supported": "Not Supported Yet" - }, "Obtain_victory_in_combat_with_Support_Characters_1_time": { "name": "Obtain victory in combat with Support Characters 1 time", "help": "Need to configure and enable the \"Dungeon\" task, configure support settings also", @@ -602,27 +560,6 @@ "not_set": "Not Set", "not_supported": "Not Supported Yet" }, - "Level_up_any_character_1_time": { - "name": "Level up any character 1 time", - "help": "", - "achievable": "Achievable", - "not_set": "Not Set", - "not_supported": "Not Supported Yet" - }, - "Level_up_any_Light_Cone_1_time": { - "name": "Level up any Light Cone 1 time", - "help": "", - "achievable": "Achievable", - "not_set": "Not Set", - "not_supported": "Not Supported Yet" - }, - "Level_up_any_Relic_1_time": { - "name": "Level up any Relic 1 time", - "help": "", - "achievable": "Achievable", - "not_set": "Not Set", - "not_supported": "Not Supported Yet" - }, "Salvage_any_Relic": { "name": "Salvage any Relic", "help": "Achievable by default, will salvage the first one in reverse order of rarity", @@ -630,20 +567,6 @@ "not_set": "Not Set", "not_supported": "Not Supported Yet" }, - "Synthesize_Consumable_1_time": { - "name": "Synthesize Consumable 1 time", - "help": "Achievable by default, will synthesize low-rarity snacks", - "achievable": "Achievable", - "not_set": "Not Set", - "not_supported": "Not Supported Yet" - }, - "Synthesize_material_1_time": { - "name": "Synthesize material 1 time", - "help": "Achievable by default, will synthesize low-rarity material", - "achievable": "Achievable", - "not_set": "Not Set", - "not_supported": "Not Supported Yet" - }, "Use_Consumables_1_time": { "name": "Use Consumables 1 time", "help": "Achievable by default, will use gear. If there is no material, synthesized before use", @@ -679,23 +602,16 @@ "not_set": "Not Set", "not_supported": "Not Supported Yet" }, - "Enter_combat_by_attacking_enemie_Weakness_and_win_1_times": { - "name": "Enter combat by attacking enemies' Weakness and win 1 time(s)", - "help": "AchievableQuest.Enter_combat_by_attacking_enemie_Weakness_and_win_1_times.help", + "Enter_combat_by_attacking_enemie_Weakness_and_win_3_times": { + "name": "Enter combat by attacking enemies' Weakness and win 3 time(s)", + "help": "AchievableQuest.Enter_combat_by_attacking_enemie_Weakness_and_win_3_times.help", "achievable": "Achievable", "not_set": "Not Set", "not_supported": "Not Supported Yet" }, - "Use_Technique_1_times": { - "name": "Use Technique 1 time(s)", - "help": "AchievableQuest.Use_Technique_1_times.help", - "achievable": "Achievable", - "not_set": "Not Set", - "not_supported": "Not Supported Yet" - }, - "Destroy_1_destructible_objects": { - "name": "Destroy 1 destructible object(s)", - "help": "AchievableQuest.Destroy_1_destructible_objects.help", + "Use_Technique_2_times": { + "name": "Use Technique 2 time(s)", + "help": "Achievable by default, will go to the abyssal 1 and use technique twice", "achievable": "Achievable", "not_set": "Not Set", "not_supported": "Not Supported Yet" @@ -735,9 +651,9 @@ "not_set": "Not Set", "not_supported": "Not Supported Yet" }, - "Consume_1_Trailblaze_Power": { - "name": "Consume 1 Trailblaze Power", - "help": "AchievableQuest.Consume_1_Trailblaze_Power.help", + "Consume_120_Trailblaze_Power": { + "name": "Consume 120 Trailblaze Power", + "help": "AchievableQuest.Consume_120_Trailblaze_Power.help", "achievable": "Achievable", "not_set": "Not Set", "not_supported": "Not Supported Yet" diff --git a/module/config/i18n/es-ES.json b/module/config/i18n/es-ES.json index 83db6dfd1..c8390788f 100644 --- a/module/config/i18n/es-ES.json +++ b/module/config/i18n/es-ES.json @@ -490,13 +490,6 @@ "not_set": "No configurado", "not_supported": "No soportado aún" }, - "Complete_Calyx_Crimson_1_time": { - "name": "Completa Cáliz (carmesí) 1 vez", - "help": "Necesitas configurar y activar la tarea \"Mazmorra\"", - "achievable": "Completable", - "not_set": "No configurado", - "not_supported": "No soportado aún" - }, "Clear_Stagnant_Shadow_1_times": { "name": "Completa Sombra paralizada 1 veces", "help": "Necesitas configurar y activar la tarea \"Mazmorra\"", @@ -532,34 +525,6 @@ "not_set": "No configurado", "not_supported": "No soportado aún" }, - "Enter_combat_by_attacking_enemy_Weakness_and_win_3_times": { - "name": "Entra en combate atacando la debilidad del enemigo y gana 3 veces", - "help": "Completable por defecto, se hará el desafío de Himeko", - "achievable": "Completable", - "not_set": "No configurado", - "not_supported": "No soportado aún" - }, - "Use_Technique_2_times": { - "name": "Usa técnicas 2 veces", - "help": "Alcanzable por defecto, irá al abismo y usará la técnica 2 veces.", - "achievable": "Completable", - "not_set": "No configurado", - "not_supported": "No soportado aún" - }, - "Go_on_assignment_1_time": { - "name": "Asigna un encargo", - "help": "Necesitas configurar y activar la tarea de \"Encargos\"", - "achievable": "Completable", - "not_set": "No configurado", - "not_supported": "No soportado aún" - }, - "Take_1_photo": { - "name": "Haz 1 foto", - "help": "Completable por defecto.", - "achievable": "Completable", - "not_set": "No configurado", - "not_supported": "No soportado aún" - }, "Destroy_3_destructible_objects": { "name": "Destruye 3 objetos destruibles", "help": "Completable por defecto, se hará el desafío de Himeko", @@ -581,13 +546,6 @@ "not_set": "No configurado", "not_supported": "No soportado aún" }, - "Complete_1_stage_in_Simulated_Universe_Any_world": { - "name": "Supera 1 zona del Universo Simulado (cualquier mundo)", - "help": "Necesitas configurar y activar la tarea \"Universo Simulado\"", - "achievable": "Completable", - "not_set": "No configurado", - "not_supported": "No soportado aún" - }, "Obtain_victory_in_combat_with_Support_Characters_1_time": { "name": "Gana 1 batalla utilizando personajes de apoyo", "help": "Necesitas configurar la tarea de \"Mazmorra\", así como configurar a los héroes de apoyo.", @@ -602,27 +560,6 @@ "not_set": "No configurado", "not_supported": "No soportado aún" }, - "Level_up_any_character_1_time": { - "name": "Mejora el nivel de cualquier personaje 1 vez", - "help": "", - "achievable": "Completable", - "not_set": "No configurado", - "not_supported": "No soportado aún" - }, - "Level_up_any_Light_Cone_1_time": { - "name": "Mejora cualquier cono de luz 1 vez", - "help": "", - "achievable": "Completable", - "not_set": "No configurado", - "not_supported": "No soportado aún" - }, - "Level_up_any_Relic_1_time": { - "name": "Mejora cualquier artefacto 1 vez", - "help": "", - "achievable": "Completable", - "not_set": "No configurado", - "not_supported": "No soportado aún" - }, "Salvage_any_Relic": { "name": "Destruye 1 artefacto", "help": "Completable por defecto. Se destruirá la última ordenado ascendentemente por rareza.", @@ -630,20 +567,6 @@ "not_set": "No configurado", "not_supported": "No soportado aún" }, - "Synthesize_Consumable_1_time": { - "name": "Sintetiza consumibles 1 vez", - "help": "Completable por defecto, se sintetizará un snack.", - "achievable": "Completable", - "not_set": "No configurado", - "not_supported": "No soportado aún" - }, - "Synthesize_material_1_time": { - "name": "Sintetiza materiales 1 vez", - "help": "Completable por defecto, se sintetizará un material de nivel bajo.", - "achievable": "Completable", - "not_set": "No configurado", - "not_supported": "No soportado aún" - }, "Use_Consumables_1_time": { "name": "Usa 1 consumible", "help": "Completable por defecto. Se sintetizará uno si no tienes ninguno.", @@ -679,23 +602,16 @@ "not_set": "No configurado", "not_supported": "No soportado aún" }, - "Enter_combat_by_attacking_enemie_Weakness_and_win_1_times": { - "name": "Entra en combate atacando la debilidad del enemigo y gana 1 veces", - "help": "AchievableQuest.Enter_combat_by_attacking_enemie_Weakness_and_win_1_times.help", + "Enter_combat_by_attacking_enemie_Weakness_and_win_3_times": { + "name": "Entra en combate atacando la debilidad del enemigo y gana 3 veces", + "help": "AchievableQuest.Enter_combat_by_attacking_enemie_Weakness_and_win_3_times.help", "achievable": "Completable", "not_set": "No configurado", "not_supported": "No soportado aún" }, - "Use_Technique_1_times": { - "name": "Usa técnicas 1 veces", - "help": "AchievableQuest.Use_Technique_1_times.help", - "achievable": "Completable", - "not_set": "No configurado", - "not_supported": "No soportado aún" - }, - "Destroy_1_destructible_objects": { - "name": "Destruye 1 objetos destruibles", - "help": "AchievableQuest.Destroy_1_destructible_objects.help", + "Use_Technique_2_times": { + "name": "Usa técnicas 2 veces", + "help": "Alcanzable por defecto, irá al abismo y usará la técnica 2 veces.", "achievable": "Completable", "not_set": "No configurado", "not_supported": "No soportado aún" @@ -735,9 +651,9 @@ "not_set": "No configurado", "not_supported": "No soportado aún" }, - "Consume_1_Trailblaze_Power": { - "name": "Consume 1 pts. de Poder trazacaminos", - "help": "AchievableQuest.Consume_1_Trailblaze_Power.help", + "Consume_120_Trailblaze_Power": { + "name": "Consume 120 pts. de Poder trazacaminos", + "help": "AchievableQuest.Consume_120_Trailblaze_Power.help", "achievable": "Completable", "not_set": "No configurado", "not_supported": "No soportado aún" diff --git a/module/config/i18n/ja-JP.json b/module/config/i18n/ja-JP.json index 2d580fa53..78996ae3b 100644 --- a/module/config/i18n/ja-JP.json +++ b/module/config/i18n/ja-JP.json @@ -490,13 +490,6 @@ "not_set": "not_set", "not_supported": "not_supported" }, - "Complete_Calyx_Crimson_1_time": { - "name": "「疑似花萼(赤)」を1回クリアする", - "help": "AchievableQuest.Complete_Calyx_Crimson_1_time.help", - "achievable": "achievable", - "not_set": "not_set", - "not_supported": "not_supported" - }, "Clear_Stagnant_Shadow_1_times": { "name": "「凝結虚影」を1回クリアする", "help": "AchievableQuest.Clear_Stagnant_Shadow_1_times.help", @@ -532,36 +525,8 @@ "not_set": "not_set", "not_supported": "not_supported" }, - "Enter_combat_by_attacking_enemy_Weakness_and_win_3_times": { - "name": "弱点を攻撃して戦闘に入り、3回勝利する", - "help": "AchievableQuest.Enter_combat_by_attacking_enemy_Weakness_and_win_3_times.help", - "achievable": "achievable", - "not_set": "not_set", - "not_supported": "not_supported" - }, - "Use_Technique_2_times": { - "name": "秘技を累計2回発動する", - "help": "AchievableQuest.Use_Technique_2_times.help", - "achievable": "achievable", - "not_set": "not_set", - "not_supported": "not_supported" - }, - "Go_on_assignment_1_time": { - "name": "依頼に1回派遣する", - "help": "AchievableQuest.Go_on_assignment_1_time.help", - "achievable": "achievable", - "not_set": "not_set", - "not_supported": "not_supported" - }, - "Take_1_photo": { - "name": "1回撮影する", - "help": "AchievableQuest.Take_1_photo.help", - "achievable": "achievable", - "not_set": "not_set", - "not_supported": "not_supported" - }, "Destroy_3_destructible_objects": { - "name": "破壊できるオブジェクトを累計で3つ破壊する", + "name": "破壊できるオブジェクトを累計で3個破壊する", "help": "AchievableQuest.Destroy_3_destructible_objects.help", "achievable": "achievable", "not_set": "not_set", @@ -581,13 +546,6 @@ "not_set": "not_set", "not_supported": "not_supported" }, - "Complete_1_stage_in_Simulated_Universe_Any_world": { - "name": "「模擬宇宙」のエリアを1つクリアする(任意の世界)", - "help": "AchievableQuest.Complete_1_stage_in_Simulated_Universe_Any_world.help", - "achievable": "achievable", - "not_set": "not_set", - "not_supported": "not_supported" - }, "Obtain_victory_in_combat_with_Support_Characters_1_time": { "name": "サポートキャラを使い、戦闘に1回勝利する", "help": "AchievableQuest.Obtain_victory_in_combat_with_Support_Characters_1_time.help", @@ -602,27 +560,6 @@ "not_set": "not_set", "not_supported": "not_supported" }, - "Level_up_any_character_1_time": { - "name": "任意のキャラを1回レベルアップする", - "help": "AchievableQuest.Level_up_any_character_1_time.help", - "achievable": "achievable", - "not_set": "not_set", - "not_supported": "not_supported" - }, - "Level_up_any_Light_Cone_1_time": { - "name": "任意の光円錐を1回レベルアップする", - "help": "AchievableQuest.Level_up_any_Light_Cone_1_time.help", - "achievable": "achievable", - "not_set": "not_set", - "not_supported": "not_supported" - }, - "Level_up_any_Relic_1_time": { - "name": "任意の遺物を1回レベルアップする", - "help": "AchievableQuest.Level_up_any_Relic_1_time.help", - "achievable": "achievable", - "not_set": "not_set", - "not_supported": "not_supported" - }, "Salvage_any_Relic": { "name": "任意の遺物1つを分解する", "help": "AchievableQuest.Salvage_any_Relic.help", @@ -630,20 +567,6 @@ "not_set": "not_set", "not_supported": "not_supported" }, - "Synthesize_Consumable_1_time": { - "name": "消耗品を1回合成する", - "help": "AchievableQuest.Synthesize_Consumable_1_time.help", - "achievable": "achievable", - "not_set": "not_set", - "not_supported": "not_supported" - }, - "Synthesize_material_1_time": { - "name": "素材を1回合成する", - "help": "AchievableQuest.Synthesize_material_1_time.help", - "achievable": "achievable", - "not_set": "not_set", - "not_supported": "not_supported" - }, "Use_Consumables_1_time": { "name": "消耗品を1個使う", "help": "AchievableQuest.Use_Consumables_1_time.help", @@ -679,23 +602,16 @@ "not_set": "not_set", "not_supported": "not_supported" }, - "Enter_combat_by_attacking_enemie_Weakness_and_win_1_times": { - "name": "弱点を攻撃して戦闘に入り、1回勝利する", - "help": "AchievableQuest.Enter_combat_by_attacking_enemie_Weakness_and_win_1_times.help", + "Enter_combat_by_attacking_enemie_Weakness_and_win_3_times": { + "name": "弱点を攻撃して戦闘に入り、3回勝利する", + "help": "AchievableQuest.Enter_combat_by_attacking_enemie_Weakness_and_win_3_times.help", "achievable": "achievable", "not_set": "not_set", "not_supported": "not_supported" }, - "Use_Technique_1_times": { - "name": "累計で秘技を1回発動する", - "help": "AchievableQuest.Use_Technique_1_times.help", - "achievable": "achievable", - "not_set": "not_set", - "not_supported": "not_supported" - }, - "Destroy_1_destructible_objects": { - "name": "破壊できるオブジェクトを累計で1個破壊する", - "help": "AchievableQuest.Destroy_1_destructible_objects.help", + "Use_Technique_2_times": { + "name": "累計で秘技を2回発動する", + "help": "AchievableQuest.Use_Technique_2_times.help", "achievable": "achievable", "not_set": "not_set", "not_supported": "not_supported" @@ -735,9 +651,9 @@ "not_set": "not_set", "not_supported": "not_supported" }, - "Consume_1_Trailblaze_Power": { - "name": "累計で開拓力×1を消費する", - "help": "AchievableQuest.Consume_1_Trailblaze_Power.help", + "Consume_120_Trailblaze_Power": { + "name": "累計で開拓力×120を消費する", + "help": "AchievableQuest.Consume_120_Trailblaze_Power.help", "achievable": "achievable", "not_set": "not_set", "not_supported": "not_supported" diff --git a/module/config/i18n/zh-CN.json b/module/config/i18n/zh-CN.json index 0c29e07ea..8c9720553 100644 --- a/module/config/i18n/zh-CN.json +++ b/module/config/i18n/zh-CN.json @@ -490,13 +490,6 @@ "not_set": "未设置", "not_supported": "暂未支持" }, - "Complete_Calyx_Crimson_1_time": { - "name": "完成1次「拟造花萼(赤)」", - "help": "需要设置并启用\"每日副本\"任务", - "achievable": "可完成", - "not_set": "未设置", - "not_supported": "暂未支持" - }, "Clear_Stagnant_Shadow_1_times": { "name": "完成1次「凝滞虚影」", "help": "需要设置并启用\"每日副本\"任务", @@ -532,34 +525,6 @@ "not_set": "未设置", "not_supported": "暂未支持" }, - "Enter_combat_by_attacking_enemy_Weakness_and_win_3_times": { - "name": "利用弱点进入战斗并获胜3次", - "help": "默认可完成,将做姬子试用", - "achievable": "可完成", - "not_set": "未设置", - "not_supported": "暂未支持" - }, - "Use_Technique_2_times": { - "name": "累计施放2次秘技", - "help": "默认可完成,将前往深渊一施放2次秘技", - "achievable": "可完成", - "not_set": "未设置", - "not_supported": "暂未支持" - }, - "Go_on_assignment_1_time": { - "name": "派遣1次委托", - "help": "需要设置并启用\"委托\"任务", - "achievable": "可完成", - "not_set": "未设置", - "not_supported": "暂未支持" - }, - "Take_1_photo": { - "name": "拍照1次", - "help": "默认可完成", - "achievable": "可完成", - "not_set": "未设置", - "not_supported": "暂未支持" - }, "Destroy_3_destructible_objects": { "name": "累计击碎3个可破坏物", "help": "默认可完成,将做姬子试用", @@ -581,13 +546,6 @@ "not_set": "未设置", "not_supported": "暂未支持" }, - "Complete_1_stage_in_Simulated_Universe_Any_world": { - "name": "通关「模拟宇宙」(任意世界)的1个区域", - "help": "需要设置并启用\"模拟宇宙\"任务", - "achievable": "可完成", - "not_set": "未设置", - "not_supported": "暂未支持" - }, "Obtain_victory_in_combat_with_Support_Characters_1_time": { "name": "使用支援角色并获得战斗胜利1次", "help": "需要设置并启用\"每日副本\",且设置好友支援", @@ -602,27 +560,6 @@ "not_set": "未设置", "not_supported": "暂未支持" }, - "Level_up_any_character_1_time": { - "name": "将任意角色等级提升1次", - "help": "", - "achievable": "可完成", - "not_set": "未设置", - "not_supported": "暂未支持" - }, - "Level_up_any_Light_Cone_1_time": { - "name": "将任意光锥等级提升1次", - "help": "", - "achievable": "可完成", - "not_set": "未设置", - "not_supported": "暂未支持" - }, - "Level_up_any_Relic_1_time": { - "name": "将任意遗器等级提升1次", - "help": "", - "achievable": "可完成", - "not_set": "未设置", - "not_supported": "暂未支持" - }, "Salvage_any_Relic": { "name": "分解任意1件遗器", "help": "默认可完成,将分解遗器稀有度倒序的第一个", @@ -630,20 +567,6 @@ "not_set": "未设置", "not_supported": "暂未支持" }, - "Synthesize_Consumable_1_time": { - "name": "合成1次消耗品", - "help": "默认可完成,将合成最低级零食", - "achievable": "可完成", - "not_set": "未设置", - "not_supported": "暂未支持" - }, - "Synthesize_material_1_time": { - "name": "合成1次材料", - "help": "默认可完成,将合成最低级材料", - "achievable": "可完成", - "not_set": "未设置", - "not_supported": "暂未支持" - }, "Use_Consumables_1_time": { "name": "使用1件消耗品", "help": "默认可完成,将使用护具,无材料时先合成再使用", @@ -653,98 +576,91 @@ }, "Log_in_to_the_game": { "name": "登录游戏", - "help": "AchievableQuest.Log_in_to_the_game.help", + "help": "", "achievable": "可完成", "not_set": "未设置", "not_supported": "暂未支持" }, "Dispatch_1_assignments": { "name": "派遣1次委托", - "help": "AchievableQuest.Dispatch_1_assignments.help", + "help": "需要设置并启用\"委托\"任务", "achievable": "可完成", "not_set": "未设置", "not_supported": "暂未支持" }, "Complete_Simulated_Universe_1_times": { "name": "完成1次「模拟宇宙」", - "help": "AchievableQuest.Complete_Simulated_Universe_1_times.help", + "help": "需要设置并启用\"模拟宇宙\"任务", "achievable": "可完成", "not_set": "未设置", "not_supported": "暂未支持" }, "Clear_Calyx_Crimson_1_times": { "name": "完成1次「拟造花萼(赤)」", - "help": "AchievableQuest.Clear_Calyx_Crimson_1_times.help", + "help": "需要设置并启用\"每日副本\"任务", "achievable": "可完成", "not_set": "未设置", "not_supported": "暂未支持" }, - "Enter_combat_by_attacking_enemie_Weakness_and_win_1_times": { - "name": "利用弱点进入战斗并获胜1次", - "help": "AchievableQuest.Enter_combat_by_attacking_enemie_Weakness_and_win_1_times.help", + "Enter_combat_by_attacking_enemie_Weakness_and_win_3_times": { + "name": "利用弱点进入战斗并获胜3次", + "help": "默认可完成,将做姬子试用", "achievable": "可完成", "not_set": "未设置", "not_supported": "暂未支持" }, - "Use_Technique_1_times": { - "name": "累计施放1次秘技", - "help": "AchievableQuest.Use_Technique_1_times.help", - "achievable": "可完成", - "not_set": "未设置", - "not_supported": "暂未支持" - }, - "Destroy_1_destructible_objects": { - "name": "累计击碎1个可破坏物", - "help": "AchievableQuest.Destroy_1_destructible_objects.help", + "Use_Technique_2_times": { + "name": "累计施放2次秘技", + "help": "默认可完成,将前往深渊一施放2次秘技", "achievable": "可完成", "not_set": "未设置", "not_supported": "暂未支持" }, "Obtain_victory_in_combat_with_Support_Characters_1_times": { "name": "使用支援角色并获得战斗胜利1次", - "help": "AchievableQuest.Obtain_victory_in_combat_with_Support_Characters_1_times.help", + "help": "需要设置并启用\"每日副本\",且设置好友支援", "achievable": "可完成", "not_set": "未设置", "not_supported": "暂未支持" }, "Level_up_any_character_1_times": { "name": "将任意角色等级提升1次", - "help": "AchievableQuest.Level_up_any_character_1_times.help", + "help": "", "achievable": "可完成", "not_set": "未设置", "not_supported": "暂未支持" }, "Level_up_any_Light_Cone_1_times": { "name": "将任意光锥等级提升1次", - "help": "AchievableQuest.Level_up_any_Light_Cone_1_times.help", + "help": "", "achievable": "可完成", "not_set": "未设置", "not_supported": "暂未支持" }, "Use_the_Omni_Synthesizer_1_times": { "name": "使用1次「万能合成机」", - "help": "AchievableQuest.Use_the_Omni_Synthesizer_1_times.help", + "help": "默认可完成,将合成最低级材料", "achievable": "可完成", "not_set": "未设置", "not_supported": "暂未支持" }, "Take_photos_1_times": { "name": "拍照1次", - "help": "AchievableQuest.Take_photos_1_times.help", + "help": "默认可完成", "achievable": "可完成", "not_set": "未设置", "not_supported": "暂未支持" }, - "Consume_1_Trailblaze_Power": { - "name": "累计消耗1点开拓力", - "help": "AchievableQuest.Consume_1_Trailblaze_Power.help", + "Consume_120_Trailblaze_Power": { + "name": "累计消耗120点开拓力", + "help": "", "achievable": "可完成", "not_set": "未设置", "not_supported": "暂未支持" }, "Level_up_any_Relic_1_times": { "name": "将任意遗器等级提升1次", - "help": "AchievableQuest.Level_up_any_Relic_1_times.help", + "help": "", "achievable": "可完成", "not_set": "未设置", "not_supported": "暂未支持" diff --git a/module/config/i18n/zh-TW.json b/module/config/i18n/zh-TW.json index f1dd931f2..99c32b8e3 100644 --- a/module/config/i18n/zh-TW.json +++ b/module/config/i18n/zh-TW.json @@ -490,13 +490,6 @@ "not_set": "未設定", "not_supported": "暫未支援" }, - "Complete_Calyx_Crimson_1_time": { - "name": "完成1次「擬造花萼(赤)」", - "help": "需要設定並啟用\"每日副本\"任務", - "achievable": "可完成", - "not_set": "未設定", - "not_supported": "暫未支援" - }, "Clear_Stagnant_Shadow_1_times": { "name": "完成1次「凝滯虛影」", "help": "需要設定並啟用\"每日副本\"任務", @@ -532,34 +525,6 @@ "not_set": "未設定", "not_supported": "暫未支援" }, - "Enter_combat_by_attacking_enemy_Weakness_and_win_3_times": { - "name": "利用弱點進入戰鬥並獲勝3次", - "help": "預設可完成,將做姬子試用", - "achievable": "可完成", - "not_set": "未設定", - "not_supported": "暫未支援" - }, - "Use_Technique_2_times": { - "name": "累積施放2次秘技", - "help": "預設可完成,將前往深淵一施放2次秘技", - "achievable": "可完成", - "not_set": "未設定", - "not_supported": "暫未支援" - }, - "Go_on_assignment_1_time": { - "name": "派遣1次委託", - "help": "需要設定並啟用\"委託\"任務", - "achievable": "可完成", - "not_set": "未設定", - "not_supported": "暫未支援" - }, - "Take_1_photo": { - "name": "拍照1次", - "help": "預設可完成", - "achievable": "可完成", - "not_set": "未設定", - "not_supported": "暫未支援" - }, "Destroy_3_destructible_objects": { "name": "累積擊碎3個可破壞物", "help": "預設可完成,將做姬子試用", @@ -581,13 +546,6 @@ "not_set": "未設定", "not_supported": "暫未支援" }, - "Complete_1_stage_in_Simulated_Universe_Any_world": { - "name": "完成「模擬宇宙」任意世界的1個區域", - "help": "需要設定並啟用\"模擬宇宙\"任務", - "achievable": "可完成", - "not_set": "未設定", - "not_supported": "暫未支援" - }, "Obtain_victory_in_combat_with_Support_Characters_1_time": { "name": "使用支援角色並獲得戰鬥勝利1次", "help": "需要設定並啟用\"每日副本\",且設並好友支援", @@ -602,27 +560,6 @@ "not_set": "未設定", "not_supported": "暫未支援" }, - "Level_up_any_character_1_time": { - "name": "將任意角色等級提升1次", - "help": "", - "achievable": "可完成", - "not_set": "未設定", - "not_supported": "暫未支援" - }, - "Level_up_any_Light_Cone_1_time": { - "name": "將任意光錐等級提升1次", - "help": "", - "achievable": "可完成", - "not_set": "未設定", - "not_supported": "暫未支援" - }, - "Level_up_any_Relic_1_time": { - "name": "將任意遺器等級提升1次", - "help": "", - "achievable": "可完成", - "not_set": "未設定", - "not_supported": "暫未支援" - }, "Salvage_any_Relic": { "name": "分解任意1件遺器", "help": "預設可完成,將分解遺器稀有度倒序的第一個", @@ -630,20 +567,6 @@ "not_set": "未設定", "not_supported": "暫未支援" }, - "Synthesize_Consumable_1_time": { - "name": "合成1次消耗品", - "help": "預設可完成,將合成最低級零食", - "achievable": "可完成", - "not_set": "未設定", - "not_supported": "暫未支援" - }, - "Synthesize_material_1_time": { - "name": "合成1次素材", - "help": "預設可完成,將合成最低級素材", - "achievable": "可完成", - "not_set": "未設定", - "not_supported": "暫未支援" - }, "Use_Consumables_1_time": { "name": "使用1件消耗品", "help": "預設可完成,將使用護具,無材料時先合成再使用", @@ -653,21 +576,21 @@ }, "Log_in_to_the_game": { "name": "登入遊戲", - "help": "AchievableQuest.Log_in_to_the_game.help", + "help": "", "achievable": "可完成", "not_set": "未設定", "not_supported": "暫未支援" }, "Dispatch_1_assignments": { "name": "派遣1次委託", - "help": "AchievableQuest.Dispatch_1_assignments.help", + "help": "需要設定並啟用\"委託\"任務", "achievable": "可完成", "not_set": "未設定", "not_supported": "暫未支援" }, "Complete_Simulated_Universe_1_times": { "name": "完成1次「模擬宇宙」", - "help": "AchievableQuest.Complete_Simulated_Universe_1_times.help", + "help": "需要設定並啟用\"模擬宇宙\"任務", "achievable": "可完成", "not_set": "未設定", "not_supported": "暫未支援" @@ -679,72 +602,65 @@ "not_set": "未設定", "not_supported": "暫未支援" }, - "Enter_combat_by_attacking_enemie_Weakness_and_win_1_times": { - "name": "利用弱點進入戰鬥並獲勝1次", - "help": "AchievableQuest.Enter_combat_by_attacking_enemie_Weakness_and_win_1_times.help", + "Enter_combat_by_attacking_enemie_Weakness_and_win_3_times": { + "name": "利用弱點進入戰鬥並獲勝3次", + "help": "預設可完成,將做姬子試用", "achievable": "可完成", "not_set": "未設定", "not_supported": "暫未支援" }, - "Use_Technique_1_times": { - "name": "累積施放1次秘技", - "help": "AchievableQuest.Use_Technique_1_times.help", - "achievable": "可完成", - "not_set": "未設定", - "not_supported": "暫未支援" - }, - "Destroy_1_destructible_objects": { - "name": "累積擊碎1個可破壞物", - "help": "AchievableQuest.Destroy_1_destructible_objects.help", + "Use_Technique_2_times": { + "name": "累積施放2次秘技", + "help": "預設可完成,將前往深淵一施放2次秘技", "achievable": "可完成", "not_set": "未設定", "not_supported": "暫未支援" }, "Obtain_victory_in_combat_with_Support_Characters_1_times": { "name": "使用支援角色並獲得戰鬥勝利1次", - "help": "AchievableQuest.Obtain_victory_in_combat_with_Support_Characters_1_times.help", + "help": "需要設定並啟用\"每日副本\",且設並好友支援", "achievable": "可完成", "not_set": "未設定", "not_supported": "暫未支援" }, "Level_up_any_character_1_times": { "name": "將任意角色等級提升1次", - "help": "AchievableQuest.Level_up_any_character_1_times.help", + "help": "", "achievable": "可完成", "not_set": "未設定", "not_supported": "暫未支援" }, "Level_up_any_Light_Cone_1_times": { "name": "將任意光錐等級提升1次", - "help": "AchievableQuest.Level_up_any_Light_Cone_1_times.help", + "help": "", "achievable": "可完成", "not_set": "未設定", "not_supported": "暫未支援" }, "Use_the_Omni_Synthesizer_1_times": { "name": "使用1次「萬能合成機」", - "help": "AchievableQuest.Use_the_Omni_Synthesizer_1_times.help", + "help": "預設可完成,將合成最低級素材", "achievable": "可完成", "not_set": "未設定", "not_supported": "暫未支援" }, "Take_photos_1_times": { "name": "拍照1次", - "help": "AchievableQuest.Take_photos_1_times.help", + "help": "預設可完成", "achievable": "可完成", "not_set": "未設定", "not_supported": "暫未支援" }, - "Consume_1_Trailblaze_Power": { - "name": "累積消耗1點開拓力", - "help": "AchievableQuest.Consume_1_Trailblaze_Power.help", + "Consume_120_Trailblaze_Power": { + "name": "累積消耗120點開拓力", + "help": "", "achievable": "可完成", "not_set": "未設定", "not_supported": "暫未支援" }, "Level_up_any_Relic_1_times": { "name": "將任意遺器等級提升1次", - "help": "AchievableQuest.Level_up_any_Relic_1_times.help", + "help": "", "achievable": "可完成", "not_set": "未設定", "not_supported": "暫未支援" From c760cf3c9d57c804a177458f891afa0771015df6 Mon Sep 17 00:00:00 2001 From: X-Zero-L Date: Wed, 27 Dec 2023 23:52:43 +0800 Subject: [PATCH 11/16] Upd: 18n --- module/config/i18n/en-US.json | 22 +++++++++++----------- module/config/i18n/zh-TW.json | 2 +- 2 files changed, 12 insertions(+), 12 deletions(-) diff --git a/module/config/i18n/en-US.json b/module/config/i18n/en-US.json index 3926f5f3b..dd281b58c 100644 --- a/module/config/i18n/en-US.json +++ b/module/config/i18n/en-US.json @@ -576,21 +576,21 @@ }, "Log_in_to_the_game": { "name": "Log in to the game", - "help": "AchievableQuest.Log_in_to_the_game.help", + "help": "", "achievable": "Achievable", "not_set": "Not Set", "not_supported": "Not Supported Yet" }, "Dispatch_1_assignments": { "name": "Dispatch 1 assignment(s)", - "help": "AchievableQuest.Dispatch_1_assignments.help", + "help": "Need to configure and enable the \"Assignment\" task", "achievable": "Achievable", "not_set": "Not Set", "not_supported": "Not Supported Yet" }, "Complete_Simulated_Universe_1_times": { "name": "Complete Simulated Universe 1 time(s)", - "help": "AchievableQuest.Complete_Simulated_Universe_1_times.help", + "help": "Need to configure and enable the \"Simulated Universe\" task", "achievable": "Achievable", "not_set": "Not Set", "not_supported": "Not Supported Yet" @@ -604,7 +604,7 @@ }, "Enter_combat_by_attacking_enemie_Weakness_and_win_3_times": { "name": "Enter combat by attacking enemies' Weakness and win 3 time(s)", - "help": "AchievableQuest.Enter_combat_by_attacking_enemie_Weakness_and_win_3_times.help", + "help": "Achievable by default, will do Himeko trial", "achievable": "Achievable", "not_set": "Not Set", "not_supported": "Not Supported Yet" @@ -618,49 +618,49 @@ }, "Obtain_victory_in_combat_with_Support_Characters_1_times": { "name": "Obtain victory in combat with Support Characters 1 time(s)", - "help": "AchievableQuest.Obtain_victory_in_combat_with_Support_Characters_1_times.help", + "help": "Need to configure and enable the \"Dungeon\" task, configure support settings also", "achievable": "Achievable", "not_set": "Not Set", "not_supported": "Not Supported Yet" }, "Level_up_any_character_1_times": { "name": "Level up any character 1 time(s)", - "help": "AchievableQuest.Level_up_any_character_1_times.help", + "help": "", "achievable": "Achievable", "not_set": "Not Set", "not_supported": "Not Supported Yet" }, "Level_up_any_Light_Cone_1_times": { "name": "Level up any Light Cone 1 time(s)", - "help": "AchievableQuest.Level_up_any_Light_Cone_1_times.help", + "help": "", "achievable": "Achievable", "not_set": "Not Set", "not_supported": "Not Supported Yet" }, "Use_the_Omni_Synthesizer_1_times": { "name": "Use the Omni-Synthesizer 1 time(s)", - "help": "AchievableQuest.Use_the_Omni_Synthesizer_1_times.help", + "help": "Achievable by default, will synthesize low-rarity material", "achievable": "Achievable", "not_set": "Not Set", "not_supported": "Not Supported Yet" }, "Take_photos_1_times": { "name": "Take photos 1 time(s)", - "help": "AchievableQuest.Take_photos_1_times.help", + "help": "Achievable by default", "achievable": "Achievable", "not_set": "Not Set", "not_supported": "Not Supported Yet" }, "Consume_120_Trailblaze_Power": { "name": "Consume 120 Trailblaze Power", - "help": "AchievableQuest.Consume_120_Trailblaze_Power.help", + "help": "", "achievable": "Achievable", "not_set": "Not Set", "not_supported": "Not Supported Yet" }, "Level_up_any_Relic_1_times": { "name": "Level up any Relic 1 time(s)", - "help": "AchievableQuest.Level_up_any_Relic_1_times.help", + "help": "", "achievable": "Achievable", "not_set": "Not Set", "not_supported": "Not Supported Yet" diff --git a/module/config/i18n/zh-TW.json b/module/config/i18n/zh-TW.json index 99c32b8e3..6d73319e1 100644 --- a/module/config/i18n/zh-TW.json +++ b/module/config/i18n/zh-TW.json @@ -597,7 +597,7 @@ }, "Clear_Calyx_Crimson_1_times": { "name": "完成1次「擬造花萼(赤)」", - "help": "AchievableQuest.Clear_Calyx_Crimson_1_times.help", + "help": "需要設定並啟用\"每日副本\"任務", "achievable": "可完成", "not_set": "未設定", "not_supported": "暫未支援" From 949d4f2cdf77464e05bd4ff137be44947e7efcef Mon Sep 17 00:00:00 2001 From: X-Zero-L Date: Thu, 28 Dec 2023 00:01:05 +0800 Subject: [PATCH 12/16] Upd: i18n --- module/config/i18n/es-ES.json | 24 ++++++++++++------------ 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/module/config/i18n/es-ES.json b/module/config/i18n/es-ES.json index c8390788f..51ea5fb4b 100644 --- a/module/config/i18n/es-ES.json +++ b/module/config/i18n/es-ES.json @@ -576,35 +576,35 @@ }, "Log_in_to_the_game": { "name": "Inicia sesión en el juego", - "help": "AchievableQuest.Log_in_to_the_game.help", + "help": "", "achievable": "Completable", "not_set": "No configurado", "not_supported": "No soportado aún" }, "Dispatch_1_assignments": { "name": "Asigna 1 encargo", - "help": "AchievableQuest.Dispatch_1_assignments.help", + "help": "Necesitas configurar y activar la tarea de \"Encargos\"", "achievable": "Completable", "not_set": "No configurado", "not_supported": "No soportado aún" }, "Complete_Simulated_Universe_1_times": { "name": "Completa el Universo Simulado 1 vez", - "help": "AchievableQuest.Complete_Simulated_Universe_1_times.help", + "help": "Necesitas configurar y activar la tarea \"Universo Simulado\"", "achievable": "Completable", "not_set": "No configurado", "not_supported": "No soportado aún" }, "Clear_Calyx_Crimson_1_times": { "name": "Completa Cáliz (carmesí) 1 vez", - "help": "AchievableQuest.Clear_Calyx_Crimson_1_times.help", + "help": "Necesitas configurar y activar la tarea \"Mazmorra\"", "achievable": "Completable", "not_set": "No configurado", "not_supported": "No soportado aún" }, "Enter_combat_by_attacking_enemie_Weakness_and_win_3_times": { "name": "Entra en combate atacando la debilidad del enemigo y gana 3 veces", - "help": "AchievableQuest.Enter_combat_by_attacking_enemie_Weakness_and_win_3_times.help", + "help": "Completable por defecto, se hará el desafío de Himeko", "achievable": "Completable", "not_set": "No configurado", "not_supported": "No soportado aún" @@ -618,49 +618,49 @@ }, "Obtain_victory_in_combat_with_Support_Characters_1_times": { "name": "Gana 1 batalla(s) utilizando personajes de apoyo", - "help": "AchievableQuest.Obtain_victory_in_combat_with_Support_Characters_1_times.help", + "help": "Necesitas configurar la tarea de \"Mazmorra\", así como configurar a los héroes de apoyo.", "achievable": "Completable", "not_set": "No configurado", "not_supported": "No soportado aún" }, "Level_up_any_character_1_times": { "name": "Mejora el nivel de cualquier personaje 1 vez", - "help": "AchievableQuest.Level_up_any_character_1_times.help", + "help": "", "achievable": "Completable", "not_set": "No configurado", "not_supported": "No soportado aún" }, "Level_up_any_Light_Cone_1_times": { "name": "Mejora cualquier cono de luz 1 vez", - "help": "AchievableQuest.Level_up_any_Light_Cone_1_times.help", + "help": "", "achievable": "Completable", "not_set": "No configurado", "not_supported": "No soportado aún" }, "Use_the_Omni_Synthesizer_1_times": { "name": "Utiliza la máquina sintetizadora multiusos 1 veces", - "help": "AchievableQuest.Use_the_Omni_Synthesizer_1_times.help", + "help": "Achievable by default, will synthesize low-rarity material", "achievable": "Completable", "not_set": "No configurado", "not_supported": "No soportado aún" }, "Take_photos_1_times": { "name": "Haz 1 foto(s)", - "help": "AchievableQuest.Take_photos_1_times.help", + "help": "Completable por defecto.", "achievable": "Completable", "not_set": "No configurado", "not_supported": "No soportado aún" }, "Consume_120_Trailblaze_Power": { "name": "Consume 120 pts. de Poder trazacaminos", - "help": "AchievableQuest.Consume_120_Trailblaze_Power.help", + "help": "", "achievable": "Completable", "not_set": "No configurado", "not_supported": "No soportado aún" }, "Level_up_any_Relic_1_times": { "name": "Mejora cualquier artefacto 1 vez", - "help": "AchievableQuest.Level_up_any_Relic_1_times.help", + "help": "", "achievable": "Completable", "not_set": "No configurado", "not_supported": "No soportado aún" From e9d62faa1a5149edcb64777e6e67255994cbbcb5 Mon Sep 17 00:00:00 2001 From: X-Zero-L Date: Thu, 28 Dec 2023 00:43:20 +0800 Subject: [PATCH 13/16] Fix: unique daily quest config --- config/template.json | 22 ++++---------- dev_tools/keyword_extract.py | 2 +- module/config/argument/args.json | 45 ++++++++++------------------- module/config/config_generated.py | 3 +- module/config/config_updater.py | 19 ++++++------ module/config/i18n/en-US.json | 21 +++++--------- module/config/i18n/es-ES.json | 21 +++++--------- module/config/i18n/ja-JP.json | 21 +++++--------- module/config/i18n/zh-CN.json | 21 +++++--------- module/config/i18n/zh-TW.json | 21 +++++--------- tasks/assignment/assignment.py | 4 +-- tasks/daily/keywords/daily_quest.py | 18 ------------ tasks/dungeon/dungeon.py | 6 ++-- tasks/rogue/rogue.py | 6 ++-- 14 files changed, 75 insertions(+), 155 deletions(-) diff --git a/config/template.json b/config/template.json index 263b8d86b..8cc4e99b2 100644 --- a/config/template.json +++ b/config/template.json @@ -79,36 +79,26 @@ "In_a_single_battle_inflict_3_Weakness_Break_of_different_Types": "achievable", "Inflict_Weakness_Break_5_times": "achievable", "Defeat_a_total_of_20_enemies": "achievable", - "Destroy_3_destructible_objects": "achievable", "Complete_Forgotten_Hall_1_time": "achievable", "Complete_Echo_of_War_1_times": "not_set", - "Obtain_victory_in_combat_with_Support_Characters_1_time": "achievable", "Use_an_Ultimate_to_deal_the_final_blow_1_time": "achievable", "Salvage_any_Relic": "achievable", "Use_Consumables_1_time": "achievable", "Log_in_to_the_game": "achievable", "Dispatch_1_assignments": "achievable", - "Complete_Simulated_Universe_1_times": "achievable", + "Complete_Simulated_Universe_1_times": "not_set", "Clear_Calyx_Crimson_1_times": "achievable", "Enter_combat_by_attacking_enemie_Weakness_and_win_3_times": "achievable", "Use_Technique_2_times": "achievable", + "Destroy_3_destructible_objects": "achievable", "Obtain_victory_in_combat_with_Support_Characters_1_times": "achievable", - "Level_up_any_character_1_times": "achievable", - "Level_up_any_Light_Cone_1_times": "achievable", + "Level_up_any_character_1_times": "not_supported", + "Level_up_any_Light_Cone_1_times": "not_supported", "Use_the_Omni_Synthesizer_1_times": "achievable", "Take_photos_1_times": "achievable", "Consume_120_Trailblaze_Power": "achievable", - "Level_up_any_Relic_1_times": "achievable", - "Complete_Calyx_Crimson_1_time": "achievable", - "Enter_combat_by_attacking_enemy_Weakness_and_win_3_times": "achievable", - "Go_on_assignment_1_time": "achievable", - "Take_1_photo": "achievable", - "Complete_1_stage_in_Simulated_Universe_Any_world": "not_set", - "Level_up_any_character_1_time": "not_supported", - "Level_up_any_Light_Cone_1_time": "not_supported", - "Level_up_any_Relic_1_time": "not_supported", - "Synthesize_Consumable_1_time": "achievable", - "Synthesize_material_1_time": "achievable" + "Level_up_any_Relic_1_times": "not_supported", + "Enter_combat_by_attacking_enemy_Weakness_and_win_3_times": "achievable" }, "DailyStorage": { "DailyActivity": {}, diff --git a/dev_tools/keyword_extract.py b/dev_tools/keyword_extract.py index 3c2f2431b..1953943d0 100644 --- a/dev_tools/keyword_extract.py +++ b/dev_tools/keyword_extract.py @@ -250,7 +250,7 @@ class KeywordExtract: "Complete_Calyx_Crimson_1_time", # -> Clear_Calyx_Crimson_1_times "Enter_combat_by_attacking_enemy_Weakness_and_win_3_times", # -> Enter_combat_by_attacking_enemie_Weakness_and_win_1_times "Use_Technique_2_times", # -> Use_Technique_1_times - "Destroy_3_destructible_objects" # -> Destroy_1_destructible_objects + "Destroy_3_destructible_objects", # -> Destroy_1_destructible_objects "Obtain_victory_in_combat_with_Support_Characters_1_time", # -> Obtain_victory_in_combat_with_Support_Characters_1_times "Level_up_any_character_1_time", # -> Level_up_any_character_1_times "Level_up_any_Light_Cone_1_time", # -> Level_up_any_Light_Cone_1_times diff --git a/module/config/argument/args.json b/module/config/argument/args.json index dfdb7aa1b..c32ce53fd 100644 --- a/module/config/argument/args.json +++ b/module/config/argument/args.json @@ -564,21 +564,6 @@ "not_supported" ] }, - "Destroy_3_destructible_objects": { - "type": "state", - "value": "achievable", - "option": [ - "achievable", - "not_set", - "not_supported" - ], - "option_bold": [ - "achievable" - ], - "option_light": [ - "not_supported" - ] - }, "Complete_Forgotten_Hall_1_time": { "type": "state", "value": "achievable", @@ -609,21 +594,6 @@ "not_supported" ] }, - "Obtain_victory_in_combat_with_Support_Characters_1_time": { - "type": "state", - "value": "achievable", - "option": [ - "achievable", - "not_set", - "not_supported" - ], - "option_bold": [ - "achievable" - ], - "option_light": [ - "not_supported" - ] - }, "Use_an_Ultimate_to_deal_the_final_blow_1_time": { "type": "state", "value": "achievable", @@ -759,6 +729,21 @@ "not_supported" ] }, + "Destroy_3_destructible_objects": { + "type": "state", + "value": "achievable", + "option": [ + "achievable", + "not_set", + "not_supported" + ], + "option_bold": [ + "achievable" + ], + "option_light": [ + "not_supported" + ] + }, "Obtain_victory_in_combat_with_Support_Characters_1_times": { "type": "state", "value": "achievable", diff --git a/module/config/config_generated.py b/module/config/config_generated.py index 41c7ecdf6..a1234c23b 100644 --- a/module/config/config_generated.py +++ b/module/config/config_generated.py @@ -77,10 +77,8 @@ class GeneratedConfig: AchievableQuest_In_a_single_battle_inflict_3_Weakness_Break_of_different_Types = 'achievable' # achievable, not_set, not_supported AchievableQuest_Inflict_Weakness_Break_5_times = 'achievable' # achievable, not_set, not_supported AchievableQuest_Defeat_a_total_of_20_enemies = 'achievable' # achievable, not_set, not_supported - AchievableQuest_Destroy_3_destructible_objects = 'achievable' # achievable, not_set, not_supported AchievableQuest_Complete_Forgotten_Hall_1_time = 'achievable' # achievable, not_set, not_supported AchievableQuest_Complete_Echo_of_War_1_times = 'achievable' # achievable, not_set, not_supported - AchievableQuest_Obtain_victory_in_combat_with_Support_Characters_1_time = 'achievable' # achievable, not_set, not_supported AchievableQuest_Use_an_Ultimate_to_deal_the_final_blow_1_time = 'achievable' # achievable, not_set, not_supported AchievableQuest_Salvage_any_Relic = 'achievable' # achievable, not_set, not_supported AchievableQuest_Use_Consumables_1_time = 'achievable' # achievable, not_set, not_supported @@ -90,6 +88,7 @@ class GeneratedConfig: AchievableQuest_Clear_Calyx_Crimson_1_times = 'achievable' # achievable, not_set, not_supported AchievableQuest_Enter_combat_by_attacking_enemie_Weakness_and_win_3_times = 'achievable' # achievable, not_set, not_supported AchievableQuest_Use_Technique_2_times = 'achievable' # achievable, not_set, not_supported + AchievableQuest_Destroy_3_destructible_objects = 'achievable' # achievable, not_set, not_supported AchievableQuest_Obtain_victory_in_combat_with_Support_Characters_1_times = 'achievable' # achievable, not_set, not_supported AchievableQuest_Level_up_any_character_1_times = 'achievable' # achievable, not_set, not_supported AchievableQuest_Level_up_any_Light_Cone_1_times = 'achievable' # achievable, not_set, not_supported diff --git a/module/config/config_updater.py b/module/config/config_updater.py index 2eb981f24..f49974636 100644 --- a/module/config/config_updater.py +++ b/module/config/config_updater.py @@ -684,7 +684,7 @@ class ConfigUpdater: dungeon = deep_get(data, keys='Dungeon.Scheduler.Enable') set_daily('Clear_Calyx_Golden_1_times', dungeon and deep_get(data, 'Dungeon.DungeonDaily.CalyxGolden') != 'do_not_achieve') - set_daily('Complete_Calyx_Crimson_1_time', + set_daily('Clear_Calyx_Crimson_1_times', dungeon and deep_get(data, 'Dungeon.DungeonDaily.CalyxCrimson') != 'do_not_achieve') set_daily('Clear_Stagnant_Shadow_1_times', dungeon and deep_get(data, 'Dungeon.DungeonDaily.StagnantShadow') != 'do_not_achieve') @@ -697,24 +697,23 @@ class ConfigUpdater: set_daily('Enter_combat_by_attacking_enemy_Weakness_and_win_3_times', 'achievable') set_daily('Use_Technique_2_times', 'achievable') # Other game systems - set_daily('Go_on_assignment_1_time', deep_get(data, 'Assignment.Scheduler.Enable')) - set_daily('Take_1_photo', 'achievable') + set_daily('Dispatch_1_assignments', deep_get(data, 'Assignment.Scheduler.Enable')) + set_daily('Take_photos_1_times', 'achievable') set_daily('Destroy_3_destructible_objects', 'achievable') set_daily('Complete_Forgotten_Hall_1_time', 'achievable') set_daily('Complete_Echo_of_War_1_times', deep_get(data, 'Weekly.Scheduler.Enable')) - set_daily('Complete_1_stage_in_Simulated_Universe_Any_world', + set_daily('Complete_Simulated_Universe_1_times', deep_get(data, 'Rogue.Scheduler.Enable')) - set_daily('Obtain_victory_in_combat_with_Support_Characters_1_time', + set_daily('Obtain_victory_in_combat_with_Support_Characters_1_times', dungeon and deep_get(data, 'Dungeon.DungeonSupport.Use') in ['when_daily', 'always_use']) set_daily('Use_an_Ultimate_to_deal_the_final_blow_1_time', 'achievable') # Build - set_daily('Level_up_any_character_1_time', 'not_supported') - set_daily('Level_up_any_Light_Cone_1_time', 'not_supported') - set_daily('Level_up_any_Relic_1_time', 'not_supported') + set_daily('Level_up_any_character_1_times', 'not_supported') + set_daily('Level_up_any_Light_Cone_1_times', 'not_supported') + set_daily('Level_up_any_Relic_1_times', 'not_supported') # Items set_daily('Salvage_any_Relic', 'achievable') - set_daily('Synthesize_Consumable_1_time', 'achievable') - set_daily('Synthesize_material_1_time', 'achievable') + set_daily('Use_the_Omni_Synthesizer_1_times', 'achievable') set_daily('Use_Consumables_1_time', 'achievable') # Limit setting combinations diff --git a/module/config/i18n/en-US.json b/module/config/i18n/en-US.json index dd281b58c..5f8511a5d 100644 --- a/module/config/i18n/en-US.json +++ b/module/config/i18n/en-US.json @@ -525,13 +525,6 @@ "not_set": "Not Set", "not_supported": "Not Supported Yet" }, - "Destroy_3_destructible_objects": { - "name": "Destroy 3 destructible object(s)", - "help": "Achievable by default, will do Himeko trial", - "achievable": "Achievable", - "not_set": "Not Set", - "not_supported": "Not Supported Yet" - }, "Complete_Forgotten_Hall_1_time": { "name": "Complete Forgotten Hall 1 time", "help": "Achievable by default, will choose the first four characters to do stage 1 once, please ensure that account build is sufficient to do stage 1", @@ -546,13 +539,6 @@ "not_set": "Not Set", "not_supported": "Not Supported Yet" }, - "Obtain_victory_in_combat_with_Support_Characters_1_time": { - "name": "Obtain victory in combat with Support Characters 1 time", - "help": "Need to configure and enable the \"Dungeon\" task, configure support settings also", - "achievable": "Achievable", - "not_set": "Not Set", - "not_supported": "Not Supported Yet" - }, "Use_an_Ultimate_to_deal_the_final_blow_1_time": { "name": "Use an Ultimate to deal the final blow 1 time", "help": "Achievable by default, will do Himeko trial", @@ -616,6 +602,13 @@ "not_set": "Not Set", "not_supported": "Not Supported Yet" }, + "Destroy_3_destructible_objects": { + "name": "Destroy 3 destructible object(s)", + "help": "Achievable by default, will do Himeko trial", + "achievable": "Achievable", + "not_set": "Not Set", + "not_supported": "Not Supported Yet" + }, "Obtain_victory_in_combat_with_Support_Characters_1_times": { "name": "Obtain victory in combat with Support Characters 1 time(s)", "help": "Need to configure and enable the \"Dungeon\" task, configure support settings also", diff --git a/module/config/i18n/es-ES.json b/module/config/i18n/es-ES.json index 51ea5fb4b..eef7a70e7 100644 --- a/module/config/i18n/es-ES.json +++ b/module/config/i18n/es-ES.json @@ -525,13 +525,6 @@ "not_set": "No configurado", "not_supported": "No soportado aún" }, - "Destroy_3_destructible_objects": { - "name": "Destruye 3 objetos destruibles", - "help": "Completable por defecto, se hará el desafío de Himeko", - "achievable": "Completable", - "not_set": "No configurado", - "not_supported": "No soportado aún" - }, "Complete_Forgotten_Hall_1_time": { "name": "Completa el Salón olvidado 1 vez", "help": "Completable por defecto, se seleccionarán los primeros 4 personajes y se hará el primer nivel. Por favor, asegúrate de que estos pueden hacerlo.", @@ -546,13 +539,6 @@ "not_set": "No configurado", "not_supported": "No soportado aún" }, - "Obtain_victory_in_combat_with_Support_Characters_1_time": { - "name": "Gana 1 batalla utilizando personajes de apoyo", - "help": "Necesitas configurar la tarea de \"Mazmorra\", así como configurar a los héroes de apoyo.", - "achievable": "Completable", - "not_set": "No configurado", - "not_supported": "No soportado aún" - }, "Use_an_Ultimate_to_deal_the_final_blow_1_time": { "name": "Asesta el golpe final con una habilidad definitiva 1 vez", "help": "Completable por defecto, se hará el desafío de Himeko", @@ -616,6 +602,13 @@ "not_set": "No configurado", "not_supported": "No soportado aún" }, + "Destroy_3_destructible_objects": { + "name": "Destruye 3 objetos destruibles", + "help": "Completable por defecto, se hará el desafío de Himeko", + "achievable": "Completable", + "not_set": "No configurado", + "not_supported": "No soportado aún" + }, "Obtain_victory_in_combat_with_Support_Characters_1_times": { "name": "Gana 1 batalla(s) utilizando personajes de apoyo", "help": "Necesitas configurar la tarea de \"Mazmorra\", así como configurar a los héroes de apoyo.", diff --git a/module/config/i18n/ja-JP.json b/module/config/i18n/ja-JP.json index 78996ae3b..7628a35bb 100644 --- a/module/config/i18n/ja-JP.json +++ b/module/config/i18n/ja-JP.json @@ -525,13 +525,6 @@ "not_set": "not_set", "not_supported": "not_supported" }, - "Destroy_3_destructible_objects": { - "name": "破壊できるオブジェクトを累計で3個破壊する", - "help": "AchievableQuest.Destroy_3_destructible_objects.help", - "achievable": "achievable", - "not_set": "not_set", - "not_supported": "not_supported" - }, "Complete_Forgotten_Hall_1_time": { "name": "「忘却の庭」を1回クリアする", "help": "AchievableQuest.Complete_Forgotten_Hall_1_time.help", @@ -546,13 +539,6 @@ "not_set": "not_set", "not_supported": "not_supported" }, - "Obtain_victory_in_combat_with_Support_Characters_1_time": { - "name": "サポートキャラを使い、戦闘に1回勝利する", - "help": "AchievableQuest.Obtain_victory_in_combat_with_Support_Characters_1_time.help", - "achievable": "achievable", - "not_set": "not_set", - "not_supported": "not_supported" - }, "Use_an_Ultimate_to_deal_the_final_blow_1_time": { "name": "必殺技で最後の一撃を1回与える", "help": "AchievableQuest.Use_an_Ultimate_to_deal_the_final_blow_1_time.help", @@ -616,6 +602,13 @@ "not_set": "not_set", "not_supported": "not_supported" }, + "Destroy_3_destructible_objects": { + "name": "破壊できるオブジェクトを累計で3個破壊する", + "help": "AchievableQuest.Destroy_3_destructible_objects.help", + "achievable": "achievable", + "not_set": "not_set", + "not_supported": "not_supported" + }, "Obtain_victory_in_combat_with_Support_Characters_1_times": { "name": "サポートキャラを使い、戦闘に1回勝利する", "help": "AchievableQuest.Obtain_victory_in_combat_with_Support_Characters_1_times.help", diff --git a/module/config/i18n/zh-CN.json b/module/config/i18n/zh-CN.json index 8c9720553..831e0b111 100644 --- a/module/config/i18n/zh-CN.json +++ b/module/config/i18n/zh-CN.json @@ -525,13 +525,6 @@ "not_set": "未设置", "not_supported": "暂未支持" }, - "Destroy_3_destructible_objects": { - "name": "累计击碎3个可破坏物", - "help": "默认可完成,将做姬子试用", - "achievable": "可完成", - "not_set": "未设置", - "not_supported": "暂未支持" - }, "Complete_Forgotten_Hall_1_time": { "name": "完成1次「忘却之庭」", "help": "默认可完成,将使用前四个角色打一次深渊一,请保证帐号练度足够打深渊一", @@ -546,13 +539,6 @@ "not_set": "未设置", "not_supported": "暂未支持" }, - "Obtain_victory_in_combat_with_Support_Characters_1_time": { - "name": "使用支援角色并获得战斗胜利1次", - "help": "需要设置并启用\"每日副本\",且设置好友支援", - "achievable": "可完成", - "not_set": "未设置", - "not_supported": "暂未支持" - }, "Use_an_Ultimate_to_deal_the_final_blow_1_time": { "name": "施放终结技造成制胜一击1次", "help": "默认可完成,将做姬子试用", @@ -616,6 +602,13 @@ "not_set": "未设置", "not_supported": "暂未支持" }, + "Destroy_3_destructible_objects": { + "name": "累计击碎3个可破坏物", + "help": "默认可完成,将做姬子试用", + "achievable": "可完成", + "not_set": "未设置", + "not_supported": "暂未支持" + }, "Obtain_victory_in_combat_with_Support_Characters_1_times": { "name": "使用支援角色并获得战斗胜利1次", "help": "需要设置并启用\"每日副本\",且设置好友支援", diff --git a/module/config/i18n/zh-TW.json b/module/config/i18n/zh-TW.json index 6d73319e1..7c39d4737 100644 --- a/module/config/i18n/zh-TW.json +++ b/module/config/i18n/zh-TW.json @@ -525,13 +525,6 @@ "not_set": "未設定", "not_supported": "暫未支援" }, - "Destroy_3_destructible_objects": { - "name": "累積擊碎3個可破壞物", - "help": "預設可完成,將做姬子試用", - "achievable": "可完成", - "not_set": "未設定", - "not_supported": "暫未支援" - }, "Complete_Forgotten_Hall_1_time": { "name": "完成1次「忘卻之庭」", "help": "預設可完成,將使用前四個角色打一次深淵一,請確保帳號練度足夠打深淵一", @@ -546,13 +539,6 @@ "not_set": "未設定", "not_supported": "暫未支援" }, - "Obtain_victory_in_combat_with_Support_Characters_1_time": { - "name": "使用支援角色並獲得戰鬥勝利1次", - "help": "需要設定並啟用\"每日副本\",且設並好友支援", - "achievable": "可完成", - "not_set": "未設定", - "not_supported": "暫未支援" - }, "Use_an_Ultimate_to_deal_the_final_blow_1_time": { "name": "施放終結技造成制勝一擊1次", "help": "預設可完成,將做姬子試用", @@ -616,6 +602,13 @@ "not_set": "未設定", "not_supported": "暫未支援" }, + "Destroy_3_destructible_objects": { + "name": "累積擊碎3個可破壞物", + "help": "預設可完成,將做姬子試用", + "achievable": "可完成", + "not_set": "未設定", + "not_supported": "暫未支援" + }, "Obtain_victory_in_combat_with_Support_Characters_1_times": { "name": "使用支援角色並獲得戰鬥勝利1次", "help": "需要設定並啟用\"每日副本\",且設並好友支援", diff --git a/tasks/assignment/assignment.py b/tasks/assignment/assignment.py index 116b631ce..6b91f7f45 100644 --- a/tasks/assignment/assignment.py +++ b/tasks/assignment/assignment.py @@ -65,8 +65,8 @@ class Assignment(AssignmentClaim, SynthesizeUI): with self.config.multi_set(): # Check daily quests = self.config.stored.DailyQuest.load_quests() - if KEYWORDS_DAILY_QUEST.Go_on_assignment_1_time in quests: - logger.info('Achieved daily quest Go_on_assignment_1_time') + if KEYWORDS_DAILY_QUEST.Dispatch_1_assignments in quests: + logger.info('Achieved daily quest Dispatch_1_assignments') self.config.task_call('DailyQuest') if self.has_new_dispatch: if KEYWORDS_DAILY_QUEST.Dispatch_1_assignments in quests: diff --git a/tasks/daily/keywords/daily_quest.py b/tasks/daily/keywords/daily_quest.py index 8fe347f8f..d055c4757 100644 --- a/tasks/daily/keywords/daily_quest.py +++ b/tasks/daily/keywords/daily_quest.py @@ -66,15 +66,6 @@ Defeat_a_total_of_20_enemies = DailyQuest( jp='敵を累計で20体倒す', es='Derrota a 20 enemigos', ) -Destroy_3_destructible_objects = DailyQuest( - id=13, - name='Destroy_3_destructible_objects', - cn='累计击碎3个可破坏物', - cht='累積擊碎3個可破壞物', - en='Destroy 3 destructible objects', - jp='破壊できるオブジェクトを累計で3つ破壊する', - es='Destruye 3 objetos destruibles', -) Complete_Forgotten_Hall_1_time = DailyQuest( id=14, name='Complete_Forgotten_Hall_1_time', @@ -93,15 +84,6 @@ Complete_Echo_of_War_1_times = DailyQuest( jp='「歴戦余韻」を1回クリアする', es='Completa Ecos de la guerra 1 vez', ) -Obtain_victory_in_combat_with_Support_Characters_1_time = DailyQuest( - id=17, - name='Obtain_victory_in_combat_with_Support_Characters_1_time', - cn='使用支援角色并获得战斗胜利1次', - cht='使用支援角色並獲得戰鬥勝利1次', - en='Obtain victory in combat with Support Characters 1 time', - jp='サポートキャラを使い、戦闘に1回勝利する', - es='Gana 1 batalla utilizando personajes de apoyo', -) Use_an_Ultimate_to_deal_the_final_blow_1_time = DailyQuest( id=18, name='Use_an_Ultimate_to_deal_the_final_blow_1_time', diff --git a/tasks/dungeon/dungeon.py b/tasks/dungeon/dungeon.py index c4115189d..3b1b59fbf 100644 --- a/tasks/dungeon/dungeon.py +++ b/tasks/dungeon/dungeon.py @@ -81,8 +81,8 @@ class Dungeon(DungeonStamina, DungeonEvent, Combat): logger.info('Achieved daily quest Clear_Calyx_Golden_1_times') self.achieved_daily_quest = True if dungeon.is_Calyx_Crimson \ - and KEYWORDS_DAILY_QUEST.Complete_Calyx_Crimson_1_time in self.daily_quests: - logger.info('Achieve daily quest Complete_Calyx_Crimson_1_time') + and KEYWORDS_DAILY_QUEST.Clear_Calyx_Crimson_1_times in self.daily_quests: + logger.info('Achieve daily quest Clear_Calyx_Crimson_1_times') self.achieved_daily_quest = True if dungeon.is_Stagnant_Shadow \ and KEYWORDS_DAILY_QUEST.Clear_Stagnant_Shadow_1_times in self.daily_quests: @@ -215,7 +215,7 @@ class Dungeon(DungeonStamina, DungeonEvent, Combat): dungeon = DungeonList.find(self.config.DungeonDaily_CalyxGolden) self.dungeon_run(dungeon=dungeon, wave_limit=1) # Calyx_Crimson - if KEYWORDS_DAILY_QUEST.Complete_Calyx_Crimson_1_time in self.daily_quests \ + if KEYWORDS_DAILY_QUEST.Clear_Calyx_Crimson_1_times in self.daily_quests \ and self.config.DungeonDaily_CalyxCrimson != 'do_not_achieve' \ and not final.is_Calyx_Crimson \ and not ran_calyx_crimson: diff --git a/tasks/rogue/rogue.py b/tasks/rogue/rogue.py index 9f8060c3e..ba25055c7 100644 --- a/tasks/rogue/rogue.py +++ b/tasks/rogue/rogue.py @@ -1,5 +1,5 @@ from module.logger import logger -from tasks.daily.keywords.daily_quest import Complete_1_stage_in_Simulated_Universe_Any_world +from tasks.daily.keywords.daily_quest import Complete_Simulated_Universe_1_times from tasks.rogue.entry.entry import RogueEntry from tasks.rogue.exception import RogueReachedWeeklyPointLimit, RogueTeamNotPrepared from tasks.rogue.route.loader import RouteLoader @@ -43,8 +43,8 @@ class Rogue(RouteLoader, RogueEntry): # Archived daily quest if success: quests = self.config.stored.DailyQuest.load_quests() - if Complete_1_stage_in_Simulated_Universe_Any_world in quests: - logger.info('Achieve daily quest Complete_1_stage_in_Simulated_Universe_Any_world') + if Complete_Simulated_Universe_1_times in quests: + logger.info('Achieve daily quest Complete_Simulated_Universe_1_times') self.config.task_call('DailyQuest') self.config.task_stop() # End From 68969c6be51fb04be37f7cce6b2617a8a32ca514 Mon Sep 17 00:00:00 2001 From: X-Zero-L Date: Thu, 28 Dec 2023 00:56:15 +0800 Subject: [PATCH 14/16] Fix: Rename daily_quest_keyword --- config/template.json | 3 +-- module/config/config_updater.py | 2 +- tasks/daily/daily_quest.py | 10 ++++++---- tasks/dungeon/dungeon.py | 6 +++--- 4 files changed, 11 insertions(+), 10 deletions(-) diff --git a/config/template.json b/config/template.json index 8cc4e99b2..1a8648a3b 100644 --- a/config/template.json +++ b/config/template.json @@ -97,8 +97,7 @@ "Use_the_Omni_Synthesizer_1_times": "achievable", "Take_photos_1_times": "achievable", "Consume_120_Trailblaze_Power": "achievable", - "Level_up_any_Relic_1_times": "not_supported", - "Enter_combat_by_attacking_enemy_Weakness_and_win_3_times": "achievable" + "Level_up_any_Relic_1_times": "not_supported" }, "DailyStorage": { "DailyActivity": {}, diff --git a/module/config/config_updater.py b/module/config/config_updater.py index f49974636..beb8936d5 100644 --- a/module/config/config_updater.py +++ b/module/config/config_updater.py @@ -694,7 +694,7 @@ class ConfigUpdater: set_daily('In_a_single_battle_inflict_3_Weakness_Break_of_different_Types', 'achievable') set_daily('Inflict_Weakness_Break_5_times', 'achievable') set_daily('Defeat_a_total_of_20_enemies', 'achievable') - set_daily('Enter_combat_by_attacking_enemy_Weakness_and_win_3_times', 'achievable') + set_daily('Enter_combat_by_attacking_enemie_Weakness_and_win_3_times', 'achievable') set_daily('Use_Technique_2_times', 'achievable') # Other game systems set_daily('Dispatch_1_assignments', deep_get(data, 'Assignment.Scheduler.Enable')) diff --git a/tasks/daily/daily_quest.py b/tasks/daily/daily_quest.py index 425619026..127f07a17 100644 --- a/tasks/daily/daily_quest.py +++ b/tasks/daily/daily_quest.py @@ -242,13 +242,15 @@ class DailyQuestUI(DungeonUI, RouteLoader): done = 0 logger.hr('Do quests', level=1) - if KEYWORDS_DAILY_QUEST.Take_1_photo in quests: + if KEYWORDS_DAILY_QUEST.Take_photos_1_times in quests: CameraUI(self.config, self.device).take_picture() done += 1 + """ if KEYWORDS_DAILY_QUEST.Synthesize_Consumable_1_time in quests: if SynthesizeConsumablesUI(self.config, self.device).synthesize_consumables(): done += 1 - if KEYWORDS_DAILY_QUEST.Synthesize_material_1_time in quests: + """ + if KEYWORDS_DAILY_QUEST.Use_the_Omni_Synthesizer_1_times in quests: if SynthesizeMaterialUI(self.config, self.device).synthesize_material(): done += 1 if KEYWORDS_DAILY_QUEST.Use_Consumables_1_time in quests: @@ -268,7 +270,7 @@ class DailyQuestUI(DungeonUI, RouteLoader): enemy x1 In_a_single_battle_inflict_3_Weakness_Break_of_different_Types enemy x1 Inflict_Weakness_Break_5_times enemy x2 Defeat_a_total_of_20_enemies - enemy x3 Enter_combat_by_attacking_enemy_Weakness_and_win_3_times + enemy x3 Enter_combat_by_attacking_enemie_Weakness_and_win_3_times item x1 Destroy_3_destructible_objects enemy x1 Use_an_Ultimate_to_deal_the_final_blow_1_time """ @@ -280,7 +282,7 @@ class DailyQuestUI(DungeonUI, RouteLoader): enemy = max(enemy, 1) if KEYWORDS_DAILY_QUEST.Defeat_a_total_of_20_enemies in quests: enemy = max(enemy, 2) - if KEYWORDS_DAILY_QUEST.Enter_combat_by_attacking_enemy_Weakness_and_win_3_times in quests: + if KEYWORDS_DAILY_QUEST.Enter_combat_by_attacking_enemie_Weakness_and_win_3_times in quests: enemy = max(enemy, 3) if KEYWORDS_DAILY_QUEST.Destroy_3_destructible_objects in quests: item = max(item, 1) diff --git a/tasks/dungeon/dungeon.py b/tasks/dungeon/dungeon.py index 3b1b59fbf..d03112af8 100644 --- a/tasks/dungeon/dungeon.py +++ b/tasks/dungeon/dungeon.py @@ -94,8 +94,8 @@ class Dungeon(DungeonStamina, DungeonEvent, Combat): self.achieved_daily_quest = True if support_character is not None: self.called_daily_support = True - if KEYWORDS_DAILY_QUEST.Obtain_victory_in_combat_with_Support_Characters_1_time: - logger.info('Achieve daily quest Obtain_victory_in_combat_with_Support_Characters_1_time') + if KEYWORDS_DAILY_QUEST.Obtain_victory_in_combat_with_Support_Characters_1_times: + logger.info('Achieve daily quest Obtain_victory_in_combat_with_Support_Characters_1_times') self.achieved_daily_quest = True # Check trailblaze power, this may stop current task @@ -326,7 +326,7 @@ class Dungeon(DungeonStamina, DungeonEvent, Combat): require = False if not self.config.stored.DailyActivity.is_full(): - if KEYWORDS_DAILY_QUEST.Obtain_victory_in_combat_with_Support_Characters_1_time \ + if KEYWORDS_DAILY_QUEST.Obtain_victory_in_combat_with_Support_Characters_1_times \ in self.daily_quests: require = True From 6dcebcb1f255508e7157fd1b2a90b12edbf31ff8 Mon Sep 17 00:00:00 2001 From: X-Zero-L Date: Thu, 28 Dec 2023 00:59:45 +0800 Subject: [PATCH 15/16] Fix: Remove duplicate calls --- tasks/assignment/assignment.py | 5 ----- 1 file changed, 5 deletions(-) diff --git a/tasks/assignment/assignment.py b/tasks/assignment/assignment.py index 6b91f7f45..bba86e15a 100644 --- a/tasks/assignment/assignment.py +++ b/tasks/assignment/assignment.py @@ -64,14 +64,9 @@ class Assignment(AssignmentClaim, SynthesizeUI): logger.attr('has_new_dispatch', self.has_new_dispatch) with self.config.multi_set(): # Check daily - quests = self.config.stored.DailyQuest.load_quests() if KEYWORDS_DAILY_QUEST.Dispatch_1_assignments in quests: logger.info('Achieved daily quest Dispatch_1_assignments') self.config.task_call('DailyQuest') - if self.has_new_dispatch: - if KEYWORDS_DAILY_QUEST.Dispatch_1_assignments in quests: - logger.info('Achieved daily quest Dispatch_1_assignments') - self.config.task_call('DailyQuest') # Delay self if len(self.dispatched): delay = min(self.dispatched.values()) From fa78e15c271b679b64c222c2b0eaface7b256caa Mon Sep 17 00:00:00 2001 From: X-Zero-L Date: Thu, 28 Dec 2023 01:07:33 +0800 Subject: [PATCH 16/16] Fix: Restore quests --- tasks/assignment/assignment.py | 1 + 1 file changed, 1 insertion(+) diff --git a/tasks/assignment/assignment.py b/tasks/assignment/assignment.py index bba86e15a..2f21c93f2 100644 --- a/tasks/assignment/assignment.py +++ b/tasks/assignment/assignment.py @@ -64,6 +64,7 @@ class Assignment(AssignmentClaim, SynthesizeUI): logger.attr('has_new_dispatch', self.has_new_dispatch) with self.config.multi_set(): # Check daily + quests = self.config.stored.DailyQuest.load_quests() if KEYWORDS_DAILY_QUEST.Dispatch_1_assignments in quests: logger.info('Achieved daily quest Dispatch_1_assignments') self.config.task_call('DailyQuest')