257 lines
		
	
	
		
			8.2 KiB
		
	
	
	
		
			Python
		
	
	
	
	
	
		
		
			
		
	
	
			257 lines
		
	
	
		
			8.2 KiB
		
	
	
	
		
			Python
		
	
	
	
	
	
|   | from Options import Choice, Toggle, DefaultOnToggle, DeathLink | ||
|  | 
 | ||
|  | 
 | ||
|  | class PrieDieuWarp(DefaultOnToggle): | ||
|  |     """Automatically unlocks the ability to warp between Prie Dieu shrines.""" | ||
|  |     display_name = "Unlock Fast Travel" | ||
|  | 
 | ||
|  | 
 | ||
|  | class SkipCutscenes(DefaultOnToggle): | ||
|  |     """Automatically skips most cutscenes.""" | ||
|  |     display_name = "Auto Skip Cutscenes" | ||
|  | 
 | ||
|  | 
 | ||
|  | class CorpseHints(DefaultOnToggle): | ||
|  |     """Changes the 34 corpses in game to give various hints about item locations.""" | ||
|  |     display_name = "Corpse Hints" | ||
|  | 
 | ||
|  | 
 | ||
|  | class Difficulty(Choice): | ||
|  |     """Adjusts the logic required to defeat bosses.
 | ||
|  |     Impossible: Removes all logic requirements for bosses. Good luck."""
 | ||
|  |     display_name = "Difficulty" | ||
|  |     option_easy = 0 | ||
|  |     option_normal = 1 | ||
|  |     option_hard = 2 | ||
|  |     option_impossible = 3 | ||
|  |     default = 1 | ||
|  | 
 | ||
|  | 
 | ||
|  | class Penitence(Toggle): | ||
|  |     """Allows one of the three Penitences to be chosen at the beginning of the game.""" | ||
|  |     display_name = "Penitence" | ||
|  | 
 | ||
|  | 
 | ||
|  | class ExpertLogic(Toggle): | ||
|  |     """Expands the logic used by the randomizer to allow for some difficult and/or lesser known tricks.""" | ||
|  |     display_name = "Expert Logic" | ||
|  | 
 | ||
|  | 
 | ||
|  | class Ending(Choice): | ||
|  |     """Choose which ending is required to complete the game.""" | ||
|  |     display_name = "Ending" | ||
|  |     option_any_ending = 0 | ||
|  |     option_ending_b = 1 | ||
|  |     option_ending_c = 2 | ||
|  |     default = 0 | ||
|  | 
 | ||
|  | 
 | ||
|  | class ThornShuffle(Choice): | ||
|  |     """Shuffles the Thorn given by Deogracias and all Thorn upgrades into the item pool.""" | ||
|  |     display_name = "Shuffle Thorn" | ||
|  |     option_anywhere = 0 | ||
|  |     option_local_only = 1 | ||
|  |     option_vanilla = 2 | ||
|  |     default = 0 | ||
|  | 
 | ||
|  | 
 | ||
|  | class ReliquaryShuffle(DefaultOnToggle): | ||
|  |     """Adds the True Torment exclusive Reliquary rosary beads into the item pool.""" | ||
|  |     display_name = "Shuffle Penitence Rewards" | ||
|  | 
 | ||
|  | 
 | ||
|  | class CherubShuffle(DefaultOnToggle): | ||
|  |     """Shuffles Children of Moonlight into the item pool.""" | ||
|  |     display_name = "Shuffle Children of Moonlight" | ||
|  | 
 | ||
|  | 
 | ||
|  | class LifeShuffle(DefaultOnToggle): | ||
|  |     """Shuffles life upgrades from the Lady of the Six Sorrows into the item pool.""" | ||
|  |     display_name = "Shuffle Life Upgrades" | ||
|  | 
 | ||
|  | 
 | ||
|  | class FervourShuffle(DefaultOnToggle): | ||
|  |     """Shuffles fervour upgrades from the Oil of the Pilgrims into the item pool.""" | ||
|  |     display_name = "Shuffle Fervour Upgrades" | ||
|  | 
 | ||
|  | 
 | ||
|  | class SwordShuffle(DefaultOnToggle): | ||
|  |     """Shuffles Mea Culpa upgrades from the Mea Culpa Altars into the item pool.""" | ||
|  |     display_name = "Shuffle Mea Culpa Upgrades" | ||
|  | 
 | ||
|  | 
 | ||
|  | class BlessingShuffle(DefaultOnToggle): | ||
|  |     """Shuffles blessings from the Lake of Silent Pilgrims into the item pool.""" | ||
|  |     display_name = "Shuffle Blessings" | ||
|  | 
 | ||
|  | 
 | ||
|  | class DungeonShuffle(DefaultOnToggle): | ||
|  |     """Shuffles rewards from completing Confessor Dungeons into the item pool.""" | ||
|  |     display_name = "Shuffle Dungeon Rewards" | ||
|  | 
 | ||
