optolith-database-schema 0.40.0 → 0.41.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.
Files changed (268) hide show
  1. package/CHANGELOG.md +41 -0
  2. package/README.md +1 -1
  3. package/gen/types.d.ts +1705 -1606
  4. package/lib/types/DerivedCharacteristic.d.ts +23 -14
  5. package/lib/types/DerivedCharacteristic.js +58 -21
  6. package/lib/types/Disease.d.ts +2 -0
  7. package/lib/types/Disease.js +8 -0
  8. package/lib/types/Profession.d.ts +31 -14
  9. package/lib/types/Profession.js +12 -2
  10. package/lib/types/Race.d.ts +22 -15
  11. package/lib/types/Race.js +26 -20
  12. package/lib/types/Talisman.d.ts +32 -6
  13. package/lib/types/Talisman.js +51 -11
  14. package/lib/types/_Identifier.d.ts +1 -0
  15. package/lib/types/_Identifier.js +2 -0
  16. package/lib/types/_IdentifierGroup.d.ts +58 -0
  17. package/lib/types/_IdentifierGroup.js +15 -1
  18. package/lib/types/equipment/item/BandageOrRemedy.d.ts +5 -2
  19. package/lib/types/equipment/item/CeremonialItem.d.ts +6 -3
  20. package/lib/types/equipment/item/CeremonialItem.js +1 -1
  21. package/lib/types/equipment/item/Clothes.d.ts +5 -2
  22. package/lib/types/equipment/item/Container.d.ts +5 -2
  23. package/lib/types/equipment/item/Elixir.d.ts +16 -1
  24. package/lib/types/equipment/item/Elixir.js +35 -5
  25. package/lib/types/equipment/item/EquipmentOfBlessedOnes.d.ts +5 -2
  26. package/lib/types/equipment/item/IlluminationLightSource.d.ts +5 -2
  27. package/lib/types/equipment/item/IlluminationRefillOrSupply.d.ts +5 -2
  28. package/lib/types/equipment/item/Liebesspielzeug.d.ts +5 -2
  29. package/lib/types/equipment/item/LuxuryGood.d.ts +5 -2
  30. package/lib/types/equipment/item/MagicalArtifact.d.ts +5 -2
  31. package/lib/types/equipment/item/MusicalInstrument.d.ts +5 -2
  32. package/lib/types/equipment/item/OrienteeringAid.d.ts +5 -2
  33. package/lib/types/equipment/item/Poison.d.ts +64 -91
  34. package/lib/types/equipment/item/Poison.js +5 -34
  35. package/lib/types/equipment/item/RopeOrChain.d.ts +5 -2
  36. package/lib/types/equipment/item/Stationery.d.ts +5 -2
  37. package/lib/types/equipment/item/ThievesTool.d.ts +5 -2
  38. package/lib/types/equipment/item/TravelGearOrTool.d.ts +5 -2
  39. package/lib/types/equipment/item/Weapon.d.ts +10 -4
  40. package/lib/types/equipment/item/WeaponAccessory.d.ts +5 -2
  41. package/lib/types/equipment/item/_Herbary.d.ts +31 -0
  42. package/lib/types/equipment/item/_Herbary.js +9 -0
  43. package/lib/types/equipment/item/_Item.d.ts +10 -4
  44. package/lib/types/equipment/item/_MeleeWeapon.d.ts +2 -2
  45. package/lib/types/equipment/item/_MeleeWeapon.js +1 -1
  46. package/lib/types/equipment/item/_RangedWeapon.d.ts +8 -2
  47. package/lib/types/equipment/item/_RangedWeapon.js +2 -2
  48. package/lib/types/equipment/item/sub/Reach.d.ts +1 -0
  49. package/lib/types/equipment/item/sub/Reach.js +7 -0
  50. package/lib/types/magicalActions/MagicalMelody.d.ts +15 -0
  51. package/lib/types/magicalActions/MagicalMelody.js +5 -0
  52. package/lib/types/prerequisites/PrerequisiteGroups.d.ts +132 -0
  53. package/lib/types/prerequisites/PrerequisiteGroups.js +1 -0
  54. package/package.json +7 -7
  55. package/schema/Advantage.schema.json +0 -108
  56. package/schema/AnimalDisease.schema.json +0 -74
  57. package/schema/AnimalType.schema.json +0 -47
  58. package/schema/ArcaneBardTradition.schema.json +0 -11
  59. package/schema/ArcaneDancerTradition.schema.json +0 -11
  60. package/schema/Aspect.schema.json +0 -51
  61. package/schema/Attribute.schema.json +0 -57
  62. package/schema/Blessing.schema.json +0 -265
  63. package/schema/Cantrip.schema.json +0 -443
  64. package/schema/Ceremony.schema.json +0 -122
  65. package/schema/CombatTechnique_Close.schema.json +0 -116
  66. package/schema/CombatTechnique_Ranged.schema.json +0 -99
  67. package/schema/Condition.schema.json +0 -68
  68. package/schema/Continent.schema.json +0 -49
  69. package/schema/Culture.schema.json +0 -781
  70. package/schema/DerivedCharacteristic.schema.json +0 -90
  71. package/schema/Disadvantage.schema.json +0 -97
  72. package/schema/Disease.schema.json +0 -58
  73. package/schema/Element.schema.json +0 -48
  74. package/schema/ExperienceLevel.schema.json +0 -84
  75. package/schema/EyeColor.schema.json +0 -47
  76. package/schema/FamiliarsTrick.schema.json +0 -576
  77. package/schema/HairColor.schema.json +0 -47
  78. package/schema/Kirchenpraegung.schema.json +0 -11
  79. package/schema/Lessons_Curriculum.schema.json +0 -499
  80. package/schema/Lessons_Guideline.schema.json +0 -53
  81. package/schema/LiturgicalChant.schema.json +0 -122
  82. package/schema/Locale.schema.json +0 -38
  83. package/schema/MetaCondition.schema.json +0 -69
  84. package/schema/PactCategory.schema.json +0 -150
  85. package/schema/Patron.schema.json +0 -352
  86. package/schema/PatronCategory.schema.json +0 -57
  87. package/schema/PersonalityTrait.schema.json +0 -100
  88. package/schema/Profession.schema.json +0 -1424
  89. package/schema/Property.schema.json +0 -51
  90. package/schema/Race.schema.json +0 -534
  91. package/schema/Region.schema.json +0 -47
  92. package/schema/Ritual.schema.json +0 -120
  93. package/schema/Service.schema.json +0 -79
  94. package/schema/SexPractice.schema.json +0 -70
  95. package/schema/Skill.schema.json +0 -223
  96. package/schema/SkillGroup.schema.json +0 -57
  97. package/schema/SkillModificationLevel.schema.json +0 -153
  98. package/schema/SocialStatus.schema.json +0 -47
  99. package/schema/Spell.schema.json +0 -119
  100. package/schema/State.schema.json +0 -59
  101. package/schema/Talisman.schema.json +0 -120
  102. package/schema/TargetCategory.schema.json +0 -65
  103. package/schema/UI.schema.json +0 -4441
  104. package/schema/_Activatable.schema.json +0 -2755
  105. package/schema/_ActivatableSelectOptionCategory.schema.json +0 -1313
  106. package/schema/_ActivatableSkill.schema.json +0 -188
  107. package/schema/_ActivatableSkillCastingTime.schema.json +0 -181
  108. package/schema/_ActivatableSkillCheckResultBased.schema.json +0 -65
  109. package/schema/_ActivatableSkillCost.schema.json +0 -513
  110. package/schema/_ActivatableSkillDuration.schema.json +0 -353
  111. package/schema/_ActivatableSkillEffect.schema.json +0 -122
  112. package/schema/_ActivatableSkillRange.schema.json +0 -264
  113. package/schema/_ActivatableSkillTargetCategory.schema.json +0 -145
  114. package/schema/_AlternativeNames.schema.json +0 -23
  115. package/schema/_ArcaneTradition.schema.json +0 -51
  116. package/schema/_Blessed.schema.json +0 -64
  117. package/schema/_Dice.schema.json +0 -40
  118. package/schema/_DiseasePoison.schema.json +0 -152
  119. package/schema/_Enhancements.schema.json +0 -85
  120. package/schema/_I18n.schema.json +0 -55
  121. package/schema/_Identifier.schema.json +0 -2577
  122. package/schema/_IdentifierGroup.schema.json +0 -753
  123. package/schema/_ImprovementCost.schema.json +0 -23
  124. package/schema/_Influence.schema.json +0 -84
  125. package/schema/_NonEmptyString.schema.json +0 -14
  126. package/schema/_Prerequisite.schema.json +0 -1518
  127. package/schema/_ResponsiveText.schema.json +0 -66
  128. package/schema/_Sex.schema.json +0 -18
  129. package/schema/_SimpleReferences.schema.json +0 -522
  130. package/schema/_SkillCheck.schema.json +0 -38
  131. package/schema/_Spellwork.schema.json +0 -54
  132. package/schema/equipment/EquipmentPackage.schema.json +0 -79
  133. package/schema/equipment/item/Ammunition.schema.json +0 -56
  134. package/schema/equipment/item/Animal.schema.json +0 -36
  135. package/schema/equipment/item/AnimalCare.schema.json +0 -124
  136. package/schema/equipment/item/Armor.schema.json +0 -309
  137. package/schema/equipment/item/BandageOrRemedy.schema.json +0 -53
  138. package/schema/equipment/item/Book.schema.json +0 -89
  139. package/schema/equipment/item/CeremonialItem.schema.json +0 -59
  140. package/schema/equipment/item/Clothes.schema.json +0 -10
  141. package/schema/equipment/item/Container.schema.json +0 -10
  142. package/schema/equipment/item/Elixir.schema.json +0 -103
  143. package/schema/equipment/item/EquipmentOfBlessedOnes.schema.json +0 -49
  144. package/schema/equipment/item/GemOrPreciousStone.schema.json +0 -69
  145. package/schema/equipment/item/IlluminationLightSource.schema.json +0 -120
  146. package/schema/equipment/item/IlluminationRefillsOrSupplies.schema.json +0 -10
  147. package/schema/equipment/item/Jewelry.schema.json +0 -113
  148. package/schema/equipment/item/Liebesspielzeug.schema.json +0 -10
  149. package/schema/equipment/item/LuxuryGood.schema.json +0 -53
  150. package/schema/equipment/item/MagicalArtifact.schema.json +0 -64
  151. package/schema/equipment/item/MusicalInstrument.schema.json +0 -49
  152. package/schema/equipment/item/OrienteeringAid.schema.json +0 -10
  153. package/schema/equipment/item/Poison.schema.json +0 -835
  154. package/schema/equipment/item/RopeOrChain.schema.json +0 -10
  155. package/schema/equipment/item/Stationary.schema.json +0 -10
  156. package/schema/equipment/item/ThievesTool.schema.json +0 -10
  157. package/schema/equipment/item/ToolOfTheTrade.schema.json +0 -93
  158. package/schema/equipment/item/TravelGearOrTool.schema.json +0 -10
  159. package/schema/equipment/item/Vehicle.schema.json +0 -36
  160. package/schema/equipment/item/Weapon.schema.json +0 -285
  161. package/schema/equipment/item/WeaponAccessory.schema.json +0 -10
  162. package/schema/equipment/item/_Herbary.schema.json +0 -62
  163. package/schema/equipment/item/_Item.schema.json +0 -384
  164. package/schema/equipment/item/_MeleeWeapon.schema.json +0 -164
  165. package/schema/equipment/item/_RangedWeapon.schema.json +0 -185
  166. package/schema/equipment/item/_Weapon.schema.json +0 -99
  167. package/schema/equipment/item/sub/ArmorType.schema.json +0 -52
  168. package/schema/equipment/item/sub/Reach.schema.json +0 -47
  169. package/schema/magicalActions/AnimistPower.schema.json +0 -488
  170. package/schema/magicalActions/AnimistPower_Tribe.schema.json +0 -47
  171. package/schema/magicalActions/Curse.schema.json +0 -332
  172. package/schema/magicalActions/DominationRitual.schema.json +0 -275
  173. package/schema/magicalActions/ElvenMagicalSong.schema.json +0 -196
  174. package/schema/magicalActions/GeodeRitual.schema.json +0 -327
  175. package/schema/magicalActions/JesterTrick.schema.json +0 -311
  176. package/schema/magicalActions/MagicalDance.schema.json +0 -198
  177. package/schema/magicalActions/MagicalMelody.schema.json +0 -193
  178. package/schema/magicalActions/MagicalRune.schema.json +0 -578
  179. package/schema/magicalActions/ZibiljaRitual.schema.json +0 -165
  180. package/schema/magicalActions/_MusicTradition.schema.json +0 -82
  181. package/schema/magicalActions/_SkillReference.schema.json +0 -20
  182. package/schema/prerequisites/ConditionalPrerequisites.schema.json +0 -15
  183. package/schema/prerequisites/DisplayOption.schema.json +0 -70
  184. package/schema/prerequisites/PrerequisiteGroups.schema.json +0 -1029
  185. package/schema/prerequisites/single/ActivatablePrerequisite.schema.json +0 -45
  186. package/schema/prerequisites/single/AncestorBloodPrerequisite.schema.json +0 -14
  187. package/schema/prerequisites/single/AnimistPowerPrerequisite.schema.json +0 -36
  188. package/schema/prerequisites/single/CulturePrerequisite.schema.json +0 -24
  189. package/schema/prerequisites/single/EnhancementPrerequisite.schema.json +0 -61
  190. package/schema/prerequisites/single/InfluencePrerequisite.schema.json +0 -28
  191. package/schema/prerequisites/single/PactPrerequisite.schema.json +0 -36
  192. package/schema/prerequisites/single/PrimaryAttributePrerequisite.schema.json +0 -39
  193. package/schema/prerequisites/single/PublicationPrerequisite.schema.json +0 -22
  194. package/schema/prerequisites/single/RacePrerequisite.schema.json +0 -28
  195. package/schema/prerequisites/single/RatedMinimumNumberPrerequisite.schema.json +0 -172
  196. package/schema/prerequisites/single/RatedPrerequisite.schema.json +0 -29
  197. package/schema/prerequisites/single/RatedSumPrerequisite.schema.json +0 -33
  198. package/schema/prerequisites/single/RulePrerequisite.schema.json +0 -22
  199. package/schema/prerequisites/single/SexPrerequisite.schema.json +0 -23
  200. package/schema/prerequisites/single/SexualCharacteristicPrerequisite.schema.json +0 -30
  201. package/schema/prerequisites/single/SocialStatusPrerequisite.schema.json +0 -24
  202. package/schema/prerequisites/single/StatePrerequisite.schema.json +0 -23
  203. package/schema/prerequisites/single/TextPrerequisite.schema.json +0 -64
  204. package/schema/prerequisites/single/TraditionPrerequisite.schema.json +0 -58
  205. package/schema/rule/CoreRule.schema.json +0 -1403
  206. package/schema/rule/FocusRule.schema.json +0 -76
  207. package/schema/rule/FocusRule_Subject.schema.json +0 -48
  208. package/schema/rule/OptionalRule.schema.json +0 -64
  209. package/schema/source/Publication.schema.json +0 -103
  210. package/schema/source/_Erratum.schema.json +0 -36
  211. package/schema/source/_PublicationRef.schema.json +0 -285
  212. package/schema/specialAbility/AdvancedCombatSpecialAbility.schema.json +0 -102
  213. package/schema/specialAbility/AdvancedKarmaSpecialAbility.schema.json +0 -80
  214. package/schema/specialAbility/AdvancedMagicalSpecialAbility.schema.json +0 -80
  215. package/schema/specialAbility/AdvancedSkillSpecialAbility.schema.json +0 -80
  216. package/schema/specialAbility/AncestorGlyph.schema.json +0 -80
  217. package/schema/specialAbility/BlessedTradition.schema.json +0 -354
  218. package/schema/specialAbility/BrawlingSpecialAbility.schema.json +0 -82
  219. package/schema/specialAbility/CeremonialItemSpecialAbility.schema.json +0 -87
  220. package/schema/specialAbility/CombatSpecialAbility.schema.json +0 -98
  221. package/schema/specialAbility/CombatStyleSpecialAbility.schema.json +0 -273
  222. package/schema/specialAbility/CommandSpecialAbility.schema.json +0 -82
  223. package/schema/specialAbility/FamiliarSpecialAbility.schema.json +0 -74
  224. package/schema/specialAbility/FatePointSexSpecialAbility.schema.json +0 -74
  225. package/schema/specialAbility/FatePointSpecialAbility.schema.json +0 -84
  226. package/schema/specialAbility/GeneralSpecialAbility.schema.json +0 -88
  227. package/schema/specialAbility/KarmaSpecialAbility.schema.json +0 -78
  228. package/schema/specialAbility/LiturgicalStyleSpecialAbility.schema.json +0 -260
  229. package/schema/specialAbility/LycantropicGift.schema.json +0 -74
  230. package/schema/specialAbility/MagicStyleSpecialAbility.schema.json +0 -260
  231. package/schema/specialAbility/MagicalSign.schema.json +0 -72
  232. package/schema/specialAbility/MagicalSpecialAbility.schema.json +0 -88
  233. package/schema/specialAbility/MagicalTradition.schema.json +0 -163
  234. package/schema/specialAbility/PactGift.schema.json +0 -254
  235. package/schema/specialAbility/ProtectiveWardingCircleSpecialAbility.schema.json +0 -86
  236. package/schema/specialAbility/Sermon.schema.json +0 -74
  237. package/schema/specialAbility/SexSpecialAbility.schema.json +0 -80
  238. package/schema/specialAbility/SikaryanDrainSpecialAbility.schema.json +0 -78
  239. package/schema/specialAbility/SkillStyleSpecialAbility.schema.json +0 -254
  240. package/schema/specialAbility/VampiricGift.schema.json +0 -78
  241. package/schema/specialAbility/Vision.schema.json +0 -74
  242. package/schema/specialAbility/_Tradition.schema.json +0 -23
  243. package/schema/specialAbility/sub/Language.schema.json +0 -222
  244. package/schema/specialAbility/sub/Script.schema.json +0 -90
  245. package/schema/specialAbility/sub/TradeSecret.schema.json +0 -72
  246. package/schema/specialAbility/sub/_LanguageScript.schema.json +0 -24
  247. package/schema/traditionArtifacts/ArcaneOrbEnchantment.schema.json +0 -95
  248. package/schema/traditionArtifacts/AttireEnchantment.schema.json +0 -95
  249. package/schema/traditionArtifacts/BowlEnchantment.schema.json +0 -95
  250. package/schema/traditionArtifacts/CauldronEnchantment.schema.json +0 -115
  251. package/schema/traditionArtifacts/ChronicleEnchantment.schema.json +0 -95
  252. package/schema/traditionArtifacts/DaggerRitual.schema.json +0 -176
  253. package/schema/traditionArtifacts/FoolsHatEnchantment.schema.json +0 -95
  254. package/schema/traditionArtifacts/InstrumentEnchantment.schema.json +0 -95
  255. package/schema/traditionArtifacts/Krallenkettenzauber.schema.json +0 -95
  256. package/schema/traditionArtifacts/OrbEnchantment.schema.json +0 -95
  257. package/schema/traditionArtifacts/RingEnchantment.schema.json +0 -95
  258. package/schema/traditionArtifacts/SickleRitual.schema.json +0 -95
  259. package/schema/traditionArtifacts/SpellSwordEnchantment.schema.json +0 -99
  260. package/schema/traditionArtifacts/StaffEnchantment.schema.json +0 -103
  261. package/schema/traditionArtifacts/ToyEnchantment.schema.json +0 -95
  262. package/schema/traditionArtifacts/Trinkhornzauber.schema.json +0 -95
  263. package/schema/traditionArtifacts/WandEnchantment.schema.json +0 -87
  264. package/schema/traditionArtifacts/WeaponEnchantment.schema.json +0 -95
  265. package/schema/traditionArtifacts/sub/AnimalShape.schema.json +0 -85
  266. package/schema/traditionArtifacts/sub/AnimalShapePath.schema.json +0 -47
  267. package/schema/traditionArtifacts/sub/AnimalShapeSize.schema.json +0 -59
  268. package/schema/traditionArtifacts/sub/Brew.schema.json +0 -47
