diff --git a/data/settings_list.yaml b/data/settings_list.yaml index 50c80dfb..5c7a0d1b 100644 --- a/data/settings_list.yaml +++ b/data/settings_list.yaml @@ -1447,6 +1447,16 @@ - "off": "You will only be expected to use the Slingshot, Bow, Clawshots, or a Beetle to activate distant switches and you will only be expected to use nearby bomb flowers with the Hook Beetle to blow up distant rocks." - "on": "You may need to use the Bomb Bag and time bomb throws to activate switches or blow up distant rocks or towers." +- name: logic_faron_woods_with_groosenator + default_option: "off" + pretty_name: Faron Woods with Groosenator + pretty_options: + - "Off" + - "On" + options: + - "off": "You will never be expected to use the Groosenator to access Faron Woods by unlocking bird statues in Flooded Faron Woods." + - "on": "You may need to use the Groosenator to unlock the bird statues in Flooded Faron Woods to land at those bird statues in normal Faron Woods." + - name: logic_itemless_first_timeshift_stone default_option: "off" pretty_name: Itemless First Timeshift Stone diff --git a/data/world/Faron.yaml b/data/world/Faron.yaml index 187ae225..5fa91e68 100644 --- a/data/world/Faron.yaml +++ b/data/world/Faron.yaml @@ -340,13 +340,15 @@ - name: Flooded Faron Woods hint_region: Flooded Faron Woods events: - Unlock In the Woods Statue: Water_Dragons_Scale - Unlock Viewing Platform Statue: Water_Dragons_Scale - Unlock Faron Woods Entry Statue: Water_Dragons_Scale - Unlock The Great Tree Statue: Clawshots or Water_Dragons_Scale Retrieve Oolo: Scrapper and 'Start_Owlans_Quest' Can Watch Completed Tadtones Cutscene: Nothing Can Collect Water: Bottle + # Leads to some obscure logic when paired with the Groosenator + # + Unlock In the Woods Statue: logic_faron_woods_with_groosenator and Water_Dragons_Scale + Unlock Viewing Platform Statue: logic_faron_woods_with_groosenator and Water_Dragons_Scale + Unlock Faron Woods Entry Statue: logic_faron_woods_with_groosenator and Water_Dragons_Scale + Unlock The Great Tree Statue: logic_faron_woods_with_groosenator and (Clawshots or Water_Dragons_Scale) exits: Sealed Grounds: Nothing # Talk to Bucha Flooded Great Tree Upper: Clawshots diff --git a/gui/ui/main.ui b/gui/ui/main.ui index 025b1a39..058155e7 100644 --- a/gui/ui/main.ui +++ b/gui/ui/main.ui @@ -36,7 +36,7 @@ QTabWidget::TabShape::Rounded - 1 + 0 @@ -2943,6 +2943,20 @@ Miscellaneous + + + + Faron Woods with Groosenator + + + + + + + Itemless First Timeshift Stone + + + @@ -3001,13 +3015,6 @@ Practice Sword - - - - Itemless First Timeshift Stone - - - diff --git a/gui/ui/ui_main.py b/gui/ui/ui_main.py index 6d9ef84d..be048d4b 100644 --- a/gui/ui/ui_main.py +++ b/gui/ui/ui_main.py @@ -1942,6 +1942,16 @@ def setupUi(self, main_window): self.miscellaneous_group_box.setSizePolicy(sizePolicy) self.verticalLayout_22 = QVBoxLayout(self.miscellaneous_group_box) self.verticalLayout_22.setObjectName(u"verticalLayout_22") + self.setting_logic_faron_woods_with_groosenator = RandoTriStateCheckBox(self.miscellaneous_group_box) + self.setting_logic_faron_woods_with_groosenator.setObjectName(u"setting_logic_faron_woods_with_groosenator") + + self.verticalLayout_22.addWidget(self.setting_logic_faron_woods_with_groosenator) + + self.setting_logic_itemless_first_timeshift_stone = RandoTriStateCheckBox(self.miscellaneous_group_box) + self.setting_logic_itemless_first_timeshift_stone.setObjectName(u"setting_logic_itemless_first_timeshift_stone") + + self.verticalLayout_22.addWidget(self.setting_logic_itemless_first_timeshift_stone) + self.setting_logic_fire_node_without_hook_beetle = RandoTriStateCheckBox(self.miscellaneous_group_box) self.setting_logic_fire_node_without_hook_beetle.setObjectName(u"setting_logic_fire_node_without_hook_beetle") @@ -1982,11 +1992,6 @@ def setupUi(self, main_window): self.verticalLayout_22.addWidget(self.setting_logic_fs_practice_sword_ghirahim_2) - self.setting_logic_itemless_first_timeshift_stone = RandoTriStateCheckBox(self.miscellaneous_group_box) - self.setting_logic_itemless_first_timeshift_stone.setObjectName(u"setting_logic_itemless_first_timeshift_stone") - - self.verticalLayout_22.addWidget(self.setting_logic_itemless_first_timeshift_stone) - self.miscellaneous_vspacer = QSpacerItem(20, 237, QSizePolicy.Policy.Minimum, QSizePolicy.Policy.Expanding) self.verticalLayout_22.addItem(self.miscellaneous_vspacer) @@ -2806,7 +2811,7 @@ def setupUi(self, main_window): self.retranslateUi(main_window) - self.tab_widget.setCurrentIndex(1) + self.tab_widget.setCurrentIndex(0) QMetaObject.connectSlotsByName(main_window) @@ -3036,6 +3041,8 @@ def retranslateUi(self, main_window): self.setting_logic_brakeslide.setText(QCoreApplication.translate("main_window", u"Brakesliding", None)) self.setting_logic_tot_skip_brakeslide.setText(QCoreApplication.translate("main_window", u"Temple of Time Skip Brakeslide", None)) self.miscellaneous_group_box.setTitle(QCoreApplication.translate("main_window", u"Miscellaneous", None)) + self.setting_logic_faron_woods_with_groosenator.setText(QCoreApplication.translate("main_window", u"Faron Woods with Groosenator", None)) + self.setting_logic_itemless_first_timeshift_stone.setText(QCoreApplication.translate("main_window", u"Itemless First Timeshift Stone", None)) self.setting_logic_fire_node_without_hook_beetle.setText(QCoreApplication.translate("main_window", u"Fire Node without Hook Beetle", None)) self.setting_logic_skyview_spider_roll.setText(QCoreApplication.translate("main_window", u"Skyview Temple Spider Roll", None)) self.setting_logic_et_keese_skyward_strike.setText(QCoreApplication.translate("main_window", u"Earth Temple Keese Skyward Strike", None)) @@ -3046,7 +3053,6 @@ def retranslateUi(self, main_window): self.setting_logic_sandship_no_combination_hint.setText(QCoreApplication.translate("main_window", u"Sandship No Combination Hint", None)) self.setting_logic_fs_practice_sword_ghirahim_2.setText(QCoreApplication.translate("main_window", u"Fire Sanctuary Ghirahim 2 with\n" "Practice Sword", None)) - self.setting_logic_itemless_first_timeshift_stone.setText(QCoreApplication.translate("main_window", u"Itemless First Timeshift Stone", None)) self.tab_widget.setTabText(self.tab_widget.indexOf(self.logic_tab), QCoreApplication.translate("main_window", u"Logic and Tricks", None)) self.environment_cosmetics_group_box.setTitle(QCoreApplication.translate("main_window", u"Environment Cosmetics", None)) self.setting_starry_skies.setText(QCoreApplication.translate("main_window", u"Starry Skies", None)) diff --git a/tests/test_configs/decouple_entrances.yaml b/tests/test_configs/decouple_entrances.yaml index d3b75b62..ec840139 100644 --- a/tests/test_configs/decouple_entrances.yaml +++ b/tests/test_configs/decouple_entrances.yaml @@ -1,4 +1,4 @@ -seed: TESTTESTTEST +seed: TESTTESTTESTTEST World 1: randomize_dungeon_entrances: "on" randomize_door_entrances: "on"