Baserom update
This commit is contained in:
@@ -24,6 +24,18 @@ Thanks to qadan, cheuer, & compiling
|
|||||||
* Fixed an issue with the credit stats specific to DR (e.g. collection rate total)
|
* Fixed an issue with the credit stats specific to DR (e.g. collection rate total)
|
||||||
* More helpful error message when bps is missing?
|
* More helpful error message when bps is missing?
|
||||||
* Minor generation issues involving enemizer and the link sprite
|
* Minor generation issues involving enemizer and the link sprite
|
||||||
|
* Baserom updates (from Bonta, kan, qwertymodo, ardnaxelark)
|
||||||
|
* Boss icon on dungeon map (if you have a compass)
|
||||||
|
* Progressive bow sprite replacement
|
||||||
|
* Quickswap - consecutive special swaps
|
||||||
|
* Bonk Counter
|
||||||
|
* One mind
|
||||||
|
* MSU fix
|
||||||
|
* Chest turn tracking (not yet in credits)
|
||||||
|
* Damaged and magic stats in credits (gt bk removed)
|
||||||
|
* Fix for infinite bombs
|
||||||
|
* Fake boots option
|
||||||
|
* Always allowed medallions for swordless (no option yet)
|
||||||
* 0.4.0.7
|
* 0.4.0.7
|
||||||
* Reduce flashing option added
|
* Reduce flashing option added
|
||||||
* Sprite author credit added
|
* Sprite author credit added
|
||||||
|
|||||||
23
Rom.py
23
Rom.py
@@ -31,7 +31,7 @@ from EntranceShuffle import door_addresses, exit_ids
|
|||||||
|
|
||||||
|
|
||||||
JAP10HASH = '03a63945398191337e896e5771f77173'
|
JAP10HASH = '03a63945398191337e896e5771f77173'
|
||||||
RANDOMIZERBASEHASH = '712324ad3ca7bff751d9f62812a2c3b6'
|
RANDOMIZERBASEHASH = '736978dd2b3a2bb109ac80ed7c048e67'
|
||||||
|
|
||||||
|
|
||||||
class JsonRom(object):
|
class JsonRom(object):
|
||||||
@@ -809,7 +809,7 @@ def patch_rom(world, rom, player, team, enemized, is_mystery=False):
|
|||||||
write_int16(rom, 0x187010, credits_total) # dynamic credits
|
write_int16(rom, 0x187010, credits_total) # dynamic credits
|
||||||
if credits_total != 216:
|
if credits_total != 216:
|
||||||
# collection rate address:
|
# collection rate address:
|
||||||
cr_address = 0x2391FA
|
cr_address = 0x2391F2
|
||||||
cr_pc = cr_address - 0x120000 # convert to pc
|
cr_pc = cr_address - 0x120000 # convert to pc
|
||||||
mid_top, mid_bot = credits_digit((credits_total // 10) % 10)
|
mid_top, mid_bot = credits_digit((credits_total // 10) % 10)
|
||||||
last_top, last_bot = credits_digit(credits_total % 10)
|
last_top, last_bot = credits_digit(credits_total % 10)
|
||||||
@@ -820,25 +820,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+0x3a, mid_bot)
|
||||||
rom.write_byte(cr_pc+0x3b, last_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 = 0x23911C
|
|
||||||
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
|
# patch medallion requirements
|
||||||
if world.required_medallions[player][0] == 'Bombos':
|
if world.required_medallions[player][0] == 'Bombos':
|
||||||
rom.write_byte(0x180022, 0x00) # requirement
|
rom.write_byte(0x180022, 0x00) # requirement
|
||||||
|
|||||||
Binary file not shown.
Reference in New Issue
Block a user