From d408f7cabcf17301d722779fe83fe8b84ae07089 Mon Sep 17 00:00:00 2001 From: Fabian Dill Date: Sat, 2 Aug 2025 21:19:23 +0200 Subject: [PATCH] Subnautica: add empty tanks option (#5271) --- worlds/subnautica/__init__.py | 3 ++- worlds/subnautica/options.py | 5 +++++ 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/worlds/subnautica/__init__.py b/worlds/subnautica/__init__.py index 850c23c7..bfedf0c9 100644 --- a/worlds/subnautica/__init__.py +++ b/worlds/subnautica/__init__.py @@ -41,7 +41,7 @@ class SubnauticaWorld(World): location_name_to_id = all_locations options_dataclass = options.SubnauticaOptions options: options.SubnauticaOptions - required_client_version = (0, 5, 0) + required_client_version = (0, 6, 2) origin_region_name = "Planet 4546B" creatures_to_scan: List[str] @@ -155,6 +155,7 @@ class SubnauticaWorld(World): "creatures_to_scan": self.creatures_to_scan, "death_link": self.options.death_link.value, "free_samples": self.options.free_samples.value, + "empty_tanks": self.options.empty_tanks.value, } return slot_data diff --git a/worlds/subnautica/options.py b/worlds/subnautica/options.py index 6cdcb33d..0aa869de 100644 --- a/worlds/subnautica/options.py +++ b/worlds/subnautica/options.py @@ -129,6 +129,10 @@ class FillerItemsDistribution(ItemDict): return list(self.value.keys()), list(accumulate(self.value.values())) +class EmptyTanks(DefaultOnToggle): + """Oxygen Tanks stored in inventory are empty if enabled.""" + + @dataclass class SubnauticaOptions(PerGameCommonOptions): swim_rule: SwimRule @@ -140,3 +144,4 @@ class SubnauticaOptions(PerGameCommonOptions): death_link: SubnauticaDeathLink start_inventory_from_pool: StartInventoryPool filler_items_distribution: FillerItemsDistribution + empty_tanks: EmptyTanks