Platform

library.json

library.json is a configurable file of how the game will appear in your library. This file is only valid for entries that are not in the built-in database. By editing this file, you can describe how the library entry should function and its defaults.

The file is located in /Library/N64/Games/{Game Folder}/library.json.

Sample File

library.json
{
"$schema": "https://schemas.analogue.co/platform/3d/library.json",
"data": {
"title": "Unknown Cartridge",
"revision": 0,
"player_count": 4,
"accessories": ["controller-pak"],
"region": ["usa"],
"developers": ["Acme Inc"],
"publishers": ["Acme Inc"],
"release_year": 2026
},
"defaults": {
"virtual_expansion_pak": true,
"region": "auto",
"disable_deblur": false,
"enable_32_bit_color": false,
"force_progressive_output": false,
"disable_texture_filtering": false,
"disable_anti_aliasing": false,
"force_original_hardware": false,
"horizontal_upscaling": false,
"overclock": "off",
"virtual_accessory": "rumble-pak",
"cart_color": "gray"
}
}

Schema

You can add autocompletion, type checking, schema validation and in-editor documentation by using a JSON schema for library.json.

To enable this, add the $schema key to your JSON file pointing at https://schemas.analogue.co/platform/3d/library.json like the example below.

/Library/Games/{Game Folder}/library.json
{
  "$schema": "https://schemas.analogue.co/platform/3d/library.json"
  // ...
}

JSON Definitions

dataobjectrequired

titlestringrequired

The title of the library entry. The maximum length of this is 127 characters.

revisionnumberrequired

The revision number, starting with 0. These will be translated into "Rev 1", "Rev 2" and so on depending on which platform you are using.

player_countnumberrequired

The number of players available. On Analogue3D, this has a maximum of 4.

accessoriesarray[string]required

A list of accessories that this title is compatible with. On Analogue3D, this has a maximum of 5.

Accepted values

controller-pakexpansion-pakrumble-paktransfer-pakvoice-recognition-unit-usavoice-recognition-system-japandenshadego-controllerbio-sensortsurikon-64n64-mouse
regionarray[string]required

Specifies the region(s) that this title was published in.

Accepted values

asiaaustraliabrazilgermanyeuropefranceenglanditalyjapannetherlandsportugalspainusa
developersarray[string]required

A list of the developer or developers

publishersarray[string]

A list of the publisher or publishers

release_yearnumberrequired

defaultsobjectrequired

cart_colorstringrequired

This should specify the default color of the cartridge in the library. It can be overwritten in settings.json.

Accepted values

grayredgreenblueyellowgoldblackpurplerose
disable_anti_aliasingbooleanrequired

disable_deblurbooleanrequired

disable_texture_filteringbooleanrequired

enable_32_bit_colorbooleanrequired

force_original_hardwarebooleanrequired

force_progressive_outputbooleanrequired

horizontal_upscalingbooleanrequired

overclockstringrequired

Accepted values

autoenhancedenhanced-plusunleashed
regionstringrequired

Accepted values

autontscpal
virtual_accessorystringrequired

Accepted values

no-pakcontroller-pakrumble-pak
virtual_expansion_pakbooleanrequired