-
Notifications
You must be signed in to change notification settings - Fork 25
/
mods.schema.json
91 lines (91 loc) · 3.35 KB
/
mods.schema.json
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
{
"$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."
},
"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"}
},
}
}
}
}
}