Merge branch 'OverworldShuffleDev' into OverworldShuffle

This commit is contained in:
codemann8
2025-01-11 17:10:23 -06:00
9 changed files with 24 additions and 19 deletions

View File

@@ -1,5 +1,9 @@
# Changelog # Changelog
## 0.5.1.3
- Fixed some minor issues with mystery multiworld
- Corrected some generation issues with Nearby dungeon item shuffles
## 0.5.1.2 ## 0.5.1.2
- Many fixes to HMG logic, generation, key collection issues - Many fixes to HMG logic, generation, key collection issues
- Fixed issue with In-Dungeon Prizes getting placed in the same dungeon - Fixed issue with In-Dungeon Prizes getting placed in the same dungeon

View File

@@ -67,7 +67,7 @@ def fill_dungeons_restrictive(world, shuffled_locations):
all_state_base = world.get_all_state() all_state_base = world.get_all_state()
for player in range(1, world.players + 1): for player in range(1, world.players + 1):
if world.logic[player] == 'hybridglitches' and world.keyshuffle[i.player] in ['none', 'nearby'] \ if world.logic[player] == 'hybridglitches' and world.keyshuffle[player] in ['none', 'nearby'] \
and world.pottery[player] not in ['none', 'cave']: and world.pottery[player] not in ['none', 'cave']:
# remove 2 keys from main pool # remove 2 keys from main pool
count_to_remove = 2 count_to_remove = 2

View File

@@ -161,7 +161,7 @@ def main(args, seed=None, fish=None):
if world.spoiler_mode != 'none' and not args.jsonout: if world.spoiler_mode != 'none' and not args.jsonout:
logger.info(world.fish.translate("cli", "cli", "create.meta")) logger.info(world.fish.translate("cli", "cli", "create.meta"))
world.spoiler.meta_to_file(output_path(f'{outfilebase}_Spoiler.txt')) world.spoiler.meta_to_file(output_path(f'{outfilebase}_Spoiler.txt'))
if args.mystery and not (args.suppress_meta or args.spoiler != 'none'): if args.mystery and not args.suppress_meta:
world.spoiler.mystery_meta_to_file(output_path(f'{outfilebase}_meta.txt')) world.spoiler.mystery_meta_to_file(output_path(f'{outfilebase}_meta.txt'))
for player in range(1, world.players + 1): for player in range(1, world.players + 1):
@@ -361,7 +361,7 @@ def main(args, seed=None, fish=None):
with open(output_path('%s_multidata' % outfilebase), 'wb') as f: with open(output_path('%s_multidata' % outfilebase), 'wb') as f:
f.write(multidata) f.write(multidata)
if args.mystery and not (args.suppress_meta or args.spoiler not in ['full']): if args.mystery and not args.suppress_meta:
world.spoiler.hashes_to_file(output_path(f'{outfilebase}_meta.txt')) world.spoiler.hashes_to_file(output_path(f'{outfilebase}_meta.txt'))
elif world.spoiler_mode != 'none' and not args.jsonout: elif world.spoiler_mode != 'none' and not args.jsonout:
world.spoiler.hashes_to_file(output_path(f'{outfilebase}_Spoiler.txt')) world.spoiler.hashes_to_file(output_path(f'{outfilebase}_Spoiler.txt'))

View File

@@ -8,7 +8,7 @@ from OWEdges import OWTileRegions, OWEdgeGroups, OWEdgeGroupsTerrain, OWExitType
from OverworldGlitchRules import create_owg_connections from OverworldGlitchRules import create_owg_connections
from Utils import bidict from Utils import bidict
version_number = '0.5.1.2' version_number = '0.5.1.3'
# branch indicator is intentionally different across branches # branch indicator is intentionally different across branches
version_branch = '' version_branch = ''

View File

@@ -67,7 +67,7 @@ def connect_hmg_entrances_regions(world, player):
connection.connect(target) connection.connect(target)
# Add the new Ice path (back of bomb drop to front) to the world and model it properly # Add the new Ice path (back of bomb drop to front) to the world and model it properly
ip_clip_entrance = world.get_entrance('Ice Bomb Drop Clip', 1) ip_clip_entrance = world.get_entrance('Ice Bomb Drop Clip', player)
clip_door = Door(player, "Ice Bomb Drop Clip", DoorType.Logical, ip_clip_entrance) clip_door = Door(player, "Ice Bomb Drop Clip", DoorType.Logical, ip_clip_entrance)
world.doors += [clip_door] world.doors += [clip_door]
world.initialize_doors([clip_door]) world.initialize_doors([clip_door])

View File

@@ -371,20 +371,21 @@
"mapshuffle": { "mapshuffle": {
"choices": [ "choices": [
"none", "none",
"district", "nearby",
"wild" "wild"
] ]
}, },
"compassshuffle": { "compassshuffle": {
"choices": [ "choices": [
"none", "none",
"district", "nearby",
"wild" "wild"
] ]
}, },
"keyshuffle": { "keyshuffle": {
"choices": [ "choices": [
"none", "none",
"nearby",
"wild", "wild",
"universal" "universal"
] ]
@@ -392,7 +393,7 @@
"bigkeyshuffle": { "bigkeyshuffle": {
"choices": [ "choices": [
"none", "none",
"district", "nearby",
"wild" "wild"
] ]
}, },
@@ -400,7 +401,7 @@
"choices": [ "choices": [
"none", "none",
"dungeon", "dungeon",
"district", "nearby",
"wild" "wild"
] ]
}, },

View File

@@ -54,25 +54,25 @@
"randomizer.dungeon.keysanity": "Shuffle: ", "randomizer.dungeon.keysanity": "Shuffle: ",
"randomizer.dungeon.mapshuffle": "Maps", "randomizer.dungeon.mapshuffle": "Maps",
"randomizer.dungeon.mapshuffle.none": "In Dungeon", "randomizer.dungeon.mapshuffle.none": "In Dungeon",
"randomizer.dungeon.mapshuffle.district": "Nearby", "randomizer.dungeon.mapshuffle.nearby": "Nearby",
"randomizer.dungeon.mapshuffle.wild": "Randomized", "randomizer.dungeon.mapshuffle.wild": "Randomized",
"randomizer.dungeon.compassshuffle": "Compasses", "randomizer.dungeon.compassshuffle": "Compasses",
"randomizer.dungeon.compassshuffle.none": "In Dungeon", "randomizer.dungeon.compassshuffle.none": "In Dungeon",
"randomizer.dungeon.compassshuffle.district": "Nearby", "randomizer.dungeon.compassshuffle.nearby": "Nearby",
"randomizer.dungeon.compassshuffle.wild": "Randomized", "randomizer.dungeon.compassshuffle.wild": "Randomized",
"randomizer.dungeon.smallkeyshuffle": "Small Keys", "randomizer.dungeon.smallkeyshuffle": "Small Keys",
"randomizer.dungeon.smallkeyshuffle.none": "In Dungeon", "randomizer.dungeon.smallkeyshuffle.none": "In Dungeon",
"randomizer.dungeon.smallkeyshuffle.district": "Nearby", "randomizer.dungeon.smallkeyshuffle.nearby": "Nearby",
"randomizer.dungeon.smallkeyshuffle.wild": "Randomized", "randomizer.dungeon.smallkeyshuffle.wild": "Randomized",
"randomizer.dungeon.smallkeyshuffle.universal": "Universal", "randomizer.dungeon.smallkeyshuffle.universal": "Universal",
"randomizer.dungeon.bigkeyshuffle": "Big Keys", "randomizer.dungeon.bigkeyshuffle": "Big Keys",
"randomizer.dungeon.bigkeyshuffle.none": "In Dungeon", "randomizer.dungeon.bigkeyshuffle.none": "In Dungeon",
"randomizer.dungeon.bigkeyshuffle.district": "Nearby", "randomizer.dungeon.bigkeyshuffle.nearby": "Nearby",
"randomizer.dungeon.bigkeyshuffle.wild": "Randomized", "randomizer.dungeon.bigkeyshuffle.wild": "Randomized",
"randomizer.dungeon.prizeshuffle": "Prizes", "randomizer.dungeon.prizeshuffle": "Prizes",
"randomizer.dungeon.prizeshuffle.none": "On Boss", "randomizer.dungeon.prizeshuffle.none": "On Boss",
"randomizer.dungeon.prizeshuffle.dungeon": "In Dungeon", "randomizer.dungeon.prizeshuffle.dungeon": "In Dungeon",
"randomizer.dungeon.prizeshuffle.district": "Nearby", "randomizer.dungeon.prizeshuffle.nearby": "Nearby",
"randomizer.dungeon.prizeshuffle.wild": "Randomized", "randomizer.dungeon.prizeshuffle.wild": "Randomized",
"randomizer.dungeon.decoupledoors": "Decouple Doors", "randomizer.dungeon.decoupledoors": "Decouple Doors",
"randomizer.dungeon.door_self_loops": "Allow Self-Looping Spiral Stairs", "randomizer.dungeon.door_self_loops": "Allow Self-Looping Spiral Stairs",

View File

@@ -4,7 +4,7 @@
"type": "selectbox", "type": "selectbox",
"options": [ "options": [
"none", "none",
"district", "nearby",
"wild" "wild"
], ],
"config": { "config": {
@@ -15,7 +15,7 @@
"type": "selectbox", "type": "selectbox",
"options": [ "options": [
"none", "none",
"district", "nearby",
"wild" "wild"
], ],
"config": { "config": {
@@ -26,7 +26,7 @@
"type": "selectbox", "type": "selectbox",
"options": [ "options": [
"none", "none",
"district", "nearby",
"wild", "wild",
"universal" "universal"
], ],
@@ -38,7 +38,7 @@
"type": "selectbox", "type": "selectbox",
"options": [ "options": [
"none", "none",
"district", "nearby",
"wild" "wild"
], ],
"config": { "config": {

View File

@@ -6,7 +6,7 @@
"options": [ "options": [
"none", "none",
"dungeon", "dungeon",
"district", "nearby",
"wild" "wild"
], ],
"config": { "config": {