optolith-database-schema 0.1.1 → 0.1.4
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 +29 -0
- package/lib/types/Advantage.d.ts +1 -0
- package/lib/types/Disadvantage.d.ts +1 -0
- package/lib/types/FamiliarsTrick.d.ts +2 -1
- package/lib/types/_Activatable.d.ts +685 -5
- package/lib/types/_ActivatableSkill.d.ts +4 -0
- package/lib/types/_Identifier.d.ts +12 -1
- package/lib/types/_Identifier.js +12 -0
- package/lib/types/magicalActions/Curse.d.ts +1 -1
- package/lib/types/magicalActions/ElvenMagicalSong.d.ts +1 -1
- package/lib/types/specialAbility/AdvancedCombatSpecialAbility.d.ts +2 -0
- package/lib/types/specialAbility/AdvancedKarmaSpecialAbility.d.ts +1 -0
- package/lib/types/specialAbility/AdvancedMagicalSpecialAbility.d.ts +1 -0
- package/lib/types/specialAbility/AdvancedSkillSpecialAbility.d.ts +1 -0
- package/lib/types/specialAbility/AncestorGlyph.d.ts +1 -0
- package/lib/types/specialAbility/BrawlingSpecialAbility.d.ts +1 -0
- package/lib/types/specialAbility/CeremonialItemSpecialAbility.d.ts +1 -0
- package/lib/types/specialAbility/CombatSpecialAbility.d.ts +2 -0
- package/lib/types/specialAbility/CombatStyleSpecialAbility.d.ts +1 -0
- package/lib/types/specialAbility/CommandSpecialAbility.d.ts +1 -0
- package/lib/types/specialAbility/FamiliarSpecialAbility.d.ts +1 -0
- package/lib/types/specialAbility/FatePointSexSpecialAbility.d.ts +1 -0
- package/lib/types/specialAbility/FatePointSpecialAbility.d.ts +1 -0
- package/lib/types/specialAbility/GeneralSpecialAbility.d.ts +1 -0
- package/lib/types/specialAbility/KarmaSpecialAbility.d.ts +1 -0
- package/lib/types/specialAbility/LiturgicalStyleSpecialAbility.d.ts +1 -0
- package/lib/types/specialAbility/LycantropicGift.d.ts +1 -0
- package/lib/types/specialAbility/MagicStyleSpecialAbility.d.ts +1 -0
- package/lib/types/specialAbility/MagicalSpecialAbility.d.ts +1 -0
- package/lib/types/specialAbility/PactGift.d.ts +1 -0
- package/lib/types/specialAbility/ProtectiveWardingCircleSpecialAbility.d.ts +1 -0
- package/lib/types/specialAbility/Sermon.d.ts +1 -0
- package/lib/types/specialAbility/SexSpecialAbility.d.ts +1 -0
- package/lib/types/specialAbility/SikaryanDrainSpecialAbility.d.ts +1 -0
- package/lib/types/specialAbility/SkillStyleSpecialAbility.d.ts +1 -0
- package/lib/types/specialAbility/VampiricGift.d.ts +1 -0
- package/lib/types/specialAbility/Vision.d.ts +1 -0
- package/lib/types/traditionArtifacts/ArcaneOrbEnchantment.d.ts +3 -0
- package/lib/types/traditionArtifacts/AttireEnchantment.d.ts +3 -0
- package/lib/types/traditionArtifacts/BowlEnchantment.d.ts +3 -0
- package/lib/types/traditionArtifacts/CauldronEnchantment.d.ts +4 -1
- package/lib/types/traditionArtifacts/ChronicleEnchantment.d.ts +3 -0
- package/lib/types/traditionArtifacts/DaggerRitual.d.ts +3 -0
- package/lib/types/traditionArtifacts/FoolsHatEnchantment.d.ts +3 -0
- package/lib/types/traditionArtifacts/InstrumentEnchantment.d.ts +3 -0
- package/lib/types/traditionArtifacts/Krallenkettenzauber.d.ts +3 -0
- package/lib/types/traditionArtifacts/OrbEnchantment.d.ts +3 -0
- package/lib/types/traditionArtifacts/RingEnchantment.d.ts +3 -0
- package/lib/types/traditionArtifacts/SickleRitual.d.ts +3 -0
- package/lib/types/traditionArtifacts/SpellSwordEnchantment.d.ts +3 -0
- package/lib/types/traditionArtifacts/StaffEnchantment.d.ts +3 -0
- package/lib/types/traditionArtifacts/ToyEnchantment.d.ts +3 -0
- package/lib/types/traditionArtifacts/Trinkhornzauber.d.ts +3 -0
- package/lib/types/traditionArtifacts/WandEnchantment.d.ts +3 -0
- package/lib/types/traditionArtifacts/WeaponEnchantment.d.ts +3 -0
- package/package.json +2 -2
- package/schema/Advantage.schema.json +11 -8
- package/schema/Disadvantage.schema.json +9 -6
- package/schema/FamiliarsTrick.schema.json +1 -0
- package/schema/_Activatable.schema.json +1068 -13
- package/schema/_ActivatableSkill.schema.json +1 -0
- package/schema/_Identifier.schema.json +50 -4
- package/schema/magicalActions/Curse.schema.json +1 -1
- package/schema/magicalActions/ElvenMagicalSong.schema.json +1 -1
- package/schema/specialAbility/AdvancedCombatSpecialAbility.schema.json +16 -10
- package/schema/specialAbility/AdvancedKarmaSpecialAbility.schema.json +11 -8
- package/schema/specialAbility/AdvancedMagicalSpecialAbility.schema.json +11 -8
- package/schema/specialAbility/AdvancedSkillSpecialAbility.schema.json +11 -8
- package/schema/specialAbility/AncestorGlyph.schema.json +9 -6
- package/schema/specialAbility/BlessedTradition.schema.json +6 -6
- package/schema/specialAbility/BrawlingSpecialAbility.schema.json +11 -8
- package/schema/specialAbility/CeremonialItemSpecialAbility.schema.json +12 -9
- package/schema/specialAbility/CombatSpecialAbility.schema.json +16 -10
- package/schema/specialAbility/CombatStyleSpecialAbility.schema.json +14 -11
- package/schema/specialAbility/CommandSpecialAbility.schema.json +11 -8
- package/schema/specialAbility/FamiliarSpecialAbility.schema.json +9 -6
- package/schema/specialAbility/FatePointSexSpecialAbility.schema.json +9 -6
- package/schema/specialAbility/FatePointSpecialAbility.schema.json +11 -8
- package/schema/specialAbility/GeneralSpecialAbility.schema.json +11 -8
- package/schema/specialAbility/KarmaSpecialAbility.schema.json +9 -6
- package/schema/specialAbility/LiturgicalStyleSpecialAbility.schema.json +12 -9
- package/schema/specialAbility/LycantropicGift.schema.json +9 -6
- package/schema/specialAbility/MagicStyleSpecialAbility.schema.json +12 -9
- package/schema/specialAbility/MagicalSpecialAbility.schema.json +11 -8
- package/schema/specialAbility/MagicalTradition.schema.json +7 -7
- package/schema/specialAbility/PactGift.schema.json +9 -6
- package/schema/specialAbility/ProtectiveWardingCircleSpecialAbility.schema.json +8 -5
- package/schema/specialAbility/Sermon.schema.json +9 -6
- package/schema/specialAbility/SexSpecialAbility.schema.json +11 -8
- package/schema/specialAbility/SikaryanDrainSpecialAbility.schema.json +9 -6
- package/schema/specialAbility/SkillStyleSpecialAbility.schema.json +10 -7
- package/schema/specialAbility/VampiricGift.schema.json +9 -6
- package/schema/specialAbility/Vision.schema.json +9 -6
- package/schema/traditionArtifacts/ArcaneOrbEnchantment.schema.json +17 -7
- package/schema/traditionArtifacts/AttireEnchantment.schema.json +17 -7
- package/schema/traditionArtifacts/BowlEnchantment.schema.json +17 -7
- package/schema/traditionArtifacts/CauldronEnchantment.schema.json +19 -9
- package/schema/traditionArtifacts/ChronicleEnchantment.schema.json +17 -7
- package/schema/traditionArtifacts/DaggerRitual.schema.json +17 -7
- package/schema/traditionArtifacts/FoolsHatEnchantment.schema.json +17 -7
- package/schema/traditionArtifacts/InstrumentEnchantment.schema.json +17 -7
- package/schema/traditionArtifacts/Krallenkettenzauber.schema.json +17 -7
- package/schema/traditionArtifacts/OrbEnchantment.schema.json +17 -7
- package/schema/traditionArtifacts/RingEnchantment.schema.json +17 -7
- package/schema/traditionArtifacts/SickleRitual.schema.json +17 -7
- package/schema/traditionArtifacts/SpellSwordEnchantment.schema.json +17 -7
- package/schema/traditionArtifacts/StaffEnchantment.schema.json +17 -7
- package/schema/traditionArtifacts/ToyEnchantment.schema.json +17 -7
- package/schema/traditionArtifacts/Trinkhornzauber.schema.json +17 -7
- package/schema/traditionArtifacts/WandEnchantment.schema.json +17 -7
- package/schema/traditionArtifacts/WeaponEnchantment.schema.json +17 -7
|
@@ -23,7 +23,9 @@
|
|
|
23
23
|
"minimum": 2
|
|
24
24
|
},
|
|
25
25
|
"Maximum": {
|
|
26
|
-
"
|
|
26
|
+
"description": "The number stating how often you can buy the entry. The **default** depends on\nthe entry type:\n\n- **Advantage:** `1` in all cases (as specified in the **Core Rules**)\n- **Disadvantage:** `1` in all cases (as specified in the **Core Rules**)\n- **Special Abilities:** `1` if no options can be selected, otherwise the\n number of possible options\n\nThe maximum is only set if it differs from the defaults specified above.",
|
|
27
|
+
"type": "integer",
|
|
28
|
+
"minimum": 1
|
|
27
29
|
},
|
|
28
30
|
"Options": {
|
|
29
31
|
"const": ""
|
|
@@ -280,19 +282,1074 @@
|
|
|
280
282
|
},
|
|
281
283
|
"Penalty": {
|
|
282
284
|
"description": "The penalty the special ability gives when used.",
|
|
283
|
-
"
|
|
285
|
+
"oneOf": [
|
|
286
|
+
{
|
|
287
|
+
"type": "object",
|
|
288
|
+
"properties": {
|
|
289
|
+
"tag": {
|
|
290
|
+
"const": "Single"
|
|
291
|
+
},
|
|
292
|
+
"value": {
|
|
293
|
+
"description": "The penalty value.",
|
|
294
|
+
"type": "integer"
|
|
295
|
+
},
|
|
296
|
+
"applies_to_parry": {
|
|
297
|
+
"description": "Set to `true` if the penalty applies to the parry instead of the attack.",
|
|
298
|
+
"const": true
|
|
299
|
+
}
|
|
300
|
+
},
|
|
301
|
+
"required": [
|
|
302
|
+
"tag",
|
|
303
|
+
"value"
|
|
304
|
+
],
|
|
305
|
+
"additionalProperties": false
|
|
306
|
+
},
|
|
307
|
+
{
|
|
308
|
+
"type": "object",
|
|
309
|
+
"properties": {
|
|
310
|
+
"tag": {
|
|
311
|
+
"const": "ByHandedness"
|
|
312
|
+
},
|
|
313
|
+
"one_handed": {
|
|
314
|
+
"description": "The penalty value for one-handed weapons.",
|
|
315
|
+
"type": "integer"
|
|
316
|
+
},
|
|
317
|
+
"two_handed": {
|
|
318
|
+
"description": "The penalty value for two-handed weapons.",
|
|
319
|
+
"type": "integer"
|
|
320
|
+
},
|
|
321
|
+
"applies_to_parry": {
|
|
322
|
+
"description": "Set to `true` if the penalty applies to the parry instead of the attack.",
|
|
323
|
+
"const": true
|
|
324
|
+
}
|
|
325
|
+
},
|
|
326
|
+
"required": [
|
|
327
|
+
"tag",
|
|
328
|
+
"one_handed",
|
|
329
|
+
"two_handed"
|
|
330
|
+
],
|
|
331
|
+
"additionalProperties": false
|
|
332
|
+
},
|
|
333
|
+
{
|
|
334
|
+
"type": "object",
|
|
335
|
+
"properties": {
|
|
336
|
+
"tag": {
|
|
337
|
+
"const": "ByActivation"
|
|
338
|
+
},
|
|
339
|
+
"active": {
|
|
340
|
+
"description": "The penalty value if the entry has been bought by the character.",
|
|
341
|
+
"type": "integer"
|
|
342
|
+
},
|
|
343
|
+
"inactive": {
|
|
344
|
+
"description": "The penalty value if the entry has not been bought by the character.",
|
|
345
|
+
"type": "integer"
|
|
346
|
+
},
|
|
347
|
+
"applies_to_parry": {
|
|
348
|
+
"description": "Set to `true` if the penalty applies to the parry instead of the attack.",
|
|
349
|
+
"const": true
|
|
350
|
+
}
|
|
351
|
+
},
|
|
352
|
+
"required": [
|
|
353
|
+
"tag",
|
|
354
|
+
"active",
|
|
355
|
+
"inactive"
|
|
356
|
+
],
|
|
357
|
+
"additionalProperties": false
|
|
358
|
+
},
|
|
359
|
+
{
|
|
360
|
+
"type": "object",
|
|
361
|
+
"properties": {
|
|
362
|
+
"tag": {
|
|
363
|
+
"const": "Selection"
|
|
364
|
+
},
|
|
365
|
+
"options": {
|
|
366
|
+
"oneOf": [
|
|
367
|
+
{
|
|
368
|
+
"type": "object",
|
|
369
|
+
"properties": {
|
|
370
|
+
"tag": {
|
|
371
|
+
"const": "Specific"
|
|
372
|
+
},
|
|
373
|
+
"list": {
|
|
374
|
+
"description": "The list of specific penalty options.",
|
|
375
|
+
"type": "array",
|
|
376
|
+
"items": {
|
|
377
|
+
"type": "object",
|
|
378
|
+
"properties": {
|
|
379
|
+
"value": {
|
|
380
|
+
"description": "The penalty value.",
|
|
381
|
+
"type": "integer"
|
|
382
|
+
}
|
|
383
|
+
},
|
|
384
|
+
"required": [
|
|
385
|
+
"value"
|
|
386
|
+
],
|
|
387
|
+
"additionalProperties": false
|
|
388
|
+
},
|
|
389
|
+
"minItems": 2,
|
|
390
|
+
"uniqueItems": true
|
|
391
|
+
}
|
|
392
|
+
},
|
|
393
|
+
"required": [
|
|
394
|
+
"tag",
|
|
395
|
+
"list"
|
|
396
|
+
],
|
|
397
|
+
"additionalProperties": false
|
|
398
|
+
},
|
|
399
|
+
{
|
|
400
|
+
"type": "object",
|
|
401
|
+
"properties": {
|
|
402
|
+
"tag": {
|
|
403
|
+
"const": "Range"
|
|
404
|
+
},
|
|
405
|
+
"minimum": {
|
|
406
|
+
"description": "The minimum penalty value.",
|
|
407
|
+
"type": "integer"
|
|
408
|
+
},
|
|
409
|
+
"maximum": {
|
|
410
|
+
"description": "The maximum penalty value.",
|
|
411
|
+
"type": "integer"
|
|
412
|
+
}
|
|
413
|
+
},
|
|
414
|
+
"required": [
|
|
415
|
+
"tag",
|
|
416
|
+
"minimum",
|
|
417
|
+
"maximum"
|
|
418
|
+
],
|
|
419
|
+
"additionalProperties": false
|
|
420
|
+
}
|
|
421
|
+
]
|
|
422
|
+
}
|
|
423
|
+
},
|
|
424
|
+
"required": [
|
|
425
|
+
"tag",
|
|
426
|
+
"options"
|
|
427
|
+
],
|
|
428
|
+
"additionalProperties": false
|
|
429
|
+
},
|
|
430
|
+
{
|
|
431
|
+
"type": "object",
|
|
432
|
+
"properties": {
|
|
433
|
+
"tag": {
|
|
434
|
+
"const": "ByLevel"
|
|
435
|
+
},
|
|
436
|
+
"levels": {
|
|
437
|
+
"description": "A continuous range of penalties for each level. The first element is the\npenalty for the first level, the second element is the penalty for the\nsecond level, and so on.",
|
|
438
|
+
"type": "array",
|
|
439
|
+
"items": {
|
|
440
|
+
"type": "object",
|
|
441
|
+
"properties": {
|
|
442
|
+
"value": {
|
|
443
|
+
"description": "The penalty value for this level.",
|
|
444
|
+
"type": "integer"
|
|
445
|
+
}
|
|
446
|
+
},
|
|
447
|
+
"required": [
|
|
448
|
+
"value"
|
|
449
|
+
],
|
|
450
|
+
"additionalProperties": false
|
|
451
|
+
},
|
|
452
|
+
"minItems": 2
|
|
453
|
+
},
|
|
454
|
+
"external_id": {
|
|
455
|
+
"description": "The identifier of the combat-related special ability of which the level\ndefines the penalty instead.",
|
|
456
|
+
"$ref": "./_Identifier.schema.json#/definitions/Identifier/Group/CombatRelatedSpecialAbility"
|
|
457
|
+
}
|
|
458
|
+
},
|
|
459
|
+
"required": [
|
|
460
|
+
"tag",
|
|
461
|
+
"levels"
|
|
462
|
+
],
|
|
463
|
+
"additionalProperties": false
|
|
464
|
+
},
|
|
465
|
+
{
|
|
466
|
+
"type": "object",
|
|
467
|
+
"properties": {
|
|
468
|
+
"tag": {
|
|
469
|
+
"const": "ByAttack"
|
|
470
|
+
},
|
|
471
|
+
"list": {
|
|
472
|
+
"description": "A list of penalties for subsequent attacks. The first element is the\npenalty for the first attack, the second element is the penalty for the\nsecond attack, and so on. The order of the first element may be changed\nusing `initial_order`, so that e.g. if set to `2`, the first element is\nthe penalty for the second attack, the second element is the penalty for\nthe third attack, and so on.",
|
|
473
|
+
"type": "array",
|
|
474
|
+
"items": {
|
|
475
|
+
"type": "object",
|
|
476
|
+
"properties": {
|
|
477
|
+
"value": {
|
|
478
|
+
"description": "The penalty value for this order.",
|
|
479
|
+
"type": "integer"
|
|
480
|
+
}
|
|
481
|
+
},
|
|
482
|
+
"required": [
|
|
483
|
+
"value"
|
|
484
|
+
],
|
|
485
|
+
"additionalProperties": false
|
|
486
|
+
},
|
|
487
|
+
"minItems": 1
|
|
488
|
+
},
|
|
489
|
+
"initial_order": {
|
|
490
|
+
"description": "The order of the first element in the `list` of penalties.",
|
|
491
|
+
"type": "number"
|
|
492
|
+
},
|
|
493
|
+
"attack_replacement": {
|
|
494
|
+
"description": "Set if a predefined different word should be used instead of the word\n`attack` for display purposes.",
|
|
495
|
+
"oneOf": [
|
|
496
|
+
{
|
|
497
|
+
"type": "object",
|
|
498
|
+
"properties": {
|
|
499
|
+
"tag": {
|
|
500
|
+
"const": "Throw"
|
|
501
|
+
}
|
|
502
|
+
},
|
|
503
|
+
"required": [
|
|
504
|
+
"tag"
|
|
505
|
+
],
|
|
506
|
+
"additionalProperties": false
|
|
507
|
+
}
|
|
508
|
+
]
|
|
509
|
+
}
|
|
510
|
+
},
|
|
511
|
+
"required": [
|
|
512
|
+
"tag",
|
|
513
|
+
"list"
|
|
514
|
+
],
|
|
515
|
+
"additionalProperties": false
|
|
516
|
+
},
|
|
517
|
+
{
|
|
518
|
+
"type": "object",
|
|
519
|
+
"properties": {
|
|
520
|
+
"tag": {
|
|
521
|
+
"const": "DependsOnHitZone"
|
|
522
|
+
}
|
|
523
|
+
},
|
|
524
|
+
"required": [
|
|
525
|
+
"tag"
|
|
526
|
+
],
|
|
527
|
+
"additionalProperties": false
|
|
528
|
+
}
|
|
529
|
+
]
|
|
530
|
+
},
|
|
531
|
+
"EnchantmentCost": {
|
|
532
|
+
"oneOf": [
|
|
533
|
+
{
|
|
534
|
+
"type": "object",
|
|
535
|
+
"properties": {
|
|
536
|
+
"tag": {
|
|
537
|
+
"const": "ArcaneEnergyCost"
|
|
538
|
+
},
|
|
539
|
+
"ae_cost": {
|
|
540
|
+
"$ref": "#/definitions/ArcaneEnergyCost"
|
|
541
|
+
}
|
|
542
|
+
},
|
|
543
|
+
"required": [
|
|
544
|
+
"tag",
|
|
545
|
+
"ae_cost"
|
|
546
|
+
],
|
|
547
|
+
"additionalProperties": false
|
|
548
|
+
},
|
|
549
|
+
{
|
|
550
|
+
"type": "object",
|
|
551
|
+
"properties": {
|
|
552
|
+
"tag": {
|
|
553
|
+
"const": "BindingCost"
|
|
554
|
+
},
|
|
555
|
+
"binding_cost": {
|
|
556
|
+
"$ref": "#/definitions/BindingCost"
|
|
557
|
+
}
|
|
558
|
+
},
|
|
559
|
+
"required": [
|
|
560
|
+
"tag",
|
|
561
|
+
"binding_cost"
|
|
562
|
+
],
|
|
563
|
+
"additionalProperties": false
|
|
564
|
+
}
|
|
565
|
+
]
|
|
284
566
|
},
|
|
285
567
|
"ArcaneEnergyCost": {
|
|
286
568
|
"description": "The AE Cost.",
|
|
287
|
-
"
|
|
288
|
-
|
|
289
|
-
|
|
290
|
-
|
|
291
|
-
|
|
292
|
-
|
|
293
|
-
|
|
294
|
-
|
|
295
|
-
|
|
569
|
+
"oneOf": [
|
|
570
|
+
{
|
|
571
|
+
"type": "object",
|
|
572
|
+
"properties": {
|
|
573
|
+
"tag": {
|
|
574
|
+
"const": "Fixed"
|
|
575
|
+
},
|
|
576
|
+
"value": {
|
|
577
|
+
"description": "The AE cost value.",
|
|
578
|
+
"type": "integer",
|
|
579
|
+
"minimum": 1
|
|
580
|
+
},
|
|
581
|
+
"is_permanent": {
|
|
582
|
+
"description": "Set to `true` if the AE costs are permanent.",
|
|
583
|
+
"const": true
|
|
584
|
+
},
|
|
585
|
+
"interval": {
|
|
586
|
+
"description": "Specified if the AE cost `value` has to be paid for each time interval.",
|
|
587
|
+
"$ref": "./_ActivatableSkill.schema.json#/definitions/Duration/UnitValue"
|
|
588
|
+
},
|
|
589
|
+
"per_level": {
|
|
590
|
+
"description": "The AE cost are per level of the enchantment. It may either be displayed\nin a compressed way (e.g. `1 AE per level`) or in a verbose way (e.g. `1\nAE for level I; 2 AE for level II`).",
|
|
591
|
+
"oneOf": [
|
|
592
|
+
{
|
|
593
|
+
"type": "object",
|
|
594
|
+
"properties": {
|
|
595
|
+
"tag": {
|
|
596
|
+
"const": "Compressed"
|
|
597
|
+
}
|
|
598
|
+
},
|
|
599
|
+
"required": [
|
|
600
|
+
"tag"
|
|
601
|
+
],
|
|
602
|
+
"additionalProperties": false
|
|
603
|
+
},
|
|
604
|
+
{
|
|
605
|
+
"type": "object",
|
|
606
|
+
"properties": {
|
|
607
|
+
"tag": {
|
|
608
|
+
"const": "Verbose"
|
|
609
|
+
}
|
|
610
|
+
},
|
|
611
|
+
"required": [
|
|
612
|
+
"tag"
|
|
613
|
+
],
|
|
614
|
+
"additionalProperties": false
|
|
615
|
+
}
|
|
616
|
+
]
|
|
617
|
+
},
|
|
618
|
+
"translations": {
|
|
619
|
+
"description": "All translations for the entry, identified by IETF language tag\n(BCP47).",
|
|
620
|
+
"type": "object",
|
|
621
|
+
"patternProperties": {
|
|
622
|
+
"^[a-z]{2}-[A-Z]{2}$": {
|
|
623
|
+
"type": "object",
|
|
624
|
+
"properties": {
|
|
625
|
+
"note": {
|
|
626
|
+
"description": "A note, appended to the generated string in parenthesis.",
|
|
627
|
+
"type": "object",
|
|
628
|
+
"properties": {
|
|
629
|
+
"default": {
|
|
630
|
+
"description": "The full note.",
|
|
631
|
+
"type": "string",
|
|
632
|
+
"minLength": 1
|
|
633
|
+
},
|
|
634
|
+
"compressed": {
|
|
635
|
+
"description": "A compressed note, if applicable. If not specified it should not\nbe displayed in small location.",
|
|
636
|
+
"type": "string",
|
|
637
|
+
"minLength": 1
|
|
638
|
+
}
|
|
639
|
+
},
|
|
640
|
+
"required": [
|
|
641
|
+
"default"
|
|
642
|
+
],
|
|
643
|
+
"additionalProperties": false
|
|
644
|
+
}
|
|
645
|
+
},
|
|
646
|
+
"required": [],
|
|
647
|
+
"minProperties": 1,
|
|
648
|
+
"additionalProperties": false
|
|
649
|
+
}
|
|
650
|
+
},
|
|
651
|
+
"minProperties": 1,
|
|
652
|
+
"additionalProperties": false
|
|
653
|
+
}
|
|
654
|
+
},
|
|
655
|
+
"required": [
|
|
656
|
+
"tag",
|
|
657
|
+
"value"
|
|
658
|
+
],
|
|
659
|
+
"additionalProperties": false
|
|
660
|
+
},
|
|
661
|
+
{
|
|
662
|
+
"type": "object",
|
|
663
|
+
"properties": {
|
|
664
|
+
"tag": {
|
|
665
|
+
"const": "PerCountable"
|
|
666
|
+
},
|
|
667
|
+
"value": {
|
|
668
|
+
"description": "The AE cost value that has to be per a specific countable entity.",
|
|
669
|
+
"type": "integer",
|
|
670
|
+
"minimum": 1
|
|
671
|
+
},
|
|
672
|
+
"base_value": {
|
|
673
|
+
"description": "If defined, in addition to the cost per entity you have to pay a flat\namount, regardless of the entity count.",
|
|
674
|
+
"type": "integer",
|
|
675
|
+
"minimum": 1
|
|
676
|
+
},
|
|
677
|
+
"translations": {
|
|
678
|
+
"description": "All translations for the entry, identified by IETF language tag\n(BCP47).",
|
|
679
|
+
"type": "object",
|
|
680
|
+
"patternProperties": {
|
|
681
|
+
"^[a-z]{2}-[A-Z]{2}$": {
|
|
682
|
+
"type": "object",
|
|
683
|
+
"properties": {
|
|
684
|
+
"per": {
|
|
685
|
+
"description": "The cost have to be per a specific countable entity, e.g. `8 AE per\nperson`.",
|
|
686
|
+
"type": "object",
|
|
687
|
+
"properties": {
|
|
688
|
+
"default": {
|
|
689
|
+
"description": "The full countable entity name.",
|
|
690
|
+
"type": "string",
|
|
691
|
+
"minLength": 1
|
|
692
|
+
},
|
|
693
|
+
"compressed": {
|
|
694
|
+
"description": "The compressed countable entity name.",
|
|
695
|
+
"type": "string",
|
|
696
|
+
"minLength": 1
|
|
697
|
+
}
|
|
698
|
+
},
|
|
699
|
+
"required": [
|
|
700
|
+
"default",
|
|
701
|
+
"compressed"
|
|
702
|
+
],
|
|
703
|
+
"additionalProperties": false
|
|
704
|
+
},
|
|
705
|
+
"note": {
|
|
706
|
+
"description": "A note, appended to the generated string in parenthesis.",
|
|
707
|
+
"type": "object",
|
|
708
|
+
"properties": {
|
|
709
|
+
"default": {
|
|
710
|
+
"description": "The full note.",
|
|
711
|
+
"type": "string",
|
|
712
|
+
"minLength": 1
|
|
713
|
+
},
|
|
714
|
+
"compressed": {
|
|
715
|
+
"description": "A compressed note, if applicable. If not specified it should not\nbe displayed in small location.",
|
|
716
|
+
"type": "string",
|
|
717
|
+
"minLength": 1
|
|
718
|
+
}
|
|
719
|
+
},
|
|
720
|
+
"required": [
|
|
721
|
+
"default"
|
|
722
|
+
],
|
|
723
|
+
"additionalProperties": false
|
|
724
|
+
}
|
|
725
|
+
},
|
|
726
|
+
"required": [
|
|
727
|
+
"per"
|
|
728
|
+
],
|
|
729
|
+
"minProperties": 1,
|
|
730
|
+
"additionalProperties": false
|
|
731
|
+
}
|
|
732
|
+
},
|
|
733
|
+
"minProperties": 1,
|
|
734
|
+
"additionalProperties": false
|
|
735
|
+
}
|
|
736
|
+
},
|
|
737
|
+
"required": [
|
|
738
|
+
"tag",
|
|
739
|
+
"value"
|
|
740
|
+
],
|
|
741
|
+
"additionalProperties": false
|
|
742
|
+
},
|
|
743
|
+
{
|
|
744
|
+
"type": "object",
|
|
745
|
+
"properties": {
|
|
746
|
+
"tag": {
|
|
747
|
+
"const": "ActivationAndHalfInterval"
|
|
748
|
+
},
|
|
749
|
+
"value": {
|
|
750
|
+
"description": "The AE cost value that has to be payed for activation. Half of this value\nhas to be payed each interval.",
|
|
751
|
+
"type": "integer",
|
|
752
|
+
"minimum": 2,
|
|
753
|
+
"multipleOf": 2
|
|
754
|
+
},
|
|
755
|
+
"interval": {
|
|
756
|
+
"description": "The time interval for which the AE cost `value` has to be paid.",
|
|
757
|
+
"$ref": "./_ActivatableSkill.schema.json#/definitions/Duration/UnitValue"
|
|
758
|
+
}
|
|
759
|
+
},
|
|
760
|
+
"required": [
|
|
761
|
+
"tag",
|
|
762
|
+
"value",
|
|
763
|
+
"interval"
|
|
764
|
+
],
|
|
765
|
+
"additionalProperties": false
|
|
766
|
+
},
|
|
767
|
+
{
|
|
768
|
+
"type": "object",
|
|
769
|
+
"properties": {
|
|
770
|
+
"tag": {
|
|
771
|
+
"const": "Indefinite"
|
|
772
|
+
},
|
|
773
|
+
"modifier": {
|
|
774
|
+
"description": "The indefinite AE cost may be modified by a certain value.",
|
|
775
|
+
"type": "object",
|
|
776
|
+
"properties": {
|
|
777
|
+
"arithmetic": {
|
|
778
|
+
"description": "The arithmetic how to apply the `value` to the indefinite base value.",
|
|
779
|
+
"oneOf": [
|
|
780
|
+
{
|
|
781
|
+
"type": "object",
|
|
782
|
+
"properties": {
|
|
783
|
+
"tag": {
|
|
784
|
+
"const": "Add"
|
|
785
|
+
}
|
|
786
|
+
},
|
|
787
|
+
"required": [
|
|
788
|
+
"tag"
|
|
789
|
+
],
|
|
790
|
+
"additionalProperties": false
|
|
791
|
+
},
|
|
792
|
+
{
|
|
793
|
+
"type": "object",
|
|
794
|
+
"properties": {
|
|
795
|
+
"tag": {
|
|
796
|
+
"const": "Multiply"
|
|
797
|
+
}
|
|
798
|
+
},
|
|
799
|
+
"required": [
|
|
800
|
+
"tag"
|
|
801
|
+
],
|
|
802
|
+
"additionalProperties": false
|
|
803
|
+
}
|
|
804
|
+
]
|
|
805
|
+
},
|
|
806
|
+
"value": {
|
|
807
|
+
"description": "The value that is applied to the indefinite base value using the\ndefined `arithmetic`.",
|
|
808
|
+
"type": "integer",
|
|
809
|
+
"minimum": 1
|
|
810
|
+
}
|
|
811
|
+
},
|
|
812
|
+
"required": [
|
|
813
|
+
"arithmetic",
|
|
814
|
+
"value"
|
|
815
|
+
],
|
|
816
|
+
"additionalProperties": false
|
|
817
|
+
},
|
|
818
|
+
"translations": {
|
|
819
|
+
"description": "All translations for the entry, identified by IETF language tag (BCP47).",
|
|
820
|
+
"type": "object",
|
|
821
|
+
"patternProperties": {
|
|
822
|
+
"^[a-z]{2}-[A-Z]{2}$": {
|
|
823
|
+
"type": "object",
|
|
824
|
+
"properties": {
|
|
825
|
+
"description": {
|
|
826
|
+
"description": "A description of where the cost come from.",
|
|
827
|
+
"type": "object",
|
|
828
|
+
"properties": {
|
|
829
|
+
"default": {
|
|
830
|
+
"description": "The full description of where the cost come from.",
|
|
831
|
+
"type": "string",
|
|
832
|
+
"minLength": 1
|
|
833
|
+
},
|
|
834
|
+
"compressed": {
|
|
835
|
+
"description": "A compressed description of where the cost come from for use in\nsmall areas (e.g. on character sheet).",
|
|
836
|
+
"type": "string",
|
|
837
|
+
"minLength": 1
|
|
838
|
+
}
|
|
839
|
+
},
|
|
840
|
+
"required": [
|
|
841
|
+
"default",
|
|
842
|
+
"compressed"
|
|
843
|
+
],
|
|
844
|
+
"additionalProperties": false
|
|
845
|
+
}
|
|
846
|
+
},
|
|
847
|
+
"required": [
|
|
848
|
+
"description"
|
|
849
|
+
],
|
|
850
|
+
"additionalProperties": false
|
|
851
|
+
}
|
|
852
|
+
},
|
|
853
|
+
"minProperties": 1,
|
|
854
|
+
"additionalProperties": false
|
|
855
|
+
}
|
|
856
|
+
},
|
|
857
|
+
"required": [
|
|
858
|
+
"tag",
|
|
859
|
+
"modifier",
|
|
860
|
+
"translations"
|
|
861
|
+
],
|
|
862
|
+
"additionalProperties": false
|
|
863
|
+
},
|
|
864
|
+
{
|
|
865
|
+
"type": "object",
|
|
866
|
+
"properties": {
|
|
867
|
+
"tag": {
|
|
868
|
+
"const": "Disjunction"
|
|
869
|
+
},
|
|
870
|
+
"interval": {
|
|
871
|
+
"description": "Specified if the selected AE cost option has to be paid for each time\ninterval.",
|
|
872
|
+
"type": "object",
|
|
873
|
+
"properties": {
|
|
874
|
+
"value": {
|
|
875
|
+
"description": "The interval itself.",
|
|
876
|
+
"$ref": "./_ActivatableSkill.schema.json#/definitions/Duration/UnitValue"
|
|
877
|
+
},
|
|
878
|
+
"activation_value": {
|
|
879
|
+
"description": "The AE cost value for activation.",
|
|
880
|
+
"type": "integer",
|
|
881
|
+
"minimum": 1
|
|
882
|
+
},
|
|
883
|
+
"after_activation": {
|
|
884
|
+
"description": "Set to `true` if the action where the enchantment is casted does\n**not** as a part of the first interval that has to be payed, so that\nthe first interval payment needs to be done after the activation.\n\nThis works different than other sustained spells, since for them the\nend of the cast usually already counts as part of the first interval.",
|
|
885
|
+
"type": "boolean"
|
|
886
|
+
}
|
|
887
|
+
},
|
|
888
|
+
"required": [
|
|
889
|
+
"value",
|
|
890
|
+
"activation_value",
|
|
891
|
+
"after_activation"
|
|
892
|
+
],
|
|
893
|
+
"additionalProperties": false
|
|
894
|
+
},
|
|
895
|
+
"options": {
|
|
896
|
+
"description": "The possible AE cost values.",
|
|
897
|
+
"type": "array",
|
|
898
|
+
"items": {
|
|
899
|
+
"type": "object",
|
|
900
|
+
"properties": {
|
|
901
|
+
"value": {
|
|
902
|
+
"description": "A possible AE cost value.",
|
|
903
|
+
"type": "integer",
|
|
904
|
+
"minimum": 1
|
|
905
|
+
},
|
|
906
|
+
"translations": {
|
|
907
|
+
"description": "All translations for the entry, identified by IETF language tag\n(BCP47).",
|
|
908
|
+
"type": "object",
|
|
909
|
+
"patternProperties": {
|
|
910
|
+
"^[a-z]{2}-[A-Z]{2}$": {
|
|
911
|
+
"type": "object",
|
|
912
|
+
"properties": {
|
|
913
|
+
"note": {
|
|
914
|
+
"description": "A note, appended to the generated option string in parenthesis.",
|
|
915
|
+
"type": "object",
|
|
916
|
+
"properties": {
|
|
917
|
+
"default": {
|
|
918
|
+
"description": "The full note.",
|
|
919
|
+
"type": "string",
|
|
920
|
+
"minLength": 1
|
|
921
|
+
},
|
|
922
|
+
"compressed": {
|
|
923
|
+
"description": "A compressed note, if applicable. If not specified it should not\nbe displayed in small location.",
|
|
924
|
+
"type": "string",
|
|
925
|
+
"minLength": 1
|
|
926
|
+
}
|
|
927
|
+
},
|
|
928
|
+
"required": [
|
|
929
|
+
"default"
|
|
930
|
+
],
|
|
931
|
+
"additionalProperties": false
|
|
932
|
+
}
|
|
933
|
+
},
|
|
934
|
+
"required": [],
|
|
935
|
+
"minProperties": 1,
|
|
936
|
+
"additionalProperties": false
|
|
937
|
+
}
|
|
938
|
+
},
|
|
939
|
+
"minProperties": 1,
|
|
940
|
+
"additionalProperties": false
|
|
941
|
+
}
|
|
942
|
+
},
|
|
943
|
+
"required": [
|
|
944
|
+
"value"
|
|
945
|
+
],
|
|
946
|
+
"additionalProperties": false
|
|
947
|
+
}
|
|
948
|
+
}
|
|
949
|
+
},
|
|
950
|
+
"required": [
|
|
951
|
+
"tag",
|
|
952
|
+
"options"
|
|
953
|
+
],
|
|
954
|
+
"additionalProperties": false
|
|
955
|
+
},
|
|
956
|
+
{
|
|
957
|
+
"type": "object",
|
|
958
|
+
"properties": {
|
|
959
|
+
"tag": {
|
|
960
|
+
"const": "None"
|
|
961
|
+
},
|
|
962
|
+
"translations": {
|
|
963
|
+
"description": "All translations for the entry, identified by IETF language tag\n(BCP47).",
|
|
964
|
+
"type": "object",
|
|
965
|
+
"patternProperties": {
|
|
966
|
+
"^[a-z]{2}-[A-Z]{2}$": {
|
|
967
|
+
"type": "object",
|
|
968
|
+
"properties": {
|
|
969
|
+
"note": {
|
|
970
|
+
"description": "A note, appended to the generated string in parenthesis.",
|
|
971
|
+
"type": "object",
|
|
972
|
+
"properties": {
|
|
973
|
+
"default": {
|
|
974
|
+
"description": "The full note.",
|
|
975
|
+
"type": "string",
|
|
976
|
+
"minLength": 1
|
|
977
|
+
},
|
|
978
|
+
"compressed": {
|
|
979
|
+
"description": "A compressed note, if applicable. If not specified it should not\nbe displayed in small location.",
|
|
980
|
+
"type": "string",
|
|
981
|
+
"minLength": 1
|
|
982
|
+
}
|
|
983
|
+
},
|
|
984
|
+
"required": [
|
|
985
|
+
"default"
|
|
986
|
+
],
|
|
987
|
+
"additionalProperties": false
|
|
988
|
+
}
|
|
989
|
+
},
|
|
990
|
+
"required": [],
|
|
991
|
+
"minProperties": 1,
|
|
992
|
+
"additionalProperties": false
|
|
993
|
+
}
|
|
994
|
+
},
|
|
995
|
+
"minProperties": 1,
|
|
996
|
+
"additionalProperties": false
|
|
997
|
+
}
|
|
998
|
+
},
|
|
999
|
+
"required": [
|
|
1000
|
+
"tag"
|
|
1001
|
+
],
|
|
1002
|
+
"additionalProperties": false
|
|
1003
|
+
},
|
|
1004
|
+
{
|
|
1005
|
+
"type": "object",
|
|
1006
|
+
"properties": {
|
|
1007
|
+
"tag": {
|
|
1008
|
+
"const": "Variable"
|
|
1009
|
+
}
|
|
1010
|
+
},
|
|
1011
|
+
"required": [
|
|
1012
|
+
"tag"
|
|
1013
|
+
],
|
|
1014
|
+
"additionalProperties": false
|
|
1015
|
+
}
|
|
1016
|
+
]
|
|
1017
|
+
},
|
|
1018
|
+
"Volume": {
|
|
1019
|
+
"description": "The volume points the enchantment needs.",
|
|
1020
|
+
"oneOf": [
|
|
1021
|
+
{
|
|
1022
|
+
"type": "object",
|
|
1023
|
+
"properties": {
|
|
1024
|
+
"tag": {
|
|
1025
|
+
"const": "Fixed"
|
|
1026
|
+
},
|
|
1027
|
+
"points": {
|
|
1028
|
+
"description": "The volume points.",
|
|
1029
|
+
"type": "integer",
|
|
1030
|
+
"minimum": 0
|
|
1031
|
+
}
|
|
1032
|
+
},
|
|
1033
|
+
"required": [
|
|
1034
|
+
"tag",
|
|
1035
|
+
"points"
|
|
1036
|
+
],
|
|
1037
|
+
"additionalProperties": false
|
|
1038
|
+
},
|
|
1039
|
+
{
|
|
1040
|
+
"type": "object",
|
|
1041
|
+
"properties": {
|
|
1042
|
+
"tag": {
|
|
1043
|
+
"const": "PerLevel"
|
|
1044
|
+
},
|
|
1045
|
+
"points": {
|
|
1046
|
+
"description": "The volume points per level.",
|
|
1047
|
+
"type": "integer",
|
|
1048
|
+
"minimum": 1
|
|
1049
|
+
}
|
|
1050
|
+
},
|
|
1051
|
+
"required": [
|
|
1052
|
+
"tag",
|
|
1053
|
+
"points"
|
|
1054
|
+
],
|
|
1055
|
+
"additionalProperties": false
|
|
1056
|
+
},
|
|
1057
|
+
{
|
|
1058
|
+
"type": "object",
|
|
1059
|
+
"properties": {
|
|
1060
|
+
"tag": {
|
|
1061
|
+
"const": "ByLevel"
|
|
1062
|
+
},
|
|
1063
|
+
"list": {
|
|
1064
|
+
"description": "The volume points for each level. The first element is the volume points\nfor the first level, the second element is the volume points for the\nsecond level, and so on.",
|
|
1065
|
+
"type": "array",
|
|
1066
|
+
"items": {
|
|
1067
|
+
"type": "object",
|
|
1068
|
+
"properties": {
|
|
1069
|
+
"points": {
|
|
1070
|
+
"description": "The volume points for this level.",
|
|
1071
|
+
"type": "integer",
|
|
1072
|
+
"minimum": 0
|
|
1073
|
+
}
|
|
1074
|
+
},
|
|
1075
|
+
"required": [
|
|
1076
|
+
"points"
|
|
1077
|
+
],
|
|
1078
|
+
"additionalProperties": false
|
|
1079
|
+
},
|
|
1080
|
+
"minItems": 2
|
|
1081
|
+
}
|
|
1082
|
+
},
|
|
1083
|
+
"required": [
|
|
1084
|
+
"tag",
|
|
1085
|
+
"list"
|
|
1086
|
+
],
|
|
1087
|
+
"additionalProperties": false
|
|
1088
|
+
},
|
|
1089
|
+
{
|
|
1090
|
+
"type": "object",
|
|
1091
|
+
"properties": {
|
|
1092
|
+
"tag": {
|
|
1093
|
+
"const": "Map"
|
|
1094
|
+
},
|
|
1095
|
+
"map": {
|
|
1096
|
+
"$ref": "#/definitions/VolumeMap"
|
|
1097
|
+
}
|
|
1098
|
+
},
|
|
1099
|
+
"required": [
|
|
1100
|
+
"tag",
|
|
1101
|
+
"map"
|
|
1102
|
+
],
|
|
1103
|
+
"additionalProperties": false
|
|
1104
|
+
}
|
|
1105
|
+
]
|
|
1106
|
+
},
|
|
1107
|
+
"VolumeMap": {
|
|
1108
|
+
"description": "A content that is `3/4/5 Points for Chimera, Daimonid, Golems, Undead /\nFairies, Ghosts / Demons, Elementals` may be respresented as the following\nmap:\n\n```yaml\noptions:\n - points: 3\n associated_options:\n - id:\n tag: General\n value: # ...\n # ...\n translations:\n en-US:\n label: \"Chimera, Daimonid, Golems, Undead\"\n label_standalone: \"Chimera/Daimonid/Golems/Undead\"\n - points: 4\n associated_options:\n - id:\n tag: General\n value: # ...\n # ...\n translations:\n en-US:\n label: \"Fairies, Ghosts\"\n label_standalone: \"Fairies/Ghosts\"\n - points: 5\n associated_options:\n - id:\n tag: General\n value: # ...\n # ...\n translations:\n en-US:\n label: \"Demons, Elementals\"\n label_standalone: \"Demons/Elementals\"\n```\n\nThis will generate the exact same string as seen above. The associated\noptions are not present in the example, but they link to the options the\nvolume specification is meant for.",
|
|
1109
|
+
"type": "object",
|
|
1110
|
+
"properties": {
|
|
1111
|
+
"options": {
|
|
1112
|
+
"description": "The possible costs and associated labels.",
|
|
1113
|
+
"type": "array",
|
|
1114
|
+
"items": {
|
|
1115
|
+
"$ref": "#/definitions/VolumeMapOption"
|
|
1116
|
+
},
|
|
1117
|
+
"minItems": 2
|
|
1118
|
+
},
|
|
1119
|
+
"translations": {
|
|
1120
|
+
"description": "All translations for the entry, identified by IETF language tag (BCP47).",
|
|
1121
|
+
"type": "object",
|
|
1122
|
+
"patternProperties": {
|
|
1123
|
+
"^[a-z]{2}-[A-Z]{2}$": {
|
|
1124
|
+
"type": "object",
|
|
1125
|
+
"properties": {
|
|
1126
|
+
"list_prepend": {
|
|
1127
|
+
"description": "Place a string between the `for` and the grouped map option labels.",
|
|
1128
|
+
"type": "string"
|
|
1129
|
+
},
|
|
1130
|
+
"list_append": {
|
|
1131
|
+
"description": "Place a string after the grouped map option labels.",
|
|
1132
|
+
"type": "string"
|
|
1133
|
+
},
|
|
1134
|
+
"replacement": {
|
|
1135
|
+
"description": "If the string from the book cannot be generated using the default\ngeneration technique, use this string. All options still need to be\ninserted propertly, since it may be used by in-game tools to provide a\nselection to players.",
|
|
1136
|
+
"type": "string"
|
|
1137
|
+
}
|
|
1138
|
+
},
|
|
1139
|
+
"required": [],
|
|
1140
|
+
"additionalProperties": false
|
|
1141
|
+
}
|
|
1142
|
+
},
|
|
1143
|
+
"minProperties": 1,
|
|
1144
|
+
"additionalProperties": false
|
|
1145
|
+
}
|
|
1146
|
+
},
|
|
1147
|
+
"required": [
|
|
1148
|
+
"options"
|
|
1149
|
+
],
|
|
1150
|
+
"additionalProperties": false
|
|
1151
|
+
},
|
|
1152
|
+
"VolumeMapOption": {
|
|
1153
|
+
"type": "object",
|
|
1154
|
+
"properties": {
|
|
1155
|
+
"points": {
|
|
1156
|
+
"description": "The full permanent AE cost value for this option.",
|
|
1157
|
+
"type": "integer",
|
|
1158
|
+
"minimum": 1
|
|
1159
|
+
},
|
|
1160
|
+
"associated_options": {
|
|
1161
|
+
"description": "Links to the options this volume specification is meant for.",
|
|
1162
|
+
"type": "array",
|
|
1163
|
+
"items": {
|
|
1164
|
+
"type": "object",
|
|
1165
|
+
"properties": {
|
|
1166
|
+
"id": {
|
|
1167
|
+
"description": "The option's identifier.",
|
|
1168
|
+
"$ref": "./_Identifier.schema.json#/definitions/Identifier/Group/VolumePointsOptionReference"
|
|
1169
|
+
}
|
|
1170
|
+
},
|
|
1171
|
+
"required": [
|
|
1172
|
+
"id"
|
|
1173
|
+
],
|
|
1174
|
+
"additionalProperties": false
|
|
1175
|
+
}
|
|
1176
|
+
},
|
|
1177
|
+
"translations": {
|
|
1178
|
+
"description": "All translations for the entry, identified by IETF language tag (BCP47).",
|
|
1179
|
+
"type": "object",
|
|
1180
|
+
"patternProperties": {
|
|
1181
|
+
"^[a-z]{2}-[A-Z]{2}$": {
|
|
1182
|
+
"type": "object",
|
|
1183
|
+
"properties": {
|
|
1184
|
+
"label": {
|
|
1185
|
+
"description": "The description of the option for cost string generation.",
|
|
1186
|
+
"type": "string",
|
|
1187
|
+
"minLength": 1
|
|
1188
|
+
},
|
|
1189
|
+
"label_standalone": {
|
|
1190
|
+
"description": "The description of the option if used standalone. Only used if\ndifferent from `label`.",
|
|
1191
|
+
"type": "string",
|
|
1192
|
+
"minLength": 1
|
|
1193
|
+
}
|
|
1194
|
+
},
|
|
1195
|
+
"required": [
|
|
1196
|
+
"label"
|
|
1197
|
+
],
|
|
1198
|
+
"additionalProperties": false
|
|
1199
|
+
}
|
|
1200
|
+
},
|
|
1201
|
+
"minProperties": 1,
|
|
1202
|
+
"additionalProperties": false
|
|
1203
|
+
}
|
|
1204
|
+
},
|
|
1205
|
+
"required": [
|
|
1206
|
+
"points",
|
|
1207
|
+
"associated_options"
|
|
1208
|
+
],
|
|
1209
|
+
"additionalProperties": false
|
|
1210
|
+
},
|
|
1211
|
+
"BindingCost": {
|
|
1212
|
+
"description": "The binding cost for an enchantment.",
|
|
1213
|
+
"oneOf": [
|
|
1214
|
+
{
|
|
1215
|
+
"type": "object",
|
|
1216
|
+
"properties": {
|
|
1217
|
+
"tag": {
|
|
1218
|
+
"const": "Fixed"
|
|
1219
|
+
},
|
|
1220
|
+
"permanent_value": {
|
|
1221
|
+
"description": "The permanent AE cost.",
|
|
1222
|
+
"type": "integer",
|
|
1223
|
+
"minimum": 1
|
|
1224
|
+
}
|
|
1225
|
+
},
|
|
1226
|
+
"required": [
|
|
1227
|
+
"tag",
|
|
1228
|
+
"permanent_value"
|
|
1229
|
+
],
|
|
1230
|
+
"additionalProperties": false
|
|
1231
|
+
},
|
|
1232
|
+
{
|
|
1233
|
+
"type": "object",
|
|
1234
|
+
"properties": {
|
|
1235
|
+
"tag": {
|
|
1236
|
+
"const": "PerLevel"
|
|
1237
|
+
},
|
|
1238
|
+
"permanent_value": {
|
|
1239
|
+
"description": "The permanent AE cost per level.",
|
|
1240
|
+
"type": "integer",
|
|
1241
|
+
"minimum": 1
|
|
1242
|
+
}
|
|
1243
|
+
},
|
|
1244
|
+
"required": [
|
|
1245
|
+
"tag",
|
|
1246
|
+
"permanent_value"
|
|
1247
|
+
],
|
|
1248
|
+
"additionalProperties": false
|
|
1249
|
+
},
|
|
1250
|
+
{
|
|
1251
|
+
"type": "object",
|
|
1252
|
+
"properties": {
|
|
1253
|
+
"tag": {
|
|
1254
|
+
"const": "Map"
|
|
1255
|
+
},
|
|
1256
|
+
"map": {
|
|
1257
|
+
"$ref": "#/definitions/BindingCostMap"
|
|
1258
|
+
}
|
|
1259
|
+
},
|
|
1260
|
+
"required": [
|
|
1261
|
+
"tag",
|
|
1262
|
+
"map"
|
|
1263
|
+
],
|
|
1264
|
+
"additionalProperties": false
|
|
1265
|
+
}
|
|
1266
|
+
]
|
|
1267
|
+
},
|
|
1268
|
+
"BindingCostMap": {
|
|
1269
|
+
"description": "A content that is `2/4/8 permanent AE for spell-swords with the combat\ntechnique Daggers, Swords, or Two-Handed Swords` may be respresented as the\nfollowing map:\n\n```yaml\noptions:\n - permanent_value: 2\n translations:\n en-US:\n label: \"Daggers\"\n label_standalone: \"Dagger\"\n - permanent_value: 4\n translations:\n en-US:\n label: \"Swords\"\n label_standalone: \"Sword\"\n - permanent_value: 8\n translations:\n en-US:\n label: \"Two-Handed Swords\"\n label_standalone: \"Two-Handed Sword\"\nlist_prepend: \"spell-swords with the combat technique\"\n```\n\nThis will generate the exact same string as seen above.",
|
|
1270
|
+
"type": "object",
|
|
1271
|
+
"properties": {
|
|
1272
|
+
"options": {
|
|
1273
|
+
"description": "The possible costs and associated labels.",
|
|
1274
|
+
"type": "array",
|
|
1275
|
+
"items": {
|
|
1276
|
+
"$ref": "#/definitions/VolumeMapOption"
|
|
1277
|
+
},
|
|
1278
|
+
"minItems": 2
|
|
1279
|
+
},
|
|
1280
|
+
"translations": {
|
|
1281
|
+
"description": "All translations for the entry, identified by IETF language tag (BCP47).",
|
|
1282
|
+
"type": "object",
|
|
1283
|
+
"patternProperties": {
|
|
1284
|
+
"^[a-z]{2}-[A-Z]{2}$": {
|
|
1285
|
+
"type": "object",
|
|
1286
|
+
"properties": {
|
|
1287
|
+
"list_prepend": {
|
|
1288
|
+
"description": "Place a string between the `for` and the grouped map option labels.",
|
|
1289
|
+
"type": "string"
|
|
1290
|
+
},
|
|
1291
|
+
"list_append": {
|
|
1292
|
+
"description": "Place a string after the grouped map option labels.",
|
|
1293
|
+
"type": "string"
|
|
1294
|
+
},
|
|
1295
|
+
"replacement": {
|
|
1296
|
+
"description": "If the string from the book cannot be generated using the default\ngeneration technique, use this string. All options still need to be\ninserted propertly, since it may be used by in-game tools to provide a\nselection to players.",
|
|
1297
|
+
"type": "string"
|
|
1298
|
+
}
|
|
1299
|
+
},
|
|
1300
|
+
"required": [],
|
|
1301
|
+
"additionalProperties": false
|
|
1302
|
+
}
|
|
1303
|
+
},
|
|
1304
|
+
"minProperties": 1,
|
|
1305
|
+
"additionalProperties": false
|
|
1306
|
+
}
|
|
1307
|
+
},
|
|
1308
|
+
"required": [
|
|
1309
|
+
"options"
|
|
1310
|
+
],
|
|
1311
|
+
"additionalProperties": false
|
|
1312
|
+
},
|
|
1313
|
+
"BindingCostMapOption": {
|
|
1314
|
+
"type": "object",
|
|
1315
|
+
"properties": {
|
|
1316
|
+
"permanent_value": {
|
|
1317
|
+
"description": "The full permanent AE cost value for this option.",
|
|
1318
|
+
"type": "integer",
|
|
1319
|
+
"minimum": 1
|
|
1320
|
+
},
|
|
1321
|
+
"translations": {
|
|
1322
|
+
"description": "All translations for the entry, identified by IETF language tag (BCP47).",
|
|
1323
|
+
"type": "object",
|
|
1324
|
+
"patternProperties": {
|
|
1325
|
+
"^[a-z]{2}-[A-Z]{2}$": {
|
|
1326
|
+
"type": "object",
|
|
1327
|
+
"properties": {
|
|
1328
|
+
"label": {
|
|
1329
|
+
"description": "The description of the option for cost string generation.",
|
|
1330
|
+
"type": "string",
|
|
1331
|
+
"minLength": 1
|
|
1332
|
+
},
|
|
1333
|
+
"label_standalone": {
|
|
1334
|
+
"description": "The description of the option if used standalone. Only used if\ndifferent from `label`.",
|
|
1335
|
+
"type": "string",
|
|
1336
|
+
"minLength": 1
|
|
1337
|
+
}
|
|
1338
|
+
},
|
|
1339
|
+
"required": [
|
|
1340
|
+
"label"
|
|
1341
|
+
],
|
|
1342
|
+
"additionalProperties": false
|
|
1343
|
+
}
|
|
1344
|
+
},
|
|
1345
|
+
"minProperties": 1,
|
|
1346
|
+
"additionalProperties": false
|
|
1347
|
+
}
|
|
1348
|
+
},
|
|
1349
|
+
"required": [
|
|
1350
|
+
"permanent_value"
|
|
1351
|
+
],
|
|
1352
|
+
"additionalProperties": false
|
|
296
1353
|
},
|
|
297
1354
|
"Property": {
|
|
298
1355
|
"description": "The magic property's identifier. `DependingOnProperty` can only be used if\nthe special ability has an option to select a property.",
|
|
@@ -506,7 +1563,6 @@
|
|
|
506
1563
|
"value": {
|
|
507
1564
|
"description": "The referenced entry's numeric identifier.",
|
|
508
1565
|
"type": "integer",
|
|
509
|
-
"maximum": 8,
|
|
510
1566
|
"minimum": 1
|
|
511
1567
|
}
|
|
512
1568
|
},
|
|
@@ -525,7 +1581,6 @@
|
|
|
525
1581
|
"value": {
|
|
526
1582
|
"description": "The referenced entry's numeric identifier.",
|
|
527
1583
|
"type": "integer",
|
|
528
|
-
"maximum": 8,
|
|
529
1584
|
"minimum": 1
|
|
530
1585
|
}
|
|
531
1586
|
},
|