Skip to content

Commit 67e435b

Browse files
committed
update rift wizard 2
1 parent e6dd2fc commit 67e435b

File tree

1 file changed

+105
-6
lines changed

1 file changed

+105
-6
lines changed

worlds/keymasters_keep/games/rift_wizard_2_game.py

+105-6
Original file line numberDiff line numberDiff line change
@@ -34,14 +34,14 @@ def optional_game_constraint_templates(self) -> List[GameObjectiveTemplate]:
3434
GameObjectiveTemplate(
3535
label="You YODA buy perks that cost X",
3636
data={
37-
"YODA": (self.perkcosts, 1),
37+
"YODA": (self.yoda, 1),
3838
"X": (self.perkcosts, 1),
3939
},
4040
),
4141
GameObjectiveTemplate(
42-
label="The majority of the skills you purchase must have the SPELLTYPE tag",
42+
label="The majority of the skills you purchase must have the SKILLTYPE tag",
4343
data={
44-
"SPELLTYPE": (self.spelltype, 1),
44+
"SKILLTYPE": (self.skilltype, 1),
4545
},
4646
),
4747
GameObjectiveTemplate(
@@ -51,22 +51,49 @@ def optional_game_constraint_templates(self) -> List[GameObjectiveTemplate]:
5151
},
5252
),
5353
GameObjectiveTemplate(
54-
label="Once you preview a rift, you must enter it",
54+
label="Once you equip an item, you cannot swap it for a different one",
5555
data=dict(),
5656
),
5757
]
5858

5959
def game_objective_templates(self) -> List[GameObjectiveTemplate]:
6060
return [
6161
GameObjectiveTemplate(
62-
label="Win a run using a majority of SPELLTYPE spells",
62+
label="Win a run using a majority of SPELLTYPE Spells",
6363
data={
6464
"SPELLTYPE": (self.spelltype, 1),
6565
},
6666
is_time_consuming=False,
6767
is_difficult=False,
6868
weight=5,
6969
),
70+
GameObjectiveTemplate(
71+
label="Win a run with one of: BIGSKILL",
72+
data={
73+
"BIGSKILL": (self.bigskill, 2),
74+
},
75+
is_time_consuming=False,
76+
is_difficult=True,
77+
weight=5,
78+
),
79+
GameObjectiveTemplate(
80+
label="Defeat Rift 10 while BIGCHALLENGE",
81+
data={
82+
"BIGCHALLENGE": (self.bigchallenge, 1),
83+
},
84+
is_time_consuming=False,
85+
is_difficult=True,
86+
weight=2,
87+
),
88+
GameObjectiveTemplate(
89+
label="Reach Mordred in the TRIAL Archmage Trial",
90+
data={
91+
"TRIAL": (self.trials, 1),
92+
},
93+
is_time_consuming=False,
94+
is_difficult=True,
95+
weight=1,
96+
),
7097
]
7198

7299
@staticmethod
@@ -83,7 +110,20 @@ def spelltype() -> List[str]:
83110
"Conjuration",
84111
"Enchantment",
85112
"Metallic",
86-
"Blood",
113+
]
114+
115+
@staticmethod
116+
def skilltype() -> List[str]:
117+
return [
118+
"Fire",
119+
"Lightning",
120+
"Ice",
121+
"Nature",
122+
"Arcane",
123+
"Dark",
124+
"Holy",
125+
"Sorcery",
126+
"Conjuration",
87127
]
88128

89129
@staticmethod
@@ -101,5 +141,64 @@ def yoda() -> List[str]:
101141
"cannot",
102142
]
103143

144+
@staticmethod
145+
def bigskill() -> List[str]:
146+
return [
147+
"Soul Harvest",
148+
"Serpents of Chaos",
149+
"Orb Lord",
150+
"Arch Conjurer",
151+
"Arch Enchanter",
152+
"Arch Sorcerer",
153+
"Ice Tap",
154+
"Inferno Engines",
155+
"Lightning Frenzy",
156+
"Moonspeaker",
157+
"Chaos Familiar and Deathchill Familiar",
158+
"two Poison-related skills",
159+
"Arcane Combustion and Master of Space",
160+
"Steam Anima",
161+
"Necrostatics",
162+
"Storm Caller",
163+
"Scent of Blood",
164+
"Hypocrisy",
165+
"Unblinking Eye",
166+
"Master of Memories and Arcane Accounting",
167+
"Voidflame Lantern and Lifespark Lantern",
168+
">9SP of Fire skills",
169+
">9SP of Lightning skills",
170+
">9SP of Ice skills",
171+
">9SP of Nature skills",
172+
">9SP of Arcane skills",
173+
">9SP of Dark skills",
174+
">9SP of Holy skills",
175+
]
176+
177+
@staticmethod
178+
def bigchallenge() -> List[str]:
179+
return [
180+
"only using Blood spells",
181+
"upgrading each spell you buy before buying anything else",
182+
"only using spells below level 3",
183+
"only using Enchantment spells",
184+
"only picking up SP and consumables",
185+
"only using spells that can damage you",
186+
"passing your first 2 turns in each rift",
187+
"only using Metallic spells after rift 1",
188+
"only using Holy spells",
189+
"purchasing 4 Eye spells",
190+
"never boosting your spells' damage or minion damage",
191+
]
192+
193+
@staticmethod
194+
def trials() -> List[str]:
195+
return [
196+
"Menagerist",
197+
"Mutant Masher",
198+
"Giant Slayer",
199+
"Staff Abuser",
200+
"Ogre Mage",
201+
]
202+
104203
# Archipelago Options
105204
# ...

0 commit comments

Comments
 (0)