Hint work (Lobby, Ganon, Keydropshuffle)
Preliminary multiworld work
This commit is contained in:
@@ -944,8 +944,7 @@ def cross_dungeon(world, player):
|
|||||||
eastfairies.palette = palette_map[world.get_region('Eastern Courtyard', player).dungeon.name]
|
eastfairies.palette = palette_map[world.get_region('Eastern Courtyard', player).dungeon.name]
|
||||||
# other ones that could use programmatic treatment: Skull Boss x29, Hera Fairies xa7, Ice Boss xde
|
# other ones that could use programmatic treatment: Skull Boss x29, Hera Fairies xa7, Ice Boss xde
|
||||||
|
|
||||||
if world.hints[player]:
|
refine_hints(dungeon_builders)
|
||||||
refine_hints(dungeon_builders)
|
|
||||||
|
|
||||||
|
|
||||||
def assign_cross_keys(dungeon_builders, world, player):
|
def assign_cross_keys(dungeon_builders, world, player):
|
||||||
|
|||||||
@@ -11,7 +11,7 @@ from typing import List
|
|||||||
|
|
||||||
from BaseClasses import DoorType, Direction, CrystalBarrier, RegionType, Polarity, PolSlot, flooded_keys, Sector
|
from BaseClasses import DoorType, Direction, CrystalBarrier, RegionType, Polarity, PolSlot, flooded_keys, Sector
|
||||||
from BaseClasses import Hook, hook_from_door
|
from BaseClasses import Hook, hook_from_door
|
||||||
from Regions import key_only_locations, dungeon_events, flooded_keys_reverse
|
from Regions import dungeon_events, flooded_keys_reverse
|
||||||
from Dungeons import dungeon_regions, split_region_starts
|
from Dungeons import dungeon_regions, split_region_starts
|
||||||
from RoomData import DoorKind
|
from RoomData import DoorKind
|
||||||
|
|
||||||
|
|||||||
@@ -392,9 +392,9 @@ dungeon_hints = {
|
|||||||
'Tower of Hera': 'in Tower of Hera',
|
'Tower of Hera': 'in Tower of Hera',
|
||||||
'Agahnims Tower': 'in Castle Tower',
|
'Agahnims Tower': 'in Castle Tower',
|
||||||
'Palace of Darkness': 'in Palace of Darkness',
|
'Palace of Darkness': 'in Palace of Darkness',
|
||||||
'Swamp Palace': 'in Swamp Palace)',
|
'Swamp Palace': 'in Swamp Palace',
|
||||||
'Skull Woods': 'in Skull Woods',
|
'Skull Woods': 'in Skull Woods',
|
||||||
'Thieves Town': 'in Thieves\' Town)',
|
'Thieves Town': 'in Thieves\' Town',
|
||||||
'Ice Palace': 'in Ice Palace',
|
'Ice Palace': 'in Ice Palace',
|
||||||
'Misery Mire': 'in Misery Mire',
|
'Misery Mire': 'in Misery Mire',
|
||||||
'Turtle Rock': 'in Turtle Rock',
|
'Turtle Rock': 'in Turtle Rock',
|
||||||
|
|||||||
@@ -126,23 +126,34 @@ location_table_uw = {"Blind's Hideout - Top": (0x11d, 0x10),
|
|||||||
'Desert Palace - Map Chest': (0x74, 0x10),
|
'Desert Palace - Map Chest': (0x74, 0x10),
|
||||||
'Desert Palace - Compass Chest': (0x85, 0x10),
|
'Desert Palace - Compass Chest': (0x85, 0x10),
|
||||||
'Desert Palace - Big Key Chest': (0x75, 0x10),
|
'Desert Palace - Big Key Chest': (0x75, 0x10),
|
||||||
|
'Desert Palace - Desert Tiles 1 Pot Key': (0x63, 0x400),
|
||||||
|
'Desert Palace - Beamos Hall Pot Key': (0x53, 0x400),
|
||||||
|
'Desert Palace - Desert Tiles 2 Pot Key': (0x43, 0x400),
|
||||||
'Desert Palace - Boss': (0x33, 0x800),
|
'Desert Palace - Boss': (0x33, 0x800),
|
||||||
'Eastern Palace - Compass Chest': (0xa8, 0x10),
|
'Eastern Palace - Compass Chest': (0xa8, 0x10),
|
||||||
'Eastern Palace - Big Chest': (0xa9, 0x10),
|
'Eastern Palace - Big Chest': (0xa9, 0x10),
|
||||||
|
'Eastern Palace - Dark Square Pot Key': (0xba, 0x400),
|
||||||
|
'Eastern Palace - Dark Eyegore Key Drop': (0x99, 0x400),
|
||||||
'Eastern Palace - Cannonball Chest': (0xb9, 0x10),
|
'Eastern Palace - Cannonball Chest': (0xb9, 0x10),
|
||||||
'Eastern Palace - Big Key Chest': (0xb8, 0x10),
|
'Eastern Palace - Big Key Chest': (0xb8, 0x10),
|
||||||
'Eastern Palace - Map Chest': (0xaa, 0x10),
|
'Eastern Palace - Map Chest': (0xaa, 0x10),
|
||||||
'Eastern Palace - Boss': (0xc8, 0x800),
|
'Eastern Palace - Boss': (0xc8, 0x800),
|
||||||
'Hyrule Castle - Boomerang Chest': (0x71, 0x10),
|
'Hyrule Castle - Boomerang Chest': (0x71, 0x10),
|
||||||
|
'Hyrule Castle - Boomerang Guard Key Drop': (0x71, 0x400),
|
||||||
'Hyrule Castle - Map Chest': (0x72, 0x10),
|
'Hyrule Castle - Map Chest': (0x72, 0x10),
|
||||||
|
'Hyrule Castle - Map Guard Key Drop': (0x72, 0x400),
|
||||||
"Hyrule Castle - Zelda's Chest": (0x80, 0x10),
|
"Hyrule Castle - Zelda's Chest": (0x80, 0x10),
|
||||||
|
'Hyrule Castle - Big Key Drop': (0x80, 0x400),
|
||||||
'Sewers - Dark Cross': (0x32, 0x10),
|
'Sewers - Dark Cross': (0x32, 0x10),
|
||||||
|
'Hyrule Castle - Key Rat Key Drop': (0x21, 0x400),
|
||||||
'Sewers - Secret Room - Left': (0x11, 0x10),
|
'Sewers - Secret Room - Left': (0x11, 0x10),
|
||||||
'Sewers - Secret Room - Middle': (0x11, 0x20),
|
'Sewers - Secret Room - Middle': (0x11, 0x20),
|
||||||
'Sewers - Secret Room - Right': (0x11, 0x40),
|
'Sewers - Secret Room - Right': (0x11, 0x40),
|
||||||
'Sanctuary': (0x12, 0x10),
|
'Sanctuary': (0x12, 0x10),
|
||||||
'Castle Tower - Room 03': (0xe0, 0x10),
|
'Castle Tower - Room 03': (0xe0, 0x10),
|
||||||
'Castle Tower - Dark Maze': (0xd0, 0x10),
|
'Castle Tower - Dark Maze': (0xd0, 0x10),
|
||||||
|
'Castle Tower - Dark Archer Key Drop': (0xc0, 0x400),
|
||||||
|
'Castle Tower - Circle of Pots Key Drop': (0xb0, 0x400),
|
||||||
'Spectacle Rock Cave': (0xea, 0x400),
|
'Spectacle Rock Cave': (0xea, 0x400),
|
||||||
'Paradox Cave Lower - Far Left': (0xef, 0x10),
|
'Paradox Cave Lower - Far Left': (0xef, 0x10),
|
||||||
'Paradox Cave Lower - Left': (0xef, 0x20),
|
'Paradox Cave Lower - Left': (0xef, 0x20),
|
||||||
@@ -181,18 +192,25 @@ location_table_uw = {"Blind's Hideout - Top": (0x11d, 0x10),
|
|||||||
'Mimic Cave': (0x10c, 0x10),
|
'Mimic Cave': (0x10c, 0x10),
|
||||||
'Swamp Palace - Entrance': (0x28, 0x10),
|
'Swamp Palace - Entrance': (0x28, 0x10),
|
||||||
'Swamp Palace - Map Chest': (0x37, 0x10),
|
'Swamp Palace - Map Chest': (0x37, 0x10),
|
||||||
|
'Swamp Palace - Pot Row Pot Key': (0x38, 0x400),
|
||||||
|
'Swamp Palace - Trench 1 Pot Key': (0x37, 0x400),
|
||||||
|
'Swamp Palace - Hookshot Pot Key': (0x36, 0x400),
|
||||||
'Swamp Palace - Big Chest': (0x36, 0x10),
|
'Swamp Palace - Big Chest': (0x36, 0x10),
|
||||||
'Swamp Palace - Compass Chest': (0x46, 0x10),
|
'Swamp Palace - Compass Chest': (0x46, 0x10),
|
||||||
|
'Swamp Palace - Trench 2 Pot Key': (0x35, 0x400),
|
||||||
'Swamp Palace - Big Key Chest': (0x35, 0x10),
|
'Swamp Palace - Big Key Chest': (0x35, 0x10),
|
||||||
'Swamp Palace - West Chest': (0x34, 0x10),
|
'Swamp Palace - West Chest': (0x34, 0x10),
|
||||||
'Swamp Palace - Flooded Room - Left': (0x76, 0x10),
|
'Swamp Palace - Flooded Room - Left': (0x76, 0x10),
|
||||||
'Swamp Palace - Flooded Room - Right': (0x76, 0x20),
|
'Swamp Palace - Flooded Room - Right': (0x76, 0x20),
|
||||||
'Swamp Palace - Waterfall Room': (0x66, 0x10),
|
'Swamp Palace - Waterfall Room': (0x66, 0x10),
|
||||||
|
'Swamp Palace - Waterway Pot Key': (0x16, 0x400),
|
||||||
'Swamp Palace - Boss': (0x6, 0x800),
|
'Swamp Palace - Boss': (0x6, 0x800),
|
||||||
"Thieves' Town - Big Key Chest": (0xdb, 0x20),
|
"Thieves' Town - Big Key Chest": (0xdb, 0x20),
|
||||||
"Thieves' Town - Map Chest": (0xdb, 0x10),
|
"Thieves' Town - Map Chest": (0xdb, 0x10),
|
||||||
"Thieves' Town - Compass Chest": (0xdc, 0x10),
|
"Thieves' Town - Compass Chest": (0xdc, 0x10),
|
||||||
"Thieves' Town - Ambush Chest": (0xcb, 0x10),
|
"Thieves' Town - Ambush Chest": (0xcb, 0x10),
|
||||||
|
"Thieves' Town - Hallway Pot Key": (0xbc, 0x400),
|
||||||
|
"Thieves' Town - Spike Switch Pot Key": (0xab, 0x400),
|
||||||
"Thieves' Town - Attic": (0x65, 0x10),
|
"Thieves' Town - Attic": (0x65, 0x10),
|
||||||
"Thieves' Town - Big Chest": (0x44, 0x10),
|
"Thieves' Town - Big Chest": (0x44, 0x10),
|
||||||
"Thieves' Town - Blind's Cell": (0x45, 0x10),
|
"Thieves' Town - Blind's Cell": (0x45, 0x10),
|
||||||
@@ -203,28 +221,39 @@ location_table_uw = {"Blind's Hideout - Top": (0x11d, 0x10),
|
|||||||
'Skull Woods - Pot Prison': (0x57, 0x20),
|
'Skull Woods - Pot Prison': (0x57, 0x20),
|
||||||
'Skull Woods - Pinball Room': (0x68, 0x10),
|
'Skull Woods - Pinball Room': (0x68, 0x10),
|
||||||
'Skull Woods - Big Key Chest': (0x57, 0x10),
|
'Skull Woods - Big Key Chest': (0x57, 0x10),
|
||||||
|
'Skull Woods - West Lobby Pot Key': (0x56, 0x400),
|
||||||
'Skull Woods - Bridge Room': (0x59, 0x10),
|
'Skull Woods - Bridge Room': (0x59, 0x10),
|
||||||
|
'Skull Woods - Spike Corner Key Drop': (0x39, 0x400),
|
||||||
'Skull Woods - Boss': (0x29, 0x800),
|
'Skull Woods - Boss': (0x29, 0x800),
|
||||||
|
'Ice Palace - Jelly Key Drop': (0x0e, 0x400),
|
||||||
'Ice Palace - Compass Chest': (0x2e, 0x10),
|
'Ice Palace - Compass Chest': (0x2e, 0x10),
|
||||||
|
'Ice Palace - Conveyor Key Drop': (0x3e, 0x400),
|
||||||
'Ice Palace - Freezor Chest': (0x7e, 0x10),
|
'Ice Palace - Freezor Chest': (0x7e, 0x10),
|
||||||
'Ice Palace - Big Chest': (0x9e, 0x10),
|
'Ice Palace - Big Chest': (0x9e, 0x10),
|
||||||
'Ice Palace - Iced T Room': (0xae, 0x10),
|
'Ice Palace - Iced T Room': (0xae, 0x10),
|
||||||
|
'Ice Palace - Many Pots Pot Key': (0x9f, 0x400),
|
||||||
'Ice Palace - Spike Room': (0x5f, 0x10),
|
'Ice Palace - Spike Room': (0x5f, 0x10),
|
||||||
'Ice Palace - Big Key Chest': (0x1f, 0x10),
|
'Ice Palace - Big Key Chest': (0x1f, 0x10),
|
||||||
|
'Ice Palace - Hammer Block Key Drop': (0x3f, 0x400),
|
||||||
'Ice Palace - Map Chest': (0x3f, 0x10),
|
'Ice Palace - Map Chest': (0x3f, 0x10),
|
||||||
'Ice Palace - Boss': (0xde, 0x800),
|
'Ice Palace - Boss': (0xde, 0x800),
|
||||||
'Misery Mire - Big Chest': (0xc3, 0x10),
|
'Misery Mire - Big Chest': (0xc3, 0x10),
|
||||||
'Misery Mire - Map Chest': (0xc3, 0x20),
|
'Misery Mire - Map Chest': (0xc3, 0x20),
|
||||||
'Misery Mire - Main Lobby': (0xc2, 0x10),
|
'Misery Mire - Main Lobby': (0xc2, 0x10),
|
||||||
'Misery Mire - Bridge Chest': (0xa2, 0x10),
|
'Misery Mire - Bridge Chest': (0xa2, 0x10),
|
||||||
|
'Misery Mire - Spikes Pot Key': (0xb3, 0x400),
|
||||||
'Misery Mire - Spike Chest': (0xb3, 0x10),
|
'Misery Mire - Spike Chest': (0xb3, 0x10),
|
||||||
|
'Misery Mire - Fishbone Pot Key': (0xa1, 0x400),
|
||||||
|
'Misery Mire - Conveyor Crystal Key Drop': (0xc1, 0x400),
|
||||||
'Misery Mire - Compass Chest': (0xc1, 0x10),
|
'Misery Mire - Compass Chest': (0xc1, 0x10),
|
||||||
'Misery Mire - Big Key Chest': (0xd1, 0x10),
|
'Misery Mire - Big Key Chest': (0xd1, 0x10),
|
||||||
'Misery Mire - Boss': (0x90, 0x800),
|
'Misery Mire - Boss': (0x90, 0x800),
|
||||||
'Turtle Rock - Compass Chest': (0xd6, 0x10),
|
'Turtle Rock - Compass Chest': (0xd6, 0x10),
|
||||||
'Turtle Rock - Roller Room - Left': (0xb7, 0x10),
|
'Turtle Rock - Roller Room - Left': (0xb7, 0x10),
|
||||||
'Turtle Rock - Roller Room - Right': (0xb7, 0x20),
|
'Turtle Rock - Roller Room - Right': (0xb7, 0x20),
|
||||||
|
'Turtle Rock - Pokey 1 Key Drop': (0xb6, 0x400),
|
||||||
'Turtle Rock - Chain Chomps': (0xb6, 0x10),
|
'Turtle Rock - Chain Chomps': (0xb6, 0x10),
|
||||||
|
'Turtle Rock - Pokey 2 Key Drop': (0x13, 0x400),
|
||||||
'Turtle Rock - Big Key Chest': (0x14, 0x10),
|
'Turtle Rock - Big Key Chest': (0x14, 0x10),
|
||||||
'Turtle Rock - Big Chest': (0x24, 0x10),
|
'Turtle Rock - Big Chest': (0x24, 0x10),
|
||||||
'Turtle Rock - Crystaroller Room': (0x4, 0x10),
|
'Turtle Rock - Crystaroller Room': (0x4, 0x10),
|
||||||
@@ -247,6 +276,7 @@ location_table_uw = {"Blind's Hideout - Top": (0x11d, 0x10),
|
|||||||
'Palace of Darkness - Big Chest': (0x1a, 0x10),
|
'Palace of Darkness - Big Chest': (0x1a, 0x10),
|
||||||
'Palace of Darkness - Harmless Hellway': (0x1a, 0x40),
|
'Palace of Darkness - Harmless Hellway': (0x1a, 0x40),
|
||||||
'Palace of Darkness - Boss': (0x5a, 0x800),
|
'Palace of Darkness - Boss': (0x5a, 0x800),
|
||||||
|
'Ganons Tower - Conveyor Cross Pot Key': (0x8b, 0x400),
|
||||||
"Ganons Tower - Bob's Torch": (0x8c, 0x400),
|
"Ganons Tower - Bob's Torch": (0x8c, 0x400),
|
||||||
'Ganons Tower - Hope Room - Left': (0x8c, 0x20),
|
'Ganons Tower - Hope Room - Left': (0x8c, 0x20),
|
||||||
'Ganons Tower - Hope Room - Right': (0x8c, 0x40),
|
'Ganons Tower - Hope Room - Right': (0x8c, 0x40),
|
||||||
@@ -255,11 +285,13 @@ location_table_uw = {"Blind's Hideout - Top": (0x11d, 0x10),
|
|||||||
'Ganons Tower - Compass Room - Top Right': (0x9d, 0x20),
|
'Ganons Tower - Compass Room - Top Right': (0x9d, 0x20),
|
||||||
'Ganons Tower - Compass Room - Bottom Left': (0x9d, 0x40),
|
'Ganons Tower - Compass Room - Bottom Left': (0x9d, 0x40),
|
||||||
'Ganons Tower - Compass Room - Bottom Right': (0x9d, 0x80),
|
'Ganons Tower - Compass Room - Bottom Right': (0x9d, 0x80),
|
||||||
|
'Ganons Tower - Conveyor Star Pits Pot Key': (0x7b, 0x400),
|
||||||
'Ganons Tower - DMs Room - Top Left': (0x7b, 0x10),
|
'Ganons Tower - DMs Room - Top Left': (0x7b, 0x10),
|
||||||
'Ganons Tower - DMs Room - Top Right': (0x7b, 0x20),
|
'Ganons Tower - DMs Room - Top Right': (0x7b, 0x20),
|
||||||
'Ganons Tower - DMs Room - Bottom Left': (0x7b, 0x40),
|
'Ganons Tower - DMs Room - Bottom Left': (0x7b, 0x40),
|
||||||
'Ganons Tower - DMs Room - Bottom Right': (0x7b, 0x80),
|
'Ganons Tower - DMs Room - Bottom Right': (0x7b, 0x80),
|
||||||
'Ganons Tower - Map Chest': (0x8b, 0x10),
|
'Ganons Tower - Map Chest': (0x8b, 0x10),
|
||||||
|
'Ganons Tower - Double Switch Pot Key': (0x9b, 0x400),
|
||||||
'Ganons Tower - Firesnake Room': (0x7d, 0x10),
|
'Ganons Tower - Firesnake Room': (0x7d, 0x10),
|
||||||
'Ganons Tower - Randomizer Room - Top Left': (0x7c, 0x10),
|
'Ganons Tower - Randomizer Room - Top Left': (0x7c, 0x10),
|
||||||
'Ganons Tower - Randomizer Room - Top Right': (0x7c, 0x20),
|
'Ganons Tower - Randomizer Room - Top Right': (0x7c, 0x20),
|
||||||
@@ -272,6 +304,7 @@ location_table_uw = {"Blind's Hideout - Top": (0x11d, 0x10),
|
|||||||
'Ganons Tower - Big Key Chest': (0x1c, 0x10),
|
'Ganons Tower - Big Key Chest': (0x1c, 0x10),
|
||||||
'Ganons Tower - Mini Helmasaur Room - Left': (0x3d, 0x10),
|
'Ganons Tower - Mini Helmasaur Room - Left': (0x3d, 0x10),
|
||||||
'Ganons Tower - Mini Helmasaur Room - Right': (0x3d, 0x20),
|
'Ganons Tower - Mini Helmasaur Room - Right': (0x3d, 0x20),
|
||||||
|
'Ganons Tower - Mini Helmasaur Key Drop': (0x3d, 0x400),
|
||||||
'Ganons Tower - Pre-Moldorm Chest': (0x3d, 0x40),
|
'Ganons Tower - Pre-Moldorm Chest': (0x3d, 0x40),
|
||||||
'Ganons Tower - Validation Chest': (0x4d, 0x10)}
|
'Ganons Tower - Validation Chest': (0x4d, 0x10)}
|
||||||
location_table_npc = {'Mushroom': 0x1000,
|
location_table_npc = {'Mushroom': 0x1000,
|
||||||
|
|||||||
110
Regions.py
110
Regions.py
@@ -809,9 +809,9 @@ def _create_region(player, name, type, hint='Hyrule', locations=None, exits=None
|
|||||||
for exit in exits:
|
for exit in exits:
|
||||||
ret.exits.append(Entrance(player, exit, ret))
|
ret.exits.append(Entrance(player, exit, ret))
|
||||||
for location in locations:
|
for location in locations:
|
||||||
if location in key_only_locations:
|
if location in key_drop_data:
|
||||||
ko_hint = 'in a pot' if 'Pot' in location else 'with an enemy'
|
ko_hint = key_drop_data[location][2]
|
||||||
ret.locations.append(Location(player, location, None, False, ko_hint, ret, key_only_locations[location]))
|
ret.locations.append(Location(player, location, None, False, ko_hint, ret, key_drop_data[location][3]))
|
||||||
else:
|
else:
|
||||||
address, player_address, crystal, hint_text = location_table[location]
|
address, player_address, crystal, hint_text = location_table[location]
|
||||||
ret.locations.append(Location(player, location, address, crystal, hint_text, ret, None, player_address))
|
ret.locations.append(Location(player, location, address, crystal, hint_text, ret, None, player_address))
|
||||||
@@ -863,7 +863,7 @@ def create_shops(world, player):
|
|||||||
|
|
||||||
def adjust_locations(world, player):
|
def adjust_locations(world, player):
|
||||||
if world.keydropshuffle[player]:
|
if world.keydropshuffle[player]:
|
||||||
for location in key_only_locations.keys():
|
for location in key_drop_data.keys():
|
||||||
loc = world.get_location(location, player)
|
loc = world.get_location(location, player)
|
||||||
key_item = loc.item
|
key_item = loc.item
|
||||||
key_item.location = None
|
key_item.location = None
|
||||||
@@ -901,76 +901,40 @@ shop_table = {
|
|||||||
'Capacity Upgrade': (0x0115, ShopType.UpgradeShop, 0x04, True, True, [('Bomb Upgrade (+5)', 100, 7), ('Arrow Upgrade (+5)', 100, 7)])
|
'Capacity Upgrade': (0x0115, ShopType.UpgradeShop, 0x04, True, True, [('Bomb Upgrade (+5)', 100, 7), ('Arrow Upgrade (+5)', 100, 7)])
|
||||||
}
|
}
|
||||||
|
|
||||||
key_only_locations = {
|
|
||||||
'Hyrule Castle - Map Guard Key Drop': 'Small Key (Escape)',
|
|
||||||
'Hyrule Castle - Boomerang Guard Key Drop': 'Small Key (Escape)',
|
|
||||||
'Hyrule Castle - Key Rat Key Drop': 'Small Key (Escape)',
|
|
||||||
'Hyrule Castle - Big Key Drop': 'Big Key (Escape)',
|
|
||||||
'Eastern Palace - Dark Square Pot Key': 'Small Key (Eastern Palace)',
|
|
||||||
'Eastern Palace - Dark Eyegore Key Drop': 'Small Key (Eastern Palace)',
|
|
||||||
'Desert Palace - Desert Tiles 1 Pot Key': 'Small Key (Desert Palace)',
|
|
||||||
'Desert Palace - Beamos Hall Pot Key': 'Small Key (Desert Palace)',
|
|
||||||
'Desert Palace - Desert Tiles 2 Pot Key': 'Small Key (Desert Palace)',
|
|
||||||
'Castle Tower - Dark Archer Key Drop': 'Small Key (Agahnims Tower)',
|
|
||||||
'Castle Tower - Circle of Pots Key Drop': 'Small Key (Agahnims Tower)',
|
|
||||||
'Swamp Palace - Pot Row Pot Key': 'Small Key (Swamp Palace)',
|
|
||||||
'Swamp Palace - Trench 1 Pot Key': 'Small Key (Swamp Palace)',
|
|
||||||
'Swamp Palace - Hookshot Pot Key': 'Small Key (Swamp Palace)',
|
|
||||||
'Swamp Palace - Trench 2 Pot Key': 'Small Key (Swamp Palace)',
|
|
||||||
'Swamp Palace - Waterway Pot Key': 'Small Key (Swamp Palace)',
|
|
||||||
'Skull Woods - West Lobby Pot Key': 'Small Key (Skull Woods)',
|
|
||||||
'Skull Woods - Spike Corner Key Drop': 'Small Key (Skull Woods)',
|
|
||||||
'Thieves\' Town - Hallway Pot Key': 'Small Key (Thieves Town)',
|
|
||||||
'Thieves\' Town - Spike Switch Pot Key': 'Small Key (Thieves Town)',
|
|
||||||
'Ice Palace - Jelly Key Drop': 'Small Key (Ice Palace)',
|
|
||||||
'Ice Palace - Conveyor Key Drop': 'Small Key (Ice Palace)',
|
|
||||||
'Ice Palace - Hammer Block Key Drop': 'Small Key (Ice Palace)',
|
|
||||||
'Ice Palace - Many Pots Pot Key': 'Small Key (Ice Palace)',
|
|
||||||
'Misery Mire - Spikes Pot Key': 'Small Key (Misery Mire)',
|
|
||||||
'Misery Mire - Fishbone Pot Key': 'Small Key (Misery Mire)',
|
|
||||||
'Misery Mire - Conveyor Crystal Key Drop': 'Small Key (Misery Mire)',
|
|
||||||
'Turtle Rock - Pokey 1 Key Drop': 'Small Key (Turtle Rock)',
|
|
||||||
'Turtle Rock - Pokey 2 Key Drop': 'Small Key (Turtle Rock)',
|
|
||||||
'Ganons Tower - Conveyor Cross Pot Key': 'Small Key (Ganons Tower)',
|
|
||||||
'Ganons Tower - Double Switch Pot Key': 'Small Key (Ganons Tower)',
|
|
||||||
'Ganons Tower - Conveyor Star Pits Pot Key': 'Small Key (Ganons Tower)',
|
|
||||||
'Ganons Tower - Mini Helmasaur Key Drop': 'Small Key (Ganons Tower)'
|
|
||||||
}
|
|
||||||
|
|
||||||
key_drop_data = {
|
key_drop_data = {
|
||||||
'Hyrule Castle - Map Guard Key Drop': [0x140036, 0x140037],
|
'Hyrule Castle - Map Guard Key Drop': [0x140036, 0x140037, 'in Hyrule Castle', 'Small Key (Escape)'],
|
||||||
'Hyrule Castle - Boomerang Guard Key Drop': [0x140033, 0x140034],
|
'Hyrule Castle - Boomerang Guard Key Drop': [0x140033, 0x140034, 'in Hyrule Castle', 'Small Key (Escape)'],
|
||||||
'Hyrule Castle - Key Rat Key Drop': [0x14000c, 0x14000d],
|
'Hyrule Castle - Key Rat Key Drop': [0x14000c, 0x14000d, 'in Hyrule Castle', 'Small Key (Escape)'],
|
||||||
'Hyrule Castle - Big Key Drop': [0x14003c, 0x14003d],
|
'Hyrule Castle - Big Key Drop': [0x14003c, 0x14003d, 'in Hyrule Castle', 'Big Key (Escape)'],
|
||||||
'Eastern Palace - Dark Square Pot Key': [0x14005a, 0x14005b],
|
'Eastern Palace - Dark Square Pot Key': [0x14005a, 0x14005b, 'in Eastern Palace', 'Small Key (Eastern Palace)'],
|
||||||
'Eastern Palace - Dark Eyegore Key Drop': [0x140048, 0x140049],
|
'Eastern Palace - Dark Eyegore Key Drop': [0x140048, 0x140049, 'in Eastern Palace', 'Small Key (Eastern Palace)'],
|
||||||
'Desert Palace - Desert Tiles 1 Pot Key': [0x140030, 0x140031],
|
'Desert Palace - Desert Tiles 1 Pot Key': [0x140030, 0x140031, 'in Desert Palace', 'Small Key (Desert Palace)'],
|
||||||
'Desert Palace - Beamos Hall Pot Key': [0x14002a, 0x14002b],
|
'Desert Palace - Beamos Hall Pot Key': [0x14002a, 0x14002b, 'in Desert Palace', 'Small Key (Desert Palace)'],
|
||||||
'Desert Palace - Desert Tiles 2 Pot Key': [0x140027, 0x140028],
|
'Desert Palace - Desert Tiles 2 Pot Key': [0x140027, 0x140028, 'in Desert Palace', 'Small Key (Desert Palace)'],
|
||||||
'Castle Tower - Dark Archer Key Drop': [0x140060, 0x140061],
|
'Castle Tower - Dark Archer Key Drop': [0x140060, 0x140061, 'in Castle Tower', 'Small Key (Agahnims Tower)'],
|
||||||
'Castle Tower - Circle of Pots Key Drop': [0x140051, 0x140052],
|
'Castle Tower - Circle of Pots Key Drop': [0x140051, 0x140052, 'in Castle Tower', 'Small Key (Agahnims Tower)'],
|
||||||
'Swamp Palace - Pot Row Pot Key': [0x140018, 0x140019],
|
'Swamp Palace - Pot Row Pot Key': [0x140018, 0x140019, 'in Swamp Palace', 'Small Key (Swamp Palace)'],
|
||||||
'Swamp Palace - Trench 1 Pot Key': [0x140015, 0x140016],
|
'Swamp Palace - Trench 1 Pot Key': [0x140015, 0x140016, 'in Swamp Palace', 'Small Key (Swamp Palace)'],
|
||||||
'Swamp Palace - Hookshot Pot Key': [0x140012, 0x140013],
|
'Swamp Palace - Hookshot Pot Key': [0x140012, 0x140013, 'in Swamp Palace', 'Small Key (Swamp Palace)'],
|
||||||
'Swamp Palace - Trench 2 Pot Key': [0x14000f, 0x140010],
|
'Swamp Palace - Trench 2 Pot Key': [0x14000f, 0x140010, 'in Swamp Palace', 'Small Key (Swamp Palace)'],
|
||||||
'Swamp Palace - Waterway Pot Key': [0x140009, 0x14000a],
|
'Swamp Palace - Waterway Pot Key': [0x140009, 0x14000a, 'in Swamp Palace', 'Small Key (Swamp Palace)'],
|
||||||
'Skull Woods - West Lobby Pot Key': [0x14002d, 0x14002e],
|
'Skull Woods - West Lobby Pot Key': [0x14002d, 0x14002e, 'in Skull Woods', 'Small Key (Skull Woods)'],
|
||||||
'Skull Woods - Spike Corner Key Drop': [0x14001b, 0x14001c],
|
'Skull Woods - Spike Corner Key Drop': [0x14001b, 0x14001c, 'near Mothula', 'Small Key (Skull Woods)'],
|
||||||
'Thieves\' Town - Hallway Pot Key': [0x14005d, 0x14005e],
|
"Thieves' Town - Hallway Pot Key": [0x14005d, 0x14005e, "in Thieves' Town", 'Small Key (Thieves Town)'],
|
||||||
'Thieves\' Town - Spike Switch Pot Key': [0x14004e, 0x14004f],
|
"Thieves' Town - Spike Switch Pot Key": [0x14004e, 0x14004f, "in Thieves' Town", 'Small Key (Thieves Town)'],
|
||||||
'Ice Palace - Jelly Key Drop': [0x140003, 0x140004],
|
'Ice Palace - Jelly Key Drop': [0x140003, 0x140004, 'in Ice Palace', 'Small Key (Ice Palace)'],
|
||||||
'Ice Palace - Conveyor Key Drop': [0x140021, 0x140022],
|
'Ice Palace - Conveyor Key Drop': [0x140021, 0x140022, 'in Ice Palace', 'Small Key (Ice Palace)'],
|
||||||
'Ice Palace - Hammer Block Key Drop': [0x140024, 0x140025],
|
'Ice Palace - Hammer Block Key Drop': [0x140024, 0x140025, 'in Ice Palace', 'Small Key (Ice Palace)'],
|
||||||
'Ice Palace - Many Pots Pot Key': [0x140045, 0x140046],
|
'Ice Palace - Many Pots Pot Key': [0x140045, 0x140046, 'in Ice Palace', 'Small Key (Ice Palace)'],
|
||||||
'Misery Mire - Spikes Pot Key': [0x140054, 0x140055],
|
'Misery Mire - Spikes Pot Key': [0x140054, 0x140055 , 'in Misery Mire', 'Small Key (Misery Mire)'],
|
||||||
'Misery Mire - Fishbone Pot Key': [0x14004b, 0x14004c],
|
'Misery Mire - Fishbone Pot Key': [0x14004b, 0x14004c, 'in forgotten Mire', 'Small Key (Misery Mire)'],
|
||||||
'Misery Mire - Conveyor Crystal Key Drop': [0x140063, 0x140064],
|
'Misery Mire - Conveyor Crystal Key Drop': [0x140063, 0x140064 , 'in Misery Mire', 'Small Key (Misery Mire)'],
|
||||||
'Turtle Rock - Pokey 1 Key Drop': [0x140057, 0x140058],
|
'Turtle Rock - Pokey 1 Key Drop': [0x140057, 0x140058, 'in Turtle Rock', 'Small Key (Turtle Rock)'],
|
||||||
'Turtle Rock - Pokey 2 Key Drop': [0x140006, 0x140007],
|
'Turtle Rock - Pokey 2 Key Drop': [0x140006, 0x140007, 'in Turtle Rock', 'Small Key (Turtle Rock)'],
|
||||||
'Ganons Tower - Conveyor Cross Pot Key': [0x14003f, 0x140040],
|
'Ganons Tower - Conveyor Cross Pot Key': [0x14003f, 0x140040, "in Ganon's Tower", 'Small Key (Ganons Tower)'],
|
||||||
'Ganons Tower - Double Switch Pot Key': [0x140042, 0x140043],
|
'Ganons Tower - Double Switch Pot Key': [0x140042, 0x140043, "in Ganon's Tower", 'Small Key (Ganons Tower)'],
|
||||||
'Ganons Tower - Conveyor Star Pits Pot Key': [0x140039, 0x14003a],
|
'Ganons Tower - Conveyor Star Pits Pot Key': [0x140039, 0x14003a, "in Ganon's Tower", 'Small Key (Ganons Tower)'],
|
||||||
'Ganons Tower - Mini Helmasaur Key Drop': [0x14001e, 0x14001f]
|
'Ganons Tower - Mini Helmasaur Key Drop': [0x14001e, 0x14001f, "atop Ganon's Tower", 'Small Key (Ganons Tower)']
|
||||||
}
|
}
|
||||||
|
|
||||||
dungeon_events = [
|
dungeon_events = [
|
||||||
|
|||||||
7
Rom.py
7
Rom.py
@@ -9,7 +9,7 @@ import struct
|
|||||||
import sys
|
import sys
|
||||||
import subprocess
|
import subprocess
|
||||||
|
|
||||||
from BaseClasses import CollectionState, ShopType, Region, Location, DoorType
|
from BaseClasses import CollectionState, ShopType, Region, Location, DoorType, RegionType
|
||||||
from DoorShuffle import compass_data, DROptions, boss_indicator
|
from DoorShuffle import compass_data, DROptions, boss_indicator
|
||||||
from Dungeons import dungeon_music_addresses
|
from Dungeons import dungeon_music_addresses
|
||||||
from Regions import location_table
|
from Regions import location_table
|
||||||
@@ -1671,7 +1671,10 @@ def write_strings(rom, world, player, team):
|
|||||||
if ped_hint:
|
if ped_hint:
|
||||||
hint = dest.pedestal_hint_text if dest.pedestal_hint_text else "unknown item"
|
hint = dest.pedestal_hint_text if dest.pedestal_hint_text else "unknown item"
|
||||||
else:
|
else:
|
||||||
hint = dest.hint_text if dest.hint_text else "something"
|
if isinstance(dest, Region) and dest.type == RegionType.Dungeon and dest.dungeon:
|
||||||
|
hint = dest.dungeon.name
|
||||||
|
else:
|
||||||
|
hint = dest.hint_text if dest.hint_text else "something"
|
||||||
if dest.player != player:
|
if dest.player != player:
|
||||||
if ped_hint:
|
if ped_hint:
|
||||||
hint += f" for {world.player_names[dest.player][team]}!"
|
hint += f" for {world.player_names[dest.player][team]}!"
|
||||||
|
|||||||
Reference in New Issue
Block a user