2024-01-12 14:32:15 -05:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								from  dataclasses  import  dataclass  
						 
					
						
							
								
									
										
										
										
											2024-05-22 20:12:59 -04:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								from  typing  import  Dict ,  Any  
						 
					
						
							
								
									
										
										
										
											2024-06-01 06:34:41 -05:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								from  Options  import  ( DefaultOnToggle ,  Toggle ,  StartInventoryPool ,  Choice ,  Range ,  TextChoice ,  PlandoConnections ,  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                     PerGameCommonOptions ,  OptionGroup ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								from  . er_data  import  portal_mapping  
						 
					
						
							
								
									
										
										
										
											2024-01-12 14:32:15 -05:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								class  SwordProgression ( DefaultOnToggle ) :  
						 
					
						
							
								
									
										
										
										
											2024-05-21 18:12:52 -04:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    """ 
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    Adds  four  sword  upgrades  to  the  item  pool  that  will  progressively  grant  stronger  melee  weapons ,  including  two  new  swords  with  increased  range  and  attack  power . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    """ 
 
							 
						 
					
						
							
								
									
										
										
										
											2024-01-12 14:32:15 -05:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								    internal_name  =  " sword_progression " 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    display_name  =  " Sword Progression " 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								class  StartWithSword ( Toggle ) :  
						 
					
						
							
								
									
										
										
										
											2024-05-21 18:12:52 -04:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    """ 
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    Start  with  a  sword  in  the  player ' s inventory. Does not count towards Sword Progression. 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    """ 
 
							 
						 
					
						
							
								
									
										
										
										
											2024-01-12 14:32:15 -05:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								    internal_name  =  " start_with_sword " 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    display_name  =  " Start With Sword " 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								class  KeysBehindBosses ( Toggle ) :  
						 
					
						
							
								
									
										
										
										
											2024-05-21 18:12:52 -04:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    """ 
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    Places  the  three  hexagon  keys  behind  their  respective  boss  fight  in  your  world . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    """ 
 
							 
						 
					
						
							
								
									
										
										
										
											2024-01-12 14:32:15 -05:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								    internal_name  =  " keys_behind_bosses " 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    display_name  =  " Keys Behind Bosses " 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								class  AbilityShuffling ( Toggle ) :  
						 
					
						
							
								
									
										
										
										
											2024-05-21 18:12:52 -04:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    """ 
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    Locks  the  usage  of  Prayer ,  Holy  Cross * ,  and  the  Icebolt  combo  until  the  relevant  pages  of  the  manual  have  been  found . 
							 
						 
					
						
							
								
									
										
										
										
											2024-03-21 11:50:07 -04:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    If  playing  Hexagon  Quest ,  abilities  are  instead  randomly  unlocked  after  obtaining  25 % ,  50 % ,  and  75 %  of  the  required  Hexagon  goal  amount . 
							 
						 
					
						
							
								
									
										
										
										
											2024-05-21 18:12:52 -04:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    *  Certain  Holy  Cross  usages  are  still  allowed ,  such  as  the  free  bomb  codes ,  the  seeking  spell ,  and  other  player - facing  codes . 
							 
						 
					
						
							
								
									
										
										
										
											2024-01-12 14:32:15 -05:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								    """ 
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    internal_name  =  " ability_shuffling " 
							 
						 
					
						
							
								
									
										
										
										
											2024-03-15 08:53:41 -04:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    display_name  =  " Shuffle Abilities " 
							 
						 
					
						
							
								
									
										
										
										
											2024-01-12 14:32:15 -05:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								class  LogicRules ( Choice ) :  
						 
					
						
							
								
									
										
										
										
											2024-03-21 11:50:07 -04:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    """ 
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    Set  which  logic  rules  to  use  for  your  world . 
							 
						 
					
						
							
								
									
										
										
										
											2024-01-12 14:32:15 -05:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								    Restricted :  Standard  logic ,  no  glitches . 
							 
						 
					
						
							
								
									
										
										
										
											2024-02-16 17:24:25 -05:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    No  Major  Glitches :  Sneaky  Laurels  zips ,  ice  grapples  through  doors ,  shooting  the  west  bell ,  and  boss  quick  kills  are  included  in  logic . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    *  Ice  grappling  through  the  Ziggurat  door  is  not  in  logic  since  you  will  get  stuck  in  there  without  Prayer . 
							 
						 
					
						
							
								
									
										
										
										
											2024-01-12 14:32:15 -05:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								    Unrestricted :  Logic  in  No  Major  Glitches ,  as  well  as  ladder  storage  to  get  to  certain  places  early . 
							 
						 
					
						
							
								
									
										
										
										
											2024-05-21 18:12:52 -04:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    *  Torch  is  given  to  the  player  at  the  start  of  the  game  due  to  the  high  softlock  potential  with  various  tricks .  Using  the  torch  is  not  required  in  logic . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    *  Using  Ladder  Storage  to  get  to  individual  chests  is  not  in  logic  to  avoid  tedium . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    *  Getting  knocked  out  of  the  air  by  enemies  during  Ladder  Storage  to  reach  places  is  not  in  logic ,  except  for  in  Rooted  Ziggurat  Lower .  This  is  so  you ' re not punished for playing with enemy rando on. 
							 
						 
					
						
							
								
									
										
										
										
											2024-03-21 11:50:07 -04:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    """ 
 
							 
						 
					
						
							
								
									
										
										
										
											2024-01-12 14:32:15 -05:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								    internal_name  =  " logic_rules " 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    display_name  =  " Logic Rules " 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    option_restricted  =  0 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    option_no_major_glitches  =  1 
							 
						 
					
						
							
								
									
										
										
										
											2024-02-16 17:24:25 -05:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    alias_nmg  =  1 
							 
						 
					
						
							
								
									
										
										
										
											2024-01-12 14:32:15 -05:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								    option_unrestricted  =  2 
							 
						 
					
						
							
								
									
										
										
										
											2024-02-16 17:24:25 -05:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    alias_ur  =  2 
							 
						 
					
						
							
								
									
										
										
										
											2024-01-12 14:32:15 -05:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								    default  =  0 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								class  Lanternless ( Toggle ) :  
						 
					
						
							
								
									
										
										
										
											2024-05-21 18:12:52 -04:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    """ 
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    Choose  whether  you  require  the  Lantern  for  dark  areas . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    When  enabled ,  the  Lantern  is  marked  as  Useful  instead  of  Progression . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    """ 
 
							 
						 
					
						
							
								
									
										
										
										
											2024-01-12 14:32:15 -05:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								    internal_name  =  " lanternless " 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    display_name  =  " Lanternless " 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								class  Maskless ( Toggle ) :  
						 
					
						
							
								
									
										
										
										
											2024-05-21 18:12:52 -04:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    """ 
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    Choose  whether  you  require  the  Scavenger ' s Mask for Lower Quarry. 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    When  enabled ,  the  Scavenger ' s Mask is marked as Useful instead of Progression. 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    """ 
 
							 
						 
					
						
							
								
									
										
										
										
											2024-01-12 14:32:15 -05:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								    internal_name  =  " maskless " 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    display_name  =  " Maskless " 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								class  FoolTraps ( Choice ) :  
						 
					
						
							
								
									
										
										
										
											2024-05-21 18:12:52 -04:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    """ 
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    Replaces  low - to - medium  value  money  rewards  in  the  item  pool  with  fool  traps ,  which  cause  random  negative  effects  to  the  player . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    """ 
 
							 
						 
					
						
							
								
									
										
										
										
											2024-01-12 14:32:15 -05:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								    internal_name  =  " fool_traps " 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    display_name  =  " Fool Traps " 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    option_off  =  0 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    option_normal  =  1 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    option_double  =  2 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    option_onslaught  =  3 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    default  =  1 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								class  HexagonQuest ( Toggle ) :  
						 
					
						
							
								
									
										
										
										
											2024-05-21 18:12:52 -04:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    """ 
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    An  alternate  goal  that  shuffles  Gold  " Questagon "  items  into  the  item  pool  and  allows  the  game  to  be  completed  after  collecting  the  required  number  of  them . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    """ 
 
							 
						 
					
						
							
								
									
										
										
										
											2024-01-12 14:32:15 -05:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								    internal_name  =  " hexagon_quest " 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    display_name  =  " Hexagon Quest " 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								class  HexagonGoal ( Range ) :  
						 
					
						
							
								
									
										
										
										
											2024-05-21 18:12:52 -04:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    """ 
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    How  many  Gold  Questagons  are  required  to  complete  the  game  on  Hexagon  Quest . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    """ 
 
							 
						 
					
						
							
								
									
										
										
										
											2024-01-12 14:32:15 -05:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								    internal_name  =  " hexagon_goal " 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    display_name  =  " Gold Hexagons Required " 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    range_start  =  15 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    range_end  =  50 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    default  =  20 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								class  ExtraHexagonPercentage ( Range ) :  
						 
					
						
							
								
									
										
										
										
											2024-05-21 18:12:52 -04:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    """ 
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    How  many  extra  Gold  Questagons  are  shuffled  into  the  item  pool ,  taken  as  a  percentage  of  the  goal  amount . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    """ 
 
							 
						 
					
						
							
								
									
										
										
										
											2024-01-12 14:32:15 -05:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								    internal_name  =  " extra_hexagon_percentage " 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    display_name  =  " Percentage of Extra Gold Hexagons " 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    range_start  =  0 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    range_end  =  100 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    default  =  50 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2024-03-15 12:52:05 -04:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								class  EntranceRando ( TextChoice ) :  
						 
					
						
							
								
									
										
										
										
											2024-03-21 11:50:07 -04:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    """ 
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    Randomize  the  connections  between  scenes . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    A  small ,  very  lost  fox  on  a  big  adventure . 
							 
						 
					
						
							
								
									
										
										
										
											2024-05-03 01:21:27 -04:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    If  you  set  this  option ' s value to a string, it will be used as a custom seed. 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    Every  player  who  uses  the  same  custom  seed  will  have  the  same  entrances ,  choosing  the  most  restrictive  settings  among  these  players  for  the  purpose  of  pairing  entrances . 
							 
						 
					
						
							
								
									
										
										
										
											2024-03-21 11:50:07 -04:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    """ 
 
							 
						 
					
						
							
								
									
										
										
										
											2024-01-12 14:32:15 -05:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								    internal_name  =  " entrance_rando " 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    display_name  =  " Entrance Rando " 
							 
						 
					
						
							
								
									
										
										
										
											2024-03-15 12:52:05 -04:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    alias_false  =  0 
							 
						 
					
						
							
								
									
										
										
										
											2024-08-14 10:55:02 -04:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    alias_off  =  0 
							 
						 
					
						
							
								
									
										
										
										
											2024-03-15 12:52:05 -04:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    option_no  =  0 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    alias_true  =  1 
							 
						 
					
						
							
								
									
										
										
										
											2024-08-14 10:55:02 -04:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    alias_on  =  1 
							 
						 
					
						
							
								
									
										
										
										
											2024-03-15 12:52:05 -04:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    option_yes  =  1 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    default  =  0 
							 
						 
					
						
							
								
									
										
										
										
											2024-01-12 14:32:15 -05:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								class  FixedShop ( Toggle ) :  
						 
					
						
							
								
									
										
										
										
											2024-05-21 18:12:52 -04:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    """ 
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    Forces  the  Windmill  entrance  to  lead  to  a  shop ,  and  removes  the  remaining  shops  from  the  pool . 
							 
						 
					
						
							
								
									
										
										
										
											2024-05-19 19:01:24 -04:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    Adds  another  entrance  in  Rooted  Ziggurat  Lower  to  keep  an  even  number  of  entrances . 
							 
						 
					
						
							
								
									
										
										
										
											2024-05-21 18:12:52 -04:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    Has  no  effect  if  Entrance  Rando  is  not  enabled . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    """ 
 
							 
						 
					
						
							
								
									
										
										
										
											2024-01-12 14:32:15 -05:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								    internal_name  =  " fixed_shop " 
							 
						 
					
						
							
								
									
										
										
										
											2024-03-15 08:53:41 -04:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    display_name  =  " Fewer Shops in Entrance Rando " 
							 
						 
					
						
							
								
									
										
										
										
											2024-01-12 14:32:15 -05:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								class  LaurelsLocation ( Choice ) :  
						 
					
						
							
								
									
										
										
										
											2024-05-21 18:12:52 -04:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    """ 
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    Force  the  Hero ' s Laurels to be placed at a location in your world. 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    For  if  you  want  to  avoid  or  specify  early  or  late  Laurels . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    """ 
 
							 
						 
					
						
							
								
									
										
										
										
											2024-01-12 14:32:15 -05:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								    internal_name  =  " laurels_location " 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    display_name  =  " Laurels Location " 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    option_anywhere  =  0 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    option_6_coins  =  1 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    option_10_coins  =  2 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    option_10_fairies  =  3 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    default  =  0 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2024-03-21 11:50:07 -04:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								class  ShuffleLadders ( Toggle ) :  
						 
					
						
							
								
									
										
										
										
											2024-05-21 18:12:52 -04:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    """ 
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    Turns  several  ladders  in  the  game  into  items  that  must  be  found  before  they  can  be  climbed  on . 
							 
						 
					
						
							
								
									
										
										
										
											2024-03-21 11:50:07 -04:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    Adds  more  layers  of  progression  to  the  game  by  blocking  access  to  many  areas  early  on . 
							 
						 
					
						
							
								
									
										
										
										
											2024-05-21 18:12:52 -04:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    " Ladders were a mistake. " 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    — Andrew  Shouldice 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    """ 
 
							 
						 
					
						
							
								
									
										
										
										
											2024-03-21 11:50:07 -04:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    internal_name  =  " shuffle_ladders " 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    display_name  =  " Shuffle Ladders " 
							 
						 
					
						
							
								
									
										
										
										
											2024-06-01 06:34:41 -05:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    
							 
						 
					
						
							
								
									
										
										
										
											2024-06-03 04:44:37 -04:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								class  TunicPlandoConnections ( PlandoConnections ) :  
						 
					
						
							
								
									
										
										
										
											2024-06-15 23:02:48 -04:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    """ 
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    Generic  connection  plando .  Format  is : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    -  entrance :  " Entrance Name " 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								      exit :  " Exit Name " 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								      percentage :  100 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    Percentage  is  an  integer  from  0  to  100  which  determines  whether  that  connection  will  be  made .  Defaults  to  100  if  omitted . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    """ 
 
							 
						 
					
						
							
								
									
										
										
										
											2024-06-01 06:34:41 -05:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    entrances  =  { * ( portal . name  for  portal  in  portal_mapping ) ,  " Shop " ,  " Shop Portal " } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    exits  =  { * ( portal . name  for  portal  in  portal_mapping ) ,  " Shop " ,  " Shop Portal " } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    duplicate_exits  =  True 
							 
						 
					
						
							
								
									
										
										
										
											2024-03-21 11:50:07 -04:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2024-01-12 14:32:15 -05:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								@dataclass  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								class  TunicOptions ( PerGameCommonOptions ) :  
						 
					
						
							
								
									
										
										
										
											2024-05-19 19:01:24 -04:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    start_inventory_from_pool :  StartInventoryPool 
							 
						 
					
						
							
								
									
										
										
										
											2024-01-12 14:32:15 -05:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								    sword_progression :  SwordProgression 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    start_with_sword :  StartWithSword 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    keys_behind_bosses :  KeysBehindBosses 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    ability_shuffling :  AbilityShuffling 
							 
						 
					
						
							
								
									
										
										
										
											2024-03-21 11:50:07 -04:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    shuffle_ladders :  ShuffleLadders 
							 
						 
					
						
							
								
									
										
										
										
											2024-01-12 14:32:15 -05:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								    entrance_rando :  EntranceRando 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    fixed_shop :  FixedShop 
							 
						 
					
						
							
								
									
										
										
										
											2024-03-21 11:50:07 -04:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    logic_rules :  LogicRules 
							 
						 
					
						
							
								
									
										
										
										
											2024-01-12 14:32:15 -05:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								    fool_traps :  FoolTraps 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    hexagon_quest :  HexagonQuest 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    hexagon_goal :  HexagonGoal 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    extra_hexagon_percentage :  ExtraHexagonPercentage 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    lanternless :  Lanternless 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    maskless :  Maskless 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    laurels_location :  LaurelsLocation 
							 
						 
					
						
							
								
									
										
										
										
											2024-06-03 04:44:37 -04:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    plando_connections :  TunicPlandoConnections 
							 
						 
					
						
							
								
									
										
										
										
											2024-06-01 06:34:41 -05:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								      
							 
						 
					
						
							
								
									
										
										
										
											2024-05-21 18:12:52 -04:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								tunic_option_groups  =  [  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    OptionGroup ( " Logic Options " ,  [ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        LogicRules , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        Lanternless , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        Maskless , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    ] ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								]  
						 
					
						
							
								
									
										
										
										
											2024-05-22 20:12:59 -04:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								tunic_option_presets :  Dict [ str ,  Dict [ str ,  Any ] ]  =  {  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    " Sync " :  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        " ability_shuffling " :  True , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    " Async " :  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        " progression_balancing " :  0 , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        " ability_shuffling " :  True , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        " shuffle_ladders " :  True , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        " laurels_location " :  " 10_fairies " , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    " Glace Mode " :  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        " accessibility " :  " minimal " , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        " ability_shuffling " :  True , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        " entrance_rando " :  " yes " , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        " fool_traps " :  " onslaught " , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        " logic_rules " :  " unrestricted " , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        " maskless " :  True , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        " lanternless " :  True , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								}