optolith-database-schema 0.40.0 → 0.42.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 (288) hide show
  1. package/CHANGELOG.md +59 -0
  2. package/README.md +1 -1
  3. package/gen/types.d.ts +1705 -1582
  4. package/lib/types/Ceremony.d.ts +3 -0
  5. package/lib/types/DerivedCharacteristic.d.ts +23 -14
  6. package/lib/types/DerivedCharacteristic.js +58 -21
  7. package/lib/types/Disease.d.ts +2 -0
  8. package/lib/types/Disease.js +8 -0
  9. package/lib/types/FamiliarsTrick.d.ts +1 -0
  10. package/lib/types/FamiliarsTrick.js +8 -2
  11. package/lib/types/LiturgicalChant.d.ts +3 -0
  12. package/lib/types/Locale.d.ts +10 -6
  13. package/lib/types/Locale.js +10 -6
  14. package/lib/types/Profession.d.ts +31 -14
  15. package/lib/types/Profession.js +12 -2
  16. package/lib/types/Race.d.ts +28 -19
  17. package/lib/types/Race.js +36 -22
  18. package/lib/types/Ritual.d.ts +3 -0
  19. package/lib/types/Spell.d.ts +3 -0
  20. package/lib/types/Talisman.d.ts +32 -6
  21. package/lib/types/Talisman.js +51 -11
  22. package/lib/types/_ActivatableSkill.d.ts +8 -0
  23. package/lib/types/_ActivatableSkillCheckResultBased.d.ts +2 -0
  24. package/lib/types/_ActivatableSkillCheckResultBased.js +1 -0
  25. package/lib/types/_ActivatableSkillDuration.d.ts +2 -0
  26. package/lib/types/_ActivatableSkillRange.d.ts +1 -0
  27. package/lib/types/_Identifier.d.ts +1 -0
  28. package/lib/types/_Identifier.js +2 -0
  29. package/lib/types/_IdentifierGroup.d.ts +58 -0
  30. package/lib/types/_IdentifierGroup.js +15 -1
  31. package/lib/types/equipment/item/BandageOrRemedy.d.ts +5 -2
  32. package/lib/types/equipment/item/CeremonialItem.d.ts +6 -3
  33. package/lib/types/equipment/item/CeremonialItem.js +1 -1
  34. package/lib/types/equipment/item/Clothes.d.ts +5 -2
  35. package/lib/types/equipment/item/Container.d.ts +5 -2
  36. package/lib/types/equipment/item/Elixir.d.ts +16 -1
  37. package/lib/types/equipment/item/Elixir.js +35 -5
  38. package/lib/types/equipment/item/EquipmentOfBlessedOnes.d.ts +5 -2
  39. package/lib/types/equipment/item/IlluminationLightSource.d.ts +5 -2
  40. package/lib/types/equipment/item/IlluminationRefillOrSupply.d.ts +5 -2
  41. package/lib/types/equipment/item/Liebesspielzeug.d.ts +5 -2
  42. package/lib/types/equipment/item/LuxuryGood.d.ts +5 -2
  43. package/lib/types/equipment/item/MagicalArtifact.d.ts +5 -2
  44. package/lib/types/equipment/item/MusicalInstrument.d.ts +5 -2
  45. package/lib/types/equipment/item/OrienteeringAid.d.ts +5 -2
  46. package/lib/types/equipment/item/Poison.d.ts +64 -91
  47. package/lib/types/equipment/item/Poison.js +5 -34
  48. package/lib/types/equipment/item/RopeOrChain.d.ts +5 -2
  49. package/lib/types/equipment/item/Stationery.d.ts +5 -2
  50. package/lib/types/equipment/item/ThievesTool.d.ts +5 -2
  51. package/lib/types/equipment/item/TravelGearOrTool.d.ts +5 -2
  52. package/lib/types/equipment/item/Weapon.d.ts +10 -4
  53. package/lib/types/equipment/item/WeaponAccessory.d.ts +5 -2
  54. package/lib/types/equipment/item/_Herbary.d.ts +31 -0
  55. package/lib/types/equipment/item/_Herbary.js +9 -0
  56. package/lib/types/equipment/item/_Item.d.ts +10 -4
  57. package/lib/types/equipment/item/_MeleeWeapon.d.ts +2 -2
  58. package/lib/types/equipment/item/_MeleeWeapon.js +1 -1
  59. package/lib/types/equipment/item/_RangedWeapon.d.ts +8 -2
  60. package/lib/types/equipment/item/_RangedWeapon.js +2 -2
  61. package/lib/types/equipment/item/sub/Reach.d.ts +1 -0
  62. package/lib/types/equipment/item/sub/Reach.js +7 -0
  63. package/lib/types/magicalActions/AnimistPower.d.ts +1 -0
  64. package/lib/types/magicalActions/Curse.d.ts +2 -0
  65. package/lib/types/magicalActions/DominationRitual.d.ts +2 -0
  66. package/lib/types/magicalActions/GeodeRitual.d.ts +1 -0
  67. package/lib/types/magicalActions/JesterTrick.d.ts +3 -0
  68. package/lib/types/magicalActions/MagicalMelody.d.ts +15 -0
  69. package/lib/types/magicalActions/MagicalMelody.js +5 -0
  70. package/lib/types/magicalActions/MagicalRune.d.ts +2 -0
  71. package/lib/types/magicalActions/ZibiljaRitual.d.ts +2 -0
  72. package/lib/types/prerequisites/PrerequisiteGroups.d.ts +132 -0
  73. package/lib/types/prerequisites/PrerequisiteGroups.js +1 -0
  74. package/package.json +7 -7
  75. package/schema/Advantage.schema.json +0 -108
  76. package/schema/AnimalDisease.schema.json +0 -74
  77. package/schema/AnimalType.schema.json +0 -47
  78. package/schema/ArcaneBardTradition.schema.json +0 -11
  79. package/schema/ArcaneDancerTradition.schema.json +0 -11
  80. package/schema/Aspect.schema.json +0 -51
  81. package/schema/Attribute.schema.json +0 -57
  82. package/schema/Blessing.schema.json +0 -265
  83. package/schema/Cantrip.schema.json +0 -443
  84. package/schema/Ceremony.schema.json +0 -122
  85. package/schema/CombatTechnique_Close.schema.json +0 -116
  86. package/schema/CombatTechnique_Ranged.schema.json +0 -99
  87. package/schema/Condition.schema.json +0 -68
  88. package/schema/Continent.schema.json +0 -49
  89. package/schema/Culture.schema.json +0 -781
  90. package/schema/DerivedCharacteristic.schema.json +0 -90
  91. package/schema/Disadvantage.schema.json +0 -97
  92. package/schema/Disease.schema.json +0 -58
  93. package/schema/Element.schema.json +0 -48
  94. package/schema/ExperienceLevel.schema.json +0 -84
  95. package/schema/EyeColor.schema.json +0 -47
  96. package/schema/FamiliarsTrick.schema.json +0 -576
  97. package/schema/HairColor.schema.json +0 -47
  98. package/schema/Kirchenpraegung.schema.json +0 -11
  99. package/schema/Lessons_Curriculum.schema.json +0 -499
  100. package/schema/Lessons_Guideline.schema.json +0 -53
  101. package/schema/LiturgicalChant.schema.json +0 -122
  102. package/schema/Locale.schema.json +0 -38
  103. package/schema/MetaCondition.schema.json +0 -69
  104. package/schema/PactCategory.schema.json +0 -150
  105. package/schema/Patron.schema.json +0 -352
  106. package/schema/PatronCategory.schema.json +0 -57
  107. package/schema/PersonalityTrait.schema.json +0 -100
  108. package/schema/Profession.schema.json +0 -1424
  109. package/schema/Property.schema.json +0 -51
  110. package/schema/Race.schema.json +0 -534
  111. package/schema/Region.schema.json +0 -47
  112. package/schema/Ritual.schema.json +0 -120
  113. package/schema/Service.schema.json +0 -79
  114. package/schema/SexPractice.schema.json +0 -70
  115. package/schema/Skill.schema.json +0 -223
  116. package/schema/SkillGroup.schema.json +0 -57
  117. package/schema/SkillModificationLevel.schema.json +0 -153
  118. package/schema/SocialStatus.schema.json +0 -47
  119. package/schema/Spell.schema.json +0 -119
  120. package/schema/State.schema.json +0 -59
  121. package/schema/Talisman.schema.json +0 -120
  122. package/schema/TargetCategory.schema.json +0 -65
  123. package/schema/UI.schema.json +0 -4441
  124. package/schema/_Activatable.schema.json +0 -2755
  125. package/schema/_ActivatableSelectOptionCategory.schema.json +0 -1313
  126. package/schema/_ActivatableSkill.schema.json +0 -188
  127. package/schema/_ActivatableSkillCastingTime.schema.json +0 -181
  128. package/schema/_ActivatableSkillCheckResultBased.schema.json +0 -65
  129. package/schema/_ActivatableSkillCost.schema.json +0 -513
  130. package/schema/_ActivatableSkillDuration.schema.json +0 -353
  131. package/schema/_ActivatableSkillEffect.schema.json +0 -122
  132. package/schema/_ActivatableSkillRange.schema.json +0 -264
  133. package/schema/_ActivatableSkillTargetCategory.schema.json +0 -145
  134. package/schema/_AlternativeNames.schema.json +0 -23
  135. package/schema/_ArcaneTradition.schema.json +0 -51
  136. package/schema/_Blessed.schema.json +0 -64
  137. package/schema/_Dice.schema.json +0 -40
  138. package/schema/_DiseasePoison.schema.json +0 -152
  139. package/schema/_Enhancements.schema.json +0 -85
  140. package/schema/_I18n.schema.json +0 -55
  141. package/schema/_Identifier.schema.json +0 -2577
  142. package/schema/_IdentifierGroup.schema.json +0 -753
  143. package/schema/_ImprovementCost.schema.json +0 -23
  144. package/schema/_Influence.schema.json +0 -84
  145. package/schema/_NonEmptyString.schema.json +0 -14
  146. package/schema/_Prerequisite.schema.json +0 -1518
  147. package/schema/_ResponsiveText.schema.json +0 -66
  148. package/schema/_Sex.schema.json +0 -18
  149. package/schema/_SimpleReferences.schema.json +0 -522
  150. package/schema/_SkillCheck.schema.json +0 -38
  151. package/schema/_Spellwork.schema.json +0 -54
  152. package/schema/equipment/EquipmentPackage.schema.json +0 -79
  153. package/schema/equipment/item/Ammunition.schema.json +0 -56
  154. package/schema/equipment/item/Animal.schema.json +0 -36
  155. package/schema/equipment/item/AnimalCare.schema.json +0 -124
  156. package/schema/equipment/item/Armor.schema.json +0 -309
  157. package/schema/equipment/item/BandageOrRemedy.schema.json +0 -53
  158. package/schema/equipment/item/Book.schema.json +0 -89
  159. package/schema/equipment/item/CeremonialItem.schema.json +0 -59
  160. package/schema/equipment/item/Clothes.schema.json +0 -10
  161. package/schema/equipment/item/Container.schema.json +0 -10
  162. package/schema/equipment/item/Elixir.schema.json +0 -103
  163. package/schema/equipment/item/EquipmentOfBlessedOnes.schema.json +0 -49
  164. package/schema/equipment/item/GemOrPreciousStone.schema.json +0 -69
  165. package/schema/equipment/item/IlluminationLightSource.schema.json +0 -120
  166. package/schema/equipment/item/IlluminationRefillsOrSupplies.schema.json +0 -10
  167. package/schema/equipment/item/Jewelry.schema.json +0 -113
  168. package/schema/equipment/item/Liebesspielzeug.schema.json +0 -10
  169. package/schema/equipment/item/LuxuryGood.schema.json +0 -53
  170. package/schema/equipment/item/MagicalArtifact.schema.json +0 -64
  171. package/schema/equipment/item/MusicalInstrument.schema.json +0 -49
  172. package/schema/equipment/item/OrienteeringAid.schema.json +0 -10
  173. package/schema/equipment/item/Poison.schema.json +0 -835
  174. package/schema/equipment/item/RopeOrChain.schema.json +0 -10
  175. package/schema/equipment/item/Stationary.schema.json +0 -10
  176. package/schema/equipment/item/ThievesTool.schema.json +0 -10
  177. package/schema/equipment/item/ToolOfTheTrade.schema.json +0 -93
  178. package/schema/equipment/item/TravelGearOrTool.schema.json +0 -10
  179. package/schema/equipment/item/Vehicle.schema.json +0 -36
  180. package/schema/equipment/item/Weapon.schema.json +0 -285
  181. package/schema/equipment/item/WeaponAccessory.schema.json +0 -10
  182. package/schema/equipment/item/_Herbary.schema.json +0 -62
  183. package/schema/equipment/item/_Item.schema.json +0 -384
  184. package/schema/equipment/item/_MeleeWeapon.schema.json +0 -164
  185. package/schema/equipment/item/_RangedWeapon.schema.json +0 -185
  186. package/schema/equipment/item/_Weapon.schema.json +0 -99
  187. package/schema/equipment/item/sub/ArmorType.schema.json +0 -52
  188. package/schema/equipment/item/sub/Reach.schema.json +0 -47
  189. package/schema/magicalActions/AnimistPower.schema.json +0 -488
  190. package/schema/magicalActions/AnimistPower_Tribe.schema.json +0 -47
  191. package/schema/magicalActions/Curse.schema.json +0 -332
  192. package/schema/magicalActions/DominationRitual.schema.json +0 -275
  193. package/schema/magicalActions/ElvenMagicalSong.schema.json +0 -196
  194. package/schema/magicalActions/GeodeRitual.schema.json +0 -327
  195. package/schema/magicalActions/JesterTrick.schema.json +0 -311
  196. package/schema/magicalActions/MagicalDance.schema.json +0 -198
  197. package/schema/magicalActions/MagicalMelody.schema.json +0 -193
  198. package/schema/magicalActions/MagicalRune.schema.json +0 -578
  199. package/schema/magicalActions/ZibiljaRitual.schema.json +0 -165
  200. package/schema/magicalActions/_MusicTradition.schema.json +0 -82
  201. package/schema/magicalActions/_SkillReference.schema.json +0 -20
  202. package/schema/prerequisites/ConditionalPrerequisites.schema.json +0 -15
  203. package/schema/prerequisites/DisplayOption.schema.json +0 -70
  204. package/schema/prerequisites/PrerequisiteGroups.schema.json +0 -1029
  205. package/schema/prerequisites/single/ActivatablePrerequisite.schema.json +0 -45
  206. package/schema/prerequisites/single/AncestorBloodPrerequisite.schema.json +0 -14
  207. package/schema/prerequisites/single/AnimistPowerPrerequisite.schema.json +0 -36
  208. package/schema/prerequisites/single/CulturePrerequisite.schema.json +0 -24
  209. package/schema/prerequisites/single/EnhancementPrerequisite.schema.json +0 -61
  210. package/schema/prerequisites/single/InfluencePrerequisite.schema.json +0 -28
  211. package/schema/prerequisites/single/PactPrerequisite.schema.json +0 -36
  212. package/schema/prerequisites/single/PrimaryAttributePrerequisite.schema.json +0 -39
  213. package/schema/prerequisites/single/PublicationPrerequisite.schema.json +0 -22
  214. package/schema/prerequisites/single/RacePrerequisite.schema.json +0 -28
  215. package/schema/prerequisites/single/RatedMinimumNumberPrerequisite.schema.json +0 -172
  216. package/schema/prerequisites/single/RatedPrerequisite.schema.json +0 -29
  217. package/schema/prerequisites/single/RatedSumPrerequisite.schema.json +0 -33
  218. package/schema/prerequisites/single/RulePrerequisite.schema.json +0 -22
  219. package/schema/prerequisites/single/SexPrerequisite.schema.json +0 -23
  220. package/schema/prerequisites/single/SexualCharacteristicPrerequisite.schema.json +0 -30
  221. package/schema/prerequisites/single/SocialStatusPrerequisite.schema.json +0 -24
  222. package/schema/prerequisites/single/StatePrerequisite.schema.json +0 -23
  223. package/schema/prerequisites/single/TextPrerequisite.schema.json +0 -64
  224. package/schema/prerequisites/single/TraditionPrerequisite.schema.json +0 -58
  225. package/schema/rule/CoreRule.schema.json +0 -1403
  226. package/schema/rule/FocusRule.schema.json +0 -76
  227. package/schema/rule/FocusRule_Subject.schema.json +0 -48
  228. package/schema/rule/OptionalRule.schema.json +0 -64
  229. package/schema/source/Publication.schema.json +0 -103
  230. package/schema/source/_Erratum.schema.json +0 -36
  231. package/schema/source/_PublicationRef.schema.json +0 -285
  232. package/schema/specialAbility/AdvancedCombatSpecialAbility.schema.json +0 -102
  233. package/schema/specialAbility/AdvancedKarmaSpecialAbility.schema.json +0 -80
  234. package/schema/specialAbility/AdvancedMagicalSpecialAbility.schema.json +0 -80
  235. package/schema/specialAbility/AdvancedSkillSpecialAbility.schema.json +0 -80
  236. package/schema/specialAbility/AncestorGlyph.schema.json +0 -80
  237. package/schema/specialAbility/BlessedTradition.schema.json +0 -354
  238. package/schema/specialAbility/BrawlingSpecialAbility.schema.json +0 -82
  239. package/schema/specialAbility/CeremonialItemSpecialAbility.schema.json +0 -87
  240. package/schema/specialAbility/CombatSpecialAbility.schema.json +0 -98
  241. package/schema/specialAbility/CombatStyleSpecialAbility.schema.json +0 -273
  242. package/schema/specialAbility/CommandSpecialAbility.schema.json +0 -82
  243. package/schema/specialAbility/FamiliarSpecialAbility.schema.json +0 -74
  244. package/schema/specialAbility/FatePointSexSpecialAbility.schema.json +0 -74
  245. package/schema/specialAbility/FatePointSpecialAbility.schema.json +0 -84
  246. package/schema/specialAbility/GeneralSpecialAbility.schema.json +0 -88
  247. package/schema/specialAbility/KarmaSpecialAbility.schema.json +0 -78
  248. package/schema/specialAbility/LiturgicalStyleSpecialAbility.schema.json +0 -260
  249. package/schema/specialAbility/LycantropicGift.schema.json +0 -74
  250. package/schema/specialAbility/MagicStyleSpecialAbility.schema.json +0 -260
  251. package/schema/specialAbility/MagicalSign.schema.json +0 -72
  252. package/schema/specialAbility/MagicalSpecialAbility.schema.json +0 -88
  253. package/schema/specialAbility/MagicalTradition.schema.json +0 -163
  254. package/schema/specialAbility/PactGift.schema.json +0 -254
  255. package/schema/specialAbility/ProtectiveWardingCircleSpecialAbility.schema.json +0 -86
  256. package/schema/specialAbility/Sermon.schema.json +0 -74
  257. package/schema/specialAbility/SexSpecialAbility.schema.json +0 -80
  258. package/schema/specialAbility/SikaryanDrainSpecialAbility.schema.json +0 -78
  259. package/schema/specialAbility/SkillStyleSpecialAbility.schema.json +0 -254
  260. package/schema/specialAbility/VampiricGift.schema.json +0 -78
  261. package/schema/specialAbility/Vision.schema.json +0 -74
  262. package/schema/specialAbility/_Tradition.schema.json +0 -23
  263. package/schema/specialAbility/sub/Language.schema.json +0 -222
  264. package/schema/specialAbility/sub/Script.schema.json +0 -90
  265. package/schema/specialAbility/sub/TradeSecret.schema.json +0 -72
  266. package/schema/specialAbility/sub/_LanguageScript.schema.json +0 -24
  267. package/schema/traditionArtifacts/ArcaneOrbEnchantment.schema.json +0 -95
  268. package/schema/traditionArtifacts/AttireEnchantment.schema.json +0 -95
  269. package/schema/traditionArtifacts/BowlEnchantment.schema.json +0 -95
  270. package/schema/traditionArtifacts/CauldronEnchantment.schema.json +0 -115
  271. package/schema/traditionArtifacts/ChronicleEnchantment.schema.json +0 -95
  272. package/schema/traditionArtifacts/DaggerRitual.schema.json +0 -176
  273. package/schema/traditionArtifacts/FoolsHatEnchantment.schema.json +0 -95
  274. package/schema/traditionArtifacts/InstrumentEnchantment.schema.json +0 -95
  275. package/schema/traditionArtifacts/Krallenkettenzauber.schema.json +0 -95
  276. package/schema/traditionArtifacts/OrbEnchantment.schema.json +0 -95
  277. package/schema/traditionArtifacts/RingEnchantment.schema.json +0 -95
  278. package/schema/traditionArtifacts/SickleRitual.schema.json +0 -95
  279. package/schema/traditionArtifacts/SpellSwordEnchantment.schema.json +0 -99
  280. package/schema/traditionArtifacts/StaffEnchantment.schema.json +0 -103
  281. package/schema/traditionArtifacts/ToyEnchantment.schema.json +0 -95
  282. package/schema/traditionArtifacts/Trinkhornzauber.schema.json +0 -95
  283. package/schema/traditionArtifacts/WandEnchantment.schema.json +0 -87
  284. package/schema/traditionArtifacts/WeaponEnchantment.schema.json +0 -95
  285. package/schema/traditionArtifacts/sub/AnimalShape.schema.json +0 -85
  286. package/schema/traditionArtifacts/sub/AnimalShapePath.schema.json +0 -47
  287. package/schema/traditionArtifacts/sub/AnimalShapeSize.schema.json +0 -59
  288. package/schema/traditionArtifacts/sub/Brew.schema.json +0 -47
