KH2: casual bounties option

This commit is contained in:
PIEisFANTASTIC
2025-04-14 00:46:17 -04:00
parent ec1e113b4c
commit e5e21090b0
3 changed files with 37 additions and 2 deletions

View File

@@ -1282,6 +1282,25 @@ exclusion_table = {
LocationName.HadesCupTrophyParadoxCups,
LocationName.MusicalOrichalcumPlus,
],
"HitlistCasual": {
LocationName.FuturePete,
LocationName.BetwixtandBetweenBondofFlame,
LocationName.GrimReaper2,
LocationName.ThousandHeartless,
LocationName.WinnersProof,
LocationName.Experiment,
LocationName.Groundshaker,
LocationName.Hades,
LocationName.GenieJafar,
LocationName.Xaldin,
LocationName.StormRider,
LocationName.MansionBasementCorridorHiPotion,
LocationName.Xemnas1SecretAnsemReport13,
LocationName.XigbarSecretAnsemReport3,
LocationName.Scar,
LocationName.Lvl50,
LocationName.Lvl99
},
"Cups": {
LocationName.ProtectBeltPainandPanicCup,
LocationName.SerenityGemPainandPanicCup,

View File

@@ -165,6 +165,12 @@ class SuperBosses(Toggle):
default = True
class CasualBounties(Toggle):
"""More casual and generic locations to expand bounty pool without superbosses"""
display_name = "Casual Bounty Toggle"
default = False
class Cups(Choice):
"""Olympus Cups Toggles
No Cups: All Cups are placed into Excluded Locations.
@@ -273,7 +279,7 @@ class BountyRequired(Range):
If Goal is not Hitlist or Lucky Emblem and Hitlist this does nothing."""
display_name = "Bounties Required"
range_start = 1
range_end = 26
range_end = 42
default = 7
@@ -283,7 +289,7 @@ class BountyAmount(Range):
If Goal is not Hitlist or Lucky Emblem and Hitlist this does nothing."""
display_name = "Bounties Available"
range_start = 1
range_end = 26
range_end = 42
default = 10
@@ -365,6 +371,7 @@ class KingdomHearts2Options(PerGameCommonOptions):
Visitlocking: Visitlocking
RandomVisitLockingItem: RandomVisitLockingItem
SuperBosses: SuperBosses
CasualBounties: CasualBounties
Cups: Cups
SummonLevelLocationToggle: SummonLevelLocationToggle
AtlanticaToggle: AtlanticaToggle

View File

@@ -246,6 +246,8 @@ class KH2World(World):
# hitlist
if self.options.Goal not in ["lucky_emblem_hunt", "three_proofs"]:
self.random_super_boss_list.extend(exclusion_table["Hitlist"])
if self.options.CasualBounties:
self.random_super_boss_list.extend(exclusion_table["HitlistCasual"])
self.bounties_amount = self.options.BountyAmount.value
self.bounties_required = self.options.BountyRequired.value
@@ -477,6 +479,13 @@ class KH2World(World):
if location in self.random_super_boss_list:
self.random_super_boss_list.remove(location)
if self.options.LevelDepth == "level_1":
self.random_super_boss_list.remove(LocationName.Lvl50)
self.random_super_boss_list.remove(LocationName.Lvl99)
if self.options.LevelDepth not in ["level_99", "level_99_sanity"] and LocationName.Lvl99 in self.random_super_boss_list:
self.random_super_boss_list.remove(LocationName.Lvl99)
if not self.options.SummonLevelLocationToggle and LocationName.Summonlvl7 in self.random_super_boss_list:
self.random_super_boss_list.remove(LocationName.Summonlvl7)