-
Notifications
You must be signed in to change notification settings - Fork 2.7k
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
Core: Combine Gecko cheat code name and creator name into a single field. #13218
base: master
Are you sure you want to change the base?
Core: Combine Gecko cheat code name and creator name into a single field. #13218
Conversation
This PR is more invasive than #13217, as it changes the way in which the While the change remains backwards compatible (see second commit in the PR), it will present some issues when Gecko codes saved by a newer Dolphin version are then loaded in an older Dolphin version. The cheat codes will be preserved, but their enability state will be lost. |
262692e
to
8e0fdd5
Compare
…eld. This aligns Gecko codes with Action Replay codes, where the distinction between code name and creator name has never existed. The main objective of the change is to address potential inconsistencies where two Gecko codes of the same name but of different creator can coexist in the `INI` file but cannot be individually enabled in Dolphin. This was a valid scenario prior to these changes: ```ini [Gecko] $Infinite Power [Alice] <code line 1> <code line 2> <code line 3> <...> $Infinite Power [Bob] <code line 1> <code line 2> <code line 3> <...> [Gecko_Enabled] $Infinite Power ``` Notice that, previously, enabled cheat codes in the `[Gecko_Enabled]` section would only include the cheat code name excluding the creator name (which was technically a different field in Dolphin's data structures). Now, the equivalent INI document lists the cheat code full name (including the creator name), allowing both codes to be enabled separately: ```ini [Gecko] $Infinite Power [Alice] <code line 1> <code line 2> <code line 3> <...> $Infinite Power [Bob] <code line 1> <code line 2> <code line 3> <...> [Gecko_Enabled] $Infinite Power [Alice] ``` This also fixes https://bugs.dolphin-emu.org/issues/13695.
This is a follow-up to the previous commit, where the cheat code name and the creator name have been combined into a single field. For backwards compatibility, if an *enabled* cheat code is not found among the available cheat codes, there will be a second attempt to find a match by disregarding the creator name from the available Gecko codes.
8e0fdd5
to
5902e89
Compare
To clarify, the changes proposed here would not affect #13204. Because it only changes how enabled codes are stored in the INI file, and as far as I know none of the built-in cheat codes are enabled by default. I think, for the time being, #13217 is a simpler solution, though. |
This aligns Gecko codes with Action Replay codes, where the distinction between code name and creator name has never existed.
The main objective of the change is to address potential inconsistencies where two Gecko codes of the same name but of different creator can coexist in the
INI
file but cannot be individually enabled in Dolphin.This was a valid scenario prior to these changes:
Notice that, previously, enabled cheat codes in the
[Gecko_Enabled]
section would only include the cheat code name excluding the creator name (which was technically a different field in Dolphin's data structures).Now, the equivalent INI document lists the cheat code full name (including the creator name), allowing both codes to be enabled
separately:
For backwards compatibility, if an enabled cheat code is not found among the available cheat codes, there will be a second attempt to find a match by disregarding the creator name from the available Gecko codes.
This also fixes https://bugs.dolphin-emu.org/issues/13695.