From 8ccf3db3c8b74b46f2f62fc86365915e151c5acf Mon Sep 17 00:00:00 2001 From: Kara Alexandra Date: Wed, 7 Jul 2021 11:14:52 -0700 Subject: [PATCH] Update base rom --- Rom.py | 23 ++--------------------- data/base2current.bps | Bin 142717 -> 142949 bytes 2 files changed, 2 insertions(+), 21 deletions(-) diff --git a/Rom.py b/Rom.py index f708d49e..9ad0c148 100644 --- a/Rom.py +++ b/Rom.py @@ -28,7 +28,7 @@ from OverworldShuffle import default_flute_connections, flute_data JAP10HASH = '03a63945398191337e896e5771f77173' -RANDOMIZERBASEHASH = '7fde2c814de47cf292b74c8be9db04c4' +RANDOMIZERBASEHASH = 'da6f3d011c2e50ccf6450f5e69c7c735' class JsonRom(object): @@ -891,7 +891,7 @@ def patch_rom(world, rom, player, team, enemized, is_mystery=False): write_int16(rom, 0x187010, credits_total) # dynamic credits if credits_total != 216: # collection rate address: - cr_address = 0x239202 + cr_address = 0x2391E0 cr_pc = cr_address - 0x120000 # convert to pc mid_top, mid_bot = credits_digit((credits_total // 10) % 10) last_top, last_bot = credits_digit(credits_total % 10) @@ -902,25 +902,6 @@ def patch_rom(world, rom, player, team, enemized, is_mystery=False): rom.write_byte(cr_pc+0x3a, mid_bot) rom.write_byte(cr_pc+0x3b, last_bot) - if world.keydropshuffle[player] or world.doorShuffle[player] != 'vanilla': - gt = world.dungeon_layouts[player]['Ganons Tower'] - gt_logic = world.key_logic[player]['Ganons Tower'] - total = 0 - for region in gt.master_sector.regions: - total += count_locations_exclude_logic(region.locations, gt_logic) - # rom.write_byte(0x187012, total) # dynamic credits - # gt big key address: - gtbk_address = 0x2390EE - gtbk_pc = gtbk_address - 0x120000 # convert to pc - mid_top, mid_bot = credits_digit(total // 10) - last_top, last_bot = credits_digit(total % 10) - # top half - rom.write_byte(gtbk_pc+0x1c, mid_top) - rom.write_byte(gtbk_pc+0x1d, last_top) - # bottom half - rom.write_byte(gtbk_pc+0x3a, mid_bot) - rom.write_byte(gtbk_pc+0x3b, last_bot) - # patch medallion requirements if world.required_medallions[player][0] == 'Bombos': rom.write_byte(0x180022, 0x00) # requirement diff --git a/data/base2current.bps b/data/base2current.bps index 197b74846a0b9de84d2bd338b223ecb2dfce19d1..fed5d389071da70a74d83e2254ee76e3315ab598 100644 GIT binary patch delta 9778 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