|  | 
 | ||
|  | class TirsoShuffle(DefaultOnToggle): | ||
|  |     """Shuffles rewards from delivering herbs to Tirso into the item pool.""" | ||
|  |     display_name = "Shuffle Tirso's Rewards" | ||
|  | 
 | ||
|  | 
 | ||
|  | class MiriamShuffle(DefaultOnToggle): | ||
|  |     """Shuffles the prayer given by Miriam into the item pool.""" | ||
|  |     display_name = "Shuffle Miriram's Reward" | ||
|  | 
 | ||
|  | 
 | ||
|  | class RedentoShuffle(DefaultOnToggle): | ||
|  |     """Shuffles rewards from assisting Redento into the item pool.""" | ||
|  |     display_name = "Shuffle Redento's Rewards" | ||
|  | 
 | ||
|  | 
 | ||
|  | class JocineroShuffle(DefaultOnToggle): | ||
|  |     """Shuffles rewards from rescuing 20 and 38 Children of Moonlight into the item pool.""" | ||
|  |     display_name = "Shuffle Jocinero's Rewards" | ||
|  | 
 | ||
|  | 
 | ||
|  | class AltasgraciasShuffle(DefaultOnToggle): | ||
|  |     """Shuffles the reward given by Altasgracias and the item left behind by them into the item pool.""" | ||
|  |     display_name = "Shuffle Altasgracias' Rewards" | ||
|  | 
 | ||
|  | 
 | ||
|  | class TentudiaShuffle(DefaultOnToggle): | ||
|  |     """Shuffles the rewards from delivering Tentudia's remains to Lvdovico into the item pool.""" | ||
|  |     display_name = "Shuffle Lvdovico's Rewards" | ||
|  | 
 | ||
|  | 
 | ||
|  | class GeminoShuffle(DefaultOnToggle): | ||
|  |     """Shuffles the rewards from Gemino's quest and the hidden tomb into the item pool.""" | ||
|  |     display_name = "Shuffle Gemino's Rewards" | ||
|  | 
 | ||
|  | 
 | ||
|  | class GuiltShuffle(DefaultOnToggle): | ||
|  |     """Shuffles the Weight of True Guilt into the item pool.""" | ||
|  |     display_name = "Shuffle Immaculate Bead" | ||
|  | 
 | ||
|  | 
 | ||
|  | class OssuaryShuffle(DefaultOnToggle): | ||
|  |     """Shuffles the rewards from delivering bones to the Ossuary into the item pool.""" | ||
|  |     display_name = "Shuffle Ossuary Rewards" | ||
|  | 
 | ||
|  | 
 | ||
|  | class BossShuffle(DefaultOnToggle): | ||
|  |     """Shuffles the Tears of Atonement from defeating bosses into the item pool.""" | ||
|  |     display_name = "Shuffle Boss Tears" | ||
|  | 
 | ||
|  | 
 | ||
|  | class WoundShuffle(DefaultOnToggle): | ||
|  |     """Shuffles the Holy Wounds required to pass the Bridge of the Three Cavalries into the item pool.""" | ||
|  |     display_name = "Shuffle Holy Wounds" | ||
|  | 
 | ||
|  | 
 | ||
|  | class MaskShuffle(DefaultOnToggle): | ||
|  |     """Shuffles the masks required to use the elevator in Archcathedral Rooftops into the item pool.""" | ||
|  |     display_name = "Shuffle Masks" | ||
|  | 
 | ||
|  | 
 | ||
|  | class EyeShuffle(DefaultOnToggle): | ||
|  |     """Shuffles the Eyes of the Traitor from defeating Isidora and Sierpes into the item pool.""" | ||
|  |     display_name = "Shuffle Traitor's Eyes" | ||
|  | 
 | ||
|  | 
 | ||
|  | class HerbShuffle(DefaultOnToggle): | ||
|  |     """Shuffles the herbs required for Tirso's quest into the item pool.""" | ||
|  |     display_name = "Shuffle Herbs" | ||
|  | 
 | ||
|  | 
 | ||
|  | class ChurchShuffle(DefaultOnToggle): | ||
|  |     """Shuffles the rewards from donating 5,000 and 50,000 Tears of Atonement to the Church in Albero into the item pool.""" | ||
|  |     display_name = "Shuffle Donation Rewards" | ||
|  | 
 | ||
|  | 
 | ||
|  | class ShopShuffle(DefaultOnToggle): | ||
|  |     """Shuffles the items sold in Candelaria's shops into the item pool.""" | ||
|  |     display_name = "Shuffle Shop Items" | ||
|  | 
 | ||
|  | 
 | ||
