Add generation of rcheevos hash as an option in DolphinTool #13035
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Allows the user to generate a RetroAchievements Game Identification hash via the command line for GameCube games in all file formats supported by Dolphin. RA does a quick hash of selected files within a disc image, rather than a very slow full MD5 hash.
This is useful for external game launchers like LaunchBox, who need to identify which files are supported by RA so that information can be queried and displayed on their frontend.
This usually done by RAHasher, an external tool provided by the RA developers with the reference implementation on how to hash game files for each platform they support. However, while it supports reading of common disc formats like ISO and CHD, it doesn't have support for emulator-specific formats such as RVZ and some others used by Dolphin - RetroAchievements/RALibretro#415
Without having to translate over a bunch of Dolphin's DiscIO code into RAHasher so it can understand all of Dolphin's formats, or create an open-source library for handling them, this seems like the easiest way to solve the problem that RVZ games can't be identified.
Next steps after this would be to embed the hashing properly within
VolumeVerifier
and show this information on the Game Properties page as well, but that's a little more involved as Dolphin's current link with the rcheevos library only seems to support a file path, not working with an existing volume.