From 0309fac592f1548b09653f772b4fea47e8e8be7f Mon Sep 17 00:00:00 2001 From: espeon65536 Date: Tue, 26 Apr 2022 13:43:02 -0500 Subject: [PATCH] OoT: check for existence of ROM at start of generation --- worlds/oot/__init__.py | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/worlds/oot/__init__.py b/worlds/oot/__init__.py index 18b0f939..37b2e8c2 100644 --- a/worlds/oot/__init__.py +++ b/worlds/oot/__init__.py @@ -89,6 +89,13 @@ class OOTWorld(World): self.hint_data_available = threading.Event() super(OOTWorld, self).__init__(world, player) + @classmethod + def stage_generate_early(cls, world: MultiWorld): + # Check that an OoT ROM exists at the specified path. Raises exception on failure. + # We don't need the ROM until output, but we want to fail early if no ROM is provided. + rom = Rom(file=get_options()['oot_options']['rom_file']) + del rom + def generate_early(self): # Player name MUST be at most 16 bytes ascii-encoded, otherwise won't write to ROM correctly if len(bytes(self.world.get_player_name(self.player), 'ascii')) > 16: