Merge branch 'OverworldShuffleDev' into OverworldShuffle
This commit is contained in:
@@ -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
|
||||||
|
|||||||
2
Fill.py
2
Fill.py
@@ -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
|
||||||
|
|||||||
4
Main.py
4
Main.py
@@ -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'))
|
||||||
|
|||||||
@@ -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 = ''
|
||||||
|
|
||||||
|
|||||||
@@ -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])
|
||||||
|
|||||||
@@ -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"
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
|
|||||||
@@ -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",
|
||||||
|
|||||||
@@ -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": {
|
||||||
|
|||||||
@@ -6,7 +6,7 @@
|
|||||||
"options": [
|
"options": [
|
||||||
"none",
|
"none",
|
||||||
"dungeon",
|
"dungeon",
|
||||||
"district",
|
"nearby",
|
||||||
"wild"
|
"wild"
|
||||||
],
|
],
|
||||||
"config": {
|
"config": {
|
||||||
|
|||||||
Reference in New Issue
Block a user