Minor standard generation fix

Minor ER + Partitioned fix
This commit is contained in:
aerinon
2023-02-06 13:46:25 -07:00
parent 7c75053cc1
commit fb13785abc
5 changed files with 11 additions and 4 deletions

View File

@@ -476,14 +476,14 @@ def choose_portals(world, player):
info.required_passage = {x: y for x, y in info.required_passage.items() if len(y) > 0} info.required_passage = {x: y for x, y in info.required_passage.items() if len(y) > 0}
for target_region, possible_portals in info.required_passage.items(): for target_region, possible_portals in info.required_passage.items():
candidates = find_portal_candidates(master_door_list, dungeon, custom, allowed, need_passage=True, candidates = find_portal_candidates(master_door_list, dungeon, custom, allowed, need_passage=True,
bk_shuffle=bk_shuffle, rupee_bow=rupee_bow_flag) bk_shuffle=bk_shuffle, standard=std_flag, rupee_bow=rupee_bow_flag)
choice, portal = assign_portal(candidates, possible_portals, custom, world, player) choice, portal = assign_portal(candidates, possible_portals, custom, world, player)
portal.destination = True portal.destination = True
clean_up_portal_assignment(portal_assignment, dungeon, portal, master_door_list, outstanding_portals) clean_up_portal_assignment(portal_assignment, dungeon, portal, master_door_list, outstanding_portals)
dead_end_choices = info.total - 1 - len(portal_assignment[dungeon]) dead_end_choices = info.total - 1 - len(portal_assignment[dungeon])
for i in range(0, dead_end_choices): for i in range(0, dead_end_choices):
candidates = find_portal_candidates(master_door_list, dungeon, custom, allowed, dead_end_allowed=True, candidates = find_portal_candidates(master_door_list, dungeon, custom, allowed, dead_end_allowed=True,
bk_shuffle=bk_shuffle, rupee_bow=rupee_bow_flag) bk_shuffle=bk_shuffle, standard=std_flag, rupee_bow=rupee_bow_flag)
possible_portals = outstanding_portals if not info.sole_entrance else [x for x in outstanding_portals if x != info.sole_entrance] possible_portals = outstanding_portals if not info.sole_entrance else [x for x in outstanding_portals if x != info.sole_entrance]
choice, portal = assign_portal(candidates, possible_portals, custom, world, player) choice, portal = assign_portal(candidates, possible_portals, custom, world, player)
if choice.deadEnd: if choice.deadEnd:

View File

@@ -1521,6 +1521,7 @@ def create_doors(world, player):
world.get_door("GT Bob\'s Room SE", player).passage = False world.get_door("GT Bob\'s Room SE", player).passage = False
world.get_door('Desert Tiles 2 SE', player).bk_shuffle_req = True # key-drop note: allows this to be a portal world.get_door('Desert Tiles 2 SE', player).bk_shuffle_req = True # key-drop note: allows this to be a portal
world.get_door('Swamp Lobby S', player).standard_restricted = True world.get_door('Swamp Lobby S', player).standard_restricted = True
world.get_door('Sanctuary S', player).standard_restricted = True
world.get_door('PoD Mimics 2 SW', player).rupee_bow_restricted = True # bow statue world.get_door('PoD Mimics 2 SW', player).rupee_bow_restricted = True # bow statue
# enemizer logic could get rid of the following restriction # enemizer logic could get rid of the following restriction
world.get_door('PoD Pit Room S', player).rupee_bow_restricted = True # so mimics 1 shouldn't be required world.get_door('PoD Pit Room S', player).rupee_bow_restricted = True # so mimics 1 shouldn't be required

View File

@@ -34,7 +34,7 @@ from source.overworld.EntranceShuffle2 import link_entrances_new
from source.tools.BPS import create_bps_from_data from source.tools.BPS import create_bps_from_data
from source.classes.CustomSettings import CustomSettings from source.classes.CustomSettings import CustomSettings
__version__ = '1.2.0.6-u' __version__ = '1.2.0.7-u'
from source.classes.BabelFish import BabelFish from source.classes.BabelFish import BabelFish

View File

@@ -108,6 +108,12 @@ These are now independent of retro mode and have three options: None, Random, an
* Bonk Fairy (Dark) * Bonk Fairy (Dark)
# Bug Fixes and Notes # Bug Fixes and Notes
* 1.2.0.7-u
* Fix for some misery mire key logic
* Minor standard generation fix
* Fix for inactive flute start
* Settingsfile for multiworld generation support
* Fix for duped HC/AT Maps/Compasses
* 1.2.0.6-u * 1.2.0.6-u
* Fix for light cone in Escape when entering from Dark World post-zelda * Fix for light cone in Escape when entering from Dark World post-zelda
* Fix for light cone in Escape when lighting a torch with fire rod * Fix for light cone in Escape when lighting a torch with fire rod

View File

@@ -632,7 +632,7 @@ def do_fixed_shuffle(avail, entrance_list):
rules = Restrictions() rules = Restrictions()
rules.size = size rules.size = size
if ('Hyrule Castle Entrance (South)' in entrances and if ('Hyrule Castle Entrance (South)' in entrances and
avail.world.doorShuffle[avail.player] in ['basic', 'crossed']): avail.world.doorShuffle[avail.player] != 'vanilla'):
rules.must_exit_to_lw = True rules.must_exit_to_lw = True
if 'Inverted Ganons Tower' in entrances and not avail.world.shuffle_ganon: if 'Inverted Ganons Tower' in entrances and not avail.world.shuffle_ganon:
rules.fixed = True rules.fixed = True