Prototype of a system to whitelist known game patches that are allowed to be used while RetroAchievements Hardcore mode is active. ApprovedInis.txt contains known hashes for the ini files as they appear in the repo, and can be compared to the local versions of these files to ensure they have not been edited locally by the player. ApprovedInis.txt is hashed and verified similarly first, with its hash residing as a const string within AchievementManager.h, ensuring ApprovedInis and the hashes within cannot be modified without editing Dolphin's source code and recompiling completely.
Having settings for each game in more than one file is redundant.
Now, region-free INIs are now only for settings, and region-specific
INIs are only for AR codes and patches. Exceptions are made for
titles that share the first three characters of their IDs with
unrelated titles (mostly unlicensed titles and Triforce titles).