Minor bug fixes
--E-W fixed on interior door in Aga Tower --Crossed+Enemizer bug with GT minibosses --Vanilla bug with pre-open stonewall flag
This commit is contained in:
@@ -1642,7 +1642,7 @@ interior_doors = [
|
|||||||
('Tower Dark Pits EN', 'Tower Dark Archers WN'),
|
('Tower Dark Pits EN', 'Tower Dark Archers WN'),
|
||||||
('Tower Red Spears WN', 'Tower Red Guards EN'),
|
('Tower Red Spears WN', 'Tower Red Guards EN'),
|
||||||
('Tower Red Guards SW', 'Tower Circle of Pots NW'),
|
('Tower Red Guards SW', 'Tower Circle of Pots NW'),
|
||||||
('Tower Circle of Pots WS', 'Tower Pacifist Run ES'),
|
('Tower Circle of Pots ES', 'Tower Pacifist Run WS'),
|
||||||
('Tower Push Statue WS', 'Tower Catwalk ES'),
|
('Tower Push Statue WS', 'Tower Catwalk ES'),
|
||||||
('Tower Antechamber NW', 'Tower Altar SW'),
|
('Tower Antechamber NW', 'Tower Altar SW'),
|
||||||
('PoD Lobby N', 'PoD Middle Cage S'),
|
('PoD Lobby N', 'PoD Middle Cage S'),
|
||||||
@@ -1812,7 +1812,7 @@ default_small_key_doors = {
|
|||||||
'Tower Room 03 Up Stairs',
|
'Tower Room 03 Up Stairs',
|
||||||
('Tower Dark Maze ES', 'Tower Dark Chargers WS'),
|
('Tower Dark Maze ES', 'Tower Dark Chargers WS'),
|
||||||
'Tower Dark Archers Up Stairs',
|
'Tower Dark Archers Up Stairs',
|
||||||
('Tower Circle of Pots WS', 'Tower Pacifist Run ES'),
|
('Tower Circle of Pots ES', 'Tower Pacifist Run WS'),
|
||||||
],
|
],
|
||||||
'Palace of Darkness': [
|
'Palace of Darkness': [
|
||||||
('PoD Middle Cage N', 'PoD Pit Room S'),
|
('PoD Middle Cage N', 'PoD Pit Room S'),
|
||||||
|
|||||||
4
Doors.py
4
Doors.py
@@ -290,8 +290,8 @@ def create_doors(world, player):
|
|||||||
create_door(player, 'Tower Red Guards EN', Intr).dir(Ea, 0xb0, Top, High).pos(1),
|
create_door(player, 'Tower Red Guards EN', Intr).dir(Ea, 0xb0, Top, High).pos(1),
|
||||||
create_door(player, 'Tower Red Guards SW', Intr).dir(So, 0xb0, Left, High).pos(0),
|
create_door(player, 'Tower Red Guards SW', Intr).dir(So, 0xb0, Left, High).pos(0),
|
||||||
create_door(player, 'Tower Circle of Pots NW', Intr).dir(No, 0xb0, Left, High).pos(0),
|
create_door(player, 'Tower Circle of Pots NW', Intr).dir(No, 0xb0, Left, High).pos(0),
|
||||||
create_door(player, 'Tower Circle of Pots WS', Intr).dir(We, 0xb0, Bot, High).small_key().pos(2),
|
create_door(player, 'Tower Circle of Pots ES', Intr).dir(Ea, 0xb0, Bot, High).small_key().pos(2),
|
||||||
create_door(player, 'Tower Pacifist Run ES', Intr).dir(Ea, 0xb0, Bot, High).small_key().pos(2),
|
create_door(player, 'Tower Pacifist Run WS', Intr).dir(We, 0xb0, Bot, High).small_key().pos(2),
|
||||||
create_door(player, 'Tower Pacifist Run Up Stairs', Sprl).dir(Up, 0xb0, 2, LTH).ss(X, 0x33, 0x8c, True, True),
|
create_door(player, 'Tower Pacifist Run Up Stairs', Sprl).dir(Up, 0xb0, 2, LTH).ss(X, 0x33, 0x8c, True, True),
|
||||||
create_door(player, 'Tower Push Statue Down Stairs', Sprl).dir(Dn, 0x40, 0, HTL).ss(X, 0x12, 0xa0, True, True).kill(),
|
create_door(player, 'Tower Push Statue Down Stairs', Sprl).dir(Dn, 0x40, 0, HTL).ss(X, 0x12, 0xa0, True, True).kill(),
|
||||||
create_door(player, 'Tower Push Statue WS', Intr).dir(We, 0x40, Bot, Low).pos(0),
|
create_door(player, 'Tower Push Statue WS', Intr).dir(We, 0x40, Bot, Low).pos(0),
|
||||||
|
|||||||
@@ -1123,7 +1123,7 @@ def val_tower(key_logic, world, player):
|
|||||||
val_rule(key_logic.door_rules['Tower Room 03 Up Stairs'], 1)
|
val_rule(key_logic.door_rules['Tower Room 03 Up Stairs'], 1)
|
||||||
val_rule(key_logic.door_rules['Tower Dark Maze ES'], 2)
|
val_rule(key_logic.door_rules['Tower Dark Maze ES'], 2)
|
||||||
val_rule(key_logic.door_rules['Tower Dark Archers Up Stairs'], 3)
|
val_rule(key_logic.door_rules['Tower Dark Archers Up Stairs'], 3)
|
||||||
val_rule(key_logic.door_rules['Tower Circle of Pots WS'], 4)
|
val_rule(key_logic.door_rules['Tower Circle of Pots ES'], 4)
|
||||||
|
|
||||||
|
|
||||||
def val_pod(key_logic, world, player):
|
def val_pod(key_logic, world, player):
|
||||||
|
|||||||
@@ -331,8 +331,8 @@ def create_dungeon_regions(world, player):
|
|||||||
create_dungeon_region(player, 'Tower Dark Archers', 'Castle Tower', ['Castle Tower - Dark Archer Key Drop'], ['Tower Dark Archers WN', 'Tower Dark Archers Up Stairs']),
|
create_dungeon_region(player, 'Tower Dark Archers', 'Castle Tower', ['Castle Tower - Dark Archer Key Drop'], ['Tower Dark Archers WN', 'Tower Dark Archers Up Stairs']),
|
||||||
create_dungeon_region(player, 'Tower Red Spears', 'Castle Tower', None, ['Tower Red Spears Down Stairs', 'Tower Red Spears WN']),
|
create_dungeon_region(player, 'Tower Red Spears', 'Castle Tower', None, ['Tower Red Spears Down Stairs', 'Tower Red Spears WN']),
|
||||||
create_dungeon_region(player, 'Tower Red Guards', 'Castle Tower', None, ['Tower Red Guards EN', 'Tower Red Guards SW']),
|
create_dungeon_region(player, 'Tower Red Guards', 'Castle Tower', None, ['Tower Red Guards EN', 'Tower Red Guards SW']),
|
||||||
create_dungeon_region(player, 'Tower Circle of Pots', 'Castle Tower', ['Castle Tower - Circle of Pots Key Drop'], ['Tower Circle of Pots NW', 'Tower Circle of Pots WS']),
|
create_dungeon_region(player, 'Tower Circle of Pots', 'Castle Tower', ['Castle Tower - Circle of Pots Key Drop'], ['Tower Circle of Pots NW', 'Tower Circle of Pots ES']),
|
||||||
create_dungeon_region(player, 'Tower Pacifist Run', 'Castle Tower', None, ['Tower Pacifist Run ES', 'Tower Pacifist Run Up Stairs']),
|
create_dungeon_region(player, 'Tower Pacifist Run', 'Castle Tower', None, ['Tower Pacifist Run WS', 'Tower Pacifist Run Up Stairs']),
|
||||||
create_dungeon_region(player, 'Tower Push Statue', 'Castle Tower', None, ['Tower Push Statue Down Stairs', 'Tower Push Statue WS']),
|
create_dungeon_region(player, 'Tower Push Statue', 'Castle Tower', None, ['Tower Push Statue Down Stairs', 'Tower Push Statue WS']),
|
||||||
create_dungeon_region(player, 'Tower Catwalk', 'Castle Tower', None, ['Tower Catwalk ES', 'Tower Catwalk North Stairs']),
|
create_dungeon_region(player, 'Tower Catwalk', 'Castle Tower', None, ['Tower Catwalk ES', 'Tower Catwalk North Stairs']),
|
||||||
create_dungeon_region(player, 'Tower Antechamber', 'Castle Tower', None, ['Tower Antechamber South Stairs', 'Tower Antechamber NW']),
|
create_dungeon_region(player, 'Tower Antechamber', 'Castle Tower', None, ['Tower Antechamber South Stairs', 'Tower Antechamber NW']),
|
||||||
|
|||||||
15
Rom.py
15
Rom.py
@@ -241,9 +241,9 @@ def patch_enemizer(world, player, rom, baserom_path, enemizercli, shufflepots, r
|
|||||||
'IcePalace': world.get_dungeon("Ice Palace", player).boss.enemizer_name,
|
'IcePalace': world.get_dungeon("Ice Palace", player).boss.enemizer_name,
|
||||||
'MiseryMire': world.get_dungeon("Misery Mire", player).boss.enemizer_name,
|
'MiseryMire': world.get_dungeon("Misery Mire", player).boss.enemizer_name,
|
||||||
'TurtleRock': world.get_dungeon("Turtle Rock", player).boss.enemizer_name,
|
'TurtleRock': world.get_dungeon("Turtle Rock", player).boss.enemizer_name,
|
||||||
'GanonsTower1': world.get_dungeon('Ganons Tower', player).bosses['bottom'].enemizer_name,
|
'GanonsTower1': [x for x in world.dungeons if x.player == player and 'bottom' in x.bosses.keys()][0].bosses['bottom'].enemizer_name,
|
||||||
'GanonsTower2': world.get_dungeon('Ganons Tower', player).bosses['middle'].enemizer_name,
|
'GanonsTower2': [x for x in world.dungeons if x.player == player and 'middle' in x.bosses.keys()][0].bosses['middle'].enemizer_name,
|
||||||
'GanonsTower3': world.get_dungeon('Ganons Tower', player).bosses['top'].enemizer_name,
|
'GanonsTower3': [x for x in world.dungeons if x.player == player and 'top' in x.bosses.keys()][0].bosses['top'].enemizer_name,
|
||||||
'GanonsTower4': 'Agahnim2',
|
'GanonsTower4': 'Agahnim2',
|
||||||
'Ganon': 'Ganon',
|
'Ganon': 'Ganon',
|
||||||
}
|
}
|
||||||
@@ -612,10 +612,11 @@ def patch_rom(world, rom, player, team, enemized):
|
|||||||
for paired_door in world.paired_doors[player]:
|
for paired_door in world.paired_doors[player]:
|
||||||
rom.write_bytes(paired_door.address_a(world, player), paired_door.rom_data_a(world, player))
|
rom.write_bytes(paired_door.address_a(world, player), paired_door.rom_data_a(world, player))
|
||||||
rom.write_bytes(paired_door.address_b(world, player), paired_door.rom_data_b(world, player))
|
rom.write_bytes(paired_door.address_b(world, player), paired_door.rom_data_b(world, player))
|
||||||
for builder in world.dungeon_layouts[player].values():
|
if world.doorShuffle[player] != 'vanilla':
|
||||||
if builder.pre_open_stonewall:
|
for builder in world.dungeon_layouts[player].values():
|
||||||
if builder.pre_open_stonewall.name == 'Desert Wall Slide NW':
|
if builder.pre_open_stonewall:
|
||||||
dr_flags |= DROptions.Open_Desert_Wall
|
if builder.pre_open_stonewall.name == 'Desert Wall Slide NW':
|
||||||
|
dr_flags |= DROptions.Open_Desert_Wall
|
||||||
rom.write_byte(0x139006, dr_flags.value)
|
rom.write_byte(0x139006, dr_flags.value)
|
||||||
|
|
||||||
# fix skull woods exit, if not fixed during exit patching
|
# fix skull woods exit, if not fixed during exit patching
|
||||||
|
|||||||
Reference in New Issue
Block a user