optolith-database-schema 0.1.2 → 0.1.5

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 (204) hide show
  1. package/CHANGELOG.md +37 -0
  2. package/lib/types/Advantage.d.ts +4 -0
  3. package/lib/types/ArcaneBardTradition.d.ts +2 -2
  4. package/lib/types/ArcaneDancerTradition.d.ts +2 -2
  5. package/lib/types/Ceremony.d.ts +2 -2
  6. package/lib/types/DerivedCharacteristic.d.ts +2 -2
  7. package/lib/types/Disadvantage.d.ts +4 -0
  8. package/lib/types/FamiliarsTrick.d.ts +2 -1
  9. package/lib/types/LiturgicalChant.d.ts +2 -2
  10. package/lib/types/Ritual.d.ts +2 -2
  11. package/lib/types/Spell.d.ts +2 -2
  12. package/lib/types/_Activatable.d.ts +1434 -79
  13. package/lib/types/_Activatable.js +44 -0
  14. package/lib/types/_ActivatableSkill.d.ts +4 -0
  15. package/lib/types/_Enhancements.d.ts +2 -2
  16. package/lib/types/_Identifier.d.ts +127 -85
  17. package/lib/types/_Identifier.js +110 -76
  18. package/lib/types/_Influence.d.ts +2 -0
  19. package/lib/types/_Prerequisite.d.ts +93 -397
  20. package/lib/types/_Prerequisite.js +1 -136
  21. package/lib/types/magicalActions/AnimistPower.d.ts +5 -0
  22. package/lib/types/magicalActions/Curse.d.ts +1 -1
  23. package/lib/types/magicalActions/ElvenMagicalSong.d.ts +1 -1
  24. package/lib/types/magicalActions/GeodeRitual.d.ts +2 -2
  25. package/lib/types/prerequisites/ConditionalPrerequisites.d.ts +10 -0
  26. package/lib/types/prerequisites/ConditionalPrerequisites.js +1 -0
  27. package/lib/types/prerequisites/DisplayOption.d.ts +19 -0
  28. package/lib/types/prerequisites/DisplayOption.js +1 -0
  29. package/lib/types/prerequisites/PrerequisiteGroups.d.ts +32 -0
  30. package/lib/types/prerequisites/PrerequisiteGroups.js +1 -0
  31. package/lib/types/prerequisites/single/ActivatablePrerequisite.d.ts +95 -0
  32. package/lib/types/prerequisites/single/ActivatablePrerequisite.js +1 -0
  33. package/lib/types/prerequisites/single/AnimistPowerPrerequisite.d.ts +28 -0
  34. package/lib/types/prerequisites/single/AnimistPowerPrerequisite.js +1 -0
  35. package/lib/types/prerequisites/single/CommonSuggestedByRCPPrerequisite.d.ts +3 -0
  36. package/lib/types/prerequisites/single/CommonSuggestedByRCPPrerequisite.js +1 -0
  37. package/lib/types/prerequisites/single/CulturePrerequisite.d.ts +11 -0
  38. package/lib/types/prerequisites/single/CulturePrerequisite.js +1 -0
  39. package/lib/types/prerequisites/single/EnhancementPrerequisite.d.ts +36 -0
  40. package/lib/types/prerequisites/single/EnhancementPrerequisite.js +1 -0
  41. package/lib/types/prerequisites/single/InfluencePrerequisite.d.ts +18 -0
  42. package/lib/types/prerequisites/single/InfluencePrerequisite.js +1 -0
  43. package/lib/types/prerequisites/single/PactPrerequisite.d.ts +32 -0
  44. package/lib/types/prerequisites/single/PactPrerequisite.js +1 -0
  45. package/lib/types/prerequisites/single/PrimaryAttributePrerequisite.d.ts +22 -0
  46. package/lib/types/prerequisites/single/PrimaryAttributePrerequisite.js +1 -0
  47. package/lib/types/prerequisites/single/PublicationPrerequisite.d.ts +13 -0
  48. package/lib/types/prerequisites/single/PublicationPrerequisite.js +1 -0
  49. package/lib/types/prerequisites/single/RacePrerequisite.d.ts +14 -0
  50. package/lib/types/prerequisites/single/RacePrerequisite.js +1 -0
  51. package/lib/types/prerequisites/single/RatedPrerequisite.d.ts +99 -0
  52. package/lib/types/prerequisites/single/RatedPrerequisite.js +1 -0
  53. package/lib/types/prerequisites/single/RulePrerequisite.d.ts +10 -0
  54. package/lib/types/prerequisites/single/RulePrerequisite.js +1 -0
  55. package/lib/types/prerequisites/single/SexPrerequisite.d.ts +11 -0
  56. package/lib/types/prerequisites/single/SexPrerequisite.js +1 -0
  57. package/lib/types/prerequisites/single/SocialStatusPrerequisite.d.ts +16 -0
  58. package/lib/types/prerequisites/single/SocialStatusPrerequisite.js +1 -0
  59. package/lib/types/prerequisites/single/StatePrerequisite.d.ts +11 -0
  60. package/lib/types/prerequisites/single/StatePrerequisite.js +1 -0
  61. package/lib/types/prerequisites/single/TextPrerequisite.d.ts +31 -0
  62. package/lib/types/prerequisites/single/TextPrerequisite.js +1 -0
  63. package/lib/types/prerequisites/single/TraditionPrerequisite.d.ts +33 -0
  64. package/lib/types/prerequisites/single/TraditionPrerequisite.js +1 -0
  65. package/lib/types/specialAbility/AdvancedCombatSpecialAbility.d.ts +9 -0
  66. package/lib/types/specialAbility/AdvancedKarmaSpecialAbility.d.ts +4 -0
  67. package/lib/types/specialAbility/AdvancedMagicalSpecialAbility.d.ts +4 -0
  68. package/lib/types/specialAbility/AdvancedSkillSpecialAbility.d.ts +4 -0
  69. package/lib/types/specialAbility/AncestorGlyph.d.ts +4 -0
  70. package/lib/types/specialAbility/BlessedTradition.d.ts +5 -2
  71. package/lib/types/specialAbility/BrawlingSpecialAbility.d.ts +4 -0
  72. package/lib/types/specialAbility/CeremonialItemSpecialAbility.d.ts +4 -0
  73. package/lib/types/specialAbility/CombatSpecialAbility.d.ts +9 -0
  74. package/lib/types/specialAbility/CombatStyleSpecialAbility.d.ts +4 -0
  75. package/lib/types/specialAbility/CommandSpecialAbility.d.ts +4 -0
  76. package/lib/types/specialAbility/FamiliarSpecialAbility.d.ts +4 -0
  77. package/lib/types/specialAbility/FatePointSexSpecialAbility.d.ts +4 -0
  78. package/lib/types/specialAbility/FatePointSpecialAbility.d.ts +4 -0
  79. package/lib/types/specialAbility/GeneralSpecialAbility.d.ts +4 -0
  80. package/lib/types/specialAbility/KarmaSpecialAbility.d.ts +4 -0
  81. package/lib/types/specialAbility/LiturgicalStyleSpecialAbility.d.ts +4 -0
  82. package/lib/types/specialAbility/LycantropicGift.d.ts +4 -0
  83. package/lib/types/specialAbility/MagicStyleSpecialAbility.d.ts +4 -0
  84. package/lib/types/specialAbility/MagicalSpecialAbility.d.ts +4 -0
  85. package/lib/types/specialAbility/MagicalTradition.d.ts +3 -0
  86. package/lib/types/specialAbility/PactGift.d.ts +6 -2
  87. package/lib/types/specialAbility/ProtectiveWardingCircleSpecialAbility.d.ts +4 -0
  88. package/lib/types/specialAbility/Sermon.d.ts +4 -0
  89. package/lib/types/specialAbility/SexSpecialAbility.d.ts +4 -0
  90. package/lib/types/specialAbility/SikaryanDrainSpecialAbility.d.ts +4 -0
  91. package/lib/types/specialAbility/SkillStyleSpecialAbility.d.ts +4 -0
  92. package/lib/types/specialAbility/VampiricGift.d.ts +4 -0
  93. package/lib/types/specialAbility/Vision.d.ts +4 -0
  94. package/lib/types/specialAbility/sub/Language.d.ts +2 -2
  95. package/lib/types/specialAbility/sub/TradeSecret.d.ts +2 -0
  96. package/lib/types/traditionArtifacts/ArcaneOrbEnchantment.d.ts +18 -0
  97. package/lib/types/traditionArtifacts/AttireEnchantment.d.ts +18 -0
  98. package/lib/types/traditionArtifacts/BowlEnchantment.d.ts +18 -0
  99. package/lib/types/traditionArtifacts/CauldronEnchantment.d.ts +19 -1
  100. package/lib/types/traditionArtifacts/ChronicleEnchantment.d.ts +18 -0
  101. package/lib/types/traditionArtifacts/DaggerRitual.d.ts +18 -0
  102. package/lib/types/traditionArtifacts/FoolsHatEnchantment.d.ts +18 -0
  103. package/lib/types/traditionArtifacts/InstrumentEnchantment.d.ts +18 -0
  104. package/lib/types/traditionArtifacts/Krallenkettenzauber.d.ts +18 -0
  105. package/lib/types/traditionArtifacts/OrbEnchantment.d.ts +18 -0
  106. package/lib/types/traditionArtifacts/RingEnchantment.d.ts +18 -0
  107. package/lib/types/traditionArtifacts/SickleRitual.d.ts +18 -0
  108. package/lib/types/traditionArtifacts/SpellSwordEnchantment.d.ts +18 -0
  109. package/lib/types/traditionArtifacts/StaffEnchantment.d.ts +18 -0
  110. package/lib/types/traditionArtifacts/ToyEnchantment.d.ts +18 -0
  111. package/lib/types/traditionArtifacts/Trinkhornzauber.d.ts +18 -0
  112. package/lib/types/traditionArtifacts/WandEnchantment.d.ts +18 -0
  113. package/lib/types/traditionArtifacts/WeaponEnchantment.d.ts +18 -0
  114. package/package.json +2 -2
  115. package/schema/Advantage.schema.json +9 -0
  116. package/schema/ArcaneBardTradition.schema.json +1 -1
  117. package/schema/ArcaneDancerTradition.schema.json +1 -1
  118. package/schema/Ceremony.schema.json +1 -1
  119. package/schema/DerivedCharacteristic.schema.json +1 -1
  120. package/schema/Disadvantage.schema.json +9 -0
  121. package/schema/FamiliarsTrick.schema.json +1 -0
  122. package/schema/LiturgicalChant.schema.json +1 -1
  123. package/schema/Ritual.schema.json +1 -1
  124. package/schema/Spell.schema.json +1 -1
  125. package/schema/_Activatable.schema.json +2447 -239
  126. package/schema/_ActivatableSkill.schema.json +1 -0
  127. package/schema/_Enhancements.schema.json +1 -1
  128. package/schema/_Identifier.schema.json +329 -146
  129. package/schema/_Influence.schema.json +4 -0
  130. package/schema/_Prerequisite.schema.json +887 -675
  131. package/schema/magicalActions/AnimistPower.schema.json +4 -0
  132. package/schema/magicalActions/Curse.schema.json +1 -1
  133. package/schema/magicalActions/ElvenMagicalSong.schema.json +1 -1
  134. package/schema/magicalActions/GeodeRitual.schema.json +1 -1
  135. package/schema/prerequisites/ConditionalPrerequisites.schema.json +15 -0
  136. package/schema/prerequisites/DisplayOption.schema.json +48 -0
  137. package/schema/prerequisites/PrerequisiteGroups.schema.json +246 -0
  138. package/schema/prerequisites/single/ActivatablePrerequisite.schema.json +142 -0
  139. package/schema/prerequisites/single/AnimistPowerPrerequisite.schema.json +40 -0
  140. package/schema/prerequisites/single/CommonSuggestedByRCPPrerequisite.schema.json +18 -0
  141. package/schema/prerequisites/single/CulturePrerequisite.schema.json +27 -0
  142. package/schema/prerequisites/single/EnhancementPrerequisite.schema.json +54 -0
  143. package/schema/prerequisites/single/InfluencePrerequisite.schema.json +33 -0
  144. package/schema/prerequisites/single/PactPrerequisite.schema.json +46 -0
  145. package/schema/prerequisites/single/PrimaryAttributePrerequisite.schema.json +58 -0
  146. package/schema/prerequisites/single/PublicationPrerequisite.schema.json +27 -0
  147. package/schema/prerequisites/single/RacePrerequisite.schema.json +31 -0
  148. package/schema/prerequisites/single/RatedPrerequisite.schema.json +184 -0
  149. package/schema/prerequisites/single/RulePrerequisite.schema.json +26 -0
  150. package/schema/prerequisites/single/SexPrerequisite.schema.json +27 -0
  151. package/schema/prerequisites/single/SocialStatusPrerequisite.schema.json +30 -0
  152. package/schema/prerequisites/single/StatePrerequisite.schema.json +27 -0
  153. package/schema/prerequisites/single/TextPrerequisite.schema.json +63 -0
  154. package/schema/prerequisites/single/TraditionPrerequisite.schema.json +96 -0
  155. package/schema/source/Publication.schema.json +1 -1
  156. package/schema/specialAbility/AdvancedCombatSpecialAbility.schema.json +15 -0
  157. package/schema/specialAbility/AdvancedKarmaSpecialAbility.schema.json +9 -0
  158. package/schema/specialAbility/AdvancedMagicalSpecialAbility.schema.json +9 -0
  159. package/schema/specialAbility/AdvancedSkillSpecialAbility.schema.json +9 -0
  160. package/schema/specialAbility/AncestorGlyph.schema.json +9 -0
  161. package/schema/specialAbility/BlessedTradition.schema.json +7 -1
  162. package/schema/specialAbility/BrawlingSpecialAbility.schema.json +9 -0
  163. package/schema/specialAbility/CeremonialItemSpecialAbility.schema.json +9 -0
  164. package/schema/specialAbility/CombatSpecialAbility.schema.json +15 -0
  165. package/schema/specialAbility/CombatStyleSpecialAbility.schema.json +9 -0
  166. package/schema/specialAbility/CommandSpecialAbility.schema.json +9 -0
  167. package/schema/specialAbility/FamiliarSpecialAbility.schema.json +9 -0
  168. package/schema/specialAbility/FatePointSexSpecialAbility.schema.json +9 -0
  169. package/schema/specialAbility/FatePointSpecialAbility.schema.json +9 -0
  170. package/schema/specialAbility/GeneralSpecialAbility.schema.json +9 -0
  171. package/schema/specialAbility/KarmaSpecialAbility.schema.json +9 -0
  172. package/schema/specialAbility/LiturgicalStyleSpecialAbility.schema.json +9 -0
  173. package/schema/specialAbility/LycantropicGift.schema.json +9 -0
  174. package/schema/specialAbility/MagicStyleSpecialAbility.schema.json +9 -0
  175. package/schema/specialAbility/MagicalSpecialAbility.schema.json +9 -0
  176. package/schema/specialAbility/MagicalTradition.schema.json +6 -0
  177. package/schema/specialAbility/PactGift.schema.json +10 -1
  178. package/schema/specialAbility/ProtectiveWardingCircleSpecialAbility.schema.json +9 -0
  179. package/schema/specialAbility/Sermon.schema.json +9 -0
  180. package/schema/specialAbility/SexSpecialAbility.schema.json +9 -0
  181. package/schema/specialAbility/SikaryanDrainSpecialAbility.schema.json +9 -0
  182. package/schema/specialAbility/SkillStyleSpecialAbility.schema.json +9 -0
  183. package/schema/specialAbility/VampiricGift.schema.json +9 -0
  184. package/schema/specialAbility/Vision.schema.json +9 -0
  185. package/schema/specialAbility/sub/Language.schema.json +1 -1
  186. package/schema/specialAbility/sub/TradeSecret.schema.json +3 -0
  187. package/schema/traditionArtifacts/ArcaneOrbEnchantment.schema.json +27 -1
  188. package/schema/traditionArtifacts/AttireEnchantment.schema.json +27 -1
  189. package/schema/traditionArtifacts/BowlEnchantment.schema.json +27 -1
  190. package/schema/traditionArtifacts/CauldronEnchantment.schema.json +30 -4
  191. package/schema/traditionArtifacts/ChronicleEnchantment.schema.json +27 -1
  192. package/schema/traditionArtifacts/DaggerRitual.schema.json +27 -1
  193. package/schema/traditionArtifacts/FoolsHatEnchantment.schema.json +27 -1
  194. package/schema/traditionArtifacts/InstrumentEnchantment.schema.json +27 -1
  195. package/schema/traditionArtifacts/Krallenkettenzauber.schema.json +27 -1
  196. package/schema/traditionArtifacts/OrbEnchantment.schema.json +27 -1
  197. package/schema/traditionArtifacts/RingEnchantment.schema.json +27 -1
  198. package/schema/traditionArtifacts/SickleRitual.schema.json +27 -1
  199. package/schema/traditionArtifacts/SpellSwordEnchantment.schema.json +27 -1
  200. package/schema/traditionArtifacts/StaffEnchantment.schema.json +27 -1
  201. package/schema/traditionArtifacts/ToyEnchantment.schema.json +27 -1
  202. package/schema/traditionArtifacts/Trinkhornzauber.schema.json +27 -1
  203. package/schema/traditionArtifacts/WandEnchantment.schema.json +27 -1
  204. package/schema/traditionArtifacts/WeaponEnchantment.schema.json +27 -1
