You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
"description": "Schema for Manual's options.json",
5
+
"type": "object",
6
+
"properties": {
7
+
"$schema": {
8
+
"description": "The schema to verify this document against.",
9
+
"type":"string"
10
+
11
+
},
12
+
"core": {
13
+
"description": "Dictionary of the Modifications of Core Options of Manual",
14
+
"type": "object",
15
+
"patternProperties": {
16
+
"^_.*$": {
17
+
"description": "A commented out Option Modification",
18
+
"$ref": "#/definitions/OptionCore"
19
+
},
20
+
"^.*$": {
21
+
"description": "A Modification of a Core Option of Manual",
22
+
"$ref": "#/definitions/OptionCore"
23
+
}
24
+
}
25
+
},
26
+
"user": {
27
+
"description": "Dictionary of options for this apworld",
28
+
"type": "object",
29
+
"patternProperties": {
30
+
"^_.*$": {
31
+
"description": "A commented out Option",
32
+
"allOf": [{"$ref": "#/definitions/OptionBase"}],
33
+
"properties": {
34
+
"type": {"$ref": "#/definitions/Type"}
35
+
}
36
+
},
37
+
"^.*$": {
38
+
"description": "An Option for your World, the possible properties depend on the type of option you set in \"type\"\nToggle: \"default\"* \n Let the player choose between yes or no \nChoice: \"values\"*, \"aliases\", \"default\" and \"allow_custom_value\"\n Let the player pick from a list of values \nRange: \"range_start\", \"range_end\", \"default\" and an \"values\"\nAllow the player to specify a number between 'start' and 'end'",
39
+
"$ref": "#/definitions/OptionUser"
40
+
}
41
+
}
42
+
},
43
+
"_comment": {"$ref": "#/definitions/comment"}
44
+
},
45
+
"definitions": {
46
+
"OptionBase": {
47
+
"$comment": "The basic properties of an Option that are safe to modify",
48
+
"type": "object",
49
+
"properties": {
50
+
"display_name": {
51
+
"description": "(Optional) The name shown in the spoiler logs and on the website options pages",
52
+
"type": "string"
53
+
},
54
+
"description": {
55
+
"description": "(Optional) A long description of what this option is for, as shown in the yaml template or on hover of the (?) on the website options pages",
56
+
"type": ["array", "string"],
57
+
"items": {"type": "string"}
58
+
},
59
+
"rich_text_doc": {
60
+
"description": "(Optional) Enables support for HTML generated from the standard Python reStructuredText format for your description. \nfor more info: https://github.com/ArchipelagoMW/Archipelago/blob/main/docs/options%20api.md#option-documentation",
61
+
"type": "boolean",
62
+
"default": false
63
+
},
64
+
"group": {
65
+
"description": "(Optional) The name of the group this option is a part of on the website options pages",
66
+
"type": "string",
67
+
"default": "Game Options",
68
+
"examples": ["Item & Location Options", "Example Options", "Option Group Name"]
69
+
},
70
+
"hidden": {
71
+
"description": "(Optional) Should this option be Hidden everywhere? Use Visibility instead for a more precise control",
72
+
"type": "boolean",
73
+
"default": false
74
+
},
75
+
"visibility": {
76
+
"description": "(Optional) (Advanced) Specify where this option can be seen. \nIt can be represented by the value names, an array of those, \nthe binary string representation of that choice (\"0b1111\") or the integer value of the binary \nEvery example values other than 'none' and 'all' gives the same results aka 14 aka 0b1110 aka that array \nMore info at https://github.com/ArchipelagoMW/Archipelago/blob/main/docs/options%20api.md#option-visibility",
"description": "The type of this options. \nHover your mouse on any uncommented option's name to get a list of valid types for Manual options and a short description for each",
138
+
"type": "string",
139
+
"enum": ["Toggle", "Choice", "Range"]
140
+
},
141
+
"ChoiceValue": {
142
+
"description": "A dictionary of possible values in the format {\"name\":0, \"other name\":2} \nUnless the default is changed, there need to be a defined value of 0.",
143
+
"type":"object",
144
+
"patternProperties": {
145
+
"^.*$": {
146
+
"description": "An int value this option can have",
147
+
"type": "integer"
148
+
}
149
+
}
150
+
151
+
},
152
+
"ChoiceAlias": {
153
+
"description": "(Optional) A dictionary of aliases in the format {\"name\":0, \"other name\":2} or {\"name\":\"name of another value/alias\"}",
154
+
"type": "object",
155
+
"patternProperties": {
156
+
"^.*$": {
157
+
"description": "An alias for one of this option's value",
158
+
"type": ["integer", "string"]
159
+
}
160
+
}
161
+
},
162
+
"ChoiceAllowCustomValue": {
163
+
"description": "(Optional) Allow the user to set their own custom string Value",
164
+
"type": "boolean",
165
+
"default": false
166
+
},
167
+
"RangeStart": {
168
+
"type": "integer",
169
+
"description": "(Optional) The lowest Value for this range",
170
+
"default": 0
171
+
},
172
+
"RangeEnd": {
173
+
"type":"integer",
174
+
"description": "(Optional) The Highest Value for this range",
175
+
"default": 1
176
+
},
177
+
"SpecialRangeNames_base": {
178
+
"type":"object",
179
+
"patternProperties": {
180
+
"^.*$": {
181
+
"description": "A named numerical value",
182
+
"type": "integer"
183
+
}
184
+
},
185
+
"default": {},
186
+
"examples": [{"test": 1}]
187
+
},
188
+
"SpecialRangeNames": {
189
+
"description": "(Optional) A Special Dictionary in the format {\"name\":0, \"other name\":2} of named values for this range \nAll names need to be lowercase",
"description": "(Optional) A Special Dictionary in the format {\"name\":0, \"other name\":2} of named values for this range \nAll names need to be lowercase \nForbidden for Options of type Choice",
"""Verify that the input is a str. If it's a list[str] then it combine them into a str in a way that works with yaml template/website options descriptions"""
0 commit comments