diff --git a/CHANGELOG.md b/CHANGELOG.md index ae85449f..b2ee5e85 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,9 @@ # Changelog +## 0.4.0.2 +- Fixed issue with Inverted GT entrance not opening +- Potential fox for bonk items duplicating onto other OW items + ## 0.4.0.1 - \~Merged in DR v1.4.1.10~ - Fixed issue with bonk items for MW players diff --git a/Main.py b/Main.py index 89f10563..c36bad50 100644 --- a/Main.py +++ b/Main.py @@ -413,6 +413,8 @@ def export_yaml(args, fish): logger = logging.getLogger('') world = init_world(args, fish) + if args.seed and int(args.seed) > 0: + world.seed = int(args.seed) from OverworldShuffle import __version__ as ORVersion logger.info( diff --git a/OverworldShuffle.py b/OverworldShuffle.py index 9cb84fb3..6f977c40 100644 --- a/OverworldShuffle.py +++ b/OverworldShuffle.py @@ -8,7 +8,7 @@ from OWEdges import OWTileRegions, OWEdgeGroups, OWEdgeGroupsTerrain, OWExitType from OverworldGlitchRules import create_owg_connections from Utils import bidict -version_number = '0.4.0.1' +version_number = '0.4.0.2' # branch indicator is intentionally different across branches version_branch = '' diff --git a/Rom.py b/Rom.py index f12c1a72..b09cb03d 100644 --- a/Rom.py +++ b/Rom.py @@ -43,7 +43,7 @@ from source.enemizer.Enemizer import write_enemy_shuffle_settings JAP10HASH = '03a63945398191337e896e5771f77173' -RANDOMIZERBASEHASH = 'ddbecd34e58b7fdf6bed48114b3124d5' +RANDOMIZERBASEHASH = '3147681c6f9f4f84bcf6d9ba1e06a85b' class JsonRom(object): diff --git a/data/base2current.bps b/data/base2current.bps index 2c9e6421..37faa3b9 100644 Binary files a/data/base2current.bps and b/data/base2current.bps differ diff --git a/source/classes/CustomSettings.py b/source/classes/CustomSettings.py index fa1f9582..c67d760f 100644 --- a/source/classes/CustomSettings.py +++ b/source/classes/CustomSettings.py @@ -271,6 +271,8 @@ class CustomSettings(object): self.player_range = range(1, world.players + 1) settings_dict, meta_dict = {}, {} self.world_rep['meta'] = meta_dict + if world.seed: + meta_dict['seed'] = world.seed meta_dict['players'] = world.players meta_dict['algorithm'] = world.algorithm meta_dict['race'] = settings.race diff --git a/source/gui/bottom.py b/source/gui/bottom.py index 0eed2689..1c8f838a 100644 --- a/source/gui/bottom.py +++ b/source/gui/bottom.py @@ -106,17 +106,15 @@ def bottom_frame(self, parent, args=None): if guiargs.count is not None and guiargs.seed: seed = guiargs.seed for _ in range(guiargs.count): - seeds.append(seed) - main(seed=seed, args=guiargs, fish=parent.fish) + world = main(seed=seed, args=guiargs, fish=parent.fish) + seeds.append(world.seed) seed = random.randint(0, 999999999) else: - if guiargs.seed: - seeds.append(guiargs.seed) - else: + if not guiargs.seed: random.seed(None) guiargs.seed = random.randint(0, 999999999) - seeds.append(guiargs.seed) - main(seed=guiargs.seed, args=guiargs, fish=parent.fish) + world = main(seed=guiargs.seed, args=guiargs, fish=parent.fish) + seeds.append(world.seed) except (FillError, EnemizerError, Exception, RuntimeError) as e: logging.exception(e) messagebox.showerror(title="Error while creating seed", message=str(e)) @@ -172,7 +170,7 @@ def bottom_frame(self, parent, args=None): from tkinter import filedialog filename = filedialog.asksaveasfilename(initialdir=guiargs.outputpath, title="Save file", filetypes=(("Yaml Files", (".yaml", ".yml")), ("All Files", "*"))) if filename is not None and filename != '': - guiargs.outputpath = parent.settings["outputpath"] = os.path.dirname(filename) + guiargs.outputpath = os.path.dirname(filename) guiargs.outputname = os.path.splitext(os.path.basename(filename))[0] export_yaml(args=guiargs, fish=parent.fish) except (FillError, EnemizerError, Exception, RuntimeError) as e: @@ -206,7 +204,9 @@ def bottom_frame(self, parent, args=None): from tkinter import filedialog folder_selected = filedialog.askdirectory() if folder_selected is not None and folder_selected != '': - args.outputpath = parent.settings["outputpath"] = folder_selected + parent.settings["outputpath"] = folder_selected + if args: + args.outputpath = folder_selected ## Output Button widget = "outputdir"