From dd5f0618fd898c495c1ec0eca65593306e5801b8 Mon Sep 17 00:00:00 2001 From: codemann8 Date: Fri, 18 Jul 2025 10:46:39 -0500 Subject: [PATCH 1/2] Fixed map key totals on map pickup in non-DR --- Rom.py | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/Rom.py b/Rom.py index c1b4810e..7401ce94 100644 --- a/Rom.py +++ b/Rom.py @@ -794,6 +794,12 @@ def patch_rom(world, rom, player, team, is_mystery=False): for room in world.rooms: if room.player == player and room.palette is not None: rom.write_byte(0x13f200+room.index, room.palette) + else: + if world.keyshuffle[player] != 'universal': + for name, layout in world.key_layout[player].items(): + offset = compass_data[name][4]//2 + rom.write_byte(0x13f020+offset, layout.max_chests + layout.max_drops) # not currently used + rom.write_byte(0x187010+offset, layout.max_chests) if world.doorShuffle[player] == 'basic': rom.write_byte(0x138002, 1) for door in world.doors: @@ -1292,8 +1298,8 @@ def patch_rom(world, rom, player, team, is_mystery=False): | (0x04 if world.mapshuffle[player] != 'none' else 0x00) | (0x08 if world.bigkeyshuffle[player] != 'none' else 0x00))) # free roaming item text boxes rom.write_byte(0x18003B, 0x01 if world.mapshuffle[player] not in ['none', 'nearby'] else 0x00) # maps showing crystals on overworld - if (world.mapshuffle[player] not in ['none', 'nearby'] or world.doorShuffle[player] != 'vanilla' or world.dropshuffle[player] != 'none' - or world.pottery[player] not in ['none', 'cave']): + if world.keyshuffle[player] != 'universal' and (world.mapshuffle[player] not in ['none', 'nearby'] or world.doorShuffle[player] != 'vanilla' + or world.dropshuffle[player] != 'none' or world.pottery[player] not in ['none', 'cave']): rom.write_byte(0x18003A, 0x01) # show key counts on map pickup # compasses showing dungeon count From e4d7d4012784ed8eb7fdbf75d5a2c4ed1f6c43ec Mon Sep 17 00:00:00 2001 From: codemann8 Date: Fri, 18 Jul 2025 10:49:46 -0500 Subject: [PATCH 2/2] Version bump 0.6.0.5 --- CHANGELOG.md | 3 +++ OverworldShuffle.py | 2 +- 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 705f41ee..39dc836e 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,8 @@ # Changelog +## 0.6.0.5 +- Emergency fix for map/key totals in non-DR + ## 0.6.0.4 - Fixed pause menu to show compass count and prizes to also show if you've seen them - Fixed crash when Old Man follower exits with you at his destination entrance diff --git a/OverworldShuffle.py b/OverworldShuffle.py index e312ba34..8144fc4a 100644 --- a/OverworldShuffle.py +++ b/OverworldShuffle.py @@ -8,7 +8,7 @@ from OWEdges import OWTileRegions, OWEdgeGroups, OWEdgeGroupsTerrain, OWExitType from OverworldGlitchRules import create_owg_connections from Utils import bidict -version_number = '0.6.0.4' +version_number = '0.6.0.5' # branch indicator is intentionally different across branches version_branch = '-u'