about summary refs log tree commit diff stats
path: root/apworld/options.py
diff options
context:
space:
mode:
authorStar Rauchenberger <fefferburbia@gmail.com>2025-10-23 12:13:09 -0400
committerStar Rauchenberger <fefferburbia@gmail.com>2025-10-23 12:13:09 -0400
commit8cfee29fe6500e96c3b8669c12ac944716e9aae4 (patch)
treebf4723a1790d30155bb70fc710d416f008790b27 /apworld/options.py
parent3cb2ced48dec3b9ea60e008b2a3598a322458adf (diff)
downloadlingo2-archipelago-8cfee29fe6500e96c3b8669c12ac944716e9aae4.tar.gz
lingo2-archipelago-8cfee29fe6500e96c3b8669c12ac944716e9aae4.tar.bz2
lingo2-archipelago-8cfee29fe6500e96c3b8669c12ac944716e9aae4.zip
Added "Enable Gift Maps" option
Only supports The Advanced so far. Also added the mastery to The Advanced. Location listeners are now created after any map edits are made since some locations may require custom nodes (like The Advanced's mastery).
Diffstat (limited to 'apworld/options.py')
-rw-r--r--apworld/options.py20
1 files changed, 19 insertions, 1 deletions
diff --git a/apworld/options.py b/apworld/options.py index 600df6a..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):
@@ -99,6 +99,23 @@ class EnableIcarus(Toggle):
99 display_name = "Enable Icarus" 99 display_name = "Enable Icarus"
100 100
101 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
102class DaedalusRoofAccess(Toggle): 119class DaedalusRoofAccess(Toggle):
103 """ 120 """
104 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
@@ -178,6 +195,7 @@ class Lingo2Options(PerGameCommonOptions):
178 keyholder_sanity: KeyholderSanity 195 keyholder_sanity: KeyholderSanity
179 cyan_door_behavior: CyanDoorBehavior 196 cyan_door_behavior: CyanDoorBehavior
180 enable_icarus: EnableIcarus 197 enable_icarus: EnableIcarus
198 enable_gift_maps: EnableGiftMaps
181 daedalus_roof_access: DaedalusRoofAccess 199 daedalus_roof_access: DaedalusRoofAccess
182 strict_purple_ending: StrictPurpleEnding 200 strict_purple_ending: StrictPurpleEnding
183 strict_cyan_ending: StrictCyanEnding 201 strict_cyan_ending: StrictCyanEnding