Skip to content

Added Subnautica Support#22

Closed
Daivuk wants to merge 1 commit intoArchipelagoMW:mainfrom
Daivuk:subnautica_clean
Closed

Added Subnautica Support#22
Daivuk wants to merge 1 commit intoArchipelagoMW:mainfrom
Daivuk:subnautica_clean

Conversation

@Daivuk
Copy link
Collaborator

@Daivuk Daivuk commented Jul 17, 2021

No description provided.

@Daivuk
Copy link
Collaborator Author

Daivuk commented Jul 17, 2021

Still improving, will re-open the PR later once I have the plugin ready too.

@Daivuk Daivuk closed this Jul 17, 2021
@Ijwu
Copy link
Contributor

Ijwu commented Jul 18, 2021

GitHub has support for draft PRs, for what it's worth. It is okay to open a PR in an unfinished state.

Ziktofel referenced this pull request in Ziktofel/Archipelago Apr 15, 2023
Fixed issue with The Reckoning: Victory on vanilla
MadiMadsen pushed a commit to MadiMadsen/MadiMadsen-Archipelago that referenced this pull request Jul 12, 2023
TheLX5 added a commit to TheLX5/Archipelago that referenced this pull request Mar 2, 2024
* Batch of changes

* Remove additional get_filler_item_name

* Added a way for the client to write to level clear and all blocksanity blocks flags on !collect
TheLX5 added a commit to TheLX5/Archipelago that referenced this pull request Mar 2, 2024
commit 0e94a15
Author: PoryGone <[email protected]>
Date:   Sun Feb 11 00:38:39 2024 -0500

    Fix typo

commit 7599c25
Author: PoryGone <[email protected]>
Date:   Sun Feb 11 00:26:32 2024 -0500

    Add new popup option

commit 7ad8bb6
Author: PoryGone <[email protected]>
Date:   Sun Feb 11 00:14:43 2024 -0500

    Missing Special Zone Location

commit 630b61e
Author: PoryGone <[email protected]>
Date:   Sat Feb 10 23:52:14 2024 -0500

    Remove debug text

commit 4c66a0b
Author: PoryGone <[email protected]>
Date:   Sat Feb 10 23:45:10 2024 -0500

    Fix option text

