optolith-database-schema 0.2.2 → 0.3.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 +71 -0
- package/lib/config.d.ts +302 -250
- package/lib/config.js +302 -250
- package/lib/main.d.ts +3 -2
- package/lib/main.js +1 -1
- package/lib/types/Advantage.d.ts +22 -24
- package/lib/types/AnimalDisease.d.ts +18 -212
- package/lib/types/AnimalType.d.ts +9 -13
- package/lib/types/ArcaneBardTradition.d.ts +3 -27
- package/lib/types/ArcaneDancerTradition.d.ts +3 -27
- package/lib/types/Aspect.d.ts +14 -19
- package/lib/types/Attribute.d.ts +17 -23
- package/lib/types/Blessing.d.ts +78 -94
- package/lib/types/Cantrip.d.ts +132 -148
- package/lib/types/Ceremony.d.ts +55 -88
- package/lib/types/CombatTechnique_Close.d.ts +30 -39
- package/lib/types/CombatTechnique_Ranged.d.ts +28 -26
- package/lib/types/Condition.d.ts +18 -31
- package/lib/types/Continent.d.ts +9 -13
- package/lib/types/Culture.d.ts +168 -290
- package/lib/types/DerivedCharacteristic.d.ts +4 -10
- package/lib/types/Disadvantage.d.ts +19 -23
- package/lib/types/Disease.d.ts +5 -140
- package/lib/types/Element.d.ts +9 -13
- package/lib/types/ExperienceLevel.d.ts +3 -9
- package/lib/types/EyeColor.d.ts +9 -13
- package/lib/types/FamiliarsTrick.d.ts +201 -290
- package/lib/types/HairColor.d.ts +9 -13
- package/lib/types/Lessons_Curriculum.d.ts +73 -138
- package/lib/types/Lessons_Guideline.d.ts +9 -13
- package/lib/types/LiturgicalChant.d.ts +55 -88
- package/lib/types/Locale.d.ts +1 -1
- package/lib/types/Locale.js +1 -1
- package/lib/types/MetaCondition.d.ts +18 -31
- package/lib/types/PactCategory.d.ts +48 -62
- package/lib/types/Patron.d.ts +66 -76
- package/lib/types/PatronCategory.d.ts +11 -21
- package/lib/types/PersonalityTrait.d.ts +31 -39
- package/lib/types/Profession.d.ts +296 -435
- package/lib/types/Property.d.ts +9 -13
- package/lib/types/Race.d.ts +99 -194
- package/lib/types/Region.d.ts +9 -13
- package/lib/types/Ritual.d.ts +58 -83
- package/lib/types/Service.d.ts +20 -25
- package/lib/types/SexPractice.d.ts +26 -34
- package/lib/types/Skill.d.ts +65 -90
- package/lib/types/SkillGroup.d.ts +13 -18
- package/lib/types/SkillModificationLevel.d.ts +72 -76
- package/lib/types/SocialStatus.d.ts +9 -13
- package/lib/types/Spell.d.ts +58 -83
- package/lib/types/State.d.ts +14 -20
- package/lib/types/Talisman.d.ts +44 -54
- package/lib/types/TargetCategory.d.ts +21 -16
- package/lib/types/UI.d.ts +1 -5
- package/lib/types/_Activatable.d.ts +607 -1177
- package/lib/types/_Activatable.js +0 -12
- package/lib/types/_ActivatableSelectOptionCategory.d.ts +356 -0
- package/lib/types/{prerequisites/single/CommonSuggestedByRCPPrerequisite.js → _ActivatableSelectOptionCategory.js} +0 -0
- package/lib/types/_ActivatableSkill.d.ts +24 -1013
- package/lib/types/_ActivatableSkill.js +1 -31
- package/lib/types/_ActivatableSkillCastingTime.d.ts +69 -0
- package/lib/types/_ActivatableSkillCastingTime.js +5 -0
- package/lib/types/_ActivatableSkillCheckResultBased.d.ts +41 -0
- package/lib/types/{equipment/_Armor.js → _ActivatableSkillCheckResultBased.js} +0 -3
- package/lib/types/_ActivatableSkillCost.d.ts +223 -0
- package/lib/types/_ActivatableSkillCost.js +1 -0
- package/lib/types/_ActivatableSkillDuration.d.ts +138 -0
- package/lib/types/_ActivatableSkillDuration.js +13 -0
- package/lib/types/_ActivatableSkillEffect.d.ts +68 -0
- package/lib/types/_ActivatableSkillEffect.js +1 -0
- package/lib/types/_ActivatableSkillRange.d.ts +103 -0
- package/lib/types/_ActivatableSkillRange.js +5 -0
- package/lib/types/_ActivatableSkillTargetCategory.d.ts +35 -0
- package/lib/types/_ActivatableSkillTargetCategory.js +1 -0
- package/lib/types/_AlternativeNames.d.ts +11 -0
- package/lib/types/_AlternativeNames.js +1 -0
- package/lib/types/_ArcaneTradition.d.ts +28 -0
- package/lib/types/_ArcaneTradition.js +4 -0
- package/lib/types/_Blessed.d.ts +22 -0
- package/lib/types/_Blessed.js +1 -0
- package/lib/types/_DiseasePoison.d.ts +116 -0
- package/lib/types/_DiseasePoison.js +5 -0
- package/lib/types/_Enhancements.d.ts +16 -20
- package/lib/types/_I18n.d.ts +1 -5
- package/lib/types/_Identifier.d.ts +32 -0
- package/lib/types/_Identifier.js +32 -0
- package/lib/types/_Influence.d.ts +27 -32
- package/lib/types/_LocaleMap.d.ts +10 -0
- package/lib/types/_LocaleMap.js +1 -0
- package/lib/types/_NonEmptyString.d.ts +9 -0
- package/lib/types/_NonEmptyString.js +1 -0
- package/lib/types/_Prerequisite.d.ts +61 -65
- package/lib/types/_ResponsiveText.d.ts +54 -0
- package/lib/types/_ResponsiveText.js +1 -0
- package/lib/types/_SimpleReferences.d.ts +334 -0
- package/lib/types/_SimpleReferences.js +1 -0
- package/lib/types/_SkillCheck.d.ts +6 -11
- package/lib/types/_Spellwork.d.ts +17 -0
- package/lib/types/_Spellwork.js +1 -0
- package/lib/types/equipment/EquipmentPackage.d.ts +24 -28
- package/lib/types/equipment/item/Alchemicum.d.ts +6 -0
- package/lib/types/equipment/item/Alchemicum.js +5 -0
- package/lib/types/equipment/item/Ammunition.d.ts +31 -0
- package/lib/types/equipment/item/Ammunition.js +5 -0
- package/lib/types/equipment/item/Animal.d.ts +18 -0
- package/lib/types/equipment/item/Animal.js +5 -0
- package/lib/types/equipment/item/AnimalCare.d.ts +48 -0
- package/lib/types/equipment/item/AnimalCare.js +5 -0
- package/lib/types/equipment/item/Armor.d.ts +185 -0
- package/lib/types/equipment/item/Armor.js +5 -0
- package/lib/types/equipment/item/BandageOrRemedy.d.ts +6 -0
- package/lib/types/equipment/item/BandageOrRemedy.js +5 -0
- package/lib/types/equipment/item/Book.d.ts +60 -0
- package/lib/types/equipment/item/Book.js +5 -0
- package/lib/types/equipment/item/CeremonialItem.d.ts +6 -0
- package/lib/types/equipment/item/CeremonialItem.js +5 -0
- package/lib/types/equipment/item/Clothes.d.ts +6 -0
- package/lib/types/equipment/item/Clothes.js +5 -0
- package/lib/types/equipment/item/Container.d.ts +6 -0
- package/lib/types/equipment/item/Container.js +5 -0
- package/lib/types/equipment/item/EquipmentOfBlessedOnes.d.ts +41 -0
- package/lib/types/equipment/item/EquipmentOfBlessedOnes.js +5 -0
- package/lib/types/equipment/item/GemOrPreciousStone.d.ts +43 -0
- package/lib/types/equipment/item/GemOrPreciousStone.js +5 -0
- package/lib/types/equipment/item/HealingHerb.d.ts +6 -0
- package/lib/types/equipment/item/HealingHerb.js +5 -0
- package/lib/types/equipment/item/Illumination.d.ts +6 -0
- package/lib/types/equipment/item/Illumination.js +5 -0
- package/lib/types/equipment/item/Jewelry.d.ts +60 -0
- package/lib/types/equipment/item/Jewelry.js +5 -0
- package/lib/types/equipment/item/Liebesspielzeug.d.ts +6 -0
- package/lib/types/equipment/item/Liebesspielzeug.js +5 -0
- package/lib/types/equipment/item/LuxuryGood.d.ts +6 -0
- package/lib/types/equipment/item/LuxuryGood.js +5 -0
- package/lib/types/equipment/item/MagicalArtifact.d.ts +39 -0
- package/lib/types/equipment/item/MagicalArtifact.js +5 -0
- package/lib/types/equipment/item/MusicalInstrument.d.ts +27 -0
- package/lib/types/equipment/item/MusicalInstrument.js +5 -0
- package/lib/types/equipment/item/OrienteeringAid.d.ts +6 -0
- package/lib/types/equipment/item/OrienteeringAid.js +5 -0
- package/lib/types/equipment/item/Poison.d.ts +163 -0
- package/lib/types/{Poison.js → equipment/item/Poison.js} +1 -1
- package/lib/types/equipment/item/RopeOrChain.d.ts +6 -0
- package/lib/types/equipment/item/RopeOrChain.js +5 -0
- package/lib/types/equipment/item/Stationary.d.ts +6 -0
- package/lib/types/equipment/item/Stationary.js +5 -0
- package/lib/types/equipment/item/ThievesTool.d.ts +6 -0
- package/lib/types/equipment/item/ThievesTool.js +5 -0
- package/lib/types/equipment/item/ToolOfTheTrade.d.ts +56 -0
- package/lib/types/equipment/item/ToolOfTheTrade.js +5 -0
- package/lib/types/equipment/item/TravelGearOrTool.d.ts +6 -0
- package/lib/types/equipment/item/TravelGearOrTool.js +5 -0
- package/lib/types/equipment/item/Vehicle.d.ts +18 -0
- package/lib/types/equipment/item/Vehicle.js +5 -0
- package/lib/types/equipment/item/Weapon.d.ts +152 -0
- package/lib/types/equipment/item/Weapon.js +5 -0
- package/lib/types/equipment/item/WeaponAccessory.d.ts +6 -0
- package/lib/types/equipment/item/WeaponAccessory.js +5 -0
- package/lib/types/equipment/item/_Item.d.ts +157 -0
- package/lib/types/equipment/item/_Item.js +1 -0
- package/lib/types/equipment/item/_MeleeWeapon.d.ts +113 -0
- package/lib/types/equipment/item/_MeleeWeapon.js +4 -0
- package/lib/types/equipment/item/_RangedWeapon.d.ts +108 -0
- package/lib/types/equipment/item/_RangedWeapon.js +4 -0
- package/lib/types/equipment/item/_Weapon.d.ts +57 -0
- package/lib/types/equipment/{_Weapon.js → item/_Weapon.js} +0 -3
- package/lib/types/equipment/item/sub/ArmorType.d.ts +36 -0
- package/lib/types/equipment/{ArmorType.js → item/sub/ArmorType.js} +1 -1
- package/lib/types/equipment/item/sub/Reach.d.ts +27 -0
- package/lib/types/equipment/{Reach.js → item/sub/Reach.js} +1 -1
- package/lib/types/magicalActions/AnimistPower.d.ts +168 -225
- package/lib/types/magicalActions/AnimistPower_Tribe.d.ts +9 -13
- package/lib/types/magicalActions/Curse.d.ts +115 -184
- package/lib/types/magicalActions/DominationRitual.d.ts +98 -136
- package/lib/types/magicalActions/ElvenMagicalSong.d.ts +79 -123
- package/lib/types/magicalActions/GeodeRitual.d.ts +124 -111
- package/lib/types/magicalActions/JesterTrick.d.ts +114 -109
- package/lib/types/magicalActions/MagicalDance.d.ts +71 -138
- package/lib/types/magicalActions/MagicalMelody.d.ts +65 -75
- package/lib/types/magicalActions/MagicalRune.d.ts +155 -189
- package/lib/types/magicalActions/ZibiljaRitual.d.ts +57 -65
- package/lib/types/magicalActions/_MusicTradition.d.ts +23 -13
- package/lib/types/magicalActions/_SkillReference.d.ts +1 -1
- package/lib/types/prerequisites/DisplayOption.d.ts +6 -8
- package/lib/types/prerequisites/PrerequisiteGroups.d.ts +194 -16
- package/lib/types/prerequisites/single/ActivatablePrerequisite.d.ts +0 -3
- package/lib/types/prerequisites/single/AnimistPowerPrerequisite.d.ts +0 -1
- package/lib/types/prerequisites/single/CulturePrerequisite.d.ts +0 -1
- package/lib/types/prerequisites/single/EnhancementPrerequisite.d.ts +17 -14
- package/lib/types/prerequisites/single/InfluencePrerequisite.d.ts +0 -1
- package/lib/types/prerequisites/single/PactPrerequisite.d.ts +5 -14
- package/lib/types/prerequisites/single/PrimaryAttributePrerequisite.d.ts +6 -6
- package/lib/types/prerequisites/single/PublicationPrerequisite.d.ts +0 -1
- package/lib/types/prerequisites/single/RacePrerequisite.d.ts +0 -1
- package/lib/types/prerequisites/single/RatedPrerequisite.d.ts +32 -41
- package/lib/types/prerequisites/single/RulePrerequisite.d.ts +0 -1
- package/lib/types/prerequisites/single/SexPrerequisite.d.ts +0 -1
- package/lib/types/prerequisites/single/SocialStatusPrerequisite.d.ts +0 -1
- package/lib/types/prerequisites/single/StatePrerequisite.d.ts +0 -1
- package/lib/types/prerequisites/single/TextPrerequisite.d.ts +11 -15
- package/lib/types/prerequisites/single/TraditionPrerequisite.d.ts +20 -12
- package/lib/types/rule/CoreRule.d.ts +198 -206
- package/lib/types/rule/FocusRule.d.ts +19 -24
- package/lib/types/rule/FocusRule_Subject.d.ts +9 -13
- package/lib/types/rule/OptionalRule.d.ts +12 -35
- package/lib/types/rule/_Rule.d.ts +19 -0
- package/lib/types/rule/_Rule.js +1 -0
- package/lib/types/source/Publication.d.ts +34 -48
- package/lib/types/source/_Erratum.d.ts +2 -1
- package/lib/types/source/_PublicationRef.d.ts +41 -37
- package/lib/types/specialAbility/AdvancedCombatSpecialAbility.d.ts +13 -17
- package/lib/types/specialAbility/AdvancedKarmaSpecialAbility.d.ts +8 -12
- package/lib/types/specialAbility/AdvancedMagicalSpecialAbility.d.ts +8 -12
- package/lib/types/specialAbility/AdvancedSkillSpecialAbility.d.ts +8 -12
- package/lib/types/specialAbility/AncestorGlyph.d.ts +8 -12
- package/lib/types/specialAbility/BlessedTradition.d.ts +92 -123
- package/lib/types/specialAbility/BrawlingSpecialAbility.d.ts +9 -13
- package/lib/types/specialAbility/CeremonialItemSpecialAbility.d.ts +8 -12
- package/lib/types/specialAbility/CombatSpecialAbility.d.ts +13 -17
- package/lib/types/specialAbility/CombatStyleSpecialAbility.d.ts +10 -18
- package/lib/types/specialAbility/CommandSpecialAbility.d.ts +1 -1
- package/lib/types/specialAbility/FamiliarSpecialAbility.d.ts +8 -12
- package/lib/types/specialAbility/FatePointSexSpecialAbility.d.ts +8 -12
- package/lib/types/specialAbility/FatePointSpecialAbility.d.ts +8 -12
- package/lib/types/specialAbility/GeneralSpecialAbility.d.ts +8 -12
- package/lib/types/specialAbility/KarmaSpecialAbility.d.ts +8 -12
- package/lib/types/specialAbility/LiturgicalStyleSpecialAbility.d.ts +8 -12
- package/lib/types/specialAbility/LycantropicGift.d.ts +8 -12
- package/lib/types/specialAbility/MagicStyleSpecialAbility.d.ts +8 -12
- package/lib/types/specialAbility/MagicalSpecialAbility.d.ts +8 -12
- package/lib/types/specialAbility/MagicalTradition.d.ts +38 -58
- package/lib/types/specialAbility/PactGift.d.ts +75 -62
- package/lib/types/specialAbility/ProtectiveWardingCircleSpecialAbility.d.ts +16 -23
- package/lib/types/specialAbility/Sermon.d.ts +8 -12
- package/lib/types/specialAbility/SexSpecialAbility.d.ts +8 -12
- package/lib/types/specialAbility/SikaryanDrainSpecialAbility.d.ts +8 -12
- package/lib/types/specialAbility/SkillStyleSpecialAbility.d.ts +8 -12
- package/lib/types/specialAbility/VampiricGift.d.ts +8 -12
- package/lib/types/specialAbility/Vision.d.ts +8 -12
- package/lib/types/specialAbility/_Tradition.d.ts +12 -0
- package/lib/types/specialAbility/_Tradition.js +1 -0
- package/lib/types/specialAbility/sub/Language.d.ts +78 -104
- package/lib/types/specialAbility/sub/Script.d.ts +24 -51
- package/lib/types/specialAbility/sub/TradeSecret.d.ts +14 -20
- package/lib/types/specialAbility/sub/_LanguageScript.d.ts +13 -0
- package/lib/types/specialAbility/sub/_LanguageScript.js +1 -0
- package/lib/types/traditionArtifacts/ArcaneOrbEnchantment.d.ts +20 -24
- package/lib/types/traditionArtifacts/AttireEnchantment.d.ts +21 -25
- package/lib/types/traditionArtifacts/BowlEnchantment.d.ts +20 -24
- package/lib/types/traditionArtifacts/CauldronEnchantment.d.ts +31 -34
- package/lib/types/traditionArtifacts/ChronicleEnchantment.d.ts +20 -24
- package/lib/types/traditionArtifacts/DaggerRitual.d.ts +45 -25
- package/lib/types/traditionArtifacts/FoolsHatEnchantment.d.ts +20 -24
- package/lib/types/traditionArtifacts/InstrumentEnchantment.d.ts +20 -24
- package/lib/types/traditionArtifacts/Krallenkettenzauber.d.ts +20 -24
- package/lib/types/traditionArtifacts/OrbEnchantment.d.ts +20 -24
- package/lib/types/traditionArtifacts/RingEnchantment.d.ts +20 -24
- package/lib/types/traditionArtifacts/SickleRitual.d.ts +20 -24
- package/lib/types/traditionArtifacts/SpellSwordEnchantment.d.ts +20 -24
- package/lib/types/traditionArtifacts/StaffEnchantment.d.ts +21 -25
- package/lib/types/traditionArtifacts/ToyEnchantment.d.ts +21 -25
- package/lib/types/traditionArtifacts/Trinkhornzauber.d.ts +20 -24
- package/lib/types/traditionArtifacts/WandEnchantment.d.ts +20 -24
- package/lib/types/traditionArtifacts/WeaponEnchantment.d.ts +19 -24
- package/lib/types/traditionArtifacts/sub/AnimalShape.d.ts +24 -16
- package/lib/types/traditionArtifacts/sub/AnimalShapePath.d.ts +9 -13
- package/lib/types/traditionArtifacts/sub/AnimalShapeSize.d.ts +9 -13
- package/lib/types/traditionArtifacts/sub/Brew.d.ts +9 -13
- package/lib/validation/schema.d.ts +11 -2
- package/lib/validation/schema.js +16 -4
- package/package.json +8 -7
- package/schema/Advantage.schema.json +49 -42
- package/schema/AnimalDisease.schema.json +17 -325
- package/schema/AnimalType.schema.json +17 -15
- package/schema/ArcaneBardTradition.schema.json +4 -42
- package/schema/ArcaneDancerTradition.schema.json +4 -42
- package/schema/Aspect.schema.json +21 -20
- package/schema/Attribute.schema.json +27 -27
- package/schema/Blessing.schema.json +188 -170
- package/schema/Cantrip.schema.json +334 -273
- package/schema/Ceremony.schema.json +90 -149
- package/schema/CombatTechnique_Close.schema.json +56 -67
- package/schema/CombatTechnique_Ranged.schema.json +46 -30
- package/schema/Condition.schema.json +46 -50
- package/schema/Continent.schema.json +18 -15
- package/schema/Culture.schema.json +408 -487
- package/schema/DerivedCharacteristic.schema.json +8 -8
- package/schema/Disadvantage.schema.json +45 -40
- package/schema/Disease.schema.json +7 -193
- package/schema/Element.schema.json +18 -15
- package/schema/ExperienceLevel.schema.json +5 -5
- package/schema/EyeColor.schema.json +17 -15
- package/schema/FamiliarsTrick.schema.json +491 -513
- package/schema/HairColor.schema.json +17 -15
- package/schema/Kirchenpraegung.schema.json +4 -4
- package/schema/Lessons_Curriculum.schema.json +202 -232
- package/schema/Lessons_Guideline.schema.json +17 -15
- package/schema/LiturgicalChant.schema.json +90 -149
- package/schema/Locale.schema.json +5 -5
- package/schema/MetaCondition.schema.json +46 -50
- package/schema/PactCategory.schema.json +101 -89
- package/schema/Patron.schema.json +239 -229
- package/schema/PatronCategory.schema.json +18 -27
- package/schema/PersonalityTrait.schema.json +50 -57
- package/schema/Profession.schema.json +810 -993
- package/schema/Property.schema.json +18 -16
- package/schema/Race.schema.json +200 -308
- package/schema/Region.schema.json +17 -15
- package/schema/Ritual.schema.json +111 -158
- package/schema/Service.schema.json +55 -51
- package/schema/SexPractice.schema.json +37 -39
- package/schema/Skill.schema.json +88 -89
- package/schema/SkillGroup.schema.json +23 -22
- package/schema/SkillModificationLevel.schema.json +93 -82
- package/schema/SocialStatus.schema.json +17 -15
- package/schema/Spell.schema.json +110 -158
- package/schema/State.schema.json +26 -25
- package/schema/Talisman.schema.json +115 -121
- package/schema/TargetCategory.schema.json +35 -20
- package/schema/UI.schema.json +830 -834
- package/schema/_Activatable.schema.json +1482 -2138
- package/schema/_ActivatableSelectOptionCategory.schema.json +1124 -0
- package/schema/_ActivatableSkill.schema.json +96 -1679
- package/schema/_ActivatableSkillCastingTime.schema.json +177 -0
- package/schema/_ActivatableSkillCheckResultBased.schema.json +101 -0
- package/schema/_ActivatableSkillCost.schema.json +448 -0
- package/schema/_ActivatableSkillDuration.schema.json +335 -0
- package/schema/_ActivatableSkillEffect.schema.json +153 -0
- package/schema/_ActivatableSkillRange.schema.json +221 -0
- package/schema/_ActivatableSkillTargetCategory.schema.json +117 -0
- package/schema/_AlternativeNames.schema.json +23 -0
- package/schema/_ArcaneTradition.schema.json +51 -0
- package/schema/_Blessed.schema.json +64 -0
- package/schema/_CommonnessRatedAdvantageDisadvantage.schema.json +2 -2
- package/schema/_Dice.schema.json +3 -3
- package/schema/_DiseasePoison.schema.json +173 -0
- package/schema/_Enhancements.schema.json +29 -26
- package/schema/_I18n.schema.json +8 -12
- package/schema/_Identifier.schema.json +73 -22
- package/schema/_ImprovementCost.schema.json +2 -2
- package/schema/_Influence.schema.json +48 -45
- package/schema/_NonEmptyString.schema.json +14 -0
- package/schema/_Prerequisite.schema.json +953 -765
- package/schema/_ResponsiveText.schema.json +66 -0
- package/schema/_Sex.schema.json +3 -3
- package/schema/_SimpleReferences.schema.json +586 -0
- package/schema/_SkillCheck.schema.json +5 -20
- package/schema/_Spellwork.schema.json +47 -0
- package/schema/equipment/EquipmentPackage.schema.json +37 -32
- package/schema/equipment/item/Alchemicum.schema.json +10 -0
- package/schema/equipment/item/Ammunition.schema.json +56 -0
- package/schema/equipment/item/Animal.schema.json +36 -0
- package/schema/equipment/item/AnimalCare.schema.json +124 -0
- package/schema/equipment/item/Armor.schema.json +288 -0
- package/schema/equipment/item/BandageOrRemedy.schema.json +10 -0
- package/schema/equipment/item/Book.schema.json +89 -0
- package/schema/equipment/item/CeremonialItem.schema.json +10 -0
- package/schema/equipment/item/Clothes.schema.json +10 -0
- package/schema/equipment/item/Container.schema.json +10 -0
- package/schema/equipment/item/EquipmentOfBlessedOnes.schema.json +59 -0
- package/schema/equipment/item/GemOrPreciousStone.schema.json +69 -0
- package/schema/equipment/item/HealingHerb.schema.json +10 -0
- package/schema/equipment/item/Illumination.schema.json +10 -0
- package/schema/equipment/item/Jewelry.schema.json +113 -0
- package/schema/equipment/item/Liebesspielzeug.schema.json +10 -0
- package/schema/equipment/item/LuxuryGood.schema.json +10 -0
- package/schema/equipment/item/MagicalArtifact.schema.json +64 -0
- package/schema/equipment/item/MusicalInstrument.schema.json +46 -0
- package/schema/equipment/item/OrienteeringAid.schema.json +10 -0
- package/schema/equipment/item/Poison.schema.json +378 -0
- package/schema/equipment/item/RopeOrChain.schema.json +10 -0
- package/schema/equipment/item/Stationary.schema.json +10 -0
- package/schema/equipment/item/ThievesTool.schema.json +10 -0
- package/schema/equipment/item/ToolOfTheTrade.schema.json +83 -0
- package/schema/equipment/item/TravelGearOrTool.schema.json +10 -0
- package/schema/equipment/item/Vehicle.schema.json +36 -0
- package/schema/equipment/item/Weapon.schema.json +265 -0
- package/schema/equipment/item/WeaponAccessory.schema.json +10 -0
- package/schema/equipment/item/_Item.schema.json +361 -0
- package/schema/equipment/item/_MeleeWeapon.schema.json +166 -0
- package/schema/equipment/item/_RangedWeapon.schema.json +172 -0
- package/schema/equipment/item/_Weapon.schema.json +99 -0
- package/schema/equipment/item/sub/ArmorType.schema.json +53 -0
- package/schema/equipment/{Reach.schema.json → item/sub/Reach.schema.json} +18 -16
- package/schema/magicalActions/AnimistPower.schema.json +413 -402
- package/schema/magicalActions/AnimistPower_Tribe.schema.json +17 -15
- package/schema/magicalActions/Curse.schema.json +288 -315
- package/schema/magicalActions/DominationRitual.schema.json +233 -220
- package/schema/magicalActions/ElvenMagicalSong.schema.json +132 -154
- package/schema/magicalActions/GeodeRitual.schema.json +284 -222
- package/schema/magicalActions/JesterTrick.schema.json +252 -202
- package/schema/magicalActions/MagicalDance.schema.json +147 -251
- package/schema/magicalActions/MagicalMelody.schema.json +129 -164
- package/schema/magicalActions/MagicalRune.schema.json +341 -323
- package/schema/magicalActions/ZibiljaRitual.schema.json +139 -112
- package/schema/magicalActions/_MusicTradition.schema.json +88 -14
- package/schema/magicalActions/_SkillReference.schema.json +4 -4
- package/schema/prerequisites/ConditionalPrerequisites.schema.json +3 -3
- package/schema/prerequisites/DisplayOption.schema.json +25 -14
- package/schema/prerequisites/PrerequisiteGroups.schema.json +928 -152
- package/schema/prerequisites/single/ActivatablePrerequisite.schema.json +13 -25
- package/schema/prerequisites/single/AnimistPowerPrerequisite.schema.json +4 -7
- package/schema/prerequisites/single/CulturePrerequisite.schema.json +4 -8
- package/schema/prerequisites/single/EnhancementPrerequisite.schema.json +30 -23
- package/schema/prerequisites/single/InfluencePrerequisite.schema.json +3 -7
- package/schema/prerequisites/single/PactPrerequisite.schema.json +9 -19
- package/schema/prerequisites/single/PrimaryAttributePrerequisite.schema.json +32 -33
- package/schema/prerequisites/single/PublicationPrerequisite.schema.json +3 -7
- package/schema/prerequisites/single/RacePrerequisite.schema.json +4 -8
- package/schema/prerequisites/single/RatedPrerequisite.schema.json +104 -107
- package/schema/prerequisites/single/RulePrerequisite.schema.json +4 -8
- package/schema/prerequisites/single/SexPrerequisite.schema.json +4 -8
- package/schema/prerequisites/single/SocialStatusPrerequisite.schema.json +3 -7
- package/schema/prerequisites/single/StatePrerequisite.schema.json +4 -8
- package/schema/prerequisites/single/TextPrerequisite.schema.json +36 -35
- package/schema/prerequisites/single/TraditionPrerequisite.schema.json +66 -68
- package/schema/rule/CoreRule.schema.json +904 -859
- package/schema/rule/FocusRule.schema.json +34 -30
- package/schema/rule/FocusRule_Subject.schema.json +17 -15
- package/schema/rule/OptionalRule.schema.json +24 -56
- package/schema/rule/_Rule.schema.json +52 -0
- package/schema/source/Publication.schema.json +45 -71
- package/schema/source/_Erratum.schema.json +5 -6
- package/schema/source/_PublicationRef.schema.json +87 -57
- package/schema/specialAbility/AdvancedCombatSpecialAbility.schema.json +41 -38
- package/schema/specialAbility/AdvancedKarmaSpecialAbility.schema.json +35 -32
- package/schema/specialAbility/AdvancedMagicalSpecialAbility.schema.json +35 -32
- package/schema/specialAbility/AdvancedSkillSpecialAbility.schema.json +35 -32
- package/schema/specialAbility/AncestorGlyph.schema.json +33 -30
- package/schema/specialAbility/BlessedTradition.schema.json +230 -225
- package/schema/specialAbility/BrawlingSpecialAbility.schema.json +35 -32
- package/schema/specialAbility/CeremonialItemSpecialAbility.schema.json +36 -33
- package/schema/specialAbility/CombatSpecialAbility.schema.json +41 -38
- package/schema/specialAbility/CombatStyleSpecialAbility.schema.json +39 -61
- package/schema/specialAbility/CommandSpecialAbility.schema.json +16 -16
- package/schema/specialAbility/FamiliarSpecialAbility.schema.json +33 -30
- package/schema/specialAbility/FatePointSexSpecialAbility.schema.json +33 -30
- package/schema/specialAbility/FatePointSpecialAbility.schema.json +35 -32
- package/schema/specialAbility/GeneralSpecialAbility.schema.json +35 -32
- package/schema/specialAbility/KarmaSpecialAbility.schema.json +33 -30
- package/schema/specialAbility/LiturgicalStyleSpecialAbility.schema.json +36 -33
- package/schema/specialAbility/LycantropicGift.schema.json +33 -30
- package/schema/specialAbility/MagicStyleSpecialAbility.schema.json +36 -33
- package/schema/specialAbility/MagicalSpecialAbility.schema.json +35 -32
- package/schema/specialAbility/MagicalTradition.schema.json +66 -87
- package/schema/specialAbility/PactGift.schema.json +240 -174
- package/schema/specialAbility/ProtectiveWardingCircleSpecialAbility.schema.json +39 -38
- package/schema/specialAbility/Sermon.schema.json +33 -30
- package/schema/specialAbility/SexSpecialAbility.schema.json +35 -32
- package/schema/specialAbility/SikaryanDrainSpecialAbility.schema.json +33 -30
- package/schema/specialAbility/SkillStyleSpecialAbility.schema.json +34 -31
- package/schema/specialAbility/VampiricGift.schema.json +33 -30
- package/schema/specialAbility/Vision.schema.json +33 -30
- package/schema/specialAbility/_Tradition.schema.json +23 -0
- package/schema/specialAbility/sub/Language.schema.json +170 -162
- package/schema/specialAbility/sub/Script.schema.json +35 -72
- package/schema/specialAbility/sub/TradeSecret.schema.json +26 -25
- package/schema/specialAbility/sub/_LanguageScript.schema.json +26 -0
- package/schema/traditionArtifacts/ArcaneOrbEnchantment.schema.json +46 -43
- package/schema/traditionArtifacts/AttireEnchantment.schema.json +47 -43
- package/schema/traditionArtifacts/BowlEnchantment.schema.json +46 -43
- package/schema/traditionArtifacts/CauldronEnchantment.schema.json +63 -56
- package/schema/traditionArtifacts/ChronicleEnchantment.schema.json +46 -43
- package/schema/traditionArtifacts/DaggerRitual.schema.json +132 -43
- package/schema/traditionArtifacts/FoolsHatEnchantment.schema.json +46 -43
- package/schema/traditionArtifacts/InstrumentEnchantment.schema.json +46 -43
- package/schema/traditionArtifacts/Krallenkettenzauber.schema.json +46 -43
- package/schema/traditionArtifacts/OrbEnchantment.schema.json +46 -43
- package/schema/traditionArtifacts/RingEnchantment.schema.json +46 -43
- package/schema/traditionArtifacts/SickleRitual.schema.json +46 -43
- package/schema/traditionArtifacts/SpellSwordEnchantment.schema.json +46 -43
- package/schema/traditionArtifacts/StaffEnchantment.schema.json +47 -43
- package/schema/traditionArtifacts/ToyEnchantment.schema.json +47 -43
- package/schema/traditionArtifacts/Trinkhornzauber.schema.json +46 -43
- package/schema/traditionArtifacts/WandEnchantment.schema.json +46 -43
- package/schema/traditionArtifacts/WeaponEnchantment.schema.json +46 -50
- package/schema/traditionArtifacts/sub/AnimalShape.schema.json +53 -25
- package/schema/traditionArtifacts/sub/AnimalShapePath.schema.json +17 -15
- package/schema/traditionArtifacts/sub/AnimalShapeSize.schema.json +17 -15
- package/schema/traditionArtifacts/sub/Brew.schema.json +17 -15
- package/lib/types/MagicalTraditionPlaceholder.d.ts +0 -32
- package/lib/types/MagicalTraditionPlaceholder.js +0 -5
- package/lib/types/Poison.d.ts +0 -208
- package/lib/types/equipment/ArmorType.d.ts +0 -31
- package/lib/types/equipment/Item.d.ts +0 -308
- package/lib/types/equipment/Item.js +0 -35
- package/lib/types/equipment/ItemGroup.d.ts +0 -31
- package/lib/types/equipment/ItemGroup.js +0 -5
- package/lib/types/equipment/Reach.d.ts +0 -31
- package/lib/types/equipment/_Armor.d.ts +0 -70
- package/lib/types/equipment/_Weapon.d.ts +0 -330
- package/lib/types/prerequisites/single/CommonSuggestedByRCPPrerequisite.d.ts +0 -3
- package/schema/MagicalTraditionPlaceholder.schema.json +0 -45
- package/schema/Poison.schema.json +0 -417
- package/schema/equipment/ArmorType.schema.json +0 -45
- package/schema/equipment/Item.schema.json +0 -621
- package/schema/equipment/ItemGroup.schema.json +0 -45
- package/schema/equipment/_Armor.schema.json +0 -125
- package/schema/equipment/_Weapon.schema.json +0 -664
- package/schema/prerequisites/single/CommonSuggestedByRCPPrerequisite.schema.json +0 -18
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
|
-
"$schema": "
|
|
2
|
+
"$schema": "https://json-schema.org/draft/2019-09/schema",
|
|
3
3
|
"$id": "/_Activatable.schema.json",
|
|
4
|
-
"
|
|
4
|
+
"$defs": {
|
|
5
5
|
"Id": {
|
|
6
6
|
"description": "The activatable entry's identifier. An unique, increasing integer.",
|
|
7
7
|
"type": "integer",
|
|
@@ -33,13 +33,13 @@
|
|
|
33
33
|
"properties": {
|
|
34
34
|
"derived": {
|
|
35
35
|
"description": "An entry category with optional further configuration. All available\nentries from the specified categories will be included as separate select\noptions. You can also specify a set of groups that should only be\nincluded. Groups not mentioned will be excluded then.",
|
|
36
|
-
"$ref": "
|
|
36
|
+
"$ref": "./_ActivatableSelectOptionCategory.schema.json#/$defs/SelectOptionCategory"
|
|
37
37
|
},
|
|
38
38
|
"explicit": {
|
|
39
39
|
"description": "A list of explicit select options. If the identifier has a specific type,\nits entry is the base of this select option, where values defined here\noverride values from the base. Define the `src` property if the options\nare not derived from the rules text of the advantage/disadvantage/special\nability but instead are listed in a separate block and/or on a separate\npage.",
|
|
40
40
|
"type": "array",
|
|
41
41
|
"items": {
|
|
42
|
-
"$ref": "
|
|
42
|
+
"$ref": "#/$defs/ExplicitSelectOption"
|
|
43
43
|
},
|
|
44
44
|
"minItems": 1
|
|
45
45
|
}
|
|
@@ -48,17 +48,21 @@
|
|
|
48
48
|
"minProperties": 1,
|
|
49
49
|
"additionalProperties": false
|
|
50
50
|
},
|
|
51
|
-
"
|
|
51
|
+
"ExplicitSelectOption": {
|
|
52
52
|
"oneOf": [
|
|
53
53
|
{
|
|
54
54
|
"type": "object",
|
|
55
55
|
"properties": {
|
|
56
56
|
"tag": {
|
|
57
|
-
"const": "
|
|
57
|
+
"const": "General"
|
|
58
|
+
},
|
|
59
|
+
"general": {
|
|
60
|
+
"$ref": "#/$defs/ExplicitGeneralSelectOption"
|
|
58
61
|
}
|
|
59
62
|
},
|
|
60
63
|
"required": [
|
|
61
|
-
"tag"
|
|
64
|
+
"tag",
|
|
65
|
+
"general"
|
|
62
66
|
],
|
|
63
67
|
"additionalProperties": false
|
|
64
68
|
},
|
|
@@ -66,11 +70,15 @@
|
|
|
66
70
|
"type": "object",
|
|
67
71
|
"properties": {
|
|
68
72
|
"tag": {
|
|
69
|
-
"const": "
|
|
73
|
+
"const": "Skill"
|
|
74
|
+
},
|
|
75
|
+
"skill": {
|
|
76
|
+
"$ref": "#/$defs/ExplicitSkillSelectOption"
|
|
70
77
|
}
|
|
71
78
|
},
|
|
72
79
|
"required": [
|
|
73
|
-
"tag"
|
|
80
|
+
"tag",
|
|
81
|
+
"skill"
|
|
74
82
|
],
|
|
75
83
|
"additionalProperties": false
|
|
76
84
|
},
|
|
@@ -78,19 +86,221 @@
|
|
|
78
86
|
"type": "object",
|
|
79
87
|
"properties": {
|
|
80
88
|
"tag": {
|
|
81
|
-
"const": "
|
|
89
|
+
"const": "CombatTechnique"
|
|
90
|
+
},
|
|
91
|
+
"combat_technique": {
|
|
92
|
+
"$ref": "#/$defs/ExplicitCombatTechniqueSelectOption"
|
|
82
93
|
}
|
|
83
94
|
},
|
|
84
95
|
"required": [
|
|
85
|
-
"tag"
|
|
96
|
+
"tag",
|
|
97
|
+
"combat_technique"
|
|
86
98
|
],
|
|
87
99
|
"additionalProperties": false
|
|
100
|
+
}
|
|
101
|
+
]
|
|
102
|
+
},
|
|
103
|
+
"ExplicitGeneralSelectOption": {
|
|
104
|
+
"type": "object",
|
|
105
|
+
"properties": {
|
|
106
|
+
"id": {
|
|
107
|
+
"description": "The option's identifier. An unique, increasing integer.",
|
|
108
|
+
"type": "integer",
|
|
109
|
+
"minimum": 1
|
|
110
|
+
},
|
|
111
|
+
"profession_only": {
|
|
112
|
+
"description": "Sometimes, professions use specific text selections that are not\ncontained in described lists. This ensures you can use them for\nprofessions only. They are not going to be displayed as options to the\nuser.",
|
|
113
|
+
"const": true
|
|
114
|
+
},
|
|
115
|
+
"skill_applications": {
|
|
116
|
+
"description": "Registers new applications, which get enabled once this entry is\nactivated with its respective select option. It specifies an entry-unique\nidentifier and the skill it belongs to. A translation can be left out if\nits name equals the name of the origin select option.",
|
|
117
|
+
"$ref": "#/$defs/SkillApplications"
|
|
118
|
+
},
|
|
119
|
+
"skill_uses": {
|
|
120
|
+
"description": "Registers uses, which get enabled once this entry is activated with its\nrespective select option. It specifies an entry-unique identifier and the\nskill it belongs to. A translation can be left out if its name equals the\nname of the origin select option.",
|
|
121
|
+
"$ref": "#/$defs/SkillUses"
|
|
122
|
+
},
|
|
123
|
+
"prerequisites": {
|
|
124
|
+
"$ref": "./_Prerequisite.schema.json#/$defs/GeneralPrerequisites"
|
|
125
|
+
},
|
|
126
|
+
"ap_value": {
|
|
127
|
+
"description": "Specific AP cost for the select option.",
|
|
128
|
+
"type": "integer",
|
|
129
|
+
"minimum": 1
|
|
130
|
+
},
|
|
131
|
+
"src": {
|
|
132
|
+
"$ref": "./source/_PublicationRef.schema.json#/$defs/PublicationRefs"
|
|
133
|
+
},
|
|
134
|
+
"translations": {
|
|
135
|
+
"description": "All translations for the entry, identified by IETF language tag (BCP47).",
|
|
136
|
+
"type": "object",
|
|
137
|
+
"patternProperties": {
|
|
138
|
+
"^[a-z]{2}-[A-Z]{2}$": {
|
|
139
|
+
"$ref": "#/$defs/ExplicitGeneralSelectOptionTranslation"
|
|
140
|
+
}
|
|
141
|
+
},
|
|
142
|
+
"minProperties": 1,
|
|
143
|
+
"additionalProperties": false
|
|
144
|
+
}
|
|
145
|
+
},
|
|
146
|
+
"required": [
|
|
147
|
+
"id",
|
|
148
|
+
"translations"
|
|
149
|
+
],
|
|
150
|
+
"additionalProperties": false
|
|
151
|
+
},
|
|
152
|
+
"ExplicitGeneralSelectOptionTranslation": {
|
|
153
|
+
"type": "object",
|
|
154
|
+
"properties": {
|
|
155
|
+
"name": {
|
|
156
|
+
"description": "The name of the select option.",
|
|
157
|
+
"type": "string",
|
|
158
|
+
"minLength": 1
|
|
159
|
+
},
|
|
160
|
+
"name_in_profession": {
|
|
161
|
+
"description": "The name of the select option when displayed in a generated\nprofession text.",
|
|
162
|
+
"type": "string",
|
|
163
|
+
"minLength": 1
|
|
164
|
+
},
|
|
165
|
+
"description": {
|
|
166
|
+
"description": "The description of the select option. Useful for Bad Habits, Trade\nSecrets and other entries where a description is available.",
|
|
167
|
+
"type": "string",
|
|
168
|
+
"minLength": 1
|
|
169
|
+
},
|
|
170
|
+
"errata": {
|
|
171
|
+
"$ref": "./source/_Erratum.schema.json#/$defs/Errata"
|
|
172
|
+
}
|
|
173
|
+
},
|
|
174
|
+
"required": [
|
|
175
|
+
"name"
|
|
176
|
+
],
|
|
177
|
+
"additionalProperties": false
|
|
178
|
+
},
|
|
179
|
+
"ExplicitSkillSelectOption": {
|
|
180
|
+
"type": "object",
|
|
181
|
+
"properties": {
|
|
182
|
+
"id": {
|
|
183
|
+
"description": "The skill's identifier. An unique, increasing integer.",
|
|
184
|
+
"type": "integer",
|
|
185
|
+
"minimum": 1
|
|
88
186
|
},
|
|
187
|
+
"skill_applications": {
|
|
188
|
+
"description": "Registers new applications, which get enabled once this entry is\nactivated with its respective select option. It specifies an entry-unique\nidentifier and the skill it belongs to. A translation can be left out if\nits name equals the name of the origin select option.",
|
|
189
|
+
"type": "array",
|
|
190
|
+
"items": {
|
|
191
|
+
"$ref": "./_ActivatableSelectOptionCategory.schema.json#/$defs/SkillApplicationOrUse"
|
|
192
|
+
},
|
|
193
|
+
"minItems": 1
|
|
194
|
+
},
|
|
195
|
+
"skill_uses": {
|
|
196
|
+
"description": "Registers uses, which get enabled once this entry is activated with its\nrespective select option. It specifies an entry-unique identifier and the\nskill it belongs to. A translation can be left out if its name equals the\nname of the origin select option.",
|
|
197
|
+
"type": "array",
|
|
198
|
+
"items": {
|
|
199
|
+
"$ref": "./_ActivatableSelectOptionCategory.schema.json#/$defs/SkillApplicationOrUse"
|
|
200
|
+
},
|
|
201
|
+
"minItems": 1
|
|
202
|
+
},
|
|
203
|
+
"prerequisites": {
|
|
204
|
+
"$ref": "./_Prerequisite.schema.json#/$defs/GeneralPrerequisites"
|
|
205
|
+
},
|
|
206
|
+
"ap_value": {
|
|
207
|
+
"description": "Specific AP cost for the select option.",
|
|
208
|
+
"type": "integer",
|
|
209
|
+
"minimum": 1
|
|
210
|
+
},
|
|
211
|
+
"src": {
|
|
212
|
+
"$ref": "./source/_PublicationRef.schema.json#/$defs/PublicationRefs"
|
|
213
|
+
},
|
|
214
|
+
"translations": {
|
|
215
|
+
"description": "All translations for the entry, identified by IETF language tag (BCP47).",
|
|
216
|
+
"type": "object",
|
|
217
|
+
"patternProperties": {
|
|
218
|
+
"^[a-z]{2}-[A-Z]{2}$": {
|
|
219
|
+
"$ref": "#/$defs/ExplicitSkillSelectOptionTranslation"
|
|
220
|
+
}
|
|
221
|
+
},
|
|
222
|
+
"minProperties": 1,
|
|
223
|
+
"additionalProperties": false
|
|
224
|
+
}
|
|
225
|
+
},
|
|
226
|
+
"required": [
|
|
227
|
+
"id"
|
|
228
|
+
],
|
|
229
|
+
"additionalProperties": false
|
|
230
|
+
},
|
|
231
|
+
"ExplicitSkillSelectOptionTranslation": {
|
|
232
|
+
"type": "object",
|
|
233
|
+
"properties": {
|
|
234
|
+
"errata": {
|
|
235
|
+
"$ref": "./source/_Erratum.schema.json#/$defs/Errata"
|
|
236
|
+
}
|
|
237
|
+
},
|
|
238
|
+
"required": [],
|
|
239
|
+
"minProperties": 1,
|
|
240
|
+
"additionalProperties": false
|
|
241
|
+
},
|
|
242
|
+
"ExplicitCombatTechniqueSelectOption": {
|
|
243
|
+
"type": "object",
|
|
244
|
+
"properties": {
|
|
245
|
+
"id": {
|
|
246
|
+
"description": "The combat technique's identifier.",
|
|
247
|
+
"$ref": "./_Identifier.schema.json#/$defs/CombatTechniqueIdentifier"
|
|
248
|
+
},
|
|
249
|
+
"prerequisites": {
|
|
250
|
+
"$ref": "./_Prerequisite.schema.json#/$defs/GeneralPrerequisites"
|
|
251
|
+
},
|
|
252
|
+
"ap_value": {
|
|
253
|
+
"description": "Specific AP cost for the select option.",
|
|
254
|
+
"type": "integer",
|
|
255
|
+
"minimum": 1
|
|
256
|
+
},
|
|
257
|
+
"src": {
|
|
258
|
+
"$ref": "./source/_PublicationRef.schema.json#/$defs/PublicationRefs"
|
|
259
|
+
},
|
|
260
|
+
"translations": {
|
|
261
|
+
"description": "All translations for the entry, identified by IETF language tag (BCP47).",
|
|
262
|
+
"type": "object",
|
|
263
|
+
"patternProperties": {
|
|
264
|
+
"^[a-z]{2}-[A-Z]{2}$": {
|
|
265
|
+
"$ref": "#/$defs/ExplicitCombatTechniqueSelectOptionTranslation"
|
|
266
|
+
}
|
|
267
|
+
},
|
|
268
|
+
"minProperties": 1,
|
|
269
|
+
"additionalProperties": false
|
|
270
|
+
}
|
|
271
|
+
},
|
|
272
|
+
"required": [
|
|
273
|
+
"id"
|
|
274
|
+
],
|
|
275
|
+
"additionalProperties": false
|
|
276
|
+
},
|
|
277
|
+
"ExplicitCombatTechniqueSelectOptionTranslation": {
|
|
278
|
+
"type": "object",
|
|
279
|
+
"properties": {
|
|
280
|
+
"errata": {
|
|
281
|
+
"$ref": "./source/_Erratum.schema.json#/$defs/Errata"
|
|
282
|
+
}
|
|
283
|
+
},
|
|
284
|
+
"required": [],
|
|
285
|
+
"minProperties": 1,
|
|
286
|
+
"additionalProperties": false
|
|
287
|
+
},
|
|
288
|
+
"Rules": {
|
|
289
|
+
"description": "The rule text.",
|
|
290
|
+
"$ref": "./_NonEmptyString.schema.json#/$defs/NonEmptyMarkdown"
|
|
291
|
+
},
|
|
292
|
+
"Effect": {
|
|
293
|
+
"description": "The effect description.",
|
|
294
|
+
"$ref": "./_NonEmptyString.schema.json#/$defs/NonEmptyMarkdown"
|
|
295
|
+
},
|
|
296
|
+
"CombatSpecialAbilityUsageType": {
|
|
297
|
+
"description": "The definition of how the combat special ability can be used in combat.",
|
|
298
|
+
"oneOf": [
|
|
89
299
|
{
|
|
90
300
|
"type": "object",
|
|
91
301
|
"properties": {
|
|
92
302
|
"tag": {
|
|
93
|
-
"const": "
|
|
303
|
+
"const": "Passive"
|
|
94
304
|
}
|
|
95
305
|
},
|
|
96
306
|
"required": [
|
|
@@ -102,7 +312,7 @@
|
|
|
102
312
|
"type": "object",
|
|
103
313
|
"properties": {
|
|
104
314
|
"tag": {
|
|
105
|
-
"const": "
|
|
315
|
+
"const": "BasicManeuver"
|
|
106
316
|
}
|
|
107
317
|
},
|
|
108
318
|
"required": [
|
|
@@ -114,19 +324,24 @@
|
|
|
114
324
|
"type": "object",
|
|
115
325
|
"properties": {
|
|
116
326
|
"tag": {
|
|
117
|
-
"const": "
|
|
327
|
+
"const": "SpecialManeuver"
|
|
118
328
|
}
|
|
119
329
|
},
|
|
120
330
|
"required": [
|
|
121
331
|
"tag"
|
|
122
332
|
],
|
|
123
333
|
"additionalProperties": false
|
|
124
|
-
}
|
|
334
|
+
}
|
|
335
|
+
]
|
|
336
|
+
},
|
|
337
|
+
"CombatSpecialAbilityType": {
|
|
338
|
+
"description": "The definition of if the combat special ability can be used when armed or\nwhen unarmed.",
|
|
339
|
+
"oneOf": [
|
|
125
340
|
{
|
|
126
341
|
"type": "object",
|
|
127
342
|
"properties": {
|
|
128
343
|
"tag": {
|
|
129
|
-
"const": "
|
|
344
|
+
"const": "Armed"
|
|
130
345
|
}
|
|
131
346
|
},
|
|
132
347
|
"required": [
|
|
@@ -138,23 +353,69 @@
|
|
|
138
353
|
"type": "object",
|
|
139
354
|
"properties": {
|
|
140
355
|
"tag": {
|
|
141
|
-
"const": "
|
|
356
|
+
"const": "Unarmed"
|
|
142
357
|
}
|
|
143
358
|
},
|
|
144
359
|
"required": [
|
|
145
360
|
"tag"
|
|
146
361
|
],
|
|
147
362
|
"additionalProperties": false
|
|
363
|
+
}
|
|
364
|
+
]
|
|
365
|
+
},
|
|
366
|
+
"SkillApplications": {
|
|
367
|
+
"description": "Registers new skill applications, which get enabled once this entry is\nactivated. It specifies an entry-unique identifier and the skill it belongs\nto. A translation can be left out if its name equals the name of the origin\nactivatable entry.",
|
|
368
|
+
"type": "array",
|
|
369
|
+
"items": {
|
|
370
|
+
"$ref": "#/$defs/SkillApplication"
|
|
371
|
+
},
|
|
372
|
+
"minItems": 1
|
|
373
|
+
},
|
|
374
|
+
"SkillApplication": {
|
|
375
|
+
"type": "object",
|
|
376
|
+
"properties": {
|
|
377
|
+
"id": {
|
|
378
|
+
"description": "The application's identifier. An entry-unique, increasing integer.",
|
|
379
|
+
"type": "integer",
|
|
380
|
+
"minimum": 1
|
|
381
|
+
},
|
|
382
|
+
"skill": {
|
|
383
|
+
"description": "The skill(s) this application belongs to.",
|
|
384
|
+
"$ref": "#/$defs/SkillApplicationAssociatedSkill"
|
|
148
385
|
},
|
|
386
|
+
"translations": {
|
|
387
|
+
"description": "All translations for the entry, identified by IETF language tag (BCP47).",
|
|
388
|
+
"type": "object",
|
|
389
|
+
"patternProperties": {
|
|
390
|
+
"^[a-z]{2}-[A-Z]{2}$": {
|
|
391
|
+
"$ref": "#/$defs/SkillApplicationTranslation"
|
|
392
|
+
}
|
|
393
|
+
},
|
|
394
|
+
"minProperties": 1,
|
|
395
|
+
"additionalProperties": false
|
|
396
|
+
}
|
|
397
|
+
},
|
|
398
|
+
"required": [
|
|
399
|
+
"id",
|
|
400
|
+
"skill"
|
|
401
|
+
],
|
|
402
|
+
"additionalProperties": false
|
|
403
|
+
},
|
|
404
|
+
"SkillApplicationAssociatedSkill": {
|
|
405
|
+
"oneOf": [
|
|
149
406
|
{
|
|
150
407
|
"type": "object",
|
|
151
408
|
"properties": {
|
|
152
409
|
"tag": {
|
|
153
|
-
"const": "
|
|
410
|
+
"const": "Single"
|
|
411
|
+
},
|
|
412
|
+
"single": {
|
|
413
|
+
"$ref": "./_SimpleReferences.schema.json#/$defs/SkillReference"
|
|
154
414
|
}
|
|
155
415
|
},
|
|
156
416
|
"required": [
|
|
157
|
-
"tag"
|
|
417
|
+
"tag",
|
|
418
|
+
"single"
|
|
158
419
|
],
|
|
159
420
|
"additionalProperties": false
|
|
160
421
|
},
|
|
@@ -162,27 +423,108 @@
|
|
|
162
423
|
"type": "object",
|
|
163
424
|
"properties": {
|
|
164
425
|
"tag": {
|
|
165
|
-
"const": "
|
|
426
|
+
"const": "Multiple"
|
|
427
|
+
},
|
|
428
|
+
"multiple": {
|
|
429
|
+
"$ref": "#/$defs/SkillApplicationAssociatedSkills"
|
|
166
430
|
}
|
|
167
431
|
},
|
|
168
432
|
"required": [
|
|
169
|
-
"tag"
|
|
433
|
+
"tag",
|
|
434
|
+
"multiple"
|
|
170
435
|
],
|
|
171
436
|
"additionalProperties": false
|
|
437
|
+
}
|
|
438
|
+
]
|
|
439
|
+
},
|
|
440
|
+
"SkillApplicationAssociatedSkills": {
|
|
441
|
+
"type": "object",
|
|
442
|
+
"properties": {
|
|
443
|
+
"list": {
|
|
444
|
+
"description": "The skills this application belongs to.",
|
|
445
|
+
"type": "array",
|
|
446
|
+
"items": {
|
|
447
|
+
"$ref": "./_SimpleReferences.schema.json#/$defs/SkillReference"
|
|
448
|
+
},
|
|
449
|
+
"minItems": 2
|
|
172
450
|
},
|
|
451
|
+
"required_skill_rating": {
|
|
452
|
+
"description": "If an application applies to multiple skills, it may need to ensure the\nrespective skill is on a certain skill rating if the activatable entry\ncannot ensure this prerequisite.",
|
|
453
|
+
"type": "integer",
|
|
454
|
+
"minimum": 1
|
|
455
|
+
}
|
|
456
|
+
},
|
|
457
|
+
"required": [
|
|
458
|
+
"list"
|
|
459
|
+
],
|
|
460
|
+
"additionalProperties": false
|
|
461
|
+
},
|
|
462
|
+
"SkillApplicationTranslation": {
|
|
463
|
+
"type": "object",
|
|
464
|
+
"properties": {
|
|
465
|
+
"name": {
|
|
466
|
+
"description": "The name of the application if different from the activatable entry's name.",
|
|
467
|
+
"$ref": "./_NonEmptyString.schema.json#/$defs/NonEmptyString"
|
|
468
|
+
}
|
|
469
|
+
},
|
|
470
|
+
"required": [
|
|
471
|
+
"name"
|
|
472
|
+
],
|
|
473
|
+
"additionalProperties": false
|
|
474
|
+
},
|
|
475
|
+
"SkillUses": {
|
|
476
|
+
"description": "Registers uses, which get enabled once this entry is activated. It specifies\nan entry-unique identifier and the skill it belongs to. A translation can be\nleft out if its name equals the name of the origin activatable entry.",
|
|
477
|
+
"type": "array",
|
|
478
|
+
"items": {
|
|
479
|
+
"$ref": "#/$defs/SkillUse"
|
|
480
|
+
},
|
|
481
|
+
"minItems": 1
|
|
482
|
+
},
|
|
483
|
+
"SkillUse": {
|
|
484
|
+
"type": "object",
|
|
485
|
+
"properties": {
|
|
486
|
+
"id": {
|
|
487
|
+
"description": "The use's identifier. An entry-unique, increasing integer.",
|
|
488
|
+
"type": "integer",
|
|
489
|
+
"minimum": 1
|
|
490
|
+
},
|
|
491
|
+
"skill": {
|
|
492
|
+
"description": "The skill(s) this use belongs to.",
|
|
493
|
+
"$ref": "#/$defs/SkillUseAssociatedSkill"
|
|
494
|
+
},
|
|
495
|
+
"translations": {
|
|
496
|
+
"description": "All translations for the entry, identified by IETF language tag (BCP47).",
|
|
497
|
+
"type": "object",
|
|
498
|
+
"patternProperties": {
|
|
499
|
+
"^[a-z]{2}-[A-Z]{2}$": {
|
|
500
|
+
"$ref": "#/$defs/SkillUseTranslation"
|
|
501
|
+
}
|
|
502
|
+
},
|
|
503
|
+
"minProperties": 1,
|
|
504
|
+
"additionalProperties": false
|
|
505
|
+
}
|
|
506
|
+
},
|
|
507
|
+
"required": [
|
|
508
|
+
"id",
|
|
509
|
+
"skill"
|
|
510
|
+
],
|
|
511
|
+
"additionalProperties": false
|
|
512
|
+
},
|
|
513
|
+
"SkillUseAssociatedSkill": {
|
|
514
|
+
"oneOf": [
|
|
173
515
|
{
|
|
174
516
|
"type": "object",
|
|
175
517
|
"properties": {
|
|
176
518
|
"tag": {
|
|
177
|
-
"const": "
|
|
519
|
+
"const": "Single"
|
|
178
520
|
},
|
|
179
|
-
"
|
|
180
|
-
"
|
|
181
|
-
"const": true
|
|
521
|
+
"single": {
|
|
522
|
+
"$ref": "./_SimpleReferences.schema.json#/$defs/SkillReference"
|
|
182
523
|
}
|
|
183
524
|
},
|
|
184
525
|
"required": [
|
|
185
|
-
"tag"
|
|
526
|
+
"tag",
|
|
527
|
+
"single"
|
|
186
528
|
],
|
|
187
529
|
"additionalProperties": false
|
|
188
530
|
},
|
|
@@ -190,69 +532,66 @@
|
|
|
190
532
|
"type": "object",
|
|
191
533
|
"properties": {
|
|
192
534
|
"tag": {
|
|
193
|
-
"const": "
|
|
535
|
+
"const": "Multiple"
|
|
194
536
|
},
|
|
195
|
-
"
|
|
196
|
-
"
|
|
197
|
-
"type": "array",
|
|
198
|
-
"items": {
|
|
199
|
-
"type": "object",
|
|
200
|
-
"properties": {
|
|
201
|
-
"id": {
|
|
202
|
-
"description": "The element's identifier.",
|
|
203
|
-
"type": "integer",
|
|
204
|
-
"maximum": 6,
|
|
205
|
-
"minimum": 1
|
|
206
|
-
}
|
|
207
|
-
},
|
|
208
|
-
"required": [
|
|
209
|
-
"id"
|
|
210
|
-
],
|
|
211
|
-
"additionalProperties": false
|
|
212
|
-
},
|
|
213
|
-
"minItems": 1,
|
|
214
|
-
"uniqueItems": true
|
|
537
|
+
"multiple": {
|
|
538
|
+
"$ref": "#/$defs/SkillUseAssociatedSkills"
|
|
215
539
|
}
|
|
216
540
|
},
|
|
217
541
|
"required": [
|
|
218
|
-
"tag"
|
|
542
|
+
"tag",
|
|
543
|
+
"multiple"
|
|
219
544
|
],
|
|
220
545
|
"additionalProperties": false
|
|
221
|
-
}
|
|
546
|
+
}
|
|
547
|
+
]
|
|
548
|
+
},
|
|
549
|
+
"SkillUseAssociatedSkills": {
|
|
550
|
+
"type": "object",
|
|
551
|
+
"properties": {
|
|
552
|
+
"list": {
|
|
553
|
+
"description": "The skills this use belongs to.",
|
|
554
|
+
"type": "array",
|
|
555
|
+
"items": {
|
|
556
|
+
"$ref": "./_SimpleReferences.schema.json#/$defs/SkillReference"
|
|
557
|
+
},
|
|
558
|
+
"minItems": 2
|
|
559
|
+
}
|
|
560
|
+
},
|
|
561
|
+
"required": [
|
|
562
|
+
"list"
|
|
563
|
+
],
|
|
564
|
+
"additionalProperties": false
|
|
565
|
+
},
|
|
566
|
+
"SkillUseTranslation": {
|
|
567
|
+
"type": "object",
|
|
568
|
+
"properties": {
|
|
569
|
+
"name": {
|
|
570
|
+
"description": "The name of the use if different from the activatable entry's name.",
|
|
571
|
+
"$ref": "./_NonEmptyString.schema.json#/$defs/NonEmptyString"
|
|
572
|
+
}
|
|
573
|
+
},
|
|
574
|
+
"required": [
|
|
575
|
+
"name"
|
|
576
|
+
],
|
|
577
|
+
"additionalProperties": false
|
|
578
|
+
},
|
|
579
|
+
"Penalty": {
|
|
580
|
+
"description": "The penalty the special ability gives when used.",
|
|
581
|
+
"oneOf": [
|
|
222
582
|
{
|
|
223
583
|
"type": "object",
|
|
224
584
|
"properties": {
|
|
225
585
|
"tag": {
|
|
226
|
-
"const": "
|
|
227
|
-
},
|
|
228
|
-
"require_knowledge": {
|
|
229
|
-
"description": "Does each property require it's corresponding property knowledge?",
|
|
230
|
-
"const": true
|
|
586
|
+
"const": "Single"
|
|
231
587
|
},
|
|
232
|
-
"
|
|
233
|
-
"
|
|
234
|
-
"type": "object",
|
|
235
|
-
"properties": {
|
|
236
|
-
"number": {
|
|
237
|
-
"description": "The minimum number of spellworks that need to be on the defined minimum\nskill rating.",
|
|
238
|
-
"type": "integer",
|
|
239
|
-
"minimum": 1
|
|
240
|
-
},
|
|
241
|
-
"value": {
|
|
242
|
-
"description": "The minimum skill rating the defined minimum number of spellworks need\nto be on.",
|
|
243
|
-
"type": "integer",
|
|
244
|
-
"minimum": 1
|
|
245
|
-
}
|
|
246
|
-
},
|
|
247
|
-
"required": [
|
|
248
|
-
"number",
|
|
249
|
-
"value"
|
|
250
|
-
],
|
|
251
|
-
"additionalProperties": false
|
|
588
|
+
"single": {
|
|
589
|
+
"$ref": "#/$defs/SinglePenalty"
|
|
252
590
|
}
|
|
253
591
|
},
|
|
254
592
|
"required": [
|
|
255
|
-
"tag"
|
|
593
|
+
"tag",
|
|
594
|
+
"single"
|
|
256
595
|
],
|
|
257
596
|
"additionalProperties": false
|
|
258
597
|
},
|
|
@@ -260,40 +599,15 @@
|
|
|
260
599
|
"type": "object",
|
|
261
600
|
"properties": {
|
|
262
601
|
"tag": {
|
|
263
|
-
"const": "
|
|
264
|
-
},
|
|
265
|
-
"require_knowledge": {
|
|
266
|
-
"description": "Does each aspect require it's corresponding aspect knowledge?",
|
|
267
|
-
"const": true
|
|
268
|
-
},
|
|
269
|
-
"use_master_of_suffix_as_name": {
|
|
270
|
-
"description": "The generated name should be the *Master of (Aspect)* suffix for this\naspect instead of the aspect's name. If an aspect does not provide a\nsuffix (such as the General aspect), it is automatically excluded from\nthe list.",
|
|
271
|
-
"const": true
|
|
602
|
+
"const": "ByHandedness"
|
|
272
603
|
},
|
|
273
|
-
"
|
|
274
|
-
"
|
|
275
|
-
"type": "object",
|
|
276
|
-
"properties": {
|
|
277
|
-
"number": {
|
|
278
|
-
"description": "The minimum number of liturgies that need to be on the defined minimum\nskill rating.",
|
|
279
|
-
"type": "integer",
|
|
280
|
-
"minimum": 1
|
|
281
|
-
},
|
|
282
|
-
"value": {
|
|
283
|
-
"description": "The minimum skill rating the defined minimum number of liturgies need\nto be on.",
|
|
284
|
-
"type": "integer",
|
|
285
|
-
"minimum": 1
|
|
286
|
-
}
|
|
287
|
-
},
|
|
288
|
-
"required": [
|
|
289
|
-
"number",
|
|
290
|
-
"value"
|
|
291
|
-
],
|
|
292
|
-
"additionalProperties": false
|
|
604
|
+
"by_handedness": {
|
|
605
|
+
"$ref": "#/$defs/PenaltyByHandedness"
|
|
293
606
|
}
|
|
294
607
|
},
|
|
295
608
|
"required": [
|
|
296
|
-
"tag"
|
|
609
|
+
"tag",
|
|
610
|
+
"by_handedness"
|
|
297
611
|
],
|
|
298
612
|
"additionalProperties": false
|
|
299
613
|
},
|
|
@@ -301,15 +615,15 @@
|
|
|
301
615
|
"type": "object",
|
|
302
616
|
"properties": {
|
|
303
617
|
"tag": {
|
|
304
|
-
"const": "
|
|
618
|
+
"const": "ByActivation"
|
|
305
619
|
},
|
|
306
|
-
"
|
|
307
|
-
"
|
|
308
|
-
"const": true
|
|
620
|
+
"by_activation": {
|
|
621
|
+
"$ref": "#/$defs/PenaltyByActivation"
|
|
309
622
|
}
|
|
310
623
|
},
|
|
311
624
|
"required": [
|
|
312
|
-
"tag"
|
|
625
|
+
"tag",
|
|
626
|
+
"by_activation"
|
|
313
627
|
],
|
|
314
628
|
"additionalProperties": false
|
|
315
629
|
},
|
|
@@ -317,15 +631,15 @@
|
|
|
317
631
|
"type": "object",
|
|
318
632
|
"properties": {
|
|
319
633
|
"tag": {
|
|
320
|
-
"const": "
|
|
634
|
+
"const": "Selection"
|
|
321
635
|
},
|
|
322
|
-
"
|
|
323
|
-
"
|
|
324
|
-
"const": true
|
|
636
|
+
"selection": {
|
|
637
|
+
"$ref": "#/$defs/PenaltySelection"
|
|
325
638
|
}
|
|
326
639
|
},
|
|
327
640
|
"required": [
|
|
328
|
-
"tag"
|
|
641
|
+
"tag",
|
|
642
|
+
"selection"
|
|
329
643
|
],
|
|
330
644
|
"additionalProperties": false
|
|
331
645
|
},
|
|
@@ -333,19 +647,15 @@
|
|
|
333
647
|
"type": "object",
|
|
334
648
|
"properties": {
|
|
335
649
|
"tag": {
|
|
336
|
-
"const": "
|
|
650
|
+
"const": "ByLevel"
|
|
337
651
|
},
|
|
338
|
-
"
|
|
339
|
-
"
|
|
340
|
-
"type": "array",
|
|
341
|
-
"items": {
|
|
342
|
-
"$ref": "#/definitions/OptionOptionPrerequisite"
|
|
343
|
-
},
|
|
344
|
-
"minItems": 1
|
|
652
|
+
"by_level": {
|
|
653
|
+
"$ref": "#/$defs/PenaltyByLevel"
|
|
345
654
|
}
|
|
346
655
|
},
|
|
347
656
|
"required": [
|
|
348
|
-
"tag"
|
|
657
|
+
"tag",
|
|
658
|
+
"by_level"
|
|
349
659
|
],
|
|
350
660
|
"additionalProperties": false
|
|
351
661
|
},
|
|
@@ -353,365 +663,15 @@
|
|
|
353
663
|
"type": "object",
|
|
354
664
|
"properties": {
|
|
355
665
|
"tag": {
|
|
356
|
-
"const": "
|
|
357
|
-
},
|
|
358
|
-
"categories": {
|
|
359
|
-
"description": "A list of skill categories.",
|
|
360
|
-
"type": "array",
|
|
361
|
-
"items": {
|
|
362
|
-
"oneOf": [
|
|
363
|
-
{
|
|
364
|
-
"type": "object",
|
|
365
|
-
"properties": {
|
|
366
|
-
"tag": {
|
|
367
|
-
"const": "Skills"
|
|
368
|
-
},
|
|
369
|
-
"groups": {
|
|
370
|
-
"description": "Only include entries of the specified groups.",
|
|
371
|
-
"type": "array",
|
|
372
|
-
"items": {
|
|
373
|
-
"type": "object",
|
|
374
|
-
"properties": {
|
|
375
|
-
"id": {
|
|
376
|
-
"description": "The skill group's identifier.",
|
|
377
|
-
"type": "integer",
|
|
378
|
-
"maximum": 5,
|
|
379
|
-
"minimum": 1
|
|
380
|
-
}
|
|
381
|
-
},
|
|
382
|
-
"required": [
|
|
383
|
-
"id"
|
|
384
|
-
],
|
|
385
|
-
"additionalProperties": false
|
|
386
|
-
},
|
|
387
|
-
"minItems": 1
|
|
388
|
-
},
|
|
389
|
-
"specific": {
|
|
390
|
-
"description": "Only include (`Intersection`) or exclude (`Difference`) specific\nskills.",
|
|
391
|
-
"type": "object",
|
|
392
|
-
"properties": {
|
|
393
|
-
"operation": {
|
|
394
|
-
"oneOf": [
|
|
395
|
-
{
|
|
396
|
-
"type": "object",
|
|
397
|
-
"properties": {
|
|
398
|
-
"tag": {
|
|
399
|
-
"const": "Intersection"
|
|
400
|
-
}
|
|
401
|
-
},
|
|
402
|
-
"required": [
|
|
403
|
-
"tag"
|
|
404
|
-
],
|
|
405
|
-
"additionalProperties": false
|
|
406
|
-
},
|
|
407
|
-
{
|
|
408
|
-
"type": "object",
|
|
409
|
-
"properties": {
|
|
410
|
-
"tag": {
|
|
411
|
-
"const": "Difference"
|
|
412
|
-
}
|
|
413
|
-
},
|
|
414
|
-
"required": [
|
|
415
|
-
"tag"
|
|
416
|
-
],
|
|
417
|
-
"additionalProperties": false
|
|
418
|
-
}
|
|
419
|
-
]
|
|
420
|
-
},
|
|
421
|
-
"list": {
|
|
422
|
-
"description": "The list of specific skills.",
|
|
423
|
-
"type": "array",
|
|
424
|
-
"items": {
|
|
425
|
-
"type": "object",
|
|
426
|
-
"properties": {
|
|
427
|
-
"id": {
|
|
428
|
-
"description": "The skill's identifier.",
|
|
429
|
-
"type": "integer",
|
|
430
|
-
"maximum": 59,
|
|
431
|
-
"minimum": 1
|
|
432
|
-
}
|
|
433
|
-
},
|
|
434
|
-
"required": [
|
|
435
|
-
"id"
|
|
436
|
-
],
|
|
437
|
-
"additionalProperties": false
|
|
438
|
-
},
|
|
439
|
-
"minItems": 1,
|
|
440
|
-
"uniqueItems": true
|
|
441
|
-
}
|
|
442
|
-
},
|
|
443
|
-
"required": [
|
|
444
|
-
"operation",
|
|
445
|
-
"list"
|
|
446
|
-
],
|
|
447
|
-
"additionalProperties": false
|
|
448
|
-
},
|
|
449
|
-
"skill_applications": {
|
|
450
|
-
"description": "Registers new applications, which get enabled once this entry is\nactivated with its respective select option. It specifies an\nentry-unique identifier, the skill it belongs to is derived from the\nselect option automatically. A translation can be left out if its\nname equals the name of the origin entry.",
|
|
451
|
-
"type": "array",
|
|
452
|
-
"items": {
|
|
453
|
-
"type": "object",
|
|
454
|
-
"properties": {
|
|
455
|
-
"id": {
|
|
456
|
-
"description": "The application's identifier. An entry-unique, increasing integer.",
|
|
457
|
-
"type": "integer",
|
|
458
|
-
"minimum": 1
|
|
459
|
-
},
|
|
460
|
-
"translations": {
|
|
461
|
-
"description": "All translations for the entry, identified by IETF language tag\n(BCP47).",
|
|
462
|
-
"type": "object",
|
|
463
|
-
"patternProperties": {
|
|
464
|
-
"^[a-z]{2}-[A-Z]{2}$": {
|
|
465
|
-
"type": "object",
|
|
466
|
-
"properties": {
|
|
467
|
-
"name": {
|
|
468
|
-
"description": "The name of the application if different from the activatable\nentry's\nname.",
|
|
469
|
-
"type": "string",
|
|
470
|
-
"minLength": 1
|
|
471
|
-
}
|
|
472
|
-
},
|
|
473
|
-
"required": [
|
|
474
|
-
"name"
|
|
475
|
-
],
|
|
476
|
-
"additionalProperties": false
|
|
477
|
-
}
|
|
478
|
-
},
|
|
479
|
-
"minProperties": 1,
|
|
480
|
-
"additionalProperties": false
|
|
481
|
-
}
|
|
482
|
-
},
|
|
483
|
-
"required": [
|
|
484
|
-
"id"
|
|
485
|
-
],
|
|
486
|
-
"additionalProperties": false
|
|
487
|
-
},
|
|
488
|
-
"minItems": 1
|
|
489
|
-
},
|
|
490
|
-
"skill_uses": {
|
|
491
|
-
"description": "Registers uses, which get enabled once this entry is activated with\nits respective select option. It specifies an entry-unique\nidentifier, the skill it belongs to is derived from the select option\nautomatically. A translation can be left out if its name equals the\nname of the origin entry.",
|
|
492
|
-
"type": "array",
|
|
493
|
-
"items": {
|
|
494
|
-
"type": "object",
|
|
495
|
-
"properties": {
|
|
496
|
-
"id": {
|
|
497
|
-
"description": "The use's identifier. An entry-unique, increasing integer.",
|
|
498
|
-
"type": "integer",
|
|
499
|
-
"minimum": 1
|
|
500
|
-
},
|
|
501
|
-
"translations": {
|
|
502
|
-
"description": "All translations for the entry, identified by IETF language tag\n(BCP47).",
|
|
503
|
-
"type": "object",
|
|
504
|
-
"patternProperties": {
|
|
505
|
-
"^[a-z]{2}-[A-Z]{2}$": {
|
|
506
|
-
"type": "object",
|
|
507
|
-
"properties": {
|
|
508
|
-
"name": {
|
|
509
|
-
"description": "The name of the use if different from the activatable entry's\nname.",
|
|
510
|
-
"type": "string",
|
|
511
|
-
"minLength": 1
|
|
512
|
-
}
|
|
513
|
-
},
|
|
514
|
-
"required": [
|
|
515
|
-
"name"
|
|
516
|
-
],
|
|
517
|
-
"additionalProperties": false
|
|
518
|
-
}
|
|
519
|
-
},
|
|
520
|
-
"minProperties": 1,
|
|
521
|
-
"additionalProperties": false
|
|
522
|
-
}
|
|
523
|
-
},
|
|
524
|
-
"required": [
|
|
525
|
-
"id"
|
|
526
|
-
],
|
|
527
|
-
"additionalProperties": false
|
|
528
|
-
},
|
|
529
|
-
"minItems": 1
|
|
530
|
-
},
|
|
531
|
-
"prerequisites": {
|
|
532
|
-
"description": "Generate prerequisites for each entry of the category.",
|
|
533
|
-
"type": "array",
|
|
534
|
-
"items": {
|
|
535
|
-
"oneOf": [
|
|
536
|
-
{
|
|
537
|
-
"$ref": "#/definitions/OptionSkillSelfPrerequisite"
|
|
538
|
-
},
|
|
539
|
-
{
|
|
540
|
-
"$ref": "#/definitions/OptionOptionPrerequisite"
|
|
541
|
-
}
|
|
542
|
-
]
|
|
543
|
-
},
|
|
544
|
-
"minItems": 1
|
|
545
|
-
}
|
|
546
|
-
},
|
|
547
|
-
"required": [
|
|
548
|
-
"tag"
|
|
549
|
-
],
|
|
550
|
-
"additionalProperties": false
|
|
551
|
-
},
|
|
552
|
-
{
|
|
553
|
-
"type": "object",
|
|
554
|
-
"properties": {
|
|
555
|
-
"tag": {
|
|
556
|
-
"$ref": "#/definitions/SkillWithEnhancementsCategory"
|
|
557
|
-
},
|
|
558
|
-
"specific": {
|
|
559
|
-
"description": "Only include (`Intersection`) or exclude (`Difference`) specific\nentries.",
|
|
560
|
-
"type": "object",
|
|
561
|
-
"properties": {
|
|
562
|
-
"operation": {
|
|
563
|
-
"oneOf": [
|
|
564
|
-
{
|
|
565
|
-
"type": "object",
|
|
566
|
-
"properties": {
|
|
567
|
-
"tag": {
|
|
568
|
-
"const": "Intersection"
|
|
569
|
-
}
|
|
570
|
-
},
|
|
571
|
-
"required": [
|
|
572
|
-
"tag"
|
|
573
|
-
],
|
|
574
|
-
"additionalProperties": false
|
|
575
|
-
},
|
|
576
|
-
{
|
|
577
|
-
"type": "object",
|
|
578
|
-
"properties": {
|
|
579
|
-
"tag": {
|
|
580
|
-
"const": "Difference"
|
|
581
|
-
}
|
|
582
|
-
},
|
|
583
|
-
"required": [
|
|
584
|
-
"tag"
|
|
585
|
-
],
|
|
586
|
-
"additionalProperties": false
|
|
587
|
-
}
|
|
588
|
-
]
|
|
589
|
-
},
|
|
590
|
-
"list": {
|
|
591
|
-
"description": "The list of specific entries.",
|
|
592
|
-
"type": "array",
|
|
593
|
-
"items": {
|
|
594
|
-
"type": "object",
|
|
595
|
-
"properties": {
|
|
596
|
-
"id": {
|
|
597
|
-
"description": "The entry's identifier.",
|
|
598
|
-
"type": "integer",
|
|
599
|
-
"maximum": 59,
|
|
600
|
-
"minimum": 1
|
|
601
|
-
}
|
|
602
|
-
},
|
|
603
|
-
"required": [
|
|
604
|
-
"id"
|
|
605
|
-
],
|
|
606
|
-
"additionalProperties": false
|
|
607
|
-
},
|
|
608
|
-
"minItems": 1,
|
|
609
|
-
"uniqueItems": true
|
|
610
|
-
}
|
|
611
|
-
},
|
|
612
|
-
"required": [
|
|
613
|
-
"operation",
|
|
614
|
-
"list"
|
|
615
|
-
],
|
|
616
|
-
"additionalProperties": false
|
|
617
|
-
},
|
|
618
|
-
"prerequisites": {
|
|
619
|
-
"description": "Generate prerequisites for each entry of the category.",
|
|
620
|
-
"type": "array",
|
|
621
|
-
"items": {
|
|
622
|
-
"oneOf": [
|
|
623
|
-
{
|
|
624
|
-
"$ref": "#/definitions/OptionSkillSelfPrerequisite"
|
|
625
|
-
},
|
|
626
|
-
{
|
|
627
|
-
"$ref": "#/definitions/OptionOptionPrerequisite"
|
|
628
|
-
}
|
|
629
|
-
]
|
|
630
|
-
},
|
|
631
|
-
"minItems": 1
|
|
632
|
-
}
|
|
633
|
-
},
|
|
634
|
-
"required": [
|
|
635
|
-
"tag"
|
|
636
|
-
],
|
|
637
|
-
"additionalProperties": false
|
|
638
|
-
}
|
|
639
|
-
]
|
|
640
|
-
},
|
|
641
|
-
"minItems": 1
|
|
666
|
+
"const": "ByAttack"
|
|
642
667
|
},
|
|
643
|
-
"
|
|
644
|
-
"
|
|
645
|
-
"oneOf": [
|
|
646
|
-
{
|
|
647
|
-
"type": "object",
|
|
648
|
-
"properties": {
|
|
649
|
-
"tag": {
|
|
650
|
-
"description": "Derive the cost from the improvement cost of each entry.\n\nAP Value = Improvement Cost × `multiplier` + `offset`",
|
|
651
|
-
"const": "DerivedFromImprovementCost"
|
|
652
|
-
},
|
|
653
|
-
"multiplier": {
|
|
654
|
-
"description": "This number is multiplied with the improvement cost of the entry\n(A = 1 to D = 4).",
|
|
655
|
-
"type": "integer",
|
|
656
|
-
"minimum": 2
|
|
657
|
-
},
|
|
658
|
-
"offset": {
|
|
659
|
-
"description": "This number is added to the maybe multiplied improvement cost of the\nentry.",
|
|
660
|
-
"type": "integer"
|
|
661
|
-
}
|
|
662
|
-
},
|
|
663
|
-
"required": [
|
|
664
|
-
"tag"
|
|
665
|
-
],
|
|
666
|
-
"additionalProperties": false
|
|
667
|
-
},
|
|
668
|
-
{
|
|
669
|
-
"type": "object",
|
|
670
|
-
"properties": {
|
|
671
|
-
"tag": {
|
|
672
|
-
"const": "Fixed"
|
|
673
|
-
},
|
|
674
|
-
"map": {
|
|
675
|
-
"description": "A mapping of skill identifiers to their specific AP values.",
|
|
676
|
-
"type": "array",
|
|
677
|
-
"items": {
|
|
678
|
-
"type": "object",
|
|
679
|
-
"properties": {
|
|
680
|
-
"id": {
|
|
681
|
-
"$ref": "./_Identifier.schema.json#/definitions/SkillIdentifier"
|
|
682
|
-
},
|
|
683
|
-
"ap_value": {
|
|
684
|
-
"description": "The AP value for the specified entry.",
|
|
685
|
-
"type": "integer",
|
|
686
|
-
"minimum": 1
|
|
687
|
-
}
|
|
688
|
-
},
|
|
689
|
-
"required": [
|
|
690
|
-
"id",
|
|
691
|
-
"ap_value"
|
|
692
|
-
],
|
|
693
|
-
"additionalProperties": false
|
|
694
|
-
}
|
|
695
|
-
},
|
|
696
|
-
"default": {
|
|
697
|
-
"description": "The default value of an entry. Used as a fallback if no value is\nfound in `list`.",
|
|
698
|
-
"type": "integer",
|
|
699
|
-
"minimum": 1
|
|
700
|
-
}
|
|
701
|
-
},
|
|
702
|
-
"required": [
|
|
703
|
-
"tag",
|
|
704
|
-
"map",
|
|
705
|
-
"default"
|
|
706
|
-
],
|
|
707
|
-
"additionalProperties": false
|
|
708
|
-
}
|
|
709
|
-
]
|
|
668
|
+
"by_attack": {
|
|
669
|
+
"$ref": "#/$defs/PenaltyByAttack"
|
|
710
670
|
}
|
|
711
671
|
},
|
|
712
672
|
"required": [
|
|
713
673
|
"tag",
|
|
714
|
-
"
|
|
674
|
+
"by_attack"
|
|
715
675
|
],
|
|
716
676
|
"additionalProperties": false
|
|
717
677
|
},
|
|
@@ -719,313 +679,104 @@
|
|
|
719
679
|
"type": "object",
|
|
720
680
|
"properties": {
|
|
721
681
|
"tag": {
|
|
722
|
-
"const": "
|
|
723
|
-
},
|
|
724
|
-
"categories": {
|
|
725
|
-
"description": "A list of combat technique categories.",
|
|
726
|
-
"type": "array",
|
|
727
|
-
"items": {
|
|
728
|
-
"type": "object",
|
|
729
|
-
"properties": {
|
|
730
|
-
"tag": {
|
|
731
|
-
"$ref": "#/definitions/CombatTechniqueCategory"
|
|
732
|
-
},
|
|
733
|
-
"specific": {
|
|
734
|
-
"description": "Only include (`Intersection`) or exclude (`Difference`) specific\nentries.",
|
|
735
|
-
"type": "object",
|
|
736
|
-
"properties": {
|
|
737
|
-
"operation": {
|
|
738
|
-
"oneOf": [
|
|
739
|
-
{
|
|
740
|
-
"type": "object",
|
|
741
|
-
"properties": {
|
|
742
|
-
"tag": {
|
|
743
|
-
"const": "Intersection"
|
|
744
|
-
}
|
|
745
|
-
},
|
|
746
|
-
"required": [
|
|
747
|
-
"tag"
|
|
748
|
-
],
|
|
749
|
-
"additionalProperties": false
|
|
750
|
-
},
|
|
751
|
-
{
|
|
752
|
-
"type": "object",
|
|
753
|
-
"properties": {
|
|
754
|
-
"tag": {
|
|
755
|
-
"const": "Difference"
|
|
756
|
-
}
|
|
757
|
-
},
|
|
758
|
-
"required": [
|
|
759
|
-
"tag"
|
|
760
|
-
],
|
|
761
|
-
"additionalProperties": false
|
|
762
|
-
}
|
|
763
|
-
]
|
|
764
|
-
},
|
|
765
|
-
"list": {
|
|
766
|
-
"description": "The list of specific entries.",
|
|
767
|
-
"type": "array",
|
|
768
|
-
"items": {
|
|
769
|
-
"type": "object",
|
|
770
|
-
"properties": {
|
|
771
|
-
"id": {
|
|
772
|
-
"description": "The entry's identifier.",
|
|
773
|
-
"type": "integer",
|
|
774
|
-
"maximum": 59,
|
|
775
|
-
"minimum": 1
|
|
776
|
-
}
|
|
777
|
-
},
|
|
778
|
-
"required": [
|
|
779
|
-
"id"
|
|
780
|
-
],
|
|
781
|
-
"additionalProperties": false
|
|
782
|
-
},
|
|
783
|
-
"minItems": 1,
|
|
784
|
-
"uniqueItems": true
|
|
785
|
-
}
|
|
786
|
-
},
|
|
787
|
-
"required": [
|
|
788
|
-
"operation",
|
|
789
|
-
"list"
|
|
790
|
-
],
|
|
791
|
-
"additionalProperties": false
|
|
792
|
-
},
|
|
793
|
-
"prerequisites": {
|
|
794
|
-
"description": "Generate prerequisites for each entry of the category.",
|
|
795
|
-
"type": "array",
|
|
796
|
-
"items": {
|
|
797
|
-
"oneOf": [
|
|
798
|
-
{
|
|
799
|
-
"$ref": "#/definitions/OptionSkillSelfPrerequisite"
|
|
800
|
-
},
|
|
801
|
-
{
|
|
802
|
-
"$ref": "#/definitions/OptionOptionPrerequisite"
|
|
803
|
-
}
|
|
804
|
-
]
|
|
805
|
-
},
|
|
806
|
-
"minItems": 1
|
|
807
|
-
}
|
|
808
|
-
},
|
|
809
|
-
"required": [
|
|
810
|
-
"tag"
|
|
811
|
-
],
|
|
812
|
-
"additionalProperties": false
|
|
813
|
-
},
|
|
814
|
-
"minItems": 1
|
|
815
|
-
},
|
|
816
|
-
"ap_value": {
|
|
817
|
-
"description": "Generate AP values for each entry.",
|
|
818
|
-
"oneOf": [
|
|
819
|
-
{
|
|
820
|
-
"type": "object",
|
|
821
|
-
"properties": {
|
|
822
|
-
"tag": {
|
|
823
|
-
"description": "Derive the cost from the improvement cost of each entry.\n\nAP Value = Improvement Cost × `multiplier` + `offset`",
|
|
824
|
-
"const": "DerivedFromImprovementCost"
|
|
825
|
-
},
|
|
826
|
-
"multiplier": {
|
|
827
|
-
"description": "This number is multiplied with the improvement cost of the entry\n(A = 1 to D = 4).",
|
|
828
|
-
"type": "integer",
|
|
829
|
-
"minimum": 2
|
|
830
|
-
},
|
|
831
|
-
"offset": {
|
|
832
|
-
"description": "This number is added to the maybe multiplied improvement cost of the\nentry.",
|
|
833
|
-
"type": "integer"
|
|
834
|
-
}
|
|
835
|
-
},
|
|
836
|
-
"required": [
|
|
837
|
-
"tag"
|
|
838
|
-
],
|
|
839
|
-
"additionalProperties": false
|
|
840
|
-
},
|
|
841
|
-
{
|
|
842
|
-
"type": "object",
|
|
843
|
-
"properties": {
|
|
844
|
-
"tag": {
|
|
845
|
-
"const": "Fixed"
|
|
846
|
-
},
|
|
847
|
-
"map": {
|
|
848
|
-
"description": "A mapping of skill identifiers to their specific AP values.",
|
|
849
|
-
"type": "array",
|
|
850
|
-
"items": {
|
|
851
|
-
"type": "object",
|
|
852
|
-
"properties": {
|
|
853
|
-
"id": {
|
|
854
|
-
"$ref": "./_Identifier.schema.json#/definitions/CombatTechniqueIdentifier"
|
|
855
|
-
},
|
|
856
|
-
"ap_value": {
|
|
857
|
-
"description": "The AP value for the specified entry.",
|
|
858
|
-
"type": "integer",
|
|
859
|
-
"minimum": 1
|
|
860
|
-
}
|
|
861
|
-
},
|
|
862
|
-
"required": [
|
|
863
|
-
"id",
|
|
864
|
-
"ap_value"
|
|
865
|
-
],
|
|
866
|
-
"additionalProperties": false
|
|
867
|
-
}
|
|
868
|
-
},
|
|
869
|
-
"default": {
|
|
870
|
-
"description": "The default value of an entry. Used as a fallback if no value is\nfound in `list`.",
|
|
871
|
-
"type": "integer",
|
|
872
|
-
"minimum": 1
|
|
873
|
-
}
|
|
874
|
-
},
|
|
875
|
-
"required": [
|
|
876
|
-
"tag",
|
|
877
|
-
"map",
|
|
878
|
-
"default"
|
|
879
|
-
],
|
|
880
|
-
"additionalProperties": false
|
|
881
|
-
}
|
|
882
|
-
]
|
|
682
|
+
"const": "DependsOnHitZone"
|
|
883
683
|
}
|
|
884
684
|
},
|
|
885
685
|
"required": [
|
|
886
|
-
"tag"
|
|
887
|
-
"categories"
|
|
686
|
+
"tag"
|
|
888
687
|
],
|
|
889
688
|
"additionalProperties": false
|
|
890
689
|
}
|
|
891
690
|
]
|
|
892
691
|
},
|
|
893
|
-
"
|
|
894
|
-
"enum": [
|
|
895
|
-
"Spells",
|
|
896
|
-
"Rituals",
|
|
897
|
-
"LiturgicalChants",
|
|
898
|
-
"Ceremonies"
|
|
899
|
-
]
|
|
900
|
-
},
|
|
901
|
-
"CombatTechniqueCategory": {
|
|
902
|
-
"enum": [
|
|
903
|
-
"CloseCombatTechniques",
|
|
904
|
-
"RangedCombatTechniques"
|
|
905
|
-
]
|
|
906
|
-
},
|
|
907
|
-
"OptionSkillSelfPrerequisite": {
|
|
692
|
+
"SinglePenalty": {
|
|
908
693
|
"type": "object",
|
|
909
694
|
"properties": {
|
|
910
|
-
"tag": {
|
|
911
|
-
"const": "Self"
|
|
912
|
-
},
|
|
913
695
|
"value": {
|
|
914
|
-
"description": "The
|
|
915
|
-
"type": "integer"
|
|
916
|
-
|
|
696
|
+
"description": "The penalty value.",
|
|
697
|
+
"type": "integer"
|
|
698
|
+
},
|
|
699
|
+
"applies_to_parry": {
|
|
700
|
+
"description": "Set to `true` if the penalty applies to the parry instead of the attack.",
|
|
701
|
+
"const": true
|
|
917
702
|
}
|
|
918
703
|
},
|
|
919
704
|
"required": [
|
|
920
|
-
"tag",
|
|
921
705
|
"value"
|
|
922
706
|
],
|
|
923
707
|
"additionalProperties": false
|
|
924
708
|
},
|
|
925
|
-
"
|
|
926
|
-
"description": "The entry requires or prohibits itself as a select option of another entry.",
|
|
709
|
+
"PenaltyByHandedness": {
|
|
927
710
|
"type": "object",
|
|
928
711
|
"properties": {
|
|
929
|
-
"
|
|
930
|
-
"
|
|
712
|
+
"one_handed": {
|
|
713
|
+
"description": "The penalty value for one-handed weapons.",
|
|
714
|
+
"type": "integer"
|
|
931
715
|
},
|
|
932
|
-
"
|
|
933
|
-
"description": "The
|
|
934
|
-
"
|
|
716
|
+
"two_handed": {
|
|
717
|
+
"description": "The penalty value for two-handed weapons.",
|
|
718
|
+
"type": "integer"
|
|
935
719
|
},
|
|
720
|
+
"applies_to_parry": {
|
|
721
|
+
"description": "Set to `true` if the penalty applies to the parry instead of the attack.",
|
|
722
|
+
"const": true
|
|
723
|
+
}
|
|
724
|
+
},
|
|
725
|
+
"required": [
|
|
726
|
+
"one_handed",
|
|
727
|
+
"two_handed"
|
|
728
|
+
],
|
|
729
|
+
"additionalProperties": false
|
|
730
|
+
},
|
|
731
|
+
"PenaltyByActivation": {
|
|
732
|
+
"type": "object",
|
|
733
|
+
"properties": {
|
|
936
734
|
"active": {
|
|
937
|
-
"description": "
|
|
938
|
-
"type": "
|
|
735
|
+
"description": "The penalty value if the entry has been bought by the character.",
|
|
736
|
+
"type": "integer"
|
|
939
737
|
},
|
|
940
|
-
"
|
|
941
|
-
"description": "The
|
|
942
|
-
"type": "integer"
|
|
943
|
-
|
|
738
|
+
"inactive": {
|
|
739
|
+
"description": "The penalty value if the entry has not been bought by the character.",
|
|
740
|
+
"type": "integer"
|
|
741
|
+
},
|
|
742
|
+
"applies_to_parry": {
|
|
743
|
+
"description": "Set to `true` if the penalty applies to the parry instead of the attack.",
|
|
744
|
+
"const": true
|
|
944
745
|
}
|
|
945
746
|
},
|
|
946
747
|
"required": [
|
|
947
|
-
"
|
|
948
|
-
"
|
|
949
|
-
|
|
748
|
+
"active",
|
|
749
|
+
"inactive"
|
|
750
|
+
],
|
|
751
|
+
"additionalProperties": false
|
|
752
|
+
},
|
|
753
|
+
"PenaltySelection": {
|
|
754
|
+
"type": "object",
|
|
755
|
+
"properties": {
|
|
756
|
+
"options": {
|
|
757
|
+
"$ref": "#/$defs/PenaltySelectionOptions"
|
|
758
|
+
}
|
|
759
|
+
},
|
|
760
|
+
"required": [
|
|
761
|
+
"options"
|
|
950
762
|
],
|
|
951
763
|
"additionalProperties": false
|
|
952
764
|
},
|
|
953
|
-
"
|
|
765
|
+
"PenaltySelectionOptions": {
|
|
954
766
|
"oneOf": [
|
|
955
767
|
{
|
|
956
768
|
"type": "object",
|
|
957
769
|
"properties": {
|
|
958
770
|
"tag": {
|
|
959
|
-
"const": "
|
|
960
|
-
},
|
|
961
|
-
"id": {
|
|
962
|
-
"description": "The option's identifier. An unique, increasing integer.",
|
|
963
|
-
"type": "integer",
|
|
964
|
-
"minimum": 1
|
|
965
|
-
},
|
|
966
|
-
"profession_only": {
|
|
967
|
-
"description": "Sometimes, professions use specific text selections that are not\ncontained in described lists. This ensures you can use them for\nprofessions only. They are not going to be displayed as options to the\nuser.",
|
|
968
|
-
"const": true
|
|
969
|
-
},
|
|
970
|
-
"skill_applications": {
|
|
971
|
-
"description": "Registers new applications, which get enabled once this entry is\nactivated with its respective select option. It specifies an entry-unique\nidentifier and the skill it belongs to. A translation can be left out if\nits name equals the name of the origin select option.",
|
|
972
|
-
"$ref": "#/definitions/SkillApplications"
|
|
973
|
-
},
|
|
974
|
-
"skill_uses": {
|
|
975
|
-
"description": "Registers uses, which get enabled once this entry is activated with its\nrespective select option. It specifies an entry-unique identifier and the\nskill it belongs to. A translation can be left out if its name equals the\nname of the origin select option.",
|
|
976
|
-
"$ref": "#/definitions/SkillUses"
|
|
977
|
-
},
|
|
978
|
-
"prerequisites": {
|
|
979
|
-
"$ref": "./_Prerequisite.schema.json#/definitions/GeneralPrerequisites"
|
|
980
|
-
},
|
|
981
|
-
"ap_value": {
|
|
982
|
-
"description": "Specific AP cost for the select option.",
|
|
983
|
-
"type": "integer",
|
|
984
|
-
"minimum": 1
|
|
985
|
-
},
|
|
986
|
-
"src": {
|
|
987
|
-
"$ref": "./source/_PublicationRef.schema.json#/definitions/PublicationRefs"
|
|
771
|
+
"const": "Specific"
|
|
988
772
|
},
|
|
989
|
-
"
|
|
990
|
-
"
|
|
991
|
-
"type": "object",
|
|
992
|
-
"patternProperties": {
|
|
993
|
-
"^[a-z]{2}-[A-Z]{2}$": {
|
|
994
|
-
"type": "object",
|
|
995
|
-
"properties": {
|
|
996
|
-
"name": {
|
|
997
|
-
"description": "The name of the select option.",
|
|
998
|
-
"type": "string",
|
|
999
|
-
"minLength": 1
|
|
1000
|
-
},
|
|
1001
|
-
"name_in_profession": {
|
|
1002
|
-
"description": "The name of the select option when displayed in a generated\nprofession text.",
|
|
1003
|
-
"type": "string",
|
|
1004
|
-
"minLength": 1
|
|
1005
|
-
},
|
|
1006
|
-
"description": {
|
|
1007
|
-
"description": "The description of the select option. Useful for Bad Habits, Trade\nSecrets and other entries where a description is available.",
|
|
1008
|
-
"type": "string",
|
|
1009
|
-
"minLength": 1
|
|
1010
|
-
},
|
|
1011
|
-
"errata": {
|
|
1012
|
-
"$ref": "./source/_Erratum.schema.json#/definitions/Errata"
|
|
1013
|
-
}
|
|
1014
|
-
},
|
|
1015
|
-
"required": [
|
|
1016
|
-
"name"
|
|
1017
|
-
],
|
|
1018
|
-
"additionalProperties": false
|
|
1019
|
-
}
|
|
1020
|
-
},
|
|
1021
|
-
"minProperties": 1,
|
|
1022
|
-
"additionalProperties": false
|
|
773
|
+
"specific": {
|
|
774
|
+
"$ref": "#/$defs/SpecificPenaltySelectionOptions"
|
|
1023
775
|
}
|
|
1024
776
|
},
|
|
1025
777
|
"required": [
|
|
1026
778
|
"tag",
|
|
1027
|
-
"
|
|
1028
|
-
"translations"
|
|
779
|
+
"specific"
|
|
1029
780
|
],
|
|
1030
781
|
"additionalProperties": false
|
|
1031
782
|
},
|
|
@@ -1033,215 +784,187 @@
|
|
|
1033
784
|
"type": "object",
|
|
1034
785
|
"properties": {
|
|
1035
786
|
"tag": {
|
|
1036
|
-
"const": "
|
|
1037
|
-
},
|
|
1038
|
-
"id": {
|
|
1039
|
-
"description": "The skill's identifier. An unique, increasing integer.",
|
|
1040
|
-
"type": "integer",
|
|
1041
|
-
"minimum": 1
|
|
1042
|
-
},
|
|
1043
|
-
"skill_applications": {
|
|
1044
|
-
"description": "Registers new applications, which get enabled once this entry is\nactivated with its respective select option. It specifies an entry-unique\nidentifier and the skill it belongs to. A translation can be left out if\nits name equals the name of the origin select option.",
|
|
1045
|
-
"type": "array",
|
|
1046
|
-
"items": {
|
|
1047
|
-
"type": "object",
|
|
1048
|
-
"properties": {
|
|
1049
|
-
"id": {
|
|
1050
|
-
"description": "The application's identifier. An entry-unique, increasing integer.",
|
|
1051
|
-
"type": "integer",
|
|
1052
|
-
"minimum": 1
|
|
1053
|
-
},
|
|
1054
|
-
"translations": {
|
|
1055
|
-
"description": "All translations for the entry, identified by IETF language tag (BCP47).",
|
|
1056
|
-
"type": "object",
|
|
1057
|
-
"patternProperties": {
|
|
1058
|
-
"^[a-z]{2}-[A-Z]{2}$": {
|
|
1059
|
-
"type": "object",
|
|
1060
|
-
"properties": {
|
|
1061
|
-
"name": {
|
|
1062
|
-
"description": "The name of the application if different from the activatable entry's\nname.",
|
|
1063
|
-
"type": "string",
|
|
1064
|
-
"minLength": 1
|
|
1065
|
-
}
|
|
1066
|
-
},
|
|
1067
|
-
"required": [
|
|
1068
|
-
"name"
|
|
1069
|
-
],
|
|
1070
|
-
"additionalProperties": false
|
|
1071
|
-
}
|
|
1072
|
-
},
|
|
1073
|
-
"minProperties": 1,
|
|
1074
|
-
"additionalProperties": false
|
|
1075
|
-
}
|
|
1076
|
-
},
|
|
1077
|
-
"required": [
|
|
1078
|
-
"id"
|
|
1079
|
-
],
|
|
1080
|
-
"additionalProperties": false
|
|
1081
|
-
},
|
|
1082
|
-
"minItems": 1
|
|
787
|
+
"const": "Range"
|
|
1083
788
|
},
|
|
1084
|
-
"
|
|
1085
|
-
"
|
|
1086
|
-
"type": "array",
|
|
1087
|
-
"items": {
|
|
1088
|
-
"type": "object",
|
|
1089
|
-
"properties": {
|
|
1090
|
-
"id": {
|
|
1091
|
-
"description": "The use's identifier. An entry-unique, increasing integer.",
|
|
1092
|
-
"type": "integer",
|
|
1093
|
-
"minimum": 1
|
|
1094
|
-
},
|
|
1095
|
-
"translations": {
|
|
1096
|
-
"description": "All translations for the entry, identified by IETF language tag (BCP47).",
|
|
1097
|
-
"type": "object",
|
|
1098
|
-
"patternProperties": {
|
|
1099
|
-
"^[a-z]{2}-[A-Z]{2}$": {
|
|
1100
|
-
"type": "object",
|
|
1101
|
-
"properties": {
|
|
1102
|
-
"name": {
|
|
1103
|
-
"description": "The name of the use if different from the activatable entry's name.",
|
|
1104
|
-
"type": "string",
|
|
1105
|
-
"minLength": 1
|
|
1106
|
-
}
|
|
1107
|
-
},
|
|
1108
|
-
"required": [
|
|
1109
|
-
"name"
|
|
1110
|
-
],
|
|
1111
|
-
"additionalProperties": false
|
|
1112
|
-
}
|
|
1113
|
-
},
|
|
1114
|
-
"minProperties": 1,
|
|
1115
|
-
"additionalProperties": false
|
|
1116
|
-
}
|
|
1117
|
-
},
|
|
1118
|
-
"required": [
|
|
1119
|
-
"id"
|
|
1120
|
-
],
|
|
1121
|
-
"additionalProperties": false
|
|
1122
|
-
},
|
|
1123
|
-
"minItems": 1
|
|
1124
|
-
},
|
|
1125
|
-
"prerequisites": {
|
|
1126
|
-
"$ref": "./_Prerequisite.schema.json#/definitions/GeneralPrerequisites"
|
|
1127
|
-
},
|
|
1128
|
-
"ap_value": {
|
|
1129
|
-
"description": "Specific AP cost for the select option.",
|
|
1130
|
-
"type": "integer",
|
|
1131
|
-
"minimum": 1
|
|
1132
|
-
},
|
|
1133
|
-
"src": {
|
|
1134
|
-
"$ref": "./source/_PublicationRef.schema.json#/definitions/PublicationRefs"
|
|
1135
|
-
},
|
|
1136
|
-
"translations": {
|
|
1137
|
-
"description": "All translations for the entry, identified by IETF language tag (BCP47).",
|
|
1138
|
-
"type": "object",
|
|
1139
|
-
"patternProperties": {
|
|
1140
|
-
"^[a-z]{2}-[A-Z]{2}$": {
|
|
1141
|
-
"type": "object",
|
|
1142
|
-
"properties": {
|
|
1143
|
-
"errata": {
|
|
1144
|
-
"$ref": "./source/_Erratum.schema.json#/definitions/Errata"
|
|
1145
|
-
}
|
|
1146
|
-
},
|
|
1147
|
-
"required": [],
|
|
1148
|
-
"minProperties": 1,
|
|
1149
|
-
"additionalProperties": false
|
|
1150
|
-
}
|
|
1151
|
-
},
|
|
1152
|
-
"minProperties": 1,
|
|
1153
|
-
"additionalProperties": false
|
|
789
|
+
"range": {
|
|
790
|
+
"$ref": "#/$defs/PenaltySelectionOptionsRange"
|
|
1154
791
|
}
|
|
1155
792
|
},
|
|
1156
793
|
"required": [
|
|
1157
794
|
"tag",
|
|
1158
|
-
"
|
|
795
|
+
"range"
|
|
1159
796
|
],
|
|
1160
797
|
"additionalProperties": false
|
|
798
|
+
}
|
|
799
|
+
]
|
|
800
|
+
},
|
|
801
|
+
"SpecificPenaltySelectionOptions": {
|
|
802
|
+
"type": "object",
|
|
803
|
+
"properties": {
|
|
804
|
+
"list": {
|
|
805
|
+
"description": "The list of specific penalty options.",
|
|
806
|
+
"type": "array",
|
|
807
|
+
"items": {
|
|
808
|
+
"$ref": "#/$defs/SpecificPenaltySelectionOption"
|
|
809
|
+
},
|
|
810
|
+
"minItems": 2,
|
|
811
|
+
"uniqueItems": true
|
|
812
|
+
}
|
|
813
|
+
},
|
|
814
|
+
"required": [
|
|
815
|
+
"list"
|
|
816
|
+
],
|
|
817
|
+
"additionalProperties": false
|
|
818
|
+
},
|
|
819
|
+
"SpecificPenaltySelectionOption": {
|
|
820
|
+
"type": "object",
|
|
821
|
+
"properties": {
|
|
822
|
+
"value": {
|
|
823
|
+
"description": "The penalty value.",
|
|
824
|
+
"type": "integer"
|
|
825
|
+
}
|
|
826
|
+
},
|
|
827
|
+
"required": [
|
|
828
|
+
"value"
|
|
829
|
+
],
|
|
830
|
+
"additionalProperties": false
|
|
831
|
+
},
|
|
832
|
+
"PenaltySelectionOptionsRange": {
|
|
833
|
+
"type": "object",
|
|
834
|
+
"properties": {
|
|
835
|
+
"minimum": {
|
|
836
|
+
"description": "The minimum penalty value.",
|
|
837
|
+
"type": "integer"
|
|
1161
838
|
},
|
|
1162
|
-
{
|
|
1163
|
-
"
|
|
1164
|
-
"
|
|
1165
|
-
|
|
1166
|
-
|
|
1167
|
-
|
|
1168
|
-
|
|
1169
|
-
|
|
1170
|
-
|
|
1171
|
-
|
|
1172
|
-
|
|
1173
|
-
|
|
1174
|
-
|
|
1175
|
-
|
|
1176
|
-
|
|
1177
|
-
|
|
1178
|
-
|
|
1179
|
-
|
|
1180
|
-
"
|
|
1181
|
-
"$ref": "./source/_PublicationRef.schema.json#/definitions/PublicationRefs"
|
|
1182
|
-
},
|
|
1183
|
-
"translations": {
|
|
1184
|
-
"description": "All translations for the entry, identified by IETF language tag (BCP47).",
|
|
1185
|
-
"type": "object",
|
|
1186
|
-
"patternProperties": {
|
|
1187
|
-
"^[a-z]{2}-[A-Z]{2}$": {
|
|
1188
|
-
"type": "object",
|
|
1189
|
-
"properties": {
|
|
1190
|
-
"errata": {
|
|
1191
|
-
"$ref": "./source/_Erratum.schema.json#/definitions/Errata"
|
|
1192
|
-
}
|
|
1193
|
-
},
|
|
1194
|
-
"required": [],
|
|
1195
|
-
"minProperties": 1,
|
|
1196
|
-
"additionalProperties": false
|
|
1197
|
-
}
|
|
1198
|
-
},
|
|
1199
|
-
"minProperties": 1,
|
|
1200
|
-
"additionalProperties": false
|
|
1201
|
-
}
|
|
839
|
+
"maximum": {
|
|
840
|
+
"description": "The maximum penalty value.",
|
|
841
|
+
"type": "integer"
|
|
842
|
+
}
|
|
843
|
+
},
|
|
844
|
+
"required": [
|
|
845
|
+
"minimum",
|
|
846
|
+
"maximum"
|
|
847
|
+
],
|
|
848
|
+
"additionalProperties": false
|
|
849
|
+
},
|
|
850
|
+
"PenaltyByLevel": {
|
|
851
|
+
"type": "object",
|
|
852
|
+
"properties": {
|
|
853
|
+
"levels": {
|
|
854
|
+
"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.",
|
|
855
|
+
"type": "array",
|
|
856
|
+
"items": {
|
|
857
|
+
"$ref": "#/$defs/PenaltyByLevelLevel"
|
|
1202
858
|
},
|
|
1203
|
-
"
|
|
1204
|
-
|
|
1205
|
-
|
|
1206
|
-
|
|
1207
|
-
"
|
|
859
|
+
"minItems": 2
|
|
860
|
+
},
|
|
861
|
+
"external": {
|
|
862
|
+
"description": "The combat-related special ability of which the level defines the penalty\ninstead.",
|
|
863
|
+
"$ref": "#/$defs/PenaltyByExternalLevel"
|
|
864
|
+
}
|
|
865
|
+
},
|
|
866
|
+
"required": [
|
|
867
|
+
"levels"
|
|
868
|
+
],
|
|
869
|
+
"additionalProperties": false
|
|
870
|
+
},
|
|
871
|
+
"PenaltyByLevelLevel": {
|
|
872
|
+
"type": "object",
|
|
873
|
+
"properties": {
|
|
874
|
+
"value": {
|
|
875
|
+
"description": "The penalty value for this level.",
|
|
876
|
+
"type": "integer"
|
|
877
|
+
}
|
|
878
|
+
},
|
|
879
|
+
"required": [
|
|
880
|
+
"value"
|
|
881
|
+
],
|
|
882
|
+
"additionalProperties": false
|
|
883
|
+
},
|
|
884
|
+
"PenaltyByExternalLevel": {
|
|
885
|
+
"description": "The combat-related special ability of which the level defines the penalty\ninstead.",
|
|
886
|
+
"type": "object",
|
|
887
|
+
"properties": {
|
|
888
|
+
"id": {
|
|
889
|
+
"description": "The identifier of the combat-related special ability of which the level\ndefines the penalty instead.",
|
|
890
|
+
"$ref": "./_Identifier.schema.json#/$defs/CombatRelatedSpecialAbilityIdentifier"
|
|
891
|
+
}
|
|
892
|
+
},
|
|
893
|
+
"required": [
|
|
894
|
+
"id"
|
|
895
|
+
],
|
|
896
|
+
"additionalProperties": false
|
|
897
|
+
},
|
|
898
|
+
"PenaltyByAttack": {
|
|
899
|
+
"type": "object",
|
|
900
|
+
"properties": {
|
|
901
|
+
"list": {
|
|
902
|
+
"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.",
|
|
903
|
+
"type": "array",
|
|
904
|
+
"items": {
|
|
905
|
+
"$ref": "#/$defs/PenaltyByAttackOrderItem"
|
|
906
|
+
},
|
|
907
|
+
"minItems": 1
|
|
908
|
+
},
|
|
909
|
+
"initial_order": {
|
|
910
|
+
"description": "The order of the first element in the `list` of penalties.",
|
|
911
|
+
"type": "number"
|
|
912
|
+
},
|
|
913
|
+
"attack_replacement": {
|
|
914
|
+
"description": "Set if a predefined different word should be used instead of the word\n`attack` for display purposes.",
|
|
915
|
+
"$ref": "#/$defs/PenaltyByAttackReplacement"
|
|
1208
916
|
}
|
|
1209
|
-
|
|
1210
|
-
|
|
1211
|
-
|
|
1212
|
-
|
|
1213
|
-
"
|
|
1214
|
-
"minLength": 1
|
|
917
|
+
},
|
|
918
|
+
"required": [
|
|
919
|
+
"list"
|
|
920
|
+
],
|
|
921
|
+
"additionalProperties": false
|
|
1215
922
|
},
|
|
1216
|
-
"
|
|
1217
|
-
"
|
|
1218
|
-
"
|
|
1219
|
-
|
|
923
|
+
"PenaltyByAttackOrderItem": {
|
|
924
|
+
"type": "object",
|
|
925
|
+
"properties": {
|
|
926
|
+
"value": {
|
|
927
|
+
"description": "The penalty value for this order.",
|
|
928
|
+
"type": "integer"
|
|
929
|
+
}
|
|
930
|
+
},
|
|
931
|
+
"required": [
|
|
932
|
+
"value"
|
|
933
|
+
],
|
|
934
|
+
"additionalProperties": false
|
|
1220
935
|
},
|
|
1221
|
-
"
|
|
1222
|
-
"description": "
|
|
936
|
+
"PenaltyByAttackReplacement": {
|
|
937
|
+
"description": "Set if a predefined different word should be used instead of the word\n`attack` for display purposes.",
|
|
1223
938
|
"oneOf": [
|
|
1224
939
|
{
|
|
1225
940
|
"type": "object",
|
|
1226
941
|
"properties": {
|
|
1227
942
|
"tag": {
|
|
1228
|
-
"const": "
|
|
943
|
+
"const": "Throw"
|
|
1229
944
|
}
|
|
1230
945
|
},
|
|
1231
946
|
"required": [
|
|
1232
947
|
"tag"
|
|
1233
948
|
],
|
|
1234
949
|
"additionalProperties": false
|
|
1235
|
-
}
|
|
950
|
+
}
|
|
951
|
+
]
|
|
952
|
+
},
|
|
953
|
+
"EnchantmentCost": {
|
|
954
|
+
"oneOf": [
|
|
1236
955
|
{
|
|
1237
956
|
"type": "object",
|
|
1238
957
|
"properties": {
|
|
1239
958
|
"tag": {
|
|
1240
|
-
"const": "
|
|
959
|
+
"const": "ArcaneEnergyCost"
|
|
960
|
+
},
|
|
961
|
+
"arcane_energy_cost": {
|
|
962
|
+
"$ref": "#/$defs/ArcaneEnergyCost"
|
|
1241
963
|
}
|
|
1242
964
|
},
|
|
1243
965
|
"required": [
|
|
1244
|
-
"tag"
|
|
966
|
+
"tag",
|
|
967
|
+
"arcane_energy_cost"
|
|
1245
968
|
],
|
|
1246
969
|
"additionalProperties": false
|
|
1247
970
|
},
|
|
@@ -1249,236 +972,36 @@
|
|
|
1249
972
|
"type": "object",
|
|
1250
973
|
"properties": {
|
|
1251
974
|
"tag": {
|
|
1252
|
-
"const": "
|
|
975
|
+
"const": "BindingCost"
|
|
976
|
+
},
|
|
977
|
+
"binding_cost": {
|
|
978
|
+
"$ref": "#/$defs/BindingCost"
|
|
1253
979
|
}
|
|
1254
980
|
},
|
|
1255
981
|
"required": [
|
|
1256
|
-
"tag"
|
|
982
|
+
"tag",
|
|
983
|
+
"binding_cost"
|
|
1257
984
|
],
|
|
1258
985
|
"additionalProperties": false
|
|
1259
986
|
}
|
|
1260
987
|
]
|
|
1261
988
|
},
|
|
1262
|
-
"
|
|
1263
|
-
"description": "
|
|
1264
|
-
"type": "array",
|
|
1265
|
-
"items": {
|
|
1266
|
-
"type": "object",
|
|
1267
|
-
"properties": {
|
|
1268
|
-
"id": {
|
|
1269
|
-
"description": "The application's identifier. An entry-unique, increasing integer.",
|
|
1270
|
-
"type": "integer",
|
|
1271
|
-
"minimum": 1
|
|
1272
|
-
},
|
|
1273
|
-
"skill": {
|
|
1274
|
-
"description": "The skill(s) this application belongs to.",
|
|
1275
|
-
"oneOf": [
|
|
1276
|
-
{
|
|
1277
|
-
"type": "object",
|
|
1278
|
-
"properties": {
|
|
1279
|
-
"tag": {
|
|
1280
|
-
"const": "Single"
|
|
1281
|
-
},
|
|
1282
|
-
"id": {
|
|
1283
|
-
"description": "The referenced skill's identifier.",
|
|
1284
|
-
"type": "integer",
|
|
1285
|
-
"minimum": 1
|
|
1286
|
-
}
|
|
1287
|
-
},
|
|
1288
|
-
"required": [
|
|
1289
|
-
"tag",
|
|
1290
|
-
"id"
|
|
1291
|
-
],
|
|
1292
|
-
"additionalProperties": false
|
|
1293
|
-
},
|
|
1294
|
-
{
|
|
1295
|
-
"type": "object",
|
|
1296
|
-
"properties": {
|
|
1297
|
-
"tag": {
|
|
1298
|
-
"const": "Multiple"
|
|
1299
|
-
},
|
|
1300
|
-
"list": {
|
|
1301
|
-
"description": "The skills this application belongs to.",
|
|
1302
|
-
"type": "array",
|
|
1303
|
-
"items": {
|
|
1304
|
-
"type": "object",
|
|
1305
|
-
"properties": {
|
|
1306
|
-
"id": {
|
|
1307
|
-
"description": "The referenced skill's identifier.",
|
|
1308
|
-
"type": "integer",
|
|
1309
|
-
"minimum": 1
|
|
1310
|
-
}
|
|
1311
|
-
},
|
|
1312
|
-
"required": [
|
|
1313
|
-
"id"
|
|
1314
|
-
],
|
|
1315
|
-
"additionalProperties": false
|
|
1316
|
-
},
|
|
1317
|
-
"minItems": 2
|
|
1318
|
-
},
|
|
1319
|
-
"required_skill_rating": {
|
|
1320
|
-
"description": "If an application applies to multiple skills, it may need to ensure the\nrespective skill is on a certain skill rating if the activatable entry\ncannot ensure this prerequisite.",
|
|
1321
|
-
"type": "integer",
|
|
1322
|
-
"minimum": 1
|
|
1323
|
-
}
|
|
1324
|
-
},
|
|
1325
|
-
"required": [
|
|
1326
|
-
"tag",
|
|
1327
|
-
"list"
|
|
1328
|
-
],
|
|
1329
|
-
"additionalProperties": false
|
|
1330
|
-
}
|
|
1331
|
-
]
|
|
1332
|
-
},
|
|
1333
|
-
"translations": {
|
|
1334
|
-
"description": "All translations for the entry, identified by IETF language tag (BCP47).",
|
|
1335
|
-
"type": "object",
|
|
1336
|
-
"patternProperties": {
|
|
1337
|
-
"^[a-z]{2}-[A-Z]{2}$": {
|
|
1338
|
-
"type": "object",
|
|
1339
|
-
"properties": {
|
|
1340
|
-
"name": {
|
|
1341
|
-
"description": "The name of the application if different from the activatable entry's\nname.",
|
|
1342
|
-
"type": "string",
|
|
1343
|
-
"minLength": 1
|
|
1344
|
-
}
|
|
1345
|
-
},
|
|
1346
|
-
"required": [
|
|
1347
|
-
"name"
|
|
1348
|
-
],
|
|
1349
|
-
"additionalProperties": false
|
|
1350
|
-
}
|
|
1351
|
-
},
|
|
1352
|
-
"minProperties": 1,
|
|
1353
|
-
"additionalProperties": false
|
|
1354
|
-
}
|
|
1355
|
-
},
|
|
1356
|
-
"required": [
|
|
1357
|
-
"id",
|
|
1358
|
-
"skill"
|
|
1359
|
-
],
|
|
1360
|
-
"additionalProperties": false
|
|
1361
|
-
},
|
|
1362
|
-
"minItems": 1
|
|
1363
|
-
},
|
|
1364
|
-
"SkillUses": {
|
|
1365
|
-
"description": "Registers uses, which get enabled once this entry is activated. It specifies\nan entry-unique identifier and the skill it belongs to. A translation can be\nleft out if its name equals the name of the origin activatable entry.",
|
|
1366
|
-
"type": "array",
|
|
1367
|
-
"items": {
|
|
1368
|
-
"type": "object",
|
|
1369
|
-
"properties": {
|
|
1370
|
-
"id": {
|
|
1371
|
-
"description": "The use's identifier. An entry-unique, increasing integer.",
|
|
1372
|
-
"type": "integer",
|
|
1373
|
-
"minimum": 1
|
|
1374
|
-
},
|
|
1375
|
-
"skill": {
|
|
1376
|
-
"description": "The skill(s) this use belongs to.",
|
|
1377
|
-
"oneOf": [
|
|
1378
|
-
{
|
|
1379
|
-
"type": "object",
|
|
1380
|
-
"properties": {
|
|
1381
|
-
"tag": {
|
|
1382
|
-
"const": "Single"
|
|
1383
|
-
},
|
|
1384
|
-
"id": {
|
|
1385
|
-
"description": "The referenced skill's identifier.",
|
|
1386
|
-
"type": "integer",
|
|
1387
|
-
"minimum": 1
|
|
1388
|
-
}
|
|
1389
|
-
},
|
|
1390
|
-
"required": [
|
|
1391
|
-
"tag",
|
|
1392
|
-
"id"
|
|
1393
|
-
],
|
|
1394
|
-
"additionalProperties": false
|
|
1395
|
-
},
|
|
1396
|
-
{
|
|
1397
|
-
"type": "object",
|
|
1398
|
-
"properties": {
|
|
1399
|
-
"tag": {
|
|
1400
|
-
"const": "Multiple"
|
|
1401
|
-
},
|
|
1402
|
-
"list": {
|
|
1403
|
-
"description": "The skills this use belongs to.",
|
|
1404
|
-
"type": "array",
|
|
1405
|
-
"items": {
|
|
1406
|
-
"type": "object",
|
|
1407
|
-
"properties": {
|
|
1408
|
-
"id": {
|
|
1409
|
-
"description": "The referenced skill's identifier.",
|
|
1410
|
-
"type": "integer",
|
|
1411
|
-
"minimum": 1
|
|
1412
|
-
}
|
|
1413
|
-
},
|
|
1414
|
-
"required": [
|
|
1415
|
-
"id"
|
|
1416
|
-
],
|
|
1417
|
-
"additionalProperties": false
|
|
1418
|
-
},
|
|
1419
|
-
"minItems": 2
|
|
1420
|
-
}
|
|
1421
|
-
},
|
|
1422
|
-
"required": [
|
|
1423
|
-
"tag",
|
|
1424
|
-
"list"
|
|
1425
|
-
],
|
|
1426
|
-
"additionalProperties": false
|
|
1427
|
-
}
|
|
1428
|
-
]
|
|
1429
|
-
},
|
|
1430
|
-
"translations": {
|
|
1431
|
-
"description": "All translations for the entry, identified by IETF language tag (BCP47).",
|
|
1432
|
-
"type": "object",
|
|
1433
|
-
"patternProperties": {
|
|
1434
|
-
"^[a-z]{2}-[A-Z]{2}$": {
|
|
1435
|
-
"type": "object",
|
|
1436
|
-
"properties": {
|
|
1437
|
-
"name": {
|
|
1438
|
-
"description": "The name of the use if different from the activatable entry's name.",
|
|
1439
|
-
"type": "string",
|
|
1440
|
-
"minLength": 1
|
|
1441
|
-
}
|
|
1442
|
-
},
|
|
1443
|
-
"required": [
|
|
1444
|
-
"name"
|
|
1445
|
-
],
|
|
1446
|
-
"additionalProperties": false
|
|
1447
|
-
}
|
|
1448
|
-
},
|
|
1449
|
-
"minProperties": 1,
|
|
1450
|
-
"additionalProperties": false
|
|
1451
|
-
}
|
|
1452
|
-
},
|
|
1453
|
-
"required": [
|
|
1454
|
-
"id",
|
|
1455
|
-
"skill"
|
|
1456
|
-
],
|
|
1457
|
-
"additionalProperties": false
|
|
1458
|
-
},
|
|
1459
|
-
"minItems": 1
|
|
1460
|
-
},
|
|
1461
|
-
"Penalty": {
|
|
1462
|
-
"description": "The penalty the special ability gives when used.",
|
|
989
|
+
"ArcaneEnergyCost": {
|
|
990
|
+
"description": "The AE Cost.",
|
|
1463
991
|
"oneOf": [
|
|
1464
992
|
{
|
|
1465
993
|
"type": "object",
|
|
1466
994
|
"properties": {
|
|
1467
995
|
"tag": {
|
|
1468
|
-
"const": "
|
|
1469
|
-
},
|
|
1470
|
-
"value": {
|
|
1471
|
-
"description": "The penalty value.",
|
|
1472
|
-
"type": "integer"
|
|
996
|
+
"const": "Fixed"
|
|
1473
997
|
},
|
|
1474
|
-
"
|
|
1475
|
-
"
|
|
1476
|
-
"const": true
|
|
998
|
+
"fixed": {
|
|
999
|
+
"$ref": "#/$defs/FixedArcaneEnergyCost"
|
|
1477
1000
|
}
|
|
1478
1001
|
},
|
|
1479
1002
|
"required": [
|
|
1480
1003
|
"tag",
|
|
1481
|
-
"
|
|
1004
|
+
"fixed"
|
|
1482
1005
|
],
|
|
1483
1006
|
"additionalProperties": false
|
|
1484
1007
|
},
|
|
@@ -1486,25 +1009,15 @@
|
|
|
1486
1009
|
"type": "object",
|
|
1487
1010
|
"properties": {
|
|
1488
1011
|
"tag": {
|
|
1489
|
-
"const": "
|
|
1490
|
-
},
|
|
1491
|
-
"one_handed": {
|
|
1492
|
-
"description": "The penalty value for one-handed weapons.",
|
|
1493
|
-
"type": "integer"
|
|
1494
|
-
},
|
|
1495
|
-
"two_handed": {
|
|
1496
|
-
"description": "The penalty value for two-handed weapons.",
|
|
1497
|
-
"type": "integer"
|
|
1012
|
+
"const": "PerCountable"
|
|
1498
1013
|
},
|
|
1499
|
-
"
|
|
1500
|
-
"
|
|
1501
|
-
"const": true
|
|
1014
|
+
"per_countable": {
|
|
1015
|
+
"$ref": "#/$defs/ArcaneEnergyCostPerCountable"
|
|
1502
1016
|
}
|
|
1503
1017
|
},
|
|
1504
1018
|
"required": [
|
|
1505
1019
|
"tag",
|
|
1506
|
-
"
|
|
1507
|
-
"two_handed"
|
|
1020
|
+
"per_countable"
|
|
1508
1021
|
],
|
|
1509
1022
|
"additionalProperties": false
|
|
1510
1023
|
},
|
|
@@ -1512,25 +1025,15 @@
|
|
|
1512
1025
|
"type": "object",
|
|
1513
1026
|
"properties": {
|
|
1514
1027
|
"tag": {
|
|
1515
|
-
"const": "
|
|
1516
|
-
},
|
|
1517
|
-
"active": {
|
|
1518
|
-
"description": "The penalty value if the entry has been bought by the character.",
|
|
1519
|
-
"type": "integer"
|
|
1520
|
-
},
|
|
1521
|
-
"inactive": {
|
|
1522
|
-
"description": "The penalty value if the entry has not been bought by the character.",
|
|
1523
|
-
"type": "integer"
|
|
1028
|
+
"const": "ActivationAndHalfInterval"
|
|
1524
1029
|
},
|
|
1525
|
-
"
|
|
1526
|
-
"
|
|
1527
|
-
"const": true
|
|
1030
|
+
"activation_and_half_interval": {
|
|
1031
|
+
"$ref": "#/$defs/ActivationAndHalfIntervalArcaneEnergyCost"
|
|
1528
1032
|
}
|
|
1529
1033
|
},
|
|
1530
1034
|
"required": [
|
|
1531
1035
|
"tag",
|
|
1532
|
-
"
|
|
1533
|
-
"inactive"
|
|
1036
|
+
"activation_and_half_interval"
|
|
1534
1037
|
],
|
|
1535
1038
|
"additionalProperties": false
|
|
1536
1039
|
},
|
|
@@ -1538,70 +1041,15 @@
|
|
|
1538
1041
|
"type": "object",
|
|
1539
1042
|
"properties": {
|
|
1540
1043
|
"tag": {
|
|
1541
|
-
"const": "
|
|
1044
|
+
"const": "Indefinite"
|
|
1542
1045
|
},
|
|
1543
|
-
"
|
|
1544
|
-
"
|
|
1545
|
-
{
|
|
1546
|
-
"type": "object",
|
|
1547
|
-
"properties": {
|
|
1548
|
-
"tag": {
|
|
1549
|
-
"const": "Specific"
|
|
1550
|
-
},
|
|
1551
|
-
"list": {
|
|
1552
|
-
"description": "The list of specific penalty options.",
|
|
1553
|
-
"type": "array",
|
|
1554
|
-
"items": {
|
|
1555
|
-
"type": "object",
|
|
1556
|
-
"properties": {
|
|
1557
|
-
"value": {
|
|
1558
|
-
"description": "The penalty value.",
|
|
1559
|
-
"type": "integer"
|
|
1560
|
-
}
|
|
1561
|
-
},
|
|
1562
|
-
"required": [
|
|
1563
|
-
"value"
|
|
1564
|
-
],
|
|
1565
|
-
"additionalProperties": false
|
|
1566
|
-
},
|
|
1567
|
-
"minItems": 2,
|
|
1568
|
-
"uniqueItems": true
|
|
1569
|
-
}
|
|
1570
|
-
},
|
|
1571
|
-
"required": [
|
|
1572
|
-
"tag",
|
|
1573
|
-
"list"
|
|
1574
|
-
],
|
|
1575
|
-
"additionalProperties": false
|
|
1576
|
-
},
|
|
1577
|
-
{
|
|
1578
|
-
"type": "object",
|
|
1579
|
-
"properties": {
|
|
1580
|
-
"tag": {
|
|
1581
|
-
"const": "Range"
|
|
1582
|
-
},
|
|
1583
|
-
"minimum": {
|
|
1584
|
-
"description": "The minimum penalty value.",
|
|
1585
|
-
"type": "integer"
|
|
1586
|
-
},
|
|
1587
|
-
"maximum": {
|
|
1588
|
-
"description": "The maximum penalty value.",
|
|
1589
|
-
"type": "integer"
|
|
1590
|
-
}
|
|
1591
|
-
},
|
|
1592
|
-
"required": [
|
|
1593
|
-
"tag",
|
|
1594
|
-
"minimum",
|
|
1595
|
-
"maximum"
|
|
1596
|
-
],
|
|
1597
|
-
"additionalProperties": false
|
|
1598
|
-
}
|
|
1599
|
-
]
|
|
1046
|
+
"indefinite": {
|
|
1047
|
+
"$ref": "#/$defs/IndefiniteArcaneEnergyCost"
|
|
1600
1048
|
}
|
|
1601
1049
|
},
|
|
1602
1050
|
"required": [
|
|
1603
1051
|
"tag",
|
|
1604
|
-
"
|
|
1052
|
+
"indefinite"
|
|
1605
1053
|
],
|
|
1606
1054
|
"additionalProperties": false
|
|
1607
1055
|
},
|
|
@@ -1609,34 +1057,15 @@
|
|
|
1609
1057
|
"type": "object",
|
|
1610
1058
|
"properties": {
|
|
1611
1059
|
"tag": {
|
|
1612
|
-
"const": "
|
|
1613
|
-
},
|
|
1614
|
-
"levels": {
|
|
1615
|
-
"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.",
|
|
1616
|
-
"type": "array",
|
|
1617
|
-
"items": {
|
|
1618
|
-
"type": "object",
|
|
1619
|
-
"properties": {
|
|
1620
|
-
"value": {
|
|
1621
|
-
"description": "The penalty value for this level.",
|
|
1622
|
-
"type": "integer"
|
|
1623
|
-
}
|
|
1624
|
-
},
|
|
1625
|
-
"required": [
|
|
1626
|
-
"value"
|
|
1627
|
-
],
|
|
1628
|
-
"additionalProperties": false
|
|
1629
|
-
},
|
|
1630
|
-
"minItems": 2
|
|
1060
|
+
"const": "Disjunction"
|
|
1631
1061
|
},
|
|
1632
|
-
"
|
|
1633
|
-
"
|
|
1634
|
-
"$ref": "./_Identifier.schema.json#/definitions/CombatRelatedSpecialAbilityIdentifier"
|
|
1062
|
+
"disjunction": {
|
|
1063
|
+
"$ref": "#/$defs/ArcaneEnergyCostDisjunction"
|
|
1635
1064
|
}
|
|
1636
1065
|
},
|
|
1637
1066
|
"required": [
|
|
1638
1067
|
"tag",
|
|
1639
|
-
"
|
|
1068
|
+
"disjunction"
|
|
1640
1069
|
],
|
|
1641
1070
|
"additionalProperties": false
|
|
1642
1071
|
},
|
|
@@ -1644,51 +1073,14 @@
|
|
|
1644
1073
|
"type": "object",
|
|
1645
1074
|
"properties": {
|
|
1646
1075
|
"tag": {
|
|
1647
|
-
"const": "
|
|
1648
|
-
},
|
|
1649
|
-
"list": {
|
|
1650
|
-
"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.",
|
|
1651
|
-
"type": "array",
|
|
1652
|
-
"items": {
|
|
1653
|
-
"type": "object",
|
|
1654
|
-
"properties": {
|
|
1655
|
-
"value": {
|
|
1656
|
-
"description": "The penalty value for this order.",
|
|
1657
|
-
"type": "integer"
|
|
1658
|
-
}
|
|
1659
|
-
},
|
|
1660
|
-
"required": [
|
|
1661
|
-
"value"
|
|
1662
|
-
],
|
|
1663
|
-
"additionalProperties": false
|
|
1664
|
-
},
|
|
1665
|
-
"minItems": 1
|
|
1666
|
-
},
|
|
1667
|
-
"initial_order": {
|
|
1668
|
-
"description": "The order of the first element in the `list` of penalties.",
|
|
1669
|
-
"type": "number"
|
|
1076
|
+
"const": "None"
|
|
1670
1077
|
},
|
|
1671
|
-
"
|
|
1672
|
-
"
|
|
1673
|
-
"oneOf": [
|
|
1674
|
-
{
|
|
1675
|
-
"type": "object",
|
|
1676
|
-
"properties": {
|
|
1677
|
-
"tag": {
|
|
1678
|
-
"const": "Throw"
|
|
1679
|
-
}
|
|
1680
|
-
},
|
|
1681
|
-
"required": [
|
|
1682
|
-
"tag"
|
|
1683
|
-
],
|
|
1684
|
-
"additionalProperties": false
|
|
1685
|
-
}
|
|
1686
|
-
]
|
|
1078
|
+
"none": {
|
|
1079
|
+
"$ref": "#/$defs/NoArcaneEnergyCost"
|
|
1687
1080
|
}
|
|
1688
1081
|
},
|
|
1689
1082
|
"required": [
|
|
1690
|
-
"tag"
|
|
1691
|
-
"list"
|
|
1083
|
+
"tag"
|
|
1692
1084
|
],
|
|
1693
1085
|
"additionalProperties": false
|
|
1694
1086
|
},
|
|
@@ -1696,7 +1088,7 @@
|
|
|
1696
1088
|
"type": "object",
|
|
1697
1089
|
"properties": {
|
|
1698
1090
|
"tag": {
|
|
1699
|
-
"const": "
|
|
1091
|
+
"const": "Variable"
|
|
1700
1092
|
}
|
|
1701
1093
|
},
|
|
1702
1094
|
"required": [
|
|
@@ -1706,133 +1098,55 @@
|
|
|
1706
1098
|
}
|
|
1707
1099
|
]
|
|
1708
1100
|
},
|
|
1709
|
-
"
|
|
1710
|
-
"
|
|
1711
|
-
|
|
1712
|
-
|
|
1713
|
-
"
|
|
1714
|
-
|
|
1715
|
-
|
|
1716
|
-
},
|
|
1717
|
-
"ae_cost": {
|
|
1718
|
-
"$ref": "#/definitions/ArcaneEnergyCost"
|
|
1719
|
-
}
|
|
1720
|
-
},
|
|
1721
|
-
"required": [
|
|
1722
|
-
"tag",
|
|
1723
|
-
"ae_cost"
|
|
1724
|
-
],
|
|
1725
|
-
"additionalProperties": false
|
|
1101
|
+
"FixedArcaneEnergyCost": {
|
|
1102
|
+
"type": "object",
|
|
1103
|
+
"properties": {
|
|
1104
|
+
"value": {
|
|
1105
|
+
"description": "The AE cost value.",
|
|
1106
|
+
"type": "integer",
|
|
1107
|
+
"minimum": 1
|
|
1726
1108
|
},
|
|
1727
|
-
{
|
|
1109
|
+
"is_permanent": {
|
|
1110
|
+
"description": "Set to `true` if the AE costs are permanent.",
|
|
1111
|
+
"const": true
|
|
1112
|
+
},
|
|
1113
|
+
"interval": {
|
|
1114
|
+
"description": "Specified if the AE cost `value` has to be paid for each time interval.",
|
|
1115
|
+
"$ref": "./_ActivatableSkillDuration.schema.json#/$defs/DurationUnitValue"
|
|
1116
|
+
},
|
|
1117
|
+
"per_level": {
|
|
1118
|
+
"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`).",
|
|
1119
|
+
"$ref": "#/$defs/FixedArcaneEnergyCostPerLevel"
|
|
1120
|
+
},
|
|
1121
|
+
"translations": {
|
|
1122
|
+
"description": "All translations for the entry, identified by IETF language tag (BCP47).",
|
|
1728
1123
|
"type": "object",
|
|
1729
|
-
"
|
|
1730
|
-
"
|
|
1731
|
-
"
|
|
1732
|
-
},
|
|
1733
|
-
"binding_cost": {
|
|
1734
|
-
"$ref": "#/definitions/BindingCost"
|
|
1124
|
+
"patternProperties": {
|
|
1125
|
+
"^[a-z]{2}-[A-Z]{2}$": {
|
|
1126
|
+
"$ref": "#/$defs/FixedArcaneEnergyCostTranslation"
|
|
1735
1127
|
}
|
|
1736
1128
|
},
|
|
1737
|
-
"
|
|
1738
|
-
"tag",
|
|
1739
|
-
"binding_cost"
|
|
1740
|
-
],
|
|
1129
|
+
"minProperties": 1,
|
|
1741
1130
|
"additionalProperties": false
|
|
1742
1131
|
}
|
|
1743
|
-
|
|
1132
|
+
},
|
|
1133
|
+
"required": [
|
|
1134
|
+
"value"
|
|
1135
|
+
],
|
|
1136
|
+
"additionalProperties": false
|
|
1744
1137
|
},
|
|
1745
|
-
"
|
|
1746
|
-
"description": "The AE
|
|
1138
|
+
"FixedArcaneEnergyCostPerLevel": {
|
|
1139
|
+
"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`).",
|
|
1747
1140
|
"oneOf": [
|
|
1748
1141
|
{
|
|
1749
1142
|
"type": "object",
|
|
1750
1143
|
"properties": {
|
|
1751
1144
|
"tag": {
|
|
1752
|
-
"const": "
|
|
1753
|
-
},
|
|
1754
|
-
"value": {
|
|
1755
|
-
"description": "The AE cost value.",
|
|
1756
|
-
"type": "integer",
|
|
1757
|
-
"minimum": 1
|
|
1758
|
-
},
|
|
1759
|
-
"is_permanent": {
|
|
1760
|
-
"description": "Set to `true` if the AE costs are permanent.",
|
|
1761
|
-
"const": true
|
|
1762
|
-
},
|
|
1763
|
-
"interval": {
|
|
1764
|
-
"description": "Specified if the AE cost `value` has to be paid for each time interval.",
|
|
1765
|
-
"$ref": "./_ActivatableSkill.schema.json#/definitions/Duration/UnitValue"
|
|
1766
|
-
},
|
|
1767
|
-
"per_level": {
|
|
1768
|
-
"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`).",
|
|
1769
|
-
"oneOf": [
|
|
1770
|
-
{
|
|
1771
|
-
"type": "object",
|
|
1772
|
-
"properties": {
|
|
1773
|
-
"tag": {
|
|
1774
|
-
"const": "Compressed"
|
|
1775
|
-
}
|
|
1776
|
-
},
|
|
1777
|
-
"required": [
|
|
1778
|
-
"tag"
|
|
1779
|
-
],
|
|
1780
|
-
"additionalProperties": false
|
|
1781
|
-
},
|
|
1782
|
-
{
|
|
1783
|
-
"type": "object",
|
|
1784
|
-
"properties": {
|
|
1785
|
-
"tag": {
|
|
1786
|
-
"const": "Verbose"
|
|
1787
|
-
}
|
|
1788
|
-
},
|
|
1789
|
-
"required": [
|
|
1790
|
-
"tag"
|
|
1791
|
-
],
|
|
1792
|
-
"additionalProperties": false
|
|
1793
|
-
}
|
|
1794
|
-
]
|
|
1795
|
-
},
|
|
1796
|
-
"translations": {
|
|
1797
|
-
"description": "All translations for the entry, identified by IETF language tag\n(BCP47).",
|
|
1798
|
-
"type": "object",
|
|
1799
|
-
"patternProperties": {
|
|
1800
|
-
"^[a-z]{2}-[A-Z]{2}$": {
|
|
1801
|
-
"type": "object",
|
|
1802
|
-
"properties": {
|
|
1803
|
-
"note": {
|
|
1804
|
-
"description": "A note, appended to the generated string in parenthesis.",
|
|
1805
|
-
"type": "object",
|
|
1806
|
-
"properties": {
|
|
1807
|
-
"default": {
|
|
1808
|
-
"description": "The full note.",
|
|
1809
|
-
"type": "string",
|
|
1810
|
-
"minLength": 1
|
|
1811
|
-
},
|
|
1812
|
-
"compressed": {
|
|
1813
|
-
"description": "A compressed note, if applicable. If not specified it should not\nbe displayed in small location.",
|
|
1814
|
-
"type": "string",
|
|
1815
|
-
"minLength": 1
|
|
1816
|
-
}
|
|
1817
|
-
},
|
|
1818
|
-
"required": [
|
|
1819
|
-
"default"
|
|
1820
|
-
],
|
|
1821
|
-
"additionalProperties": false
|
|
1822
|
-
}
|
|
1823
|
-
},
|
|
1824
|
-
"required": [],
|
|
1825
|
-
"minProperties": 1,
|
|
1826
|
-
"additionalProperties": false
|
|
1827
|
-
}
|
|
1828
|
-
},
|
|
1829
|
-
"minProperties": 1,
|
|
1830
|
-
"additionalProperties": false
|
|
1145
|
+
"const": "Compressed"
|
|
1831
1146
|
}
|
|
1832
1147
|
},
|
|
1833
1148
|
"required": [
|
|
1834
|
-
"tag"
|
|
1835
|
-
"value"
|
|
1149
|
+
"tag"
|
|
1836
1150
|
],
|
|
1837
1151
|
"additionalProperties": false
|
|
1838
1152
|
},
|
|
@@ -1840,294 +1154,132 @@
|
|
|
1840
1154
|
"type": "object",
|
|
1841
1155
|
"properties": {
|
|
1842
1156
|
"tag": {
|
|
1843
|
-
"const": "
|
|
1844
|
-
},
|
|
1845
|
-
"value": {
|
|
1846
|
-
"description": "The AE cost value that has to be per a specific countable entity.",
|
|
1847
|
-
"type": "integer",
|
|
1848
|
-
"minimum": 1
|
|
1849
|
-
},
|
|
1850
|
-
"base_value": {
|
|
1851
|
-
"description": "If defined, in addition to the cost per entity you have to pay a flat\namount, regardless of the entity count.",
|
|
1852
|
-
"type": "integer",
|
|
1853
|
-
"minimum": 1
|
|
1854
|
-
},
|
|
1855
|
-
"translations": {
|
|
1856
|
-
"description": "All translations for the entry, identified by IETF language tag\n(BCP47).",
|
|
1857
|
-
"type": "object",
|
|
1858
|
-
"patternProperties": {
|
|
1859
|
-
"^[a-z]{2}-[A-Z]{2}$": {
|
|
1860
|
-
"type": "object",
|
|
1861
|
-
"properties": {
|
|
1862
|
-
"per": {
|
|
1863
|
-
"description": "The cost have to be per a specific countable entity, e.g. `8 AE per\nperson`.",
|
|
1864
|
-
"type": "object",
|
|
1865
|
-
"properties": {
|
|
1866
|
-
"default": {
|
|
1867
|
-
"description": "The full countable entity name.",
|
|
1868
|
-
"type": "string",
|
|
1869
|
-
"minLength": 1
|
|
1870
|
-
},
|
|
1871
|
-
"compressed": {
|
|
1872
|
-
"description": "The compressed countable entity name.",
|
|
1873
|
-
"type": "string",
|
|
1874
|
-
"minLength": 1
|
|
1875
|
-
}
|
|
1876
|
-
},
|
|
1877
|
-
"required": [
|
|
1878
|
-
"default",
|
|
1879
|
-
"compressed"
|
|
1880
|
-
],
|
|
1881
|
-
"additionalProperties": false
|
|
1882
|
-
},
|
|
1883
|
-
"note": {
|
|
1884
|
-
"description": "A note, appended to the generated string in parenthesis.",
|
|
1885
|
-
"type": "object",
|
|
1886
|
-
"properties": {
|
|
1887
|
-
"default": {
|
|
1888
|
-
"description": "The full note.",
|
|
1889
|
-
"type": "string",
|
|
1890
|
-
"minLength": 1
|
|
1891
|
-
},
|
|
1892
|
-
"compressed": {
|
|
1893
|
-
"description": "A compressed note, if applicable. If not specified it should not\nbe displayed in small location.",
|
|
1894
|
-
"type": "string",
|
|
1895
|
-
"minLength": 1
|
|
1896
|
-
}
|
|
1897
|
-
},
|
|
1898
|
-
"required": [
|
|
1899
|
-
"default"
|
|
1900
|
-
],
|
|
1901
|
-
"additionalProperties": false
|
|
1902
|
-
}
|
|
1903
|
-
},
|
|
1904
|
-
"required": [
|
|
1905
|
-
"per"
|
|
1906
|
-
],
|
|
1907
|
-
"minProperties": 1,
|
|
1908
|
-
"additionalProperties": false
|
|
1909
|
-
}
|
|
1910
|
-
},
|
|
1911
|
-
"minProperties": 1,
|
|
1912
|
-
"additionalProperties": false
|
|
1157
|
+
"const": "Verbose"
|
|
1913
1158
|
}
|
|
1914
1159
|
},
|
|
1915
1160
|
"required": [
|
|
1916
|
-
"tag"
|
|
1917
|
-
"value"
|
|
1161
|
+
"tag"
|
|
1918
1162
|
],
|
|
1919
1163
|
"additionalProperties": false
|
|
1164
|
+
}
|
|
1165
|
+
]
|
|
1166
|
+
},
|
|
1167
|
+
"FixedArcaneEnergyCostTranslation": {
|
|
1168
|
+
"type": "object",
|
|
1169
|
+
"properties": {
|
|
1170
|
+
"note": {
|
|
1171
|
+
"description": "A note, appended to the generated option string in parenthesis.",
|
|
1172
|
+
"$ref": "./_ResponsiveText.schema.json#/$defs/ResponsiveTextOptional"
|
|
1173
|
+
}
|
|
1174
|
+
},
|
|
1175
|
+
"required": [],
|
|
1176
|
+
"minProperties": 1,
|
|
1177
|
+
"additionalProperties": false
|
|
1178
|
+
},
|
|
1179
|
+
"ArcaneEnergyCostPerCountable": {
|
|
1180
|
+
"type": "object",
|
|
1181
|
+
"properties": {
|
|
1182
|
+
"value": {
|
|
1183
|
+
"description": "The AE cost value that has to be per a specific countable entity.",
|
|
1184
|
+
"type": "integer",
|
|
1185
|
+
"minimum": 1
|
|
1920
1186
|
},
|
|
1921
|
-
{
|
|
1187
|
+
"base_value": {
|
|
1188
|
+
"description": "If defined, in addition to the cost per entity you have to pay a flat\namount, regardless of the entity count.",
|
|
1189
|
+
"type": "integer",
|
|
1190
|
+
"minimum": 1
|
|
1191
|
+
},
|
|
1192
|
+
"translations": {
|
|
1193
|
+
"description": "All translations for the entry, identified by IETF language tag (BCP47).",
|
|
1922
1194
|
"type": "object",
|
|
1923
|
-
"
|
|
1924
|
-
"
|
|
1925
|
-
"
|
|
1926
|
-
},
|
|
1927
|
-
"value": {
|
|
1928
|
-
"description": "The AE cost value that has to be payed for activation. Half of this value\nhas to be payed each interval.",
|
|
1929
|
-
"type": "integer",
|
|
1930
|
-
"minimum": 2,
|
|
1931
|
-
"multipleOf": 2
|
|
1932
|
-
},
|
|
1933
|
-
"interval": {
|
|
1934
|
-
"description": "The time interval for which the AE cost `value` has to be paid.",
|
|
1935
|
-
"$ref": "./_ActivatableSkill.schema.json#/definitions/Duration/UnitValue"
|
|
1195
|
+
"patternProperties": {
|
|
1196
|
+
"^[a-z]{2}-[A-Z]{2}$": {
|
|
1197
|
+
"$ref": "#/$defs/ArcaneEnergyCostPerCountableTranslation"
|
|
1936
1198
|
}
|
|
1937
1199
|
},
|
|
1938
|
-
"
|
|
1939
|
-
"tag",
|
|
1940
|
-
"value",
|
|
1941
|
-
"interval"
|
|
1942
|
-
],
|
|
1200
|
+
"minProperties": 1,
|
|
1943
1201
|
"additionalProperties": false
|
|
1202
|
+
}
|
|
1203
|
+
},
|
|
1204
|
+
"required": [
|
|
1205
|
+
"value"
|
|
1206
|
+
],
|
|
1207
|
+
"additionalProperties": false
|
|
1208
|
+
},
|
|
1209
|
+
"ArcaneEnergyCostPerCountableTranslation": {
|
|
1210
|
+
"type": "object",
|
|
1211
|
+
"properties": {
|
|
1212
|
+
"per": {
|
|
1213
|
+
"description": "The cost have to be per a specific countable entity, e.g. `8 AE per\nperson`.",
|
|
1214
|
+
"$ref": "./_ResponsiveText.schema.json#/$defs/ResponsiveText"
|
|
1944
1215
|
},
|
|
1945
|
-
{
|
|
1946
|
-
"
|
|
1947
|
-
"
|
|
1948
|
-
|
|
1949
|
-
|
|
1950
|
-
|
|
1951
|
-
|
|
1952
|
-
|
|
1953
|
-
|
|
1954
|
-
|
|
1955
|
-
|
|
1956
|
-
|
|
1957
|
-
|
|
1958
|
-
|
|
1959
|
-
|
|
1960
|
-
|
|
1961
|
-
|
|
1962
|
-
|
|
1963
|
-
|
|
1964
|
-
|
|
1965
|
-
|
|
1966
|
-
|
|
1967
|
-
|
|
1968
|
-
|
|
1969
|
-
|
|
1970
|
-
|
|
1971
|
-
|
|
1972
|
-
|
|
1973
|
-
|
|
1974
|
-
|
|
1975
|
-
|
|
1976
|
-
|
|
1977
|
-
|
|
1978
|
-
|
|
1979
|
-
|
|
1980
|
-
|
|
1981
|
-
|
|
1982
|
-
|
|
1983
|
-
|
|
1984
|
-
|
|
1985
|
-
|
|
1986
|
-
|
|
1987
|
-
|
|
1988
|
-
}
|
|
1989
|
-
},
|
|
1990
|
-
"required": [
|
|
1991
|
-
"arithmetic",
|
|
1992
|
-
"value"
|
|
1993
|
-
],
|
|
1994
|
-
"additionalProperties": false
|
|
1995
|
-
},
|
|
1996
|
-
"translations": {
|
|
1997
|
-
"description": "All translations for the entry, identified by IETF language tag (BCP47).",
|
|
1998
|
-
"type": "object",
|
|
1999
|
-
"patternProperties": {
|
|
2000
|
-
"^[a-z]{2}-[A-Z]{2}$": {
|
|
2001
|
-
"type": "object",
|
|
2002
|
-
"properties": {
|
|
2003
|
-
"description": {
|
|
2004
|
-
"description": "A description of where the cost come from.",
|
|
2005
|
-
"type": "object",
|
|
2006
|
-
"properties": {
|
|
2007
|
-
"default": {
|
|
2008
|
-
"description": "The full description of where the cost come from.",
|
|
2009
|
-
"type": "string",
|
|
2010
|
-
"minLength": 1
|
|
2011
|
-
},
|
|
2012
|
-
"compressed": {
|
|
2013
|
-
"description": "A compressed description of where the cost come from for use in\nsmall areas (e.g. on character sheet).",
|
|
2014
|
-
"type": "string",
|
|
2015
|
-
"minLength": 1
|
|
2016
|
-
}
|
|
2017
|
-
},
|
|
2018
|
-
"required": [
|
|
2019
|
-
"default",
|
|
2020
|
-
"compressed"
|
|
2021
|
-
],
|
|
2022
|
-
"additionalProperties": false
|
|
2023
|
-
}
|
|
2024
|
-
},
|
|
2025
|
-
"required": [
|
|
2026
|
-
"description"
|
|
2027
|
-
],
|
|
2028
|
-
"additionalProperties": false
|
|
2029
|
-
}
|
|
2030
|
-
},
|
|
2031
|
-
"minProperties": 1,
|
|
2032
|
-
"additionalProperties": false
|
|
1216
|
+
"note": {
|
|
1217
|
+
"description": "A note, appended to the generated string in parenthesis.",
|
|
1218
|
+
"$ref": "./_ResponsiveText.schema.json#/$defs/ResponsiveTextOptional"
|
|
1219
|
+
}
|
|
1220
|
+
},
|
|
1221
|
+
"required": [
|
|
1222
|
+
"per"
|
|
1223
|
+
],
|
|
1224
|
+
"additionalProperties": false
|
|
1225
|
+
},
|
|
1226
|
+
"ActivationAndHalfIntervalArcaneEnergyCost": {
|
|
1227
|
+
"type": "object",
|
|
1228
|
+
"properties": {
|
|
1229
|
+
"value": {
|
|
1230
|
+
"description": "The AE cost value that has to be payed for activation. Half of this value\nhas to be payed each interval.",
|
|
1231
|
+
"type": "integer",
|
|
1232
|
+
"minimum": 2,
|
|
1233
|
+
"multipleOf": 2
|
|
1234
|
+
},
|
|
1235
|
+
"interval": {
|
|
1236
|
+
"description": "The time interval for which the AE cost `value` has to be paid.",
|
|
1237
|
+
"$ref": "./_ActivatableSkillDuration.schema.json#/$defs/DurationUnitValue"
|
|
1238
|
+
}
|
|
1239
|
+
},
|
|
1240
|
+
"required": [
|
|
1241
|
+
"value",
|
|
1242
|
+
"interval"
|
|
1243
|
+
],
|
|
1244
|
+
"additionalProperties": false
|
|
1245
|
+
},
|
|
1246
|
+
"IndefiniteArcaneEnergyCost": {
|
|
1247
|
+
"type": "object",
|
|
1248
|
+
"properties": {
|
|
1249
|
+
"modifier": {
|
|
1250
|
+
"description": "The indefinite AE cost may be modified by a certain value.",
|
|
1251
|
+
"$ref": "#/$defs/IndefiniteArcaneEnergyCostModifier"
|
|
1252
|
+
},
|
|
1253
|
+
"translations": {
|
|
1254
|
+
"description": "All translations for the entry, identified by IETF language tag (BCP47).",
|
|
1255
|
+
"type": "object",
|
|
1256
|
+
"patternProperties": {
|
|
1257
|
+
"^[a-z]{2}-[A-Z]{2}$": {
|
|
1258
|
+
"$ref": "#/$defs/IndefiniteArcaneEnergyCostTranslation"
|
|
2033
1259
|
}
|
|
2034
1260
|
},
|
|
2035
|
-
"
|
|
2036
|
-
"tag",
|
|
2037
|
-
"modifier",
|
|
2038
|
-
"translations"
|
|
2039
|
-
],
|
|
1261
|
+
"minProperties": 1,
|
|
2040
1262
|
"additionalProperties": false
|
|
2041
|
-
}
|
|
1263
|
+
}
|
|
1264
|
+
},
|
|
1265
|
+
"required": [
|
|
1266
|
+
"modifier",
|
|
1267
|
+
"translations"
|
|
1268
|
+
],
|
|
1269
|
+
"additionalProperties": false
|
|
1270
|
+
},
|
|
1271
|
+
"IndefiniteArcaneEnergyCostArithmetic": {
|
|
1272
|
+
"description": "Defines how the the `value` is set off against the check result.",
|
|
1273
|
+
"oneOf": [
|
|
2042
1274
|
{
|
|
2043
1275
|
"type": "object",
|
|
2044
1276
|
"properties": {
|
|
2045
1277
|
"tag": {
|
|
2046
|
-
"const": "
|
|
2047
|
-
},
|
|
2048
|
-
"interval": {
|
|
2049
|
-
"description": "Specified if the selected AE cost option has to be paid for each time\ninterval.",
|
|
2050
|
-
"type": "object",
|
|
2051
|
-
"properties": {
|
|
2052
|
-
"value": {
|
|
2053
|
-
"description": "The interval itself.",
|
|
2054
|
-
"$ref": "./_ActivatableSkill.schema.json#/definitions/Duration/UnitValue"
|
|
2055
|
-
},
|
|
2056
|
-
"activation_value": {
|
|
2057
|
-
"description": "The AE cost value for activation.",
|
|
2058
|
-
"type": "integer",
|
|
2059
|
-
"minimum": 1
|
|
2060
|
-
},
|
|
2061
|
-
"after_activation": {
|
|
2062
|
-
"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.",
|
|
2063
|
-
"type": "boolean"
|
|
2064
|
-
}
|
|
2065
|
-
},
|
|
2066
|
-
"required": [
|
|
2067
|
-
"value",
|
|
2068
|
-
"activation_value",
|
|
2069
|
-
"after_activation"
|
|
2070
|
-
],
|
|
2071
|
-
"additionalProperties": false
|
|
2072
|
-
},
|
|
2073
|
-
"options": {
|
|
2074
|
-
"description": "The possible AE cost values.",
|
|
2075
|
-
"type": "array",
|
|
2076
|
-
"items": {
|
|
2077
|
-
"type": "object",
|
|
2078
|
-
"properties": {
|
|
2079
|
-
"value": {
|
|
2080
|
-
"description": "A possible AE cost value.",
|
|
2081
|
-
"type": "integer",
|
|
2082
|
-
"minimum": 1
|
|
2083
|
-
},
|
|
2084
|
-
"translations": {
|
|
2085
|
-
"description": "All translations for the entry, identified by IETF language tag\n(BCP47).",
|
|
2086
|
-
"type": "object",
|
|
2087
|
-
"patternProperties": {
|
|
2088
|
-
"^[a-z]{2}-[A-Z]{2}$": {
|
|
2089
|
-
"type": "object",
|
|
2090
|
-
"properties": {
|
|
2091
|
-
"note": {
|
|
2092
|
-
"description": "A note, appended to the generated option string in parenthesis.",
|
|
2093
|
-
"type": "object",
|
|
2094
|
-
"properties": {
|
|
2095
|
-
"default": {
|
|
2096
|
-
"description": "The full note.",
|
|
2097
|
-
"type": "string",
|
|
2098
|
-
"minLength": 1
|
|
2099
|
-
},
|
|
2100
|
-
"compressed": {
|
|
2101
|
-
"description": "A compressed note, if applicable. If not specified it should not\nbe displayed in small location.",
|
|
2102
|
-
"type": "string",
|
|
2103
|
-
"minLength": 1
|
|
2104
|
-
}
|
|
2105
|
-
},
|
|
2106
|
-
"required": [
|
|
2107
|
-
"default"
|
|
2108
|
-
],
|
|
2109
|
-
"additionalProperties": false
|
|
2110
|
-
}
|
|
2111
|
-
},
|
|
2112
|
-
"required": [],
|
|
2113
|
-
"minProperties": 1,
|
|
2114
|
-
"additionalProperties": false
|
|
2115
|
-
}
|
|
2116
|
-
},
|
|
2117
|
-
"minProperties": 1,
|
|
2118
|
-
"additionalProperties": false
|
|
2119
|
-
}
|
|
2120
|
-
},
|
|
2121
|
-
"required": [
|
|
2122
|
-
"value"
|
|
2123
|
-
],
|
|
2124
|
-
"additionalProperties": false
|
|
2125
|
-
}
|
|
1278
|
+
"const": "Add"
|
|
2126
1279
|
}
|
|
2127
1280
|
},
|
|
2128
1281
|
"required": [
|
|
2129
|
-
"tag"
|
|
2130
|
-
"options"
|
|
1282
|
+
"tag"
|
|
2131
1283
|
],
|
|
2132
1284
|
"additionalProperties": false
|
|
2133
1285
|
},
|
|
@@ -2135,63 +1287,159 @@
|
|
|
2135
1287
|
"type": "object",
|
|
2136
1288
|
"properties": {
|
|
2137
1289
|
"tag": {
|
|
2138
|
-
"const": "
|
|
2139
|
-
},
|
|
2140
|
-
"translations": {
|
|
2141
|
-
"description": "All translations for the entry, identified by IETF language tag\n(BCP47).",
|
|
2142
|
-
"type": "object",
|
|
2143
|
-
"patternProperties": {
|
|
2144
|
-
"^[a-z]{2}-[A-Z]{2}$": {
|
|
2145
|
-
"type": "object",
|
|
2146
|
-
"properties": {
|
|
2147
|
-
"note": {
|
|
2148
|
-
"description": "A note, appended to the generated string in parenthesis.",
|
|
2149
|
-
"type": "object",
|
|
2150
|
-
"properties": {
|
|
2151
|
-
"default": {
|
|
2152
|
-
"description": "The full note.",
|
|
2153
|
-
"type": "string",
|
|
2154
|
-
"minLength": 1
|
|
2155
|
-
},
|
|
2156
|
-
"compressed": {
|
|
2157
|
-
"description": "A compressed note, if applicable. If not specified it should not\nbe displayed in small location.",
|
|
2158
|
-
"type": "string",
|
|
2159
|
-
"minLength": 1
|
|
2160
|
-
}
|
|
2161
|
-
},
|
|
2162
|
-
"required": [
|
|
2163
|
-
"default"
|
|
2164
|
-
],
|
|
2165
|
-
"additionalProperties": false
|
|
2166
|
-
}
|
|
2167
|
-
},
|
|
2168
|
-
"required": [],
|
|
2169
|
-
"minProperties": 1,
|
|
2170
|
-
"additionalProperties": false
|
|
2171
|
-
}
|
|
2172
|
-
},
|
|
2173
|
-
"minProperties": 1,
|
|
2174
|
-
"additionalProperties": false
|
|
1290
|
+
"const": "Subtract"
|
|
2175
1291
|
}
|
|
2176
1292
|
},
|
|
2177
1293
|
"required": [
|
|
2178
1294
|
"tag"
|
|
2179
1295
|
],
|
|
2180
1296
|
"additionalProperties": false
|
|
1297
|
+
}
|
|
1298
|
+
]
|
|
1299
|
+
},
|
|
1300
|
+
"IndefiniteArcaneEnergyCostModifier": {
|
|
1301
|
+
"type": "object",
|
|
1302
|
+
"properties": {
|
|
1303
|
+
"arithmetic": {
|
|
1304
|
+
"description": "The arithmetic how to apply the `value` to the `base`.",
|
|
1305
|
+
"$ref": "#/$defs/IndefiniteArcaneEnergyCostArithmetic"
|
|
2181
1306
|
},
|
|
2182
|
-
{
|
|
1307
|
+
"value": {
|
|
1308
|
+
"description": "The value that is applied to the `base` using the defined `arithmetic`.",
|
|
1309
|
+
"type": "integer",
|
|
1310
|
+
"minimum": 1
|
|
1311
|
+
}
|
|
1312
|
+
},
|
|
1313
|
+
"required": [
|
|
1314
|
+
"arithmetic",
|
|
1315
|
+
"value"
|
|
1316
|
+
],
|
|
1317
|
+
"additionalProperties": false
|
|
1318
|
+
},
|
|
1319
|
+
"IndefiniteArcaneEnergyCostTranslation": {
|
|
1320
|
+
"type": "object",
|
|
1321
|
+
"properties": {
|
|
1322
|
+
"description": {
|
|
1323
|
+
"description": "A description of where the cost come from.",
|
|
1324
|
+
"$ref": "./_ResponsiveText.schema.json#/$defs/ResponsiveText"
|
|
1325
|
+
}
|
|
1326
|
+
},
|
|
1327
|
+
"required": [
|
|
1328
|
+
"description"
|
|
1329
|
+
],
|
|
1330
|
+
"additionalProperties": false
|
|
1331
|
+
},
|
|
1332
|
+
"ArcaneEnergyCostDisjunction": {
|
|
1333
|
+
"type": "object",
|
|
1334
|
+
"properties": {
|
|
1335
|
+
"interval": {
|
|
1336
|
+
"description": "Specified if the selected AE cost option has to be paid for each time\ninterval.",
|
|
1337
|
+
"$ref": "#/$defs/ArcaneEnergyCostDisjunctionInterval"
|
|
1338
|
+
},
|
|
1339
|
+
"options": {
|
|
1340
|
+
"description": "The possible AE cost values.",
|
|
1341
|
+
"type": "array",
|
|
1342
|
+
"items": {
|
|
1343
|
+
"$ref": "#/$defs/ArcaneEnergyCostDisjunctionOption"
|
|
1344
|
+
}
|
|
1345
|
+
}
|
|
1346
|
+
},
|
|
1347
|
+
"required": [
|
|
1348
|
+
"options"
|
|
1349
|
+
],
|
|
1350
|
+
"additionalProperties": false
|
|
1351
|
+
},
|
|
1352
|
+
"ArcaneEnergyCostDisjunctionInterval": {
|
|
1353
|
+
"type": "object",
|
|
1354
|
+
"properties": {
|
|
1355
|
+
"value": {
|
|
1356
|
+
"description": "The interval itself.",
|
|
1357
|
+
"$ref": "./_ActivatableSkillDuration.schema.json#/$defs/DurationUnitValue"
|
|
1358
|
+
},
|
|
1359
|
+
"activation_value": {
|
|
1360
|
+
"description": "The AE cost value for activation.",
|
|
1361
|
+
"type": "integer",
|
|
1362
|
+
"minimum": 1
|
|
1363
|
+
},
|
|
1364
|
+
"after_activation": {
|
|
1365
|
+
"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.",
|
|
1366
|
+
"type": "boolean"
|
|
1367
|
+
}
|
|
1368
|
+
},
|
|
1369
|
+
"required": [
|
|
1370
|
+
"value",
|
|
1371
|
+
"activation_value",
|
|
1372
|
+
"after_activation"
|
|
1373
|
+
],
|
|
1374
|
+
"additionalProperties": false
|
|
1375
|
+
},
|
|
1376
|
+
"ArcaneEnergyCostDisjunctionOption": {
|
|
1377
|
+
"type": "object",
|
|
1378
|
+
"properties": {
|
|
1379
|
+
"value": {
|
|
1380
|
+
"description": "A possible AE cost value.",
|
|
1381
|
+
"type": "integer",
|
|
1382
|
+
"minimum": 1
|
|
1383
|
+
},
|
|
1384
|
+
"translations": {
|
|
1385
|
+
"description": "All translations for the entry, identified by IETF language tag (BCP47).",
|
|
2183
1386
|
"type": "object",
|
|
2184
|
-
"
|
|
2185
|
-
"
|
|
2186
|
-
"
|
|
1387
|
+
"patternProperties": {
|
|
1388
|
+
"^[a-z]{2}-[A-Z]{2}$": {
|
|
1389
|
+
"$ref": "#/$defs/ArcaneEnergyCostDisjunctionOptionTranslation"
|
|
2187
1390
|
}
|
|
2188
1391
|
},
|
|
2189
|
-
"
|
|
2190
|
-
"tag"
|
|
2191
|
-
],
|
|
1392
|
+
"minProperties": 1,
|
|
2192
1393
|
"additionalProperties": false
|
|
2193
1394
|
}
|
|
2194
|
-
|
|
1395
|
+
},
|
|
1396
|
+
"required": [
|
|
1397
|
+
"value"
|
|
1398
|
+
],
|
|
1399
|
+
"additionalProperties": false
|
|
1400
|
+
},
|
|
1401
|
+
"ArcaneEnergyCostDisjunctionOptionTranslation": {
|
|
1402
|
+
"type": "object",
|
|
1403
|
+
"properties": {
|
|
1404
|
+
"note": {
|
|
1405
|
+
"description": "A note, appended to the generated option string in parenthesis.",
|
|
1406
|
+
"$ref": "./_ResponsiveText.schema.json#/$defs/ResponsiveTextOptional"
|
|
1407
|
+
}
|
|
1408
|
+
},
|
|
1409
|
+
"required": [],
|
|
1410
|
+
"minProperties": 1,
|
|
1411
|
+
"additionalProperties": false
|
|
1412
|
+
},
|
|
1413
|
+
"NoArcaneEnergyCost": {
|
|
1414
|
+
"type": "object",
|
|
1415
|
+
"properties": {
|
|
1416
|
+
"translations": {
|
|
1417
|
+
"description": "All translations for the entry, identified by IETF language tag (BCP47).",
|
|
1418
|
+
"type": "object",
|
|
1419
|
+
"patternProperties": {
|
|
1420
|
+
"^[a-z]{2}-[A-Z]{2}$": {
|
|
1421
|
+
"$ref": "#/$defs/NoArcaneEnergyCostTranslation"
|
|
1422
|
+
}
|
|
1423
|
+
},
|
|
1424
|
+
"minProperties": 1,
|
|
1425
|
+
"additionalProperties": false
|
|
1426
|
+
}
|
|
1427
|
+
},
|
|
1428
|
+
"required": [],
|
|
1429
|
+
"minProperties": 1,
|
|
1430
|
+
"additionalProperties": false
|
|
1431
|
+
},
|
|
1432
|
+
"NoArcaneEnergyCostTranslation": {
|
|
1433
|
+
"type": "object",
|
|
1434
|
+
"properties": {
|
|
1435
|
+
"note": {
|
|
1436
|
+
"description": "A note, appended to the generated string in parenthesis.",
|
|
1437
|
+
"$ref": "./_ResponsiveText.schema.json#/$defs/ResponsiveTextOptional"
|
|
1438
|
+
}
|
|
1439
|
+
},
|
|
1440
|
+
"required": [],
|
|
1441
|
+
"minProperties": 1,
|
|
1442
|
+
"additionalProperties": false
|
|
2195
1443
|
},
|
|
2196
1444
|
"Volume": {
|
|
2197
1445
|
"description": "The volume points the enchantment needs.",
|
|
@@ -2202,15 +1450,13 @@
|
|
|
2202
1450
|
"tag": {
|
|
2203
1451
|
"const": "Fixed"
|
|
2204
1452
|
},
|
|
2205
|
-
"
|
|
2206
|
-
"
|
|
2207
|
-
"type": "integer",
|
|
2208
|
-
"minimum": 0
|
|
1453
|
+
"fixed": {
|
|
1454
|
+
"$ref": "#/$defs/FixedVolume"
|
|
2209
1455
|
}
|
|
2210
1456
|
},
|
|
2211
1457
|
"required": [
|
|
2212
1458
|
"tag",
|
|
2213
|
-
"
|
|
1459
|
+
"fixed"
|
|
2214
1460
|
],
|
|
2215
1461
|
"additionalProperties": false
|
|
2216
1462
|
},
|
|
@@ -2220,15 +1466,13 @@
|
|
|
2220
1466
|
"tag": {
|
|
2221
1467
|
"const": "PerLevel"
|
|
2222
1468
|
},
|
|
2223
|
-
"
|
|
2224
|
-
"
|
|
2225
|
-
"type": "integer",
|
|
2226
|
-
"minimum": 1
|
|
1469
|
+
"per_level": {
|
|
1470
|
+
"$ref": "#/$defs/VolumePerLevel"
|
|
2227
1471
|
}
|
|
2228
1472
|
},
|
|
2229
1473
|
"required": [
|
|
2230
1474
|
"tag",
|
|
2231
|
-
"
|
|
1475
|
+
"per_level"
|
|
2232
1476
|
],
|
|
2233
1477
|
"additionalProperties": false
|
|
2234
1478
|
},
|
|
@@ -2238,29 +1482,13 @@
|
|
|
2238
1482
|
"tag": {
|
|
2239
1483
|
"const": "ByLevel"
|
|
2240
1484
|
},
|
|
2241
|
-
"
|
|
2242
|
-
"
|
|
2243
|
-
"type": "array",
|
|
2244
|
-
"items": {
|
|
2245
|
-
"type": "object",
|
|
2246
|
-
"properties": {
|
|
2247
|
-
"points": {
|
|
2248
|
-
"description": "The volume points for this level.",
|
|
2249
|
-
"type": "integer",
|
|
2250
|
-
"minimum": 0
|
|
2251
|
-
}
|
|
2252
|
-
},
|
|
2253
|
-
"required": [
|
|
2254
|
-
"points"
|
|
2255
|
-
],
|
|
2256
|
-
"additionalProperties": false
|
|
2257
|
-
},
|
|
2258
|
-
"minItems": 2
|
|
1485
|
+
"by_level": {
|
|
1486
|
+
"$ref": "#/$defs/VolumeByLevel"
|
|
2259
1487
|
}
|
|
2260
1488
|
},
|
|
2261
1489
|
"required": [
|
|
2262
1490
|
"tag",
|
|
2263
|
-
"
|
|
1491
|
+
"by_level"
|
|
2264
1492
|
],
|
|
2265
1493
|
"additionalProperties": false
|
|
2266
1494
|
},
|
|
@@ -2271,7 +1499,7 @@
|
|
|
2271
1499
|
"const": "Map"
|
|
2272
1500
|
},
|
|
2273
1501
|
"map": {
|
|
2274
|
-
"$ref": "
|
|
1502
|
+
"$ref": "#/$defs/VolumeMap"
|
|
2275
1503
|
}
|
|
2276
1504
|
},
|
|
2277
1505
|
"required": [
|
|
@@ -2282,6 +1510,65 @@
|
|
|
2282
1510
|
}
|
|
2283
1511
|
]
|
|
2284
1512
|
},
|
|
1513
|
+
"FixedVolume": {
|
|
1514
|
+
"type": "object",
|
|
1515
|
+
"properties": {
|
|
1516
|
+
"points": {
|
|
1517
|
+
"description": "The volume points.",
|
|
1518
|
+
"type": "integer",
|
|
1519
|
+
"minimum": 0
|
|
1520
|
+
}
|
|
1521
|
+
},
|
|
1522
|
+
"required": [
|
|
1523
|
+
"points"
|
|
1524
|
+
],
|
|
1525
|
+
"additionalProperties": false
|
|
1526
|
+
},
|
|
1527
|
+
"VolumePerLevel": {
|
|
1528
|
+
"type": "object",
|
|
1529
|
+
"properties": {
|
|
1530
|
+
"points": {
|
|
1531
|
+
"description": "The volume points per level.",
|
|
1532
|
+
"type": "integer",
|
|
1533
|
+
"minimum": 1
|
|
1534
|
+
}
|
|
1535
|
+
},
|
|
1536
|
+
"required": [
|
|
1537
|
+
"points"
|
|
1538
|
+
],
|
|
1539
|
+
"additionalProperties": false
|
|
1540
|
+
},
|
|
1541
|
+
"VolumeByLevel": {
|
|
1542
|
+
"type": "object",
|
|
1543
|
+
"properties": {
|
|
1544
|
+
"list": {
|
|
1545
|
+
"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.",
|
|
1546
|
+
"type": "array",
|
|
1547
|
+
"items": {
|
|
1548
|
+
"$ref": "#/$defs/VolumeByLevelItem"
|
|
1549
|
+
},
|
|
1550
|
+
"minItems": 2
|
|
1551
|
+
}
|
|
1552
|
+
},
|
|
1553
|
+
"required": [
|
|
1554
|
+
"list"
|
|
1555
|
+
],
|
|
1556
|
+
"additionalProperties": false
|
|
1557
|
+
},
|
|
1558
|
+
"VolumeByLevelItem": {
|
|
1559
|
+
"type": "object",
|
|
1560
|
+
"properties": {
|
|
1561
|
+
"points": {
|
|
1562
|
+
"description": "The volume points for this level.",
|
|
1563
|
+
"type": "integer",
|
|
1564
|
+
"minimum": 0
|
|
1565
|
+
}
|
|
1566
|
+
},
|
|
1567
|
+
"required": [
|
|
1568
|
+
"points"
|
|
1569
|
+
],
|
|
1570
|
+
"additionalProperties": false
|
|
1571
|
+
},
|
|
2285
1572
|
"VolumeMap": {
|
|
2286
1573
|
"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.",
|
|
2287
1574
|
"type": "object",
|
|
@@ -2290,7 +1577,7 @@
|
|
|
2290
1577
|
"description": "The possible costs and associated labels.",
|
|
2291
1578
|
"type": "array",
|
|
2292
1579
|
"items": {
|
|
2293
|
-
"$ref": "
|
|
1580
|
+
"$ref": "#/$defs/VolumeMapOption"
|
|
2294
1581
|
},
|
|
2295
1582
|
"minItems": 2
|
|
2296
1583
|
},
|
|
@@ -2299,23 +1586,7 @@
|
|
|
2299
1586
|
"type": "object",
|
|
2300
1587
|
"patternProperties": {
|
|
2301
1588
|
"^[a-z]{2}-[A-Z]{2}$": {
|
|
2302
|
-
"
|
|
2303
|
-
"properties": {
|
|
2304
|
-
"list_prepend": {
|
|
2305
|
-
"description": "Place a string between the `for` and the grouped map option labels.",
|
|
2306
|
-
"type": "string"
|
|
2307
|
-
},
|
|
2308
|
-
"list_append": {
|
|
2309
|
-
"description": "Place a string after the grouped map option labels.",
|
|
2310
|
-
"type": "string"
|
|
2311
|
-
},
|
|
2312
|
-
"replacement": {
|
|
2313
|
-
"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.",
|
|
2314
|
-
"type": "string"
|
|
2315
|
-
}
|
|
2316
|
-
},
|
|
2317
|
-
"required": [],
|
|
2318
|
-
"additionalProperties": false
|
|
1589
|
+
"$ref": "#/$defs/VolumeMapTranslation"
|
|
2319
1590
|
}
|
|
2320
1591
|
},
|
|
2321
1592
|
"minProperties": 1,
|
|
@@ -2327,6 +1598,26 @@
|
|
|
2327
1598
|
],
|
|
2328
1599
|
"additionalProperties": false
|
|
2329
1600
|
},
|
|
1601
|
+
"VolumeMapTranslation": {
|
|
1602
|
+
"type": "object",
|
|
1603
|
+
"properties": {
|
|
1604
|
+
"list_prepend": {
|
|
1605
|
+
"description": "Place a string between the `for` and the grouped map option labels.",
|
|
1606
|
+
"type": "string"
|
|
1607
|
+
},
|
|
1608
|
+
"list_append": {
|
|
1609
|
+
"description": "Place a string after the grouped map option labels.",
|
|
1610
|
+
"type": "string"
|
|
1611
|
+
},
|
|
1612
|
+
"replacement": {
|
|
1613
|
+
"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.",
|
|
1614
|
+
"type": "string"
|
|
1615
|
+
}
|
|
1616
|
+
},
|
|
1617
|
+
"required": [],
|
|
1618
|
+
"minProperties": 1,
|
|
1619
|
+
"additionalProperties": false
|
|
1620
|
+
},
|
|
2330
1621
|
"VolumeMapOption": {
|
|
2331
1622
|
"type": "object",
|
|
2332
1623
|
"properties": {
|
|
@@ -2339,17 +1630,7 @@
|
|
|
2339
1630
|
"description": "Links to the options this volume specification is meant for.",
|
|
2340
1631
|
"type": "array",
|
|
2341
1632
|
"items": {
|
|
2342
|
-
"
|
|
2343
|
-
"properties": {
|
|
2344
|
-
"id": {
|
|
2345
|
-
"description": "The option's identifier.",
|
|
2346
|
-
"$ref": "./_Identifier.schema.json#/definitions/VolumePointsOptionReferenceIdentifier"
|
|
2347
|
-
}
|
|
2348
|
-
},
|
|
2349
|
-
"required": [
|
|
2350
|
-
"id"
|
|
2351
|
-
],
|
|
2352
|
-
"additionalProperties": false
|
|
1633
|
+
"$ref": "#/$defs/VolumeMapOptionAssociatedOption"
|
|
2353
1634
|
}
|
|
2354
1635
|
},
|
|
2355
1636
|
"translations": {
|
|
@@ -2357,23 +1638,7 @@
|
|
|
2357
1638
|
"type": "object",
|
|
2358
1639
|
"patternProperties": {
|
|
2359
1640
|
"^[a-z]{2}-[A-Z]{2}$": {
|
|
2360
|
-
"
|
|
2361
|
-
"properties": {
|
|
2362
|
-
"label": {
|
|
2363
|
-
"description": "The description of the option for cost string generation.",
|
|
2364
|
-
"type": "string",
|
|
2365
|
-
"minLength": 1
|
|
2366
|
-
},
|
|
2367
|
-
"label_standalone": {
|
|
2368
|
-
"description": "The description of the option if used standalone. Only used if\ndifferent from `label`.",
|
|
2369
|
-
"type": "string",
|
|
2370
|
-
"minLength": 1
|
|
2371
|
-
}
|
|
2372
|
-
},
|
|
2373
|
-
"required": [
|
|
2374
|
-
"label"
|
|
2375
|
-
],
|
|
2376
|
-
"additionalProperties": false
|
|
1641
|
+
"$ref": "#/$defs/VolumeMapOptionTranslation"
|
|
2377
1642
|
}
|
|
2378
1643
|
},
|
|
2379
1644
|
"minProperties": 1,
|
|
@@ -2386,6 +1651,36 @@
|
|
|
2386
1651
|
],
|
|
2387
1652
|
"additionalProperties": false
|
|
2388
1653
|
},
|
|
1654
|
+
"VolumeMapOptionAssociatedOption": {
|
|
1655
|
+
"type": "object",
|
|
1656
|
+
"properties": {
|
|
1657
|
+
"id": {
|
|
1658
|
+
"description": "The option's identifier.",
|
|
1659
|
+
"$ref": "./_Identifier.schema.json#/$defs/VolumePointsOptionReferenceIdentifier"
|
|
1660
|
+
}
|
|
1661
|
+
},
|
|
1662
|
+
"required": [
|
|
1663
|
+
"id"
|
|
1664
|
+
],
|
|
1665
|
+
"additionalProperties": false
|
|
1666
|
+
},
|
|
1667
|
+
"VolumeMapOptionTranslation": {
|
|
1668
|
+
"type": "object",
|
|
1669
|
+
"properties": {
|
|
1670
|
+
"label": {
|
|
1671
|
+
"description": "The description of the option for cost string generation.",
|
|
1672
|
+
"$ref": "./_NonEmptyString.schema.json#/$defs/NonEmptyString"
|
|
1673
|
+
},
|
|
1674
|
+
"label_standalone": {
|
|
1675
|
+
"description": "The description of the option if used standalone. Only used if\ndifferent from `label`.",
|
|
1676
|
+
"$ref": "./_NonEmptyString.schema.json#/$defs/NonEmptyString"
|
|
1677
|
+
}
|
|
1678
|
+
},
|
|
1679
|
+
"required": [
|
|
1680
|
+
"label"
|
|
1681
|
+
],
|
|
1682
|
+
"additionalProperties": false
|
|
1683
|
+
},
|
|
2389
1684
|
"BindingCost": {
|
|
2390
1685
|
"description": "The binding cost for an enchantment.",
|
|
2391
1686
|
"oneOf": [
|
|
@@ -2395,15 +1690,13 @@
|
|
|
2395
1690
|
"tag": {
|
|
2396
1691
|
"const": "Fixed"
|
|
2397
1692
|
},
|
|
2398
|
-
"
|
|
2399
|
-
"
|
|
2400
|
-
"type": "integer",
|
|
2401
|
-
"minimum": 1
|
|
1693
|
+
"fixed": {
|
|
1694
|
+
"$ref": "#/$defs/FixedBindingCost"
|
|
2402
1695
|
}
|
|
2403
1696
|
},
|
|
2404
1697
|
"required": [
|
|
2405
1698
|
"tag",
|
|
2406
|
-
"
|
|
1699
|
+
"fixed"
|
|
2407
1700
|
],
|
|
2408
1701
|
"additionalProperties": false
|
|
2409
1702
|
},
|
|
@@ -2413,15 +1706,13 @@
|
|
|
2413
1706
|
"tag": {
|
|
2414
1707
|
"const": "PerLevel"
|
|
2415
1708
|
},
|
|
2416
|
-
"
|
|
2417
|
-
"
|
|
2418
|
-
"type": "integer",
|
|
2419
|
-
"minimum": 1
|
|
1709
|
+
"per_level": {
|
|
1710
|
+
"$ref": "#/$defs/BindingCostPerLevel"
|
|
2420
1711
|
}
|
|
2421
1712
|
},
|
|
2422
1713
|
"required": [
|
|
2423
1714
|
"tag",
|
|
2424
|
-
"
|
|
1715
|
+
"per_level"
|
|
2425
1716
|
],
|
|
2426
1717
|
"additionalProperties": false
|
|
2427
1718
|
},
|
|
@@ -2432,7 +1723,7 @@
|
|
|
2432
1723
|
"const": "Map"
|
|
2433
1724
|
},
|
|
2434
1725
|
"map": {
|
|
2435
|
-
"$ref": "
|
|
1726
|
+
"$ref": "#/$defs/BindingCostMap"
|
|
2436
1727
|
}
|
|
2437
1728
|
},
|
|
2438
1729
|
"required": [
|
|
@@ -2441,7 +1732,35 @@
|
|
|
2441
1732
|
],
|
|
2442
1733
|
"additionalProperties": false
|
|
2443
1734
|
}
|
|
2444
|
-
]
|
|
1735
|
+
]
|
|
1736
|
+
},
|
|
1737
|
+
"FixedBindingCost": {
|
|
1738
|
+
"type": "object",
|
|
1739
|
+
"properties": {
|
|
1740
|
+
"permanent_value": {
|
|
1741
|
+
"description": "The permanent AE cost.\n\nIf the enchantment has multiple levels, it is only applied for the first\nlevel.",
|
|
1742
|
+
"type": "integer",
|
|
1743
|
+
"minimum": 1
|
|
1744
|
+
}
|
|
1745
|
+
},
|
|
1746
|
+
"required": [
|
|
1747
|
+
"permanent_value"
|
|
1748
|
+
],
|
|
1749
|
+
"additionalProperties": false
|
|
1750
|
+
},
|
|
1751
|
+
"BindingCostPerLevel": {
|
|
1752
|
+
"type": "object",
|
|
1753
|
+
"properties": {
|
|
1754
|
+
"permanent_value": {
|
|
1755
|
+
"description": "The permanent AE cost per level.",
|
|
1756
|
+
"type": "integer",
|
|
1757
|
+
"minimum": 1
|
|
1758
|
+
}
|
|
1759
|
+
},
|
|
1760
|
+
"required": [
|
|
1761
|
+
"permanent_value"
|
|
1762
|
+
],
|
|
1763
|
+
"additionalProperties": false
|
|
2445
1764
|
},
|
|
2446
1765
|
"BindingCostMap": {
|
|
2447
1766
|
"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.",
|
|
@@ -2451,7 +1770,7 @@
|
|
|
2451
1770
|
"description": "The possible costs and associated labels.",
|
|
2452
1771
|
"type": "array",
|
|
2453
1772
|
"items": {
|
|
2454
|
-
"$ref": "
|
|
1773
|
+
"$ref": "#/$defs/VolumeMapOption"
|
|
2455
1774
|
},
|
|
2456
1775
|
"minItems": 2
|
|
2457
1776
|
},
|
|
@@ -2460,23 +1779,7 @@
|
|
|
2460
1779
|
"type": "object",
|
|
2461
1780
|
"patternProperties": {
|
|
2462
1781
|
"^[a-z]{2}-[A-Z]{2}$": {
|
|
2463
|
-
"
|
|
2464
|
-
"properties": {
|
|
2465
|
-
"list_prepend": {
|
|
2466
|
-
"description": "Place a string between the `for` and the grouped map option labels.",
|
|
2467
|
-
"type": "string"
|
|
2468
|
-
},
|
|
2469
|
-
"list_append": {
|
|
2470
|
-
"description": "Place a string after the grouped map option labels.",
|
|
2471
|
-
"type": "string"
|
|
2472
|
-
},
|
|
2473
|
-
"replacement": {
|
|
2474
|
-
"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.",
|
|
2475
|
-
"type": "string"
|
|
2476
|
-
}
|
|
2477
|
-
},
|
|
2478
|
-
"required": [],
|
|
2479
|
-
"additionalProperties": false
|
|
1782
|
+
"$ref": "#/$defs/BindingCostMapTranslation"
|
|
2480
1783
|
}
|
|
2481
1784
|
},
|
|
2482
1785
|
"minProperties": 1,
|
|
@@ -2488,6 +1791,26 @@
|
|
|
2488
1791
|
],
|
|
2489
1792
|
"additionalProperties": false
|
|
2490
1793
|
},
|
|
1794
|
+
"BindingCostMapTranslation": {
|
|
1795
|
+
"type": "object",
|
|
1796
|
+
"properties": {
|
|
1797
|
+
"list_prepend": {
|
|
1798
|
+
"description": "Place a string between the `for` and the grouped map option labels.",
|
|
1799
|
+
"$ref": "./_NonEmptyString.schema.json#/$defs/NonEmptyString"
|
|
1800
|
+
},
|
|
1801
|
+
"list_append": {
|
|
1802
|
+
"description": "Place a string after the grouped map option labels.",
|
|
1803
|
+
"$ref": "./_NonEmptyString.schema.json#/$defs/NonEmptyString"
|
|
1804
|
+
},
|
|
1805
|
+
"replacement": {
|
|
1806
|
+
"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.",
|
|
1807
|
+
"$ref": "./_NonEmptyString.schema.json#/$defs/NonEmptyString"
|
|
1808
|
+
}
|
|
1809
|
+
},
|
|
1810
|
+
"required": [],
|
|
1811
|
+
"minProperties": 1,
|
|
1812
|
+
"additionalProperties": false
|
|
1813
|
+
},
|
|
2491
1814
|
"BindingCostMapOption": {
|
|
2492
1815
|
"type": "object",
|
|
2493
1816
|
"properties": {
|
|
@@ -2501,23 +1824,7 @@
|
|
|
2501
1824
|
"type": "object",
|
|
2502
1825
|
"patternProperties": {
|
|
2503
1826
|
"^[a-z]{2}-[A-Z]{2}$": {
|
|
2504
|
-
"
|
|
2505
|
-
"properties": {
|
|
2506
|
-
"label": {
|
|
2507
|
-
"description": "The description of the option for cost string generation.",
|
|
2508
|
-
"type": "string",
|
|
2509
|
-
"minLength": 1
|
|
2510
|
-
},
|
|
2511
|
-
"label_standalone": {
|
|
2512
|
-
"description": "The description of the option if used standalone. Only used if\ndifferent from `label`.",
|
|
2513
|
-
"type": "string",
|
|
2514
|
-
"minLength": 1
|
|
2515
|
-
}
|
|
2516
|
-
},
|
|
2517
|
-
"required": [
|
|
2518
|
-
"label"
|
|
2519
|
-
],
|
|
2520
|
-
"additionalProperties": false
|
|
1827
|
+
"$ref": "#/$defs/BindingCostMapOptionTranslation"
|
|
2521
1828
|
}
|
|
2522
1829
|
},
|
|
2523
1830
|
"minProperties": 1,
|
|
@@ -2529,6 +1836,23 @@
|
|
|
2529
1836
|
],
|
|
2530
1837
|
"additionalProperties": false
|
|
2531
1838
|
},
|
|
1839
|
+
"BindingCostMapOptionTranslation": {
|
|
1840
|
+
"type": "object",
|
|
1841
|
+
"properties": {
|
|
1842
|
+
"label": {
|
|
1843
|
+
"description": "The description of the option for cost string generation.",
|
|
1844
|
+
"$ref": "./_NonEmptyString.schema.json#/$defs/NonEmptyString"
|
|
1845
|
+
},
|
|
1846
|
+
"label_standalone": {
|
|
1847
|
+
"description": "The description of the option if used standalone. Only used if\ndifferent from `label`.",
|
|
1848
|
+
"$ref": "./_NonEmptyString.schema.json#/$defs/NonEmptyString"
|
|
1849
|
+
}
|
|
1850
|
+
},
|
|
1851
|
+
"required": [
|
|
1852
|
+
"label"
|
|
1853
|
+
],
|
|
1854
|
+
"additionalProperties": false
|
|
1855
|
+
},
|
|
2532
1856
|
"Property": {
|
|
2533
1857
|
"description": "The magic property's identifier. `DependingOnProperty` can only be used if\nthe special ability has an option to select a property.",
|
|
2534
1858
|
"oneOf": [
|
|
@@ -2536,7 +1860,7 @@
|
|
|
2536
1860
|
"type": "object",
|
|
2537
1861
|
"properties": {
|
|
2538
1862
|
"tag": {
|
|
2539
|
-
"const": "
|
|
1863
|
+
"const": "DependingOnSelection"
|
|
2540
1864
|
}
|
|
2541
1865
|
},
|
|
2542
1866
|
"required": [
|
|
@@ -2550,24 +1874,21 @@
|
|
|
2550
1874
|
"tag": {
|
|
2551
1875
|
"const": "Fixed"
|
|
2552
1876
|
},
|
|
2553
|
-
"
|
|
2554
|
-
"
|
|
2555
|
-
"type": "integer",
|
|
2556
|
-
"minimum": 1
|
|
1877
|
+
"fixed": {
|
|
1878
|
+
"$ref": "./_SimpleReferences.schema.json#/$defs/PropertyReference"
|
|
2557
1879
|
}
|
|
2558
1880
|
},
|
|
2559
1881
|
"required": [
|
|
2560
1882
|
"tag",
|
|
2561
|
-
"
|
|
1883
|
+
"fixed"
|
|
2562
1884
|
],
|
|
2563
1885
|
"additionalProperties": false
|
|
2564
1886
|
}
|
|
2565
1887
|
]
|
|
2566
1888
|
},
|
|
2567
1889
|
"Aspect": {
|
|
2568
|
-
"description": "The blessed aspect
|
|
2569
|
-
"
|
|
2570
|
-
"minimum": 1
|
|
1890
|
+
"description": "The blessed aspect.",
|
|
1891
|
+
"$ref": "./_SimpleReferences.schema.json#/$defs/AspectReference"
|
|
2571
1892
|
},
|
|
2572
1893
|
"AdvancedSpecialAbility": {
|
|
2573
1894
|
"description": "A reference to an advanced special ability.",
|
|
@@ -2578,15 +1899,13 @@
|
|
|
2578
1899
|
"tag": {
|
|
2579
1900
|
"const": "General"
|
|
2580
1901
|
},
|
|
2581
|
-
"
|
|
2582
|
-
"
|
|
2583
|
-
"type": "integer",
|
|
2584
|
-
"minimum": 1
|
|
1902
|
+
"general": {
|
|
1903
|
+
"$ref": "./_SimpleReferences.schema.json#/$defs/AdvancedSpecialAbilityReference"
|
|
2585
1904
|
}
|
|
2586
1905
|
},
|
|
2587
1906
|
"required": [
|
|
2588
1907
|
"tag",
|
|
2589
|
-
"
|
|
1908
|
+
"general"
|
|
2590
1909
|
],
|
|
2591
1910
|
"additionalProperties": false
|
|
2592
1911
|
},
|
|
@@ -2596,24 +1915,13 @@
|
|
|
2596
1915
|
"tag": {
|
|
2597
1916
|
"const": "RestrictOptions"
|
|
2598
1917
|
},
|
|
2599
|
-
"
|
|
2600
|
-
"
|
|
2601
|
-
"type": "integer",
|
|
2602
|
-
"minimum": 1
|
|
2603
|
-
},
|
|
2604
|
-
"option": {
|
|
2605
|
-
"description": "Specify the select option(s) that only are allowed for the referenced\nadvanced special ability; others are disallowed.",
|
|
2606
|
-
"type": "array",
|
|
2607
|
-
"items": {
|
|
2608
|
-
"$ref": "./_Identifier.schema.json#/definitions/AdvancedSpecialAbilityRestrictedOptionIdentifier"
|
|
2609
|
-
},
|
|
2610
|
-
"minItems": 1
|
|
1918
|
+
"restrict_options": {
|
|
1919
|
+
"$ref": "#/$defs/RestrictAdvancedSpecialAbilityOptions"
|
|
2611
1920
|
}
|
|
2612
1921
|
},
|
|
2613
1922
|
"required": [
|
|
2614
1923
|
"tag",
|
|
2615
|
-
"
|
|
2616
|
-
"option"
|
|
1924
|
+
"restrict_options"
|
|
2617
1925
|
],
|
|
2618
1926
|
"additionalProperties": false
|
|
2619
1927
|
},
|
|
@@ -2623,42 +1931,13 @@
|
|
|
2623
1931
|
"tag": {
|
|
2624
1932
|
"const": "OneOf"
|
|
2625
1933
|
},
|
|
2626
|
-
"
|
|
2627
|
-
"
|
|
2628
|
-
"type": "object",
|
|
2629
|
-
"properties": {
|
|
2630
|
-
"id": {
|
|
2631
|
-
"description": "The advanced special ability's numeric identifier.",
|
|
2632
|
-
"type": "integer",
|
|
2633
|
-
"minimum": 1
|
|
2634
|
-
}
|
|
2635
|
-
},
|
|
2636
|
-
"required": [
|
|
2637
|
-
"id"
|
|
2638
|
-
],
|
|
2639
|
-
"additionalProperties": false
|
|
2640
|
-
},
|
|
2641
|
-
"is_selection_required_on_purchase": {
|
|
2642
|
-
"description": "Do have to choose on when buying the special ability? Otherwise the\ndecision can be made later.",
|
|
2643
|
-
"type": "boolean"
|
|
2644
|
-
},
|
|
2645
|
-
"option": {
|
|
2646
|
-
"description": "Specify the select option(s) that only are allowed for the referenced\nadvanced special ability; others are disallowed.",
|
|
2647
|
-
"type": "array",
|
|
2648
|
-
"items": {
|
|
2649
|
-
"$ref": "./_Identifier.schema.json#/definitions/AdvancedSpecialAbilityRestrictedOptionIdentifier"
|
|
2650
|
-
},
|
|
2651
|
-
"minItems": 1
|
|
2652
|
-
},
|
|
2653
|
-
"display_option": {
|
|
2654
|
-
"$ref": "./prerequisites/DisplayOption.schema.json#/definitions/DisplayOption"
|
|
1934
|
+
"one_of": {
|
|
1935
|
+
"$ref": "#/$defs/OneOfAdvancedSpecialAbilityOptions"
|
|
2655
1936
|
}
|
|
2656
1937
|
},
|
|
2657
1938
|
"required": [
|
|
2658
1939
|
"tag",
|
|
2659
|
-
"
|
|
2660
|
-
"is_selection_required_on_purchase",
|
|
2661
|
-
"option"
|
|
1940
|
+
"one_of"
|
|
2662
1941
|
],
|
|
2663
1942
|
"additionalProperties": false
|
|
2664
1943
|
},
|
|
@@ -2668,88 +1947,124 @@
|
|
|
2668
1947
|
"tag": {
|
|
2669
1948
|
"const": "DeriveFromExternalOption"
|
|
2670
1949
|
},
|
|
2671
|
-
"
|
|
2672
|
-
"
|
|
2673
|
-
"$ref": "#/definitions/AdvancedSpecialAbilityDerivedExternalEntryId"
|
|
2674
|
-
},
|
|
2675
|
-
"mappings": {
|
|
2676
|
-
"type": "array",
|
|
2677
|
-
"items": {
|
|
2678
|
-
"type": "object",
|
|
2679
|
-
"properties": {
|
|
2680
|
-
"from_option": {
|
|
2681
|
-
"description": "The select option's identifier.",
|
|
2682
|
-
"$ref": "#/definitions/AdvancedSpecialAbilityDerivedExternalEntryOptionId"
|
|
2683
|
-
},
|
|
2684
|
-
"to_advanced": {
|
|
2685
|
-
"description": "The advanced special ability's identifier.",
|
|
2686
|
-
"type": "object",
|
|
2687
|
-
"properties": {
|
|
2688
|
-
"id": {
|
|
2689
|
-
"description": "The advanced special ability's numeric identifier.",
|
|
2690
|
-
"type": "integer",
|
|
2691
|
-
"minimum": 1
|
|
2692
|
-
}
|
|
2693
|
-
},
|
|
2694
|
-
"required": [
|
|
2695
|
-
"id"
|
|
2696
|
-
],
|
|
2697
|
-
"additionalProperties": false
|
|
2698
|
-
}
|
|
2699
|
-
},
|
|
2700
|
-
"required": [
|
|
2701
|
-
"from_option",
|
|
2702
|
-
"to_advanced"
|
|
2703
|
-
],
|
|
2704
|
-
"additionalProperties": false
|
|
2705
|
-
},
|
|
2706
|
-
"minItems": 0
|
|
2707
|
-
},
|
|
2708
|
-
"display_option": {
|
|
2709
|
-
"$ref": "./prerequisites/DisplayOption.schema.json#/definitions/DisplayOption"
|
|
2710
|
-
},
|
|
2711
|
-
"is_selection_required_on_purchase": {
|
|
2712
|
-
"description": "Do have to choose on when buying the special ability? Otherwise the\ndecision can be made later.",
|
|
2713
|
-
"type": "boolean"
|
|
2714
|
-
},
|
|
2715
|
-
"option": {
|
|
2716
|
-
"description": "Specify the select option(s) that only are allowed for the referenced\nadvanced special ability; others are disallowed.",
|
|
2717
|
-
"type": "array",
|
|
2718
|
-
"items": {
|
|
2719
|
-
"$ref": "./_Identifier.schema.json#/definitions/AdvancedSpecialAbilityRestrictedOptionIdentifier"
|
|
2720
|
-
},
|
|
2721
|
-
"minItems": 1
|
|
1950
|
+
"derive_from_external_option": {
|
|
1951
|
+
"$ref": "#/$defs/AdvancedSpecialAbilityDerivedFromExternalOption"
|
|
2722
1952
|
}
|
|
2723
1953
|
},
|
|
2724
1954
|
"required": [
|
|
2725
1955
|
"tag",
|
|
2726
|
-
"
|
|
2727
|
-
"mappings",
|
|
2728
|
-
"is_selection_required_on_purchase",
|
|
2729
|
-
"option"
|
|
1956
|
+
"derive_from_external_option"
|
|
2730
1957
|
],
|
|
2731
1958
|
"additionalProperties": false
|
|
2732
1959
|
}
|
|
2733
1960
|
]
|
|
2734
1961
|
},
|
|
1962
|
+
"RestrictAdvancedSpecialAbilityOptions": {
|
|
1963
|
+
"type": "object",
|
|
1964
|
+
"properties": {
|
|
1965
|
+
"id": {
|
|
1966
|
+
"description": "The advanced special ability's numeric identifier.",
|
|
1967
|
+
"type": "integer",
|
|
1968
|
+
"minimum": 1
|
|
1969
|
+
},
|
|
1970
|
+
"option": {
|
|
1971
|
+
"description": "Specify the select option(s) that only are allowed for the referenced\nadvanced special ability; others are disallowed.",
|
|
1972
|
+
"type": "array",
|
|
1973
|
+
"items": {
|
|
1974
|
+
"$ref": "./_Identifier.schema.json#/$defs/AdvancedSpecialAbilityRestrictedOptionIdentifier"
|
|
1975
|
+
},
|
|
1976
|
+
"minItems": 1
|
|
1977
|
+
}
|
|
1978
|
+
},
|
|
1979
|
+
"required": [
|
|
1980
|
+
"id",
|
|
1981
|
+
"option"
|
|
1982
|
+
],
|
|
1983
|
+
"additionalProperties": false
|
|
1984
|
+
},
|
|
1985
|
+
"OneOfAdvancedSpecialAbilityOptions": {
|
|
1986
|
+
"type": "object",
|
|
1987
|
+
"properties": {
|
|
1988
|
+
"options": {
|
|
1989
|
+
"description": "The possible advanced special abilities.",
|
|
1990
|
+
"$ref": "./_SimpleReferences.schema.json#/$defs/AdvancedSpecialAbilityReference"
|
|
1991
|
+
},
|
|
1992
|
+
"is_selection_required_on_purchase": {
|
|
1993
|
+
"description": "Do have to choose the advanced special ability when buying the style\nspecial ability? Otherwise the decision can be made later.",
|
|
1994
|
+
"type": "boolean"
|
|
1995
|
+
},
|
|
1996
|
+
"display_option": {
|
|
1997
|
+
"$ref": "./prerequisites/DisplayOption.schema.json#/$defs/DisplayOption"
|
|
1998
|
+
}
|
|
1999
|
+
},
|
|
2000
|
+
"required": [
|
|
2001
|
+
"options",
|
|
2002
|
+
"is_selection_required_on_purchase"
|
|
2003
|
+
],
|
|
2004
|
+
"additionalProperties": false
|
|
2005
|
+
},
|
|
2006
|
+
"AdvancedSpecialAbilityDerivedFromExternalOption": {
|
|
2007
|
+
"type": "object",
|
|
2008
|
+
"properties": {
|
|
2009
|
+
"external_entry": {
|
|
2010
|
+
"description": "The possible advanced special abilities.",
|
|
2011
|
+
"$ref": "./_Identifier.schema.json#/$defs/MagicalTraditionIdentifier"
|
|
2012
|
+
},
|
|
2013
|
+
"map": {
|
|
2014
|
+
"description": "Map options from the external entry to allowed advanced special abilities.",
|
|
2015
|
+
"type": "array",
|
|
2016
|
+
"items": {
|
|
2017
|
+
"$ref": "#/$defs/AdvancedSpecialAbilityDerivedFromExternalOptionMapping"
|
|
2018
|
+
},
|
|
2019
|
+
"minItems": 1
|
|
2020
|
+
},
|
|
2021
|
+
"display_option": {
|
|
2022
|
+
"$ref": "./prerequisites/DisplayOption.schema.json#/$defs/DisplayOption"
|
|
2023
|
+
}
|
|
2024
|
+
},
|
|
2025
|
+
"required": [
|
|
2026
|
+
"external_entry",
|
|
2027
|
+
"map"
|
|
2028
|
+
],
|
|
2029
|
+
"additionalProperties": false
|
|
2030
|
+
},
|
|
2031
|
+
"AdvancedSpecialAbilityDerivedFromExternalOptionMapping": {
|
|
2032
|
+
"description": "Mapping from an option of the external entry to an allowed advanced special\nability.",
|
|
2033
|
+
"type": "object",
|
|
2034
|
+
"properties": {
|
|
2035
|
+
"from_option": {
|
|
2036
|
+
"description": "The select option's identifier.",
|
|
2037
|
+
"$ref": "./_Identifier.schema.json#/$defs/PatronIdentifier"
|
|
2038
|
+
},
|
|
2039
|
+
"to_advanced": {
|
|
2040
|
+
"description": "The advanced special ability's identifier.",
|
|
2041
|
+
"$ref": "./_SimpleReferences.schema.json#/$defs/AdvancedSpecialAbilityReference"
|
|
2042
|
+
}
|
|
2043
|
+
},
|
|
2044
|
+
"required": [
|
|
2045
|
+
"from_option",
|
|
2046
|
+
"to_advanced"
|
|
2047
|
+
],
|
|
2048
|
+
"additionalProperties": false
|
|
2049
|
+
},
|
|
2735
2050
|
"AdvancedSpecialAbilityDerivedExternalEntryId": {
|
|
2736
|
-
"$ref": "./_Identifier.schema.json
|
|
2051
|
+
"$ref": "./_Identifier.schema.json#/$defs/MagicalTraditionIdentifier"
|
|
2737
2052
|
},
|
|
2738
2053
|
"AdvancedSpecialAbilityDerivedExternalEntryOptionId": {
|
|
2739
|
-
"$ref": "./_Identifier.schema.json
|
|
2054
|
+
"$ref": "./_Identifier.schema.json#/$defs/PatronIdentifier"
|
|
2740
2055
|
},
|
|
2741
2056
|
"AdvancedSpecialAbilities": {
|
|
2742
2057
|
"description": "The Advanced Special Abilities for the respective Style Special Ability.\nSometimes, only a specific select option or a set of select options of an\nentry is allowed, which can be modelled by the option property. It can also\nbe that you can choose from a set of special abilities, but then you can't\nspecify an option.",
|
|
2743
2058
|
"type": "array",
|
|
2744
2059
|
"items": [
|
|
2745
2060
|
{
|
|
2746
|
-
"$ref": "
|
|
2061
|
+
"$ref": "#/$defs/AdvancedSpecialAbility"
|
|
2747
2062
|
},
|
|
2748
2063
|
{
|
|
2749
|
-
"$ref": "
|
|
2064
|
+
"$ref": "#/$defs/AdvancedSpecialAbility"
|
|
2750
2065
|
},
|
|
2751
2066
|
{
|
|
2752
|
-
"$ref": "
|
|
2067
|
+
"$ref": "#/$defs/AdvancedSpecialAbility"
|
|
2753
2068
|
}
|
|
2754
2069
|
],
|
|
2755
2070
|
"minItems": 3,
|
|
@@ -2788,16 +2103,13 @@
|
|
|
2788
2103
|
"tag": {
|
|
2789
2104
|
"const": "All"
|
|
2790
2105
|
},
|
|
2791
|
-
"
|
|
2792
|
-
"
|
|
2793
|
-
"items": {
|
|
2794
|
-
"$ref": "#/definitions/ApplicableAllCombatTechniquesRestriction"
|
|
2795
|
-
},
|
|
2796
|
-
"minItems": 1
|
|
2106
|
+
"all": {
|
|
2107
|
+
"$ref": "#/$defs/AllApplicableCombatTechniques"
|
|
2797
2108
|
}
|
|
2798
2109
|
},
|
|
2799
2110
|
"required": [
|
|
2800
|
-
"tag"
|
|
2111
|
+
"tag",
|
|
2112
|
+
"all"
|
|
2801
2113
|
],
|
|
2802
2114
|
"additionalProperties": false
|
|
2803
2115
|
},
|
|
@@ -2807,16 +2119,13 @@
|
|
|
2807
2119
|
"tag": {
|
|
2808
2120
|
"const": "AllClose"
|
|
2809
2121
|
},
|
|
2810
|
-
"
|
|
2811
|
-
"
|
|
2812
|
-
"items": {
|
|
2813
|
-
"$ref": "#/definitions/ApplicableCloseCombatTechniquesRestriction"
|
|
2814
|
-
},
|
|
2815
|
-
"minItems": 1
|
|
2122
|
+
"all_close": {
|
|
2123
|
+
"$ref": "#/$defs/AllApplicableCloseCombatTechniques"
|
|
2816
2124
|
}
|
|
2817
2125
|
},
|
|
2818
2126
|
"required": [
|
|
2819
|
-
"tag"
|
|
2127
|
+
"tag",
|
|
2128
|
+
"all_close"
|
|
2820
2129
|
],
|
|
2821
2130
|
"additionalProperties": false
|
|
2822
2131
|
},
|
|
@@ -2826,16 +2135,13 @@
|
|
|
2826
2135
|
"tag": {
|
|
2827
2136
|
"const": "AllRanged"
|
|
2828
2137
|
},
|
|
2829
|
-
"
|
|
2830
|
-
"
|
|
2831
|
-
"items": {
|
|
2832
|
-
"$ref": "#/definitions/ApplicableRangedCombatTechniquesRestriction"
|
|
2833
|
-
},
|
|
2834
|
-
"minItems": 1
|
|
2138
|
+
"all_ranged": {
|
|
2139
|
+
"$ref": "#/$defs/AllApplicableRangedCombatTechniques"
|
|
2835
2140
|
}
|
|
2836
2141
|
},
|
|
2837
2142
|
"required": [
|
|
2838
|
-
"tag"
|
|
2143
|
+
"tag",
|
|
2144
|
+
"all_ranged"
|
|
2839
2145
|
],
|
|
2840
2146
|
"additionalProperties": false
|
|
2841
2147
|
},
|
|
@@ -2845,38 +2151,95 @@
|
|
|
2845
2151
|
"tag": {
|
|
2846
2152
|
"const": "Specific"
|
|
2847
2153
|
},
|
|
2848
|
-
"
|
|
2849
|
-
"
|
|
2850
|
-
"items": {
|
|
2851
|
-
"type": "object",
|
|
2852
|
-
"properties": {
|
|
2853
|
-
"id": {
|
|
2854
|
-
"$ref": "./_Identifier.schema.json#/definitions/CombatTechniqueIdentifier"
|
|
2855
|
-
},
|
|
2856
|
-
"restrictions": {
|
|
2857
|
-
"type": "array",
|
|
2858
|
-
"items": {
|
|
2859
|
-
"$ref": "#/definitions/ApplicableSpecificCombatTechniquesRestriction"
|
|
2860
|
-
},
|
|
2861
|
-
"minItems": 1
|
|
2862
|
-
}
|
|
2863
|
-
},
|
|
2864
|
-
"required": [
|
|
2865
|
-
"id"
|
|
2866
|
-
],
|
|
2867
|
-
"additionalProperties": false
|
|
2868
|
-
},
|
|
2869
|
-
"minItems": 1
|
|
2154
|
+
"specific": {
|
|
2155
|
+
"$ref": "#/$defs/SpecificApplicableCombatTechniques"
|
|
2870
2156
|
}
|
|
2871
2157
|
},
|
|
2872
2158
|
"required": [
|
|
2873
2159
|
"tag",
|
|
2874
|
-
"
|
|
2160
|
+
"specific"
|
|
2875
2161
|
],
|
|
2876
2162
|
"additionalProperties": false
|
|
2877
2163
|
}
|
|
2878
2164
|
]
|
|
2879
2165
|
},
|
|
2166
|
+
"AllApplicableCombatTechniques": {
|
|
2167
|
+
"type": "object",
|
|
2168
|
+
"properties": {
|
|
2169
|
+
"restrictions": {
|
|
2170
|
+
"type": "array",
|
|
2171
|
+
"items": {
|
|
2172
|
+
"$ref": "#/$defs/ApplicableAllCombatTechniquesRestriction"
|
|
2173
|
+
},
|
|
2174
|
+
"minItems": 1
|
|
2175
|
+
}
|
|
2176
|
+
},
|
|
2177
|
+
"required": [],
|
|
2178
|
+
"additionalProperties": false
|
|
2179
|
+
},
|
|
2180
|
+
"AllApplicableCloseCombatTechniques": {
|
|
2181
|
+
"type": "object",
|
|
2182
|
+
"properties": {
|
|
2183
|
+
"restrictions": {
|
|
2184
|
+
"type": "array",
|
|
2185
|
+
"items": {
|
|
2186
|
+
"$ref": "#/$defs/ApplicableCloseCombatTechniquesRestriction"
|
|
2187
|
+
},
|
|
2188
|
+
"minItems": 1
|
|
2189
|
+
}
|
|
2190
|
+
},
|
|
2191
|
+
"required": [],
|
|
2192
|
+
"additionalProperties": false
|
|
2193
|
+
},
|
|
2194
|
+
"AllApplicableRangedCombatTechniques": {
|
|
2195
|
+
"type": "object",
|
|
2196
|
+
"properties": {
|
|
2197
|
+
"restrictions": {
|
|
2198
|
+
"type": "array",
|
|
2199
|
+
"items": {
|
|
2200
|
+
"$ref": "#/$defs/ApplicableRangedCombatTechniquesRestriction"
|
|
2201
|
+
},
|
|
2202
|
+
"minItems": 1
|
|
2203
|
+
}
|
|
2204
|
+
},
|
|
2205
|
+
"required": [],
|
|
2206
|
+
"additionalProperties": false
|
|
2207
|
+
},
|
|
2208
|
+
"SpecificApplicableCombatTechniques": {
|
|
2209
|
+
"type": "object",
|
|
2210
|
+
"properties": {
|
|
2211
|
+
"list": {
|
|
2212
|
+
"type": "array",
|
|
2213
|
+
"items": {
|
|
2214
|
+
"$ref": "#/$defs/SpecificApplicableCombatTechnique"
|
|
2215
|
+
},
|
|
2216
|
+
"minItems": 1
|
|
2217
|
+
}
|
|
2218
|
+
},
|
|
2219
|
+
"required": [
|
|
2220
|
+
"list"
|
|
2221
|
+
],
|
|
2222
|
+
"additionalProperties": false
|
|
2223
|
+
},
|
|
2224
|
+
"SpecificApplicableCombatTechnique": {
|
|
2225
|
+
"type": "object",
|
|
2226
|
+
"properties": {
|
|
2227
|
+
"id": {
|
|
2228
|
+
"$ref": "./_Identifier.schema.json#/$defs/CombatTechniqueIdentifier"
|
|
2229
|
+
},
|
|
2230
|
+
"restrictions": {
|
|
2231
|
+
"type": "array",
|
|
2232
|
+
"items": {
|
|
2233
|
+
"$ref": "#/$defs/ApplicableSpecificCombatTechniquesRestriction"
|
|
2234
|
+
},
|
|
2235
|
+
"minItems": 1
|
|
2236
|
+
}
|
|
2237
|
+
},
|
|
2238
|
+
"required": [
|
|
2239
|
+
"id"
|
|
2240
|
+
],
|
|
2241
|
+
"additionalProperties": false
|
|
2242
|
+
},
|
|
2880
2243
|
"ApplicableAllCombatTechniquesRestriction": {
|
|
2881
2244
|
"oneOf": [
|
|
2882
2245
|
{
|
|
@@ -2921,15 +2284,13 @@
|
|
|
2921
2284
|
"tag": {
|
|
2922
2285
|
"const": "Race"
|
|
2923
2286
|
},
|
|
2924
|
-
"
|
|
2925
|
-
"
|
|
2926
|
-
"type": "integer",
|
|
2927
|
-
"minimum": 1
|
|
2287
|
+
"race": {
|
|
2288
|
+
"$ref": "#/$defs/ApplicableCombatTechniquesRaceRestriction"
|
|
2928
2289
|
}
|
|
2929
2290
|
},
|
|
2930
2291
|
"required": [
|
|
2931
2292
|
"tag",
|
|
2932
|
-
"
|
|
2293
|
+
"race"
|
|
2933
2294
|
],
|
|
2934
2295
|
"additionalProperties": false
|
|
2935
2296
|
},
|
|
@@ -2939,19 +2300,28 @@
|
|
|
2939
2300
|
"tag": {
|
|
2940
2301
|
"const": "ExcludeCombatTechniques"
|
|
2941
2302
|
},
|
|
2942
|
-
"
|
|
2943
|
-
"
|
|
2944
|
-
"
|
|
2945
|
-
|
|
2946
|
-
|
|
2303
|
+
"exclude_combat_techniques": {
|
|
2304
|
+
"type": "object",
|
|
2305
|
+
"properties": {
|
|
2306
|
+
"list": {
|
|
2307
|
+
"description": "The combat techniques this combat special ability is **not** applicable to.",
|
|
2308
|
+
"type": "array",
|
|
2309
|
+
"items": {
|
|
2310
|
+
"$ref": "./_SimpleReferences.schema.json#/$defs/CombatTechniqueReference"
|
|
2311
|
+
},
|
|
2312
|
+
"minItems": 1,
|
|
2313
|
+
"uniqueItems": true
|
|
2314
|
+
}
|
|
2947
2315
|
},
|
|
2948
|
-
"
|
|
2949
|
-
|
|
2316
|
+
"required": [
|
|
2317
|
+
"list"
|
|
2318
|
+
],
|
|
2319
|
+
"additionalProperties": false
|
|
2950
2320
|
}
|
|
2951
2321
|
},
|
|
2952
2322
|
"required": [
|
|
2953
2323
|
"tag",
|
|
2954
|
-
"
|
|
2324
|
+
"exclude_combat_techniques"
|
|
2955
2325
|
],
|
|
2956
2326
|
"additionalProperties": false
|
|
2957
2327
|
}
|
|
@@ -3037,15 +2407,13 @@
|
|
|
3037
2407
|
"tag": {
|
|
3038
2408
|
"const": "Race"
|
|
3039
2409
|
},
|
|
3040
|
-
"
|
|
3041
|
-
"
|
|
3042
|
-
"type": "integer",
|
|
3043
|
-
"minimum": 1
|
|
2410
|
+
"race": {
|
|
2411
|
+
"$ref": "#/$defs/ApplicableCombatTechniquesRaceRestriction"
|
|
3044
2412
|
}
|
|
3045
2413
|
},
|
|
3046
2414
|
"required": [
|
|
3047
2415
|
"tag",
|
|
3048
|
-
"
|
|
2416
|
+
"race"
|
|
3049
2417
|
],
|
|
3050
2418
|
"additionalProperties": false
|
|
3051
2419
|
},
|
|
@@ -3055,30 +2423,28 @@
|
|
|
3055
2423
|
"tag": {
|
|
3056
2424
|
"const": "ExcludeCombatTechniques"
|
|
3057
2425
|
},
|
|
3058
|
-
"
|
|
3059
|
-
"
|
|
3060
|
-
"
|
|
3061
|
-
|
|
3062
|
-
|
|
3063
|
-
|
|
3064
|
-
"
|
|
3065
|
-
"
|
|
3066
|
-
|
|
3067
|
-
|
|
3068
|
-
|
|
3069
|
-
}
|
|
3070
|
-
"required": [
|
|
3071
|
-
"id"
|
|
3072
|
-
],
|
|
3073
|
-
"additionalProperties": false
|
|
2426
|
+
"exclude_combat_techniques": {
|
|
2427
|
+
"type": "object",
|
|
2428
|
+
"properties": {
|
|
2429
|
+
"list": {
|
|
2430
|
+
"description": "The combat techniques this combat special ability is **not** applicable to.",
|
|
2431
|
+
"type": "array",
|
|
2432
|
+
"items": {
|
|
2433
|
+
"$ref": "./_SimpleReferences.schema.json#/$defs/CloseCombatTechniqueReference"
|
|
2434
|
+
},
|
|
2435
|
+
"minItems": 1,
|
|
2436
|
+
"uniqueItems": true
|
|
2437
|
+
}
|
|
3074
2438
|
},
|
|
3075
|
-
"
|
|
3076
|
-
|
|
2439
|
+
"required": [
|
|
2440
|
+
"list"
|
|
2441
|
+
],
|
|
2442
|
+
"additionalProperties": false
|
|
3077
2443
|
}
|
|
3078
2444
|
},
|
|
3079
2445
|
"required": [
|
|
3080
2446
|
"tag",
|
|
3081
|
-
"
|
|
2447
|
+
"exclude_combat_techniques"
|
|
3082
2448
|
],
|
|
3083
2449
|
"additionalProperties": false
|
|
3084
2450
|
}
|
|
@@ -3128,15 +2494,13 @@
|
|
|
3128
2494
|
"tag": {
|
|
3129
2495
|
"const": "Race"
|
|
3130
2496
|
},
|
|
3131
|
-
"
|
|
3132
|
-
"
|
|
3133
|
-
"type": "integer",
|
|
3134
|
-
"minimum": 1
|
|
2497
|
+
"race": {
|
|
2498
|
+
"$ref": "#/$defs/ApplicableCombatTechniquesRaceRestriction"
|
|
3135
2499
|
}
|
|
3136
2500
|
},
|
|
3137
2501
|
"required": [
|
|
3138
2502
|
"tag",
|
|
3139
|
-
"
|
|
2503
|
+
"race"
|
|
3140
2504
|
],
|
|
3141
2505
|
"additionalProperties": false
|
|
3142
2506
|
},
|
|
@@ -3146,30 +2510,28 @@
|
|
|
3146
2510
|
"tag": {
|
|
3147
2511
|
"const": "ExcludeCombatTechniques"
|
|
3148
2512
|
},
|
|
3149
|
-
"
|
|
3150
|
-
"
|
|
3151
|
-
"
|
|
3152
|
-
|
|
3153
|
-
|
|
3154
|
-
|
|
3155
|
-
"
|
|
3156
|
-
"
|
|
3157
|
-
|
|
3158
|
-
|
|
3159
|
-
|
|
3160
|
-
}
|
|
3161
|
-
"required": [
|
|
3162
|
-
"id"
|
|
3163
|
-
],
|
|
3164
|
-
"additionalProperties": false
|
|
2513
|
+
"exclude_combat_techniques": {
|
|
2514
|
+
"type": "object",
|
|
2515
|
+
"properties": {
|
|
2516
|
+
"list": {
|
|
2517
|
+
"description": "The combat techniques this combat special ability is **not** applicable to.",
|
|
2518
|
+
"type": "array",
|
|
2519
|
+
"items": {
|
|
2520
|
+
"$ref": "./_SimpleReferences.schema.json#/$defs/RangedCombatTechniqueReference"
|
|
2521
|
+
},
|
|
2522
|
+
"minItems": 1,
|
|
2523
|
+
"uniqueItems": true
|
|
2524
|
+
}
|
|
3165
2525
|
},
|
|
3166
|
-
"
|
|
3167
|
-
|
|
2526
|
+
"required": [
|
|
2527
|
+
"list"
|
|
2528
|
+
],
|
|
2529
|
+
"additionalProperties": false
|
|
3168
2530
|
}
|
|
3169
2531
|
},
|
|
3170
2532
|
"required": [
|
|
3171
2533
|
"tag",
|
|
3172
|
-
"
|
|
2534
|
+
"exclude_combat_techniques"
|
|
3173
2535
|
],
|
|
3174
2536
|
"additionalProperties": false
|
|
3175
2537
|
}
|
|
@@ -3219,15 +2581,13 @@
|
|
|
3219
2581
|
"tag": {
|
|
3220
2582
|
"const": "Race"
|
|
3221
2583
|
},
|
|
3222
|
-
"
|
|
3223
|
-
"
|
|
3224
|
-
"type": "integer",
|
|
3225
|
-
"minimum": 1
|
|
2584
|
+
"race": {
|
|
2585
|
+
"$ref": "#/$defs/ApplicableCombatTechniquesRaceRestriction"
|
|
3226
2586
|
}
|
|
3227
2587
|
},
|
|
3228
2588
|
"required": [
|
|
3229
2589
|
"tag",
|
|
3230
|
-
"
|
|
2590
|
+
"race"
|
|
3231
2591
|
],
|
|
3232
2592
|
"additionalProperties": false
|
|
3233
2593
|
},
|
|
@@ -3238,9 +2598,7 @@
|
|
|
3238
2598
|
"const": "Level"
|
|
3239
2599
|
},
|
|
3240
2600
|
"level": {
|
|
3241
|
-
"
|
|
3242
|
-
"type": "integer",
|
|
3243
|
-
"minimum": 1
|
|
2601
|
+
"$ref": "#/$defs/ApplicableCombatTechniquesLevelRestriction"
|
|
3244
2602
|
}
|
|
3245
2603
|
},
|
|
3246
2604
|
"required": [
|
|
@@ -3255,35 +2613,53 @@
|
|
|
3255
2613
|
"tag": {
|
|
3256
2614
|
"const": "Weapons"
|
|
3257
2615
|
},
|
|
3258
|
-
"
|
|
3259
|
-
"
|
|
3260
|
-
"type": "array",
|
|
3261
|
-
"items": {
|
|
3262
|
-
"type": "object",
|
|
3263
|
-
"properties": {
|
|
3264
|
-
"id": {
|
|
3265
|
-
"description": "The weapon's numeric identifier.",
|
|
3266
|
-
"type": "integer",
|
|
3267
|
-
"minimum": 1
|
|
3268
|
-
}
|
|
3269
|
-
},
|
|
3270
|
-
"required": [
|
|
3271
|
-
"id"
|
|
3272
|
-
],
|
|
3273
|
-
"additionalProperties": false
|
|
3274
|
-
},
|
|
3275
|
-
"minItems": 1,
|
|
3276
|
-
"uniqueItems": true
|
|
2616
|
+
"weapons": {
|
|
2617
|
+
"$ref": "#/$defs/ApplicableCombatTechniquesWeaponRestriction"
|
|
3277
2618
|
}
|
|
3278
2619
|
},
|
|
3279
2620
|
"required": [
|
|
3280
2621
|
"tag",
|
|
3281
|
-
"
|
|
2622
|
+
"weapons"
|
|
3282
2623
|
],
|
|
3283
2624
|
"additionalProperties": false
|
|
3284
2625
|
}
|
|
3285
2626
|
]
|
|
3286
2627
|
},
|
|
2628
|
+
"ApplicableCombatTechniquesRaceRestriction": {
|
|
2629
|
+
"$ref": "./_SimpleReferences.schema.json#/$defs/RaceReference"
|
|
2630
|
+
},
|
|
2631
|
+
"ApplicableCombatTechniquesLevelRestriction": {
|
|
2632
|
+
"type": "object",
|
|
2633
|
+
"properties": {
|
|
2634
|
+
"level": {
|
|
2635
|
+
"description": "The combat special ability is only applicable on a certain level.",
|
|
2636
|
+
"type": "integer",
|
|
2637
|
+
"minimum": 1
|
|
2638
|
+
}
|
|
2639
|
+
},
|
|
2640
|
+
"required": [
|
|
2641
|
+
"level"
|
|
2642
|
+
],
|
|
2643
|
+
"additionalProperties": false
|
|
2644
|
+
},
|
|
2645
|
+
"ApplicableCombatTechniquesWeaponRestriction": {
|
|
2646
|
+
"type": "object",
|
|
2647
|
+
"properties": {
|
|
2648
|
+
"list": {
|
|
2649
|
+
"description": "The specific weapons this combat special ability is only applicable to.",
|
|
2650
|
+
"type": "array",
|
|
2651
|
+
"items": {
|
|
2652
|
+
"$ref": "./_SimpleReferences.schema.json#/$defs/WeaponReference"
|
|
2653
|
+
},
|
|
2654
|
+
"minItems": 1,
|
|
2655
|
+
"uniqueItems": true
|
|
2656
|
+
}
|
|
2657
|
+
},
|
|
2658
|
+
"required": [
|
|
2659
|
+
"list"
|
|
2660
|
+
],
|
|
2661
|
+
"additionalProperties": false
|
|
2662
|
+
},
|
|
3287
2663
|
"AdventurePointsValue": {
|
|
3288
2664
|
"oneOf": [
|
|
3289
2665
|
{
|
|
@@ -3292,14 +2668,13 @@
|
|
|
3292
2668
|
"tag": {
|
|
3293
2669
|
"const": "Fixed"
|
|
3294
2670
|
},
|
|
3295
|
-
"
|
|
3296
|
-
"
|
|
3297
|
-
"$ref": "#/definitions/AdventurePointsSingleValue"
|
|
2671
|
+
"fixed": {
|
|
2672
|
+
"$ref": "#/$defs/FixedAdventurePointsValue"
|
|
3298
2673
|
}
|
|
3299
2674
|
},
|
|
3300
2675
|
"required": [
|
|
3301
2676
|
"tag",
|
|
3302
|
-
"
|
|
2677
|
+
"fixed"
|
|
3303
2678
|
],
|
|
3304
2679
|
"additionalProperties": false
|
|
3305
2680
|
},
|
|
@@ -3309,55 +2684,13 @@
|
|
|
3309
2684
|
"tag": {
|
|
3310
2685
|
"const": "ByLevel"
|
|
3311
2686
|
},
|
|
3312
|
-
"
|
|
3313
|
-
"
|
|
3314
|
-
"type": "array",
|
|
3315
|
-
"items": {
|
|
3316
|
-
"$ref": "#/definitions/AdventurePointsSingleValue"
|
|
3317
|
-
},
|
|
3318
|
-
"minItems": 2
|
|
3319
|
-
}
|
|
3320
|
-
},
|
|
3321
|
-
"required": [
|
|
3322
|
-
"tag",
|
|
3323
|
-
"values"
|
|
3324
|
-
],
|
|
3325
|
-
"additionalProperties": false
|
|
3326
|
-
},
|
|
3327
|
-
{
|
|
3328
|
-
"type": "object",
|
|
3329
|
-
"properties": {
|
|
3330
|
-
"tag": {
|
|
3331
|
-
"const": "ByImprovementCost"
|
|
3332
|
-
},
|
|
3333
|
-
"values": {
|
|
3334
|
-
"description": "An entry with a selection of skills may have different costs for\ndifferent improvement costs of the selected skill.\n\nIf the select options will not have entries with improvement cost A\n(combat techniques only), you may leave out A.",
|
|
3335
|
-
"type": "object",
|
|
3336
|
-
"properties": {
|
|
3337
|
-
"A": {
|
|
3338
|
-
"$ref": "#/definitions/AdventurePointsSingleValue"
|
|
3339
|
-
},
|
|
3340
|
-
"B": {
|
|
3341
|
-
"$ref": "#/definitions/AdventurePointsSingleValue"
|
|
3342
|
-
},
|
|
3343
|
-
"C": {
|
|
3344
|
-
"$ref": "#/definitions/AdventurePointsSingleValue"
|
|
3345
|
-
},
|
|
3346
|
-
"D": {
|
|
3347
|
-
"$ref": "#/definitions/AdventurePointsSingleValue"
|
|
3348
|
-
}
|
|
3349
|
-
},
|
|
3350
|
-
"required": [
|
|
3351
|
-
"B",
|
|
3352
|
-
"C",
|
|
3353
|
-
"D"
|
|
3354
|
-
],
|
|
3355
|
-
"additionalProperties": false
|
|
2687
|
+
"by_level": {
|
|
2688
|
+
"$ref": "#/$defs/AdventurePointsValueByLevel"
|
|
3356
2689
|
}
|
|
3357
2690
|
},
|
|
3358
2691
|
"required": [
|
|
3359
2692
|
"tag",
|
|
3360
|
-
"
|
|
2693
|
+
"by_level"
|
|
3361
2694
|
],
|
|
3362
2695
|
"additionalProperties": false
|
|
3363
2696
|
},
|
|
@@ -3365,7 +2698,6 @@
|
|
|
3365
2698
|
"type": "object",
|
|
3366
2699
|
"properties": {
|
|
3367
2700
|
"tag": {
|
|
3368
|
-
"description": "Used if AP value is defined by the selected option(s) or special rules.",
|
|
3369
2701
|
"const": "Indefinite"
|
|
3370
2702
|
}
|
|
3371
2703
|
},
|
|
@@ -3376,6 +2708,18 @@
|
|
|
3376
2708
|
}
|
|
3377
2709
|
]
|
|
3378
2710
|
},
|
|
2711
|
+
"FixedAdventurePointsValue": {
|
|
2712
|
+
"description": "A fixed adventure points value. If the entry has levels, this is the cost per\nlevel as well.",
|
|
2713
|
+
"$ref": "#/$defs/AdventurePointsSingleValue"
|
|
2714
|
+
},
|
|
2715
|
+
"AdventurePointsValueByLevel": {
|
|
2716
|
+
"description": "An entry with levels may have different costs for each level. The length of\nthe list must match the amount of levels the special ability has.",
|
|
2717
|
+
"type": "array",
|
|
2718
|
+
"items": {
|
|
2719
|
+
"$ref": "#/$defs/AdventurePointsSingleValue"
|
|
2720
|
+
},
|
|
2721
|
+
"minItems": 2
|
|
2722
|
+
},
|
|
3379
2723
|
"AdventurePointsSingleValue": {
|
|
3380
2724
|
"description": "A single adventure points value.",
|
|
3381
2725
|
"type": "integer",
|