A collection of Python scripts and modules to speed up the never-ending tasks of keeping everything up to date. Maybe if I automake some of this stuff, I'll eventually have time to play some of these games before I die.
These are all written as personal scripts. While an attempt has been made to not hard-code values like file paths, there's no guarantee that they'll work with your setup.
PRE-RELEASE VERSION
A script that requests all game/hash data from the RetroAchievements API, then compares it against entries in LaunchBox platform data.
Designed to spot when you are missing files in your collection, when files you have may not be the right hash/region/version, or don't have a required patch applied.
LaunchBox data is loaded as read only, so does not edit or update any LaunchBox data files for you. Make all your fixes/changes from within LaunchBox itself, rescan for achievements, close LaunchBox, then run this script again to see updates.
-
Install Python 3 (if asked, make sure that PATH environment variable is set)
-
Open
config_settings.ini
and set the following required values:[LAUNCHBOX]
directory
- Path to your LaunchBox directory (i.e.C:\Emulation\LaunchBox
)
[RETROACHIVEMENTS]
username
- Username for RetroAchievements website, required for API accessapi_key
- Web API key from RetroAchievements Settings page
-
Open
config_consoles.json
and setshould_scan
totrue
for each console/platform you would like to scan -
Run the Python script by opening
lb_cheevo_checker.bat
(or manually runninglb_cheevo_checker.py
)- The first run should install the 'requests-cache' module via Python package installer, which is required for caching of RetroAchievements API data
-
Requests and caches all relevant game/hash from the RetroAchievements API for given platforms
-
Generates and caches RetroAchievement hashes for all 'Additional Application' entries for a LaunchBox platform, something not currently done by LaunchBox itself
- Dev Note: This is because I keep all hacks and subsets as additional applications/versions under each main game entry, so we need to knows these hashes in order to compare
-
Compares all games for a RetroAchievements console to see if one of the compatible hashes matches the saved hash for any LaunchBox game entries
-
Lists any RetroAchievements games that did not match any LaunchBox game entries, and requests/shows additional information about compatible hashes and files
A script for adding RetroAchievements hash data for .rvz files.
A script for renaming files and updating LaunchBox data when a game file is updated, such as revisions in No-Intro and Redump databases.