diff --git a/BaseClasses.py b/BaseClasses.py index fe0dce2a..8f4df302 100644 --- a/BaseClasses.py +++ b/BaseClasses.py @@ -3184,6 +3184,7 @@ class Spoiler(object): 'race': self.world.settings.world_rep['meta']['race'], 'user_notes': self.world.settings.world_rep['meta']['user_notes'], 'code': {p: Settings.make_code(self.world, p) for p in range(1, self.world.players + 1)}, + 'hashes': [{p: self.hashes[p, t] for p in range(1, self.world.players + 1)} for t in range(self.world.teams)], 'seed': self.world.seed } diff --git a/Rom.py b/Rom.py index b0cdb22a..06903808 100644 --- a/Rom.py +++ b/Rom.py @@ -85,7 +85,7 @@ from Utils import int16_as_bytes, int32_as_bytes, local_path, snes_to_pc from Versions import DRVersion, GKVersion, ORVersion JAP10HASH = '03a63945398191337e896e5771f77173' -RANDOMIZERBASEHASH = 'c5e123bcd2723114e1ecc8b42d0c5efa' +RANDOMIZERBASEHASH = 'beae4c06c4841030709639215e2b03c3' class JsonRom(object): @@ -1503,19 +1503,6 @@ def patch_rom(world, rom, player, team, is_mystery=False, rom_header=None): loot_source |= 0x04 rom.write_byte(0x1CFF10, loot_source) - if world.showloot[player] == 'never': - rom.write_bytes(0x1CFF08, [0x00, 0x00, 0x00, 0x00]) - rom.write_byte(0x1CFF11, 0x00) - elif world.showloot[player] == 'presence': - rom.write_bytes(0x1CFF08, [0x01, 0x00, 0x00, 0x00]) - rom.write_byte(0x1CFF11, 0x00) - elif world.showloot[player] == 'compass': - rom.write_bytes(0x1CFF08, [0x01, 0x00, 0x02, 0x00]) - rom.write_byte(0x1CFF11, 0x01) - elif world.showloot[player] == 'always': - rom.write_bytes(0x1CFF08, [0x02, 0x00, 0x00, 0x00]) - rom.write_byte(0x1CFF11, 0x00) - if world.loothud[player] == 'never': rom.write_byte(0x1CFF12, 0x00) elif world.showloot[player] == 'presence': @@ -1528,6 +1515,20 @@ def patch_rom(world, rom, player, team, is_mystery=False, rom_header=None): rom.write_byte(0x1CFF12, 0x01) rom.write_bytes(0x1CFF0E, [0xFF, 0x01]) + if world.showloot[player] == 'never': + rom.write_bytes(0x1CFF08, [0x00, 0x00, 0x00, 0x00]) + rom.write_byte(0x1CFF11, 0x00) + rom.write_byte(0x1CFF12, 0x00) # turn off hud icon too just to be safe + elif world.showloot[player] == 'presence': + rom.write_bytes(0x1CFF08, [0x01, 0x00, 0x00, 0x00]) + rom.write_byte(0x1CFF11, 0x00) + elif world.showloot[player] == 'compass': + rom.write_bytes(0x1CFF08, [0x01, 0x00, 0x02, 0x00]) + rom.write_byte(0x1CFF11, 0x01) + elif world.showloot[player] == 'always': + rom.write_bytes(0x1CFF08, [0x02, 0x00, 0x00, 0x00]) + rom.write_byte(0x1CFF11, 0x00) + if world.showmap[player] == 'visited': rom.write_bytes(0x1CFF00, [0x01, 0x00, 0x00, 0x05]) elif world.showmap[player] == 'map': diff --git a/data/base2current.bps b/data/base2current.bps index 6c4f49c0..c8a8949c 100644 Binary files a/data/base2current.bps and b/data/base2current.bps differ