fix: muradahla typo

fix: remove warp in inverted after aga1 defeated
fix: shopsanity repeatable item bug
This commit is contained in:
aerinon
2024-01-02 18:01:54 -07:00
parent 3d6432af95
commit 3f5eafb74f
4 changed files with 7 additions and 3 deletions

View File

@@ -144,6 +144,9 @@ These are now independent of retro mode and have three options: None, Random, an
* 1.4.0.1v * 1.4.0.1v
* Key logic: Vanilla key logic fixes. Statically set some HC logic and PoD front door * Key logic: Vanilla key logic fixes. Statically set some HC logic and PoD front door
* Generation: Fix a broken tile pattern * Generation: Fix a broken tile pattern
* Inverted: Castle warp should not appear after defeating Aga 1
* Murahdahla: Should not disappear after Aga 1. May fix other subtle issues.
* Shopsanity: Buying multiple of an item in the potion shop should no longer increase item count.
* 1.4.0.0v * 1.4.0.0v
* Initial support for HMG (Thanks Muffins!) * Initial support for HMG (Thanks Muffins!)
* Generation: fix for bunny walk logic taking up too much memory * Generation: fix for bunny walk logic taking up too much memory

5
Rom.py
View File

@@ -40,7 +40,7 @@ from source.enemizer.Enemizer import write_enemy_shuffle_settings
JAP10HASH = '03a63945398191337e896e5771f77173' JAP10HASH = '03a63945398191337e896e5771f77173'
RANDOMIZERBASEHASH = '4d1f3e36e316077823a3e2eb5359ca17' RANDOMIZERBASEHASH = '65b433946c72953780d82cdc0bb8fe8e'
class JsonRom(object): class JsonRom(object):
@@ -2483,7 +2483,8 @@ def set_inverted_mode(world, player, rom):
write_int16(rom, 0xDBA71 + 2 * 0x35, 0x06A4) write_int16(rom, 0xDBA71 + 2 * 0x35, 0x06A4)
if world.shuffle[player] in ['vanilla', 'dungeonssimple', 'dungeonsfull']: if world.shuffle[player] in ['vanilla', 'dungeonssimple', 'dungeonsfull']:
rom.write_byte(0xDBB73 + 0x35, 0x36) rom.write_byte(0xDBB73 + 0x35, 0x36)
rom.write_byte(snes_to_pc(0x09D436), 0xF3) # remove castle gate warp # rom.write_byte(snes_to_pc(0x09D436), 0xF3) # remove castle gate warp
del world.data_tables[player].ow_enemy_table[0xab][5]
if world.shuffle[player] in ['vanilla', 'dungeonssimple', 'dungeonsfull']: if world.shuffle[player] in ['vanilla', 'dungeonssimple', 'dungeonsfull']:
write_int16(rom, 0x15AEE + 2 * 0x37, 0x0010) # pyramid exit to new hc area write_int16(rom, 0x15AEE + 2 * 0x37, 0x0010) # pyramid exit to new hc area
rom.write_byte(0x15B8C + 0x37, 0x1B) rom.write_byte(0x15B8C + 0x37, 0x1B)

Binary file not shown.

View File

@@ -846,7 +846,7 @@ def init_vanilla_sprites_ow():
# create_sprite(0xaa, EnemySprite.SmallHeart, 0x0A, 0x18, '', 0x09D421) # create_sprite(0xaa, EnemySprite.SmallHeart, 0x0A, 0x18, '', 0x09D421)
create_sprite(0xaa, EnemySprite.UsainBolt, 0x0F, 0x18, '', 0x09D421) # was 0x09D424 create_sprite(0xaa, EnemySprite.UsainBolt, 0x0F, 0x18, '', 0x09D421) # was 0x09D424
# Screen1B_2: # Screen1B_2:
create_sprite(0x1b, EnemySprite.Wiseman, 0x19, 0x12, '', 0x09D425) create_sprite(0xab, EnemySprite.Wiseman, 0x19, 0x12, '', 0x09D425)
create_sprite(0xab, EnemySprite.UsainBolt, 0x06, 0x0D, '', 0x09D428) create_sprite(0xab, EnemySprite.UsainBolt, 0x06, 0x0D, '', 0x09D428)
create_sprite(0xab, EnemySprite.Apple, 0x16, 0x14, '', 0x09D42B) create_sprite(0xab, EnemySprite.Apple, 0x16, 0x14, '', 0x09D42B)
create_sprite(0xab, EnemySprite.UsainBolt, 0x1F, 0x1A, '', 0x09D42E) create_sprite(0xab, EnemySprite.UsainBolt, 0x1F, 0x1A, '', 0x09D42E)