diff --git a/Generate.py b/Generate.py index 2d67e237..295eb140 100644 --- a/Generate.py +++ b/Generate.py @@ -23,6 +23,7 @@ import Options from worlds.alttp import Bosses from worlds.alttp.Text import TextTable from worlds.AutoWorld import AutoWorldRegister +import copy categories = set(AutoWorldRegister.world_types) @@ -330,7 +331,7 @@ def update_weights(weights: dict, new_weights: dict, type: str, name: str) -> di def roll_linked_options(weights: dict) -> dict: - weights = weights.copy() # make sure we don't write back to other weights sets in same_settings + weights = copy.deepcopy(weights) # make sure we don't write back to other weights sets in same_settings for option_set in weights["linked_options"]: if "name" not in option_set: raise ValueError("One of your linked options does not have a name.") @@ -352,7 +353,7 @@ def roll_linked_options(weights: dict) -> dict: def roll_triggers(weights: dict, triggers: list) -> dict: - weights = weights.copy() # make sure we don't write back to other weights sets in same_settings + weights = copy.deepcopy(weights) # make sure we don't write back to other weights sets in same_settings weights["_Generator_Version"] = Utils.__version__ for i, option_set in enumerate(triggers): try: