ow-mod-db/mods.schema.json
Raicuparta e4571d4441
Thumbnail property again (#1043)
* Reapply "Reapply "Specify mod thumbnail in database (#1036)""

This reverts commit a7567248da0f1cf0b100eafbf4972f8e67b83ee5.

* keep previous mod thumbnail
2025-05-31 13:53:22 +02:00

96 lines
3.6 KiB
JSON

{
"$schema": "http://json-schema.org/draft-04/schema#",
"title": "Outer Wilds Mod Database Schema",
"type": "object",
"additionalProperties": false,
"required": [
"mods"
],
"properties": {
"$schema": {
"type": "string"
},
"mods": {
"type": "array",
"items": {
"additionalProperties": false,
"required": [
"name",
"uniqueName",
"repo"
],
"properties": {
"name": {
"type": "string",
"description": "Human-readable title for your mod."
},
"uniqueName": {
"type": "string",
"description": "Your mod's ID, unchangeable and unique within the whole database. IMPORTANT: must match uniqueName from your mod's manifest.json. If you're editing an existing mod, this must match the uniqueName of that mod. This property can't be edited."
},
"repo": {
"type": "string",
"description": "GitHub repository that contains the mod's source code and releases."
},
"required": {
"type": "boolean",
"description": "Mods marked as required must be installed before starting the game."
},
"utility": {
"type": "boolean",
"description": "True if this mod isn't useful by itself, and only serves as a dependency for other mods."
},
"thumbnailUrl": {
"type": "string",
"description": "Full URL to a thumbnail image that will be used on the website and mod manager. Ideally in a 3:1 ratio (example: 900 by 300 pixels)"
},
"authorDisplay": {
"type": "string",
"description": "Custom name to show in the author field for this mod. Useful if your mod is in an organization, or made by multiple people. Leave blank to use the repository owner name."
},
"parent": {
"type": "string",
"description": "If this mod is an addon for another mod, place the parent's uniqueName here. For instance, custom planets made with New Horizons would have xen.NewHorizons in this field."
},
"alpha": {
"type": "boolean",
"description": "True if this mod is made for Outer Wilds Alpha."
},
"tags": {
"type": "array",
"description": "List of tags that describe the mod, used for filtering mod lists. If changing this list, make sure to also update the tags in the issue template add-mod.yml",
"items": {
"enum": [
"jam",
"library",
"gameplay",
"tweaks",
"integration",
"tool",
"content",
"story",
"audiovisual",
"localization",
"requires-dlc"
]
}
},
"downloadCountOffset": {
"type": "number",
"description": "An amount that will be added to the mod's current download count."
},
"firstReleaseDateOverride": {
"type": "string",
"description": "A date that will override the current first release date. Format: YYYY-MM-DDThh:mm:ssZ"
},
"repoVariations": {
"type": "array",
"description": "List of previous GitHub repository names. Used for merging download count history. Do not use if current repo is fork of original repo.",
"items": {"type": "string"}
}
}
}
}
}
}