From b2f5f095fcd21cd42bef8a98551f14fedf559118 Mon Sep 17 00:00:00 2001 From: Fabian Dill Date: Thu, 22 Jul 2021 01:08:44 +0200 Subject: [PATCH] turns out windows' built in zip hates LZMA also fix APMC output path --- Main.py | 2 +- worlds/minecraft/__init__.py | 5 ++--- 2 files changed, 3 insertions(+), 4 deletions(-) diff --git a/Main.py b/Main.py index e1bc1089..733ede35 100644 --- a/Main.py +++ b/Main.py @@ -566,7 +566,7 @@ def main(args, seed=None): if args.create_spoiler: # needs spoiler.hashes to be filled, that depend on rom_futures being done world.spoiler.to_file(os.path.join(temp_dir, '%s_Spoiler.txt' % outfilebase)) logger.info('Creating final archive.') - with zipfile.ZipFile(output_path(f"AP_{world.seed_name}.zip"), mode="w", compression=zipfile.ZIP_LZMA, + with zipfile.ZipFile(output_path(f"AP_{world.seed_name}.zip"), mode="w", compression=zipfile.ZIP_DEFLATED, compresslevel=9) as zf: for file in os.scandir(temp_dir): zf.write(os.path.join(temp_dir, file), arcname=file.name) diff --git a/worlds/minecraft/__init__.py b/worlds/minecraft/__init__.py index bfc6ca24..9fd3052f 100644 --- a/worlds/minecraft/__init__.py +++ b/worlds/minecraft/__init__.py @@ -1,4 +1,4 @@ -from typing import Dict, Set +import os from .Items import MinecraftItem, item_table, item_frequencies @@ -81,11 +81,10 @@ class MinecraftWorld(World): def generate_output(self, output_directory: str): import json from base64 import b64encode - from Utils import output_path data = self._get_mc_data() filename = f"AP_{self.world.seed_name}_P{self.player}_{self.world.get_player_names(self.player)}.apmc" - with open(output_path(filename), 'wb') as f: + with open(os.path.join(output_directory, filename), 'wb') as f: f.write(b64encode(bytes(json.dumps(data), 'utf-8'))) def fill_slot_data(self):