optolith-database-schema 0.8.0 → 0.9.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +39 -0
- package/lib/config.d.ts +2 -0
- package/lib/config.js +2 -0
- package/lib/types/_Activatable.d.ts +2 -1
- package/lib/types/_ActivatableSkillCastingTime.d.ts +9 -1
- package/lib/types/_ActivatableSkillCost.d.ts +5 -0
- package/lib/types/_Identifier.d.ts +9 -0
- package/lib/types/_IdentifierGroup.d.ts +3 -3
- package/lib/types/_SkillCheck.d.ts +3 -1
- package/lib/types/_SkillCheck.js +2 -0
- package/lib/types/magicalActions/MagicalRune.d.ts +82 -16
- package/lib/types/specialAbility/MagicalSign.d.ts +38 -0
- package/lib/types/specialAbility/MagicalSign.js +5 -0
- package/lib/types/specialAbility/MagicalTradition.d.ts +2 -2
- package/lib/types/specialAbility/ProtectiveWardingCircleSpecialAbility.d.ts +6 -0
- package/lib/types/specialAbility/sub/Language.d.ts +1 -1
- package/lib/types/traditionArtifacts/DaggerRitual.d.ts +1 -1
- package/lib/types/traditionArtifacts/StaffEnchantment.d.ts +1 -1
- package/lib/types/traditionArtifacts/ToyEnchantment.d.ts +1 -1
- package/lib/types/traditionArtifacts/WandEnchantment.d.ts +0 -5
- package/lib/types/traditionArtifacts/WeaponEnchantment.d.ts +2 -1
- package/package.json +1 -1
- package/schema/_ActivatableSkillCastingTime.schema.json +6 -6
- package/schema/_ActivatableSkillCost.schema.json +4 -0
- package/schema/_Identifier.schema.json +18 -0
- package/schema/_IdentifierGroup.schema.json +9 -0
- package/schema/_SkillCheck.schema.json +3 -1
- package/schema/magicalActions/MagicalRune.schema.json +213 -21
- package/schema/specialAbility/CombatStyleSpecialAbility.schema.json +42 -27
- package/schema/specialAbility/LiturgicalStyleSpecialAbility.schema.json +42 -27
- package/schema/specialAbility/MagicStyleSpecialAbility.schema.json +42 -27
- package/schema/specialAbility/MagicalSign.schema.json +72 -0
- package/schema/specialAbility/MagicalTradition.schema.json +0 -2
- package/schema/specialAbility/ProtectiveWardingCircleSpecialAbility.schema.json +6 -0
- package/schema/specialAbility/SkillStyleSpecialAbility.schema.json +42 -27
- package/schema/specialAbility/sub/Language.schema.json +0 -1
- package/schema/traditionArtifacts/DaggerRitual.schema.json +0 -1
- package/schema/traditionArtifacts/StaffEnchantment.schema.json +0 -1
- package/schema/traditionArtifacts/ToyEnchantment.schema.json +0 -1
- package/schema/traditionArtifacts/WandEnchantment.schema.json +1 -9
- package/schema/traditionArtifacts/WeaponEnchantment.schema.json +8 -1
|
@@ -12,8 +12,12 @@
|
|
|
12
12
|
"type": "integer",
|
|
13
13
|
"minimum": 1
|
|
14
14
|
},
|
|
15
|
-
"
|
|
16
|
-
"
|
|
15
|
+
"options": {
|
|
16
|
+
"description": "The options the magical rune has, if any.\n\nIf there are multiple options, the magical rune may be activated for each\noption, that is, multiple times.",
|
|
17
|
+
"type": "array",
|
|
18
|
+
"items": {
|
|
19
|
+
"$ref": "#/$defs/MagicalRuneOption"
|
|
20
|
+
}
|
|
17
21
|
},
|
|
18
22
|
"check": {
|
|
19
23
|
"description": "Lists the linked three attributes used to make a skill check.",
|
|
@@ -33,7 +37,7 @@
|
|
|
33
37
|
},
|
|
34
38
|
"improvement_cost": {
|
|
35
39
|
"description": "States which column is used to improve the skill.",
|
|
36
|
-
"$ref": "
|
|
40
|
+
"$ref": "#/$defs/MagicalRuneImprovementCost"
|
|
37
41
|
},
|
|
38
42
|
"src": {
|
|
39
43
|
"$ref": "../source/_PublicationRef.schema.json#/$defs/PublicationRefs"
|
|
@@ -68,6 +72,10 @@
|
|
|
68
72
|
"description": "The name of the magical rune.\n\nIf the rune has an option, the option’s name will/should not be included in\nthe name as well as its surrounding parenthesis. It will/should be combined\non demand.",
|
|
69
73
|
"$ref": "../_NonEmptyString.schema.json#/$defs/NonEmptyString"
|
|
70
74
|
},
|
|
75
|
+
"name_in_library": {
|
|
76
|
+
"description": "The full name of the entry as stated in the sources. Only use when `name`\nneeds to be different from full name for text generation purposes.",
|
|
77
|
+
"$ref": "../_NonEmptyString.schema.json#/$defs/NonEmptyString"
|
|
78
|
+
},
|
|
71
79
|
"native_name": {
|
|
72
80
|
"description": "The native name of the magical rune.",
|
|
73
81
|
"$ref": "../_NonEmptyString.schema.json#/$defs/NonEmptyString"
|
|
@@ -182,7 +190,6 @@
|
|
|
182
190
|
},
|
|
183
191
|
"required": [
|
|
184
192
|
"name",
|
|
185
|
-
"native_name",
|
|
186
193
|
"effect",
|
|
187
194
|
"cost",
|
|
188
195
|
"crafting_time",
|
|
@@ -196,33 +203,33 @@
|
|
|
196
203
|
"type": "object",
|
|
197
204
|
"properties": {
|
|
198
205
|
"tag": {
|
|
199
|
-
"const": "
|
|
206
|
+
"const": "CombatTechnique"
|
|
200
207
|
},
|
|
201
|
-
"
|
|
202
|
-
"$ref": "#/$defs/
|
|
208
|
+
"combat_technique": {
|
|
209
|
+
"$ref": "#/$defs/MagicalRuneCombatTechniqueCheckPenalty"
|
|
203
210
|
}
|
|
204
211
|
},
|
|
205
212
|
"required": [
|
|
206
213
|
"tag",
|
|
207
|
-
"
|
|
214
|
+
"combat_technique"
|
|
208
215
|
],
|
|
209
216
|
"additionalProperties": false
|
|
210
217
|
}
|
|
211
218
|
]
|
|
212
219
|
},
|
|
213
|
-
"
|
|
220
|
+
"MagicalRuneCombatTechniqueCheckPenalty": {
|
|
214
221
|
"type": "object",
|
|
215
222
|
"properties": {
|
|
216
223
|
"map": {
|
|
217
|
-
"description": "A map from
|
|
224
|
+
"description": "A map from combat techniques to their modifiers.",
|
|
218
225
|
"type": "array",
|
|
219
226
|
"items": {
|
|
220
|
-
"$ref": "#/$defs/
|
|
227
|
+
"$ref": "#/$defs/MagicalRuneCombatTechniqueCheckPenaltyMapping"
|
|
221
228
|
},
|
|
222
229
|
"minItems": 1
|
|
223
230
|
},
|
|
224
231
|
"rest": {
|
|
225
|
-
"$ref": "#/$defs/
|
|
232
|
+
"$ref": "#/$defs/MagicalRuneCombatTechniqueCheckPenaltyRest"
|
|
226
233
|
}
|
|
227
234
|
},
|
|
228
235
|
"required": [
|
|
@@ -231,29 +238,29 @@
|
|
|
231
238
|
],
|
|
232
239
|
"additionalProperties": false
|
|
233
240
|
},
|
|
234
|
-
"
|
|
241
|
+
"MagicalRuneCombatTechniqueCheckPenaltyMapping": {
|
|
235
242
|
"type": "object",
|
|
236
243
|
"properties": {
|
|
237
|
-
"
|
|
238
|
-
"description": "The
|
|
239
|
-
"$ref": "../
|
|
244
|
+
"id": {
|
|
245
|
+
"description": "The combat technique's identifier.",
|
|
246
|
+
"$ref": "../_IdentifierGroup.schema.json#/$defs/CombatTechniqueIdentifier"
|
|
240
247
|
},
|
|
241
248
|
"modifier": {
|
|
242
|
-
"description": "The check modifier for the specified
|
|
249
|
+
"description": "The check modifier for the specified combat technique.",
|
|
243
250
|
"type": "integer"
|
|
244
251
|
}
|
|
245
252
|
},
|
|
246
253
|
"required": [
|
|
247
|
-
"
|
|
254
|
+
"id",
|
|
248
255
|
"modifier"
|
|
249
256
|
],
|
|
250
257
|
"additionalProperties": false
|
|
251
258
|
},
|
|
252
|
-
"
|
|
259
|
+
"MagicalRuneCombatTechniqueCheckPenaltyRest": {
|
|
253
260
|
"type": "object",
|
|
254
261
|
"properties": {
|
|
255
262
|
"modifier": {
|
|
256
|
-
"description": "The check modifier for
|
|
263
|
+
"description": "The check modifier for combat techniques not specified in `map`.",
|
|
257
264
|
"type": "integer"
|
|
258
265
|
}
|
|
259
266
|
},
|
|
@@ -287,6 +294,61 @@
|
|
|
287
294
|
"additionalProperties": false
|
|
288
295
|
},
|
|
289
296
|
"MagicalRuneCost": {
|
|
297
|
+
"oneOf": [
|
|
298
|
+
{
|
|
299
|
+
"type": "object",
|
|
300
|
+
"properties": {
|
|
301
|
+
"tag": {
|
|
302
|
+
"const": "Single"
|
|
303
|
+
},
|
|
304
|
+
"single": {
|
|
305
|
+
"$ref": "#/$defs/SingleMagicalRuneCost"
|
|
306
|
+
}
|
|
307
|
+
},
|
|
308
|
+
"required": [
|
|
309
|
+
"tag",
|
|
310
|
+
"single"
|
|
311
|
+
],
|
|
312
|
+
"additionalProperties": false
|
|
313
|
+
},
|
|
314
|
+
{
|
|
315
|
+
"type": "object",
|
|
316
|
+
"properties": {
|
|
317
|
+
"tag": {
|
|
318
|
+
"const": "Disjunction"
|
|
319
|
+
},
|
|
320
|
+
"disjunction": {
|
|
321
|
+
"$ref": "#/$defs/MagicalRuneCostDisjunction"
|
|
322
|
+
}
|
|
323
|
+
},
|
|
324
|
+
"required": [
|
|
325
|
+
"tag",
|
|
326
|
+
"disjunction"
|
|
327
|
+
],
|
|
328
|
+
"additionalProperties": false
|
|
329
|
+
},
|
|
330
|
+
{
|
|
331
|
+
"type": "object",
|
|
332
|
+
"properties": {
|
|
333
|
+
"tag": {
|
|
334
|
+
"const": "DerivedFromOption"
|
|
335
|
+
},
|
|
336
|
+
"derived_from_option": {
|
|
337
|
+
"type": "object",
|
|
338
|
+
"properties": {},
|
|
339
|
+
"required": [],
|
|
340
|
+
"additionalProperties": false
|
|
341
|
+
}
|
|
342
|
+
},
|
|
343
|
+
"required": [
|
|
344
|
+
"tag",
|
|
345
|
+
"derived_from_option"
|
|
346
|
+
],
|
|
347
|
+
"additionalProperties": false
|
|
348
|
+
}
|
|
349
|
+
]
|
|
350
|
+
},
|
|
351
|
+
"MagicalRuneOptionCost": {
|
|
290
352
|
"oneOf": [
|
|
291
353
|
{
|
|
292
354
|
"type": "object",
|
|
@@ -442,9 +504,76 @@
|
|
|
442
504
|
],
|
|
443
505
|
"additionalProperties": false
|
|
444
506
|
},
|
|
507
|
+
"MagicalRuneImprovementCost": {
|
|
508
|
+
"oneOf": [
|
|
509
|
+
{
|
|
510
|
+
"type": "object",
|
|
511
|
+
"properties": {
|
|
512
|
+
"tag": {
|
|
513
|
+
"const": "Constant"
|
|
514
|
+
},
|
|
515
|
+
"constant": {
|
|
516
|
+
"$ref": "#/$defs/ConstantMagicalRuneImprovementCost"
|
|
517
|
+
}
|
|
518
|
+
},
|
|
519
|
+
"required": [
|
|
520
|
+
"tag",
|
|
521
|
+
"constant"
|
|
522
|
+
],
|
|
523
|
+
"additionalProperties": false
|
|
524
|
+
},
|
|
525
|
+
{
|
|
526
|
+
"type": "object",
|
|
527
|
+
"properties": {
|
|
528
|
+
"tag": {
|
|
529
|
+
"const": "DerivedFromOption"
|
|
530
|
+
},
|
|
531
|
+
"derived_from_option": {
|
|
532
|
+
"type": "object",
|
|
533
|
+
"properties": {},
|
|
534
|
+
"required": [],
|
|
535
|
+
"additionalProperties": false
|
|
536
|
+
}
|
|
537
|
+
},
|
|
538
|
+
"required": [
|
|
539
|
+
"tag",
|
|
540
|
+
"derived_from_option"
|
|
541
|
+
],
|
|
542
|
+
"additionalProperties": false
|
|
543
|
+
}
|
|
544
|
+
]
|
|
545
|
+
},
|
|
546
|
+
"ConstantMagicalRuneImprovementCost": {
|
|
547
|
+
"type": "object",
|
|
548
|
+
"properties": {
|
|
549
|
+
"value": {
|
|
550
|
+
"$ref": "../_ImprovementCost.schema.json#/$defs/ImprovementCost"
|
|
551
|
+
}
|
|
552
|
+
},
|
|
553
|
+
"required": [
|
|
554
|
+
"value"
|
|
555
|
+
],
|
|
556
|
+
"additionalProperties": false
|
|
557
|
+
},
|
|
445
558
|
"MagicalRuneOption": {
|
|
446
559
|
"type": "object",
|
|
447
560
|
"properties": {
|
|
561
|
+
"id": {
|
|
562
|
+
"description": "The magical rune option’s identifier. An unique, increasing integer.",
|
|
563
|
+
"type": "integer",
|
|
564
|
+
"minimum": 1
|
|
565
|
+
},
|
|
566
|
+
"cost": {
|
|
567
|
+
"description": "The option-specific AE cost.",
|
|
568
|
+
"$ref": "#/$defs/MagicalRuneOptionCost"
|
|
569
|
+
},
|
|
570
|
+
"improvement_cost": {
|
|
571
|
+
"description": "The option-specific improvement cost.",
|
|
572
|
+
"$ref": "../_ImprovementCost.schema.json#/$defs/ImprovementCost"
|
|
573
|
+
},
|
|
574
|
+
"suboption": {
|
|
575
|
+
"$ref": "#/$defs/MagicalRuneSuboption"
|
|
576
|
+
},
|
|
448
577
|
"translations": {
|
|
449
578
|
"description": "All translations for the entry, identified by IETF language tag (BCP47).",
|
|
450
579
|
"type": "object",
|
|
@@ -458,20 +587,83 @@
|
|
|
458
587
|
}
|
|
459
588
|
},
|
|
460
589
|
"required": [
|
|
590
|
+
"id",
|
|
591
|
+
"cost",
|
|
592
|
+
"improvement_cost",
|
|
593
|
+
"suboption",
|
|
461
594
|
"translations"
|
|
462
595
|
],
|
|
463
596
|
"additionalProperties": false
|
|
464
597
|
},
|
|
598
|
+
"MagicalRuneSuboption": {
|
|
599
|
+
"oneOf": [
|
|
600
|
+
{
|
|
601
|
+
"type": "object",
|
|
602
|
+
"properties": {
|
|
603
|
+
"tag": {
|
|
604
|
+
"const": "Custom"
|
|
605
|
+
},
|
|
606
|
+
"custom": {
|
|
607
|
+
"$ref": "#/$defs/CustomMagicalRuneSuboption"
|
|
608
|
+
}
|
|
609
|
+
},
|
|
610
|
+
"required": [
|
|
611
|
+
"tag",
|
|
612
|
+
"custom"
|
|
613
|
+
],
|
|
614
|
+
"additionalProperties": false
|
|
615
|
+
}
|
|
616
|
+
]
|
|
617
|
+
},
|
|
618
|
+
"CustomMagicalRuneSuboption": {
|
|
619
|
+
"type": "object",
|
|
620
|
+
"properties": {
|
|
621
|
+
"translations": {
|
|
622
|
+
"description": "All translations for the entry, identified by IETF language tag (BCP47).",
|
|
623
|
+
"type": "object",
|
|
624
|
+
"patternProperties": {
|
|
625
|
+
"^[a-z]{2}-[A-Z]{2}$": {
|
|
626
|
+
"$ref": "#/$defs/CustomMagicalRuneSuboptionTranslation"
|
|
627
|
+
}
|
|
628
|
+
},
|
|
629
|
+
"minProperties": 1,
|
|
630
|
+
"additionalProperties": false
|
|
631
|
+
}
|
|
632
|
+
},
|
|
633
|
+
"required": [
|
|
634
|
+
"translations"
|
|
635
|
+
],
|
|
636
|
+
"additionalProperties": false
|
|
637
|
+
},
|
|
638
|
+
"CustomMagicalRuneSuboptionTranslation": {
|
|
639
|
+
"type": "object",
|
|
640
|
+
"properties": {
|
|
641
|
+
"examples": {
|
|
642
|
+
"description": "One or more examples for the suboption.",
|
|
643
|
+
"type": "array",
|
|
644
|
+
"items": {
|
|
645
|
+
"$ref": "../_NonEmptyString.schema.json#/$defs/NonEmptyString"
|
|
646
|
+
}
|
|
647
|
+
}
|
|
648
|
+
},
|
|
649
|
+
"required": [],
|
|
650
|
+
"additionalProperties": false
|
|
651
|
+
},
|
|
465
652
|
"MagicalRuneOptionTranslation": {
|
|
466
653
|
"type": "object",
|
|
467
654
|
"properties": {
|
|
468
655
|
"name": {
|
|
469
656
|
"description": "The name of the option.\n\nThe surrounding parenthesis will/should not be included, they will/should\nbe generated.",
|
|
470
657
|
"$ref": "../_NonEmptyString.schema.json#/$defs/NonEmptyString"
|
|
658
|
+
},
|
|
659
|
+
"native_name": {
|
|
660
|
+
"description": "The native name of the magical rune option.",
|
|
661
|
+
"$ref": "../_NonEmptyString.schema.json#/$defs/NonEmptyString"
|
|
471
662
|
}
|
|
472
663
|
},
|
|
473
664
|
"required": [
|
|
474
|
-
"name"
|
|
665
|
+
"name",
|
|
666
|
+
"native_name"
|
|
475
667
|
],
|
|
476
668
|
"additionalProperties": false
|
|
477
669
|
}
|
|
@@ -108,16 +108,21 @@
|
|
|
108
108
|
"type": "object",
|
|
109
109
|
"properties": {
|
|
110
110
|
"options": {
|
|
111
|
-
"
|
|
112
|
-
"
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
111
|
+
"description": "The possible advanced special abilities.",
|
|
112
|
+
"type": "array",
|
|
113
|
+
"items": {
|
|
114
|
+
"type": "object",
|
|
115
|
+
"properties": {
|
|
116
|
+
"id": {
|
|
117
|
+
"$ref": "../_Identifier.schema.json#/$defs/AdvancedCombatSpecialAbilityIdentifier"
|
|
118
|
+
}
|
|
119
|
+
},
|
|
120
|
+
"required": [
|
|
121
|
+
"id"
|
|
122
|
+
],
|
|
123
|
+
"additionalProperties": false
|
|
116
124
|
},
|
|
117
|
-
"
|
|
118
|
-
"id"
|
|
119
|
-
],
|
|
120
|
-
"additionalProperties": false
|
|
125
|
+
"minItems": 2
|
|
121
126
|
},
|
|
122
127
|
"is_selection_required_on_purchase": {
|
|
123
128
|
"description": "Do have to choose the advanced special ability when buying the style\nspecial ability? Otherwise the decision can be made later.",
|
|
@@ -276,16 +281,21 @@
|
|
|
276
281
|
"type": "object",
|
|
277
282
|
"properties": {
|
|
278
283
|
"options": {
|
|
279
|
-
"
|
|
280
|
-
"
|
|
281
|
-
|
|
282
|
-
|
|
283
|
-
|
|
284
|
+
"description": "The possible advanced special abilities.",
|
|
285
|
+
"type": "array",
|
|
286
|
+
"items": {
|
|
287
|
+
"type": "object",
|
|
288
|
+
"properties": {
|
|
289
|
+
"id": {
|
|
290
|
+
"$ref": "../_Identifier.schema.json#/$defs/AdvancedCombatSpecialAbilityIdentifier"
|
|
291
|
+
}
|
|
292
|
+
},
|
|
293
|
+
"required": [
|
|
294
|
+
"id"
|
|
295
|
+
],
|
|
296
|
+
"additionalProperties": false
|
|
284
297
|
},
|
|
285
|
-
"
|
|
286
|
-
"id"
|
|
287
|
-
],
|
|
288
|
-
"additionalProperties": false
|
|
298
|
+
"minItems": 2
|
|
289
299
|
},
|
|
290
300
|
"is_selection_required_on_purchase": {
|
|
291
301
|
"description": "Do have to choose the advanced special ability when buying the style\nspecial ability? Otherwise the decision can be made later.",
|
|
@@ -444,16 +454,21 @@
|
|
|
444
454
|
"type": "object",
|
|
445
455
|
"properties": {
|
|
446
456
|
"options": {
|
|
447
|
-
"
|
|
448
|
-
"
|
|
449
|
-
|
|
450
|
-
|
|
451
|
-
|
|
457
|
+
"description": "The possible advanced special abilities.",
|
|
458
|
+
"type": "array",
|
|
459
|
+
"items": {
|
|
460
|
+
"type": "object",
|
|
461
|
+
"properties": {
|
|
462
|
+
"id": {
|
|
463
|
+
"$ref": "../_Identifier.schema.json#/$defs/AdvancedCombatSpecialAbilityIdentifier"
|
|
464
|
+
}
|
|
465
|
+
},
|
|
466
|
+
"required": [
|
|
467
|
+
"id"
|
|
468
|
+
],
|
|
469
|
+
"additionalProperties": false
|
|
452
470
|
},
|
|
453
|
-
"
|
|
454
|
-
"id"
|
|
455
|
-
],
|
|
456
|
-
"additionalProperties": false
|
|
471
|
+
"minItems": 2
|
|
457
472
|
},
|
|
458
473
|
"is_selection_required_on_purchase": {
|
|
459
474
|
"description": "Do have to choose the advanced special ability when buying the style\nspecial ability? Otherwise the decision can be made later.",
|
|
@@ -101,16 +101,21 @@
|
|
|
101
101
|
"type": "object",
|
|
102
102
|
"properties": {
|
|
103
103
|
"options": {
|
|
104
|
-
"
|
|
105
|
-
"
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
104
|
+
"description": "The possible advanced special abilities.",
|
|
105
|
+
"type": "array",
|
|
106
|
+
"items": {
|
|
107
|
+
"type": "object",
|
|
108
|
+
"properties": {
|
|
109
|
+
"id": {
|
|
110
|
+
"$ref": "../_Identifier.schema.json#/$defs/AdvancedKarmaSpecialAbilityIdentifier"
|
|
111
|
+
}
|
|
112
|
+
},
|
|
113
|
+
"required": [
|
|
114
|
+
"id"
|
|
115
|
+
],
|
|
116
|
+
"additionalProperties": false
|
|
109
117
|
},
|
|
110
|
-
"
|
|
111
|
-
"id"
|
|
112
|
-
],
|
|
113
|
-
"additionalProperties": false
|
|
118
|
+
"minItems": 2
|
|
114
119
|
},
|
|
115
120
|
"is_selection_required_on_purchase": {
|
|
116
121
|
"description": "Do have to choose the advanced special ability when buying the style\nspecial ability? Otherwise the decision can be made later.",
|
|
@@ -269,16 +274,21 @@
|
|
|
269
274
|
"type": "object",
|
|
270
275
|
"properties": {
|
|
271
276
|
"options": {
|
|
272
|
-
"
|
|
273
|
-
"
|
|
274
|
-
|
|
275
|
-
|
|
276
|
-
|
|
277
|
+
"description": "The possible advanced special abilities.",
|
|
278
|
+
"type": "array",
|
|
279
|
+
"items": {
|
|
280
|
+
"type": "object",
|
|
281
|
+
"properties": {
|
|
282
|
+
"id": {
|
|
283
|
+
"$ref": "../_Identifier.schema.json#/$defs/AdvancedKarmaSpecialAbilityIdentifier"
|
|
284
|
+
}
|
|
285
|
+
},
|
|
286
|
+
"required": [
|
|
287
|
+
"id"
|
|
288
|
+
],
|
|
289
|
+
"additionalProperties": false
|
|
277
290
|
},
|
|
278
|
-
"
|
|
279
|
-
"id"
|
|
280
|
-
],
|
|
281
|
-
"additionalProperties": false
|
|
291
|
+
"minItems": 2
|
|
282
292
|
},
|
|
283
293
|
"is_selection_required_on_purchase": {
|
|
284
294
|
"description": "Do have to choose the advanced special ability when buying the style\nspecial ability? Otherwise the decision can be made later.",
|
|
@@ -437,16 +447,21 @@
|
|
|
437
447
|
"type": "object",
|
|
438
448
|
"properties": {
|
|
439
449
|
"options": {
|
|
440
|
-
"
|
|
441
|
-
"
|
|
442
|
-
|
|
443
|
-
|
|
444
|
-
|
|
450
|
+
"description": "The possible advanced special abilities.",
|
|
451
|
+
"type": "array",
|
|
452
|
+
"items": {
|
|
453
|
+
"type": "object",
|
|
454
|
+
"properties": {
|
|
455
|
+
"id": {
|
|
456
|
+
"$ref": "../_Identifier.schema.json#/$defs/AdvancedKarmaSpecialAbilityIdentifier"
|
|
457
|
+
}
|
|
458
|
+
},
|
|
459
|
+
"required": [
|
|
460
|
+
"id"
|
|
461
|
+
],
|
|
462
|
+
"additionalProperties": false
|
|
445
463
|
},
|
|
446
|
-
"
|
|
447
|
-
"id"
|
|
448
|
-
],
|
|
449
|
-
"additionalProperties": false
|
|
464
|
+
"minItems": 2
|
|
450
465
|
},
|
|
451
466
|
"is_selection_required_on_purchase": {
|
|
452
467
|
"description": "Do have to choose the advanced special ability when buying the style\nspecial ability? Otherwise the decision can be made later.",
|
|
@@ -101,16 +101,21 @@
|
|
|
101
101
|
"type": "object",
|
|
102
102
|
"properties": {
|
|
103
103
|
"options": {
|
|
104
|
-
"
|
|
105
|
-
"
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
104
|
+
"description": "The possible advanced special abilities.",
|
|
105
|
+
"type": "array",
|
|
106
|
+
"items": {
|
|
107
|
+
"type": "object",
|
|
108
|
+
"properties": {
|
|
109
|
+
"id": {
|
|
110
|
+
"$ref": "../_Identifier.schema.json#/$defs/AdvancedMagicalSpecialAbilityIdentifier"
|
|
111
|
+
}
|
|
112
|
+
},
|
|
113
|
+
"required": [
|
|
114
|
+
"id"
|
|
115
|
+
],
|
|
116
|
+
"additionalProperties": false
|
|
109
117
|
},
|
|
110
|
-
"
|
|
111
|
-
"id"
|
|
112
|
-
],
|
|
113
|
-
"additionalProperties": false
|
|
118
|
+
"minItems": 2
|
|
114
119
|
},
|
|
115
120
|
"is_selection_required_on_purchase": {
|
|
116
121
|
"description": "Do have to choose the advanced special ability when buying the style\nspecial ability? Otherwise the decision can be made later.",
|
|
@@ -269,16 +274,21 @@
|
|
|
269
274
|
"type": "object",
|
|
270
275
|
"properties": {
|
|
271
276
|
"options": {
|
|
272
|
-
"
|
|
273
|
-
"
|
|
274
|
-
|
|
275
|
-
|
|
276
|
-
|
|
277
|
+
"description": "The possible advanced special abilities.",
|
|
278
|
+
"type": "array",
|
|
279
|
+
"items": {
|
|
280
|
+
"type": "object",
|
|
281
|
+
"properties": {
|
|
282
|
+
"id": {
|
|
283
|
+
"$ref": "../_Identifier.schema.json#/$defs/AdvancedMagicalSpecialAbilityIdentifier"
|
|
284
|
+
}
|
|
285
|
+
},
|
|
286
|
+
"required": [
|
|
287
|
+
"id"
|
|
288
|
+
],
|
|
289
|
+
"additionalProperties": false
|
|
277
290
|
},
|
|
278
|
-
"
|
|
279
|
-
"id"
|
|
280
|
-
],
|
|
281
|
-
"additionalProperties": false
|
|
291
|
+
"minItems": 2
|
|
282
292
|
},
|
|
283
293
|
"is_selection_required_on_purchase": {
|
|
284
294
|
"description": "Do have to choose the advanced special ability when buying the style\nspecial ability? Otherwise the decision can be made later.",
|
|
@@ -437,16 +447,21 @@
|
|
|
437
447
|
"type": "object",
|
|
438
448
|
"properties": {
|
|
439
449
|
"options": {
|
|
440
|
-
"
|
|
441
|
-
"
|
|
442
|
-
|
|
443
|
-
|
|
444
|
-
|
|
450
|
+
"description": "The possible advanced special abilities.",
|
|
451
|
+
"type": "array",
|
|
452
|
+
"items": {
|
|
453
|
+
"type": "object",
|
|
454
|
+
"properties": {
|
|
455
|
+
"id": {
|
|
456
|
+
"$ref": "../_Identifier.schema.json#/$defs/AdvancedMagicalSpecialAbilityIdentifier"
|
|
457
|
+
}
|
|
458
|
+
},
|
|
459
|
+
"required": [
|
|
460
|
+
"id"
|
|
461
|
+
],
|
|
462
|
+
"additionalProperties": false
|
|
445
463
|
},
|
|
446
|
-
"
|
|
447
|
-
"id"
|
|
448
|
-
],
|
|
449
|
-
"additionalProperties": false
|
|
464
|
+
"minItems": 2
|
|
450
465
|
},
|
|
451
466
|
"is_selection_required_on_purchase": {
|
|
452
467
|
"description": "Do have to choose the advanced special ability when buying the style\nspecial ability? Otherwise the decision can be made later.",
|