@@ -211,6 +211,10 @@
211
211
  ],
212
212
  "additionalProperties": false
213
213
  },
214
+ "prerequisites": {
215
+ "description": "A prerequisites text.",
216
+ "type": "string"
217
+ },
214
218
  "errata": {
215
219
  "$ref": "../source/_Erratum.schema.json#/definitions/Errata"
216
220
  }
@@ -133,7 +133,7 @@
133
133
  "type": "object",
134
134
  "properties": {
135
135
  "per": {
136
- "description": "The cost have to be per a specific countable entity, e.g. `8 KP\nper person`",
136
+ "description": "The cost have to be per a specific countable entity, e.g. `8 KP\nper person`.",
137
137
  "type": "object",
138
138
  "properties": {
139
139
  "default": {
@@ -120,7 +120,7 @@
120
120
  "minimum": 1
121
121
  },
122
122
  "interval": {
123
- "description": "Specified if the AE cost `value` have to paid for each time interval.",
123
+ "description": "Specified if the AE cost `value` has to be paid for each time interval.",
124
124
  "$ref": "../_ActivatableSkill.schema.json#/definitions/Duration/UnitValue"
125
125
  },
126
126
  "permanent": {
@@ -30,7 +30,7 @@
30
30
  "minimum": 1
31
31
  },
32
32
  "prerequisites": {
33
- "$ref": "../_Prerequisite.schema.json#/definitions/Prerequisite/GroupCollection/GeodeRitual"
33
+ "$ref": "../_Prerequisite.schema.json#/definitions/GeodeRitualPrerequisites"
34
34
  },
35
35
  "src": {
36
36
  "$ref": "../source/_PublicationRef.schema.json#/definitions/PublicationRefs"
@@ -0,0 +1,15 @@
1
+ {
2
+ "$schema": "http://json-schema.org/draft-07/schema",
3
+ "$id": "prerequisites/ConditionalPrerequisites.schema.json",
4
+ "definitions": {
5
+ "Preconditions": {
6
+ "title": "Preconditions (`when`)",
7
+ "description": "A list of preconditions for the prerequisite it is defined on, so that it\nonly takes effect if the prerequisites in this list are matched.\n\nUsually appears at the `when` property of the parent prerequisite.",
8
+ "type": "array",
9
+ "items": {
10
+ "$ref": "./PrerequisiteGroups.schema.json#/definitions/PreconditionGroup"
11
+ },
12
+ "minItems": 1
13
+ }
14
+ }
15
+ }
@@ -0,0 +1,48 @@
1
+ {
2
+ "$schema": "http://json-schema.org/draft-07/schema",
3
+ "$id": "prerequisites/DisplayOption.schema.json",
4
+ "definitions": {
5
+ "DisplayOption": {
6
+ "title": "Display Option",
7
+ "oneOf": [
8
+ {
9
+ "type": "object",
10
+ "properties": {
11
+ "tag": {
12
+ "const": "Hide"
13
+ }
14
+ },
15
+ "required": [
16
+ "tag"
17
+ ],
18
+ "additionalProperties": false
19
+ },
20
+ {
21
+ "type": "object",
22
+ "properties": {
23
+ "tag": {
24
+ "const": "ReplaceWith"
25
+ },
26
+ "translations": {
27
+ "description": "All translations for the entry, identified by IETF language tag (BCP47).",
28
+ "type": "object",
29
+ "patternProperties": {
30
+ "^[a-z]{2}-[A-Z]{2}$": {
31
+ "type": "string",
32
+ "minLength": 1
33
+ }
34
+ },
35
+ "minProperties": 1,
36
+ "additionalProperties": false
37
+ }
38
+ },
39
+ "required": [
40
+ "tag",
41
+ "translations"
42
+ ],
43
+ "additionalProperties": false
44
+ }
45
+ ]
46
+ }
47
+ }
48
+ }
@@ -0,0 +1,246 @@
1
+ {
2
+ "$schema": "http://json-schema.org/draft-07/schema",
3
+ "$id": "prerequisites/PrerequisiteGroups.schema.json",
4
+ "definitions": {
5
+ "DerivedCharacteristicPrerequisiteGroup": {
6
+ "oneOf": [
7
+ {
8
+ "$ref": "./single/RulePrerequisite.schema.json#/definitions/RulePrerequisite"
9
+ }
10
+ ]
11
+ },
12
+ "PublicationPrerequisiteGroup": {
13
+ "oneOf": [
14
+ {
15
+ "$ref": "./single/PublicationPrerequisite.schema.json#/definitions/PublicationPrerequisite"
16
+ }
17
+ ]
18
+ },
19
+ "GeneralPrerequisiteGroup": {
20
+ "oneOf": [
21
+ {
22
+ "$ref": "./single/SexPrerequisite.schema.json#/definitions/SexPrerequisite"
23
+ },
24
+ {
25
+ "$ref": "./single/RacePrerequisite.schema.json#/definitions/RacePrerequisite"
26
+ },
27
+ {
28
+ "$ref": "./single/CulturePrerequisite.schema.json#/definitions/CulturePrerequisite"
29
+ },
30
+ {
31
+ "$ref": "./single/PactPrerequisite.schema.json#/definitions/PactPrerequisite"
32
+ },
33
+ {
34
+ "$ref": "./single/SocialStatusPrerequisite.schema.json#/definitions/SocialStatusPrerequisite"
35
+ },
36
+ {
37
+ "$ref": "./single/StatePrerequisite.schema.json#/definitions/StatePrerequisite"
38
+ },
39
+ {
40
+ "$ref": "./single/RulePrerequisite.schema.json#/definitions/RulePrerequisite"
41
+ },
42
+ {
43
+ "$ref": "./single/PrimaryAttributePrerequisite.schema.json#/definitions/PrimaryAttributePrerequisite"
44
+ },
45
+ {
46
+ "$ref": "./single/ActivatablePrerequisite.schema.json#/definitions/ActivatablePrerequisite"
47
+ },
48
+ {
49
+ "$ref": "./single/ActivatablePrerequisite.schema.json#/definitions/ActivatableSetPrerequisite"
50
+ },
51
+ {
52
+ "$ref": "./single/ActivatablePrerequisite.schema.json#/definitions/ActivatableOptionSetPrerequisite"
53
+ },
54
+ {
55
+ "$ref": "./single/TraditionPrerequisite.schema.json#/definitions/BlessedTraditionPrerequisite"
56
+ },
57
+ {
58
+ "$ref": "./single/TraditionPrerequisite.schema.json#/definitions/MagicalTraditionPrerequisite"
59
+ },
60
+ {
61
+ "$ref": "./single/RatedPrerequisite.schema.json#/definitions/RatedPrerequisite"
62
+ },
63
+ {
64
+ "$ref": "./single/RatedPrerequisite.schema.json#/definitions/RatedSetPrerequisite"
65
+ },
66
+ {
67
+ "$ref": "./single/RatedPrerequisite.schema.json#/definitions/RatedMinimumNumberPrerequisite"
68
+ },
69
+ {
70
+ "$ref": "./single/EnhancementPrerequisite.schema.json#/definitions/ExternalEnhancementPrerequisite"
71
+ },
72
+ {
73
+ "$ref": "./single/TextPrerequisite.schema.json#/definitions/TextPrerequisite"
74
+ }
75
+ ]
76
+ },
77
+ "ProfessionPrerequisiteGroup": {
78
+ "oneOf": [
79
+ {
80
+ "$ref": "./single/SexPrerequisite.schema.json#/definitions/SexPrerequisite"
81
+ },
82
+ {
83
+ "$ref": "./single/RacePrerequisite.schema.json#/definitions/RacePrerequisite"
84
+ },
85
+ {
86
+ "$ref": "./single/CulturePrerequisite.schema.json#/definitions/CulturePrerequisite"
87
+ },
88
+ {
89
+ "$ref": "./single/ActivatablePrerequisite.schema.json#/definitions/ActivatablePrerequisite"
90
+ },
91
+ {
92
+ "$ref": "./single/RatedPrerequisite.schema.json#/definitions/RatedPrerequisite"
93
+ }
94
+ ]
95
+ },
96
+ "AdvantageDisadvantagePrerequisiteGroup": {
97
+ "oneOf": [
98
+ {
99
+ "$ref": "./single/CommonSuggestedByRCPPrerequisite.schema.json#/definitions/CommonSuggestedByRCPPrerequisite"
100
+ },
101
+ {
102
+ "$ref": "./single/SexPrerequisite.schema.json#/definitions/SexPrerequisite"
103
+ },
104
+ {
105
+ "$ref": "./single/RacePrerequisite.schema.json#/definitions/RacePrerequisite"
106
+ },
107
+ {
108
+ "$ref": "./single/CulturePrerequisite.schema.json#/definitions/CulturePrerequisite"
109
+ },
110
+ {
111
+ "$ref": "./single/PactPrerequisite.schema.json#/definitions/PactPrerequisite"
112
+ },
113
+ {
114
+ "$ref": "./single/SocialStatusPrerequisite.schema.json#/definitions/SocialStatusPrerequisite"
115
+ },
116
+ {
117
+ "$ref": "./single/StatePrerequisite.schema.json#/definitions/StatePrerequisite"
118
+ },
119
+ {
120
+ "$ref": "./single/RulePrerequisite.schema.json#/definitions/RulePrerequisite"
121
+ },
122
+ {
123
+ "$ref": "./single/PrimaryAttributePrerequisite.schema.json#/definitions/PrimaryAttributePrerequisite"
124
+ },
125
+ {
126
+ "$ref": "./single/ActivatablePrerequisite.schema.json#/definitions/ActivatablePrerequisite"
127
+ },
128
+ {
129
+ "$ref": "./single/ActivatablePrerequisite.schema.json#/definitions/ActivatableSetPrerequisite"
130
+ },
131
+ {
132
+ "$ref": "./single/ActivatablePrerequisite.schema.json#/definitions/ActivatableOptionSetPrerequisite"
133
+ },
134
+ {
135
+ "$ref": "./single/TraditionPrerequisite.schema.json#/definitions/BlessedTraditionPrerequisite"
136
+ },
137
+ {
138
+ "$ref": "./single/TraditionPrerequisite.schema.json#/definitions/MagicalTraditionPrerequisite"
139
+ },
140
+ {
141
+ "$ref": "./single/RatedPrerequisite.schema.json#/definitions/RatedPrerequisite"
142
+ },
143
+ {
144
+ "$ref": "./single/RatedPrerequisite.schema.json#/definitions/RatedSetPrerequisite"
145
+ },
146
+ {
147
+ "$ref": "./single/RatedPrerequisite.schema.json#/definitions/RatedMinimumNumberPrerequisite"
148
+ },
149
+ {
150
+ "$ref": "./single/EnhancementPrerequisite.schema.json#/definitions/ExternalEnhancementPrerequisite"
151
+ },
152
+ {
153
+ "$ref": "./single/TextPrerequisite.schema.json#/definitions/TextPrerequisite"
154
+ }
155
+ ]
156
+ },
157
+ "ArcaneTraditionPrerequisiteGroup": {
158
+ "oneOf": [
159
+ {
160
+ "$ref": "./single/SexPrerequisite.schema.json#/definitions/SexPrerequisite"
161
+ },
162
+ {
163
+ "$ref": "./single/CulturePrerequisite.schema.json#/definitions/CulturePrerequisite"
164
+ }
165
+ ]
166
+ },
167
+ "PersonalityTraitPrerequisiteGroup": {
168
+ "oneOf": [
169
+ {
170
+ "$ref": "./single/CulturePrerequisite.schema.json#/definitions/CulturePrerequisite"
171
+ },
172
+ {
173
+ "$ref": "./single/TextPrerequisite.schema.json#/definitions/TextPrerequisite"
174
+ }
175
+ ]
176
+ },
177
+ "SpellworkPrerequisiteGroup": {
178
+ "oneOf": [
179
+ {
180
+ "$ref": "./single/RulePrerequisite.schema.json#/definitions/RulePrerequisite"
181
+ },
182
+ {
183
+ "$ref": "./single/RatedPrerequisite.schema.json#/definitions/RatedPrerequisite"
184
+ }
185
+ ]
186
+ },
187
+ "LiturgyPrerequisiteGroup": {
188
+ "oneOf": [
189
+ {
190
+ "$ref": "./single/RulePrerequisite.schema.json#/definitions/RulePrerequisite"
191
+ }
192
+ ]
193
+ },
194
+ "InfluencePrerequisiteGroup": {
195
+ "oneOf": [
196
+ {
197
+ "$ref": "./single/InfluencePrerequisite.schema.json#/definitions/InfluencePrerequisite"
198
+ },
199
+ {
200
+ "$ref": "./single/TextPrerequisite.schema.json#/definitions/TextPrerequisite"
201
+ }
202
+ ]
203
+ },
204
+ "LanguagePrerequisiteGroup": {
205
+ "oneOf": [
206
+ {
207
+ "$ref": "./single/RacePrerequisite.schema.json#/definitions/RacePrerequisite"
208
+ },
209
+ {
210
+ "$ref": "./single/ActivatablePrerequisite.schema.json#/definitions/ActivatablePrerequisite"
211
+ },
212
+ {
213
+ "$ref": "./single/TextPrerequisite.schema.json#/definitions/TextPrerequisite"
214
+ }
215
+ ]
216
+ },
217
+ "AnimistPowerPrerequisiteGroup": {
218
+ "oneOf": [
219
+ {
220
+ "$ref": "./single/AnimistPowerPrerequisite.schema.json#/definitions/AnimistPowerPrerequisite"
221
+ }
222
+ ]
223
+ },
224
+ "GeodeRitualPrerequisiteGroup": {
225
+ "oneOf": [
226
+ {
227
+ "$ref": "./single/InfluencePrerequisite.schema.json#/definitions/InfluencePrerequisite"
228
+ }
229
+ ]
230
+ },
231
+ "EnhancementPrerequisiteGroup": {
232
+ "oneOf": [
233
+ {
234
+ "$ref": "./single/EnhancementPrerequisite.schema.json#/definitions/InternalEnhancementPrerequisite"
235
+ }
236
+ ]
237
+ },
238
+ "PreconditionGroup": {
239
+ "oneOf": [
240
+ {
241
+ "$ref": "./single/PublicationPrerequisite.schema.json#/definitions/PublicationPrerequisite"
242
+ }
243
+ ]
244
+ }
245
+ }
246
+ }
@@ -0,0 +1,142 @@
1
+ {
2
+ "$schema": "http://json-schema.org/draft-07/schema",
3
+ "$id": "prerequisites/single/ActivatablePrerequisite.schema.json",
4
+ "definitions": {
5
+ "ActivatablePrerequisite": {
6
+ "title": "Activatable Prerequisite",
7
+ "description": "Requires a specific advantage, disadvantage or special ability.",
8
+ "type": "object",
9
+ "properties": {
10
+ "tag": {
11
+ "const": "Activatable"
12
+ },
13
+ "id": {
14
+ "description": "The activatable entry's identifier.",
15
+ "$ref": "../../_Identifier.schema.json#/definitions/ActivatableIdentifier"
16
+ },
17
+ "active": {
18
+ "description": "If the required entry should be required to be active or inactive.",
19
+ "type": "boolean"
20
+ },
21
+ "level": {
22
+ "description": "The required minimum level of the entry.",
23
+ "type": "integer",
24
+ "minimum": 1
25
+ },
26
+ "options": {
27
+ "description": "Required select options. Order is important. Typically, you only need the\nfirst array index, though.",
28
+ "type": "array",
29
+ "items": {
30
+ "$ref": "../../_Identifier.schema.json#/definitions/RequirableSelectOptionIdentifier"
31
+ },
32
+ "minItems": 1
33
+ },
34
+ "display_option": {
35
+ "$ref": "../DisplayOption.schema.json#/definitions/DisplayOption"
36
+ },
37
+ "when": {
38
+ "$ref": "../ConditionalPrerequisites.schema.json#/definitions/Preconditions"
39
+ }
40
+ },
41
+ "required": [
42
+ "tag",
43
+ "id",
44
+ "active"
45
+ ],
46
+ "additionalProperties": false
47
+ },
48
+ "ActivatableSetPrerequisite": {
49
+ "title": "Activatable Set Prerequisite",
50
+ "description": "Requires a specific advantage, disadvantage or special ability from a given\nset of entries.",
51
+ "type": "object",
52
+ "properties": {
53
+ "tag": {
54
+ "const": "ActivatableSet"
55
+ },
56
+ "id": {
57
+ "description": "The possible activatable entries' identifiers.",
58
+ "type": "array",
59
+ "items": {
60
+ "$ref": "../../_Identifier.schema.json#/definitions/ActivatableIdentifier"
61
+ },
62
+ "minItems": 2
63
+ },
64
+ "active": {
65
+ "description": "If the required entry should be required to be active or inactive.",
66
+ "type": "boolean"
67
+ },
68
+ "level": {
69
+ "description": "The required minimum level of the entry.",
70
+ "type": "integer",
71
+ "minimum": 1
72
+ },
73
+ "options": {
74
+ "description": "Required select options. Order is important. Typically, you only need the\nfirst array index, though.",
75
+ "type": "array",
76
+ "items": {
77
+ "$ref": "../../_Identifier.schema.json#/definitions/RequirableSelectOptionIdentifier"
78
+ },
79
+ "minItems": 1
80
+ },
81
+ "display_option": {
82
+ "$ref": "../DisplayOption.schema.json#/definitions/DisplayOption"
83
+ }
84
+ },
85
+ "required": [
86
+ "tag",
87
+ "id",
88
+ "active"
89
+ ],
90
+ "additionalProperties": false
91
+ },
92
+ "ActivatableOptionSetPrerequisite": {
93
+ "title": "Activatable Option Set Prerequisite",
94
+ "description": "Requires one option from a set of options from a specific advantage,\ndisadvantage or special ability.",
95
+ "type": "object",
96
+ "properties": {
97
+ "tag": {
98
+ "const": "ActivatableOptionSet"
99
+ },
100
+ "id": {
101
+ "description": "The activatable entry's identifier.",
102
+ "$ref": "../../_Identifier.schema.json#/definitions/ActivatableIdentifier"
103
+ },
104
+ "active": {
105
+ "description": "If the required entry should be required to be active or inactive.",
106
+ "type": "boolean"
107
+ },
108
+ "level": {
109
+ "description": "The required minimum level of the entry.",
110
+ "type": "integer",
111
+ "minimum": 1
112
+ },
113
+ "first_option": {
114
+ "description": "The possible set of first options.",
115
+ "type": "array",
116
+ "items": {
117
+ "$ref": "../../_Identifier.schema.json#/definitions/RequirableSelectOptionIdentifier"
118
+ },
119
+ "minItems": 2
120
+ },
121
+ "other_options": {
122
+ "description": "Required other select options. Order is important.",
123
+ "type": "array",
124
+ "items": {
125
+ "$ref": "../../_Identifier.schema.json#/definitions/RequirableSelectOptionIdentifier"
126
+ },
127
+ "minItems": 1
128
+ },
129
+ "display_option": {
130
+ "$ref": "../DisplayOption.schema.json#/definitions/DisplayOption"
131
+ }
132
+ },
133
+ "required": [
134
+ "tag",
135
+ "id",
136
+ "active",
137
+ "first_option"
138
+ ],
139
+ "additionalProperties": false
140
+ }
141
+ }
142
+ }
@@ -0,0 +1,40 @@
1
+ {
2
+ "$schema": "http://json-schema.org/draft-07/schema",
3
+ "$id": "prerequisites/single/AnimistPowerPrerequisite.schema.json",
4
+ "definitions": {
5
+ "AnimistPowerPrerequisite": {
6
+ "title": "Animist Power Prerequisite",
7
+ "description": "Requires a specific animist power to be on a minimum value.",
8
+ "type": "object",
9
+ "properties": {
10
+ "tag": {
11
+ "const": "AnimistPower"
12
+ },
13
+ "id": {
14
+ "description": "The animist power's identifier.",
15
+ "type": "integer",
16
+ "minimum": 1
17
+ },
18
+ "level": {
19
+ "description": "The level to which the minimum value applies.",
20
+ "type": "integer",
21
+ "minimum": 2
22
+ },
23
+ "value": {
24
+ "description": "The required minimum value.",
25
+ "type": "integer",
26
+ "minimum": 0
27
+ },
28
+ "display_option": {
29
+ "$ref": "../DisplayOption.schema.json#/definitions/DisplayOption"
30
+ }
31
+ },
32
+ "required": [
33
+ "tag",
34
+ "id",
35
+ "value"
36
+ ],
37
+ "additionalProperties": false
38
+ }
39
+ }
40
+ }
@@ -0,0 +1,18 @@
1
+ {
2
+ "$schema": "http://json-schema.org/draft-07/schema",
3
+ "$id": "prerequisites/single/CommonSuggestedByRCPPrerequisite.schema.json",
4
+ "definitions": {
5
+ "CommonSuggestedByRCPPrerequisite": {
6
+ "type": "object",
7
+ "properties": {
8
+ "tag": {
9
+ "const": "CommonSuggestedByRCP"
10
+ }
11
+ },
12
+ "required": [
13
+ "tag"
14
+ ],
15
+ "additionalProperties": false
16
+ }
17
+ }
18
+ }
@@ -0,0 +1,27 @@
1
+ {
2
+ "$schema": "http://json-schema.org/draft-07/schema",
3
+ "$id": "prerequisites/single/CulturePrerequisite.schema.json",
4
+ "definitions": {
5
+ "CulturePrerequisite": {
6
+ "title": "Culture Prerequisite",
7
+ "description": "Requires a specific culture or one of a specific set of cultures.",
8
+ "type": "object",
9
+ "properties": {
10
+ "tag": {
11
+ "const": "Culture"
12
+ },
13
+ "id": {
14
+ "$ref": "../../_Identifier.schema.json#/definitions/OneOrManyNumericIdentifiers"
15
+ },
16
+ "display_option": {
17
+ "$ref": "../DisplayOption.schema.json#/definitions/DisplayOption"
18
+ }
19
+ },
20
+ "required": [
21
+ "tag",
22
+ "id"
23
+ ],
24
+ "additionalProperties": false
25
+ }
26
+ }
27
+ }
@@ -0,0 +1,54 @@
1
+ {
2
+ "$schema": "http://json-schema.org/draft-07/schema",
3
+ "$id": "prerequisites/single/EnhancementPrerequisite.schema.json",
4
+ "definitions": {
5
+ "ExternalEnhancementPrerequisite": {
6
+ "title": "External Enhancement Prerequisite",
7
+ "description": "Requires a specific enhancement from a skill. This should **not** be used\nfor enhancements themselves; they can only require enhancements from the same\nskill they enhance.",
8
+ "type": "object",
9
+ "properties": {
10
+ "tag": {
11
+ "const": "Enhancement"
12
+ },
13
+ "skill_id": {
14
+ "description": "The required skill's identifier.",
15
+ "$ref": "../../_Identifier.schema.json#/definitions/SkillWithEnhancementsIdentifier"
16
+ },
17
+ "enhancement_id": {
18
+ "description": "The required enhancement's identifier.",
19
+ "type": "integer",
20
+ "minimum": 1
21
+ },
22
+ "display_option": {
23
+ "$ref": "../DisplayOption.schema.json#/definitions/DisplayOption"
24
+ }
25
+ },
26
+ "required": [
27
+ "tag",
28
+ "skill_id",
29
+ "enhancement_id"
30
+ ],
31
+ "additionalProperties": false
32
+ },
33
+ "InternalEnhancementPrerequisite": {
34
+ "title": "Internal Enhancement Prerequisite",
35
+ "description": "Requires a specific enhancement from a skill. This can only be used by an\nenhancement to require another enhancement from the same skill.",
36
+ "type": "object",
37
+ "properties": {
38
+ "tag": {
39
+ "const": "Enhancement"
40
+ },
41
+ "id": {
42
+ "description": "The enhancement's identifier.",
43
+ "type": "integer",
44
+ "minimum": 1
45
+ }
46
+ },
47
+ "required": [
48
+ "tag",
49
+ "id"
50
+ ],
51
+ "additionalProperties": false
52
+ }
53
+ }
54
+ }
@@ -0,0 +1,33 @@
1
+ {
2
+ "$schema": "http://json-schema.org/draft-07/schema",
3
+ "$id": "prerequisites/single/InfluencePrerequisite.schema.json",
4
+ "definitions": {
5
+ "InfluencePrerequisite": {
6
+ "title": "Influence Prerequisite",
7
+ "type": "object",
8
+ "properties": {
9
+ "tag": {
10
+ "const": "Influence"
11
+ },
12
+ "id": {
13
+ "description": "The influence's identifier.",
14
+ "type": "integer",
15
+ "minimum": 1
16
+ },
17
+ "active": {
18
+ "description": "If the referenced influence must or must not be chosen.",
19
+ "type": "boolean"
20
+ },
21
+ "display_option": {
22
+ "$ref": "../DisplayOption.schema.json#/definitions/DisplayOption"
23
+ }
24
+ },
25
+ "required": [
26
+ "tag",
27
+ "id",
28
+ "active"
29
+ ],
30
+ "additionalProperties": false
31
+ }
32
+ }
33
+ }