@@ -1,384 +0,0 @@
1
- {
2
- "$schema": "https://json-schema.org/draft/2019-09/schema",
3
- "$id": "/equipment/item/_Item.schema.json",
4
- "$defs": {
5
- "DefaultItem": {
6
- "type": "object",
7
- "properties": {
8
- "cost": {
9
- "description": "The cost in silverthalers.",
10
- "$ref": "#/$defs/Cost"
11
- },
12
- "weight": {
13
- "description": "The weight in kg.",
14
- "$ref": "#/$defs/Weight"
15
- },
16
- "complexity": {
17
- "description": "The complexity of crafting the item.",
18
- "$ref": "#/$defs/Complexity"
19
- },
20
- "structure_points": {
21
- "description": "The structure points of the item. Use an array if the item consists of multiple components that have individual structure points.",
22
- "$ref": "#/$defs/StructurePoints"
23
- },
24
- "combat_use": {
25
- "description": "The item can also be used either as an improvised weapon or as an armor, although this is not the primary use case of the item.",
26
- "$ref": "#/$defs/CombatUse"
27
- },
28
- "src": {
29
- "$ref": "../../source/_PublicationRef.schema.json#/$defs/PublicationRefs"
30
- },
31
- "translations": {
32
- "description": "All translations for the entry, identified by IETF language tag (BCP47).",
33
- "type": "object",
34
- "patternProperties": {
35
- "^[a-z]{2}-[A-Z]{2}$": {
36
- "$ref": "#/$defs/DefaultItemTranslation"
37
- }
38
- },
39
- "minProperties": 1,
40
- "additionalProperties": false
41
- }
42
- },
43
- "required": [
44
- "cost",
45
- "weight",
46
- "structure_points",
47
- "src",
48
- "translations"
49
- ],
50
- "additionalProperties": false
51
- },
52
- "CombatUse": {
53
- "description": "The item can also be used either as an improvised weapon or as an armor, although this is not the primary use case of the item.",
54
- "oneOf": [
55
- {
56
- "type": "object",
57
- "properties": {
58
- "tag": {
59
- "const": "Weapon"
60
- },
61
- "weapon": {
62
- "$ref": "./Weapon.schema.json#/$defs/SecondaryWeapon"
63
- }
64
- },
65
- "required": [
66
- "tag",
67
- "weapon"
68
- ],
69
- "additionalProperties": false
70
- },
71
- {
72
- "type": "object",
73
- "properties": {
74
- "tag": {
75
- "const": "Armor"
76
- },
77
- "armor": {
78
- "$ref": "./Armor.schema.json#/$defs/SecondaryArmor"
79
- }
80
- },
81
- "required": [
82
- "tag",
83
- "armor"
84
- ],
85
- "additionalProperties": false
86
- }
87
- ]
88
- },
89
- "DefaultItemTranslation": {
90
- "type": "object",
91
- "properties": {
92
- "name": {
93
- "description": "The name of the item.",
94
- "$ref": "../../_NonEmptyString.schema.json#/$defs/NonEmptyString"
95
- },
96
- "secondary_name": {
97
- "description": "An auxiliary name or label of the item, if available.",
98
- "$ref": "../../_NonEmptyString.schema.json#/$defs/NonEmptyString"
99
- },
100
- "note": {
101
- "description": "Note text.",
102
- "$ref": "../../_NonEmptyString.schema.json#/$defs/NonEmptyMarkdown"
103
- },
104
- "rules": {
105
- "description": "Special rules text.",
106
- "$ref": "../../_NonEmptyString.schema.json#/$defs/NonEmptyMarkdown"
107
- },
108
- "errata": {
109
- "$ref": "../../source/_Erratum.schema.json#/$defs/Errata"
110
- }
111
- },
112
- "required": [
113
- "name"
114
- ],
115
- "additionalProperties": false
116
- },
117
- "StructurePoints": {
118
- "title": "Structure Points",
119
- "description": "The structure points of the item. Use an array if the item consists of multiple components that have individual structure points.",
120
- "type": "array",
121
- "items": {
122
- "$ref": "#/$defs/StructurePointsComponent"
123
- },
124
- "minItems": 1
125
- },
126
- "StructurePointsComponent": {
127
- "type": "object",
128
- "properties": {
129
- "points": {
130
- "description": "The structure points.",
131
- "type": "integer",
132
- "minimum": 1
133
- }
134
- },
135
- "required": [
136
- "points"
137
- ],
138
- "additionalProperties": false
139
- },
140
- "Cost": {
141
- "description": "The cost in silverthalers.",
142
- "oneOf": [
143
- {
144
- "type": "object",
145
- "properties": {
146
- "tag": {
147
- "const": "Free"
148
- },
149
- "free": {
150
- "type": "object",
151
- "properties": {},
152
- "required": [],
153
- "additionalProperties": false
154
- }
155
- },
156
- "required": [
157
- "tag",
158
- "free"
159
- ],
160
- "additionalProperties": false
161
- },
162
- {
163
- "type": "object",
164
- "properties": {
165
- "tag": {
166
- "const": "Various"
167
- },
168
- "various": {
169
- "type": "object",
170
- "properties": {},
171
- "required": [],
172
- "additionalProperties": false
173
- }
174
- },
175
- "required": [
176
- "tag",
177
- "various"
178
- ],
179
- "additionalProperties": false
180
- },
181
- {
182
- "type": "object",
183
- "properties": {
184
- "tag": {
185
- "const": "Invaluable"
186
- },
187
- "invaluable": {
188
- "type": "object",
189
- "properties": {},
190
- "required": [],
191
- "additionalProperties": false
192
- }
193
- },
194
- "required": [
195
- "tag",
196
- "invaluable"
197
- ],
198
- "additionalProperties": false
199
- },
200
- {
201
- "type": "object",
202
- "properties": {
203
- "tag": {
204
- "const": "Fixed"
205
- },
206
- "fixed": {
207
- "$ref": "#/$defs/FixedCost"
208
- }
209
- },
210
- "required": [
211
- "tag",
212
- "fixed"
213
- ],
214
- "additionalProperties": false
215
- },
216
- {
217
- "type": "object",
218
- "properties": {
219
- "tag": {
220
- "const": "Range"
221
- },
222
- "range": {
223
- "$ref": "#/$defs/CostRange"
224
- }
225
- },
226
- "required": [
227
- "tag",
228
- "range"
229
- ],
230
- "additionalProperties": false
231
- }
232
- ]
233
- },
234
- "FixedCost": {
235
- "type": "object",
236
- "properties": {
237
- "value": {
238
- "description": "The cost in silverthalers.",
239
- "type": "number",
240
- "exclusiveMinimum": 0
241
- },
242
- "translations": {
243
- "description": "All translations for the entry, identified by IETF language tag (BCP47).",
244
- "type": "object",
245
- "patternProperties": {
246
- "^[a-z]{2}-[A-Z]{2}$": {
247
- "$ref": "#/$defs/CostTranslation"
248
- }
249
- },
250
- "minProperties": 1,
251
- "additionalProperties": false
252
- }
253
- },
254
- "required": [
255
- "value"
256
- ],
257
- "additionalProperties": false
258
- },
259
- "CostRange": {
260
- "type": "object",
261
- "properties": {
262
- "from": {
263
- "description": "The lower bound of the cost in silverthalers.",
264
- "type": "number",
265
- "exclusiveMinimum": 0
266
- },
267
- "to": {
268
- "description": "The upper bound of the cost in silverthalers.",
269
- "type": "number",
270
- "exclusiveMinimum": 0
271
- },
272
- "translations": {
273
- "description": "All translations for the entry, identified by IETF language tag (BCP47).",
274
- "type": "object",
275
- "patternProperties": {
276
- "^[a-z]{2}-[A-Z]{2}$": {
277
- "$ref": "#/$defs/CostTranslation"
278
- }
279
- },
280
- "minProperties": 1,
281
- "additionalProperties": false
282
- }
283
- },
284
- "required": [
285
- "from",
286
- "to"
287
- ],
288
- "additionalProperties": false
289
- },
290
- "CostTranslation": {
291
- "type": "object",
292
- "properties": {
293
- "wrap_in_text": {
294
- "description": "The cost get wrapped by this text using a placeholder in the text.",
295
- "type": "string",
296
- "minLength": 1,
297
- "pattern": "\\{0\\}"
298
- }
299
- },
300
- "required": [
301
- "wrap_in_text"
302
- ],
303
- "additionalProperties": false
304
- },
305
- "Weight": {
306
- "description": "The weight in kg.",
307
- "type": "number",
308
- "exclusiveMinimum": 0
309
- },
310
- "Complexity": {
311
- "description": "The complexity of crafting the item.",
312
- "oneOf": [
313
- {
314
- "type": "object",
315
- "properties": {
316
- "tag": {
317
- "const": "Primitive"
318
- },
319
- "primitive": {
320
- "type": "object",
321
- "properties": {},
322
- "required": [],
323
- "additionalProperties": false
324
- }
325
- },
326
- "required": [
327
- "tag",
328
- "primitive"
329
- ],
330
- "additionalProperties": false
331
- },
332
- {
333
- "type": "object",
334
- "properties": {
335
- "tag": {
336
- "const": "Simple"
337
- },
338
- "simple": {
339
- "type": "object",
340
- "properties": {},
341
- "required": [],
342
- "additionalProperties": false
343
- }
344
- },
345
- "required": [
346
- "tag",
347
- "simple"
348
- ],
349
- "additionalProperties": false
350
- },
351
- {
352
- "type": "object",
353
- "properties": {
354
- "tag": {
355
- "const": "Complex"
356
- },
357
- "complex": {
358
- "$ref": "#/$defs/ComplexComplexity"
359
- }
360
- },
361
- "required": [
362
- "tag",
363
- "complex"
364
- ],
365
- "additionalProperties": false
366
- }
367
- ]
368
- },
369
- "ComplexComplexity": {
370
- "type": "object",
371
- "properties": {
372
- "ap_value": {
373
- "description": "The AP value for the trade secret.",
374
- "type": "integer",
375
- "minimum": 1
376
- }
377
- },
378
- "required": [
379
- "ap_value"
380
- ],
381
- "additionalProperties": false
382
- }
383
- }
384
- }
@@ -1,164 +0,0 @@
1
- {
2
- "$schema": "https://json-schema.org/draft/2019-09/schema",
3
- "$id": "/equipment/item/_MeleeWeapon.schema.json",
4
- "$defs": {
5
- "AttackModifier": {
6
- "description": "The AT modifier.",
7
- "type": "integer"
8
- },
9
- "ParryModifier": {
10
- "description": "The PA modifier.",
11
- "type": "integer"
12
- },
13
- "MeleeDamage": {
14
- "description": "The damage of a weapon consists of a random part using dice and an optional flat part.",
15
- "type": "object",
16
- "properties": {
17
- "dice": {
18
- "description": "How many dice of which type are rolled to get the damage.",
19
- "$ref": "../../_Dice.schema.json#/$defs/Dice"
20
- },
21
- "flat": {
22
- "description": "Flat damage, if any. It gets added to the result of the dice rolls.",
23
- "type": "integer",
24
- "default": 0
25
- }
26
- },
27
- "required": [
28
- "dice"
29
- ],
30
- "additionalProperties": false
31
- },
32
- "ShieldSize": {
33
- "description": "The shield size and potential size-depending values.",
34
- "oneOf": [
35
- {
36
- "type": "object",
37
- "properties": {
38
- "tag": {
39
- "const": "Small"
40
- },
41
- "small": {
42
- "type": "object",
43
- "properties": {},
44
- "required": [],
45
- "additionalProperties": false
46
- }
47
- },
48
- "required": [
49
- "tag",
50
- "small"
51
- ],
52
- "additionalProperties": false
53
- },
54
- {
55
- "type": "object",
56
- "properties": {
57
- "tag": {
58
- "const": "Medium"
59
- },
60
- "medium": {
61
- "type": "object",
62
- "properties": {},
63
- "required": [],
64
- "additionalProperties": false
65
- }
66
- },
67
- "required": [
68
- "tag",
69
- "medium"
70
- ],
71
- "additionalProperties": false
72
- },
73
- {
74
- "type": "object",
75
- "properties": {
76
- "tag": {
77
- "const": "Large"
78
- },
79
- "large": {
80
- "$ref": "#/$defs/LargeShieldSize"
81
- }
82
- },
83
- "required": [
84
- "tag"
85
- ],
86
- "additionalProperties": false
87
- }
88
- ]
89
- },
90
- "LargeShieldSize": {
91
- "type": "object",
92
- "properties": {
93
- "attack_penalty": {
94
- "description": "The attack penalty from the shield.",
95
- "type": "integer",
96
- "default": 1
97
- }
98
- },
99
- "required": [
100
- "attack_penalty"
101
- ],
102
- "additionalProperties": false
103
- },
104
- "MeleeWeapon": {
105
- "title": "Melee Weapon",
106
- "type": "object",
107
- "properties": {
108
- "combat_technique": {
109
- "description": "The combat techniques and dependent values.",
110
- "$ref": "../../_SimpleReferences.schema.json#/$defs/CloseCombatTechniqueReference"
111
- },
112
- "damage": {
113
- "description": "The damage of a weapon consists of a random part using dice and an optional flat part.",
114
- "$ref": "#/$defs/MeleeDamage"
115
- },
116
- "damage_threshold": {
117
- "description": "The primary attribute damage and threshold value.",
118
- "$ref": "./_Weapon.schema.json#/$defs/PrimaryAttributeDamageThreshold"
119
- },
120
- "at": {
121
- "description": "The AT modifier.",
122
- "$ref": "#/$defs/AttackModifier"
123
- },
124
- "pa": {
125
- "description": "The PA modifier.",
126
- "$ref": "#/$defs/ParryModifier"
127
- },
128
- "reach": {
129
- "description": "The reach of the weapon.",
130
- "$ref": "../../_Identifier.schema.json#/$defs/ReachIdentifier"
131
- },
132
- "length": {
133
- "description": "The length of the weapon in cm/halffingers.",
134
- "$ref": "./_Weapon.schema.json#/$defs/Length"
135
- },
136
- "size": {
137
- "description": "The shield size and potential size-depending values.",
138
- "$ref": "#/$defs/ShieldSize"
139
- },
140
- "is_parrying_weapon": {
141
- "description": "Is the weapon a parrying weapon?",
142
- "type": "boolean"
143
- },
144
- "is_two_handed_weapon": {
145
- "description": "Is the weapon a two-handed weapon?",
146
- "type": "boolean"
147
- },
148
- "is_improvised_weapon": {
149
- "description": "Is the weapon an improvised weapon?",
150
- "type": "boolean"
151
- }
152
- },
153
- "required": [
154
- "combat_technique",
155
- "damage",
156
- "at",
157
- "is_parrying_weapon",
158
- "is_two_handed_weapon",
159
- "is_improvised_weapon"
160
- ],
161
- "additionalProperties": false
162
- }
163
- }
164
- }