-
Notifications
You must be signed in to change notification settings - Fork 7
/
MetadataSchema.json
96 lines (96 loc) · 2.42 KB
/
MetadataSchema.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
92
93
94
95
96
{
"$schema": "http://json-schema.org/draft-07/schema#",
"type": "object",
"definitions": {
"semver": {
"type": "string",
"pattern": "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)\\.(0|[1-9]\\d*)(?:-((?:0|[1-9]\\d*|\\d*[a-zA-Z-][0-9a-zA-Z-]*)(?:\\.(?:0|[1-9]\\d*|\\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\\+([0-9a-zA-Z-]+(?:\\.[0-9a-zA-Z-]+)*))?$"
}
},
"properties": {
"id": {
"type": "string",
"description": "Unique id of the mod",
"pattern": "^[a-zA-Z0-9_]+$"
},
"name": {
"type": "string",
"description": "Name of the mod"
},
"author": {
"type": "string",
"description": "Author of the mod",
"pattern": "^.+$"
},
"version": {
"type": "string",
"description": "Version of the mod",
"$ref": "#/definitions/semver"
},
"description": {
"type": "string",
"description": "Description of the mod"
},
"gameVersion": {
"type": "string",
"description": "Game version the mod is compatible with",
"$ref": "#/definitions/semver"
},
"loaderVersion": {
"type": "string",
"description": "Loader version the mod is compatible with",
"$ref": "#/definitions/semver"
},
"platform": {
"type": "string",
"description": "Where this mod is able to run.",
"default": "Client",
"enum": [
"Client",
"Server",
"Universal"
]
},
"dependencies": {
"type": "array",
"items": {
"type": "string"
},
"description": "Optional. List of dependencies of the mod"
},
"logColor": {
"type": "string",
"description": "Optional. The hex string color in which the mod's name will be displayed in the console",
"pattern": "^#([A-Fa-f0-9]{6}|[A-Fa-f0-9]{3})$"
},
"dontApplyPatches": {
"type": "boolean",
"description": "Optional. If the mods harmony patches shouldn't be applied automatically"
},
"url": {
"type": "string",
"description": "Optional. Download url of the mod",
"format": "uri"
},
"priority": {
"type": "integer",
"description": "Optional. Priority of the mod"
},
"type": {
"type": "string",
"description": "Optional. Type of the assembly",
"enum": [
"Mod",
"Library"
]
}
},
"required": [
"id",
"author",
"version",
"description",
"url",
"type"
]
}