Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Pokemon Emerald: Automatically exclude locations based on goal #2655

Merged
merged 2 commits into from
Jan 16, 2024

Conversation

Zunawe
Copy link
Collaborator

@Zunawe Zunawe commented Jan 2, 2024

What is this fixing or adding?

Automatically excludes the specific locations which aren't accessible until after the player's goal is completed.

Excluding locations rather than not creating the locations because I get the item pool from the location pool directly. Removing a location that carries a progression item in the vanilla game would mean I'd have to explicitly add that item back in later and remove a filler item. This is much cleaner, and barely makes a dent in the location count anyway.

It's technically still possible to further detect whether a player could reach post-champion locations without first defeating Norman, but it gets messy, and nobody's asking for that right now anyway. When you play for a Norman goal, you're probably expecting to reach your goal quickly and release without approaching anywhere near full completion.

This pretty much makes the Postgame Locations location group obsolete, but I'll leave it for now and consider removing it in a future update.

How was this tested?

Generating with the various triggering options and checking the spoiler log.

Excludes locations which are always impossible to reach before completing your goal
@NewSoupVi NewSoupVi added the is: enhancement Issues requesting new features or pull requests implementing new features. label Jan 4, 2024
Copy link
Member

@NewSoupVi NewSoupVi left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Extremely awesome feature, more games need this!

I have this as an option in Witness called "shuffle_postgame" and it is felt whenever I accidentally set it wrong, and an important progression item lands "behind !release".

I will say that I do prefer it being an option, because there are "no release" themed games, and for those you are expecting to keep playing after you win, so it's nice to be able to randomly required to do postgame content. But imo, "exclude postgame as an option that is on by default" > "always exclude postgame" >>>>>>>> "never exclude postgame", so this is markedly an improvement.

It looks correct from a programming perspective, don't know enough about Pokemon Emerald to say whether it's right logically, but the comments & code do seemingly match up.

@Berserker66 Berserker66 merged commit 3a58809 into ArchipelagoMW:main Jan 16, 2024
12 checks passed
@Zunawe Zunawe deleted the emerald-excl-post-goal branch February 17, 2024 22:18
Jouramie pushed a commit to Jouramie/Archipelago that referenced this pull request Feb 28, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
is: enhancement Issues requesting new features or pull requests implementing new features.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants