Help Understanding RPCS3 Compatibility List Data Mapping
Started by imonglue




1 posts in this topic
imonglue
Member


0
1 posts 1 threads Joined: Jan 2025
01-18-2025, 09:29 PM -
#1
Hello everyone,
I’m new to posting here, but I’ve been working on a project and wanted to reach out for some guidance. I’m querying the RPCS3 Compatibility API (https://rpcs3.net/compatibility?api=v1&export) to pull down the compatibility data, processing it in Python, and saving it to a CSV for use in automation and file mapping on my computer.

What I’m Trying to Achieve:
I’m aiming to create a CSV file containing all the entries from the compatibility list, including game_id, title, status, and other fields. This will help me better manage my collection and automate certain tasks.

How I’m Going About It:
I’m using Python to fetch the JSON data from the API.
The data is parsed into a Pandas DataFrame, and I process it to:
Extract relevant fields such as game_id, title, and status.
Save it as both a cleaned JSON file and a CSV for further use.

What I’ve Observed:
While inspecting the JSON data, I noticed that some game_ids lack the patchsets field, which normally contains the title of the game. However, when I check the RPCS3 Compatibility website, those same game_ids are correctly mapped to their titles.

My Question:
Is there an additional source or internal mapping that the RPCS3 Compatibility List uses to connect game_ids to their titles when the patchsets field is missing in the JSON? If so, how can I access or replicate this mapping
I’d appreciate any insights into how this mapping is achieved or advice on how I might fill in the gaps for missing titles in the JSON data.
I’m happy to share my Python code for pulling and processing the data if it would be helpful.

Example:
When parsing through the data from the .json, I came across game_id 'BLUS30279'. This game_id is mapped to Batman: Arkham Asylum on https://rpcs3.net/compatibility?g=asylum#jump but when you examine the .json file, there is no patchsets information, thus there is no title to map to the game_id. 
From .json:
"BLUS30279": {
"status": "Playable",
"date": "2023-03-18",
"update": "",
"patchsets": []
},

Thank you!
Ani
Administrator
*******


16
4,410 posts 108 threads Joined: Aug 2017
01-18-2025, 11:48 PM -
#2
The patchsets data comes from the PS3 updates API as-is, we don't modify the data other than importing it as XML and exporting it as JSON. This data is completely optional and it's only used by the emulator to display if an update is available, or to display changelog information when installing a package, if available. This data is not used in any way by the compatibility list other than displaying the list of available updates, when you click a table row in order to expand it to show update information.

Game titles are not exported through that API since it's data meant for emulator usage where the game title is already present. There are several other fields in the database such as wiki page ID, forum thread ID that are not exported since it's data the emulator doesn't use.
    Desktop: Ryzen 7 5800X,   Radeon RX 6800 XT, 2x8G DDR4 3600MHz, Manjaro Linux
     Laptop: Ryzen 9 5900HX,  Radeon RX 6700M,   2x8G DDR4 3200MHz, Manjaro Linux
Old Desktop: AMD FX-8350,     Radeon R9 280X,    2x4G DDR3 1600MHz, Manjaro Linux


Forum Jump:


Users browsing this thread: 2 Guest(s)