mirror of
				https://github.com/MarioSpore/Grinch-AP.git
				synced 2025-10-21 20:21:32 -06:00 
			
		
		
		
	The Witness: Allow setting the puzzle randomization seed yourself (#4196)
* Allow setting the puzzle randomization seed yourself * longer tooltip * Oh * Also actually have the correct values that the client will accept (lol, thanks Medic) * Update worlds/witness/options.py Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com> --------- Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
This commit is contained in:
		| @@ -80,7 +80,7 @@ class WitnessWorld(World): | ||||
|  | ||||
|     def _get_slot_data(self) -> Dict[str, Any]: | ||||
|         return { | ||||
|             "seed": self.random.randrange(0, 1000000), | ||||
|             "seed": self.options.puzzle_randomization_seed.value, | ||||
|             "victory_location": int(self.player_logic.VICTORY_LOCATION, 16), | ||||
|             "panelhex_to_id": self.player_locations.CHECK_PANELHEX_TO_ID, | ||||
|             "item_id_to_door_hexes": static_witness_items.get_item_to_door_mappings(), | ||||
|   | ||||
| @@ -401,6 +401,16 @@ class DeathLinkAmnesty(Range): | ||||
|     default = 1 | ||||
|  | ||||
|  | ||||
| class PuzzleRandomizationSeed(Range): | ||||
|     """ | ||||
|     Sigma Rando, which is the basis for all puzzle randomization in this randomizer, uses a seed from 1 to 9999999 for the puzzle randomization. | ||||
|     This option lets you set this seed yourself. | ||||
|     """ | ||||
|     range_start = 1 | ||||
|     range_end = 9999999 | ||||
|     default = "random" | ||||
|  | ||||
|  | ||||
| @dataclass | ||||
| class TheWitnessOptions(PerGameCommonOptions): | ||||
|     puzzle_randomization: PuzzleRandomization | ||||
| @@ -435,6 +445,7 @@ class TheWitnessOptions(PerGameCommonOptions): | ||||
|     laser_hints: LaserHints | ||||
|     death_link: DeathLink | ||||
|     death_link_amnesty: DeathLinkAmnesty | ||||
|     puzzle_randomization_seed: PuzzleRandomizationSeed | ||||
|     shuffle_dog: ShuffleDog | ||||
|  | ||||
|  | ||||
| @@ -483,6 +494,7 @@ witness_option_groups = [ | ||||
|         ElevatorsComeToYou, | ||||
|         DeathLink, | ||||
|         DeathLinkAmnesty, | ||||
|         PuzzleRandomizationSeed, | ||||
|     ]), | ||||
|     OptionGroup("Silly Options", [ | ||||
|         ShuffleDog, | ||||
|   | ||||
| @@ -2,7 +2,7 @@ | ||||
| Defines progression, junk and event items for The Witness | ||||
| """ | ||||
| import copy | ||||
| from typing import TYPE_CHECKING, Dict, List, Set, cast | ||||
| from typing import TYPE_CHECKING, Dict, List, Set | ||||
|  | ||||
| from BaseClasses import Item, ItemClassification, MultiWorld | ||||
|  | ||||
|   | ||||
		Reference in New Issue
	
	Block a user
	 NewSoupVi
					NewSoupVi