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

[BUGFIX] Made changeDiff not use the suffixed difficulty as the current difficulty on freeplay #3469

Closed

Conversation

AppleHair
Copy link
Contributor

Does this PR close any issues? If so, link them below.

Nope.

Briefly describe the issue(s) fixed.

In the changeDiff method of FreeplayState, when the current song isn't "Random", rememberedDifficulty gets assigned to the suffixed version of currentDifficulty instead of currentDifficulty itself. Later, when generateSongList gets called, currentDifficulty gets assigned to rememberedDifficulty, which means currentDifficulty changed to its suffixed version.

Because difficulty selection in freeplay doesn't use the suffixed versions of the difficulties, adding the suffix creates some bugs. From my testing (which I recorded a video of), I found that the bugs prevent freeplay from selecting custom difficulties on variations other than "default" and "erect", and even make freeplay display the remembered song incorrectly when coming back from another state. I'm using the term "custom difficulties" because the pico and bf variations are somehow not affected by any of this. Nevertheless, the fix I have here prevents rememberedDifficulty from getting assigned to the suffixed version of currentDifficulty in the changeDiff method and fixes all of the problems without affecting the pico and bf variations.

Include any relevant screenshots or videos.

Before

Bugs.Showcase.Before.mp4

After

As you can see at the end of the video, the bf variation in "Darnell (BF Mix)" doesn't get affected by this fix, and is still selectable. I also checked this in the pico remixes and everything there works the same.

PR.Fix.Showcase.After.mp4

…rent difficulty on freeplay

In the `changeDiff` method of `FreeplayState`, when the current song isn't "Random", `rememberedDifficulty` gets assigned to the suffixed version of  `currentDifficulty` instead of `currentDifficulty` itself. Later, when `generateSongList` gets called, `currentDifficulty` gets assigned to `rememberedDifficulty`, which means `currentDifficulty` changed to its suffixed version.

Because difficulty selection in freeplay doesn't use the suffixed versions of the difficulties, adding the suffix creates some bugs. From my testing (which I recorded a video of), I found that the bugs prevent freeplay from selecting custom difficulties on variations other than "default" and "erect".
@EliteMasterEric EliteMasterEric added the status: pending triage The bug or PR has not been reviewed yet. label Oct 1, 2024
@AppleHair AppleHair marked this pull request as draft October 1, 2024 06:58
@AppleHair AppleHair closed this Oct 4, 2024
@AppleHair AppleHair deleted the bugfix/diff-suffix-on-freeplay branch October 4, 2024 12:48
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
status: pending triage The bug or PR has not been reviewed yet.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants