diff --git a/README.md b/README.md index 9bd6aba5..20d75b00 100644 --- a/README.md +++ b/README.md @@ -240,7 +240,7 @@ New pottery option that control which pots (and large blocks) are in the locatio * Reduced Dungeon Pots: Same as Cave+Keys but also roughly a quarter of dungeon pots are added to the location pool picked at random. This is a dynamic mode so pots in the pool will be colored. Pots out of the pool will have vanilla contents. * Clustered Dungeon Pots: Like reduced but pots are grouped by logical sets and roughly 50% of pots are chosen from those groups. This is a dynamic mode like the above. * Excludes Empty Pots: All pots that had some sort of objects under them are chosen to be in the location pool. This excludes most large blocks and some pots out of dungeons. -* Dungeon Pots: The pots that are in dungeons are in the pool. (Includes serveral large blocks) +* Dungeon Pots: The pots that are in dungeons are in the pool. (Includes several large blocks) * Lottery: All pots and large blocks are in the pool. By default, switches remain in their vanilla location (unless you turn on the legacy option below) diff --git a/RELEASENOTES.md b/RELEASENOTES.md index e671bf72..087fad11 100644 --- a/RELEASENOTES.md +++ b/RELEASENOTES.md @@ -8,6 +8,5 @@ - Fire Rod + 1 magic extension is still in logic - Byrna + 1 magic extension is newly in logic -(One magic extension is either half magic or a bottle with the ability to purchase a blue or green potion) - -In general, making up for a lack of magic extension with a few bombs is something that could be added to the logic. Using the ice rod to freeze an enemy and then using that enemy to deal blunt damage and then using bombs to clear the frozen enemy is another strategy that could be added to the logic someday. If these are important to you, let me know. \ No newline at end of file + (One magic extension is either half magic or a bottle with the ability to purchase a blue or green potion) In general, making up for a lack of magic extension with a few bombs is something that could be added to the logic. Using the ice rod to freeze an enemy and then using that enemy to deal blunt damage and then using bombs to clear the frozen enemy is another strategy that could be added to the logic someday. If these are important to you, let me know. +- Generation: Fixed an issue with dungeonsfull shuffle \ No newline at end of file diff --git a/source/overworld/EntranceShuffle2.py b/source/overworld/EntranceShuffle2.py index 1e255b64..56e1e529 100644 --- a/source/overworld/EntranceShuffle2.py +++ b/source/overworld/EntranceShuffle2.py @@ -942,7 +942,8 @@ def do_same_world_shuffle(avail, pool_def): for option in multi_exit: multi_entrances, multi_exits = find_entrances_and_exits(avail, option) # complete_entrance_set.update(multi_entrances) - multi_exits_caves.append(multi_exits) + if multi_exits: + multi_exits_caves.append(multi_exits) for x in multi_entrances: (dw_entrances, lw_entrances)[x in LW_Entrances].append(x) @@ -955,12 +956,12 @@ def do_same_world_shuffle(avail, pool_def): lw_candidates = filter_restricted_caves(multi_exits_caves, 'LightWorld', avail) other_candidates = [x for x in multi_exits_caves if x not in lw_candidates] # remember those not passed in do_mandatory_connections(avail, lw_entrances, lw_candidates, must_exit_lw) - multi_exits_caves = other_candidates + lw_candidates # rebuild list from the lw_candidates and those not passed + multi_exits_caves = (other_candidates + lw_candidates) if other_candidates else lw_candidates # rebuild list from the lw_candidates and those not passed dw_candidates = filter_restricted_caves(multi_exits_caves, 'DarkWorld', avail) other_candidates = [x for x in multi_exits_caves if x not in dw_candidates] # remember those not passed in do_mandatory_connections(avail, dw_entrances, dw_candidates, must_exit_dw) - multi_exits_caves = other_candidates + dw_candidates # rebuild list from the dw_candidates and those not passed + multi_exits_caves = (other_candidates + dw_candidates) if other_candidates else dw_candidates # rebuild list from the dw_candidates and those not passed # connect caves random.shuffle(lw_entrances)