Release notes and minor cleanup

This commit is contained in:
aerinon
2023-04-05 15:55:30 -06:00
parent f13880eee9
commit 50f92e7aee
5 changed files with 34 additions and 12 deletions

View File

@@ -3010,7 +3010,7 @@ class Settings(object):
| (counter_mode[w.dungeon_counters[p]] << 1) | (1 if w.experimental[p] else 0), | (counter_mode[w.dungeon_counters[p]] << 1) | (1 if w.experimental[p] else 0),
((8 if w.crystals_ganon_orig[p] == "random" else int(w.crystals_ganon_orig[p])) << 3) ((8 if w.crystals_ganon_orig[p] == "random" else int(w.crystals_ganon_orig[p])) << 3)
| (0x4 if w.is_pyramid_open[p] else 0) | access_mode[w.accessibility[p]], | (0x4 if w.is_pyramid_open(p) else 0) | access_mode[w.accessibility[p]],
(0x80 if w.bigkeyshuffle[p] else 0) (0x80 if w.bigkeyshuffle[p] else 0)
| (0x20 if w.mapshuffle[p] else 0) | (0x10 if w.compassshuffle[p] else 0) | (0x20 if w.mapshuffle[p] else 0) | (0x10 if w.compassshuffle[p] else 0)

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_number = '1.2.0.13' version_number = '1.2.0.14'
version_branch = '-u' version_branch = '-u'
__version__ = f'{version_number}{version_branch}' __version__ = f'{version_number}{version_branch}'

View File

@@ -109,6 +109,15 @@ These are now independent of retro mode and have three options: None, Random, an
# Bug Fixes and Notes # Bug Fixes and Notes
* 1.2.0.14u
* GUI reorganization
* Auto option for pyramid open (trinity or ER + crystals goal)
* World model refactor (combining inverted and normal world models)
* Partitioned fix for lamp logic and links house
* Fix starting flute logic
* Reduced universal keys in pool slightly for non-vanilla dungeons
* Fake world fix finally
* Some extra restrictions on links house placement for lite/lean
* 1.2.0.13u * 1.2.0.13u
* Allow green/blue potion refills to be customized * Allow green/blue potion refills to be customized
* OW Map showing dungeon entrance at Snitch Lady (West) fixed (instead of @ HC Courtyard) * OW Map showing dungeon entrance at Snitch Lady (West) fixed (instead of @ HC Courtyard)

View File

@@ -266,13 +266,24 @@ def widget_command(widget, command=""):
elif command == "keydropshuffle": elif command == "keydropshuffle":
if widget.storageVar.get() > 0: if widget.storageVar.get() > 0:
temp_widget = root.pages["randomizer"].pages["item"].widgets["pottery"] temp_widget = root.pages["randomizer"].pages["item"].widgets["pottery"]
text_output += f'\n {temp_widget.label.cget("text")}'
if temp_widget.storageVar.get() == 'none': if temp_widget.storageVar.get() == 'none':
text_output += f'\n {temp_widget.label.cget("text")}'
temp_widget.storageVar.set('keys') temp_widget.storageVar.set('keys')
temp_widget = root.pages["randomizer"].pages["item"].widgets["dropshuffle"] temp_widget = root.pages["randomizer"].pages["item"].widgets["dropshuffle"]
if temp_widget.storageVar.get() == 0:
temp_widget.storageVar.set(1) temp_widget.storageVar.set(1)
text_output += f'\n {temp_widget.checkbox.cget("text")}' text_output += f'\n {temp_widget.checkbox.cget("text")}'
if text_output:
widget.storageVar.set(0) messagebox.showinfo('', f'The following settings were changed:{text_output}')
else:
temp_widget = root.pages["randomizer"].pages["item"].widgets["pottery"]
if temp_widget.storageVar.get() == 'keys':
text_output += f'\n {temp_widget.label.cget("text")}'
temp_widget.storageVar.set('none')
temp_widget = root.pages["randomizer"].pages["item"].widgets["dropshuffle"]
if temp_widget.storageVar.get() == 1:
temp_widget.storageVar.set(0)
text_output += f'\n {temp_widget.checkbox.cget("text")}'
if text_output:
messagebox.showinfo('', f'The following settings were changed:{text_output}') messagebox.showinfo('', f'The following settings were changed:{text_output}')

View File

@@ -425,10 +425,11 @@ def do_links_house(entrances, exits, avail, cross_world):
if not avail.world.shufflelinks[avail.player]: if not avail.world.shufflelinks[avail.player]:
links_house = 'Big Bomb Shop' if avail.inverted else 'Links House' links_house = 'Big Bomb Shop' if avail.inverted else 'Links House'
else: else:
forbidden = list(Isolated_LH_Doors_Inv + Inverted_Dark_Sanctuary_Doors forbidden = list((Isolated_LH_Doors_Inv + Inverted_Dark_Sanctuary_Doors)
if avail.inverted else Isolated_LH_Doors_Open) if avail.inverted else Isolated_LH_Doors_Open)
shuffle_mode = avail.world.shuffle[avail.player]
# simple shuffle - # simple shuffle -
if avail.world.shuffle[avail.player] == 'simple': if shuffle_mode == 'simple':
avail.links_on_mountain = True # taken care of by the logic below avail.links_on_mountain = True # taken care of by the logic below
if avail.inverted: # in inverted, links house cannot be on the mountain if avail.inverted: # in inverted, links house cannot be on the mountain
forbidden.extend(['Spike Cave', 'Dark Death Mountain Fairy', 'Hookshot Fairy']) forbidden.extend(['Spike Cave', 'Dark Death Mountain Fairy', 'Hookshot Fairy'])
@@ -441,10 +442,11 @@ def do_links_house(entrances, exits, avail, cross_world):
# can't have links house on eddm in restricted because Inverted Aga Tower isn't available # can't have links house on eddm in restricted because Inverted Aga Tower isn't available
# todo: inverted full may have the same problem if both links house and a mandatory connector is chosen # todo: inverted full may have the same problem if both links house and a mandatory connector is chosen
# from the 3 inverted options # from the 3 inverted options
if avail.world.shuffle[avail.player] in ['restricted'] and avail.inverted: if shuffle_mode in ['restricted'] and avail.inverted:
avail.links_on_mountain = True avail.links_on_mountain = True
forbidden.extend(['Spike Cave', 'Dark Death Mountain Fairy']) forbidden.extend(['Spike Cave', 'Dark Death Mountain Fairy'])
if shuffle_mode in ['lite', 'lean']:
forbidden.extend(['Spike Cave', 'Mire Shed'])
# lobby shuffle means you ought to keep links house in the same world # lobby shuffle means you ought to keep links house in the same world
sanc_spawn_can_be_dark = (not avail.inverted and avail.world.doorShuffle[avail.player] in ['partitioned', 'crossed'] sanc_spawn_can_be_dark = (not avail.inverted and avail.world.doorShuffle[avail.player] in ['partitioned', 'crossed']
and avail.world.intensity[avail.player] >= 3) and avail.world.intensity[avail.player] >= 3)