Files
Archipelago/worlds/stardew_valley/test/stability/StabilityOutputScript.py
agilbert1412 36bab6f52a Stardew Valley: 0.6.7 Day 1 fixes (#6098)
- The Shane and Sebastian Portrait filler items werent tagged properly.
- The Beach Farm adds one secretsanity check, so it needs to be in the allsanity preset
- The Allsanity preset is renamed to "Maxsanity" to encourage better defined terminology and Allsanity means something else
- The "All Random" preset has been removed entirely. It has been the cause of too many beginner footguns over the years. People can still achieve the effect manually, but at least they'll have to try a little bit to ruin their own experience.
2026-04-07 21:38:04 +02:00

37 lines
1.3 KiB
Python

import argparse
import json
from worlds.stardew_valley.test.options.presets import maxsanity_mods_7_x_x_exclude_disabled
from ..bases import setup_solo_multiworld
from ...options import FarmType, EntranceRandomization
if __name__ == "__main__":
parser = argparse.ArgumentParser()
parser.add_argument('--seed', help='Define seed number to generate.', type=int, required=True)
args = parser.parse_args()
seed = args.seed
options = maxsanity_mods_7_x_x_exclude_disabled()
options[FarmType.internal_name] = FarmType.option_standard
options[EntranceRandomization.internal_name] = EntranceRandomization.option_buildings
multi_world = setup_solo_multiworld(options, seed=seed)
world = multi_world.worlds[1]
output = {
"bundles": {
bundle_room.name: {
bundle.name: str(bundle.items)
for bundle in bundle_room.bundles
}
for bundle_room in world.modified_bundles
},
"items": [item.name for item in multi_world.get_items()],
"location_rules": {location.name: repr(location.access_rule) for location in multi_world.get_locations(1)},
"slot_data": world.fill_slot_data()
}
print(json.dumps(output))
else:
raise RuntimeError("Do not import this file, execute it in different python session so the PYTHONHASHSEED is different..")