Generate: Add skip progression balancing argument. (#1876)

This commit is contained in:
Zach Parks 2023-06-26 16:14:01 -05:00 committed by GitHub
parent 1698c17caa
commit 71bfb6babd
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 8 additions and 3 deletions

View File

@ -7,8 +7,8 @@ import random
import string import string
import urllib.parse import urllib.parse
import urllib.request import urllib.request
from collections import Counter, ChainMap from collections import ChainMap, Counter
from typing import Dict, Tuple, Callable, Any, Union from typing import Any, Callable, Dict, Tuple, Union
import ModuleUpdate import ModuleUpdate
@ -53,6 +53,8 @@ def mystery_argparse():
help='Output rolled mystery results to yaml up to specified number (made for async multiworld)') help='Output rolled mystery results to yaml up to specified number (made for async multiworld)')
parser.add_argument('--plando', default=defaults["plando_options"], parser.add_argument('--plando', default=defaults["plando_options"],
help='List of options that can be set manually. Can be combined, for example "bosses, items"') help='List of options that can be set manually. Can be combined, for example "bosses, items"')
parser.add_argument("--skip_prog_balancing", action="store_true",
help="Skip progression balancing step during generation.")
args = parser.parse_args() args = parser.parse_args()
if not os.path.isabs(args.weights_file_path): if not os.path.isabs(args.weights_file_path):
args.weights_file_path = os.path.join(args.player_files_path, args.weights_file_path) args.weights_file_path = os.path.join(args.player_files_path, args.weights_file_path)
@ -140,6 +142,7 @@ def main(args=None, callback=ERmain):
erargs.race = args.race erargs.race = args.race
erargs.outputname = seed_name erargs.outputname = seed_name
erargs.outputpath = args.outputpath erargs.outputpath = args.outputpath
erargs.skip_prog_balancing = args.skip_prog_balancing
settings_cache: Dict[str, Tuple[argparse.Namespace, ...]] = \ settings_cache: Dict[str, Tuple[argparse.Namespace, ...]] = \
{fname: (tuple(roll_settings(yaml, args.plando) for yaml in yamls) if args.samesettings else None) {fname: (tuple(roll_settings(yaml, args.plando) for yaml in yamls) if args.samesettings else None)

View File

@ -285,8 +285,10 @@ def main(args, seed=None, baked_server_options: Optional[Dict[str, object]] = No
AutoWorld.call_all(world, 'post_fill') AutoWorld.call_all(world, 'post_fill')
if world.players > 1: if world.players > 1 and not args.skip_prog_balancing:
balance_multiworld_progression(world) balance_multiworld_progression(world)
else:
logger.info("Progression balancing skipped.")
logger.info(f'Beginning output...') logger.info(f'Beginning output...')