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: Change Lilycove access logic #3277

Merged
merged 2 commits into from
May 8, 2024

Conversation

Zunawe
Copy link
Collaborator

@Zunawe Zunawe commented May 8, 2024

What is this fixing or adding?

There's a sort of happy accident in the region connections between Lilycove City and Route 124. REGION_ROUTE124/MAIN should connect to REGION_LILYCOVE_CITY/SEA, but it's instead connected to REGION_LILYCOVE_CITY/MAIN. It should probably have also had a rule on it preventing traversal from east to west if there are wailmer there, just as you're prevented from going west to east if there are wailmer there.

It was unknown to me until recently, but that is, in fact, how the game behaves. The wall does not exist until you load the map on the west side. Then when you clear the story events that remove it, it goes away again. This would have potentially caused a softlock except that the only way to cross from east to west is to have flown (fast traveled) to a city on the east side via your free fly location. And once you've loaded the wall, you have the ability to fly to Lilycove again as well.

So nothing about the current behavior actually causes any problems, but it's so obscure and unintuitive that I'm going to fix it anyway. I thought about waiting until I could find a way to block you in the game as well, but it turns out to not be trivial, and out of logic access isn't a big deal.

So this changes logic to assume the Lilycove wailmer are a 2-way wall. And it adds some tests that I wrote while checking it.

How was this tested?

New test. Generated a game.

@github-actions github-actions bot added the waiting-on: peer-review Issue/PR has not been reviewed by enough people yet. label May 8, 2024
Copy link
Collaborator

@ScipioWright ScipioWright left a comment

Choose a reason for hiding this comment

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

It gens, tests pass, what more could you ask for?

@ScipioWright ScipioWright added is: bug/fix Issues that are reporting bugs or pull requests that are fixing bugs. waiting-on: core-review Issue/PR has been peer-reviewed and is ready to be merged or needs input from a core maintainer. and removed waiting-on: peer-review Issue/PR has not been reviewed by enough people yet. labels May 8, 2024
Copy link
Member

@Exempt-Medic Exempt-Medic left a comment

Choose a reason for hiding this comment

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

Tests pass, generation succeeds, and the region mapping updates accordingly

@NewSoupVi NewSoupVi merged commit 0f1b16d into ArchipelagoMW:main May 8, 2024
16 checks passed
@Zunawe Zunawe deleted the emerald-fix-lilycove-access branch May 23, 2024 08:42
jnschurig pushed a commit to Tranquilite0/Archipelago-SoulBlazer that referenced this pull request Jun 13, 2024
* Pokemon Emerald: Change logical access to lilycove from east

* Pokemon Emerald: Add tests
qwint pushed a commit to qwint/Archipelago that referenced this pull request Jun 24, 2024
* Pokemon Emerald: Change logical access to lilycove from east

* Pokemon Emerald: Add tests
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
is: bug/fix Issues that are reporting bugs or pull requests that are fixing bugs. waiting-on: core-review Issue/PR has been peer-reviewed and is ready to be merged or needs input from a core maintainer.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants