Game Metadata
Game developers could add to their websites a simple metadata file that contains all the essential details about their game(s) in a format that is easy to parse and aggregate by potential websites/services/tools/clients.
By standardizing the location and format of this metadata we can facilitate automated discovery processes (e.g. the development of scraping tools) and aggregation (e.g. building a library of games in a database).
By having developers host these metadata files themselves we give them ownership of the details of their games, how they're presented (to some degree), and where to drive interested players to download or purchase their games.
Metadata Format
JSON is easy to read and write both in code and by hand which makes it a reasonable choice. Specifically, we should use JSON5 for the added features.
Metadata Contents
The Game Metadata file should contain the essential details about a game. For example: title, developer, publisher, description, genre, URL(s) to buy or download, etc. We should include information that would be useful to a potential player when browsing games to check out. We can look at existing platforms like Steam and itch.io for inspiration.
We'll need to decide exactly which details we want to include and how they should be represented in JSON.
Please see the Game Metadata Contents page for the detailed contents.
Distribution
There are many potential ways that a game metadata file could be distributed but keeping in mind the objective of discoverability we should start with web-based distribution.
Well-known URI
There's an established standard for web-based metadata files being stores in a special .well-known subfolder. We could add a new file here with a standardized name (e.g. game-metadata.json) to make the game metadata easy to find.
HTML Meta Tags
The metadata file could also be linked to a webpage using a <link> or <meta> tag in the <head> section. For example:
<link rel="alternate" type="application/game+metadata" href="game-metadata.json" />
Included in Game
The metadata file could even be included in the distribution of the game itself. This could be useful in the development of game launchers.
Metadata Applications
How will these metadata files be used? We probably shouldn't be very prescriptive about this, at least not from the perspective of defining the game metadata.
However, here are some possible ways that the data could be used:
- Building a web scraper that automatically discovers game metadata throughout the web to compile a comprehensive database.
- Building a curated index of games where developers can submit their games as metadata files or links.
- Using an index of game metadata (possibly compiled by another party) to build a website that resembles familiar platforms like Steam (except users will need to navigate to the developer website to make a purchase).
- Similar to the above but extended to a desktop game launcher.
Please use the Game Metadata Applications page to discuss this topic in more detail.
Potential Issues
Bad actors could publish metadata files for other people's games
For example, a bad actor could publish a game metadata file with a link to malicious websites, even for a game they didn't make. If this malicious metadata is picked up by indexes/catalogs/search engines it could mislead players into thinking this is the official website for this game.