commit 1420729
Author: TheLX5 <[email protected]>
Date:   Sat Feb 10 19:56:31 2024 -0700

    SMW v2 - More small adjustments (ArchipelagoMW#29)

    * Very small logic tweaks

    * Adjusted levels with vertical scroll

    * Added a small failsafe on reading the amount of items received

commit 5698486
Author: TheLX5 <[email protected]>
Date:   Wed Jan 24 21:13:01 2024 -0700

    SMW v2 - Beta 2 fixes (ArchipelagoMW#27)

    * Fix Reverse Trap issues

    * Enable vertical scroll in DP1 main room & CI1 copies

commit 758f06c
Merge: 3f7c5ea aa72f67
Author: PoryGone <[email protected]>
Date:   Sun Jan 21 13:52:16 2024 -0500

    Merge branch 'main' into smw-main

commit 3f7c5ea
Author: TheLX5 <[email protected]>
Date:   Fri Jan 19 01:03:35 2024 -0700

    SMW v2 - Additional changes to a hidden feature (ArchipelagoMW#25)

    * More changes to the hidden player swap feature

    * Fix yoshi poses during the map

commit 7ac687e
Author: PoryGone <[email protected]>
Date:   Thu Jan 18 16:58:52 2024 -0500

    Fix missed option reference

commit 17f649a
Author: PoryGone <[email protected]>
Date:   Wed Jan 17 23:40:52 2024 -0500

    Change 'Reverse Controls Trap' to 'Reverse Trap'

commit 5142739
Merge: 5be46e3 e530202
Author: PoryGone <[email protected]>
Date:   Wed Jan 17 23:38:22 2024 -0500

    Merge branch 'smw-main' of https://github.com/PoryGoneDev/Pory_Archipelago into smw-main

commit 5be46e3
Author: PoryGone <[email protected]>
Date:   Wed Jan 17 23:38:14 2024 -0500

    Sort itempool to place eggs last

commit e530202
Author: TheLX5 <[email protected]>
Date:   Wed Jan 17 21:34:09 2024 -0700

    SMW v2 - Beta test fixes (ArchipelagoMW#24)

    * Blocksanity updates

    * Do not remove Yoshi's House from the json

    * Add mushroom requirement to DP2 vine block

    * Make dragon coins counter go up to 255

    * Update level_blocks_data with up to date blocksanity info

    * Add new traps

    * Give SFX to Reverse Controls Trap

    * Batch of changes

    * Revert coin junk items values

commit ea099e1
Author: PoryGone <[email protected]>
Date:   Wed Jan 10 04:02:15 2024 -0500

    Revamp handling of Yoshi Egg options

commit 08a6569
Author: TheLX5 <[email protected]>
Date:   Mon Jan 8 23:35:44 2024 -0700

    Update DP1 GSP wall to only require GSP and Cape (ArchipelagoMW#23)

commit 22be7ae
Author: PoryGone <[email protected]>
Date:   Tue Jan 9 01:17:33 2024 -0500

    Handle Auto-tracking current room

commit 0f707fe
Author: PoryGone <[email protected]>
Date:   Thu Jan 4 00:47:55 2024 -0500

    Finish options cleanup

commit a86afab
Merge: 6e0fa4d 7406a1e
Author: PoryGone <[email protected]>
Date:   Wed Jan 3 23:39:07 2024 -0500

    Merge branch 'main' into smw-main

commit 6e0fa4d
Author: TheLX5 <[email protected]>
Date:   Wed Jan 3 21:30:30 2024 -0700

    Additional changes to SMW v2 (ArchipelagoMW#22)

    * Batch of changes

    * Remove additional get_filler_item_name

    * Added a way for the client to write to level clear and all blocksanity blocks flags on !collect

commit 0151f69
Author: PoryGone <[email protected]>
Date:   Sat Dec 2 19:28:19 2023 -0500

    Singularity SFX shuffle

commit e8ca4a5
Author: PoryGone <[email protected]>
Date:   Sat Dec 2 19:00:31 2023 -0500

    Condense Level Palette Shuffles into a single option

commit 67044ab
Author: PoryGone <[email protected]>
Date:   Sat Dec 2 03:26:53 2023 -0500

    Clean up MultiWorld usage and options access

commit c3fca02
Merge: e3c0e08 6e38126
Author: PoryGone <[email protected]>
Date:   Fri Dec 1 21:40:48 2023 -0500

    Merge branch 'main' into smw-main

commit e3c0e08
Author: TheLX5 <[email protected]>
Date:   Fri Dec 1 19:37:09 2023 -0700

    Possible SMW v2 implementation (#18)

    * Initial v2 files

    they work on AP 0.4.3

    * Removed code used for debugging

    * Reverted EasyEarlyLevels option

    * Location name adjustments

    * Reverted added logic for Funky

    * Removed easy early levels option

    * Removed options for junk item weights

    * Reworked the vertical scroll hack

    * Change item names from the init file

    * trimming

    * Blocksanity data is now computed from the json file instead of using a bin file

    * Added a missing blocksanity location

    * Bring back import settings and related code

    * Bring back more settings... again!

    * Attempt to solve merge conflict

    * Bring back ROM expansion

    * Attempt #2 to fix merge conflicts

    * Changed junk item "15 coins" to "50 coins"

    * Remove unused things

    * Configured the vertical scroll setting table

    * Modified the map indicator for Hidden 1-Ups

    * Adjusted some palettes

    * Changed 1-Up Checkpoint references to Hidden 1-Up

    Also changed some of the options' descriptions
    ... and changed the name of a location in Donut Ghost House

    * Fixed the logic for a block that could be either a green or yellow switch palace block

    * Make impossible to receive checks during boss battles

    * Several palette fixes

    arbustos

    * Rework palette shuffle options

commit 5e65477
Merge: eb30a71 d2e9bfb
Author: PoryGone <[email protected]>
Date:   Sat Nov 4 21:53:53 2023 -0400

    Merge branch 'main' into smw-main

commit eb30a71
Merge: f33d98b dc2aa5f
Author: PoryGone <[email protected]>
Date:   Mon Jan 30 19:47:00 2023 -0500

    Merge branch 'main' into smw-main

commit f33d98b
Author: PoryGone <[email protected]>
Date:   Sun Jan 29 23:51:38 2023 -0500

    Update worlds/smw/Client.py to use `getattr`

    Co-authored-by: Fabian Dill <[email protected]>

commit 7c8e34b
Author: PoryGone <[email protected]>
Date:   Thu Jan 19 18:52:00 2023 -0500

    Fix Chocolate Island 4 Dragon Coins logic

commit f8e1d2e
Merge: 4a2eab8 02d3eef
Author: PoryGone <[email protected]>
Date:   Thu Jan 19 18:43:33 2023 -0500

    Merge branch 'main' into smw-main

commit 4a2eab8
Author: PoryGone <[email protected]>
Date:   Wed Dec 21 19:30:09 2022 -0500

    Add option to fully exclude Special Zone levels from the seed

commit a84e36c
Merge: 406e188 4cfc73b
Author: PoryGone <[email protected]>
Date:   Mon Dec 19 19:36:50 2022 -0500

    Merge branch 'main' into smw-main

commit 406e188
Author: PoryGone <[email protected]>
Date:   Mon Dec 19 00:08:22 2022 -0500

    Address unconnected regions

commit a2ffeec
Merge: f65d47b e0be796
Author: PoryGone <[email protected]>
Date:   Sun Dec 18 23:49:46 2022 -0500

    Merge branch 'main' into smw-main

commit f65d47b
Author: PoryGone <[email protected]>
Date:   Sun Dec 18 23:49:28 2022 -0500

    Tooltip text edit

commit f595db7
Author: PoryGone <[email protected]>
Date:   Sun Dec 18 18:09:34 2022 -0500

    Add correct tooltip for Early Climb

commit 2a4c2db
Author: PoryGone <[email protected]>
Date:   Sun Dec 18 17:51:44 2022 -0500

    Early Climb and Overworld Speed

commit 8fb3d1e
Author: PoryGone <[email protected]>
Date:   Fri Dec 16 20:31:27 2022 -0500

    Fix trap name and actually create them

commit 5a0e389
Author: PoryGone <[email protected]>
Date:   Fri Dec 16 03:11:11 2022 -0500

    Handle Queuing traps and new Timer Trap

commit 67c37d8
Author: PoryGone <[email protected]>
Date:   Thu Dec 15 00:43:30 2022 -0500

    Fix Literature Trap typo

commit 3ef9594
Author: PoryGone <[email protected]>
Date:   Thu Dec 15 00:28:48 2022 -0500

    Overworld Palette Shuffle

commit 9d8faec
Author: PoryGone <[email protected]>
Date:   Wed Dec 14 19:08:29 2022 -0500

    Remove extra space

commit 10bd729
Author: PoryGone <[email protected]>
Date:   Wed Dec 14 01:09:13 2022 -0500

    Add boss shuffle

commit 13c74ca
Author: PoryGone <[email protected]>
Date:   Mon Dec 12 02:37:41 2022 -0500

    Baseline for Bowser Rooms shuffling

commit 61c1d2f
Merge: 7f4eb70 32820ba
Author: PoryGone <[email protected]>
Date:   Sun Dec 11 17:20:01 2022 -0500

    Merge branch 'main' into smw-main

commit 7f4eb70
Merge: a161083 2cdd03f
Author: PoryGone <[email protected]>
Date:   Sat Dec 10 21:58:41 2022 -0500

    Merge branch 'main' into smw-main

commit a161083
Merge: b92024e ef66f64
Author: PoryGone <[email protected]>
Date:   Thu Dec 1 01:26:49 2022 -0500

    Merge branch 'main' into smw-main

commit b92024e
Author: PoryGone <[email protected]>
Date:   Wed Nov 16 11:42:49 2022 -0500

    Increment Data Package version

    Changed a location name.

commit dcf4108
Merge: aa281ef 4d79920
Author: PoryGone <[email protected]>
Date:   Tue Nov 15 18:01:50 2022 -0500

    Merge branch 'main' into smw-main

commit aa281ef
Author: PoryGone <[email protected]>
Date:   Tue Nov 15 18:01:03 2022 -0500

    Make Bowser unkillable on Egg Hunt
Alchav pushed a commit to Alchav/Archipelago that referenced this pull request Jun 10, 2024
Exempt-Medic added a commit to Exempt-Medic/Archipelago that referenced this pull request Jul 18, 2024
NewSoupVi added a commit that referenced this pull request Aug 9, 2024
* Update worlds/dark_souls_3/Locations.py

Co-authored-by: Scipio Wright <[email protected]>

* Fix Covetous Silver Serpent Ring location

* Update location groups

This should cover pretty much all of the seriously hidden items. It
also splits out miniboss drops, mimic drops, and hostile NPC drops.

* Remove the "Guarded by Keys" group

On reflection, I don't think this is actually that useful. It'll also
get a lot muddier once we can randomize shops and ashes become
pseudo-"keys".

* Restore Knight Slayer's Ring classification

* Support infusions/upgrades in the new DS3 mod system

* Support random starting loadouts

* Make an item's NPC status orthogonal to its category

* Track location groups with flags

* Track Archipelago/Offline mismatches on the server

Also fix a few incorrect item names.

* Add additional locations that are now randomizable

* Don't put soul and multiple items in shops

* Add an option to enable whether NG+ items/locations are included

* Clean up useful item categorization

There are so many weapons in the game now, it doesn't make sense to
treat them all as useful

* Add more variety to filler items

* Iron out a few bugs and incompatibilities

* Fix more silly bugs

* Get tests passing

* Update options to cover new item types

Also recategorize some items.

* Verify the default values of `Option`s.

Since `Option.verify()` can handle normalization of option names, this allows options  to define defaults which rely on that normalization. For example, it allows a world to exclude certain locations by default.

This also makes it easier to catch errors if a world author accidentally sets an invalid default.

* Make a few more improvements and fixes

* Randomize Path of the Dragon

* Mark items that unlock checks as useful

These items all unlock missable checks, but they're still good to ahve in the game for variety's sake.

* Guarantee more NPC quests are completable

* Fix a syntax error

* Fix rule definition

* Support enemy randomization

* Support online Yhorm randomization

* Remove a completed TODO

* Fix tests

* Fix force_unique

* Add an option to smooth out upgrade item progression

* Add helpers for setting location/entrance rules

* Support smoother soul item progression

* Fill extra smoothing items into conditional locations as well as other worlds

* Add health item smoothing

* Handle infusions at item generation time

* Handle item upgrades at genreation time

* Fix Grave Warden's Ashes

* Don't overwrite old rules

* Randomize items based on spheres instead of DS3 locations

* Add a smoothing option for weapon upgrades

* Add rules for crow trades

* Small fixes

* Fix a few more bugs

* Fix more bugs

* Try to prevent Path of the Dragon from going somewhere it doesn't work

* Add the ability to provide enemy presets

* Various fixes and features

* Bug fixes

* Better Coiled Sword placement

* Structure DarkSouls3Location more like DarkSouls3Item

* Add events to make DS3's spheres more even

* Restructure locations to work like items do now

* Add rules for more missable locations

* Don't add two Storm Rulers

* Place Hawk Ring in Farron Keep

* Mark the Grass Crest Shield as useful

* Mark new progression items

* Fix a bug

* Support newer better Path of the Dragon code

* Don't lock the player out of Coiled Sword

* Don't create events for missable locations

* Don't throw strings

* Don't smooth event items

* Properly categorize Butcher Knife

* Be more careful about placing Yhorm in low-randomization scenarios

* Don't try to smooth DLC items with DLC disabled

* Fix another Yhorm bug

* Fix upgrade/infusion logic

* Remove the PoolType option

This distinction is no longer meaningful now that every location in
the game of each type is randomized

* Categorize HWL: Red Eye Orb as an NPC location

* Don't place Storm Ruler on CA: Coiled Sword

* Define flatten() locally to make this APWorld capable

* Fix some more Leonhard weirdness

* Fix unique item randomization

* Don't double Twin Dragon Greatshield

* Remove debugging print

* Don't add double Storm Ruler

Also remove now-redundant item sorting by category in create_items.

* Don't add double Storm Ruler

Also remove now-redundant item sorting by category in create_items.

* Add a missing dlc_enabled check

* Use nicer options syntax

* Bump data_version

* Mention where Yhorm is in which world

* Better handle excluded events

* Add a newline to Yhorm location

* Better way of handling excluded unradomized progression locations

* Fix a squidge of nondeterminism

* Only smooth items from this world

* Don't smooth progression weapons

* Remove a location that doesn't actually exist in-game

* Classify Power Within as useful

* Clarify location names

* Fix location requirements

* Clean up randomization options

* Properly name Coiled Sword location

* Add an option for configuring how missable items are handled

* Fix some bugs from location name updates

* Fix location guide link

* Fix a couple locations that were busted offline

* Update detailed location descriptions

* Fix some bugs when generating for a multiworld

* Inject Large Leather Shield

* Fix a few location issues

* Don't allow progression_skip_balancing for unnecessary locs

* Update some location info

* Don't uniquify the wrong items

* Fix some more location issues

* More location fixes

* Use hyphens instead of parens for location descriptions

* Update and fix more locations

* Fix Soul of Cinder boss name

* Fix some logic issues

* Add item groups and document item/location groups

* Fix the display name for "Impatient Mimics"

* Properly handle Transposing Kiln and Pyromancer's Flame

* Testing

* Some fixes to NPC quests, late basin, and transposing kiln

* Improve a couple location names

* Split out and improve missable NPC item logic

* Don't allow crow trades to have foreign items

* Fix a variable capture bug

* Make sure early items are accessible early even with early Castle

* Mark ID giant slave drops as missable

* Make sure late basin means that early items aren't behind it

* Make is_location_available explicitly private

* Add an _add_item_rule utility that checks availability

* Clear excluded items if excluded_locations == "unnecessary"

* Don't allow upgrades/infusions in crow trades

* Fix the documentation for deprecated options

* Create events for all excluded locations

This allows `can_reach` logic to work even if the locations are
randomized.

* Fix up Patches' and Siegward's logic based on some manual testing

* Factor out more sub-methods for setting location rules

* Oops, left these in

* Fixing name

* Left that in too

* Changing to NamedRange to support special_range_names

* Alphabetizing

* Don't call _is_location_available on foreign locations

* Add missing Leonhard items

* Changing late basin to have a post-small-doll option

* Update basin option, add logic for some of Leonhard Hawkwood and Orbeck

* Simplifying an option, fixing a copy-paste error

* Removing trailing whitespace

* Changing lost items to go into start inventory

* Revert Basin changes

* Oops

* Update Options.py

* Reverting small doll changes

* Farron Keep boss requirement logic

* Add Scroll for late_dlc

* Fixing excluded unnecessary locations

* Adding Priestess Ring as being after UG boss

* Removing missable from Corvian Titanite Slab

* Adding KFF Yhorm boss locks

* Screams about Creighton

* Elite Knight Set isn't permanently missable

* Adding Kiln requirement to KFF

* fixing valid_keys and item groups

* Fixing an option-checker

* Throwing unplaceable Storm Ruler into start inventory

* Update locations

* Refactor item injection

* Update setup doc

* Small fixes

* Fix another location name

* Fix injection calculation

* Inject guaranteed items along with progression items

* Mark boss souls as required for access to regions

This allows us to set quest requirements for boss souls and have them
automatically propagated to regions, means we need less machinery for
Yhorm bosses, and allows us to get rid of a few region-transition
events.

* Make sure Sirris's quest can be completed before Pontiff

* Removing unused list

* Changing dict to list

* Removing unused test

* Update __init__.py

* self.multiworld.random -> self.random (#9)

* Fix some miscellaneous location issues

* Rewrite the DS3 intro page/FAQ

* Removing modifying the itempool after fill (#7)

Co-authored-by: Natalie Weizenbaum <[email protected]>

* Small fixes to the setup guide (#10)

Small fixes, adding an example for connecting

* Expanded Late Basin of Vows and Late DLC (#6)

* Add proper requirements for CD: Black Eye Orb

* Fix Aldrich's name

* Document the differences with the 2.x.x branch

* Don't crash if there are more items than locations in smoothing

* Apply suggestions from code review

Co-authored-by: Nicholas Saylor <[email protected]>

* Code review

* Fix _replace_with_filler

* Don't use the shared flatten function in SM

* Track local items separately rather than iterating the multiworld

* Various formatting/docs changes suggested by PyCharm (#12)

* Drop deprecated options

* Rename "offline randomizer" to "static randomizer" which is clearer

* Move `enable_*_locations` under removed options.

* Avoid excluded locations for locally-filled items

* Adding Removed options to error (#14)

* Changes for WebHost options display and the options overhaul

* unpack iterators in item list (#13)

* Allow worlds to add options to prebuilt groups

Previously, this crashed because `typing.NamedTuple` fields such as
`group.name` aren't assignable. Now it will only fail for group names
that are actually incorrectly cased, and will fail with a better error
message.

* Style changes, rename exclude behavior options, remove guaranteed items option

* Spacing/Formatting (#18)

* Various Fixes (#19)

* Universally Track Yhorm (#20)

* Account for excluded and missable

* These are behaviors now

* This is singular, apparently

* Oops

* Fleshing out the priority process

* Missable Titanite Lizards and excluded locations (#22)

* Small style/efficiency changes

* Final passthrough fixes (#24)

* Use rich option formatting

* Make the behavior option values actual behaviors (#25)

* Use !=

* Remove unused flatten utility

* Some changes from review (#28)

* Fixing determinism and making smooth faster (#29)

* Style change

* PyCharm and Mypy fixes (#26)

Co-authored-by: Scipio Wright <[email protected]>

* Change yhorm default (#30)

* Add indirect condition (#27)

* Update worlds/dark_souls_3/docs/locations_en.md

Co-authored-by: Nicholas Saylor <[email protected]>

* Ship all item IDs to the client

This avoids issues where items might get skipped if, for instance,
they're only in the starting inventory.

* Make sure to send AP IDs for infused/upgraded weapons

* Make `RandomEnemyPresetOption` compatible with #3280 (#31)

* Fix cast

* More typing and small fixes (#32)

---------

Co-authored-by: Scipio Wright <[email protected]>
Co-authored-by: Exempt-Medic <[email protected]>
Co-authored-by: Exempt-Medic <[email protected]>
Co-authored-by: Nicholas Saylor <[email protected]>
Co-authored-by: Doug Hoskisson <[email protected]>
Co-authored-by: NewSoupVi <[email protected]>