* Restrict Allow Orphan for items to missions that already require that
* Add test for build mission orphan behavior
* Update item lists for Allow Orphan flag
* Update the unit test to clear that BotB is not in the mission list
* Update unit test name
* Make it actually return false if it gets to the backup lists and fails them
* Fix stuff after merge
* Add outlet regions, create new regions as needed for them
* Put together part of decoupled and direction pairs
* make direction pairs work
* Make decoupled work
* Make fixed shop work again
* Fix a few minor bugs
* Fix a few minor bugs
* Fix plando
* god i love programming
* Reorder portal list
* Update portal sorter for variable shops
* Add missing parameter
* Some cleanup of prints and functions
* Fix typo
* it's aliiiiiive
* Make seed groups not sync decoupled
* Add test with full-shop plando
* Fix bug with vanilla portals
* Handle plando connections and direction pair errors
* Update plando checking for decoupled
* Fix typo
* Fix exception text to be shorter
* Add some more comments
* Add todo note
* Remove unused safety thing
* Remove extra plando connections definition in options
* Make seed groups in decoupled with overlapping but not fully overlapped plando connections interact nicely without messing with what the entrances look like in the spoiler log
* Fix weird edge case that is technically user error
* Add note to fixed shop
* Fix parsing shop names in UT
* Remove debug print
* Actually make UT work
* multiworld. to world.
* Fix typo from merge
* Make it so the shops show up in the entrance hints
* Fix bug in ladder storage rules
* Remove blank line
* # Conflicts:
# worlds/tunic/__init__.py
# worlds/tunic/er_data.py
# worlds/tunic/er_rules.py
# worlds/tunic/er_scripts.py
# worlds/tunic/rules.py
# worlds/tunic/test/test_access.py
* Fix issues after merge
* Update plando connections stuff in docs
* Make early bushes only contain grass
* Fix library mistake
* Backport changes to grass rando (#20)
* Backport changes to grass rando
* add_rule instead of set_rule for the special cases, add special cases for back of swamp laurels area cause I should've made a new region for the swamp upper entrance
* Remove item name group for grass
* Update grass rando option descriptions
- Also ignore grass fill for single player games
* Ignore grass fill option for solo rando
* Update er_rules.py
* Fix pre fill issue
* Remove duplicate option
* Add excluded grass locations back
* Hide grass fill option from simple ui options page
* Check for start with sword before setting grass rules
* Update worlds/tunic/options.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* has_stick -> has_melee
* has_stick -> has_melee
* Add a failsafe for direction pairing
* Fix playthrough crash bug
* Remove init from logicmixin
* Updates per code review (thanks hesto)
* has_stick to has_melee in newer update
* has_stick to has_melee in newer update
* Exclude grass from get_filler_item_name
- non-grass rando games were accidentally seeing grass items get shuffled in as filler, which is funny but probably shouldn't happen
* Update worlds/tunic/__init__.py
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* Apply suggestions from code review
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
* change the rest of grass_fill to local_fill
* Filter out grass from filler_items
* remove -> discard
* Update worlds/tunic/__init__.py
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
* Starting out
* Rules for breakable regions
* # Conflicts:
# worlds/tunic/__init__.py
# worlds/tunic/combat_logic.py
# worlds/tunic/er_data.py
# worlds/tunic/er_rules.py
# worlds/tunic/er_scripts.py
* Cleanup more stuff after merge
* Revert "Cleanup more stuff after merge"
This reverts commit a6ee9a93da8f2fcc4413de6df6927b246017889d.
* Revert "# Conflicts:"
This reverts commit c74ccd74a45b6ad6b9abe6e339d115a0c98baf30.
* Cleanup more stuff after merge
* change has_stick to has_melee
* Update grass list with combat logic regions
* More fixes from combat logic merge
* Fix some dumb stuff (#21)
* Reorganize pre fill for grass
* make the rest of it work, it's pr ready, boom
* Make it work in not pot shuffle
* Merge grass rando
* multiworld -> world get_location, use has_any
* Swap out region for West Garden Before Terry grass
* Adjust west garden rules to add west combat region
* Adjust grass regions for south checkpoint grass
* Adjust grass regions for after terry grass
* Adjust grass regions for west combat grass
* Adjust grass regions for dagger house grass
* Adjust grass regions for south checkpoint grass, adjust regions and rules for some related locations
* Finish the remainder of the west garden grass, reformat ruined atoll a little
* More hex quest updates
- Implement page ability shuffle for hex quest
- Fix keys behind bosses if hex goal is less than 3
- Added check to fix conflicting hex quest options
- Add option to slot data
* Change option comparison
* Change option checking and fix some stuff
- also keep prayer first on low hex counts
* Update option defaulting
* Update option checking
* Fix option assignment again
* Merge in hex hunt
* Merge in changes
* Clean up imports
* Add ability type to UT stuff
* merge it all
* Make local fill work across pot and grass (to be adjusted later)
* Make separate pools for the grass and non-grass fills
* Fix id overlap
* Update option description
* Fix default
* Reorder localfill option desc
* Load the purgatory ones in
* Adjustments after merge
* Fully remove logicrules
* Fix UT support with fixed shop option
* Add breakable shuffle to the ut stuff
* Make it load in a specific number of locations
* Add Silent's spoiler log ability thing
* Fix for groups
* Fix for groups
* Fix typo
* Fix hex quest UT support
* Use .get
* UT fixes, classification fixes
* Rename some locations
* Adjust guard house names
* Adjust guard house names
* Rework create_item
* Fix for plando connections
* Rename, add new breakables
* Rename more stuff
* Time to rename them again
* Fix issue with fixed shop + decoupled
* Put in an exception to catch that error in the future
* Update create_item to match main
* Update spoiler log lines for hex abilities
* Burn the signs down
* Bring over the combat logic fix
* Merge in combat logic fix
* Silly static method thing
* Move a few areas to before well instead of east forest
* Add an all_random hidden option for dev stuff
* Port over changes from main
* Fix west courtyard pot regions
* Remove debug prints
* Fix fortress courtyard and beneath the fortress loc groups again
* Add exception handling to deal with duplicate apworlds
* Fix typo
* More missing loc group conversions
* Initial fuse shuffle stuff
* Fix gun missing from combat_items, add new for combat logic cache, very slight refactor of check_combat_reqs to let it do the changeover in a less complicated fashion, fix area being a boss area rather than non-boss area for a check
* Add fuse shuffle logic
* reorder atoll statue rule
* Update traversal reqs
* Remove fuse shuffle from temple door
* Combine rules and option checking
* Add bell shuffle; fix fuse location groups
* Fix portal rules not requiring prayer
* Merge the grass laurels exit grass PR
* Merge in fortress bridge PR
* Do a little clean up
* Fix a regression
* Update after merge
* Some more stuff
* More Silent changes
* Update more info section in game info page
* Fix rules for atoll and swamp fuses
* Precollect cathedral fuse in ER
* actually just make the fuse useful instead of progression
* Add it to the swamp and cath rules too
* Fix cath fuse name
* Minor fixes and edits
* Some UT stuff
* Fix a couple more groups
* Move a bunch of UT stuff to its own file
* Fix up a couple UT things
* Couple minor ER fixes
* Formatting change
* UT poptracker stuff enabled since it's optional in one of the releases
* Add author string to world class
* Adjust local fill option name
* Update ut_stuff to match the PR
* Add exception handling for UT with old apworld
* Fix missing tracker_world
* Remove extra entrance from cath main -> elevator
Entry <-> Elev exists,
Entry <-> Main exists
So no connection is needed between Main and Elev
* Fix so that decoupled doesn't incorrectly use get_portal_info and get_paired_portal
* Fix so that decoupled doesn't incorrectly use get_portal_info and get_paired_portal
* Update for breakables poptracker
* Backup and warnings instead
* Update typing
* Delete old regions and rules, move stuff to logic_helpers and constants
* Delete now much less useful tests
* Fix breakables map tracking
* Add more comments to init
* Add todo to grass.py
* Fix up tests
* Pull out fuse and bell shuffle
* Pull out fuse and bell shuffle
* Update worlds/tunic/options.py
Co-authored-by: qwint <qwint.42@gmail.com>
* Update worlds/tunic/logic_helpers.py
Co-authored-by: qwint <qwint.42@gmail.com>
* {} -> () in state functions
* {} -> () in state functions
* Change {} -> () in state functions, use constant for gun
* Remove floating constants in er_data
* Finish hard deprecating FixedShop
* Finish hard deprecating FixedShop
* Fix zig skip showing up in decoupled fixed shop
---------
Co-authored-by: silent-destroyer <osilentdestroyer@gmail.com>
Co-authored-by: Silent <110704408+silent-destroyer@users.noreply.github.com>
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
Co-authored-by: qwint <qwint.42@gmail.com>
* APWorld Skeleton
* Hair Color Rando and first items
* All interactable items
* Checkpoint Items and Locations
* First pass sample intermediate data
* Bulk of Region/location code
* JSON Data Parser
* New items and Level Item mapping
* Data Parsing fixes and most of 1a data
* 1a complete data and region/location/item creation fixes
* Add Key Location type and ID output
* Add options to slot data
* 1B Level Data
* Added Location logging
* Add Goal Area Options
* 1c Level Data
* Old Site A B C level data
* Key/Binosanity and Hair Length options
* Key Item/Location and Clutter Event handling
* Remove generic 'keys' item
* 3a level data
* 3b and 3c level data
* Chapter 4 level data
* Chapter 5 Logic Data
* Chapter 5 level data
* Trap Support
* Add TrapLink Support
* Chapter 6 A/B/C Level Data
* Add active_levels to slot_data
* Item and Location Name Groups + style cleanups
* Chapter 7 Level Data and Items, Gemsanity option
* Goal Area and victory handling
* Fix slot_data
* Add Core Level Data
* Carsanity
* Farewell Level Data and ID Range Update
* Farewell level data and handling
* Music Shuffle
* Require Cassettes
* Change default trap expiration action to Deaths
* Handle Poetry
* Mod versioning
* Rename folder, general cleanup
* Additional Cleanup
* Handle Farewell Golden Goal when Include Goldens is off
* Better handling of Farewell Golden
* Update Docs
* Beta test bug fixes
* Bump to v1.0.0
* Update Changelog
* Several Logic tweaks
* Update APWorld Version
* Add Celeste (Open World) to README
* Peer review changes
* Logic Fixes:
* Adjust Mirror Temple B Key logic
* Increment APWorld version
* Fix several logic bugs
* Add missing link
* Add Item Name Groups for common alternative item names
* Account for Madeline's post-Celeste hair-dying activities
* Account for ignored member variable and hardcoded color in Celeste codebase
* Add Blue Clouds to the logic of reaching Farewell - intro-02-launch
* Type checking workaround
* Bump version number
* Adjust Setup Guide
* Minor typing fixes
* Logic and PR fixes
* Increment APWorld Version
* Use more world helpers
* Core review
* CODEOWNERS
* Minor logic fix and insert APWorld version into spoiler
* Fix merge error
Feature highlights:
- Adds many content to the SC2 game
- Allows custom mission order
- Adds race-swapped missions for build missions (except Epilogue and NCO)
- Allows War Council Nerfs (Protoss units can get pre - War Council State, alternative units get another custom nerf to match the power level of base units)
- Revamps Predator's upgrade tree (never was considered strategically important)
- Adds some units and upgrades
- Locked and excluded items can specify quantity
- Key mode (if opt-in, missions require keys to be unlocked on top of their regular regular requirements
- Victory caches - Victory locations can grant multiple items to the multiworld instead of one
- The generator is more resilient for generator failures as it validates logic for item excludes
- Fixes the following issues:
- https://github.com/ArchipelagoMW/Archipelago/issues/3531
- https://github.com/ArchipelagoMW/Archipelago/issues/3548
* kinda driven by wanting to test the labeling change in prod but also components are a weird part of the ecosystem and could use more documentation.
* additional text describing launch/launch_subprocess and their use
* Update docs/adding games.md
Co-authored-by: Duck <31627079+duckboycool@users.noreply.github.com>
---------
Co-authored-by: Duck <31627079+duckboycool@users.noreply.github.com>
* APWorld Skeleton
* Hair Color Rando and first items
* All interactable items
* Checkpoint Items and Locations
* First pass sample intermediate data
* Bulk of Region/location code
* JSON Data Parser
* New items and Level Item mapping
* Data Parsing fixes and most of 1a data
* 1a complete data and region/location/item creation fixes
* Add Key Location type and ID output
* Add options to slot data
* 1B Level Data
* Added Location logging
* Add Goal Area Options
* 1c Level Data
* Old Site A B C level data
* Key/Binosanity and Hair Length options
* Key Item/Location and Clutter Event handling
* Remove generic 'keys' item
* 3a level data
* 3b and 3c level data
* Chapter 4 level data
* Chapter 5 Logic Data
* Chapter 5 level data
* Trap Support
* Add TrapLink Support
* Chapter 6 A/B/C Level Data
* Add active_levels to slot_data
* Item and Location Name Groups + style cleanups
* Chapter 7 Level Data and Items, Gemsanity option
* Goal Area and victory handling
* Fix slot_data
* Add Core Level Data
* Carsanity
* Farewell Level Data and ID Range Update
* Farewell level data and handling
* Music Shuffle
* Require Cassettes
* Change default trap expiration action to Deaths
* Handle Poetry
* Mod versioning
* Rename folder, general cleanup
* Additional Cleanup
* Handle Farewell Golden Goal when Include Goldens is off
* Better handling of Farewell Golden
* Update Docs
* Beta test bug fixes
* Bump to v1.0.0
* Update Changelog
* Several Logic tweaks
* Update APWorld Version
* Add Celeste (Open World) to README
* Peer review changes
* Logic Fixes:
* Adjust Mirror Temple B Key logic
* Increment APWorld version
* Fix several logic bugs
* Add missing link
* Add Item Name Groups for common alternative item names
* Account for Madeline's post-Celeste hair-dying activities
* Account for ignored member variable and hardcoded color in Celeste codebase
* Add Blue Clouds to the logic of reaching Farewell - intro-02-launch
* Type checking workaround
* Bump version number
* Adjust Setup Guide
* Minor typing fixes
* Logic and PR fixes
* Increment APWorld Version
* Use more world helpers
* Core review
* CODEOWNERS
* changes
* cherry pick stuff
* use newly create methods more
* use new assets to ease readability
* remove unneeded assert
* add assert region adapters
* use new asserts yay
* self review
* self review
* review
* replace parrot express with transportation constant
* bullshit commit again
* revert a bunch of off topic changes
* these changes seems to be on topic
* revert some undesired merge changes
* review imports
* use type instead of instance in some options
* properly return super
* review
* change one str to use a constnat