130 lines
4.5 KiB
Python
130 lines
4.5 KiB
Python
from typing import Any, Dict
|
|
|
|
from .options import *
|
|
|
|
witness_option_presets: Dict[str, Dict[str, Any]] = {
|
|
# Best for beginners. This is just default options, but with a much easier goal that skips the Mountain puzzles.
|
|
"Beginner Mode": {
|
|
"victory_condition": VictoryCondition.option_mountain_box_short,
|
|
|
|
"puzzle_skip_amount": 15,
|
|
},
|
|
|
|
# Great for short syncs & scratching that "speedrun with light routing elements" itch.
|
|
"Short & Dense": {
|
|
"progression_balancing": 30,
|
|
|
|
"puzzle_randomization": PuzzleRandomization.option_sigma_normal,
|
|
|
|
"shuffle_symbols": False,
|
|
"shuffle_doors": ShuffleDoors.option_panels,
|
|
"door_groupings": DoorGroupings.option_off,
|
|
"shuffle_boat": True,
|
|
"shuffle_lasers": ShuffleLasers.option_local,
|
|
"obelisk_keys": ObeliskKeys.option_false,
|
|
|
|
"disable_non_randomized_puzzles": True,
|
|
"shuffle_discarded_panels": False,
|
|
"shuffle_vault_boxes": False,
|
|
"shuffle_EPs": ShuffleEnvironmentalPuzzles.option_off,
|
|
"EP_difficulty": EnvironmentalPuzzlesDifficulty.option_normal,
|
|
"shuffle_postgame": False,
|
|
|
|
"victory_condition": VictoryCondition.option_mountain_box_short,
|
|
"mountain_lasers": 7,
|
|
"challenge_lasers": 11,
|
|
|
|
"early_caves": EarlyCaves.option_off,
|
|
|
|
"elevators_come_to_you": ElevatorsComeToYou.default,
|
|
|
|
"trap_percentage": TrapPercentage.default,
|
|
"puzzle_skip_amount": PuzzleSkipAmount.default,
|
|
"hint_amount": HintAmount.default,
|
|
"area_hint_percentage": AreaHintPercentage.default,
|
|
"laser_hints": LaserHints.default,
|
|
"death_link": DeathLink.default,
|
|
"death_link_amnesty": DeathLinkAmnesty.default,
|
|
|
|
"shuffle_dog": ShuffleDog.default,
|
|
},
|
|
|
|
# For relative beginners who want to move to the next step.
|
|
"Advanced, But Chill": {
|
|
"progression_balancing": 30,
|
|
|
|
"puzzle_randomization": PuzzleRandomization.option_sigma_normal,
|
|
|
|
"shuffle_symbols": True,
|
|
"shuffle_doors": ShuffleDoors.option_doors,
|
|
"door_groupings": DoorGroupings.option_regional,
|
|
"shuffle_boat": True,
|
|
"shuffle_lasers": ShuffleLasers.option_off,
|
|
"obelisk_keys": ObeliskKeys.option_false,
|
|
|
|
"disable_non_randomized_puzzles": False,
|
|
"shuffle_discarded_panels": True,
|
|
"shuffle_vault_boxes": True,
|
|
"shuffle_EPs": ShuffleEnvironmentalPuzzles.option_obelisk_sides,
|
|
"EP_difficulty": EnvironmentalPuzzlesDifficulty.option_normal,
|
|
"shuffle_postgame": False,
|
|
|
|
"victory_condition": VictoryCondition.option_mountain_box_long,
|
|
"mountain_lasers": 6,
|
|
"challenge_lasers": 9,
|
|
|
|
"early_caves": EarlyCaves.option_off,
|
|
|
|
"elevators_come_to_you": ElevatorsComeToYou.default,
|
|
|
|
"trap_percentage": TrapPercentage.default,
|
|
"puzzle_skip_amount": 15,
|
|
"hint_amount": HintAmount.default,
|
|
"area_hint_percentage": AreaHintPercentage.default,
|
|
"laser_hints": LaserHints.default,
|
|
"death_link": DeathLink.default,
|
|
"death_link_amnesty": DeathLinkAmnesty.default,
|
|
|
|
"shuffle_dog": ShuffleDog.default,
|
|
},
|
|
|
|
# Allsanity but without the BS (no expert, no tedious EPs).
|
|
"Nice Allsanity": {
|
|
"progression_balancing": 50,
|
|
|
|
"puzzle_randomization": PuzzleRandomization.option_sigma_normal,
|
|
|
|
"shuffle_symbols": True,
|
|
"shuffle_doors": ShuffleDoors.option_mixed,
|
|
"door_groupings": DoorGroupings.option_off,
|
|
"shuffle_boat": True,
|
|
"shuffle_lasers": ShuffleLasers.option_anywhere,
|
|
"obelisk_keys": ObeliskKeys.option_true,
|
|
|
|
"disable_non_randomized_puzzles": False,
|
|
"shuffle_discarded_panels": True,
|
|
"shuffle_vault_boxes": True,
|
|
"shuffle_EPs": ShuffleEnvironmentalPuzzles.option_individual,
|
|
"EP_difficulty": EnvironmentalPuzzlesDifficulty.option_normal,
|
|
"shuffle_postgame": False,
|
|
|
|
"victory_condition": VictoryCondition.option_challenge,
|
|
"mountain_lasers": 6,
|
|
"challenge_lasers": 9,
|
|
|
|
"early_caves": EarlyCaves.option_off,
|
|
|
|
"elevators_come_to_you": ElevatorsComeToYou.valid_keys,
|
|
|
|
"trap_percentage": TrapPercentage.default,
|
|
"puzzle_skip_amount": 15,
|
|
"hint_amount": HintAmount.default,
|
|
"area_hint_percentage": AreaHintPercentage.default,
|
|
"laser_hints": LaserHints.default,
|
|
"death_link": DeathLink.default,
|
|
"death_link_amnesty": DeathLinkAmnesty.default,
|
|
|
|
"shuffle_dog": ShuffleDog.option_random_item,
|
|
},
|
|
}
|