Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Here’s my PR for the barren item pool. The work isn’t finished yet, but it’s the start of an implementation. The goal of the barren item pool is to remove all useless items from the seed. Instead, everything is replaced with “Nothing.”
This new item pool works with the “all locations reachable” setting, meaning it’s much more enjoyable when playing with Required Only. With this combination, every item still present in the seed is absolutely necessary (logically) to finish the game.
In All Locations Reachable, only items that are always useless are removed, so that all checks remain accessible. There are a few exceptions: Fire Arrows, Blue Fire Arrows, and bottles are tested, because if these items aren’t required to beat the game, that means the locations are still accessible through things like Din’s Fire or an empty Ruto’s Letter.
This PR is still in draft, because I don’t yet know how to implement it with the All Goal option. For now, I’m implementing removal of always-useless items in a fixed way, with a few tests for the items mentioned above, and I empty things as much as possible in Required Only.
The goal here is simply to start exploring a possible direction for the implementation.
This is an example of seed with Required Only and Item Pool Barren.
OoT_E4144_RZ71H1T690_Spoiler.json
Testing
At the moment, the implementation isn’t finished. I obviously haven’t written any unit tests for it yet — I’ve only generated seeds using the item pool.
I also tried it on realrob’s branch, with enemy shuffle, souls, and grass, and it works pretty well.