Skip to content

Commit bbca941

Browse files
added summons and other non-spark bosses to boss locations; also added Deity Eyes and STEM WARD to the end-game item pool since Gabriel requires them, and adjusted the place they're added for true astley wincon accordingly
1 parent 7172860 commit bbca941

3 files changed

Lines changed: 65 additions & 79 deletions

File tree

worlds/crystal_project/__init__.py

Lines changed: 4 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -321,7 +321,7 @@ def get_item_pool(self, excluded_items: Set[str]) -> List[Item]:
321321
if self.options.shopsanity.value != self.options.shopsanity.option_disabled:
322322
amount = amount + int(data.endGameShops or 0)
323323

324-
# Make sure new world pass is included if region sanity of on and its required for the goal
324+
# Make sure new world pass is included if regionsanity is on and its required for the goal
325325
if (self.options.regionsanity.value == self.options.regionsanity.option_true and
326326
(self.options.goal.value == self.options.goal.option_astley or self.options.goal.value == self.options.goal.option_true_astley) and
327327
name == THE_NEW_WORLD_PASS):
@@ -331,6 +331,9 @@ def get_item_pool(self, excluded_items: Set[str]) -> List[Item]:
331331
self.options.goal.value == self.options.goal.option_true_astley and
332332
name == THE_OLD_WORLD_PASS):
333333
amount = 1
334+
# adds true Astley goal required items if they don't already exist
335+
if self.options.goal.value == self.options.goal.option_true_astley and (name == STEM_WARD or name == DEITY_EYE):
336+
amount = amount + int(data.advancedAmount or 0) + int(data.expertAmount or 0) + int(data.endGameAmount or 0)
334337

335338
for _ in range(amount):
336339
item = self.set_classifications(name)
@@ -344,13 +347,6 @@ def get_item_pool(self, excluded_items: Set[str]) -> List[Item]:
344347
item = self.set_classifications(PROGRESSIVE_LEVEL)
345348
pool.append(item)
346349

347-
if self.options.goal.value == self.options.goal.option_true_astley:
348-
for _ in range(4):
349-
item = self.set_classifications(DEITY_EYE)
350-
pool.append(item)
351-
item = self.set_classifications(STEM_WARD)
352-
pool.append(item)
353-
354350
#7 spells randomly chosen from the entire pool (they have Reverse Polarity as default to merc Gran)
355351
if self.options.includedRegions == self.options.includedRegions.option_beginner:
356352
for scholar_ability in self.get_optional_scholar_abilities(7):

worlds/crystal_project/items.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -188,8 +188,8 @@ class Job(NamedTuple):
188188
SPECIAL_MILK: ItemData(ITEM, 230 + item_index_offset, ItemClassification.progression, 0, 1),
189189
SPECIAL_FRESH_SALMON: ItemData(ITEM, 231 + item_index_offset, ItemClassification.progression, 0, 1),
190190
SPECIAL_ROTTEN_SALMON: ItemData(ITEM, 232 + item_index_offset, ItemClassification.progression, 0, 1),
191-
DEITY_EYE: ItemData(ITEM, 176 + item_index_offset, ItemClassification.progression, 0), #Used for true astley win con
192-
STEM_WARD: ItemData(ITEM, 177 + item_index_offset, ItemClassification.progression, 0), #Used for true astley win con
191+
DEITY_EYE: ItemData(ITEM, 176 + item_index_offset, ItemClassification.progression, 0, 0, 0, 4), #Used for true astley win con and fighting Gabriel in Kill Bosses mode
192+
STEM_WARD: ItemData(ITEM, 177 + item_index_offset, ItemClassification.progression, 0, 0, 0, 1), #Used for true astley win con and fighting Gabriel in Kill Bosses mode
193193
PROOF_OF_MERIT: ItemData(ITEM, 191 + item_index_offset, ItemClassification.filler, 0), #We don't use this so it's filler to prevent it from being jsonified
194194

195195
#Passes for Regionsanity

0 commit comments

Comments
 (0)