Kingdom Hearts: Implement New Game (#3201)
* Added Final Ansem Goal
* Update __init__.py
* Update Rules.py
* New EotW logic
* Update __init__.py
* Update __init__.py
* Update Items.py
* Update Rules.py
* Rename Location to be more meaningful, logic fixes
* Removed Aerith locations
* Change to allow randomized keyblade stats
* Fixed incorrect option description.  Fixed victory locations for alternative win condition settings
* Commit
* Lots of changes
* Fixes
* Fixes
* Update Rules.py
* Update Rules.py
* Update Rules.py
* Update Rules.py
* Fixes
* Update Rules.py
* Update Rules.py
* Update Options.py
* Old Book is not required
* Added Jungle Slider
* Add Cid Check
* Add Wonderland Book Check
* Add OC Green Trinity
* Add Inferno Band Event
* Add Kurt Zisa Zantetsuken and Unknown EXP Necklace checks
* Update Locations.py
* Fix Final Ansem Goal
* Update __init__.py
* Update __init__.py
* Add options to exclude super bosses and 100 acre wood
* Fix puppies trp, remove cid check
* Fix 100 Acre Wood Option
* Material to Empty Bottle
* Fixed rules, location names, etc
* Fix super bosses
* Add item + location groups, level sanity
* Fix location and item group names
* Add Bad Starting Weapons Option
* Logic Error for 100 Acre Wood
* Update Rules.py
* Update __init__.py
* Fixes related to randomized keyblade stats and super bosses
* Credits and Fixes
* Logic fixes, location name group changes
* Update Options.py
* Update worlds/kh1/__init__.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update worlds/kh1/__init__.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update worlds/kh1/docs/kh1_en.md
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update worlds/kh1/docs/en_Kingdom Hearts.md
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update .gitignore
* Update CODEOWNERS
* Update docs/CODEOWNERS
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Fixed Atlantica item group name
* Update CODEOWNERS
* Update Client.py
* Update Items.py
* Update __init__.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update Rules.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update Rules.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update Rules.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update worlds/kh1/Rules.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update worlds/kh1/Rules.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update worlds/kh1/Rules.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Fixed report group name
* Fixes for PR
* Update Options.py
* Push changes for making the Final Rest Door appear, few option fixes
* Update Rules.py
* Website formatting, 0 min for reports, option description typo
* Create KH1Client.py
* Update worlds/kh1/docs/kh1_en.md
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update Options.py
* Update Options.py
* Update Rules.py
* Update Rules.py
* Update Rules.py
* Add Donald and Goofy Death Link
* Add fight logic for optional bosses
* Update __init__.py
* Update Options.py
* Update worlds/kh1/Options.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update Client.py
* Update kh1_en.md
* Update __init__.py
* Cleaning up for PR
* Update Client.py
* Added event locations for vanilla items
* Add proper location groups and auto hint synth shop items when entering
* so many changes
* Update Rules.py
* fixed oathkeeper and crabclaw logic
* Update Rules.py
* Update Rules.py
* Update Rules.py
* Update Rules.py
* Update en_Kingdom Hearts.md
* Update en_Kingdom Hearts.md
* fixing text
* Update kh1_en.md
* Addition of new key items
* Update Regions.py
* Push for start item from pool test
* Update worlds/kh1/Options.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Document update
* Update Rules.py
* Added starting world range and final rest goal option
* Update kh1_en.md
* Update en_Kingdom Hearts.md
* Update __init__.py
* Update __init__.py
* Clean up options descriptions
* Update worlds/kh1/__init__.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update worlds/kh1/Options.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update worlds/kh1/__init__.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update worlds/kh1/__init__.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update worlds/kh1/__init__.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update worlds/kh1/Rules.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update worlds/kh1/Rules.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update worlds/kh1/Client.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Fix grammar in document
* Update __init__.py
* Update worlds/kh1/__init__.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Removed return type
* Update __init__.py
* Update __init__.py
* Update worlds/kh1/__init__.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update worlds/kh1/__init__.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update __init__.py
* Fix missing i replacement, rework set rules to use "self" instead of a million arguments
* Update KH1Client.py
Co-authored-by: Doug Hoskisson <beauxq@users.noreply.github.com>
* Reformat rules, fix bug with exp mult, add to readme
* Clean up regions, fix client
* Fix item send prompt
* Update worlds/kh1/docs/en_Kingdom Hearts.md
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/docs/en_Kingdom Hearts.md
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/__init__.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/__init__.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/__init__.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/docs/en_Kingdom Hearts.md
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/docs/en_Kingdom Hearts.md
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/docs/en_Kingdom Hearts.md
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/docs/en_Kingdom Hearts.md
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/docs/en_Kingdom Hearts.md
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/docs/kh1_en.md
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/docs/kh1_en.md
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/docs/kh1_en.md
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/docs/kh1_en.md
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/test/test_goal.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Options.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Options.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Options.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Options.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Options.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Options.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Options.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Items.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Locations.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Regions.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Locations.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Locations.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Items.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Regions.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Regions.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Rules.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Rules.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Rules.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Rules.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Rules.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Rules.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Rules.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Rules.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Rules.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Rules.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/__init__.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/__init__.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/__init__.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/__init__.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/__init__.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/__init__.py
Co-authored-by: Doug Hoskisson <beauxq@users.noreply.github.com>
* Fix so many suggestions
* removed junk in missable locations option
* Update __init__.py
* Change credits order
* Update en_Kingdom Hearts.md
* Standardize punctuation
* Update en_Kingdom Hearts.md
* Update en_Kingdom Hearts.md
* Update Regions.py
* Removed "disclude" options in generation fillers
* Update Rules.py
* Update __init__.py
* Fix cemetery typo
* Update worlds/kh1/Options.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Add option groups and option presets
* Update worlds/kh1/__init__.py
That's a good idea!
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Options.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Options.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Options.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Presets.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* fixed HB rule and formatting on a line in Items.py
* Fix logic bug with Geppetto's House postcard
* Update Rules.py
* Update Options.py
* Update __init__.py
* Update __init__.py
* Huge under-the-hood update for PR
* More updates for PR
* Update worlds/kh1/__init__.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Rules.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update __init__.py
---------
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
Co-authored-by: Doug Hoskisson <beauxq@users.noreply.github.com>
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
											 
										 
										
											2024-08-18 17:39:37 -05:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								from  BaseClasses  import  CollectionState  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								from  worlds . generic . Rules  import  add_rule  
						 
					
						
							
								
									
										
										
										
											2024-08-23 19:06:08 -05:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								from  math  import  ceil  
						 
					
						
							
								
									
										
											 
										
											
												Kingdom Hearts: Implement New Game (#3201)
* Added Final Ansem Goal
* Update __init__.py
* Update Rules.py
* New EotW logic
* Update __init__.py
* Update __init__.py
* Update Items.py
* Update Rules.py
* Rename Location to be more meaningful, logic fixes
* Removed Aerith locations
* Change to allow randomized keyblade stats
* Fixed incorrect option description.  Fixed victory locations for alternative win condition settings
* Commit
* Lots of changes
* Fixes
* Fixes
* Update Rules.py
* Update Rules.py
* Update Rules.py
* Update Rules.py
* Fixes
* Update Rules.py
* Update Rules.py
* Update Options.py
* Old Book is not required
* Added Jungle Slider
* Add Cid Check
* Add Wonderland Book Check
* Add OC Green Trinity
* Add Inferno Band Event
* Add Kurt Zisa Zantetsuken and Unknown EXP Necklace checks
* Update Locations.py
* Fix Final Ansem Goal
* Update __init__.py
* Update __init__.py
* Add options to exclude super bosses and 100 acre wood
* Fix puppies trp, remove cid check
* Fix 100 Acre Wood Option
* Material to Empty Bottle
* Fixed rules, location names, etc
* Fix super bosses
* Add item + location groups, level sanity
* Fix location and item group names
* Add Bad Starting Weapons Option
* Logic Error for 100 Acre Wood
* Update Rules.py
* Update __init__.py
* Fixes related to randomized keyblade stats and super bosses
* Credits and Fixes
* Logic fixes, location name group changes
* Update Options.py
* Update worlds/kh1/__init__.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update worlds/kh1/__init__.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update worlds/kh1/docs/kh1_en.md
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update worlds/kh1/docs/en_Kingdom Hearts.md
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update .gitignore
* Update CODEOWNERS
* Update docs/CODEOWNERS
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Fixed Atlantica item group name
* Update CODEOWNERS
* Update Client.py
* Update Items.py
* Update __init__.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update Rules.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update Rules.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update Rules.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update worlds/kh1/Rules.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update worlds/kh1/Rules.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update worlds/kh1/Rules.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Fixed report group name
* Fixes for PR
* Update Options.py
* Push changes for making the Final Rest Door appear, few option fixes
* Update Rules.py
* Website formatting, 0 min for reports, option description typo
* Create KH1Client.py
* Update worlds/kh1/docs/kh1_en.md
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update Options.py
* Update Options.py
* Update Rules.py
* Update Rules.py
* Update Rules.py
* Add Donald and Goofy Death Link
* Add fight logic for optional bosses
* Update __init__.py
* Update Options.py
* Update worlds/kh1/Options.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update Client.py
* Update kh1_en.md
* Update __init__.py
* Cleaning up for PR
* Update Client.py
* Added event locations for vanilla items
* Add proper location groups and auto hint synth shop items when entering
* so many changes
* Update Rules.py
* fixed oathkeeper and crabclaw logic
* Update Rules.py
* Update Rules.py
* Update Rules.py
* Update Rules.py
* Update en_Kingdom Hearts.md
* Update en_Kingdom Hearts.md
* fixing text
* Update kh1_en.md
* Addition of new key items
* Update Regions.py
* Push for start item from pool test
* Update worlds/kh1/Options.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Document update
* Update Rules.py
* Added starting world range and final rest goal option
* Update kh1_en.md
* Update en_Kingdom Hearts.md
* Update __init__.py
* Update __init__.py
* Clean up options descriptions
* Update worlds/kh1/__init__.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update worlds/kh1/Options.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update worlds/kh1/__init__.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update worlds/kh1/__init__.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update worlds/kh1/__init__.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update worlds/kh1/Rules.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update worlds/kh1/Rules.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update worlds/kh1/Client.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Fix grammar in document
* Update __init__.py
* Update worlds/kh1/__init__.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Removed return type
* Update __init__.py
* Update __init__.py
* Update worlds/kh1/__init__.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update worlds/kh1/__init__.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update __init__.py
* Fix missing i replacement, rework set rules to use "self" instead of a million arguments
* Update KH1Client.py
Co-authored-by: Doug Hoskisson <beauxq@users.noreply.github.com>
* Reformat rules, fix bug with exp mult, add to readme
* Clean up regions, fix client
* Fix item send prompt
* Update worlds/kh1/docs/en_Kingdom Hearts.md
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/docs/en_Kingdom Hearts.md
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/__init__.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/__init__.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/__init__.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/docs/en_Kingdom Hearts.md
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/docs/en_Kingdom Hearts.md
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/docs/en_Kingdom Hearts.md
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/docs/en_Kingdom Hearts.md
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/docs/en_Kingdom Hearts.md
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/docs/kh1_en.md
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/docs/kh1_en.md
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/docs/kh1_en.md
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/docs/kh1_en.md
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/test/test_goal.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Options.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Options.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Options.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Options.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Options.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Options.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Options.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Items.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Locations.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Regions.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Locations.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Locations.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Items.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Regions.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Regions.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Rules.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Rules.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Rules.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Rules.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Rules.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Rules.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Rules.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Rules.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Rules.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Rules.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/__init__.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/__init__.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/__init__.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/__init__.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/__init__.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/__init__.py
Co-authored-by: Doug Hoskisson <beauxq@users.noreply.github.com>
* Fix so many suggestions
* removed junk in missable locations option
* Update __init__.py
* Change credits order
* Update en_Kingdom Hearts.md
* Standardize punctuation
* Update en_Kingdom Hearts.md
* Update en_Kingdom Hearts.md
* Update Regions.py
* Removed "disclude" options in generation fillers
* Update Rules.py
* Update __init__.py
* Fix cemetery typo
* Update worlds/kh1/Options.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Add option groups and option presets
* Update worlds/kh1/__init__.py
That's a good idea!
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Options.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Options.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Options.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Presets.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* fixed HB rule and formatting on a line in Items.py
* Fix logic bug with Geppetto's House postcard
* Update Rules.py
* Update Options.py
* Update __init__.py
* Update __init__.py
* Huge under-the-hood update for PR
* More updates for PR
* Update worlds/kh1/__init__.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Rules.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update __init__.py
---------
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
Co-authored-by: Doug Hoskisson <beauxq@users.noreply.github.com>
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
											 
										 
										
											2024-08-18 17:39:37 -05:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								SINGLE_PUPPIES  =  [ " Puppy  "  +  str ( i ) . rjust ( 2 , " 0 " )  for  i  in  range ( 1 , 100 ) ]  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								TRIPLE_PUPPIES  =  [ " Puppies  "  +  str ( 3 * ( i - 1 ) + 1 ) . rjust ( 2 ,  " 0 " )  +  " - "  +  str ( 3 * ( i - 1 ) + 3 ) . rjust ( 2 ,  " 0 " )  for  i  in  range ( 1 , 34 ) ]  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								TORN_PAGES  =  [ " Torn Page  "  +  str ( i )  for  i  in  range ( 1 , 6 ) ]  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								WORLDS  =     [ " Wonderland " ,  " Olympus Coliseum " ,  " Deep Jungle " ,  " Agrabah " ,       " Monstro " ,       " Atlantica " ,  " Halloween Town " ,  " Neverland " ,   " Hollow Bastion " ,  " End of the World " ]  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								KEYBLADES  =  [ " Lady Luck " ,   " Olympia " ,           " Jungle King " ,  " Three Wishes " ,  " Wishing Star " ,  " Crabclaw " ,   " Pumpkinhead " ,     " Fairy Harp " ,  " Divine Rose " ,     " Oblivion " ]  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								def  has_x_worlds ( state :  CollectionState ,  player :  int ,  num_of_worlds :  int ,  keyblades_unlock_chests :  bool )  - >  bool :  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    worlds_acquired  =  0.0 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    for  i  in  range ( len ( WORLDS ) ) : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        if  state . has ( WORLDS [ i ] ,  player ) : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            worlds_acquired  =  worlds_acquired  +  0.5 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        if  ( state . has ( WORLDS [ i ] ,  player )  and  ( not  keyblades_unlock_chests  or  state . has ( KEYBLADES [ i ] ,  player ) ) )  or  ( state . has ( WORLDS [ i ] ,  player )  and  WORLDS [ i ]  ==  " Atlantica " ) : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            worlds_acquired  =  worlds_acquired  +  0.5 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    return  worlds_acquired  > =  num_of_worlds 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								def  has_emblems ( state :  CollectionState ,  player :  int ,  keyblades_unlock_chests :  bool )  - >  bool :  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    return  state . has_all ( { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        " Emblem Piece (Flame) " , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        " Emblem Piece (Chest) " , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        " Emblem Piece (Statue) " , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        " Emblem Piece (Fountain) " , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        " Hollow Bastion " } ,  player )  and  has_x_worlds ( state ,  player ,  5 ,  keyblades_unlock_chests ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								def  has_puppies_all ( state :  CollectionState ,  player :  int ,  puppies_required :  int )  - >  bool :  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    return  state . has ( " All Puppies " ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								def  has_puppies_triplets ( state :  CollectionState ,  player :  int ,  puppies_required :  int )  - >  bool :  
						 
					
						
							
								
									
										
										
										
											2024-08-23 19:06:08 -05:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    return  state . has_from_list_unique ( TRIPLE_PUPPIES ,  player ,  ceil ( puppies_required  /  3 ) ) 
							 
						 
					
						
							
								
									
										
											 
										
											
												Kingdom Hearts: Implement New Game (#3201)
* Added Final Ansem Goal
* Update __init__.py
* Update Rules.py
* New EotW logic
* Update __init__.py
* Update __init__.py
* Update Items.py
* Update Rules.py
* Rename Location to be more meaningful, logic fixes
* Removed Aerith locations
* Change to allow randomized keyblade stats
* Fixed incorrect option description.  Fixed victory locations for alternative win condition settings
* Commit
* Lots of changes
* Fixes
* Fixes
* Update Rules.py
* Update Rules.py
* Update Rules.py
* Update Rules.py
* Fixes
* Update Rules.py
* Update Rules.py
* Update Options.py
* Old Book is not required
* Added Jungle Slider
* Add Cid Check
* Add Wonderland Book Check
* Add OC Green Trinity
* Add Inferno Band Event
* Add Kurt Zisa Zantetsuken and Unknown EXP Necklace checks
* Update Locations.py
* Fix Final Ansem Goal
* Update __init__.py
* Update __init__.py
* Add options to exclude super bosses and 100 acre wood
* Fix puppies trp, remove cid check
* Fix 100 Acre Wood Option
* Material to Empty Bottle
* Fixed rules, location names, etc
* Fix super bosses
* Add item + location groups, level sanity
* Fix location and item group names
* Add Bad Starting Weapons Option
* Logic Error for 100 Acre Wood
* Update Rules.py
* Update __init__.py
* Fixes related to randomized keyblade stats and super bosses
* Credits and Fixes
* Logic fixes, location name group changes
* Update Options.py
* Update worlds/kh1/__init__.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update worlds/kh1/__init__.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update worlds/kh1/docs/kh1_en.md
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update worlds/kh1/docs/en_Kingdom Hearts.md
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update .gitignore
* Update CODEOWNERS
* Update docs/CODEOWNERS
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Fixed Atlantica item group name
* Update CODEOWNERS
* Update Client.py
* Update Items.py
* Update __init__.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update Rules.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update Rules.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update Rules.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update worlds/kh1/Rules.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update worlds/kh1/Rules.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update worlds/kh1/Rules.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Fixed report group name
* Fixes for PR
* Update Options.py
* Push changes for making the Final Rest Door appear, few option fixes
* Update Rules.py
* Website formatting, 0 min for reports, option description typo
* Create KH1Client.py
* Update worlds/kh1/docs/kh1_en.md
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update Options.py
* Update Options.py
* Update Rules.py
* Update Rules.py
* Update Rules.py
* Add Donald and Goofy Death Link
* Add fight logic for optional bosses
* Update __init__.py
* Update Options.py
* Update worlds/kh1/Options.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update Client.py
* Update kh1_en.md
* Update __init__.py
* Cleaning up for PR
* Update Client.py
* Added event locations for vanilla items
* Add proper location groups and auto hint synth shop items when entering
* so many changes
* Update Rules.py
* fixed oathkeeper and crabclaw logic
* Update Rules.py
* Update Rules.py
* Update Rules.py
* Update Rules.py
* Update en_Kingdom Hearts.md
* Update en_Kingdom Hearts.md
* fixing text
* Update kh1_en.md
* Addition of new key items
* Update Regions.py
* Push for start item from pool test
* Update worlds/kh1/Options.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Document update
* Update Rules.py
* Added starting world range and final rest goal option
* Update kh1_en.md
* Update en_Kingdom Hearts.md
* Update __init__.py
* Update __init__.py
* Clean up options descriptions
* Update worlds/kh1/__init__.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update worlds/kh1/Options.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update worlds/kh1/__init__.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update worlds/kh1/__init__.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update worlds/kh1/__init__.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update worlds/kh1/Rules.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update worlds/kh1/Rules.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update worlds/kh1/Client.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Fix grammar in document
* Update __init__.py
* Update worlds/kh1/__init__.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Removed return type
* Update __init__.py
* Update __init__.py
* Update worlds/kh1/__init__.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update worlds/kh1/__init__.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update __init__.py
* Fix missing i replacement, rework set rules to use "self" instead of a million arguments
* Update KH1Client.py
Co-authored-by: Doug Hoskisson <beauxq@users.noreply.github.com>
* Reformat rules, fix bug with exp mult, add to readme
* Clean up regions, fix client
* Fix item send prompt
* Update worlds/kh1/docs/en_Kingdom Hearts.md
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/docs/en_Kingdom Hearts.md
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/__init__.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/__init__.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/__init__.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/docs/en_Kingdom Hearts.md
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/docs/en_Kingdom Hearts.md
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/docs/en_Kingdom Hearts.md
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/docs/en_Kingdom Hearts.md
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/docs/en_Kingdom Hearts.md
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/docs/kh1_en.md
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/docs/kh1_en.md
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/docs/kh1_en.md
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/docs/kh1_en.md
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/test/test_goal.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Options.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Options.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Options.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Options.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Options.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Options.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Options.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Items.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Locations.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Regions.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Locations.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Locations.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Items.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Regions.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Regions.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Rules.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Rules.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Rules.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Rules.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Rules.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Rules.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Rules.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Rules.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Rules.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Rules.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/__init__.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/__init__.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/__init__.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/__init__.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/__init__.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/__init__.py
Co-authored-by: Doug Hoskisson <beauxq@users.noreply.github.com>
* Fix so many suggestions
* removed junk in missable locations option
* Update __init__.py
* Change credits order
* Update en_Kingdom Hearts.md
* Standardize punctuation
* Update en_Kingdom Hearts.md
* Update en_Kingdom Hearts.md
* Update Regions.py
* Removed "disclude" options in generation fillers
* Update Rules.py
* Update __init__.py
* Fix cemetery typo
* Update worlds/kh1/Options.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Add option groups and option presets
* Update worlds/kh1/__init__.py
That's a good idea!
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Options.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Options.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Options.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Presets.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* fixed HB rule and formatting on a line in Items.py
* Fix logic bug with Geppetto's House postcard
* Update Rules.py
* Update Options.py
* Update __init__.py
* Update __init__.py
* Huge under-the-hood update for PR
* More updates for PR
* Update worlds/kh1/__init__.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Rules.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update __init__.py
---------
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
Co-authored-by: Doug Hoskisson <beauxq@users.noreply.github.com>
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
											 
										 
										
											2024-08-18 17:39:37 -05:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								def  has_puppies_individual ( state :  CollectionState ,  player :  int ,  puppies_required :  int )  - >  bool :  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    return  state . has_from_list_unique ( SINGLE_PUPPIES ,  player ,  puppies_required ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								def  has_torn_pages ( state :  CollectionState ,  player :  int ,  pages_required :  int )  - >  bool :  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    return  state . count_from_list_unique ( TORN_PAGES ,  player )  > =  pages_required 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								def  has_all_arts ( state :  CollectionState ,  player :  int )  - >  bool :  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    return  state . has_all ( { " Fire Arts " ,  " Blizzard Arts " ,  " Thunder Arts " ,  " Cure Arts " ,  " Gravity Arts " ,  " Stop Arts " ,  " Aero Arts " } ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								def  has_all_summons ( state :  CollectionState ,  player :  int )  - >  bool :  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    return  state . has_all ( { " Simba " ,  " Bambi " ,  " Genie " ,  " Dumbo " ,  " Mushu " ,  " Tinker Bell " } ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								def  has_all_magic_lvx ( state :  CollectionState ,  player :  int ,  level )  - >  bool :  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    return  state . has_all_counts ( { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        " Progressive Fire " :  level , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        " Progressive Blizzard " :  level , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        " Progressive Thunder " :  level , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        " Progressive Cure " :  level , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        " Progressive Gravity " :  level , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        " Progressive Aero " :  level , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        " Progressive Stop " :  level } ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								def  has_offensive_magic ( state :  CollectionState ,  player :  int )  - >  bool :  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    return  state . has_any ( { " Progressive Fire " ,  " Progressive Blizzard " ,  " Progressive Thunder " ,  " Progressive Gravity " ,  " Progressive Stop " } ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								def  has_reports ( state :  CollectionState ,  player :  int ,  eotw_required_reports :  int )  - >  bool :  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    return  state . has_group_unique ( " Reports " ,  player ,  eotw_required_reports ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								def  has_final_rest_door ( state :  CollectionState ,  player :  int ,  final_rest_door_requirement :  str ,  final_rest_door_required_reports :  int ,  keyblades_unlock_chests :  bool ,  puppies_choice :  str ) :  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    if  final_rest_door_requirement  ==  " reports " : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        return  state . has_group_unique ( " Reports " ,  player ,  final_rest_door_required_reports ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    if  final_rest_door_requirement  ==  " puppies " : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        if  puppies_choice  ==  " individual " : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            return  has_puppies_individual ( state ,  player ,  99 ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        if  puppies_choice  ==  " triplets " : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            return  has_puppies_triplets ( state ,  player ,  99 ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        return  has_puppies_all ( state ,  player ,  99 ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    if  final_rest_door_requirement  ==  " postcards " : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        return  state . has ( " Postcard " ,  player ,  10 ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    if  final_rest_door_requirement  ==  " superbosses " : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        return  ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                state . has_all ( { " Olympus Coliseum " ,  " Neverland " ,  " Agrabah " ,  " Hollow Bastion " ,  " Green Trinity " ,  " Phil Cup " ,  " Pegasus Cup " ,  " Hercules Cup " ,  " Entry Pass " } ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                and  has_emblems ( state ,  player ,  keyblades_unlock_chests ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                and  has_all_magic_lvx ( state ,  player ,  2 ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                and  has_defensive_tools ( state ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                and  has_x_worlds ( state ,  player ,  7 ,  keyblades_unlock_chests ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								def  has_defensive_tools ( state :  CollectionState ,  player :  int )  - >  bool :  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    return  ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            state . has_all_counts ( { " Progressive Cure " :  2 ,  " Leaf Bracer " :  1 ,  " Dodge Roll " :  1 } ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            and  state . has_any_count ( { " Second Chance " :  1 ,  " MP Rage " :  1 ,  " Progressive Aero " :  2 } ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								def  can_dumbo_skip ( state :  CollectionState ,  player :  int )  - >  bool :  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    return  ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            state . has ( " Dumbo " ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            and  state . has_group ( " Magic " ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								def  has_oogie_manor ( state :  CollectionState ,  player :  int ,  advanced_logic :  bool )  - >  bool :  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    return  ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                state . has ( " Progressive Fire " ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                or  ( advanced_logic  and  state . has ( " High Jump " ,  player ,  2 ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                or  ( advanced_logic  and  state . has ( " High Jump " ,  player )  and  state . has ( " Progressive Glide " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								def  set_rules ( kh1world ) :  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    multiworld                        =  kh1world . multiworld 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    player                            =  kh1world . player 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    options                           =  kh1world . options 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    eotw_required_reports             =  kh1world . determine_reports_required_to_open_end_of_the_world ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    final_rest_door_required_reports  =  kh1world . determine_reports_required_to_open_final_rest_door ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    final_rest_door_requirement       =  kh1world . options . final_rest_door . current_key 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    has_puppies  =  has_puppies_individual 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    if  kh1world . options . puppies  ==  " triplets " : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        has_puppies  =  has_puppies_triplets 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    elif  kh1world . options . puppies  ==  " full " : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        has_puppies  =  has_puppies_all 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Traverse Town 1st District Candle Puzzle Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  state . has ( " Progressive Blizzard " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Traverse Town Mystical House Yellow Trinity Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            state . has ( " Progressive Fire " ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            and 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                state . has ( " Yellow Trinity " ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                or  ( options . advanced_logic  and  state . has ( " High Jump " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                or  state . has ( " High Jump " ,  player ,  2 ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Traverse Town Secret Waterway White Trinity Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  state . has ( " White Trinity " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Traverse Town Geppetto ' s House Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            state . has ( " Monstro " ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            and 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                state . has ( " High Jump " ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                or  ( options . advanced_logic  and  state . has ( " Progressive Glide " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            and  has_x_worlds ( state ,  player ,  2 ,  options . keyblades_unlock_chests ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Traverse Town Item Workshop Right Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            state . has ( " Green Trinity " ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            or  state . has ( " High Jump " ,  player ,  3 ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Traverse Town 1st District Blue Trinity Balcony Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ( state . has ( " Blue Trinity " ,  player )  and  state . has ( " Progressive Glide " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            or  ( options . advanced_logic  and  state . has ( " Progressive Glide " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Traverse Town Mystical House Glide Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                state . has ( " Progressive Glide " ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                or 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    options . advanced_logic 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    and 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                        ( state . has ( " High Jump " ,  player )  and  state . has ( " Yellow Trinity " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                        or  state . has ( " High Jump " ,  player ,  2 ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    and  state . has ( " Combo Master " ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                or 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    options . advanced_logic 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    and  state . has ( " Mermaid Kick " ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            and  state . has ( " Progressive Fire " ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Traverse Town Alleyway Behind Crates Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  state . has ( " Red Trinity " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Traverse Town Item Workshop Left Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            state . has ( " Green Trinity " ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            or  state . has ( " High Jump " ,  player ,  3 ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Wonderland Rabbit Hole Green Trinity Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  state . has ( " Green Trinity " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Wonderland Rabbit Hole Defeat Heartless 3 Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  has_x_worlds ( state ,  player ,  5 ,  options . keyblades_unlock_chests ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Wonderland Bizarre Room Green Trinity Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  state . has ( " Green Trinity " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Wonderland Queen ' s Castle Hedge Left Red Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            state . has ( " Footprints " ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            or  state . has ( " High Jump " ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            or  state . has ( " Progressive Glide " ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Wonderland Queen ' s Castle Hedge Right Blue Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            state . has ( " Footprints " ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            or  state . has ( " High Jump " ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            or  state . has ( " Progressive Glide " ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Wonderland Queen ' s Castle Hedge Right Red Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            state . has ( " Footprints " ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            or  state . has ( " High Jump " ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            or  state . has ( " Progressive Glide " ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Wonderland Lotus Forest Thunder Plant Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            state . has_all ( { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                " Progressive Thunder " , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                " Footprints " } ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Wonderland Lotus Forest Through the Painting Thunder Plant Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            state . has_all ( { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                " Progressive Thunder " , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                " Footprints " } ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Wonderland Lotus Forest Glide Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            state . has ( " Progressive Glide " ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            or 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                options . advanced_logic 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                and  ( state . has ( " High Jump " ,  player )  or  can_dumbo_skip ( state ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                and  state . has ( " Footprints " ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Wonderland Lotus Forest Corner Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                state . has ( " High Jump " ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                or  state . has ( " Progressive Glide " ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            or  options . advanced_logic 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Wonderland Bizarre Room Lamp Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  state . has ( " Footprints " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Wonderland Tea Party Garden Above Lotus Forest Entrance 2nd Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            state . has ( " Progressive Glide " ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            or 
							 
						 
					
						
							
								
									
										
										
										
											2024-11-24 11:42:21 -06:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								            ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                state . has ( " High Jump " ,  player ,  2 ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                and  state . has ( " Footprints " ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            or 
							 
						 
					
						
							
								
									
										
											 
										
											
												Kingdom Hearts: Implement New Game (#3201)
* Added Final Ansem Goal
* Update __init__.py
* Update Rules.py
* New EotW logic
* Update __init__.py
* Update __init__.py
* Update Items.py
* Update Rules.py
* Rename Location to be more meaningful, logic fixes
* Removed Aerith locations
* Change to allow randomized keyblade stats
* Fixed incorrect option description.  Fixed victory locations for alternative win condition settings
* Commit
* Lots of changes
* Fixes
* Fixes
* Update Rules.py
* Update Rules.py
* Update Rules.py
* Update Rules.py
* Fixes
* Update Rules.py
* Update Rules.py
* Update Options.py
* Old Book is not required
* Added Jungle Slider
* Add Cid Check
* Add Wonderland Book Check
* Add OC Green Trinity
* Add Inferno Band Event
* Add Kurt Zisa Zantetsuken and Unknown EXP Necklace checks
* Update Locations.py
* Fix Final Ansem Goal
* Update __init__.py
* Update __init__.py
* Add options to exclude super bosses and 100 acre wood
* Fix puppies trp, remove cid check
* Fix 100 Acre Wood Option
* Material to Empty Bottle
* Fixed rules, location names, etc
* Fix super bosses
* Add item + location groups, level sanity
* Fix location and item group names
* Add Bad Starting Weapons Option
* Logic Error for 100 Acre Wood
* Update Rules.py
* Update __init__.py
* Fixes related to randomized keyblade stats and super bosses
* Credits and Fixes
* Logic fixes, location name group changes
* Update Options.py
* Update worlds/kh1/__init__.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update worlds/kh1/__init__.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update worlds/kh1/docs/kh1_en.md
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update worlds/kh1/docs/en_Kingdom Hearts.md
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update .gitignore
* Update CODEOWNERS
* Update docs/CODEOWNERS
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Fixed Atlantica item group name
* Update CODEOWNERS
* Update Client.py
* Update Items.py
* Update __init__.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update Rules.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update Rules.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update Rules.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update worlds/kh1/Rules.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update worlds/kh1/Rules.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update worlds/kh1/Rules.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Fixed report group name
* Fixes for PR
* Update Options.py
* Push changes for making the Final Rest Door appear, few option fixes
* Update Rules.py
* Website formatting, 0 min for reports, option description typo
* Create KH1Client.py
* Update worlds/kh1/docs/kh1_en.md
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update Options.py
* Update Options.py
* Update Rules.py
* Update Rules.py
* Update Rules.py
* Add Donald and Goofy Death Link
* Add fight logic for optional bosses
* Update __init__.py
* Update Options.py
* Update worlds/kh1/Options.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update Client.py
* Update kh1_en.md
* Update __init__.py
* Cleaning up for PR
* Update Client.py
* Added event locations for vanilla items
* Add proper location groups and auto hint synth shop items when entering
* so many changes
* Update Rules.py
* fixed oathkeeper and crabclaw logic
* Update Rules.py
* Update Rules.py
* Update Rules.py
* Update Rules.py
* Update en_Kingdom Hearts.md
* Update en_Kingdom Hearts.md
* fixing text
* Update kh1_en.md
* Addition of new key items
* Update Regions.py
* Push for start item from pool test
* Update worlds/kh1/Options.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Document update
* Update Rules.py
* Added starting world range and final rest goal option
* Update kh1_en.md
* Update en_Kingdom Hearts.md
* Update __init__.py
* Update __init__.py
* Clean up options descriptions
* Update worlds/kh1/__init__.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update worlds/kh1/Options.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update worlds/kh1/__init__.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update worlds/kh1/__init__.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update worlds/kh1/__init__.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update worlds/kh1/Rules.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update worlds/kh1/Rules.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update worlds/kh1/Client.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Fix grammar in document
* Update __init__.py
* Update worlds/kh1/__init__.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Removed return type
* Update __init__.py
* Update __init__.py
* Update worlds/kh1/__init__.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update worlds/kh1/__init__.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update __init__.py
* Fix missing i replacement, rework set rules to use "self" instead of a million arguments
* Update KH1Client.py
Co-authored-by: Doug Hoskisson <beauxq@users.noreply.github.com>
* Reformat rules, fix bug with exp mult, add to readme
* Clean up regions, fix client
* Fix item send prompt
* Update worlds/kh1/docs/en_Kingdom Hearts.md
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/docs/en_Kingdom Hearts.md
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/__init__.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/__init__.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/__init__.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/docs/en_Kingdom Hearts.md
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/docs/en_Kingdom Hearts.md
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/docs/en_Kingdom Hearts.md
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/docs/en_Kingdom Hearts.md
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/docs/en_Kingdom Hearts.md
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/docs/kh1_en.md
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/docs/kh1_en.md
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/docs/kh1_en.md
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/docs/kh1_en.md
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/test/test_goal.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Options.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Options.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Options.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Options.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Options.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Options.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Options.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Items.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Locations.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Regions.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Locations.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Locations.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Items.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Regions.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Regions.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Rules.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Rules.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Rules.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Rules.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Rules.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Rules.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Rules.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Rules.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Rules.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Rules.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/__init__.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/__init__.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/__init__.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/__init__.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/__init__.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/__init__.py
Co-authored-by: Doug Hoskisson <beauxq@users.noreply.github.com>
* Fix so many suggestions
* removed junk in missable locations option
* Update __init__.py
* Change credits order
* Update en_Kingdom Hearts.md
* Standardize punctuation
* Update en_Kingdom Hearts.md
* Update en_Kingdom Hearts.md
* Update Regions.py
* Removed "disclude" options in generation fillers
* Update Rules.py
* Update __init__.py
* Fix cemetery typo
* Update worlds/kh1/Options.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Add option groups and option presets
* Update worlds/kh1/__init__.py
That's a good idea!
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Options.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Options.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Options.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Presets.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* fixed HB rule and formatting on a line in Items.py
* Fix logic bug with Geppetto's House postcard
* Update Rules.py
* Update Options.py
* Update __init__.py
* Update __init__.py
* Huge under-the-hood update for PR
* More updates for PR
* Update worlds/kh1/__init__.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Rules.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update __init__.py
---------
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
Co-authored-by: Doug Hoskisson <beauxq@users.noreply.github.com>
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
											 
										 
										
											2024-08-18 17:39:37 -05:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								            ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                options . advanced_logic 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                and  state . has_all ( { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    " High Jump " , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    " Footprints " } ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Wonderland Tea Party Garden Above Lotus Forest Entrance 1st Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            state . has ( " Progressive Glide " ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            or 
							 
						 
					
						
							
								
									
										
										
										
											2024-11-24 11:42:21 -06:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								            ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                state . has ( " High Jump " ,  player ,  2 ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                and  state . has ( " Footprints " ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            or 
							 
						 
					
						
							
								
									
										
											 
										
											
												Kingdom Hearts: Implement New Game (#3201)
* Added Final Ansem Goal
* Update __init__.py
* Update Rules.py
* New EotW logic
* Update __init__.py
* Update __init__.py
* Update Items.py
* Update Rules.py
* Rename Location to be more meaningful, logic fixes
* Removed Aerith locations
* Change to allow randomized keyblade stats
* Fixed incorrect option description.  Fixed victory locations for alternative win condition settings
* Commit
* Lots of changes
* Fixes
* Fixes
* Update Rules.py
* Update Rules.py
* Update Rules.py
* Update Rules.py
* Fixes
* Update Rules.py
* Update Rules.py
* Update Options.py
* Old Book is not required
* Added Jungle Slider
* Add Cid Check
* Add Wonderland Book Check
* Add OC Green Trinity
* Add Inferno Band Event
* Add Kurt Zisa Zantetsuken and Unknown EXP Necklace checks
* Update Locations.py
* Fix Final Ansem Goal
* Update __init__.py
* Update __init__.py
* Add options to exclude super bosses and 100 acre wood
* Fix puppies trp, remove cid check
* Fix 100 Acre Wood Option
* Material to Empty Bottle
* Fixed rules, location names, etc
* Fix super bosses
* Add item + location groups, level sanity
* Fix location and item group names
* Add Bad Starting Weapons Option
* Logic Error for 100 Acre Wood
* Update Rules.py
* Update __init__.py
* Fixes related to randomized keyblade stats and super bosses
* Credits and Fixes
* Logic fixes, location name group changes
* Update Options.py
* Update worlds/kh1/__init__.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update worlds/kh1/__init__.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update worlds/kh1/docs/kh1_en.md
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update worlds/kh1/docs/en_Kingdom Hearts.md
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update .gitignore
* Update CODEOWNERS
* Update docs/CODEOWNERS
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Fixed Atlantica item group name
* Update CODEOWNERS
* Update Client.py
* Update Items.py
* Update __init__.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update Rules.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update Rules.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update Rules.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update worlds/kh1/Rules.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update worlds/kh1/Rules.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update worlds/kh1/Rules.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Fixed report group name
* Fixes for PR
* Update Options.py
* Push changes for making the Final Rest Door appear, few option fixes
* Update Rules.py
* Website formatting, 0 min for reports, option description typo
* Create KH1Client.py
* Update worlds/kh1/docs/kh1_en.md
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update Options.py
* Update Options.py
* Update Rules.py
* Update Rules.py
* Update Rules.py
* Add Donald and Goofy Death Link
* Add fight logic for optional bosses
* Update __init__.py
* Update Options.py
* Update worlds/kh1/Options.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update Client.py
* Update kh1_en.md
* Update __init__.py
* Cleaning up for PR
* Update Client.py
* Added event locations for vanilla items
* Add proper location groups and auto hint synth shop items when entering
* so many changes
* Update Rules.py
* fixed oathkeeper and crabclaw logic
* Update Rules.py
* Update Rules.py
* Update Rules.py
* Update Rules.py
* Update en_Kingdom Hearts.md
* Update en_Kingdom Hearts.md
* fixing text
* Update kh1_en.md
* Addition of new key items
* Update Regions.py
* Push for start item from pool test
* Update worlds/kh1/Options.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Document update
* Update Rules.py
* Added starting world range and final rest goal option
* Update kh1_en.md
* Update en_Kingdom Hearts.md
* Update __init__.py
* Update __init__.py
* Clean up options descriptions
* Update worlds/kh1/__init__.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update worlds/kh1/Options.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update worlds/kh1/__init__.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update worlds/kh1/__init__.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update worlds/kh1/__init__.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update worlds/kh1/Rules.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update worlds/kh1/Rules.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update worlds/kh1/Client.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Fix grammar in document
* Update __init__.py
* Update worlds/kh1/__init__.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Removed return type
* Update __init__.py
* Update __init__.py
* Update worlds/kh1/__init__.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update worlds/kh1/__init__.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update __init__.py
* Fix missing i replacement, rework set rules to use "self" instead of a million arguments
* Update KH1Client.py
Co-authored-by: Doug Hoskisson <beauxq@users.noreply.github.com>
* Reformat rules, fix bug with exp mult, add to readme
* Clean up regions, fix client
* Fix item send prompt
* Update worlds/kh1/docs/en_Kingdom Hearts.md
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/docs/en_Kingdom Hearts.md
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/__init__.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/__init__.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/__init__.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/docs/en_Kingdom Hearts.md
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/docs/en_Kingdom Hearts.md
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/docs/en_Kingdom Hearts.md
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/docs/en_Kingdom Hearts.md
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/docs/en_Kingdom Hearts.md
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/docs/kh1_en.md
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/docs/kh1_en.md
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/docs/kh1_en.md
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/docs/kh1_en.md
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/test/test_goal.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Options.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Options.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Options.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Options.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Options.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Options.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Options.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Items.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Locations.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Regions.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Locations.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Locations.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Items.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Regions.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Regions.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Rules.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Rules.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Rules.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Rules.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Rules.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Rules.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Rules.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Rules.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Rules.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Rules.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/__init__.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/__init__.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/__init__.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/__init__.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/__init__.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/__init__.py
Co-authored-by: Doug Hoskisson <beauxq@users.noreply.github.com>
* Fix so many suggestions
* removed junk in missable locations option
* Update __init__.py
* Change credits order
* Update en_Kingdom Hearts.md
* Standardize punctuation
* Update en_Kingdom Hearts.md
* Update en_Kingdom Hearts.md
* Update Regions.py
* Removed "disclude" options in generation fillers
* Update Rules.py
* Update __init__.py
* Fix cemetery typo
* Update worlds/kh1/Options.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Add option groups and option presets
* Update worlds/kh1/__init__.py
That's a good idea!
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Options.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Options.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Options.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Presets.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* fixed HB rule and formatting on a line in Items.py
* Fix logic bug with Geppetto's House postcard
* Update Rules.py
* Update Options.py
* Update __init__.py
* Update __init__.py
* Huge under-the-hood update for PR
* More updates for PR
* Update worlds/kh1/__init__.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Rules.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update __init__.py
---------
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
Co-authored-by: Doug Hoskisson <beauxq@users.noreply.github.com>
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
											 
										 
										
											2024-08-18 17:39:37 -05:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								            ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                options . advanced_logic 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                and  state . has_all ( { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    " High Jump " , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    " Footprints " } ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Wonderland Tea Party Garden Bear and Clock Puzzle Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								           state . has ( " Footprints " ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								           or  ( options . advanced_logic  and  state . has ( " Progressive Glide " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Wonderland Tea Party Garden Across From Bizarre Room Entrance Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            state . has ( " Progressive Glide " ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            or 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                state . has ( " High Jump " ,  player ,  3 ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                and  state . has ( " Footprints " ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            or 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                options . advanced_logic 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                and  state . has_all ( { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    " High Jump " , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    " Footprints " , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    " Combo Master " } ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Wonderland Lotus Forest Through the Painting White Trinity Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            state . has_all ( { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                " White Trinity " , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                " Footprints " } ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Deep Jungle Hippo ' s Lagoon Right Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								           state . has ( " High Jump " ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								           or  state . has ( " Progressive Glide " ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								           or  options . advanced_logic 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Deep Jungle Climbing Trees Blue Trinity Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  state . has ( " Blue Trinity " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Deep Jungle Cavern of Hearts White Trinity Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            state . has_all ( { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            " White Trinity " , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            " Slides " } ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Deep Jungle Camp Blue Trinity Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  state . has ( " Blue Trinity " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Deep Jungle Waterfall Cavern Low Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  state . has ( " Slides " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Deep Jungle Waterfall Cavern Middle Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  state . has ( " Slides " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Deep Jungle Waterfall Cavern High Wall Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  state . has ( " Slides " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Deep Jungle Waterfall Cavern High Middle Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  state . has ( " Slides " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Deep Jungle Tree House Suspended Boat Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								           state . has ( " Progressive Glide " ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								           or  options . advanced_logic 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Agrabah Main Street High Above Palace Gates Entrance Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            state . has ( " High Jump " ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            or  state . has ( " Progressive Glide " ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            or  ( options . advanced_logic  and  can_dumbo_skip ( state ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Agrabah Palace Gates High Opposite Palace Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            state . has ( " High Jump " ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            or  options . advanced_logic 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Agrabah Palace Gates High Close to Palace Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                state . has_all ( { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    " High Jump " , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    " Progressive Glide " } ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                or 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    options . advanced_logic 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    and 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                        state . has ( " Combo Master " ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                        or  can_dumbo_skip ( state ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            or  state . has ( " High Jump " ,  player ,  3 ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            or  ( options . advanced_logic  and  state . has ( " Progressive Glide " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Agrabah Storage Green Trinity Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  state . has ( " Green Trinity " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Agrabah Cave of Wonders Entrance Tall Tower Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            state . has ( " Progressive Glide " ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            or  ( options . advanced_logic  and  state . has ( " Combo Master " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            or  ( options . advanced_logic  and  can_dumbo_skip ( state ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            or  state . has ( " High Jump " ,  player ,  2 ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Agrabah Cave of Wonders Bottomless Hall Pillar Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								           state . has ( " High Jump " ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								           or  state . has ( " Progressive Glide " ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								           or  options . advanced_logic 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Agrabah Cave of Wonders Silent Chamber Blue Trinity Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  state . has ( " Blue Trinity " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Agrabah Cave of Wonders Hidden Room Right Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            state . has ( " Yellow Trinity " ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            or  state . has ( " High Jump " ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            or  ( options . advanced_logic  and  state . has ( " Progressive Glide " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Agrabah Cave of Wonders Hidden Room Left Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            state . has ( " Yellow Trinity " ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            or  state . has ( " High Jump " ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            or  ( options . advanced_logic  and  state . has ( " Progressive Glide " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Agrabah Cave of Wonders Entrance White Trinity Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  state . has ( " White Trinity " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Monstro Chamber 6 Other Platform Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  ( 
							 
						 
					
						
							
								
									
										
										
										
											2024-11-24 11:42:21 -06:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								            state . has_all ( ( " High Jump " ,  " Progressive Glide " ) ,  player ) 
							 
						 
					
						
							
								
									
										
											 
										
											
												Kingdom Hearts: Implement New Game (#3201)
* Added Final Ansem Goal
* Update __init__.py
* Update Rules.py
* New EotW logic
* Update __init__.py
* Update __init__.py
* Update Items.py
* Update Rules.py
* Rename Location to be more meaningful, logic fixes
* Removed Aerith locations
* Change to allow randomized keyblade stats
* Fixed incorrect option description.  Fixed victory locations for alternative win condition settings
* Commit
* Lots of changes
* Fixes
* Fixes
* Update Rules.py
* Update Rules.py
* Update Rules.py
* Update Rules.py
* Fixes
* Update Rules.py
* Update Rules.py
* Update Options.py
* Old Book is not required
* Added Jungle Slider
* Add Cid Check
* Add Wonderland Book Check
* Add OC Green Trinity
* Add Inferno Band Event
* Add Kurt Zisa Zantetsuken and Unknown EXP Necklace checks
* Update Locations.py
* Fix Final Ansem Goal
* Update __init__.py
* Update __init__.py
* Add options to exclude super bosses and 100 acre wood
* Fix puppies trp, remove cid check
* Fix 100 Acre Wood Option
* Material to Empty Bottle
* Fixed rules, location names, etc
* Fix super bosses
* Add item + location groups, level sanity
* Fix location and item group names
* Add Bad Starting Weapons Option
* Logic Error for 100 Acre Wood
* Update Rules.py
* Update __init__.py
* Fixes related to randomized keyblade stats and super bosses
* Credits and Fixes
* Logic fixes, location name group changes
* Update Options.py
* Update worlds/kh1/__init__.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update worlds/kh1/__init__.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update worlds/kh1/docs/kh1_en.md
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update worlds/kh1/docs/en_Kingdom Hearts.md
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update .gitignore
* Update CODEOWNERS
* Update docs/CODEOWNERS
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Fixed Atlantica item group name
* Update CODEOWNERS
* Update Client.py
* Update Items.py
* Update __init__.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update Rules.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update Rules.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update Rules.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update worlds/kh1/Rules.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update worlds/kh1/Rules.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update worlds/kh1/Rules.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Fixed report group name
* Fixes for PR
* Update Options.py
* Push changes for making the Final Rest Door appear, few option fixes
* Update Rules.py
* Website formatting, 0 min for reports, option description typo
* Create KH1Client.py
* Update worlds/kh1/docs/kh1_en.md
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update Options.py
* Update Options.py
* Update Rules.py
* Update Rules.py
* Update Rules.py
* Add Donald and Goofy Death Link
* Add fight logic for optional bosses
* Update __init__.py
* Update Options.py
* Update worlds/kh1/Options.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update Client.py
* Update kh1_en.md
* Update __init__.py
* Cleaning up for PR
* Update Client.py
* Added event locations for vanilla items
* Add proper location groups and auto hint synth shop items when entering
* so many changes
* Update Rules.py
* fixed oathkeeper and crabclaw logic
* Update Rules.py
* Update Rules.py
* Update Rules.py
* Update Rules.py
* Update en_Kingdom Hearts.md
* Update en_Kingdom Hearts.md
* fixing text
* Update kh1_en.md
* Addition of new key items
* Update Regions.py
* Push for start item from pool test
* Update worlds/kh1/Options.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Document update
* Update Rules.py
* Added starting world range and final rest goal option
* Update kh1_en.md
* Update en_Kingdom Hearts.md
* Update __init__.py
* Update __init__.py
* Clean up options descriptions
* Update worlds/kh1/__init__.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update worlds/kh1/Options.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update worlds/kh1/__init__.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update worlds/kh1/__init__.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update worlds/kh1/__init__.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update worlds/kh1/Rules.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update worlds/kh1/Rules.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update worlds/kh1/Client.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Fix grammar in document
* Update __init__.py
* Update worlds/kh1/__init__.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Removed return type
* Update __init__.py
* Update __init__.py
* Update worlds/kh1/__init__.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update worlds/kh1/__init__.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update __init__.py
* Fix missing i replacement, rework set rules to use "self" instead of a million arguments
* Update KH1Client.py
Co-authored-by: Doug Hoskisson <beauxq@users.noreply.github.com>
* Reformat rules, fix bug with exp mult, add to readme
* Clean up regions, fix client
* Fix item send prompt
* Update worlds/kh1/docs/en_Kingdom Hearts.md
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/docs/en_Kingdom Hearts.md
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/__init__.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/__init__.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/__init__.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/docs/en_Kingdom Hearts.md
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/docs/en_Kingdom Hearts.md
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/docs/en_Kingdom Hearts.md
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/docs/en_Kingdom Hearts.md
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/docs/en_Kingdom Hearts.md
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/docs/kh1_en.md
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/docs/kh1_en.md
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/docs/kh1_en.md
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/docs/kh1_en.md
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/test/test_goal.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Options.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Options.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Options.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Options.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Options.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Options.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Options.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Items.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Locations.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Regions.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Locations.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Locations.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Items.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Regions.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Regions.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Rules.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Rules.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Rules.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Rules.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Rules.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Rules.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Rules.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Rules.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Rules.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Rules.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/__init__.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/__init__.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/__init__.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/__init__.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/__init__.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/__init__.py
Co-authored-by: Doug Hoskisson <beauxq@users.noreply.github.com>
* Fix so many suggestions
* removed junk in missable locations option
* Update __init__.py
* Change credits order
* Update en_Kingdom Hearts.md
* Standardize punctuation
* Update en_Kingdom Hearts.md
* Update en_Kingdom Hearts.md
* Update Regions.py
* Removed "disclude" options in generation fillers
* Update Rules.py
* Update __init__.py
* Fix cemetery typo
* Update worlds/kh1/Options.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Add option groups and option presets
* Update worlds/kh1/__init__.py
That's a good idea!
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Options.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Options.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Options.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Presets.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* fixed HB rule and formatting on a line in Items.py
* Fix logic bug with Geppetto's House postcard
* Update Rules.py
* Update Options.py
* Update __init__.py
* Update __init__.py
* Huge under-the-hood update for PR
* More updates for PR
* Update worlds/kh1/__init__.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Rules.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update __init__.py
---------
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
Co-authored-by: Doug Hoskisson <beauxq@users.noreply.github.com>
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
											 
										 
										
											2024-08-18 17:39:37 -05:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								            or  ( options . advanced_logic  and  state . has ( " Combo Master " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Monstro Chamber 6 Platform Near Chamber 5 Entrance Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            state . has ( " High Jump " ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            or  options . advanced_logic 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Monstro Chamber 6 Raised Area Near Chamber 1 Entrance Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  ( 
							 
						 
					
						
							
								
									
										
										
										
											2024-11-24 11:42:21 -06:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								            state . has_all ( ( " High Jump " ,  " Progressive Glide " ) ,  player ) 
							 
						 
					
						
							
								
									
										
											 
										
											
												Kingdom Hearts: Implement New Game (#3201)
* Added Final Ansem Goal
* Update __init__.py
* Update Rules.py
* New EotW logic
* Update __init__.py
* Update __init__.py
* Update Items.py
* Update Rules.py
* Rename Location to be more meaningful, logic fixes
* Removed Aerith locations
* Change to allow randomized keyblade stats
* Fixed incorrect option description.  Fixed victory locations for alternative win condition settings
* Commit
* Lots of changes
* Fixes
* Fixes
* Update Rules.py
* Update Rules.py
* Update Rules.py
* Update Rules.py
* Fixes
* Update Rules.py
* Update Rules.py
* Update Options.py
* Old Book is not required
* Added Jungle Slider
* Add Cid Check
* Add Wonderland Book Check
* Add OC Green Trinity
* Add Inferno Band Event
* Add Kurt Zisa Zantetsuken and Unknown EXP Necklace checks
* Update Locations.py
* Fix Final Ansem Goal
* Update __init__.py
* Update __init__.py
* Add options to exclude super bosses and 100 acre wood
* Fix puppies trp, remove cid check
* Fix 100 Acre Wood Option
* Material to Empty Bottle
* Fixed rules, location names, etc
* Fix super bosses
* Add item + location groups, level sanity
* Fix location and item group names
* Add Bad Starting Weapons Option
* Logic Error for 100 Acre Wood
* Update Rules.py
* Update __init__.py
* Fixes related to randomized keyblade stats and super bosses
* Credits and Fixes
* Logic fixes, location name group changes
* Update Options.py
* Update worlds/kh1/__init__.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update worlds/kh1/__init__.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update worlds/kh1/docs/kh1_en.md
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update worlds/kh1/docs/en_Kingdom Hearts.md
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update .gitignore
* Update CODEOWNERS
* Update docs/CODEOWNERS
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Fixed Atlantica item group name
* Update CODEOWNERS
* Update Client.py
* Update Items.py
* Update __init__.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update Rules.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update Rules.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update Rules.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update worlds/kh1/Rules.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update worlds/kh1/Rules.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update worlds/kh1/Rules.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Fixed report group name
* Fixes for PR
* Update Options.py
* Push changes for making the Final Rest Door appear, few option fixes
* Update Rules.py
* Website formatting, 0 min for reports, option description typo
* Create KH1Client.py
* Update worlds/kh1/docs/kh1_en.md
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update Options.py
* Update Options.py
* Update Rules.py
* Update Rules.py
* Update Rules.py
* Add Donald and Goofy Death Link
* Add fight logic for optional bosses
* Update __init__.py
* Update Options.py
* Update worlds/kh1/Options.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update Client.py
* Update kh1_en.md
* Update __init__.py
* Cleaning up for PR
* Update Client.py
* Added event locations for vanilla items
* Add proper location groups and auto hint synth shop items when entering
* so many changes
* Update Rules.py
* fixed oathkeeper and crabclaw logic
* Update Rules.py
* Update Rules.py
* Update Rules.py
* Update Rules.py
* Update en_Kingdom Hearts.md
* Update en_Kingdom Hearts.md
* fixing text
* Update kh1_en.md
* Addition of new key items
* Update Regions.py
* Push for start item from pool test
* Update worlds/kh1/Options.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Document update
* Update Rules.py
* Added starting world range and final rest goal option
* Update kh1_en.md
* Update en_Kingdom Hearts.md
* Update __init__.py
* Update __init__.py
* Clean up options descriptions
* Update worlds/kh1/__init__.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update worlds/kh1/Options.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update worlds/kh1/__init__.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update worlds/kh1/__init__.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update worlds/kh1/__init__.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update worlds/kh1/Rules.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update worlds/kh1/Rules.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update worlds/kh1/Client.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Fix grammar in document
* Update __init__.py
* Update worlds/kh1/__init__.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Removed return type
* Update __init__.py
* Update __init__.py
* Update worlds/kh1/__init__.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update worlds/kh1/__init__.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update __init__.py
* Fix missing i replacement, rework set rules to use "self" instead of a million arguments
* Update KH1Client.py
Co-authored-by: Doug Hoskisson <beauxq@users.noreply.github.com>
* Reformat rules, fix bug with exp mult, add to readme
* Clean up regions, fix client
* Fix item send prompt
* Update worlds/kh1/docs/en_Kingdom Hearts.md
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/docs/en_Kingdom Hearts.md
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/__init__.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/__init__.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/__init__.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/docs/en_Kingdom Hearts.md
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/docs/en_Kingdom Hearts.md
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/docs/en_Kingdom Hearts.md
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/docs/en_Kingdom Hearts.md
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/docs/en_Kingdom Hearts.md
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/docs/kh1_en.md
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/docs/kh1_en.md
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/docs/kh1_en.md
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/docs/kh1_en.md
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/test/test_goal.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Options.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Options.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Options.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Options.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Options.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Options.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Options.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Items.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Locations.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Regions.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Locations.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Locations.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Items.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Regions.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Regions.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Rules.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Rules.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Rules.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Rules.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Rules.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Rules.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Rules.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Rules.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Rules.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Rules.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/__init__.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/__init__.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/__init__.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/__init__.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/__init__.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/__init__.py
Co-authored-by: Doug Hoskisson <beauxq@users.noreply.github.com>
* Fix so many suggestions
* removed junk in missable locations option
* Update __init__.py
* Change credits order
* Update en_Kingdom Hearts.md
* Standardize punctuation
* Update en_Kingdom Hearts.md
* Update en_Kingdom Hearts.md
* Update Regions.py
* Removed "disclude" options in generation fillers
* Update Rules.py
* Update __init__.py
* Fix cemetery typo
* Update worlds/kh1/Options.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Add option groups and option presets
* Update worlds/kh1/__init__.py
That's a good idea!
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Options.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Options.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Options.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Presets.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* fixed HB rule and formatting on a line in Items.py
* Fix logic bug with Geppetto's House postcard
* Update Rules.py
* Update Options.py
* Update __init__.py
* Update __init__.py
* Huge under-the-hood update for PR
* More updates for PR
* Update worlds/kh1/__init__.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Rules.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update __init__.py
---------
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
Co-authored-by: Doug Hoskisson <beauxq@users.noreply.github.com>
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
											 
										 
										
											2024-08-18 17:39:37 -05:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								            or  ( options . advanced_logic  and  state . has ( " Combo Master " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Halloween Town Moonlight Hill White Trinity Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            state . has_all ( { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                " White Trinity " , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                " Forget-Me-Not " } ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Halloween Town Bridge Under Bridge " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            state . has_all ( { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                " Jack-In-The-Box " , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                " Forget-Me-Not " } ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Halloween Town Boneyard Tombstone Puzzle Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  state . has ( " Forget-Me-Not " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Halloween Town Bridge Right of Gate Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            state . has_all ( { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                " Jack-In-The-Box " , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                " Forget-Me-Not " } ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            and 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                state . has ( " Progressive Glide " ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                or  options . advanced_logic 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Halloween Town Cemetery Behind Grave Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            state . has_all ( { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                " Jack-In-The-Box " , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                " Forget-Me-Not " } ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            and  has_oogie_manor ( state ,  player ,  options . advanced_logic ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Halloween Town Cemetery By Cat Shape Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            state . has_all ( { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                " Jack-In-The-Box " , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                " Forget-Me-Not " } ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            and  has_oogie_manor ( state ,  player ,  options . advanced_logic ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Halloween Town Cemetery Between Graves Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            state . has_all ( { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                " Jack-In-The-Box " , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                " Forget-Me-Not " } ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            and  has_oogie_manor ( state ,  player ,  options . advanced_logic ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Halloween Town Oogie ' s Manor Lower Iron Cage Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            state . has_all ( { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                " Jack-In-The-Box " , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                " Forget-Me-Not " } ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            and  has_oogie_manor ( state ,  player ,  options . advanced_logic ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Halloween Town Oogie ' s Manor Upper Iron Cage Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            state . has_all ( { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                " Jack-In-The-Box " , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                " Forget-Me-Not " } ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            and  has_oogie_manor ( state ,  player ,  options . advanced_logic ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Halloween Town Oogie ' s Manor Hollow Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            state . has_all ( { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                " Jack-In-The-Box " , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                " Forget-Me-Not " } ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            and  has_oogie_manor ( state ,  player ,  options . advanced_logic ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Halloween Town Oogie ' s Manor Grounds Red Trinity Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            state . has_all ( { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                " Jack-In-The-Box " , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                " Forget-Me-Not " , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                " Red Trinity " } ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Halloween Town Guillotine Square High Tower Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								           state . has ( " High Jump " ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								           or  ( options . advanced_logic  and  can_dumbo_skip ( state ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								           or  ( options . advanced_logic  and  state . has ( " Progressive Glide " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Halloween Town Guillotine Square Pumpkin Structure Left Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                state . has ( " High Jump " ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                or  ( options . advanced_logic  and  state . has ( " Progressive Glide " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            and 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                state . has ( " Progressive Glide " ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                or  ( options . advanced_logic  and  state . has ( " Combo Master " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                or  state . has ( " High Jump " ,  player ,  2 ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Halloween Town Oogie ' s Manor Entrance Steps Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            state . has_all ( { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                " Jack-In-The-Box " , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                " Forget-Me-Not " } ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Halloween Town Oogie ' s Manor Inside Entrance Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            state . has_all ( { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                " Jack-In-The-Box " , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                " Forget-Me-Not " } ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Halloween Town Bridge Left of Gate Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            state . has_all ( { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                " Jack-In-The-Box " , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                " Forget-Me-Not " } ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            and 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                state . has ( " Progressive Glide " ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                or  state . has ( " High Jump " ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                or  options . advanced_logic 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Halloween Town Cemetery By Striped Grave Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            state . has_all ( { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                " Jack-In-The-Box " , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                " Forget-Me-Not " } ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            and  has_oogie_manor ( state ,  player ,  options . advanced_logic ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Halloween Town Guillotine Square Pumpkin Structure Right Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                state . has ( " High Jump " ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                or  ( options . advanced_logic  and  state . has ( " Progressive Glide " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            and 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                state . has ( " Progressive Glide " ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                or  ( options . advanced_logic  and  state . has ( " Combo Master " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                or  state . has ( " High Jump " ,  player ,  2 ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Olympus Coliseum Coliseum Gates Right Blue Trinity Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  state . has ( " Blue Trinity " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Olympus Coliseum Coliseum Gates Left Blue Trinity Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  state . has ( " Blue Trinity " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Olympus Coliseum Coliseum Gates White Trinity Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  state . has ( " White Trinity " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Olympus Coliseum Coliseum Gates Blizzara Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  state . has ( " Progressive Blizzard " ,  player ,  2 ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Olympus Coliseum Coliseum Gates Blizzaga Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  state . has ( " Progressive Blizzard " ,  player ,  3 ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Monstro Mouth High Platform Boat Side Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            state . has ( " High Jump " ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            or  state . has ( " Progressive Glide " ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Monstro Mouth High Platform Across from Boat Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            state . has ( " High Jump " ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            or  state . has ( " Progressive Glide " ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Monstro Mouth Green Trinity Top of Boat Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                state . has ( " High Jump " ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                or  state . has ( " Progressive Glide " ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            and  state . has ( " Green Trinity " ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Monstro Chamber 5 Platform Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  state . has ( " High Jump " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Monstro Chamber 3 Platform Above Chamber 2 Entrance Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            state . has ( " High Jump " ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            or  options . advanced_logic 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Monstro Chamber 3 Platform Near Chamber 6 Entrance Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            state . has ( " High Jump " ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            or  options . advanced_logic 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Monstro Chamber 5 Atop Barrel Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								           state . has ( " High Jump " ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								           or  options . advanced_logic 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Neverland Pirate Ship Deck White Trinity Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            state . has_all ( { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                " White Trinity " , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                " Green Trinity " } ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Neverland Pirate Ship Crows Nest Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  state . has ( " Green Trinity " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Neverland Hold Yellow Trinity Right Blue Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  state . has ( " Yellow Trinity " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Neverland Hold Yellow Trinity Left Blue Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  state . has ( " Yellow Trinity " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Neverland Cabin Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  state . has ( " Green Trinity " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Neverland Hold Flight 1st Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								           state . has ( " Green Trinity " ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								           or  state . has ( " Progressive Glide " ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								           or  state . has ( " High Jump " ,  player ,  3 ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Neverland Clock Tower Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            state . has ( " Green Trinity " ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            and  has_all_magic_lvx ( state ,  player ,  2 ) 
							 
						 
					
						
							
								
									
										
										
										
											2024-11-24 11:42:21 -06:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								            and  has_defensive_tools ( state ,  player ) 
							 
						 
					
						
							
								
									
										
											 
										
											
												Kingdom Hearts: Implement New Game (#3201)
* Added Final Ansem Goal
* Update __init__.py
* Update Rules.py
* New EotW logic
* Update __init__.py
* Update __init__.py
* Update Items.py
* Update Rules.py
* Rename Location to be more meaningful, logic fixes
* Removed Aerith locations
* Change to allow randomized keyblade stats
* Fixed incorrect option description.  Fixed victory locations for alternative win condition settings
* Commit
* Lots of changes
* Fixes
* Fixes
* Update Rules.py
* Update Rules.py
* Update Rules.py
* Update Rules.py
* Fixes
* Update Rules.py
* Update Rules.py
* Update Options.py
* Old Book is not required
* Added Jungle Slider
* Add Cid Check
* Add Wonderland Book Check
* Add OC Green Trinity
* Add Inferno Band Event
* Add Kurt Zisa Zantetsuken and Unknown EXP Necklace checks
* Update Locations.py
* Fix Final Ansem Goal
* Update __init__.py
* Update __init__.py
* Add options to exclude super bosses and 100 acre wood
* Fix puppies trp, remove cid check
* Fix 100 Acre Wood Option
* Material to Empty Bottle
* Fixed rules, location names, etc
* Fix super bosses
* Add item + location groups, level sanity
* Fix location and item group names
* Add Bad Starting Weapons Option
* Logic Error for 100 Acre Wood
* Update Rules.py
* Update __init__.py
* Fixes related to randomized keyblade stats and super bosses
* Credits and Fixes
* Logic fixes, location name group changes
* Update Options.py
* Update worlds/kh1/__init__.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update worlds/kh1/__init__.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update worlds/kh1/docs/kh1_en.md
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update worlds/kh1/docs/en_Kingdom Hearts.md
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update .gitignore
* Update CODEOWNERS
* Update docs/CODEOWNERS
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Fixed Atlantica item group name
* Update CODEOWNERS
* Update Client.py
* Update Items.py
* Update __init__.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update Rules.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update Rules.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update Rules.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update worlds/kh1/Rules.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update worlds/kh1/Rules.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update worlds/kh1/Rules.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Fixed report group name
* Fixes for PR
* Update Options.py
* Push changes for making the Final Rest Door appear, few option fixes
* Update Rules.py
* Website formatting, 0 min for reports, option description typo
* Create KH1Client.py
* Update worlds/kh1/docs/kh1_en.md
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update Options.py
* Update Options.py
* Update Rules.py
* Update Rules.py
* Update Rules.py
* Add Donald and Goofy Death Link
* Add fight logic for optional bosses
* Update __init__.py
* Update Options.py
* Update worlds/kh1/Options.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update Client.py
* Update kh1_en.md
* Update __init__.py
* Cleaning up for PR
* Update Client.py
* Added event locations for vanilla items
* Add proper location groups and auto hint synth shop items when entering
* so many changes
* Update Rules.py
* fixed oathkeeper and crabclaw logic
* Update Rules.py
* Update Rules.py
* Update Rules.py
* Update Rules.py
* Update en_Kingdom Hearts.md
* Update en_Kingdom Hearts.md
* fixing text
* Update kh1_en.md
* Addition of new key items
* Update Regions.py
* Push for start item from pool test
* Update worlds/kh1/Options.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Document update
* Update Rules.py
* Added starting world range and final rest goal option
* Update kh1_en.md
* Update en_Kingdom Hearts.md
* Update __init__.py
* Update __init__.py
* Clean up options descriptions
* Update worlds/kh1/__init__.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update worlds/kh1/Options.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update worlds/kh1/__init__.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update worlds/kh1/__init__.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update worlds/kh1/__init__.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update worlds/kh1/Rules.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update worlds/kh1/Rules.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update worlds/kh1/Client.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Fix grammar in document
* Update __init__.py
* Update worlds/kh1/__init__.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Removed return type
* Update __init__.py
* Update __init__.py
* Update worlds/kh1/__init__.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update worlds/kh1/__init__.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update __init__.py
* Fix missing i replacement, rework set rules to use "self" instead of a million arguments
* Update KH1Client.py
Co-authored-by: Doug Hoskisson <beauxq@users.noreply.github.com>
* Reformat rules, fix bug with exp mult, add to readme
* Clean up regions, fix client
* Fix item send prompt
* Update worlds/kh1/docs/en_Kingdom Hearts.md
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/docs/en_Kingdom Hearts.md
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/__init__.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/__init__.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/__init__.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/docs/en_Kingdom Hearts.md
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/docs/en_Kingdom Hearts.md
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/docs/en_Kingdom Hearts.md
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/docs/en_Kingdom Hearts.md
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/docs/en_Kingdom Hearts.md
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/docs/kh1_en.md
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/docs/kh1_en.md
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/docs/kh1_en.md
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/docs/kh1_en.md
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/test/test_goal.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Options.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Options.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Options.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Options.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Options.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Options.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Options.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Items.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Locations.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Regions.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Locations.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Locations.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Items.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Regions.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Regions.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Rules.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Rules.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Rules.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Rules.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Rules.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Rules.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Rules.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Rules.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Rules.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Rules.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/__init__.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/__init__.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/__init__.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/__init__.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/__init__.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/__init__.py
Co-authored-by: Doug Hoskisson <beauxq@users.noreply.github.com>
* Fix so many suggestions
* removed junk in missable locations option
* Update __init__.py
* Change credits order
* Update en_Kingdom Hearts.md
* Standardize punctuation
* Update en_Kingdom Hearts.md
* Update en_Kingdom Hearts.md
* Update Regions.py
* Removed "disclude" options in generation fillers
* Update Rules.py
* Update __init__.py
* Fix cemetery typo
* Update worlds/kh1/Options.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Add option groups and option presets
* Update worlds/kh1/__init__.py
That's a good idea!
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Options.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Options.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Options.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Presets.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* fixed HB rule and formatting on a line in Items.py
* Fix logic bug with Geppetto's House postcard
* Update Rules.py
* Update Options.py
* Update __init__.py
* Update __init__.py
* Huge under-the-hood update for PR
* More updates for PR
* Update worlds/kh1/__init__.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Rules.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update __init__.py
---------
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
Co-authored-by: Doug Hoskisson <beauxq@users.noreply.github.com>
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
											 
										 
										
											2024-08-18 17:39:37 -05:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								        ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Neverland Hold Flight 2nd Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								           state . has ( " Green Trinity " ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								           or  state . has ( " Progressive Glide " ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								           or  state . has ( " High Jump " ,  player ,  3 ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Neverland Hold Yellow Trinity Green Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  state . has ( " Yellow Trinity " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Neverland Captain ' s Cabin Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  state . has ( " Green Trinity " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Hollow Bastion Rising Falls Under Water 2nd Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  has_emblems ( state ,  player ,  options . keyblades_unlock_chests ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Hollow Bastion Rising Falls Floating Platform Near Save Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								           state . has ( " High Jump " ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								           or  state . has ( " Progressive Glide " ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								           or  state . has ( " Progressive Blizzard " ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								         ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Hollow Bastion Rising Falls Floating Platform Near Bubble Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            state . has ( " High Jump " ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            or  state . has ( " Progressive Glide " ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            or  state . has ( " Progressive Blizzard " ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Hollow Bastion Rising Falls High Platform Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            state . has ( " Progressive Glide " ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            or  ( state . has ( " Progressive Blizzard " ,  player )  and  has_emblems ( state ,  player ,  options . keyblades_unlock_chests ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            or  ( options . advanced_logic  and  state . has ( " Combo Master " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Hollow Bastion Castle Gates Gravity Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            state . has ( " Progressive Gravity " ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            and 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                has_emblems ( state ,  player ,  options . keyblades_unlock_chests ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                or  ( options . advanced_logic  and  state . has ( " High Jump " ,  player ,  2 )  and  state . has ( " Progressive Glide " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                or  ( options . advanced_logic  and  can_dumbo_skip ( state ,  player )  and  state . has ( " Progressive Glide " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Hollow Bastion Castle Gates Freestanding Pillar Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            has_emblems ( state ,  player ,  options . keyblades_unlock_chests ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            or  state . has ( " High Jump " ,  player ,  2 ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            or  ( options . advanced_logic  and  can_dumbo_skip ( state ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Hollow Bastion Castle Gates High Pillar Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            has_emblems ( state ,  player ,  options . keyblades_unlock_chests ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            or  state . has ( " High Jump " ,  player ,  2 ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            or  ( options . advanced_logic  and  can_dumbo_skip ( state ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Hollow Bastion Great Crest Lower Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  has_emblems ( state ,  player ,  options . keyblades_unlock_chests ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Hollow Bastion Great Crest After Battle Platform Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  has_emblems ( state ,  player ,  options . keyblades_unlock_chests ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Hollow Bastion High Tower 2nd Gravity Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            state . has ( " Progressive Gravity " ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            and  has_emblems ( state ,  player ,  options . keyblades_unlock_chests ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Hollow Bastion High Tower 1st Gravity Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            state . has ( " Progressive Gravity " ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            and  has_emblems ( state ,  player ,  options . keyblades_unlock_chests ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Hollow Bastion High Tower Above Sliding Blocks Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  has_emblems ( state ,  player ,  options . keyblades_unlock_chests ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Hollow Bastion Lift Stop Library Node After High Tower Switch Gravity Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            state . has ( " Progressive Gravity " ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            and  has_emblems ( state ,  player ,  options . keyblades_unlock_chests ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Hollow Bastion Lift Stop Library Node Gravity Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  state . has ( " Progressive Gravity " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Hollow Bastion Lift Stop Under High Tower Sliding Blocks Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            has_emblems ( state ,  player ,  options . keyblades_unlock_chests ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            and  state . has_all ( { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                " Progressive Glide " , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                " Progressive Gravity " } ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Hollow Bastion Lift Stop Outside Library Gravity Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  state . has ( " Progressive Gravity " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Hollow Bastion Lift Stop Heartless Sigil Door Gravity Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            state . has ( " Progressive Gravity " ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            and  has_emblems ( state ,  player ,  options . keyblades_unlock_chests ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Hollow Bastion Waterway Blizzard on Bubble Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ( state . has ( " Progressive Blizzard " ,  player )  and  state . has ( " High Jump " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            or  state . has ( " High Jump " ,  player ,  3 ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Hollow Bastion Grand Hall Steps Right Side Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  has_emblems ( state ,  player ,  options . keyblades_unlock_chests ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Hollow Bastion Grand Hall Oblivion Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  has_emblems ( state ,  player ,  options . keyblades_unlock_chests ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Hollow Bastion Grand Hall Left of Gate Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  has_emblems ( state ,  player ,  options . keyblades_unlock_chests ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Hollow Bastion Entrance Hall Left of Emblem Door Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            state . has ( " High Jump " ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            or 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                options . advanced_logic 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                and  can_dumbo_skip ( state ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                and  has_emblems ( state ,  player ,  options . keyblades_unlock_chests ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Hollow Bastion Rising Falls White Trinity Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  state . has ( " White Trinity " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " End of the World Giant Crevasse 5th Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  ( 
							 
						 
					
						
							
								
									
										
										
										
											2024-11-24 11:42:21 -06:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								            state . has ( " Progressive Glide " ,  player ) 
							 
						 
					
						
							
								
									
										
											 
										
											
												Kingdom Hearts: Implement New Game (#3201)
* Added Final Ansem Goal
* Update __init__.py
* Update Rules.py
* New EotW logic
* Update __init__.py
* Update __init__.py
* Update Items.py
* Update Rules.py
* Rename Location to be more meaningful, logic fixes
* Removed Aerith locations
* Change to allow randomized keyblade stats
* Fixed incorrect option description.  Fixed victory locations for alternative win condition settings
* Commit
* Lots of changes
* Fixes
* Fixes
* Update Rules.py
* Update Rules.py
* Update Rules.py
* Update Rules.py
* Fixes
* Update Rules.py
* Update Rules.py
* Update Options.py
* Old Book is not required
* Added Jungle Slider
* Add Cid Check
* Add Wonderland Book Check
* Add OC Green Trinity
* Add Inferno Band Event
* Add Kurt Zisa Zantetsuken and Unknown EXP Necklace checks
* Update Locations.py
* Fix Final Ansem Goal
* Update __init__.py
* Update __init__.py
* Add options to exclude super bosses and 100 acre wood
* Fix puppies trp, remove cid check
* Fix 100 Acre Wood Option
* Material to Empty Bottle
* Fixed rules, location names, etc
* Fix super bosses
* Add item + location groups, level sanity
* Fix location and item group names
* Add Bad Starting Weapons Option
* Logic Error for 100 Acre Wood
* Update Rules.py
* Update __init__.py
* Fixes related to randomized keyblade stats and super bosses
* Credits and Fixes
* Logic fixes, location name group changes
* Update Options.py
* Update worlds/kh1/__init__.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update worlds/kh1/__init__.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update worlds/kh1/docs/kh1_en.md
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update worlds/kh1/docs/en_Kingdom Hearts.md
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update .gitignore
* Update CODEOWNERS
* Update docs/CODEOWNERS
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Fixed Atlantica item group name
* Update CODEOWNERS
* Update Client.py
* Update Items.py
* Update __init__.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update Rules.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update Rules.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update Rules.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update worlds/kh1/Rules.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update worlds/kh1/Rules.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update worlds/kh1/Rules.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Fixed report group name
* Fixes for PR
* Update Options.py
* Push changes for making the Final Rest Door appear, few option fixes
* Update Rules.py
* Website formatting, 0 min for reports, option description typo
* Create KH1Client.py
* Update worlds/kh1/docs/kh1_en.md
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update Options.py
* Update Options.py
* Update Rules.py
* Update Rules.py
* Update Rules.py
* Add Donald and Goofy Death Link
* Add fight logic for optional bosses
* Update __init__.py
* Update Options.py
* Update worlds/kh1/Options.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update Client.py
* Update kh1_en.md
* Update __init__.py
* Cleaning up for PR
* Update Client.py
* Added event locations for vanilla items
* Add proper location groups and auto hint synth shop items when entering
* so many changes
* Update Rules.py
* fixed oathkeeper and crabclaw logic
* Update Rules.py
* Update Rules.py
* Update Rules.py
* Update Rules.py
* Update en_Kingdom Hearts.md
* Update en_Kingdom Hearts.md
* fixing text
* Update kh1_en.md
* Addition of new key items
* Update Regions.py
* Push for start item from pool test
* Update worlds/kh1/Options.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Document update
* Update Rules.py
* Added starting world range and final rest goal option
* Update kh1_en.md
* Update en_Kingdom Hearts.md
* Update __init__.py
* Update __init__.py
* Clean up options descriptions
* Update worlds/kh1/__init__.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update worlds/kh1/Options.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update worlds/kh1/__init__.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update worlds/kh1/__init__.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update worlds/kh1/__init__.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update worlds/kh1/Rules.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update worlds/kh1/Rules.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update worlds/kh1/Client.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Fix grammar in document
* Update __init__.py
* Update worlds/kh1/__init__.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Removed return type
* Update __init__.py
* Update __init__.py
* Update worlds/kh1/__init__.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update worlds/kh1/__init__.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update __init__.py
* Fix missing i replacement, rework set rules to use "self" instead of a million arguments
* Update KH1Client.py
Co-authored-by: Doug Hoskisson <beauxq@users.noreply.github.com>
* Reformat rules, fix bug with exp mult, add to readme
* Clean up regions, fix client
* Fix item send prompt
* Update worlds/kh1/docs/en_Kingdom Hearts.md
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/docs/en_Kingdom Hearts.md
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/__init__.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/__init__.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/__init__.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/docs/en_Kingdom Hearts.md
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/docs/en_Kingdom Hearts.md
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/docs/en_Kingdom Hearts.md
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/docs/en_Kingdom Hearts.md
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/docs/en_Kingdom Hearts.md
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/docs/kh1_en.md
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/docs/kh1_en.md
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/docs/kh1_en.md
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/docs/kh1_en.md
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/test/test_goal.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Options.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Options.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Options.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Options.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Options.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Options.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Options.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Items.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Locations.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Regions.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Locations.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Locations.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Items.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Regions.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Regions.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Rules.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Rules.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Rules.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Rules.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Rules.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Rules.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Rules.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Rules.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Rules.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Rules.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/__init__.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/__init__.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/__init__.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/__init__.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/__init__.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/__init__.py
Co-authored-by: Doug Hoskisson <beauxq@users.noreply.github.com>
* Fix so many suggestions
* removed junk in missable locations option
* Update __init__.py
* Change credits order
* Update en_Kingdom Hearts.md
* Standardize punctuation
* Update en_Kingdom Hearts.md
* Update en_Kingdom Hearts.md
* Update Regions.py
* Removed "disclude" options in generation fillers
* Update Rules.py
* Update __init__.py
* Fix cemetery typo
* Update worlds/kh1/Options.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Add option groups and option presets
* Update worlds/kh1/__init__.py
That's a good idea!
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Options.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Options.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Options.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Presets.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* fixed HB rule and formatting on a line in Items.py
* Fix logic bug with Geppetto's House postcard
* Update Rules.py
* Update Options.py
* Update __init__.py
* Update __init__.py
* Huge under-the-hood update for PR
* More updates for PR
* Update worlds/kh1/__init__.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Rules.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update __init__.py
---------
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
Co-authored-by: Doug Hoskisson <beauxq@users.noreply.github.com>
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
											 
										 
										
											2024-08-18 17:39:37 -05:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								        ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " End of the World Giant Crevasse 1st Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            state . has ( " High Jump " ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            or  state . has ( " Progressive Glide " ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " End of the World Giant Crevasse 4th Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                options . advanced_logic 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                and  state . has ( " High Jump " ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                and  state . has ( " Combo Master " ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            or  state . has ( " Progressive Glide " ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " End of the World World Terminus Agrabah Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            state . has ( " High Jump " ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            or 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                options . advanced_logic 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                and  can_dumbo_skip ( state ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                and  state . has ( " Progressive Glide " ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Monstro Chamber 6 White Trinity Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  state . has ( " White Trinity " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Traverse Town Kairi Secret Waterway Oathkeeper Event " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            has_emblems ( state ,  player ,  options . keyblades_unlock_chests ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            and  state . has ( " Hollow Bastion " ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            and  has_x_worlds ( state ,  player ,  5 ,  options . keyblades_unlock_chests ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Deep Jungle Defeat Sabor White Fang Event " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  state . has ( " Slides " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Deep Jungle Defeat Clayton Cure Event " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  state . has ( " Slides " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Deep Jungle Seal Keyhole Jungle King Event " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  state . has ( " Slides " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Deep Jungle Seal Keyhole Red Trinity Event " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  state . has ( " Slides " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Olympus Coliseum Defeat Cerberus Inferno Band Event " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  state . has ( " Entry Pass " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Olympus Coliseum Cloud Sonic Blade Event " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  state . has ( " Entry Pass " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Wonderland Defeat Trickmaster Blizzard Event " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  state . has ( " Footprints " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Wonderland Defeat Trickmaster Ifrit ' s Horn Event " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  state . has ( " Footprints " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Monstro Defeat Parasite Cage II Stop Event " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            state . has ( " High Jump " ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            or 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                options . advanced_logic 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                and  state . has ( " Progressive Glide " ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Halloween Town Defeat Oogie Boogie Holy Circlet Event " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            state . has_all ( { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                " Jack-In-The-Box " , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                " Forget-Me-Not " } ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            and  has_oogie_manor ( state ,  player ,  options . advanced_logic ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Halloween Town Defeat Oogie ' s Manor Gravity Event " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            state . has_all ( { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                " Jack-In-The-Box " , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                " Forget-Me-Not " } ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            and  has_oogie_manor ( state ,  player ,  options . advanced_logic ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Halloween Town Seal Keyhole Pumpkinhead Event " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            state . has_all ( { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                " Jack-In-The-Box " , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                " Forget-Me-Not " } ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            and  has_oogie_manor ( state ,  player ,  options . advanced_logic ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Neverland Defeat Anti Sora Raven ' s Claw Event " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  state . has ( " Green Trinity " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Neverland Encounter Hook Cure Event " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  state . has ( " Green Trinity " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Neverland Seal Keyhole Fairy Harp Event " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  state . has ( " Green Trinity " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Neverland Seal Keyhole Tinker Bell Event " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  state . has ( " Green Trinity " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Neverland Seal Keyhole Glide Event " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  state . has ( " Green Trinity " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Neverland Defeat Captain Hook Ars Arcanum Event " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  state . has ( " Green Trinity " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Hollow Bastion Defeat Maleficent Donald Cheer Event " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  has_emblems ( state ,  player ,  options . keyblades_unlock_chests ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Hollow Bastion Defeat Dragon Maleficent Fireglow Event " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  has_emblems ( state ,  player ,  options . keyblades_unlock_chests ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Hollow Bastion Defeat Riku II Ragnarok Event " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  has_emblems ( state ,  player ,  options . keyblades_unlock_chests ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Hollow Bastion Defeat Behemoth Omega Arts Event " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  has_emblems ( state ,  player ,  options . keyblades_unlock_chests ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Hollow Bastion Speak to Princesses Fire Event " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  has_emblems ( state ,  player ,  options . keyblades_unlock_chests ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Traverse Town Mail Postcard 01 Event " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  state . has ( " Postcard " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Traverse Town Mail Postcard 02 Event " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  state . has ( " Postcard " ,  player ,  2 ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Traverse Town Mail Postcard 03 Event " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  state . has ( " Postcard " ,  player ,  3 ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Traverse Town Mail Postcard 04 Event " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  state . has ( " Postcard " ,  player ,  4 ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Traverse Town Mail Postcard 05 Event " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  state . has ( " Postcard " ,  player ,  5 ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Traverse Town Mail Postcard 06 Event " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  state . has ( " Postcard " ,  player ,  6 ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Traverse Town Mail Postcard 07 Event " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  state . has ( " Postcard " ,  player ,  7 ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Traverse Town Mail Postcard 08 Event " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  state . has ( " Postcard " ,  player ,  8 ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Traverse Town Mail Postcard 09 Event " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  state . has ( " Postcard " ,  player ,  9 ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Traverse Town Mail Postcard 10 Event " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  state . has ( " Postcard " ,  player ,  10 ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Traverse Town Defeat Opposite Armor Aero Event " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  state . has ( " Red Trinity " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Hollow Bastion Speak with Aerith Ansem ' s Report 2 " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  has_emblems ( state ,  player ,  options . keyblades_unlock_chests ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Hollow Bastion Speak with Aerith Ansem ' s Report 4 " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  has_emblems ( state ,  player ,  options . keyblades_unlock_chests ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Hollow Bastion Defeat Maleficent Ansem ' s Report 5 " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  has_emblems ( state ,  player ,  options . keyblades_unlock_chests ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Hollow Bastion Speak with Aerith Ansem ' s Report 6 " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  has_emblems ( state ,  player ,  options . keyblades_unlock_chests ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Halloween Town Defeat Oogie Boogie Ansem ' s Report 7 " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            state . has_all ( { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                " Jack-In-The-Box " , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                " Forget-Me-Not " , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                " Progressive Fire " } ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Neverland Defeat Hook Ansem ' s Report 9 " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  state . has ( " Green Trinity " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Hollow Bastion Speak with Aerith Ansem ' s Report 10 " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  has_emblems ( state ,  player ,  options . keyblades_unlock_chests ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Traverse Town Geppetto ' s House Geppetto Reward 1 " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            state . has ( " Monstro " ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            and 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                state . has ( " High Jump " ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                or  ( options . advanced_logic  and  state . has ( " Progressive Glide " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            and  has_x_worlds ( state ,  player ,  2 ,  options . keyblades_unlock_chests ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Traverse Town Geppetto ' s House Geppetto Reward 2 " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            state . has ( " Monstro " ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            and 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                state . has ( " High Jump " ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                or  ( options . advanced_logic  and  state . has ( " Progressive Glide " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            and  has_x_worlds ( state ,  player ,  2 ,  options . keyblades_unlock_chests ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Traverse Town Geppetto ' s House Geppetto Reward 3 " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            state . has ( " Monstro " ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            and 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                state . has ( " High Jump " ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                or  ( options . advanced_logic  and  state . has ( " Progressive Glide " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            and  has_x_worlds ( state ,  player ,  2 ,  options . keyblades_unlock_chests ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Traverse Town Geppetto ' s House Geppetto Reward 4 " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            state . has ( " Monstro " ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            and 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                state . has ( " High Jump " ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                or  ( options . advanced_logic  and  state . has ( " Progressive Glide " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            and  has_x_worlds ( state ,  player ,  2 ,  options . keyblades_unlock_chests ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Traverse Town Geppetto ' s House Geppetto Reward 5 " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            state . has ( " Monstro " ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            and 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                state . has ( " High Jump " ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                or  ( options . advanced_logic  and  state . has ( " Progressive Glide " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            and  has_x_worlds ( state ,  player ,  2 ,  options . keyblades_unlock_chests ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Traverse Town Geppetto ' s House Geppetto All Summons Reward " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            state . has ( " Monstro " ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            and 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                state . has ( " High Jump " ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                or  ( options . advanced_logic  and  state . has ( " Progressive Glide " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            and  has_all_summons ( state ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            and  has_x_worlds ( state ,  player ,  2 ,  options . keyblades_unlock_chests ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Traverse Town Geppetto ' s House Talk to Pinocchio " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            state . has ( " Monstro " ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            and 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                state . has ( " High Jump " ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                or  ( options . advanced_logic  and  state . has ( " Progressive Glide " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            and  has_x_worlds ( state ,  player ,  2 ,  options . keyblades_unlock_chests ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Traverse Town Magician ' s Study Obtained All Arts Items " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            has_all_magic_lvx ( state ,  player ,  1 ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            and  has_all_arts ( state ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            and  has_x_worlds ( state ,  player ,  7 ,  options . keyblades_unlock_chests ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Traverse Town Magician ' s Study Obtained All LV1 Magic " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  has_all_magic_lvx ( state ,  player ,  1 ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Traverse Town Magician ' s Study Obtained All LV3 Magic " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  has_all_magic_lvx ( state ,  player ,  3 ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Traverse Town Piano Room Return 10 Puppies " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  has_puppies ( state ,  player ,  10 ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Traverse Town Piano Room Return 20 Puppies " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  has_puppies ( state ,  player ,  20 ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Traverse Town Piano Room Return 30 Puppies " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  has_puppies ( state ,  player ,  30 ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Traverse Town Piano Room Return 40 Puppies " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  has_puppies ( state ,  player ,  40 ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Traverse Town Piano Room Return 50 Puppies Reward 1 " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  has_puppies ( state ,  player ,  50 ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Traverse Town Piano Room Return 50 Puppies Reward 2 " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  has_puppies ( state ,  player ,  50 ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Traverse Town Piano Room Return 60 Puppies " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  has_puppies ( state ,  player ,  60 ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Traverse Town Piano Room Return 70 Puppies " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  has_puppies ( state ,  player ,  70 ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Traverse Town Piano Room Return 80 Puppies " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  has_puppies ( state ,  player ,  80 ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Traverse Town Piano Room Return 90 Puppies " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  has_puppies ( state ,  player ,  90 ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Traverse Town Piano Room Return 99 Puppies Reward 1 " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  has_puppies ( state ,  player ,  99 ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Traverse Town Piano Room Return 99 Puppies Reward 2 " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  has_puppies ( state ,  player ,  99 ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Neverland Hold Aero Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  state . has ( " Yellow Trinity " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Deep Jungle Camp Hi-Potion Experiment " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  state . has ( " Progressive Fire " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Deep Jungle Camp Ether Experiment " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  state . has ( " Progressive Blizzard " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Deep Jungle Camp Replication Experiment " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  state . has ( " Progressive Blizzard " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Deep Jungle Cliff Save Gorillas " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  state . has ( " Slides " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Deep Jungle Tree House Save Gorillas " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  state . has ( " Slides " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Deep Jungle Camp Save Gorillas " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  state . has ( " Slides " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Deep Jungle Bamboo Thicket Save Gorillas " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  state . has ( " Slides " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Deep Jungle Climbing Trees Save Gorillas " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  state . has ( " Slides " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Deep Jungle Jungle Slider 10 Fruits " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  state . has ( " Slides " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Deep Jungle Jungle Slider 20 Fruits " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  state . has ( " Slides " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Deep Jungle Jungle Slider 30 Fruits " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  state . has ( " Slides " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Deep Jungle Jungle Slider 40 Fruits " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  state . has ( " Slides " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Deep Jungle Jungle Slider 50 Fruits " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  state . has ( " Slides " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Wonderland Bizarre Room Read Book " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  state . has ( " Footprints " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Olympus Coliseum Coliseum Gates Green Trinity " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  state . has ( " Green Trinity " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Olympus Coliseum Coliseum Gates Hero ' s License Event " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  state . has ( " Entry Pass " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Deep Jungle Cavern of Hearts Navi-G Piece Event " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  state . has ( " Slides " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Wonderland Bizarre Room Navi-G Piece Event " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  state . has ( " Footprints " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Traverse Town Synth Log " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            state . has ( " Empty Bottle " ,  player ,  6 ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            and 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                state . has ( " Green Trinity " ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                or  state . has ( " High Jump " ,  player ,  3 ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Traverse Town Synth Cloth " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            state . has ( " Empty Bottle " ,  player ,  6 ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            and 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                state . has ( " Green Trinity " ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                or  state . has ( " High Jump " ,  player ,  3 ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Traverse Town Synth Rope " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            state . has ( " Empty Bottle " ,  player ,  6 ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            and 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                state . has ( " Green Trinity " ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                or  state . has ( " High Jump " ,  player ,  3 ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Traverse Town Synth Seagull Egg " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            state . has ( " Empty Bottle " ,  player ,  6 ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            and 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                state . has ( " Green Trinity " ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                or  state . has ( " High Jump " ,  player ,  3 ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Traverse Town Synth Fish " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            state . has ( " Empty Bottle " ,  player ,  6 ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            and 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                state . has ( " Green Trinity " ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                or  state . has ( " High Jump " ,  player ,  3 ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Traverse Town Synth Mushroom " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            state . has ( " Empty Bottle " ,  player ,  6 ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            and 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                state . has ( " Green Trinity " ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                or  state . has ( " High Jump " ,  player ,  3 ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Traverse Town Gizmo Shop Postcard 1 " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  state . has ( " Progressive Thunder " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Traverse Town Gizmo Shop Postcard 2 " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  state . has ( " Progressive Thunder " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Traverse Town Item Workshop Postcard " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            state . has ( " Green Trinity " ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            or  state . has ( " High Jump " ,  player ,  3 ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Traverse Town Geppetto ' s House Postcard " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            state . has ( " Monstro " ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            and 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                state . has ( " High Jump " ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                or  ( options . advanced_logic  and  state . has ( " Progressive Glide " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            and  has_x_worlds ( state ,  player ,  2 ,  options . keyblades_unlock_chests ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Hollow Bastion Entrance Hall Emblem Piece (Flame) " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                state . has ( " Theon Vol. 6 " ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                or  state . has ( " High Jump " ,  player ,  3 ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                or  has_emblems ( state ,  player ,  options . keyblades_unlock_chests ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            and  state . has ( " Progressive Fire " ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            and 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                state . has ( " High Jump " ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                or  state . has ( " Progressive Glide " ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                or  state . has ( " Progressive Thunder " ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                or  options . advanced_logic 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Hollow Bastion Entrance Hall Emblem Piece (Chest) " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            state . has ( " Theon Vol. 6 " ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            or  state . has ( " High Jump " ,  player ,  3 ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            or  has_emblems ( state ,  player ,  options . keyblades_unlock_chests ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Hollow Bastion Entrance Hall Emblem Piece (Statue) " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                state . has ( " Theon Vol. 6 " ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                or  state . has ( " High Jump " ,  player ,  3 ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                or  has_emblems ( state ,  player ,  options . keyblades_unlock_chests ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            and  state . has ( " Red Trinity " ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Hollow Bastion Entrance Hall Emblem Piece (Fountain) " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            state . has ( " Theon Vol. 6 " ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            or  state . has ( " High Jump " ,  player ,  3 ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            or  has_emblems ( state ,  player ,  options . keyblades_unlock_chests ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Hollow Bastion Library Speak to Belle Divine Rose " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  has_emblems ( state ,  player ,  options . keyblades_unlock_chests ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_location ( " Hollow Bastion Library Speak to Aerith Cure " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  has_emblems ( state ,  player ,  options . keyblades_unlock_chests ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    if  options . hundred_acre_wood : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " 100 Acre Wood Bouncing Spot Left Cliff Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                has_torn_pages ( state ,  player ,  4 ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                and 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    state . has ( " High Jump " ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    or  state . has ( " Progressive Glide " ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " 100 Acre Wood Bouncing Spot Right Tree Alcove Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                has_torn_pages ( state ,  player ,  4 ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                and 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    state . has ( " High Jump " ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    or  state . has ( " Progressive Glide " ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " 100 Acre Wood Bouncing Spot Under Giant Pot Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  has_torn_pages ( state ,  player ,  4 ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " 100 Acre Wood Bouncing Spot Turn in Rare Nut 1 " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  has_torn_pages ( state ,  player ,  4 ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " 100 Acre Wood Bouncing Spot Turn in Rare Nut 2 " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                has_torn_pages ( state ,  player ,  4 ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                and 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    state . has ( " High Jump " ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    or  state . has ( " Progressive Glide " ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " 100 Acre Wood Bouncing Spot Turn in Rare Nut 3 " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                has_torn_pages ( state ,  player ,  4 ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                and 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    state . has ( " High Jump " ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    or  state . has ( " Progressive Glide " ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " 100 Acre Wood Bouncing Spot Turn in Rare Nut 4 " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                has_torn_pages ( state ,  player ,  4 ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                and 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    state . has ( " High Jump " ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    or  state . has ( " Progressive Glide " ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " 100 Acre Wood Bouncing Spot Turn in Rare Nut 5 " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                has_torn_pages ( state ,  player ,  4 ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                and 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    state . has ( " High Jump " ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    or  state . has ( " Progressive Glide " ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " 100 Acre Wood Pooh ' s House Owl Cheer " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  has_torn_pages ( state ,  player ,  5 ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " 100 Acre Wood Convert Torn Page 1 " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  has_torn_pages ( state ,  player ,  1 ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " 100 Acre Wood Convert Torn Page 2 " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  has_torn_pages ( state ,  player ,  2 ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " 100 Acre Wood Convert Torn Page 3 " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  has_torn_pages ( state ,  player ,  3 ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " 100 Acre Wood Convert Torn Page 4 " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  has_torn_pages ( state ,  player ,  4 ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " 100 Acre Wood Convert Torn Page 5 " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  has_torn_pages ( state ,  player ,  5 ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " 100 Acre Wood Pooh ' s House Start Fire " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  has_torn_pages ( state ,  player ,  3 ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " 100 Acre Wood Bouncing Spot Break Log " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  has_torn_pages ( state ,  player ,  4 ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " 100 Acre Wood Bouncing Spot Fall Through Top of Tree Next to Pooh " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                has_torn_pages ( state ,  player ,  4 ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                and 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    state . has ( " High Jump " ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    or  state . has ( " Progressive Glide " ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    if  options . atlantica : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Atlantica Ursula ' s Lair Use Fire on Urchin Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                state . has_all ( { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    " Progressive Fire " , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    " Crystal Trident " } ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Atlantica Triton ' s Palace White Trinity Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " White Trinity " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Atlantica Defeat Ursula I Mermaid Kick Event " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                has_offensive_magic ( state ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                and  state . has ( " Crystal Trident " ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Atlantica Defeat Ursula II Thunder Event " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                state . has ( " Mermaid Kick " ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                and  has_offensive_magic ( state ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                and  state . has ( " Crystal Trident " ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Atlantica Seal Keyhole Crabclaw Event " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                state . has ( " Mermaid Kick " ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                and  has_offensive_magic ( state ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                and  state . has ( " Crystal Trident " ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Atlantica Undersea Gorge Blizzard Clam " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Progressive Blizzard " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Atlantica Undersea Valley Fire Clam " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Progressive Fire " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Atlantica Triton ' s Palace Thunder Clam " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Progressive Thunder " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Atlantica Cavern Nook Clam " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Crystal Trident " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Atlantica Defeat Ursula II Ansem ' s Report 3 " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                state . has_all ( { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    " Mermaid Kick " , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    " Crystal Trident " } ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                and  has_offensive_magic ( state ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    if  options . cups : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Olympus Coliseum Defeat Hades Ansem ' s Report 8 " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                state . has_all ( { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    " Phil Cup " , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    " Pegasus Cup " , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    " Hercules Cup " , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    " Entry Pass " } ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                and  has_x_worlds ( state ,  player ,  7 ,  options . keyblades_unlock_chests ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                and  has_defensive_tools ( state ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Complete Phil Cup " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                state . has_all ( { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    " Phil Cup " , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    " Entry Pass " } ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Complete Phil Cup Solo " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                state . has_all ( { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    " Phil Cup " , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    " Entry Pass " } ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Complete Phil Cup Time Trial " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                state . has_all ( { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    " Phil Cup " , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    " Entry Pass " } ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Complete Pegasus Cup " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                state . has_all ( { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    " Pegasus Cup " , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    " Entry Pass " } ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Complete Pegasus Cup Solo " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                state . has_all ( { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    " Pegasus Cup " , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    " Entry Pass " } ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Complete Pegasus Cup Time Trial " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                state . has_all ( { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    " Pegasus Cup " , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    " Entry Pass " } ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Complete Hercules Cup " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                state . has_all ( { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    " Hercules Cup " , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    " Entry Pass " } ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                and  has_x_worlds ( state ,  player ,  4 ,  options . keyblades_unlock_chests ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Complete Hercules Cup Solo " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                state . has_all ( { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    " Hercules Cup " , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    " Entry Pass " } ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                and  has_x_worlds ( state ,  player ,  4 ,  options . keyblades_unlock_chests ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Complete Hercules Cup Time Trial " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                state . has_all ( { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    " Hercules Cup " , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    " Entry Pass " } ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                and  has_x_worlds ( state ,  player ,  4 ,  options . keyblades_unlock_chests ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Complete Hades Cup " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                state . has_all ( { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    " Phil Cup " , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    " Pegasus Cup " , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    " Hercules Cup " , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    " Entry Pass " } ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                and  has_x_worlds ( state ,  player ,  7 ,  options . keyblades_unlock_chests ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                and  has_defensive_tools ( state ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Complete Hades Cup Solo " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                state . has_all ( { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    " Phil Cup " , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    " Pegasus Cup " , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    " Hercules Cup " , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    " Entry Pass " } ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                and  has_x_worlds ( state ,  player ,  7 ,  options . keyblades_unlock_chests ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                and  has_defensive_tools ( state ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Complete Hades Cup Time Trial " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                state . has_all ( { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    " Phil Cup " , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    " Pegasus Cup " , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    " Hercules Cup " , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    " Entry Pass " } ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                and  has_x_worlds ( state ,  player ,  7 ,  options . keyblades_unlock_chests ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                and  has_defensive_tools ( state ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Hades Cup Defeat Cloud and Leon Event " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                state . has_all ( { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    " Phil Cup " , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    " Pegasus Cup " , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    " Hercules Cup " , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    " Entry Pass " } ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                and  has_x_worlds ( state ,  player ,  7 ,  options . keyblades_unlock_chests ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                and  has_defensive_tools ( state ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Hades Cup Defeat Yuffie Event " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                state . has_all ( { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    " Phil Cup " , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    " Pegasus Cup " , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    " Hercules Cup " , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    " Entry Pass " } ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                and  has_x_worlds ( state ,  player ,  7 ,  options . keyblades_unlock_chests ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                and  has_defensive_tools ( state ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Hades Cup Defeat Cerberus Event " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                state . has_all ( { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    " Phil Cup " , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    " Pegasus Cup " , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    " Hercules Cup " , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    " Entry Pass " } ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                and  has_x_worlds ( state ,  player ,  7 ,  options . keyblades_unlock_chests ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                and  has_defensive_tools ( state ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Hades Cup Defeat Behemoth Event " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                state . has_all ( { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    " Phil Cup " , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    " Pegasus Cup " , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    " Hercules Cup " , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    " Entry Pass " } ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                and  has_x_worlds ( state ,  player ,  7 ,  options . keyblades_unlock_chests ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                and  has_defensive_tools ( state ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Hades Cup Defeat Hades Event " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                state . has_all ( { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    " Phil Cup " , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    " Pegasus Cup " , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    " Hercules Cup " , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    " Entry Pass " } ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                and  has_x_worlds ( state ,  player ,  7 ,  options . keyblades_unlock_chests ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                and  has_defensive_tools ( state ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Hercules Cup Defeat Cloud Event " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                state . has_all ( { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    " Hercules Cup " , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    " Entry Pass " } ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                and  has_x_worlds ( state ,  player ,  4 ,  options . keyblades_unlock_chests ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Hercules Cup Yellow Trinity Event " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                state . has_all ( { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    " Hercules Cup " , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    " Entry Pass " } ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                and  has_x_worlds ( state ,  player ,  4 ,  options . keyblades_unlock_chests ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Olympus Coliseum Defeat Ice Titan Diamond Dust Event " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                state . has_all ( { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    " Phil Cup " , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    " Pegasus Cup " , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    " Hercules Cup " , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    " Entry Pass " , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    " Guard " } ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                and  has_x_worlds ( state ,  player ,  7 ,  options . keyblades_unlock_chests ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                and  has_defensive_tools ( state ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Olympus Coliseum Gates Purple Jar After Defeating Hades " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                state . has_all ( { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    " Phil Cup " , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    " Pegasus Cup " , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    " Hercules Cup " , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    " Entry Pass " } ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                and  has_x_worlds ( state ,  player ,  7 ,  options . keyblades_unlock_chests ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                and  has_defensive_tools ( state ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Olympus Coliseum Olympia Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                state . has_all ( { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    " Phil Cup " , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    " Pegasus Cup " , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    " Hercules Cup " , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    " Entry Pass " } ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                and  has_x_worlds ( state ,  player ,  4 ,  options . keyblades_unlock_chests ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    if  options . super_bosses : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Neverland Defeat Phantom Stop Event " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                state . has ( " Green Trinity " ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                and  has_all_magic_lvx ( state ,  player ,  2 ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                and  has_defensive_tools ( state ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                and  has_emblems ( state ,  player ,  options . keyblades_unlock_chests ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Agrabah Defeat Kurt Zisa Ansem ' s Report 11 " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                has_emblems ( state ,  player ,  options . keyblades_unlock_chests ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                and  has_x_worlds ( state ,  player ,  7 ,  options . keyblades_unlock_chests ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                and  has_defensive_tools ( state ,  player ) 
							 
						 
					
						
							
								
									
										
										
										
											2024-11-24 11:42:21 -06:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								                and  state . has ( " Progressive Blizzard " ,  player ,  3 ) 
							 
						 
					
						
							
								
									
										
											 
										
											
												Kingdom Hearts: Implement New Game (#3201)
* Added Final Ansem Goal
* Update __init__.py
* Update Rules.py
* New EotW logic
* Update __init__.py
* Update __init__.py
* Update Items.py
* Update Rules.py
* Rename Location to be more meaningful, logic fixes
* Removed Aerith locations
* Change to allow randomized keyblade stats
* Fixed incorrect option description.  Fixed victory locations for alternative win condition settings
* Commit
* Lots of changes
* Fixes
* Fixes
* Update Rules.py
* Update Rules.py
* Update Rules.py
* Update Rules.py
* Fixes
* Update Rules.py
* Update Rules.py
* Update Options.py
* Old Book is not required
* Added Jungle Slider
* Add Cid Check
* Add Wonderland Book Check
* Add OC Green Trinity
* Add Inferno Band Event
* Add Kurt Zisa Zantetsuken and Unknown EXP Necklace checks
* Update Locations.py
* Fix Final Ansem Goal
* Update __init__.py
* Update __init__.py
* Add options to exclude super bosses and 100 acre wood
* Fix puppies trp, remove cid check
* Fix 100 Acre Wood Option
* Material to Empty Bottle
* Fixed rules, location names, etc
* Fix super bosses
* Add item + location groups, level sanity
* Fix location and item group names
* Add Bad Starting Weapons Option
* Logic Error for 100 Acre Wood
* Update Rules.py
* Update __init__.py
* Fixes related to randomized keyblade stats and super bosses
* Credits and Fixes
* Logic fixes, location name group changes
* Update Options.py
* Update worlds/kh1/__init__.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update worlds/kh1/__init__.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update worlds/kh1/docs/kh1_en.md
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update worlds/kh1/docs/en_Kingdom Hearts.md
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update .gitignore
* Update CODEOWNERS
* Update docs/CODEOWNERS
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Fixed Atlantica item group name
* Update CODEOWNERS
* Update Client.py
* Update Items.py
* Update __init__.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update Rules.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update Rules.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update Rules.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update worlds/kh1/Rules.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update worlds/kh1/Rules.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update worlds/kh1/Rules.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Fixed report group name
* Fixes for PR
* Update Options.py
* Push changes for making the Final Rest Door appear, few option fixes
* Update Rules.py
* Website formatting, 0 min for reports, option description typo
* Create KH1Client.py
* Update worlds/kh1/docs/kh1_en.md
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update Options.py
* Update Options.py
* Update Rules.py
* Update Rules.py
* Update Rules.py
* Add Donald and Goofy Death Link
* Add fight logic for optional bosses
* Update __init__.py
* Update Options.py
* Update worlds/kh1/Options.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update Client.py
* Update kh1_en.md
* Update __init__.py
* Cleaning up for PR
* Update Client.py
* Added event locations for vanilla items
* Add proper location groups and auto hint synth shop items when entering
* so many changes
* Update Rules.py
* fixed oathkeeper and crabclaw logic
* Update Rules.py
* Update Rules.py
* Update Rules.py
* Update Rules.py
* Update en_Kingdom Hearts.md
* Update en_Kingdom Hearts.md
* fixing text
* Update kh1_en.md
* Addition of new key items
* Update Regions.py
* Push for start item from pool test
* Update worlds/kh1/Options.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Document update
* Update Rules.py
* Added starting world range and final rest goal option
* Update kh1_en.md
* Update en_Kingdom Hearts.md
* Update __init__.py
* Update __init__.py
* Clean up options descriptions
* Update worlds/kh1/__init__.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update worlds/kh1/Options.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update worlds/kh1/__init__.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update worlds/kh1/__init__.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update worlds/kh1/__init__.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update worlds/kh1/Rules.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update worlds/kh1/Rules.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update worlds/kh1/Client.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Fix grammar in document
* Update __init__.py
* Update worlds/kh1/__init__.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Removed return type
* Update __init__.py
* Update __init__.py
* Update worlds/kh1/__init__.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update worlds/kh1/__init__.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update __init__.py
* Fix missing i replacement, rework set rules to use "self" instead of a million arguments
* Update KH1Client.py
Co-authored-by: Doug Hoskisson <beauxq@users.noreply.github.com>
* Reformat rules, fix bug with exp mult, add to readme
* Clean up regions, fix client
* Fix item send prompt
* Update worlds/kh1/docs/en_Kingdom Hearts.md
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/docs/en_Kingdom Hearts.md
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/__init__.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/__init__.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/__init__.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/docs/en_Kingdom Hearts.md
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/docs/en_Kingdom Hearts.md
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/docs/en_Kingdom Hearts.md
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/docs/en_Kingdom Hearts.md
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/docs/en_Kingdom Hearts.md
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/docs/kh1_en.md
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/docs/kh1_en.md
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/docs/kh1_en.md
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/docs/kh1_en.md
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/test/test_goal.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Options.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Options.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Options.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Options.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Options.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Options.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Options.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Items.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Locations.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Regions.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Locations.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Locations.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Items.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Regions.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Regions.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Rules.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Rules.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Rules.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Rules.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Rules.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Rules.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Rules.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Rules.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Rules.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Rules.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/__init__.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/__init__.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/__init__.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/__init__.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/__init__.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/__init__.py
Co-authored-by: Doug Hoskisson <beauxq@users.noreply.github.com>
* Fix so many suggestions
* removed junk in missable locations option
* Update __init__.py
* Change credits order
* Update en_Kingdom Hearts.md
* Standardize punctuation
* Update en_Kingdom Hearts.md
* Update en_Kingdom Hearts.md
* Update Regions.py
* Removed "disclude" options in generation fillers
* Update Rules.py
* Update __init__.py
* Fix cemetery typo
* Update worlds/kh1/Options.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Add option groups and option presets
* Update worlds/kh1/__init__.py
That's a good idea!
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Options.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Options.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Options.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Presets.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* fixed HB rule and formatting on a line in Items.py
* Fix logic bug with Geppetto's House postcard
* Update Rules.py
* Update Options.py
* Update __init__.py
* Update __init__.py
* Huge under-the-hood update for PR
* More updates for PR
* Update worlds/kh1/__init__.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Rules.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update __init__.py
---------
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
Co-authored-by: Doug Hoskisson <beauxq@users.noreply.github.com>
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
											 
										 
										
											2024-08-18 17:39:37 -05:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								            ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Agrabah Defeat Kurt Zisa Zantetsuken Event " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  ( 
							 
						 
					
						
							
								
									
										
										
										
											2024-11-24 11:42:21 -06:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								                has_emblems ( state ,  player ,  options . keyblades_unlock_chests )  and  has_x_worlds ( state ,  player ,  7 ,  options . keyblades_unlock_chests )  and  has_defensive_tools ( state ,  player )  and  state . has ( " Progressive Blizzard " ,  player ,  3 ) 
							 
						 
					
						
							
								
									
										
											 
										
											
												Kingdom Hearts: Implement New Game (#3201)
* Added Final Ansem Goal
* Update __init__.py
* Update Rules.py
* New EotW logic
* Update __init__.py
* Update __init__.py
* Update Items.py
* Update Rules.py
* Rename Location to be more meaningful, logic fixes
* Removed Aerith locations
* Change to allow randomized keyblade stats
* Fixed incorrect option description.  Fixed victory locations for alternative win condition settings
* Commit
* Lots of changes
* Fixes
* Fixes
* Update Rules.py
* Update Rules.py
* Update Rules.py
* Update Rules.py
* Fixes
* Update Rules.py
* Update Rules.py
* Update Options.py
* Old Book is not required
* Added Jungle Slider
* Add Cid Check
* Add Wonderland Book Check
* Add OC Green Trinity
* Add Inferno Band Event
* Add Kurt Zisa Zantetsuken and Unknown EXP Necklace checks
* Update Locations.py
* Fix Final Ansem Goal
* Update __init__.py
* Update __init__.py
* Add options to exclude super bosses and 100 acre wood
* Fix puppies trp, remove cid check
* Fix 100 Acre Wood Option
* Material to Empty Bottle
* Fixed rules, location names, etc
* Fix super bosses
* Add item + location groups, level sanity
* Fix location and item group names
* Add Bad Starting Weapons Option
* Logic Error for 100 Acre Wood
* Update Rules.py
* Update __init__.py
* Fixes related to randomized keyblade stats and super bosses
* Credits and Fixes
* Logic fixes, location name group changes
* Update Options.py
* Update worlds/kh1/__init__.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update worlds/kh1/__init__.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update worlds/kh1/docs/kh1_en.md
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update worlds/kh1/docs/en_Kingdom Hearts.md
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update .gitignore
* Update CODEOWNERS
* Update docs/CODEOWNERS
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Fixed Atlantica item group name
* Update CODEOWNERS
* Update Client.py
* Update Items.py
* Update __init__.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update Rules.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update Rules.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update Rules.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update worlds/kh1/Rules.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update worlds/kh1/Rules.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update worlds/kh1/Rules.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Fixed report group name
* Fixes for PR
* Update Options.py
* Push changes for making the Final Rest Door appear, few option fixes
* Update Rules.py
* Website formatting, 0 min for reports, option description typo
* Create KH1Client.py
* Update worlds/kh1/docs/kh1_en.md
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update Options.py
* Update Options.py
* Update Rules.py
* Update Rules.py
* Update Rules.py
* Add Donald and Goofy Death Link
* Add fight logic for optional bosses
* Update __init__.py
* Update Options.py
* Update worlds/kh1/Options.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update Client.py
* Update kh1_en.md
* Update __init__.py
* Cleaning up for PR
* Update Client.py
* Added event locations for vanilla items
* Add proper location groups and auto hint synth shop items when entering
* so many changes
* Update Rules.py
* fixed oathkeeper and crabclaw logic
* Update Rules.py
* Update Rules.py
* Update Rules.py
* Update Rules.py
* Update en_Kingdom Hearts.md
* Update en_Kingdom Hearts.md
* fixing text
* Update kh1_en.md
* Addition of new key items
* Update Regions.py
* Push for start item from pool test
* Update worlds/kh1/Options.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Document update
* Update Rules.py
* Added starting world range and final rest goal option
* Update kh1_en.md
* Update en_Kingdom Hearts.md
* Update __init__.py
* Update __init__.py
* Clean up options descriptions
* Update worlds/kh1/__init__.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update worlds/kh1/Options.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update worlds/kh1/__init__.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update worlds/kh1/__init__.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update worlds/kh1/__init__.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update worlds/kh1/Rules.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update worlds/kh1/Rules.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update worlds/kh1/Client.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Fix grammar in document
* Update __init__.py
* Update worlds/kh1/__init__.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Removed return type
* Update __init__.py
* Update __init__.py
* Update worlds/kh1/__init__.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update worlds/kh1/__init__.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Update __init__.py
* Fix missing i replacement, rework set rules to use "self" instead of a million arguments
* Update KH1Client.py
Co-authored-by: Doug Hoskisson <beauxq@users.noreply.github.com>
* Reformat rules, fix bug with exp mult, add to readme
* Clean up regions, fix client
* Fix item send prompt
* Update worlds/kh1/docs/en_Kingdom Hearts.md
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/docs/en_Kingdom Hearts.md
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/__init__.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/__init__.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/__init__.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/docs/en_Kingdom Hearts.md
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/docs/en_Kingdom Hearts.md
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/docs/en_Kingdom Hearts.md
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/docs/en_Kingdom Hearts.md
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/docs/en_Kingdom Hearts.md
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/docs/kh1_en.md
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/docs/kh1_en.md
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/docs/kh1_en.md
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/docs/kh1_en.md
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/test/test_goal.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Options.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Options.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Options.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Options.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Options.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Options.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Options.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Items.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Locations.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Regions.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Locations.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Locations.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Items.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Regions.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Regions.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Rules.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Rules.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Rules.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Rules.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Rules.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Rules.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Rules.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Rules.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Rules.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Rules.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/__init__.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/__init__.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/__init__.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/__init__.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/__init__.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/__init__.py
Co-authored-by: Doug Hoskisson <beauxq@users.noreply.github.com>
* Fix so many suggestions
* removed junk in missable locations option
* Update __init__.py
* Change credits order
* Update en_Kingdom Hearts.md
* Standardize punctuation
* Update en_Kingdom Hearts.md
* Update en_Kingdom Hearts.md
* Update Regions.py
* Removed "disclude" options in generation fillers
* Update Rules.py
* Update __init__.py
* Fix cemetery typo
* Update worlds/kh1/Options.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Add option groups and option presets
* Update worlds/kh1/__init__.py
That's a good idea!
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Options.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Options.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Options.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Presets.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* fixed HB rule and formatting on a line in Items.py
* Fix logic bug with Geppetto's House postcard
* Update Rules.py
* Update Options.py
* Update __init__.py
* Update __init__.py
* Huge under-the-hood update for PR
* More updates for PR
* Update worlds/kh1/__init__.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update worlds/kh1/Rules.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Update __init__.py
---------
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
Co-authored-by: Doug Hoskisson <beauxq@users.noreply.github.com>
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
											 
										 
										
											2024-08-18 17:39:37 -05:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								            ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    if  options . super_bosses  or  options . goal . current_key  ==  " sephiroth " : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Olympus Coliseum Defeat Sephiroth Ansem ' s Report 12 " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                state . has_all ( { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    " Phil Cup " , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    " Pegasus Cup " , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    " Hercules Cup " , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    " Entry Pass " } ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                and  has_x_worlds ( state ,  player ,  7 ,  options . keyblades_unlock_chests ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                and  has_defensive_tools ( state ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Olympus Coliseum Defeat Sephiroth One-Winged Angel Event " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                state . has_all ( { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    " Phil Cup " , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    " Pegasus Cup " , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    " Hercules Cup " , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    " Entry Pass " } ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                and  has_x_worlds ( state ,  player ,  7 ,  options . keyblades_unlock_chests ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                and  has_defensive_tools ( state ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    if  options . super_bosses  or  options . goal . current_key  ==  " unknown " : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Hollow Bastion Defeat Unknown Ansem ' s Report 13 " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                has_emblems ( state ,  player ,  options . keyblades_unlock_chests ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                and  has_x_worlds ( state ,  player ,  7 ,  options . keyblades_unlock_chests ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                and  has_defensive_tools ( state ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Hollow Bastion Defeat Unknown EXP Necklace Event " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                has_emblems ( state ,  player ,  options . keyblades_unlock_chests )  and  has_x_worlds ( state ,  player ,  7 ,  options . keyblades_unlock_chests ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                and  has_defensive_tools ( state ,  player ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    for  i  in  range ( options . level_checks ) : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Level  "  +  str ( i + 1 ) . rjust ( 3 , ' 0 ' ) ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state ,  level_num = i :  ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                has_x_worlds ( state ,  player ,  min ( ( ( level_num / / 10 ) * 2 ) ,  8 ) ,  options . keyblades_unlock_chests ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    if  options . goal . current_key  ==  " final_ansem " : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Final Ansem " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                has_final_rest_door ( state ,  player ,  final_rest_door_requirement ,  final_rest_door_required_reports ,  options . keyblades_unlock_chests ,  options . puppies ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    if  options . keyblades_unlock_chests : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Traverse Town 1st District Candle Puzzle Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Lionheart " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Traverse Town 1st District Accessory Shop Roof Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Lionheart " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Traverse Town 2nd District Boots and Shoes Awning Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Lionheart " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Traverse Town 2nd District Rooftop Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Lionheart " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Traverse Town 2nd District Gizmo Shop Facade Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Lionheart " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Traverse Town Alleyway Balcony Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Lionheart " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Traverse Town Alleyway Blue Room Awning Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Lionheart " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Traverse Town Alleyway Corner Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Lionheart " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Traverse Town Green Room Clock Puzzle Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Lionheart " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Traverse Town Green Room Table Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Lionheart " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Traverse Town Red Room Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Lionheart " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Traverse Town Mystical House Yellow Trinity Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Lionheart " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Traverse Town Accessory Shop Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Lionheart " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Traverse Town Secret Waterway White Trinity Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Lionheart " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Traverse Town Geppetto ' s House Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Lionheart " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Traverse Town Item Workshop Right Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Lionheart " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Traverse Town 1st District Blue Trinity Balcony Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Lionheart " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Traverse Town Mystical House Glide Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Lionheart " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Traverse Town Alleyway Behind Crates Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Lionheart " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Traverse Town Item Workshop Left Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Lionheart " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Traverse Town Secret Waterway Near Stairs Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Lionheart " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Wonderland Rabbit Hole Green Trinity Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Lady Luck " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Wonderland Rabbit Hole Defeat Heartless 1 Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Lady Luck " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Wonderland Rabbit Hole Defeat Heartless 2 Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Lady Luck " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Wonderland Rabbit Hole Defeat Heartless 3 Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Lady Luck " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Wonderland Bizarre Room Green Trinity Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Lady Luck " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Wonderland Queen ' s Castle Hedge Left Red Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Lady Luck " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Wonderland Queen ' s Castle Hedge Right Blue Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Lady Luck " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Wonderland Queen ' s Castle Hedge Right Red Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Lady Luck " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Wonderland Lotus Forest Thunder Plant Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Lady Luck " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Wonderland Lotus Forest Through the Painting Thunder Plant Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Lady Luck " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Wonderland Lotus Forest Glide Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Lady Luck " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Wonderland Lotus Forest Nut Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Lady Luck " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Wonderland Lotus Forest Corner Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Lady Luck " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Wonderland Bizarre Room Lamp Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Lady Luck " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Wonderland Tea Party Garden Above Lotus Forest Entrance 2nd Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Lady Luck " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Wonderland Tea Party Garden Above Lotus Forest Entrance 1st Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Lady Luck " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Wonderland Tea Party Garden Bear and Clock Puzzle Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Lady Luck " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Wonderland Tea Party Garden Across From Bizarre Room Entrance Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Lady Luck " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Wonderland Lotus Forest Through the Painting White Trinity Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Lady Luck " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Deep Jungle Tree House Beneath Tree House Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Jungle King " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Deep Jungle Tree House Rooftop Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Jungle King " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Deep Jungle Hippo ' s Lagoon Center Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Jungle King " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Deep Jungle Hippo ' s Lagoon Left Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Jungle King " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Deep Jungle Hippo ' s Lagoon Right Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Jungle King " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Deep Jungle Vines Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Jungle King " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Deep Jungle Vines 2 Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Jungle King " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Deep Jungle Climbing Trees Blue Trinity Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Jungle King " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Deep Jungle Tunnel Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Jungle King " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Deep Jungle Cavern of Hearts White Trinity Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Jungle King " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Deep Jungle Camp Blue Trinity Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Jungle King " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Deep Jungle Tent Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Jungle King " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Deep Jungle Waterfall Cavern Low Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Jungle King " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Deep Jungle Waterfall Cavern Middle Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Jungle King " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Deep Jungle Waterfall Cavern High Wall Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Jungle King " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Deep Jungle Waterfall Cavern High Middle Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Jungle King " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Deep Jungle Cliff Right Cliff Left Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Jungle King " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Deep Jungle Cliff Right Cliff Right Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Jungle King " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Deep Jungle Tree House Suspended Boat Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Jungle King " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Agrabah Plaza By Storage Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Three Wishes " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Agrabah Plaza Raised Terrace Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Three Wishes " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Agrabah Plaza Top Corner Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Three Wishes " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Agrabah Alley Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Three Wishes " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Agrabah Bazaar Across Windows Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Three Wishes " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Agrabah Bazaar High Corner Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Three Wishes " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Agrabah Main Street Right Palace Entrance Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Three Wishes " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Agrabah Main Street High Above Alley Entrance Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Three Wishes " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Agrabah Main Street High Above Palace Gates Entrance Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Three Wishes " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Agrabah Palace Gates Low Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Three Wishes " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Agrabah Palace Gates High Opposite Palace Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Three Wishes " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Agrabah Palace Gates High Close to Palace Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Three Wishes " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Agrabah Storage Green Trinity Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Three Wishes " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Agrabah Storage Behind Barrel Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Three Wishes " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Agrabah Cave of Wonders Entrance Left Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Three Wishes " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Agrabah Cave of Wonders Entrance Tall Tower Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Three Wishes " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Agrabah Cave of Wonders Hall High Left Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Three Wishes " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Agrabah Cave of Wonders Hall Near Bottomless Hall Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Three Wishes " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Agrabah Cave of Wonders Bottomless Hall Raised Platform Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Three Wishes " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Agrabah Cave of Wonders Bottomless Hall Pillar Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Three Wishes " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Agrabah Cave of Wonders Bottomless Hall Across Chasm Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Three Wishes " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Agrabah Cave of Wonders Treasure Room Across Platforms Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Three Wishes " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Agrabah Cave of Wonders Treasure Room Small Treasure Pile Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Three Wishes " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Agrabah Cave of Wonders Treasure Room Large Treasure Pile Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Three Wishes " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Agrabah Cave of Wonders Treasure Room Above Fire Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Three Wishes " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Agrabah Cave of Wonders Relic Chamber Jump from Stairs Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Three Wishes " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Agrabah Cave of Wonders Relic Chamber Stairs Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Three Wishes " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Agrabah Cave of Wonders Dark Chamber Abu Gem Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Three Wishes " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Agrabah Cave of Wonders Dark Chamber Across from Relic Chamber Entrance Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Three Wishes " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Agrabah Cave of Wonders Dark Chamber Bridge Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Three Wishes " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Agrabah Cave of Wonders Dark Chamber Near Save Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Three Wishes " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Agrabah Cave of Wonders Silent Chamber Blue Trinity Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Three Wishes " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Agrabah Cave of Wonders Hidden Room Right Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Three Wishes " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Agrabah Cave of Wonders Hidden Room Left Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Three Wishes " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Agrabah Aladdin ' s House Main Street Entrance Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Three Wishes " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Agrabah Aladdin ' s House Plaza Entrance Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Three Wishes " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Agrabah Cave of Wonders Entrance White Trinity Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Three Wishes " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Monstro Chamber 6 Other Platform Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Wishing Star " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Monstro Chamber 6 Platform Near Chamber 5 Entrance Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Wishing Star " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Monstro Chamber 6 Raised Area Near Chamber 1 Entrance Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Wishing Star " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Monstro Chamber 6 Low Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Wishing Star " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Halloween Town Moonlight Hill White Trinity Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Pumpkinhead " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Halloween Town Bridge Under Bridge " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Pumpkinhead " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Halloween Town Boneyard Tombstone Puzzle Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Pumpkinhead " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Halloween Town Bridge Right of Gate Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Pumpkinhead " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Halloween Town Cemetery Behind Grave Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Pumpkinhead " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Halloween Town Cemetery By Cat Shape Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Pumpkinhead " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Halloween Town Cemetery Between Graves Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Pumpkinhead " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Halloween Town Oogie ' s Manor Lower Iron Cage Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Pumpkinhead " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Halloween Town Oogie ' s Manor Upper Iron Cage Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Pumpkinhead " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Halloween Town Oogie ' s Manor Hollow Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Pumpkinhead " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Halloween Town Oogie ' s Manor Grounds Red Trinity Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Pumpkinhead " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Halloween Town Guillotine Square High Tower Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Pumpkinhead " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Halloween Town Guillotine Square Pumpkin Structure Left Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Pumpkinhead " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Halloween Town Oogie ' s Manor Entrance Steps Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Pumpkinhead " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Halloween Town Oogie ' s Manor Inside Entrance Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Pumpkinhead " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Halloween Town Bridge Left of Gate Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Pumpkinhead " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Halloween Town Cemetery By Striped Grave Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Pumpkinhead " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Halloween Town Guillotine Square Under Jack ' s House Stairs Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Pumpkinhead " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Halloween Town Guillotine Square Pumpkin Structure Right Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Pumpkinhead " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Olympus Coliseum Coliseum Gates Left Behind Columns Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Olympia " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Olympus Coliseum Coliseum Gates Right Blue Trinity Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Olympia " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Olympus Coliseum Coliseum Gates Left Blue Trinity Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Olympia " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Olympus Coliseum Coliseum Gates White Trinity Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Olympia " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Olympus Coliseum Coliseum Gates Blizzara Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Olympia " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Olympus Coliseum Coliseum Gates Blizzaga Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Olympia " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Monstro Mouth Boat Deck Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Wishing Star " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Monstro Mouth High Platform Boat Side Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Wishing Star " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Monstro Mouth High Platform Across from Boat Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Wishing Star " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Monstro Mouth Near Ship Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Wishing Star " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Monstro Mouth Green Trinity Top of Boat Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Wishing Star " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Monstro Chamber 2 Ground Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Wishing Star " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Monstro Chamber 2 Platform Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Wishing Star " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Monstro Chamber 5 Platform Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Wishing Star " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Monstro Chamber 3 Ground Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Wishing Star " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Monstro Chamber 3 Platform Above Chamber 2 Entrance Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Wishing Star " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Monstro Chamber 3 Near Chamber 6 Entrance Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Wishing Star " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Monstro Chamber 3 Platform Near Chamber 6 Entrance Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Wishing Star " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Monstro Mouth High Platform Near Teeth Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Wishing Star " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Monstro Chamber 5 Atop Barrel Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Wishing Star " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Monstro Chamber 5 Low 2nd Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Wishing Star " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Monstro Chamber 5 Low 1st Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Wishing Star " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Neverland Pirate Ship Deck White Trinity Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Fairy Harp " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Neverland Pirate Ship Crows Nest Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Fairy Harp " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Neverland Hold Yellow Trinity Right Blue Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Fairy Harp " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Neverland Hold Yellow Trinity Left Blue Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Fairy Harp " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Neverland Galley Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Fairy Harp " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Neverland Cabin Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Fairy Harp " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Neverland Hold Flight 1st Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Fairy Harp " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Neverland Clock Tower Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Fairy Harp " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Neverland Hold Flight 2nd Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Fairy Harp " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Neverland Hold Yellow Trinity Green Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Fairy Harp " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Neverland Captain ' s Cabin Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Fairy Harp " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Hollow Bastion Rising Falls Water ' s Surface Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Divine Rose " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Hollow Bastion Rising Falls Under Water 1st Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Divine Rose " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Hollow Bastion Rising Falls Under Water 2nd Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Divine Rose " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Hollow Bastion Rising Falls Floating Platform Near Save Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Divine Rose " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Hollow Bastion Rising Falls Floating Platform Near Bubble Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Divine Rose " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Hollow Bastion Rising Falls High Platform Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Divine Rose " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Hollow Bastion Castle Gates Gravity Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Divine Rose " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Hollow Bastion Castle Gates Freestanding Pillar Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Divine Rose " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Hollow Bastion Castle Gates High Pillar Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Divine Rose " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Hollow Bastion Great Crest Lower Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Divine Rose " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Hollow Bastion Great Crest After Battle Platform Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Divine Rose " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Hollow Bastion High Tower 2nd Gravity Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Divine Rose " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Hollow Bastion High Tower 1st Gravity Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Divine Rose " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Hollow Bastion High Tower Above Sliding Blocks Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Divine Rose " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Hollow Bastion Library Top of Bookshelf Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Divine Rose " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Hollow Bastion Lift Stop Library Node After High Tower Switch Gravity Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Divine Rose " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Hollow Bastion Lift Stop Library Node Gravity Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Divine Rose " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Hollow Bastion Lift Stop Under High Tower Sliding Blocks Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Divine Rose " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Hollow Bastion Lift Stop Outside Library Gravity Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Divine Rose " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Hollow Bastion Lift Stop Heartless Sigil Door Gravity Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Divine Rose " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Hollow Bastion Base Level Bubble Under the Wall Platform Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Divine Rose " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Hollow Bastion Base Level Platform Near Entrance Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Divine Rose " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Hollow Bastion Base Level Near Crystal Switch Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Divine Rose " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Hollow Bastion Waterway Near Save Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Divine Rose " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Hollow Bastion Waterway Blizzard on Bubble Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Divine Rose " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Hollow Bastion Waterway Unlock Passage from Base Level Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Divine Rose " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Hollow Bastion Dungeon By Candles Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Divine Rose " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Hollow Bastion Dungeon Corner Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Divine Rose " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Hollow Bastion Grand Hall Steps Right Side Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Divine Rose " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Hollow Bastion Grand Hall Oblivion Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Divine Rose " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Hollow Bastion Grand Hall Left of Gate Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Divine Rose " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Hollow Bastion Entrance Hall Left of Emblem Door Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Divine Rose " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Hollow Bastion Rising Falls White Trinity Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Divine Rose " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " End of the World Final Dimension 1st Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Oblivion " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " End of the World Final Dimension 2nd Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Oblivion " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " End of the World Final Dimension 3rd Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Oblivion " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " End of the World Final Dimension 4th Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Oblivion " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " End of the World Final Dimension 5th Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Oblivion " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " End of the World Final Dimension 6th Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Oblivion " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " End of the World Final Dimension 10th Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Oblivion " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " End of the World Final Dimension 9th Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Oblivion " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " End of the World Final Dimension 8th Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Oblivion " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " End of the World Final Dimension 7th Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Oblivion " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " End of the World Giant Crevasse 3rd Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Oblivion " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " End of the World Giant Crevasse 5th Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Oblivion " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " End of the World Giant Crevasse 1st Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Oblivion " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " End of the World Giant Crevasse 4th Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Oblivion " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " End of the World Giant Crevasse 2nd Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Oblivion " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " End of the World World Terminus Traverse Town Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Oblivion " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " End of the World World Terminus Wonderland Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Oblivion " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " End of the World World Terminus Olympus Coliseum Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Oblivion " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " End of the World World Terminus Deep Jungle Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Oblivion " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " End of the World World Terminus Agrabah Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Oblivion " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " End of the World World Terminus Halloween Town Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Oblivion " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " End of the World World Terminus Neverland Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Oblivion " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " End of the World World Terminus 100 Acre Wood Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Oblivion " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " End of the World Final Rest Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Oblivion " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_location ( " Monstro Chamber 6 White Trinity Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Oblivion " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        if  options . hundred_acre_wood : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            add_rule ( kh1world . get_location ( " 100 Acre Wood Meadow Inside Log Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                lambda  state :  state . has ( " Oathkeeper " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            add_rule ( kh1world . get_location ( " 100 Acre Wood Bouncing Spot Left Cliff Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                lambda  state :  state . has ( " Oathkeeper " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            add_rule ( kh1world . get_location ( " 100 Acre Wood Bouncing Spot Right Tree Alcove Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                lambda  state :  state . has ( " Oathkeeper " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            add_rule ( kh1world . get_location ( " 100 Acre Wood Bouncing Spot Under Giant Pot Chest " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                lambda  state :  state . has ( " Oathkeeper " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_entrance ( " Wonderland " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  state . has ( " Wonderland " ,  player )  and  has_x_worlds ( state ,  player ,  2 ,  options . keyblades_unlock_chests ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_entrance ( " Olympus Coliseum " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  state . has ( " Olympus Coliseum " ,  player )  and  has_x_worlds ( state ,  player ,  2 ,  options . keyblades_unlock_chests ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_entrance ( " Deep Jungle " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  state . has ( " Deep Jungle " ,  player )  and  has_x_worlds ( state ,  player ,  2 ,  options . keyblades_unlock_chests ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_entrance ( " Agrabah " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  state . has ( " Agrabah " ,  player )  and  has_x_worlds ( state ,  player ,  2 ,  options . keyblades_unlock_chests ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_entrance ( " Monstro " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  state . has ( " Monstro " ,  player )  and  has_x_worlds ( state ,  player ,  2 ,  options . keyblades_unlock_chests ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    if  options . atlantica : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        add_rule ( kh1world . get_entrance ( " Atlantica " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            lambda  state :  state . has ( " Atlantica " ,  player )  and  has_x_worlds ( state ,  player ,  2 ,  options . keyblades_unlock_chests ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_entrance ( " Halloween Town " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  state . has ( " Halloween Town " ,  player )  and  has_x_worlds ( state ,  player ,  2 ,  options . keyblades_unlock_chests ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_entrance ( " Neverland " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  state . has ( " Neverland " ,  player )  and  has_x_worlds ( state ,  player ,  3 ,  options . keyblades_unlock_chests ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_entrance ( " Hollow Bastion " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  state . has ( " Hollow Bastion " ,  player )  and  has_x_worlds ( state ,  player ,  5 ,  options . keyblades_unlock_chests ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_entrance ( " End of the World " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  has_x_worlds ( state ,  player ,  7 ,  options . keyblades_unlock_chests )  and  ( has_reports ( state ,  player ,  eotw_required_reports )  or  state . has ( " End of the World " ,  player ) ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    add_rule ( kh1world . get_entrance ( " 100 Acre Wood " ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lambda  state :  state . has ( " Progressive Fire " ,  player ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    multiworld . completion_condition [ player ]  =  lambda  state :  state . has ( " Victory " ,  player )