about summary refs log tree commit diff stats
path: root/apworld/options.py
diff options
context:
space:
mode:
Diffstat (limited to 'apworld/options.py')
-rw-r--r--apworld/options.py26
1 files changed, 20 insertions, 6 deletions
diff --git a/apworld/options.py b/apworld/options.py index 5d1fd7c..4d9c3aa 100644 --- a/apworld/options.py +++ b/apworld/options.py
@@ -1,6 +1,6 @@
1from dataclasses import dataclass 1from dataclasses import dataclass
2 2
3from Options import PerGameCommonOptions, Toggle, Choice, DefaultOnToggle, Range 3from Options import PerGameCommonOptions, Toggle, Choice, DefaultOnToggle, Range, OptionSet
4 4
5 5
6class ShuffleDoors(DefaultOnToggle): 6class ShuffleDoors(DefaultOnToggle):
@@ -56,11 +56,7 @@ class ShuffleWorldports(Toggle):
56 """ 56 """
57 Randomizes the connections between maps. This affects worldports only, which are the loading zones you walk into in 57 Randomizes the connections between maps. This affects worldports only, which are the loading zones you walk into in
58 order to change maps. This does not affect paintings, panels that teleport you, or certain other special connections 58 order to change maps. This does not affect paintings, panels that teleport you, or certain other special connections
59 like the one between The Shop and Control Center. Connections that depend on placing letters in keyholders are also 59 like the one between The Shop and Control Center.
60 currently not shuffled.
61
62 NOTE: It is highly recommended that you turn on Shuffle Control Center Colors when using Shuffle Worldports. Not
63 doing so runs the risk of creating an unfinishable seed.
64 """ 60 """
65 display_name = "Shuffle Worldports" 61 display_name = "Shuffle Worldports"
66 62
@@ -103,6 +99,23 @@ class EnableIcarus(Toggle):
103 display_name = "Enable Icarus" 99 display_name = "Enable Icarus"
104 100
105 101
102class EnableGiftMaps(OptionSet):
103 """
104 Controls whether the beta tester gift maps are randomized. By default, these are not accessible at all from within
105 the randomizer. Enabling at least one gift map will cause a panel to appear in The Entry's Starting Room. Gift maps
106 can be accessed by taking a player name that would ordinarily cause the game to load into a gift map, and entering
107 it into this panel.
108
109 In the base game, nothing happens once you complete a gift map. Masteries have been added to the gift maps in the
110 randomizer so that the player can be rewarded for completing them.
111
112 Note that the gift maps are intended only for specific people, and as a result may be frustrating or require
113 knowledge of inside jokes. The Crystalline is particularly difficult as it requires completing a parkour course.
114 """
115 display_name = "Enable Gift Maps"
116 valid_keys = ["The Advanced", "The Charismatic", "The Crystalline", "The Fuzzy", "The Stellar"]
117
118
106class DaedalusRoofAccess(Toggle): 119class DaedalusRoofAccess(Toggle):
107 """ 120 """
108 If enabled, the player will be logically expected to be able to go from the castle entrance to any part of Daedalus 121 If enabled, the player will be logically expected to be able to go from the castle entrance to any part of Daedalus
@@ -182,6 +195,7 @@ class Lingo2Options(PerGameCommonOptions):
182 keyholder_sanity: KeyholderSanity 195 keyholder_sanity: KeyholderSanity
183 cyan_door_behavior: CyanDoorBehavior 196 cyan_door_behavior: CyanDoorBehavior
184 enable_icarus: EnableIcarus 197 enable_icarus: EnableIcarus
198 enable_gift_maps: EnableGiftMaps
185 daedalus_roof_access: DaedalusRoofAccess 199 daedalus_roof_access: DaedalusRoofAccess
186 strict_purple_ending: StrictPurpleEnding 200 strict_purple_ending: StrictPurpleEnding
187 strict_cyan_ending: StrictCyanEnding 201 strict_cyan_ending: StrictCyanEnding