optolith-database-schema 0.39.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 (270) hide show
  1. package/CHANGELOG.md +52 -0
  2. package/README.md +1 -1
  3. package/gen/types.d.ts +1712 -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/Locale.d.ts +7 -0
  9. package/lib/types/Locale.js +7 -0
  10. package/lib/types/Profession.d.ts +31 -14
  11. package/lib/types/Profession.js +12 -2
  12. package/lib/types/Race.d.ts +22 -15
  13. package/lib/types/Race.js +26 -20
  14. package/lib/types/Talisman.d.ts +32 -6
  15. package/lib/types/Talisman.js +51 -11
  16. package/lib/types/_Identifier.d.ts +1 -0
  17. package/lib/types/_Identifier.js +2 -0
  18. package/lib/types/_IdentifierGroup.d.ts +58 -0
  19. package/lib/types/_IdentifierGroup.js +15 -1
  20. package/lib/types/equipment/item/BandageOrRemedy.d.ts +5 -2
  21. package/lib/types/equipment/item/CeremonialItem.d.ts +6 -3
  22. package/lib/types/equipment/item/CeremonialItem.js +1 -1
  23. package/lib/types/equipment/item/Clothes.d.ts +5 -2
  24. package/lib/types/equipment/item/Container.d.ts +5 -2
  25. package/lib/types/equipment/item/Elixir.d.ts +16 -1
  26. package/lib/types/equipment/item/Elixir.js +35 -5
  27. package/lib/types/equipment/item/EquipmentOfBlessedOnes.d.ts +5 -2
  28. package/lib/types/equipment/item/IlluminationLightSource.d.ts +5 -2
  29. package/lib/types/equipment/item/IlluminationRefillOrSupply.d.ts +5 -2
  30. package/lib/types/equipment/item/Liebesspielzeug.d.ts +5 -2
  31. package/lib/types/equipment/item/LuxuryGood.d.ts +5 -2
  32. package/lib/types/equipment/item/MagicalArtifact.d.ts +5 -2
  33. package/lib/types/equipment/item/MusicalInstrument.d.ts +5 -2
  34. package/lib/types/equipment/item/OrienteeringAid.d.ts +5 -2
  35. package/lib/types/equipment/item/Poison.d.ts +64 -91
  36. package/lib/types/equipment/item/Poison.js +5 -34
  37. package/lib/types/equipment/item/RopeOrChain.d.ts +5 -2
  38. package/lib/types/equipment/item/Stationery.d.ts +5 -2
  39. package/lib/types/equipment/item/ThievesTool.d.ts +5 -2
  40. package/lib/types/equipment/item/TravelGearOrTool.d.ts +5 -2
  41. package/lib/types/equipment/item/Weapon.d.ts +10 -4
  42. package/lib/types/equipment/item/WeaponAccessory.d.ts +5 -2
  43. package/lib/types/equipment/item/_Herbary.d.ts +31 -0
  44. package/lib/types/equipment/item/_Herbary.js +9 -0
  45. package/lib/types/equipment/item/_Item.d.ts +10 -4
  46. package/lib/types/equipment/item/_MeleeWeapon.d.ts +2 -2
  47. package/lib/types/equipment/item/_MeleeWeapon.js +1 -1
  48. package/lib/types/equipment/item/_RangedWeapon.d.ts +8 -2
  49. package/lib/types/equipment/item/_RangedWeapon.js +2 -2
  50. package/lib/types/equipment/item/sub/Reach.d.ts +1 -0
  51. package/lib/types/equipment/item/sub/Reach.js +7 -0
  52. package/lib/types/magicalActions/MagicalMelody.d.ts +15 -0
  53. package/lib/types/magicalActions/MagicalMelody.js +5 -0
  54. package/lib/types/prerequisites/PrerequisiteGroups.d.ts +132 -0
  55. package/lib/types/prerequisites/PrerequisiteGroups.js +1 -0
  56. package/package.json +7 -7
  57. package/schema/Advantage.schema.json +0 -108
  58. package/schema/AnimalDisease.schema.json +0 -74
  59. package/schema/AnimalType.schema.json +0 -47
  60. package/schema/ArcaneBardTradition.schema.json +0 -11
  61. package/schema/ArcaneDancerTradition.schema.json +0 -11
  62. package/schema/Aspect.schema.json +0 -51
  63. package/schema/Attribute.schema.json +0 -57
  64. package/schema/Blessing.schema.json +0 -265
  65. package/schema/Cantrip.schema.json +0 -443
  66. package/schema/Ceremony.schema.json +0 -122
  67. package/schema/CombatTechnique_Close.schema.json +0 -116
  68. package/schema/CombatTechnique_Ranged.schema.json +0 -99
  69. package/schema/Condition.schema.json +0 -68
  70. package/schema/Continent.schema.json +0 -49
  71. package/schema/Culture.schema.json +0 -781
  72. package/schema/DerivedCharacteristic.schema.json +0 -90
  73. package/schema/Disadvantage.schema.json +0 -97
  74. package/schema/Disease.schema.json +0 -58
  75. package/schema/Element.schema.json +0 -48
  76. package/schema/ExperienceLevel.schema.json +0 -84
  77. package/schema/EyeColor.schema.json +0 -47
  78. package/schema/FamiliarsTrick.schema.json +0 -576
  79. package/schema/HairColor.schema.json +0 -47
  80. package/schema/Kirchenpraegung.schema.json +0 -11
  81. package/schema/Lessons_Curriculum.schema.json +0 -499
  82. package/schema/Lessons_Guideline.schema.json +0 -53
  83. package/schema/LiturgicalChant.schema.json +0 -122
  84. package/schema/Locale.schema.json +0 -38
  85. package/schema/MetaCondition.schema.json +0 -69
  86. package/schema/PactCategory.schema.json +0 -150
  87. package/schema/Patron.schema.json +0 -352
  88. package/schema/PatronCategory.schema.json +0 -57
  89. package/schema/PersonalityTrait.schema.json +0 -100
  90. package/schema/Profession.schema.json +0 -1424
  91. package/schema/Property.schema.json +0 -51
  92. package/schema/Race.schema.json +0 -534
  93. package/schema/Region.schema.json +0 -47
  94. package/schema/Ritual.schema.json +0 -120
  95. package/schema/Service.schema.json +0 -79
  96. package/schema/SexPractice.schema.json +0 -70
  97. package/schema/Skill.schema.json +0 -223
  98. package/schema/SkillGroup.schema.json +0 -57
  99. package/schema/SkillModificationLevel.schema.json +0 -153
  100. package/schema/SocialStatus.schema.json +0 -47
  101. package/schema/Spell.schema.json +0 -119
  102. package/schema/State.schema.json +0 -59
  103. package/schema/Talisman.schema.json +0 -120
  104. package/schema/TargetCategory.schema.json +0 -65
  105. package/schema/UI.schema.json +0 -4441
  106. package/schema/_Activatable.schema.json +0 -2755
  107. package/schema/_ActivatableSelectOptionCategory.schema.json +0 -1313
  108. package/schema/_ActivatableSkill.schema.json +0 -188
  109. package/schema/_ActivatableSkillCastingTime.schema.json +0 -181
  110. package/schema/_ActivatableSkillCheckResultBased.schema.json +0 -65
  111. package/schema/_ActivatableSkillCost.schema.json +0 -513
  112. package/schema/_ActivatableSkillDuration.schema.json +0 -353
  113. package/schema/_ActivatableSkillEffect.schema.json +0 -122
  114. package/schema/_ActivatableSkillRange.schema.json +0 -264
  115. package/schema/_ActivatableSkillTargetCategory.schema.json +0 -145
  116. package/schema/_AlternativeNames.schema.json +0 -23
  117. package/schema/_ArcaneTradition.schema.json +0 -51
  118. package/schema/_Blessed.schema.json +0 -64
  119. package/schema/_Dice.schema.json +0 -40
  120. package/schema/_DiseasePoison.schema.json +0 -152
  121. package/schema/_Enhancements.schema.json +0 -85
  122. package/schema/_I18n.schema.json +0 -55
  123. package/schema/_Identifier.schema.json +0 -2577
  124. package/schema/_IdentifierGroup.schema.json +0 -753
  125. package/schema/_ImprovementCost.schema.json +0 -23
  126. package/schema/_Influence.schema.json +0 -84
  127. package/schema/_NonEmptyString.schema.json +0 -14
  128. package/schema/_Prerequisite.schema.json +0 -1518
  129. package/schema/_ResponsiveText.schema.json +0 -66
  130. package/schema/_Sex.schema.json +0 -18
  131. package/schema/_SimpleReferences.schema.json +0 -522
  132. package/schema/_SkillCheck.schema.json +0 -38
  133. package/schema/_Spellwork.schema.json +0 -54
  134. package/schema/equipment/EquipmentPackage.schema.json +0 -79
  135. package/schema/equipment/item/Ammunition.schema.json +0 -56
  136. package/schema/equipment/item/Animal.schema.json +0 -36
  137. package/schema/equipment/item/AnimalCare.schema.json +0 -124
  138. package/schema/equipment/item/Armor.schema.json +0 -309
  139. package/schema/equipment/item/BandageOrRemedy.schema.json +0 -53
  140. package/schema/equipment/item/Book.schema.json +0 -89
  141. package/schema/equipment/item/CeremonialItem.schema.json +0 -59
  142. package/schema/equipment/item/Clothes.schema.json +0 -10
  143. package/schema/equipment/item/Container.schema.json +0 -10
  144. package/schema/equipment/item/Elixir.schema.json +0 -103
  145. package/schema/equipment/item/EquipmentOfBlessedOnes.schema.json +0 -49
  146. package/schema/equipment/item/GemOrPreciousStone.schema.json +0 -69
  147. package/schema/equipment/item/IlluminationLightSource.schema.json +0 -120
  148. package/schema/equipment/item/IlluminationRefillsOrSupplies.schema.json +0 -10
  149. package/schema/equipment/item/Jewelry.schema.json +0 -113
  150. package/schema/equipment/item/Liebesspielzeug.schema.json +0 -10
  151. package/schema/equipment/item/LuxuryGood.schema.json +0 -53
  152. package/schema/equipment/item/MagicalArtifact.schema.json +0 -64
  153. package/schema/equipment/item/MusicalInstrument.schema.json +0 -49
  154. package/schema/equipment/item/OrienteeringAid.schema.json +0 -10
  155. package/schema/equipment/item/Poison.schema.json +0 -835
  156. package/schema/equipment/item/RopeOrChain.schema.json +0 -10
  157. package/schema/equipment/item/Stationary.schema.json +0 -10
  158. package/schema/equipment/item/ThievesTool.schema.json +0 -10
  159. package/schema/equipment/item/ToolOfTheTrade.schema.json +0 -93
  160. package/schema/equipment/item/TravelGearOrTool.schema.json +0 -10
  161. package/schema/equipment/item/Vehicle.schema.json +0 -36
  162. package/schema/equipment/item/Weapon.schema.json +0 -285
  163. package/schema/equipment/item/WeaponAccessory.schema.json +0 -10
  164. package/schema/equipment/item/_Herbary.schema.json +0 -62
  165. package/schema/equipment/item/_Item.schema.json +0 -384
  166. package/schema/equipment/item/_MeleeWeapon.schema.json +0 -164
  167. package/schema/equipment/item/_RangedWeapon.schema.json +0 -185
  168. package/schema/equipment/item/_Weapon.schema.json +0 -99
  169. package/schema/equipment/item/sub/ArmorType.schema.json +0 -52
  170. package/schema/equipment/item/sub/Reach.schema.json +0 -47
  171. package/schema/magicalActions/AnimistPower.schema.json +0 -488
  172. package/schema/magicalActions/AnimistPower_Tribe.schema.json +0 -47
  173. package/schema/magicalActions/Curse.schema.json +0 -332
  174. package/schema/magicalActions/DominationRitual.schema.json +0 -275
  175. package/schema/magicalActions/ElvenMagicalSong.schema.json +0 -196
  176. package/schema/magicalActions/GeodeRitual.schema.json +0 -327
  177. package/schema/magicalActions/JesterTrick.schema.json +0 -311
  178. package/schema/magicalActions/MagicalDance.schema.json +0 -198
  179. package/schema/magicalActions/MagicalMelody.schema.json +0 -193
  180. package/schema/magicalActions/MagicalRune.schema.json +0 -578
  181. package/schema/magicalActions/ZibiljaRitual.schema.json +0 -165
  182. package/schema/magicalActions/_MusicTradition.schema.json +0 -82
  183. package/schema/magicalActions/_SkillReference.schema.json +0 -20
  184. package/schema/prerequisites/ConditionalPrerequisites.schema.json +0 -15
  185. package/schema/prerequisites/DisplayOption.schema.json +0 -70
  186. package/schema/prerequisites/PrerequisiteGroups.schema.json +0 -1029
  187. package/schema/prerequisites/single/ActivatablePrerequisite.schema.json +0 -45
  188. package/schema/prerequisites/single/AncestorBloodPrerequisite.schema.json +0 -14
  189. package/schema/prerequisites/single/AnimistPowerPrerequisite.schema.json +0 -36
  190. package/schema/prerequisites/single/CulturePrerequisite.schema.json +0 -24
  191. package/schema/prerequisites/single/EnhancementPrerequisite.schema.json +0 -61
  192. package/schema/prerequisites/single/InfluencePrerequisite.schema.json +0 -28
  193. package/schema/prerequisites/single/PactPrerequisite.schema.json +0 -36
  194. package/schema/prerequisites/single/PrimaryAttributePrerequisite.schema.json +0 -39
  195. package/schema/prerequisites/single/PublicationPrerequisite.schema.json +0 -22
  196. package/schema/prerequisites/single/RacePrerequisite.schema.json +0 -28
  197. package/schema/prerequisites/single/RatedMinimumNumberPrerequisite.schema.json +0 -172
  198. package/schema/prerequisites/single/RatedPrerequisite.schema.json +0 -29
  199. package/schema/prerequisites/single/RatedSumPrerequisite.schema.json +0 -33
  200. package/schema/prerequisites/single/RulePrerequisite.schema.json +0 -22
  201. package/schema/prerequisites/single/SexPrerequisite.schema.json +0 -23
  202. package/schema/prerequisites/single/SexualCharacteristicPrerequisite.schema.json +0 -30
  203. package/schema/prerequisites/single/SocialStatusPrerequisite.schema.json +0 -24
  204. package/schema/prerequisites/single/StatePrerequisite.schema.json +0 -23
  205. package/schema/prerequisites/single/TextPrerequisite.schema.json +0 -64
  206. package/schema/prerequisites/single/TraditionPrerequisite.schema.json +0 -58
  207. package/schema/rule/CoreRule.schema.json +0 -1403
  208. package/schema/rule/FocusRule.schema.json +0 -76
  209. package/schema/rule/FocusRule_Subject.schema.json +0 -48
  210. package/schema/rule/OptionalRule.schema.json +0 -64
  211. package/schema/source/Publication.schema.json +0 -103
  212. package/schema/source/_Erratum.schema.json +0 -36
  213. package/schema/source/_PublicationRef.schema.json +0 -285
  214. package/schema/specialAbility/AdvancedCombatSpecialAbility.schema.json +0 -102
  215. package/schema/specialAbility/AdvancedKarmaSpecialAbility.schema.json +0 -80
  216. package/schema/specialAbility/AdvancedMagicalSpecialAbility.schema.json +0 -80
  217. package/schema/specialAbility/AdvancedSkillSpecialAbility.schema.json +0 -80
  218. package/schema/specialAbility/AncestorGlyph.schema.json +0 -80
  219. package/schema/specialAbility/BlessedTradition.schema.json +0 -354
  220. package/schema/specialAbility/BrawlingSpecialAbility.schema.json +0 -82
  221. package/schema/specialAbility/CeremonialItemSpecialAbility.schema.json +0 -87
  222. package/schema/specialAbility/CombatSpecialAbility.schema.json +0 -98
  223. package/schema/specialAbility/CombatStyleSpecialAbility.schema.json +0 -273
  224. package/schema/specialAbility/CommandSpecialAbility.schema.json +0 -82
  225. package/schema/specialAbility/FamiliarSpecialAbility.schema.json +0 -74
  226. package/schema/specialAbility/FatePointSexSpecialAbility.schema.json +0 -74
  227. package/schema/specialAbility/FatePointSpecialAbility.schema.json +0 -84
  228. package/schema/specialAbility/GeneralSpecialAbility.schema.json +0 -88
  229. package/schema/specialAbility/KarmaSpecialAbility.schema.json +0 -78
  230. package/schema/specialAbility/LiturgicalStyleSpecialAbility.schema.json +0 -260
  231. package/schema/specialAbility/LycantropicGift.schema.json +0 -74
  232. package/schema/specialAbility/MagicStyleSpecialAbility.schema.json +0 -260
  233. package/schema/specialAbility/MagicalSign.schema.json +0 -72
  234. package/schema/specialAbility/MagicalSpecialAbility.schema.json +0 -88
  235. package/schema/specialAbility/MagicalTradition.schema.json +0 -163
  236. package/schema/specialAbility/PactGift.schema.json +0 -254
  237. package/schema/specialAbility/ProtectiveWardingCircleSpecialAbility.schema.json +0 -86
  238. package/schema/specialAbility/Sermon.schema.json +0 -74
  239. package/schema/specialAbility/SexSpecialAbility.schema.json +0 -80
  240. package/schema/specialAbility/SikaryanDrainSpecialAbility.schema.json +0 -78
  241. package/schema/specialAbility/SkillStyleSpecialAbility.schema.json +0 -254
  242. package/schema/specialAbility/VampiricGift.schema.json +0 -78
  243. package/schema/specialAbility/Vision.schema.json +0 -74
  244. package/schema/specialAbility/_Tradition.schema.json +0 -23
  245. package/schema/specialAbility/sub/Language.schema.json +0 -222
  246. package/schema/specialAbility/sub/Script.schema.json +0 -90
  247. package/schema/specialAbility/sub/TradeSecret.schema.json +0 -72
  248. package/schema/specialAbility/sub/_LanguageScript.schema.json +0 -24
  249. package/schema/traditionArtifacts/ArcaneOrbEnchantment.schema.json +0 -95
  250. package/schema/traditionArtifacts/AttireEnchantment.schema.json +0 -95
  251. package/schema/traditionArtifacts/BowlEnchantment.schema.json +0 -95
  252. package/schema/traditionArtifacts/CauldronEnchantment.schema.json +0 -115
  253. package/schema/traditionArtifacts/ChronicleEnchantment.schema.json +0 -95
  254. package/schema/traditionArtifacts/DaggerRitual.schema.json +0 -176
  255. package/schema/traditionArtifacts/FoolsHatEnchantment.schema.json +0 -95
  256. package/schema/traditionArtifacts/InstrumentEnchantment.schema.json +0 -95
  257. package/schema/traditionArtifacts/Krallenkettenzauber.schema.json +0 -95
  258. package/schema/traditionArtifacts/OrbEnchantment.schema.json +0 -95
  259. package/schema/traditionArtifacts/RingEnchantment.schema.json +0 -95
  260. package/schema/traditionArtifacts/SickleRitual.schema.json +0 -95
  261. package/schema/traditionArtifacts/SpellSwordEnchantment.schema.json +0 -99
  262. package/schema/traditionArtifacts/StaffEnchantment.schema.json +0 -103
  263. package/schema/traditionArtifacts/ToyEnchantment.schema.json +0 -95
  264. package/schema/traditionArtifacts/Trinkhornzauber.schema.json +0 -95
  265. package/schema/traditionArtifacts/WandEnchantment.schema.json +0 -87
  266. package/schema/traditionArtifacts/WeaponEnchantment.schema.json +0 -95
  267. package/schema/traditionArtifacts/sub/AnimalShape.schema.json +0 -85
  268. package/schema/traditionArtifacts/sub/AnimalShapePath.schema.json +0 -47
  269. package/schema/traditionArtifacts/sub/AnimalShapeSize.schema.json +0 -59
  270. package/schema/traditionArtifacts/sub/Brew.schema.json +0 -47
