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

[Move][Beta] Freeze-dry Re-implementation #4874

Merged
merged 1 commit into from
Nov 15, 2024

Conversation

PigeonBar
Copy link
Collaborator

@PigeonBar PigeonBar commented Nov 15, 2024

What are the changes the user will see?

  1. Freeze-dry will correctly account for Terastallization.
  2. Freeze-dry will correctly account for a third type added by Forest's Curse.

Why am I making these changes?

#4840 making FreezeDryAttr fully recalculate Freeze-dry's type effectiveness is not ideal. Moreover, that PR did not match the usual type effectiveness calculations exactly, leading to the bugs described above.

What are the changes from a developer perspective?

  1. FreezeDryAttr now extends a new class VariableMoveTypeChartAttr that applies type chart changes to each of the target's individual types.
  2. Removed an .edgeCase() tag regarding Freeze-Dry's interaction with Tera Shell, since this interaction works correctly. Also added a test for the Tera Shell interaction.
  3. Added some more tests.

@geeilhan Sorry for undoing your hard work. You tried your best, and we truly appreciate your work.

Screenshots/Videos

Before the changes: Freeze-dry is 1x effective against Empoleon affected by Forest's Curse
20241114.Before.Fix.Forests.Curse.mp4
After the changes: Freeze-dry is 2x effective against Empoleon affected by Forest's Curse
20241114.After.Fix.Forests.Curse.mp4
Before the changes: Freeze-dry is 1x effective against Tera-Water Camerupt
20241114.Before.Fix.Tera.mp4
After the changes: Freeze-dry is 2x effective against Tera-Water Camerupt
20241114.After.Fix.Tera.mp4
After the changes: Freeze-dry is still 0.5x effective against Tera Shell
20241114.Tera.Shell.mp4

How to test the changes?

npm run test freeze_dry

Checklist

  • I'm using beta as my base branch
  • There is no overlap with another PR?
  • The PR is self-contained and cannot be split into smaller PRs?
  • Have I provided a clear explanation of the changes?
  • Have I considered writing automated tests for the issue?
  • [ ] If I have text, did I make it translatable and add a key in the English locale file(s)?
  • Have I tested the changes (manually)?
    • Are all unit tests still passing? (npm run test)
  • Are the changes visual?
    • Have I provided screenshots/videos of the changes?

@PigeonBar PigeonBar requested a review from a team as a code owner November 15, 2024 03:45
@DayKev DayKev added Enhancement New feature or request Move Affects a move Refactor Rewriting existing code related P2 Bug Minor. Non crashing Incorrect move/ability/interaction labels Nov 15, 2024
Copy link
Collaborator

@DayKev DayKev left a comment

Choose a reason for hiding this comment

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

I was beginning to think Freeze-Dry would never be 100% complete, just always adding more 9s to 99.9...% completion.

@DayKev DayKev changed the title [P2][Beta] Freeze-dry Re-implementation [Move][Beta] Freeze-dry Re-implementation Nov 15, 2024
@frutescens frutescens merged commit b1138c1 into pagefaultgames:beta Nov 15, 2024
13 checks passed
@geeilhan
Copy link
Contributor

Thanks for making it better :)

@PigeonBar PigeonBar deleted the fix-freeze-dry branch November 15, 2024 13:16
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Enhancement New feature or request Move Affects a move P2 Bug Minor. Non crashing Incorrect move/ability/interaction Refactor Rewriting existing code related
Development

Successfully merging this pull request may close these issues.

5 participants