|
5 | 5 | "default": [], |
6 | 6 | "title": "Blood on the Clocktower Custom Script", |
7 | 7 | "minItems": 5, |
8 | | - "maxItems": 151, |
| 8 | + "maxItems": 201, |
9 | 9 | "items": { |
10 | 10 | "oneOf": [ |
11 | 11 | { |
12 | 12 | "type": "object", |
13 | 13 | "title": "Script Character", |
14 | | - "required": [ |
15 | | - "id", |
16 | | - "name", |
17 | | - "team", |
18 | | - "ability" |
19 | | - ], |
| 14 | + "required": ["id", "name", "team", "ability"], |
20 | 15 | "additionalProperties": false, |
21 | 16 | "properties": { |
22 | 17 | "id": { |
23 | 18 | "type": "string", |
24 | 19 | "title": "Character ID, alphanumeric lowercase", |
25 | 20 | "maxLength": 50, |
26 | | - "examples": [ |
27 | | - "washerwoman", |
28 | | - "lilmonsta", |
29 | | - "fanggu" |
30 | | - ] |
| 21 | + "examples": ["washerwoman", "lilmonsta", "fanggu"] |
31 | 22 | }, |
32 | 23 | "name": { |
33 | 24 | "type": "string", |
34 | 25 | "title": "Character name", |
35 | 26 | "maxLength": 30, |
36 | | - "examples": [ |
37 | | - "Washer Woman", |
38 | | - "Lil' Monsta", |
39 | | - "Fang-Gu" |
40 | | - ] |
| 27 | + "examples": ["Washer Woman", "Lil' Monsta", "Fang-Gu"] |
41 | 28 | }, |
42 | 29 | "image": { |
43 | 30 | "oneOf": [ |
44 | 31 | { |
45 | 32 | "type": "string", |
46 | 33 | "format": "uri", |
47 | 34 | "title": "Character icon", |
48 | | - "examples": [ |
49 | | - "https://i.imgur.com/character-icon.png" |
50 | | - ] |
| 35 | + "examples": ["https://i.imgur.com/character-icon.png"] |
51 | 36 | }, |
52 | 37 | { |
53 | 38 | "type": "array", |
|
94 | 79 | "type": "string", |
95 | 80 | "title": "The edition ID", |
96 | 81 | "maxLength": 50, |
97 | | - "examples": [ |
98 | | - "tb", |
99 | | - "bmr", |
100 | | - "snv", |
101 | | - "fallofrome" |
102 | | - ] |
| 82 | + "examples": ["tb", "bmr", "snv", "fallofrome"] |
103 | 83 | }, |
104 | 84 | "ability": { |
105 | 85 | "type": "string", |
|
124 | 104 | "firstNight": { |
125 | 105 | "type": "number", |
126 | 106 | "title": "First night wake-up priority. 0 means this character doesn't wake during the first night.", |
127 | | - "examples": [ |
128 | | - 37, |
129 | | - 0, |
130 | | - 15 |
131 | | - ] |
| 107 | + "examples": [37, 0, 15] |
132 | 108 | }, |
133 | 109 | "firstNightReminder": { |
134 | 110 | "type": "string", |
|
143 | 119 | "otherNight": { |
144 | 120 | "type": "number", |
145 | 121 | "title": "Other nights wake-up priority. 0 means this character doesn't wake during other nights.", |
146 | | - "examples": [ |
147 | | - 0, |
148 | | - 10, |
149 | | - 15 |
150 | | - ] |
| 122 | + "examples": [0, 10, 15] |
151 | 123 | }, |
152 | 124 | "otherNightReminder": { |
153 | 125 | "type": "string", |
|
167 | 139 | "items": { |
168 | 140 | "type": "string", |
169 | 141 | "maxLength": 30, |
170 | | - "examples": [ |
171 | | - "Townsfolk", |
172 | | - "Wrong", |
173 | | - "Dead", |
174 | | - "Is The Demon" |
175 | | - ] |
| 142 | + "examples": ["Townsfolk", "Wrong", "Dead", "Is The Demon"] |
176 | 143 | } |
177 | 144 | }, |
178 | 145 | "remindersGlobal": { |
|
183 | 150 | "items": { |
184 | 151 | "type": "string", |
185 | 152 | "maxLength": 25, |
186 | | - "examples": [ |
187 | | - "Drunk", |
188 | | - "Is The Philosopher" |
189 | | - ] |
| 153 | + "examples": ["Drunk", "Is The Philosopher"] |
190 | 154 | } |
191 | 155 | }, |
192 | 156 | "setup": { |
|
200 | 164 | "items": { |
201 | 165 | "type": "object", |
202 | 166 | "title": "An individual Jinx pair", |
203 | | - "required": [ |
204 | | - "id", |
205 | | - "reason" |
206 | | - ], |
| 167 | + "required": ["id", "reason"], |
207 | 168 | "properties": { |
208 | 169 | "id": { |
209 | 170 | "type": "string", |
210 | 171 | "title": "The ID of the other character this one is jinxed with.", |
211 | 172 | "maxLength": 50, |
212 | | - "examples": [ |
213 | | - "spy", |
214 | | - "fanggu", |
215 | | - "lilmonsta" |
216 | | - ] |
| 173 | + "examples": ["spy", "fanggu", "lilmonsta"] |
217 | 174 | }, |
218 | 175 | "reason": { |
219 | 176 | "type": "string", |
|
233 | 190 | "items": { |
234 | 191 | "type": "object", |
235 | 192 | "title": "A special app integration feature", |
236 | | - "required": [ |
237 | | - "name", |
238 | | - "type" |
239 | | - ], |
| 193 | + "required": ["name", "type"], |
240 | 194 | "properties": { |
241 | 195 | "type": { |
242 | 196 | "type": "string", |
|
346 | 300 | "team": "townsfolk", |
347 | 301 | "firstNightReminder": "Show the Townsfolk character token. Point to both the *TOWNSFOLK* and *WRONG* players.", |
348 | 302 | "otherNightReminder": "", |
349 | | - "reminders": [ |
350 | | - "Townsfolk", |
351 | | - "Wrong" |
352 | | - ], |
| 303 | + "reminders": ["Townsfolk", "Wrong"], |
353 | 304 | "setup": false, |
354 | 305 | "ability": "You start knowing that 1 of 2 players is a particular Townsfolk.", |
355 | 306 | "flavor": "Bloodstains on a dinner jacket? No, this is cooking sherry. How careless.", |
|
363 | 314 | "title": "Official character ID", |
364 | 315 | "maxLength": 20, |
365 | 316 | "description": "If you want to include official characters in the script, it is sufficient to provide their ID as a string", |
366 | | - "examples": [ |
367 | | - "soldier", |
368 | | - "imp", |
369 | | - "washerwoman" |
370 | | - ] |
| 317 | + "examples": ["soldier", "imp", "washerwoman"] |
371 | 318 | }, |
372 | 319 | { |
373 | 320 | "type": "object", |
374 | 321 | "title": "Script Metadata", |
375 | | - "required": [ |
376 | | - "id", |
377 | | - "name" |
378 | | - ], |
| 322 | + "required": ["id", "name"], |
379 | 323 | "properties": { |
380 | 324 | "id": { |
381 | 325 | "type": "string", |
382 | 326 | "title": "The ID property must be called '_meta' for the Script metadata object.", |
383 | | - "enum": [ |
384 | | - "_meta" |
385 | | - ] |
| 327 | + "enum": ["_meta"] |
386 | 328 | }, |
387 | 329 | "name": { |
388 | 330 | "type": "string", |
389 | 331 | "title": "The script name", |
390 | 332 | "maxLength": 50, |
391 | | - "examples": [ |
392 | | - "Fall of Rome", |
393 | | - "My Custom Homebrew" |
394 | | - ] |
| 333 | + "examples": ["Fall of Rome", "My Custom Homebrew"] |
395 | 334 | }, |
396 | 335 | "author": { |
397 | 336 | "type": "string", |
398 | 337 | "title": "The script author", |
399 | 338 | "maxLength": 50, |
400 | | - "examples": [ |
401 | | - "The Pandemonium Institute", |
402 | | - "Your Name" |
403 | | - ] |
| 339 | + "examples": ["The Pandemonium Institute", "Your Name"] |
404 | 340 | }, |
405 | 341 | "logo": { |
406 | 342 | "type": "string", |
407 | 343 | "format": "uri", |
408 | 344 | "maxLength": 250, |
409 | 345 | "title": "The script logo image", |
410 | | - "examples": [ |
411 | | - "https://imgur.com/logo.png" |
412 | | - ] |
| 346 | + "examples": ["https://imgur.com/logo.png"] |
413 | 347 | }, |
414 | 348 | "hideTitle": { |
415 | 349 | "type": "boolean", |
|
420 | 354 | "format": "uri", |
421 | 355 | "maxLength": 250, |
422 | 356 | "title": "The script background image", |
423 | | - "examples": [ |
424 | | - "https://imgur.com/background.jpg" |
425 | | - ] |
| 357 | + "examples": ["https://imgur.com/background.jpg"] |
426 | 358 | }, |
427 | 359 | "almanac": { |
428 | 360 | "type": "string", |
|
513 | 445 | "type": "object", |
514 | 446 | "title": "Official Character (deprecated)", |
515 | 447 | "deprecated": true, |
516 | | - "required": [ |
517 | | - "id" |
518 | | - ], |
| 448 | + "required": ["id"], |
519 | 449 | "additionalProperties": false, |
520 | 450 | "properties": { |
521 | 451 | "id": { |
522 | 452 | "type": "string", |
523 | 453 | "maxLength": 20, |
524 | 454 | "title": "Official character ID", |
525 | | - "examples": [ |
526 | | - "soldier", |
527 | | - "imp", |
528 | | - "washerwoman" |
529 | | - ] |
| 455 | + "examples": ["soldier", "imp", "washerwoman"] |
530 | 456 | } |
531 | 457 | } |
532 | 458 | } |
|
0 commit comments