 942d689093
			
		
	
	942d689093
	
	
	
		
			
			* add ability to choose custom characters in STS * bump required protocol (client?) version. * fix slot data fill. * add downfall mode, as well as characters. * small change in documentation for character choice as it now uses internal ID's instead of visible titles... because other languages are a thing.
		
			
				
	
	
		
			64 lines
		
	
	
		
			1.7 KiB
		
	
	
	
		
			Python
		
	
	
	
	
	
			
		
		
	
	
			64 lines
		
	
	
		
			1.7 KiB
		
	
	
	
		
			Python
		
	
	
	
	
	
| import typing
 | |
| from Options import TextChoice, Option, Range, Toggle
 | |
| 
 | |
| 
 | |
| class Character(TextChoice):
 | |
|     """Enter the internal ID of the character to use.
 | |
| 
 | |
|       if you don't know the exact ID to enter with the mod installed go to
 | |
|      `Mods -> Archipelago Multi-world -> config` to view a list of installed modded character IDs.
 | |
| 
 | |
|      the downfall characters will only work if you have downfall installed.
 | |
| 
 | |
|      Spire Take the Wheel will have your client pick a random character from the list of all your installed characters
 | |
|      including custom ones.
 | |
| 
 | |
|      if the chosen character mod is not installed it will default back to 'The Ironclad'
 | |
|      """
 | |
|     display_name = "Character"
 | |
|     option_The_Ironclad = 0
 | |
|     option_The_Silent = 1
 | |
|     option_The_Defect = 2
 | |
|     option_The_Watcher = 3
 | |
|     option_The_Hermit = 4
 | |
|     option_The_Slime_Boss = 5
 | |
|     option_The_Guardian = 6
 | |
|     option_The_Hexaghost = 7
 | |
|     option_The_Champ = 8
 | |
|     option_The_Gremlins = 9
 | |
|     option_The_Automaton = 10
 | |
|     option_The_Snecko = 11
 | |
|     option_spire_take_the_wheel = 12
 | |
| 
 | |
| 
 | |
| class Ascension(Range):
 | |
|     """What Ascension do you wish to play with."""
 | |
|     display_name = "Ascension"
 | |
|     range_start = 0
 | |
|     range_end = 20
 | |
|     default = 0
 | |
| 
 | |
| 
 | |
| class FinalAct(Toggle):
 | |
|     """Whether you will need to collect the 3 keys and beat the final act to complete the game."""
 | |
|     display_name = "Final Act"
 | |
|     option_true = 1
 | |
|     option_false = 0
 | |
|     default = 0
 | |
| 
 | |
| 
 | |
| class Downfall(Toggle):
 | |
|     """When Downfall is Installed this will switch the played mode to Downfall"""
 | |
|     display_name = "Downfall"
 | |
|     option_true = 1
 | |
|     option_false = 0
 | |
|     default = 0
 | |
| 
 | |
| 
 | |
| spire_options: typing.Dict[str, type(Option)] = {
 | |
|     "character": Character,
 | |
|     "ascension": Ascension,
 | |
|     "final_act": FinalAct,
 | |
|     "downfall": Downfall,
 | |
| }
 |