From 01f3f6ad50b73521ba07ce21a4de9331258047f4 Mon Sep 17 00:00:00 2001 From: aerinon Date: Tue, 17 Dec 2024 16:17:55 -0700 Subject: [PATCH] fix: dark sanc at tavern north fix: gt exit point for all players --- Plando.py | 2 +- RELEASENOTES.md | 1 + Rom.py | 4 +++- 3 files changed, 5 insertions(+), 2 deletions(-) diff --git a/Plando.py b/Plando.py index b2da5ba0..c65b6d02 100755 --- a/Plando.py +++ b/Plando.py @@ -132,7 +132,7 @@ def fill_world(world, plando, text_patches): world.fix_trock_exit = {1: trfstr.strip().lower() == 'true'} elif line.startswith('!fix_gtower_exit'): _, gtfstr = line.split(':', 1) - world.fix_gtower_exit = gtfstr.strip().lower() == 'true' + world.fix_gtower_exit = {1: gtfstr.strip().lower() == 'true'} elif line.startswith('!fix_pod_exit'): _, podestr = line.split(':', 1) world.fix_palaceofdarkness_exit = {1: podestr.strip().lower() == 'true'} diff --git a/RELEASENOTES.md b/RELEASENOTES.md index 75092b3d..eb374b5b 100644 --- a/RELEASENOTES.md +++ b/RELEASENOTES.md @@ -7,3 +7,4 @@ - Logic error with enemizer and standard should use new enemy logic rules - Fixed a bug with the inconsistent treatment of the beemizer setting - Fixed an issue with returning Blacksmith in Simple shuffle (when blacksmith is at Link's House) + - Fixed an issue with dark sanc spawn at tavern north door (thanks Codemann!) diff --git a/Rom.py b/Rom.py index 1d2b8864..a3654c8c 100644 --- a/Rom.py +++ b/Rom.py @@ -520,7 +520,7 @@ def patch_rom(world, rom, player, team, is_mystery=False): write_int16(rom, 0x15DB5 + 2 * offset, 0x0640) elif room_id == 0x00d6 and world.fix_trock_exit[player]: write_int16(rom, 0x15DB5 + 2 * offset, 0x0134) - elif room_id == 0x000c and world.fix_gtower_exit: # fix ganons tower exit point + elif room_id == 0x000c and world.fix_gtower_exit[player]: # fix ganons tower exit point write_int16(rom, 0x15DB5 + 2 * offset, 0x00A4) else: write_int16(rom, 0x15DB5 + 2 * offset, link_y) @@ -2512,6 +2512,8 @@ def patch_shuffled_dark_sanc(world, rom, player): dark_sanc = world.get_region('Dark Sanctuary Hint', player) dark_sanc_entrance = str([i for i in dark_sanc.entrances if i.parent_region.name != 'Menu'][0].name) room_id, ow_area, vram_loc, scroll_y, scroll_x, link_y, link_x, camera_y, camera_x, unknown_1, unknown_2, door_1, door_2 = door_addresses[dark_sanc_entrance][1] + if dark_sanc_entrance == 'Tavern North': + link_y -= 0x10 # rom code assumes south-facing doors and adds $10 to the y-coordinate door_index = door_addresses[str(dark_sanc_entrance)][0] rom.write_byte(0x180241, 0x01)