@@ -1,781 +0,0 @@
1
- {
2
- "$schema": "https://json-schema.org/draft/2019-09/schema",
3
- "$id": "/Culture.schema.json",
4
- "$ref": "#/$defs/Culture",
5
- "$defs": {
6
- "Culture": {
7
- "title": "Culture",
8
- "type": "object",
9
- "properties": {
10
- "id": {
11
- "description": "An unique, increasing integer.",
12
- "type": "integer",
13
- "minimum": 1
14
- },
15
- "language": {
16
- "description": "A list of native languages (usually it is only one).",
17
- "type": "array",
18
- "items": {
19
- "$ref": "./_SimpleReferences.schema.json#/$defs/LanguageReference"
20
- },
21
- "minItems": 1
22
- },
23
- "script": {
24
- "description": "A list of native scripts (usually it is only one). If the culture does not use any script, leave this field empty.",
25
- "type": "array",
26
- "items": {
27
- "$ref": "./_SimpleReferences.schema.json#/$defs/ScriptReference"
28
- },
29
- "minItems": 1
30
- },
31
- "area_knowledge": {
32
- "description": "If the area knowledge has a fixed value or can be adjusted.",
33
- "$ref": "#/$defs/AreaKnowledge"
34
- },
35
- "social_status": {
36
- "description": "A list of possible social status in the respective culture.",
37
- "type": "array",
38
- "items": {
39
- "$ref": "./_SimpleReferences.schema.json#/$defs/SocialStatusReference"
40
- },
41
- "minItems": 1
42
- },
43
- "common_professions": {
44
- "description": "A list of professions that are typical for the culture, as well as professions that are rarely practiced or encountered in the culture. The list is either defined by group (as multiple lists) or plain (as a single list).",
45
- "$ref": "#/$defs/CommonProfessions"
46
- },
47
- "common_advantages": {
48
- "description": "A list of common advantages.",
49
- "type": "array",
50
- "items": {
51
- "title": "Commonness-rated Advantage/Disadvantage",
52
- "description": "Reference to a commonness-rated advantage or disadvantage. Commonness-rating terms used in the source books are strongly recommended, common, uncommon, suggested and unsuitable.",
53
- "type": "object",
54
- "properties": {
55
- "id": {
56
- "$ref": "./_Identifier.schema.json#/$defs/AdvantageIdentifier"
57
- }
58
- },
59
- "required": [
60
- "id"
61
- ],
62
- "additionalProperties": false
63
- },
64
- "minItems": 1
65
- },
66
- "common_disadvantages": {
67
- "description": "A list of common disadvantages.",
68
- "type": "array",
69
- "items": {
70
- "title": "Commonness-rated Advantage/Disadvantage",
71
- "description": "Reference to a commonness-rated advantage or disadvantage. Commonness-rating terms used in the source books are strongly recommended, common, uncommon, suggested and unsuitable.",
72
- "type": "object",
73
- "properties": {
74
- "id": {
75
- "$ref": "./_Identifier.schema.json#/$defs/DisadvantageIdentifier"
76
- }
77
- },
78
- "required": [
79
- "id"
80
- ],
81
- "additionalProperties": false
82
- },
83
- "minItems": 1
84
- },
85
- "uncommon_advantages": {
86
- "description": "A list of uncommon advantages.",
87
- "type": "array",
88
- "items": {
89
- "title": "Commonness-rated Advantage/Disadvantage",
90
- "description": "Reference to a commonness-rated advantage or disadvantage. Commonness-rating terms used in the source books are strongly recommended, common, uncommon, suggested and unsuitable.",
91
- "type": "object",
92
- "properties": {
93
- "id": {
94
- "$ref": "./_Identifier.schema.json#/$defs/AdvantageIdentifier"
95
- }
96
- },
97
- "required": [
98
- "id"
99
- ],
100
- "additionalProperties": false
101
- },
102
- "minItems": 1
103
- },
104
- "uncommon_disadvantages": {
105
- "description": "A list of uncommon disadvantages.",
106
- "type": "array",
107
- "items": {
108
- "title": "Commonness-rated Advantage/Disadvantage",
109
- "description": "Reference to a commonness-rated advantage or disadvantage. Commonness-rating terms used in the source books are strongly recommended, common, uncommon, suggested and unsuitable.",
110
- "type": "object",
111
- "properties": {
112
- "id": {
113
- "$ref": "./_Identifier.schema.json#/$defs/DisadvantageIdentifier"
114
- }
115
- },
116
- "required": [
117
- "id"
118
- ],
119
- "additionalProperties": false
120
- },
121
- "minItems": 1
122
- },
123
- "common_skills": {
124
- "description": "A list of common skills.",
125
- "type": "array",
126
- "items": {
127
- "$ref": "#/$defs/CommonnessRatedSkill"
128
- },
129
- "minItems": 1
130
- },
131
- "uncommon_skills": {
132
- "description": "A list of uncommon skills.",
133
- "type": "array",
134
- "items": {
135
- "$ref": "#/$defs/CommonnessRatedSkill"
136
- },
137
- "minItems": 1
138
- },
139
- "cultural_package": {
140
- "description": "The skill points you get for buying the culture package.",
141
- "type": "array",
142
- "items": {
143
- "$ref": "#/$defs/CulturalPackageItem"
144
- },
145
- "minItems": 1
146
- },
147
- "src": {
148
- "$ref": "./source/_PublicationRef.schema.json#/$defs/PublicationRefs"
149
- },
150
- "translations": {
151
- "description": "All translations for the entry, identified by IETF language tag (BCP47).",
152
- "type": "object",
153
- "patternProperties": {
154
- "^[a-z]{2}-[A-Z]{2}$": {
155
- "$ref": "#/$defs/CultureTranslation"
156
- }
157
- },
158
- "minProperties": 1,
159
- "additionalProperties": false
160
- }
161
- },
162
- "required": [
163
- "id",
164
- "language",
165
- "area_knowledge",
166
- "social_status",
167
- "common_professions",
168
- "common_skills",
169
- "cultural_package",
170
- "src",
171
- "translations"
172
- ],
173
- "additionalProperties": false
174
- },
175
- "AreaKnowledge": {
176
- "description": "If the area knowledge has a fixed value or can be adjusted.",
177
- "type": "object",
178
- "properties": {
179
- "is_fixed": {
180
- "description": "`true` if the area knowledge has a fixed value, `false` if it can be\nadjusted.",
181
- "type": "boolean"
182
- }
183
- },
184
- "required": [
185
- "is_fixed"
186
- ],
187
- "additionalProperties": false
188
- },
189
- "CommonnessWeight": {
190
- "description": "The \"weight\" difference compared to other professions or profession variants. Some professions or profession variants are simply more common (Mostly), but sometimes only specific elements are used (Only).",
191
- "oneOf": [
192
- {
193
- "const": "Mostly"
194
- },
195
- {
196
- "const": "Only"
197
- }
198
- ]
199
- },
200
- "CommonProfessionConstraintsOperation": {
201
- "description": "This defines how the list of constraints should be offset against the list of all mundane professions: Either only the professions are kept that intersect with the constraints (include) or only the professions are kept that are different from the constraints (exclude).",
202
- "oneOf": [
203
- {
204
- "const": "Intersection"
205
- },
206
- {
207
- "const": "Difference"
208
- }
209
- ]
210
- },
211
- "Rarity": {
212
- "description": "Some professions may be found in a culture, but are not that common.",
213
- "oneOf": [
214
- {
215
- "const": "Rare"
216
- },
217
- {
218
- "const": "VeryRare"
219
- }
220
- ]
221
- },
222
- "ProfessionConstraint": {
223
- "type": "object",
224
- "properties": {
225
- "id": {
226
- "description": "The profession's identifier.",
227
- "$ref": "./_Identifier.schema.json#/$defs/ProfessionIdentifier"
228
- },
229
- "weighted_variants": {
230
- "description": "Some professions or profession variants are more common than others. There may be cultures where some professions or profession variants are not represented at all.",
231
- "type": "object",
232
- "properties": {
233
- "elements": {
234
- "description": "The list of more common professions or profession variants.",
235
- "type": "array",
236
- "items": {
237
- "$ref": "./_SimpleReferences.schema.json#/$defs/ProfessionVariantReference"
238
- },
239
- "minItems": 1
240
- },
241
- "weight": {
242
- "description": "The \"weight\" difference compared to other professions or profession variants. Some professions or profession variants are simply more common\n(Mostly), but sometimes only specific elements are used (Only).",
243
- "$ref": "#/$defs/CommonnessWeight"
244
- }
245
- },
246
- "required": [
247
- "elements",
248
- "weight"
249
- ],
250
- "additionalProperties": false
251
- },
252
- "rarity": {
253
- "description": "Some professions may be found in a culture, but are not that common.",
254
- "$ref": "#/$defs/Rarity"
255
- }
256
- },
257
- "required": [
258
- "id"
259
- ],
260
- "additionalProperties": false
261
- },
262
- "MundaneProfessionSubgroupConstraint": {
263
- "description": "Some professions may be found in a culture, but are not that common.",
264
- "oneOf": [
265
- {
266
- "const": "Profane"
267
- },
268
- {
269
- "const": "Fighter"
270
- },
271
- {
272
- "const": "Religious"
273
- }
274
- ]
275
- },
276
- "MagicalTraditionConstraint": {
277
- "type": "object",
278
- "properties": {
279
- "id": {
280
- "description": "The magical tradition's identifier.",
281
- "$ref": "./_Identifier.schema.json#/$defs/MagicalTraditionIdentifier"
282
- },
283
- "weighted_professions": {
284
- "description": "Some professions or profession variants are more common than others. There may be cultures where some professions or profession variants are not represented at all.",
285
- "type": "object",
286
- "properties": {
287
- "elements": {
288
- "description": "The list of more common professions or profession variants.",
289
- "type": "array",
290
- "items": {
291
- "$ref": "./_SimpleReferences.schema.json#/$defs/ProfessionReference"
292
- },
293
- "minItems": 1
294
- },
295
- "weight": {
296
- "description": "The \"weight\" difference compared to other professions or profession variants. Some professions or profession variants are simply more common\n(Mostly), but sometimes only specific elements are used (Only).",
297
- "$ref": "#/$defs/CommonnessWeight"
298
- }
299
- },
300
- "required": [
301
- "elements",
302
- "weight"
303
- ],
304
- "additionalProperties": false
305
- },
306
- "rarity": {
307
- "description": "Some traditions may be found in a culture, but are not that common.",
308
- "$ref": "#/$defs/Rarity"
309
- }
310
- },
311
- "required": [
312
- "id"
313
- ],
314
- "additionalProperties": false
315
- },
316
- "BlessedTraditionConstraint": {
317
- "type": "object",
318
- "properties": {
319
- "id": {
320
- "description": "The magical tradition's identifier.",
321
- "$ref": "./_Identifier.schema.json#/$defs/BlessedTraditionIdentifier"
322
- },
323
- "weighted_professions": {
324
- "description": "Some professions or profession variants are more common than others. There may be cultures where some professions or profession variants are not represented at all.",
325
- "type": "object",
326
- "properties": {
327
- "elements": {
328
- "description": "The list of more common professions or profession variants.",
329
- "type": "array",
330
- "items": {
331
- "$ref": "./_SimpleReferences.schema.json#/$defs/ProfessionReference"
332
- },
333
- "minItems": 1
334
- },
335
- "weight": {
336
- "description": "The \"weight\" difference compared to other professions or profession variants. Some professions or profession variants are simply more common\n(Mostly), but sometimes only specific elements are used (Only).",
337
- "$ref": "#/$defs/CommonnessWeight"
338
- }
339
- },
340
- "required": [
341
- "elements",
342
- "weight"
343
- ],
344
- "additionalProperties": false
345
- },
346
- "rarity": {
347
- "description": "Some traditions may be found in a culture, but are not that common.",
348
- "$ref": "#/$defs/Rarity"
349
- }
350
- },
351
- "required": [
352
- "id"
353
- ],
354
- "additionalProperties": false
355
- },
356
- "MundaneCommonProfessionConstraint": {
357
- "oneOf": [
358
- {
359
- "type": "object",
360
- "properties": {
361
- "tag": {
362
- "const": "Profession"
363
- },
364
- "profession": {
365
- "$ref": "#/$defs/ProfessionConstraint"
366
- }
367
- },
368
- "required": [
369
- "tag",
370
- "profession"
371
- ],
372
- "additionalProperties": false
373
- },
374
- {
375
- "type": "object",
376
- "properties": {
377
- "tag": {
378
- "const": "ProfessionSubgroup"
379
- },
380
- "profession_subgroup": {
381
- "$ref": "#/$defs/MundaneProfessionSubgroupConstraint"
382
- }
383
- },
384
- "required": [
385
- "tag",
386
- "profession_subgroup"
387
- ],
388
- "additionalProperties": false
389
- }
390
- ]
391
- },
392
- "MagicCommonProfessionConstraint": {
393
- "oneOf": [
394
- {
395
- "type": "object",
396
- "properties": {
397
- "tag": {
398
- "const": "Tradition"
399
- },
400
- "tradition": {
401
- "$ref": "#/$defs/MagicalTraditionConstraint"
402
- }
403
- },
404
- "required": [
405
- "tag",
406
- "tradition"
407
- ],
408
- "additionalProperties": false
409
- },
410
- {
411
- "type": "object",
412
- "properties": {
413
- "tag": {
414
- "const": "MagicDilettante"
415
- },
416
- "magic_dilettante": {
417
- "type": "object",
418
- "properties": {},
419
- "required": [],
420
- "additionalProperties": false
421
- }
422
- },
423
- "required": [
424
- "tag",
425
- "magic_dilettante"
426
- ],
427
- "additionalProperties": false
428
- },
429
- {
430
- "type": "object",
431
- "properties": {
432
- "tag": {
433
- "const": "Profession"
434
- },
435
- "profession": {
436
- "$ref": "#/$defs/ProfessionConstraint"
437
- }
438
- },
439
- "required": [
440
- "tag",
441
- "profession"
442
- ],
443
- "additionalProperties": false
444
- }
445
- ]
446
- },
447
- "BlessedCommonProfessionConstraint": {
448
- "type": "object",
449
- "properties": {
450
- "tag": {
451
- "const": "Tradition"
452
- },
453
- "tradition": {
454
- "$ref": "#/$defs/BlessedTraditionConstraint"
455
- }
456
- },
457
- "required": [
458
- "tag",
459
- "tradition"
460
- ],
461
- "additionalProperties": false
462
- },
463
- "PlainCommonProfessions": {
464
- "description": "A list of professions. The filter specifies how the list is applied to all mundane professions.",
465
- "type": "object",
466
- "properties": {
467
- "constraints": {
468
- "description": "The list of constraints.",
469
- "type": "array",
470
- "items": {
471
- "$ref": "./_SimpleReferences.schema.json#/$defs/ProfessionReference"
472
- },
473
- "minItems": 1
474
- },
475
- "operation": {
476
- "description": "This defines how the list of constraints should be offset against the list of all mundane professions: Either only the professions are kept that intersect with the constraints (include) or only the professions are kept that are different from the constraints (exclude).",
477
- "$ref": "#/$defs/CommonProfessionConstraintsOperation"
478
- }
479
- },
480
- "required": [
481
- "constraints",
482
- "operation"
483
- ],
484
- "additionalProperties": false
485
- },
486
- "GroupedCommonProfessions": {
487
- "description": "Lists of professions by group.",
488
- "type": "object",
489
- "properties": {
490
- "mundane": {
491
- "description": "A list of professions. The filter specifies how the list is applied to all mundane professions.",
492
- "type": "object",
493
- "properties": {
494
- "constraints": {
495
- "description": "The list of constraints.",
496
- "type": "array",
497
- "items": {
498
- "$ref": "#/$defs/MundaneCommonProfessionConstraint"
499
- },
500
- "minItems": 1
501
- },
502
- "operation": {
503
- "description": "This defines how the list of constraints should be offset against the list of all mundane professions: Either only the professions are kept that intersect with the constraints (include) or only the professions are kept that are different from the constraints (exclude).",
504
- "$ref": "#/$defs/CommonProfessionConstraintsOperation"
505
- }
506
- },
507
- "required": [
508
- "constraints",
509
- "operation"
510
- ],
511
- "additionalProperties": false
512
- },
513
- "magic": {
514
- "description": "A list of professions. The filter specifies how the list is applied to all mundane professions.",
515
- "type": "object",
516
- "properties": {
517
- "constraints": {
518
- "description": "The list of constraints.",
519
- "type": "array",
520
- "items": {
521
- "$ref": "#/$defs/MagicCommonProfessionConstraint"
522
- },
523
- "minItems": 1
524
- },
525
- "operation": {
526
- "description": "This defines how the list of constraints should be offset against the list of all mundane professions: Either only the professions are kept that intersect with the constraints (include) or only the professions are kept that are different from the constraints (exclude).",
527
- "$ref": "#/$defs/CommonProfessionConstraintsOperation"
528
- }
529
- },
530
- "required": [
531
- "constraints",
532
- "operation"
533
- ],
534
- "additionalProperties": false
535
- },
536
- "blessed": {
537
- "description": "A list of professions. The filter specifies how the list is applied to all mundane professions.",
538
- "type": "object",
539
- "properties": {
540
- "constraints": {
541
- "description": "The list of constraints.",
542
- "type": "array",
543
- "items": {
544
- "$ref": "#/$defs/BlessedCommonProfessionConstraint"
545
- },
546
- "minItems": 1
547
- },
548
- "operation": {
549
- "description": "This defines how the list of constraints should be offset against the list of all mundane professions: Either only the professions are kept that intersect with the constraints (include) or only the professions are kept that are different from the constraints (exclude).",
550
- "$ref": "#/$defs/CommonProfessionConstraintsOperation"
551
- }
552
- },
553
- "required": [
554
- "constraints",
555
- "operation"
556
- ],
557
- "additionalProperties": false
558
- }
559
- },
560
- "required": [],
561
- "minProperties": 1,
562
- "additionalProperties": false
563
- },
564
- "CommonProfessions": {
565
- "description": "A list of professions that are typical for the culture, as well as professions that are rarely practiced or encountered in the culture. The list is either defined by group (as multiple lists) or plain (as a single list).",
566
- "oneOf": [
567
- {
568
- "type": "object",
569
- "properties": {
570
- "tag": {
571
- "const": "Plain"
572
- },
573
- "plain": {
574
- "$ref": "#/$defs/PlainCommonProfessions"
575
- }
576
- },
577
- "required": [
578
- "tag",
579
- "plain"
580
- ],
581
- "additionalProperties": false
582
- },
583
- {
584
- "type": "object",
585
- "properties": {
586
- "tag": {
587
- "const": "Grouped"
588
- },
589
- "grouped": {
590
- "$ref": "#/$defs/GroupedCommonProfessions"
591
- }
592
- },
593
- "required": [
594
- "tag",
595
- "grouped"
596
- ],
597
- "additionalProperties": false
598
- }
599
- ]
600
- },
601
- "CommonnessRatedSkill": {
602
- "$ref": "./_SimpleReferences.schema.json#/$defs/SkillReference"
603
- },
604
- "CulturalPackageItem": {
605
- "type": "object",
606
- "properties": {
607
- "id": {
608
- "description": "The skill's identifier.",
609
- "$ref": "./_Identifier.schema.json#/$defs/SkillIdentifier"
610
- },
611
- "points": {
612
- "description": "The skill points for the respective skill you get for buying the cultural package.",
613
- "type": "integer",
614
- "maximum": 2,
615
- "minimum": 1
616
- }
617
- },
618
- "required": [
619
- "id",
620
- "points"
621
- ],
622
- "additionalProperties": false
623
- },
624
- "CultureTranslation": {
625
- "type": "object",
626
- "properties": {
627
- "name": {
628
- "description": "The name of the state.",
629
- "type": "string",
630
- "minLength": 1
631
- },
632
- "area_knowledge": {
633
- "description": "The description of the area knowledge.",
634
- "$ref": "#/$defs/AreaKnowledgeTranslation"
635
- },
636
- "common_advantages": {
637
- "description": "The respective common advantages text from the source book.",
638
- "$ref": "./_NonEmptyString.schema.json#/$defs/NonEmptyString"
639
- },
640
- "common_disadvantages": {
641
- "description": "The respective common disadvantages text from the source book.",
642
- "$ref": "./_NonEmptyString.schema.json#/$defs/NonEmptyString"
643
- },
644
- "uncommon_advantages": {
645
- "description": "The respective uncommon advantages text from the source book.",
646
- "$ref": "./_NonEmptyString.schema.json#/$defs/NonEmptyString"
647
- },
648
- "uncommon_disadvantages": {
649
- "description": "The respective uncommon disadvantages text from the source book.",
650
- "$ref": "./_NonEmptyString.schema.json#/$defs/NonEmptyString"
651
- },
652
- "common_names": {
653
- "description": "Structured description of common names.",
654
- "$ref": "#/$defs/CommonNames"
655
- },
656
- "errata": {
657
- "$ref": "./source/_Erratum.schema.json#/$defs/Errata"
658
- }
659
- },
660
- "required": [
661
- "name",
662
- "area_knowledge",
663
- "common_names"
664
- ],
665
- "additionalProperties": false
666
- },
667
- "AreaKnowledgeTranslation": {
668
- "description": "Description and examples of the area knowledge.",
669
- "type": "object",
670
- "properties": {
671
- "description": {
672
- "description": "The full description without examples in parenthesis.",
673
- "type": "string",
674
- "minLength": 1
675
- },
676
- "abbreviated": {
677
- "description": "A shorter version of the description, used in input fields and other UI elements where the space might be to small to use the full description.",
678
- "type": "string",
679
- "minLength": 1
680
- },
681
- "examples": {
682
- "description": "Examples of areas, if applicable.",
683
- "type": "array",
684
- "items": {
685
- "$ref": "#/$defs/AreaKnowledgeExample"
686
- },
687
- "minItems": 1
688
- }
689
- },
690
- "required": [
691
- "description",
692
- "abbreviated"
693
- ],
694
- "additionalProperties": false
695
- },
696
- "AreaKnowledgeExample": {
697
- "type": "object",
698
- "properties": {
699
- "area": {
700
- "type": "string",
701
- "minLength": 1
702
- }
703
- },
704
- "required": [
705
- "area"
706
- ],
707
- "additionalProperties": false
708
- },
709
- "CommonNames": {
710
- "description": "Structured description of common names.",
711
- "type": "object",
712
- "properties": {
713
- "first_name_groups": {
714
- "description": "First names can be gender-neutral, but they can also be for a specific binary sex. They are sorted into groups.",
715
- "type": "array",
716
- "items": {
717
- "$ref": "#/$defs/CommonNameGroup"
718
- },
719
- "minItems": 1
720
- },
721
- "last_name_groups": {
722
- "description": "Last names can be gender-neutral, like family names, but they can also be for a specific binary sex. They are sorted into groups.",
723
- "type": "array",
724
- "items": {
725
- "$ref": "#/$defs/CommonNameGroup"
726
- },
727
- "minItems": 1
728
- },
729
- "naming_rules": {
730
- "description": "Special naming rules.",
731
- "$ref": "./_NonEmptyString.schema.json#/$defs/NonEmptyString"
732
- }
733
- },
734
- "required": [],
735
- "minProperties": 1,
736
- "additionalProperties": false
737
- },
738
- "CommonNameGroup": {
739
- "type": "object",
740
- "properties": {
741
- "label": {
742
- "description": "The group label.",
743
- "$ref": "./_NonEmptyString.schema.json#/$defs/NonEmptyString"
744
- },
745
- "sex": {
746
- "description": "The binary sex if the group is only for a certain binary sex.",
747
- "$ref": "./_Sex.schema.json#/$defs/BinarySex"
748
- },
749
- "names": {
750
- "description": "The names from the group.",
751
- "type": "array",
752
- "items": {
753
- "$ref": "#/$defs/CommonName"
754
- },
755
- "minItems": 1
756
- }
757
- },
758
- "required": [
759
- "label",
760
- "names"
761
- ],
762
- "additionalProperties": false
763
- },
764
- "CommonName": {
765
- "type": "object",
766
- "properties": {
767
- "name": {
768
- "$ref": "./_NonEmptyString.schema.json#/$defs/NonEmptyString"
769
- },
770
- "note": {
771
- "description": "Additional information about the name, appended in parenthesis.",
772
- "$ref": "./_NonEmptyString.schema.json#/$defs/NonEmptyString"
773
- }
774
- },
775
- "required": [
776
- "name"
777
- ],
778
- "additionalProperties": false
779
- }
780
- }
781
- }