@@ -1,513 +0,0 @@
1
- {
2
- "$schema": "https://json-schema.org/draft/2019-09/schema",
3
- "$id": "/_ActivatableSkillCost.schema.json",
4
- "$defs": {
5
- "OneTimeCost": {
6
- "oneOf": [
7
- {
8
- "type": "object",
9
- "properties": {
10
- "tag": {
11
- "const": "Single"
12
- },
13
- "single": {
14
- "$ref": "#/$defs/SingleOneTimeCost"
15
- }
16
- },
17
- "required": [
18
- "tag",
19
- "single"
20
- ],
21
- "additionalProperties": false
22
- },
23
- {
24
- "type": "object",
25
- "properties": {
26
- "tag": {
27
- "const": "Conjunction"
28
- },
29
- "conjunction": {
30
- "$ref": "#/$defs/MultipleOneTimeCosts"
31
- }
32
- },
33
- "required": [
34
- "tag",
35
- "conjunction"
36
- ],
37
- "additionalProperties": false
38
- },
39
- {
40
- "type": "object",
41
- "properties": {
42
- "tag": {
43
- "const": "Disjunction"
44
- },
45
- "disjunction": {
46
- "$ref": "#/$defs/MultipleOneTimeCosts"
47
- }
48
- },
49
- "required": [
50
- "tag",
51
- "disjunction"
52
- ],
53
- "additionalProperties": false
54
- },
55
- {
56
- "type": "object",
57
- "properties": {
58
- "tag": {
59
- "const": "Map"
60
- },
61
- "map": {
62
- "$ref": "#/$defs/CostMap"
63
- }
64
- },
65
- "required": [
66
- "tag",
67
- "map"
68
- ],
69
- "additionalProperties": false
70
- }
71
- ]
72
- },
73
- "SingleOneTimeCost": {
74
- "oneOf": [
75
- {
76
- "type": "object",
77
- "properties": {
78
- "tag": {
79
- "const": "Modifiable"
80
- },
81
- "modifiable": {
82
- "$ref": "#/$defs/ModifiableOneTimeCost"
83
- }
84
- },
85
- "required": [
86
- "tag",
87
- "modifiable"
88
- ],
89
- "additionalProperties": false
90
- },
91
- {
92
- "type": "object",
93
- "properties": {
94
- "tag": {
95
- "const": "NonModifiable"
96
- },
97
- "non_modifiable": {
98
- "$ref": "#/$defs/NonModifiableOneTimeCost"
99
- }
100
- },
101
- "required": [
102
- "tag",
103
- "non_modifiable"
104
- ],
105
- "additionalProperties": false
106
- },
107
- {
108
- "type": "object",
109
- "properties": {
110
- "tag": {
111
- "const": "Indefinite"
112
- },
113
- "indefinite": {
114
- "$ref": "#/$defs/IndefiniteOneTimeCost"
115
- }
116
- },
117
- "required": [
118
- "tag",
119
- "indefinite"
120
- ],
121
- "additionalProperties": false
122
- }
123
- ]
124
- },
125
- "MultipleOneTimeCosts": {
126
- "type": "array",
127
- "items": {
128
- "$ref": "#/$defs/SingleOneTimeCost"
129
- },
130
- "minItems": 2
131
- },
132
- "ModifiableOneTimeCost": {
133
- "type": "object",
134
- "properties": {
135
- "initial_modification_level": {
136
- "description": "The initial skill modification identifier/level.",
137
- "type": "integer",
138
- "maximum": 6,
139
- "minimum": 1
140
- },
141
- "permanent_value": {
142
- "description": "The part of the cost value that has to be spent permanently.",
143
- "type": "integer",
144
- "minimum": 1
145
- },
146
- "translations": {
147
- "description": "All translations for the entry, identified by IETF language tag (BCP47).",
148
- "type": "object",
149
- "patternProperties": {
150
- "^[a-z]{2}-[A-Z]{2}$": {
151
- "$ref": "#/$defs/ModifiableOneTimeCostTranslation"
152
- }
153
- },
154
- "minProperties": 1,
155
- "additionalProperties": false
156
- }
157
- },
158
- "required": [
159
- "initial_modification_level"
160
- ],
161
- "additionalProperties": false
162
- },
163
- "ModifiableOneTimeCostTranslation": {
164
- "type": "object",
165
- "properties": {
166
- "replacement": {
167
- "description": "A replacement string.",
168
- "$ref": "./_ResponsiveText.schema.json#/$defs/ResponsiveTextReplace"
169
- }
170
- },
171
- "required": [
172
- "replacement"
173
- ],
174
- "additionalProperties": false
175
- },
176
- "NonModifiableOneTimeCost": {
177
- "type": "object",
178
- "properties": {
179
- "is_minimum": {
180
- "description": "If `true`, the non-modifiable value is a minimum value.",
181
- "type": "boolean"
182
- },
183
- "value": {
184
- "description": "The AE cost value.",
185
- "type": "integer",
186
- "minimum": 1
187
- },
188
- "permanent_value": {
189
- "description": "The part of the cost value that has to be spent permanently.",
190
- "type": "integer",
191
- "minimum": 1
192
- },
193
- "per": {
194
- "description": "The cost have to be per a specific countable entity, e.g. `8 KP per person`.",
195
- "$ref": "#/$defs/NonModifiableOneTimeCostPerCountable"
196
- },
197
- "translations": {
198
- "description": "All translations for the entry, identified by IETF language tag (BCP47).",
199
- "type": "object",
200
- "patternProperties": {
201
- "^[a-z]{2}-[A-Z]{2}$": {
202
- "$ref": "#/$defs/NonModifiableOneTimeCostTranslation"
203
- }
204
- },
205
- "minProperties": 1,
206
- "additionalProperties": false
207
- }
208
- },
209
- "required": [
210
- "value"
211
- ],
212
- "additionalProperties": false
213
- },
214
- "NonModifiableOneTimeCostPerCountable": {
215
- "type": "object",
216
- "properties": {
217
- "minimum_total": {
218
- "description": "If defined, the minimum total AE that have to be spent casting the skill.",
219
- "type": "number"
220
- },
221
- "translations": {
222
- "description": "All translations for the entry, identified by IETF language tag (BCP47).",
223
- "type": "object",
224
- "patternProperties": {
225
- "^[a-z]{2}-[A-Z]{2}$": {
226
- "$ref": "#/$defs/NonModifiableOneTimeCostPerCountableTranslation"
227
- }
228
- },
229
- "minProperties": 1,
230
- "additionalProperties": false
231
- }
232
- },
233
- "required": [
234
- "translations"
235
- ],
236
- "additionalProperties": false
237
- },
238
- "NonModifiableOneTimeCostPerCountableTranslation": {
239
- "type": "object",
240
- "properties": {
241
- "countable": {
242
- "description": "The countable entity name.",
243
- "$ref": "./_ResponsiveText.schema.json#/$defs/ResponsiveText"
244
- }
245
- },
246
- "required": [
247
- "countable"
248
- ],
249
- "additionalProperties": false
250
- },
251
- "NonModifiableOneTimeCostTranslation": {
252
- "type": "object",
253
- "properties": {
254
- "note": {
255
- "description": "A note, appended to the generated string in parenthesis.",
256
- "$ref": "./_ResponsiveText.schema.json#/$defs/ResponsiveTextOptional"
257
- }
258
- },
259
- "required": [
260
- "note"
261
- ],
262
- "additionalProperties": false
263
- },
264
- "IndefiniteOneTimeCost": {
265
- "type": "object",
266
- "properties": {
267
- "translations": {
268
- "description": "All translations for the entry, identified by IETF language tag (BCP47).",
269
- "type": "object",
270
- "patternProperties": {
271
- "^[a-z]{2}-[A-Z]{2}$": {
272
- "$ref": "#/$defs/IndefiniteOneTimeCostTranslation"
273
- }
274
- },
275
- "minProperties": 1,
276
- "additionalProperties": false
277
- }
278
- },
279
- "required": [
280
- "translations"
281
- ],
282
- "additionalProperties": false
283
- },
284
- "IndefiniteOneTimeCostTranslation": {
285
- "type": "object",
286
- "properties": {
287
- "description": {
288
- "description": "A description of where the cost come from.",
289
- "$ref": "./_ResponsiveText.schema.json#/$defs/ResponsiveText"
290
- }
291
- },
292
- "required": [
293
- "description"
294
- ],
295
- "additionalProperties": false
296
- },
297
- "CostMap": {
298
- "description": "A content that is `2/4/8/16 AE for an item the size of a cup/chest/door/castle gate` may be respresented as the following map:\n\n```yaml\noptions:\n - value: 2\n label: \"cup\"\n - value: 4\n label: \"chest\"\n - value: 8\n label: \"door\"\n - value: 16\n label: \"castle gate\"\nfor_append: \"an item the size of a\"\n```\n\nThis will generate the exact same string as seen above – given it is set for a spellwork and thus `AE` is used.",
299
- "type": "object",
300
- "properties": {
301
- "options": {
302
- "description": "The possible costs and associated labels.",
303
- "type": "array",
304
- "items": {
305
- "$ref": "#/$defs/CostMapOption"
306
- },
307
- "minItems": 2
308
- },
309
- "translations": {
310
- "description": "All translations for the entry, identified by IETF language tag (BCP47).",
311
- "type": "object",
312
- "patternProperties": {
313
- "^[a-z]{2}-[A-Z]{2}$": {
314
- "$ref": "#/$defs/CostMapTranslation"
315
- }
316
- },
317
- "minProperties": 1,
318
- "additionalProperties": false
319
- }
320
- },
321
- "required": [
322
- "options"
323
- ],
324
- "additionalProperties": false
325
- },
326
- "CostMapOption": {
327
- "type": "object",
328
- "properties": {
329
- "value": {
330
- "description": "The full cost value for this option.",
331
- "type": "integer",
332
- "minimum": 1
333
- },
334
- "permanent_value": {
335
- "description": "The part of the `value` that has to be paid permanently.",
336
- "type": "integer",
337
- "minimum": 0
338
- },
339
- "translations": {
340
- "description": "All translations for the entry, identified by IETF language tag (BCP47).",
341
- "type": "object",
342
- "patternProperties": {
343
- "^[a-z]{2}-[A-Z]{2}$": {
344
- "$ref": "#/$defs/CostMapOptionTranslation"
345
- }
346
- },
347
- "minProperties": 1,
348
- "additionalProperties": false
349
- }
350
- },
351
- "required": [
352
- "value"
353
- ],
354
- "additionalProperties": false
355
- },
356
- "CostMapOptionTranslation": {
357
- "type": "object",
358
- "properties": {
359
- "label": {
360
- "description": "The description of the option for cost string generation.",
361
- "$ref": "./_NonEmptyString.schema.json#/$defs/NonEmptyString"
362
- },
363
- "label_standalone": {
364
- "description": "The description of the option if used standalone. Only used if different from `label`.",
365
- "$ref": "./_NonEmptyString.schema.json#/$defs/NonEmptyString"
366
- }
367
- },
368
- "required": [
369
- "label"
370
- ],
371
- "additionalProperties": false
372
- },
373
- "CostMapTranslation": {
374
- "type": "object",
375
- "properties": {
376
- "list_prepend": {
377
- "description": "Place a string between the `for` and the grouped map option labels.",
378
- "$ref": "./_NonEmptyString.schema.json#/$defs/NonEmptyString"
379
- },
380
- "list_append": {
381
- "description": "Place a string after the grouped map option labels.",
382
- "$ref": "./_NonEmptyString.schema.json#/$defs/NonEmptyString"
383
- },
384
- "replacement": {
385
- "description": "If the string from the book cannot be generated using the default generation technique, use this string. All options still need to be inserted propertly, since it may be used by in-game tools to provide a selection to players.",
386
- "$ref": "./_NonEmptyString.schema.json#/$defs/NonEmptyString"
387
- }
388
- },
389
- "required": [],
390
- "additionalProperties": false
391
- },
392
- "SustainedCost": {
393
- "oneOf": [
394
- {
395
- "type": "object",
396
- "properties": {
397
- "tag": {
398
- "const": "Modifiable"
399
- },
400
- "modifiable": {
401
- "$ref": "#/$defs/ModifiableSustainedCost"
402
- }
403
- },
404
- "required": [
405
- "tag",
406
- "modifiable"
407
- ],
408
- "additionalProperties": false
409
- },
410
- {
411
- "type": "object",
412
- "properties": {
413
- "tag": {
414
- "const": "NonModifiable"
415
- },
416
- "non_modifiable": {
417
- "$ref": "#/$defs/NonModifiableSustainedCost"
418
- }
419
- },
420
- "required": [
421
- "tag",
422
- "non_modifiable"
423
- ],
424
- "additionalProperties": false
425
- }
426
- ]
427
- },
428
- "ModifiableSustainedCost": {
429
- "type": "object",
430
- "properties": {
431
- "initial_modification_level": {
432
- "description": "The initial skill modification identifier/level.",
433
- "type": "integer",
434
- "maximum": 6,
435
- "minimum": 1
436
- },
437
- "interval": {
438
- "description": "The sustain interval.",
439
- "$ref": "./_ActivatableSkillDuration.schema.json#/$defs/DurationUnitValue"
440
- }
441
- },
442
- "required": [
443
- "initial_modification_level",
444
- "interval"
445
- ],
446
- "additionalProperties": false
447
- },
448
- "NonModifiableSustainedCost": {
449
- "type": "object",
450
- "properties": {
451
- "is_minimum": {
452
- "description": "If `true`, the non-modifiable value is a minimum value.",
453
- "type": "boolean"
454
- },
455
- "value": {
456
- "description": "The AE cost value.",
457
- "type": "integer",
458
- "minimum": 1
459
- },
460
- "per": {
461
- "description": "The cost have to be per a specific countable entity, e.g. `8 KP per person per 5 minutes`.",
462
- "$ref": "#/$defs/NonModifiableSustainedCostPerCountable"
463
- },
464
- "interval": {
465
- "description": "The sustain interval.",
466
- "$ref": "./_ActivatableSkillDuration.schema.json#/$defs/DurationUnitValue"
467
- }
468
- },
469
- "required": [
470
- "value",
471
- "interval"
472
- ],
473
- "additionalProperties": false
474
- },
475
- "NonModifiableSustainedCostPerCountable": {
476
- "type": "object",
477
- "properties": {
478
- "minimum_total": {
479
- "description": "If defined, the minimum total AE that have to be spent casting the skill.",
480
- "type": "number"
481
- },
482
- "translations": {
483
- "description": "All translations for the entry, identified by IETF language tag (BCP47).",
484
- "type": "object",
485
- "patternProperties": {
486
- "^[a-z]{2}-[A-Z]{2}$": {
487
- "$ref": "#/$defs/NonModifiableSustainedCostPerCountableTranslation"
488
- }
489
- },
490
- "minProperties": 1,
491
- "additionalProperties": false
492
- }
493
- },
494
- "required": [
495
- "translations"
496
- ],
497
- "additionalProperties": false
498
- },
499
- "NonModifiableSustainedCostPerCountableTranslation": {
500
- "type": "object",
501
- "properties": {
502
- "countable": {
503
- "description": "The countable entity name.",
504
- "$ref": "./_ResponsiveText.schema.json#/$defs/ResponsiveText"
505
- }
506
- },
507
- "required": [
508
- "countable"
509
- ],
510
- "additionalProperties": false
511
- }
512
- }
513
- }