|  | class CandleShuffle(DefaultOnToggle): | ||
|  |     """Shuffles the Beads of Wax and their upgrades into the item pool.""" | ||
|  |     display_name = "Shuffle Candles" | ||
|  | 
 | ||
|  | 
 | ||
|  | class StartWheel(Toggle): | ||
|  |     """Changes the beginning gift to The Young Mason's Wheel.""" | ||
|  |     display_name = "Start with Wheel" | ||
|  | 
 | ||
|  | 
 | ||
|  | class SkillRando(Toggle): | ||
|  |     """Randomizes the abilities from the skill tree into the item pool.""" | ||
|  |     display_name = "Skill Randomizer" | ||
|  | 
 | ||
|  | 
 | ||
|  | class EnemyRando(Choice): | ||
|  |     """Randomizes the enemies that appear in each room.
 | ||
|  |     Shuffled: Enemies will be shuffled amongst each other, but can only appear as many times as they do in a standard game. | ||
|  |     Randomized: Every enemy is completely random, and can appear any number of times. | ||
|  |     Some enemies will never be randomized."""
 | ||
|  |     display_name = "Enemy Randomizer" | ||
|  |     option_disabled = 0 | ||
|  |     option_shuffled = 1 | ||
|  |     option_randomized = 2 | ||
|  |     default = 0 | ||
|  | 
 | ||
|  | 
 | ||
|  | class EnemyGroups(DefaultOnToggle): | ||
|  |     """Randomized enemies will chosen from sets of specific groups. 
 | ||
|  |     (Weak, normal, large, flying) | ||
|  |     Has no effect if Enemy Randomizer is disabled."""
 | ||
|  |     display_name = "Enemy Groups" | ||
|  | 
 | ||
|  | 
 | ||
|  | class EnemyScaling(DefaultOnToggle): | ||
|  |     """Randomized enemies will have their stats increased or decreased depending on the area they appear in.
 | ||
|  |     Has no effect if Enemy Randomizer is disabled."""
 | ||
|  |     display_name = "Enemy Scaling" | ||
|  | 
 | ||
|  | 
 | ||
|  | class BlasphemousDeathLink(DeathLink): | ||
|  |     """When you die, everyone dies. The reverse is also true.
 | ||
|  |     Note that Guilt Fragments will not appear when killed by Death Link."""
 | ||
|  | 
 | ||
|  | 
 | ||
|  | blasphemous_options = { | ||
|  |     "prie_dieu_warp": PrieDieuWarp, | ||
|  |     "skip_cutscenes": SkipCutscenes, | ||
|  |     "corpse_hints": CorpseHints, | ||
|  |     "difficulty": Difficulty, | ||
|  |     "penitence": Penitence, | ||
|  |     "expert_logic": ExpertLogic, | ||
|  |     "ending": Ending, | ||
|  |     "thorn_shuffle" : ThornShuffle, | ||
|  |     "reliquary_shuffle": ReliquaryShuffle, | ||
|  |     "cherub_shuffle" : CherubShuffle, | ||
|  |     "life_shuffle" : LifeShuffle, | ||
|  |     "fervour_shuffle" : FervourShuffle, | ||
|  |     "sword_shuffle" : SwordShuffle, | ||
|  |     "blessing_shuffle" : BlessingShuffle, | ||
|  |     "dungeon_shuffle" : DungeonShuffle, | ||
|  |     "tirso_shuffle" : TirsoShuffle, | ||
|  |     "miriam_shuffle" : MiriamShuffle, | ||
|  |     "redento_shuffle" : RedentoShuffle, | ||
|  |     "jocinero_shuffle" : JocineroShuffle, | ||
|  |     "altasgracias_shuffle" : AltasgraciasShuffle, | ||
|  |     "tentudia_shuffle" : TentudiaShuffle, | ||
|  |     "gemino_shuffle" : GeminoShuffle, | ||
|  |     "guilt_shuffle" : GuiltShuffle, | ||
|  |     "ossuary_shuffle" : OssuaryShuffle, | ||
|  |     "boss_shuffle" : BossShuffle, | ||
|  |     "wound_shuffle" : WoundShuffle, | ||
|  |     "mask_shuffle" : MaskShuffle, | ||
|  |     "eye_shuffle": EyeShuffle, | ||
|  |     "herb_shuffle" : HerbShuffle, | ||
|  |     "church_shuffle" : ChurchShuffle, | ||
|  |     "shop_shuffle" : ShopShuffle, | ||
|  |     "candle_shuffle" : CandleShuffle, | ||
|  |     "start_wheel": StartWheel, | ||
|  |     "skill_randomizer": SkillRando, | ||
|  |     "enemy_randomizer": EnemyRando, | ||
|  |     "enemy_groups": EnemyGroups, | ||
|  |     "enemy_scaling": EnemyScaling, | ||
|  |     "death_link": BlasphemousDeathLink | ||
|  | } |