forked from ArchipelagoMW/Archipelago
-
Notifications
You must be signed in to change notification settings - Fork 2
/
Copy pathpresets.py
371 lines (361 loc) · 23.2 KB
/
presets.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
from typing import Any, Dict
from Options import Accessibility, ProgressionBalancing, DeathLink
from .options import Goal, StartingMoney, ProfitMargin, BundleRandomization, BundlePrice, EntranceRandomization, SeasonRandomization, Cropsanity, \
BackpackProgression, ToolProgression, ElevatorProgression, SkillProgression, BuildingProgression, FestivalLocations, ArcadeMachineLocations, \
SpecialOrderLocations, QuestLocations, Fishsanity, Museumsanity, Friendsanity, FriendsanityHeartSize, NumberOfMovementBuffs, NumberOfLuckBuffs, \
ExcludeGingerIsland, TrapItems, MultipleDaySleepEnabled, MultipleDaySleepCost, ExperienceMultiplier, FriendshipMultiplier, DebrisMultiplier, QuickStart, \
Gifting, FarmType, Monstersanity, Shipsanity, Cooksanity, Chefsanity, Craftsanity
all_random_settings = {
"progression_balancing": "random",
"accessibility": "random",
Goal.internal_name: "random",
FarmType.internal_name: "random",
StartingMoney.internal_name: "random",
ProfitMargin.internal_name: "random",
BundleRandomization.internal_name: "random",
BundlePrice.internal_name: "random",
EntranceRandomization.internal_name: "random",
SeasonRandomization.internal_name: "random",
Cropsanity.internal_name: "random",
BackpackProgression.internal_name: "random",
ToolProgression.internal_name: "random",
ElevatorProgression.internal_name: "random",
SkillProgression.internal_name: "random",
BuildingProgression.internal_name: "random",
FestivalLocations.internal_name: "random",
ArcadeMachineLocations.internal_name: "random",
SpecialOrderLocations.internal_name: "random",
QuestLocations.internal_name: "random",
Fishsanity.internal_name: "random",
Museumsanity.internal_name: "random",
Monstersanity.internal_name: "random",
Shipsanity.internal_name: "random",
Cooksanity.internal_name: "random",
Chefsanity.internal_name: "random",
Craftsanity.internal_name: "random",
Friendsanity.internal_name: "random",
FriendsanityHeartSize.internal_name: "random",
NumberOfMovementBuffs.internal_name: "random",
NumberOfLuckBuffs.internal_name: "random",
ExcludeGingerIsland.internal_name: "random",
TrapItems.internal_name: "random",
MultipleDaySleepEnabled.internal_name: "random",
MultipleDaySleepCost.internal_name: "random",
ExperienceMultiplier.internal_name: "random",
FriendshipMultiplier.internal_name: "random",
DebrisMultiplier.internal_name: "random",
QuickStart.internal_name: "random",
Gifting.internal_name: "random",
"death_link": "random",
}
easy_settings = {
"progression_balancing": ProgressionBalancing.default,
"accessibility": Accessibility.option_items,
Goal.internal_name: Goal.option_community_center,
FarmType.internal_name: "random",
StartingMoney.internal_name: "very rich",
ProfitMargin.internal_name: "double",
BundleRandomization.internal_name: BundleRandomization.option_thematic,
BundlePrice.internal_name: BundlePrice.option_cheap,
EntranceRandomization.internal_name: EntranceRandomization.option_disabled,
SeasonRandomization.internal_name: SeasonRandomization.option_randomized_not_winter,
Cropsanity.internal_name: Cropsanity.option_enabled,
BackpackProgression.internal_name: BackpackProgression.option_early_progressive,
ToolProgression.internal_name: ToolProgression.option_progressive_very_cheap,
ElevatorProgression.internal_name: ElevatorProgression.option_progressive,
SkillProgression.internal_name: SkillProgression.option_progressive,
BuildingProgression.internal_name: BuildingProgression.option_progressive_very_cheap,
FestivalLocations.internal_name: FestivalLocations.option_easy,
ArcadeMachineLocations.internal_name: ArcadeMachineLocations.option_disabled,
SpecialOrderLocations.internal_name: SpecialOrderLocations.option_disabled,
QuestLocations.internal_name: "minimum",
Fishsanity.internal_name: Fishsanity.option_only_easy_fish,
Museumsanity.internal_name: Museumsanity.option_milestones,
Monstersanity.internal_name: Monstersanity.option_one_per_category,
Shipsanity.internal_name: Shipsanity.option_none,
Cooksanity.internal_name: Cooksanity.option_none,
Chefsanity.internal_name: Chefsanity.option_none,
Craftsanity.internal_name: Craftsanity.option_none,
Friendsanity.internal_name: Friendsanity.option_none,
FriendsanityHeartSize.internal_name: 4,
NumberOfMovementBuffs.internal_name: 8,
NumberOfLuckBuffs.internal_name: 8,
ExcludeGingerIsland.internal_name: ExcludeGingerIsland.option_true,
TrapItems.internal_name: TrapItems.option_easy,
MultipleDaySleepEnabled.internal_name: MultipleDaySleepEnabled.option_true,
MultipleDaySleepCost.internal_name: "free",
ExperienceMultiplier.internal_name: "triple",
FriendshipMultiplier.internal_name: "quadruple",
DebrisMultiplier.internal_name: DebrisMultiplier.option_quarter,
QuickStart.internal_name: QuickStart.option_true,
Gifting.internal_name: Gifting.option_true,
"death_link": "false",
}
medium_settings = {
"progression_balancing": 25,
"accessibility": Accessibility.option_locations,
Goal.internal_name: Goal.option_community_center,
FarmType.internal_name: "random",
StartingMoney.internal_name: "rich",
ProfitMargin.internal_name: 150,
BundleRandomization.internal_name: BundleRandomization.option_remixed,
BundlePrice.internal_name: BundlePrice.option_normal,
EntranceRandomization.internal_name: EntranceRandomization.option_non_progression,
SeasonRandomization.internal_name: SeasonRandomization.option_randomized,
Cropsanity.internal_name: Cropsanity.option_enabled,
BackpackProgression.internal_name: BackpackProgression.option_early_progressive,
ToolProgression.internal_name: ToolProgression.option_progressive_cheap,
ElevatorProgression.internal_name: ElevatorProgression.option_progressive_from_previous_floor,
SkillProgression.internal_name: SkillProgression.option_progressive,
BuildingProgression.internal_name: BuildingProgression.option_progressive_cheap,
FestivalLocations.internal_name: FestivalLocations.option_hard,
ArcadeMachineLocations.internal_name: ArcadeMachineLocations.option_victories_easy,
SpecialOrderLocations.internal_name: SpecialOrderLocations.option_board_only,
QuestLocations.internal_name: "normal",
Fishsanity.internal_name: Fishsanity.option_exclude_legendaries,
Museumsanity.internal_name: Museumsanity.option_milestones,
Monstersanity.internal_name: Monstersanity.option_one_per_monster,
Shipsanity.internal_name: Shipsanity.option_none,
Cooksanity.internal_name: Cooksanity.option_none,
Chefsanity.internal_name: Chefsanity.option_queen_of_sauce,
Craftsanity.internal_name: Craftsanity.option_none,
Friendsanity.internal_name: Friendsanity.option_starting_npcs,
FriendsanityHeartSize.internal_name: 4,
NumberOfMovementBuffs.internal_name: 6,
NumberOfLuckBuffs.internal_name: 6,
ExcludeGingerIsland.internal_name: ExcludeGingerIsland.option_true,
TrapItems.internal_name: TrapItems.option_medium,
MultipleDaySleepEnabled.internal_name: MultipleDaySleepEnabled.option_true,
MultipleDaySleepCost.internal_name: "free",
ExperienceMultiplier.internal_name: "double",
FriendshipMultiplier.internal_name: "triple",
DebrisMultiplier.internal_name: DebrisMultiplier.option_half,
QuickStart.internal_name: QuickStart.option_true,
Gifting.internal_name: Gifting.option_true,
"death_link": "false",
}
hard_settings = {
"progression_balancing": 0,
"accessibility": Accessibility.option_locations,
Goal.internal_name: Goal.option_grandpa_evaluation,
FarmType.internal_name: "random",
StartingMoney.internal_name: "extra",
ProfitMargin.internal_name: "normal",
BundleRandomization.internal_name: BundleRandomization.option_remixed,
BundlePrice.internal_name: BundlePrice.option_expensive,
EntranceRandomization.internal_name: EntranceRandomization.option_buildings,
SeasonRandomization.internal_name: SeasonRandomization.option_randomized,
Cropsanity.internal_name: Cropsanity.option_enabled,
BackpackProgression.internal_name: BackpackProgression.option_progressive,
ToolProgression.internal_name: ToolProgression.option_progressive,
ElevatorProgression.internal_name: ElevatorProgression.option_progressive_from_previous_floor,
SkillProgression.internal_name: SkillProgression.option_progressive,
BuildingProgression.internal_name: BuildingProgression.option_progressive,
FestivalLocations.internal_name: FestivalLocations.option_hard,
ArcadeMachineLocations.internal_name: ArcadeMachineLocations.option_full_shuffling,
SpecialOrderLocations.internal_name: SpecialOrderLocations.option_board_qi,
QuestLocations.internal_name: "lots",
Fishsanity.internal_name: Fishsanity.option_all,
Museumsanity.internal_name: Museumsanity.option_all,
Monstersanity.internal_name: Monstersanity.option_progressive_goals,
Shipsanity.internal_name: Shipsanity.option_crops,
Cooksanity.internal_name: Cooksanity.option_queen_of_sauce,
Chefsanity.internal_name: Chefsanity.option_qos_and_purchases,
Craftsanity.internal_name: Craftsanity.option_none,
Friendsanity.internal_name: Friendsanity.option_all,
FriendsanityHeartSize.internal_name: 4,
NumberOfMovementBuffs.internal_name: 4,
NumberOfLuckBuffs.internal_name: 4,
ExcludeGingerIsland.internal_name: ExcludeGingerIsland.option_false,
TrapItems.internal_name: TrapItems.option_hard,
MultipleDaySleepEnabled.internal_name: MultipleDaySleepEnabled.option_true,
MultipleDaySleepCost.internal_name: "cheap",
ExperienceMultiplier.internal_name: "vanilla",
FriendshipMultiplier.internal_name: "double",
DebrisMultiplier.internal_name: DebrisMultiplier.option_vanilla,
QuickStart.internal_name: QuickStart.option_true,
Gifting.internal_name: Gifting.option_true,
"death_link": "true",
}
nightmare_settings = {
"progression_balancing": 0,
"accessibility": Accessibility.option_locations,
Goal.internal_name: Goal.option_community_center,
FarmType.internal_name: "random",
StartingMoney.internal_name: "vanilla",
ProfitMargin.internal_name: "half",
BundleRandomization.internal_name: BundleRandomization.option_shuffled,
BundlePrice.internal_name: BundlePrice.option_very_expensive,
EntranceRandomization.internal_name: EntranceRandomization.option_buildings,
SeasonRandomization.internal_name: SeasonRandomization.option_randomized,
Cropsanity.internal_name: Cropsanity.option_enabled,
BackpackProgression.internal_name: BackpackProgression.option_progressive,
ToolProgression.internal_name: ToolProgression.option_progressive,
ElevatorProgression.internal_name: ElevatorProgression.option_progressive_from_previous_floor,
SkillProgression.internal_name: SkillProgression.option_progressive,
BuildingProgression.internal_name: BuildingProgression.option_progressive,
FestivalLocations.internal_name: FestivalLocations.option_hard,
ArcadeMachineLocations.internal_name: ArcadeMachineLocations.option_full_shuffling,
SpecialOrderLocations.internal_name: SpecialOrderLocations.option_board_qi,
QuestLocations.internal_name: "maximum",
Fishsanity.internal_name: Fishsanity.option_special,
Museumsanity.internal_name: Museumsanity.option_all,
Monstersanity.internal_name: Monstersanity.option_split_goals,
Shipsanity.internal_name: Shipsanity.option_full_shipment_with_fish,
Cooksanity.internal_name: Cooksanity.option_queen_of_sauce,
Chefsanity.internal_name: Chefsanity.option_qos_and_purchases,
Craftsanity.internal_name: Craftsanity.option_none,
Friendsanity.internal_name: Friendsanity.option_all_with_marriage,
FriendsanityHeartSize.internal_name: 4,
NumberOfMovementBuffs.internal_name: 2,
NumberOfLuckBuffs.internal_name: 2,
ExcludeGingerIsland.internal_name: ExcludeGingerIsland.option_false,
TrapItems.internal_name: TrapItems.option_hell,
MultipleDaySleepEnabled.internal_name: MultipleDaySleepEnabled.option_true,
MultipleDaySleepCost.internal_name: "expensive",
ExperienceMultiplier.internal_name: "half",
FriendshipMultiplier.internal_name: "vanilla",
DebrisMultiplier.internal_name: DebrisMultiplier.option_vanilla,
QuickStart.internal_name: QuickStart.option_false,
Gifting.internal_name: Gifting.option_true,
"death_link": "true",
}
short_settings = {
"progression_balancing": ProgressionBalancing.default,
"accessibility": Accessibility.option_items,
Goal.internal_name: Goal.option_bottom_of_the_mines,
FarmType.internal_name: "random",
StartingMoney.internal_name: "filthy rich",
ProfitMargin.internal_name: "quadruple",
BundleRandomization.internal_name: BundleRandomization.option_remixed,
BundlePrice.internal_name: BundlePrice.option_minimum,
EntranceRandomization.internal_name: EntranceRandomization.option_disabled,
SeasonRandomization.internal_name: SeasonRandomization.option_randomized_not_winter,
Cropsanity.internal_name: Cropsanity.option_disabled,
BackpackProgression.internal_name: BackpackProgression.option_early_progressive,
ToolProgression.internal_name: ToolProgression.option_progressive_very_cheap,
ElevatorProgression.internal_name: ElevatorProgression.option_progressive_from_previous_floor,
SkillProgression.internal_name: SkillProgression.option_progressive,
BuildingProgression.internal_name: BuildingProgression.option_progressive_very_cheap,
FestivalLocations.internal_name: FestivalLocations.option_disabled,
ArcadeMachineLocations.internal_name: ArcadeMachineLocations.option_disabled,
SpecialOrderLocations.internal_name: SpecialOrderLocations.option_disabled,
QuestLocations.internal_name: "none",
Fishsanity.internal_name: Fishsanity.option_none,
Museumsanity.internal_name: Museumsanity.option_none,
Monstersanity.internal_name: Monstersanity.option_none,
Shipsanity.internal_name: Shipsanity.option_none,
Cooksanity.internal_name: Cooksanity.option_none,
Chefsanity.internal_name: Chefsanity.option_none,
Craftsanity.internal_name: Craftsanity.option_none,
Friendsanity.internal_name: Friendsanity.option_none,
FriendsanityHeartSize.internal_name: 4,
NumberOfMovementBuffs.internal_name: 10,
NumberOfLuckBuffs.internal_name: 10,
ExcludeGingerIsland.internal_name: ExcludeGingerIsland.option_true,
TrapItems.internal_name: TrapItems.option_easy,
MultipleDaySleepEnabled.internal_name: MultipleDaySleepEnabled.option_true,
MultipleDaySleepCost.internal_name: "free",
ExperienceMultiplier.internal_name: "quadruple",
FriendshipMultiplier.internal_name: 800,
DebrisMultiplier.internal_name: DebrisMultiplier.option_none,
QuickStart.internal_name: QuickStart.option_true,
Gifting.internal_name: Gifting.option_true,
"death_link": "false",
}
minsanity_settings = {
"progression_balancing": ProgressionBalancing.default,
"accessibility": Accessibility.option_minimal,
Goal.internal_name: Goal.default,
FarmType.internal_name: "random",
StartingMoney.internal_name: StartingMoney.default,
ProfitMargin.internal_name: ProfitMargin.default,
BundleRandomization.internal_name: BundleRandomization.default,
BundlePrice.internal_name: BundlePrice.default,
EntranceRandomization.internal_name: EntranceRandomization.default,
SeasonRandomization.internal_name: SeasonRandomization.option_disabled,
Cropsanity.internal_name: Cropsanity.option_disabled,
BackpackProgression.internal_name: BackpackProgression.option_vanilla,
ToolProgression.internal_name: ToolProgression.option_vanilla,
ElevatorProgression.internal_name: ElevatorProgression.option_vanilla,
SkillProgression.internal_name: SkillProgression.option_vanilla,
BuildingProgression.internal_name: BuildingProgression.option_vanilla,
FestivalLocations.internal_name: FestivalLocations.option_disabled,
ArcadeMachineLocations.internal_name: ArcadeMachineLocations.option_disabled,
SpecialOrderLocations.internal_name: SpecialOrderLocations.option_disabled,
QuestLocations.internal_name: "none",
Fishsanity.internal_name: Fishsanity.option_none,
Museumsanity.internal_name: Museumsanity.option_none,
Monstersanity.internal_name: Monstersanity.option_none,
Shipsanity.internal_name: Shipsanity.option_none,
Cooksanity.internal_name: Cooksanity.option_none,
Chefsanity.internal_name: Chefsanity.option_none,
Craftsanity.internal_name: Craftsanity.option_none,
Friendsanity.internal_name: Friendsanity.option_none,
FriendsanityHeartSize.internal_name: FriendsanityHeartSize.default,
NumberOfMovementBuffs.internal_name: NumberOfMovementBuffs.default,
NumberOfLuckBuffs.internal_name: NumberOfLuckBuffs.default,
ExcludeGingerIsland.internal_name: ExcludeGingerIsland.option_true,
TrapItems.internal_name: TrapItems.default,
MultipleDaySleepEnabled.internal_name: MultipleDaySleepEnabled.default,
MultipleDaySleepCost.internal_name: MultipleDaySleepCost.default,
ExperienceMultiplier.internal_name: ExperienceMultiplier.default,
FriendshipMultiplier.internal_name: FriendshipMultiplier.default,
DebrisMultiplier.internal_name: DebrisMultiplier.default,
QuickStart.internal_name: QuickStart.default,
Gifting.internal_name: Gifting.default,
"death_link": DeathLink.default,
}
allsanity_settings = {
"progression_balancing": ProgressionBalancing.default,
"accessibility": Accessibility.option_locations,
Goal.internal_name: Goal.default,
FarmType.internal_name: "random",
StartingMoney.internal_name: StartingMoney.default,
ProfitMargin.internal_name: ProfitMargin.default,
BundleRandomization.internal_name: BundleRandomization.default,
BundlePrice.internal_name: BundlePrice.default,
EntranceRandomization.internal_name: EntranceRandomization.option_buildings,
SeasonRandomization.internal_name: SeasonRandomization.option_randomized,
Cropsanity.internal_name: Cropsanity.option_enabled,
BackpackProgression.internal_name: BackpackProgression.option_early_progressive,
ToolProgression.internal_name: ToolProgression.option_progressive,
ElevatorProgression.internal_name: ElevatorProgression.option_progressive,
SkillProgression.internal_name: SkillProgression.option_progressive,
BuildingProgression.internal_name: BuildingProgression.option_progressive,
FestivalLocations.internal_name: FestivalLocations.option_hard,
ArcadeMachineLocations.internal_name: ArcadeMachineLocations.option_full_shuffling,
SpecialOrderLocations.internal_name: SpecialOrderLocations.option_board_qi,
QuestLocations.internal_name: "maximum",
Fishsanity.internal_name: Fishsanity.option_all,
Museumsanity.internal_name: Museumsanity.option_all,
Monstersanity.internal_name: Monstersanity.option_progressive_goals,
Shipsanity.internal_name: Shipsanity.option_everything,
Cooksanity.internal_name: Cooksanity.option_all,
Chefsanity.internal_name: Chefsanity.option_all,
Craftsanity.internal_name: Craftsanity.option_all,
Friendsanity.internal_name: Friendsanity.option_all,
FriendsanityHeartSize.internal_name: 1,
NumberOfMovementBuffs.internal_name: 12,
NumberOfLuckBuffs.internal_name: 12,
ExcludeGingerIsland.internal_name: ExcludeGingerIsland.option_false,
TrapItems.internal_name: TrapItems.default,
MultipleDaySleepEnabled.internal_name: MultipleDaySleepEnabled.default,
MultipleDaySleepCost.internal_name: MultipleDaySleepCost.default,
ExperienceMultiplier.internal_name: ExperienceMultiplier.default,
FriendshipMultiplier.internal_name: FriendshipMultiplier.default,
DebrisMultiplier.internal_name: DebrisMultiplier.default,
QuickStart.internal_name: QuickStart.default,
Gifting.internal_name: Gifting.default,
"death_link": DeathLink.default,
}
sv_options_presets: Dict[str, Dict[str, Any]] = {
"All random": all_random_settings,
"Easy": easy_settings,
"Medium": medium_settings,
"Hard": hard_settings,
"Nightmare": nightmare_settings,
"Short": short_settings,
"Minsanity": minsanity_settings,
"Allsanity": allsanity_settings,
}