optolith-database-schema 0.20.6 → 0.21.1

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 (122) hide show
  1. package/CHANGELOG.md +33 -0
  2. package/gen/types.d.ts +1516 -1134
  3. package/lib/types/Advantage.d.ts +185 -159
  4. package/lib/types/Advantage.js +2 -1
  5. package/lib/types/Aspect.js +1 -1
  6. package/lib/types/Cantrip.d.ts +1 -1
  7. package/lib/types/Cantrip.js +1 -1
  8. package/lib/types/Disadvantage.d.ts +185 -159
  9. package/lib/types/Disadvantage.js +2 -1
  10. package/lib/types/Disease.d.ts +45 -18
  11. package/lib/types/Disease.js +6 -1
  12. package/lib/types/Patron.js +2 -4
  13. package/lib/types/_Activatable.d.ts +188 -162
  14. package/lib/types/_Activatable.js +7 -5
  15. package/lib/types/_Prerequisite.d.ts +24 -0
  16. package/lib/types/_Prerequisite.js +5 -1
  17. package/lib/types/equipment/item/MagicalArtifact.d.ts +102 -0
  18. package/lib/types/equipment/item/MagicalArtifact.js +9 -1
  19. package/lib/types/equipment/item/Poison.d.ts +54 -0
  20. package/lib/types/equipment/item/Poison.js +4 -0
  21. package/lib/types/equipment/item/Vehicle.d.ts +8 -0
  22. package/lib/types/equipment/item/Vehicle.js +10 -2
  23. package/lib/types/equipment/item/_RangedWeapon.js +3 -3
  24. package/lib/types/magicalActions/AnimistPower_Tribe.d.ts +25 -1
  25. package/lib/types/magicalActions/AnimistPower_Tribe.js +6 -1
  26. package/lib/types/prerequisites/PrerequisiteGroups.d.ts +49 -0
  27. package/lib/types/prerequisites/PrerequisiteGroups.js +8 -0
  28. package/lib/types/specialAbility/AdvancedCombatSpecialAbility.d.ts +185 -159
  29. package/lib/types/specialAbility/AdvancedCombatSpecialAbility.js +2 -1
  30. package/lib/types/specialAbility/AdvancedKarmaSpecialAbility.d.ts +185 -159
  31. package/lib/types/specialAbility/AdvancedKarmaSpecialAbility.js +2 -1
  32. package/lib/types/specialAbility/AdvancedMagicalSpecialAbility.d.ts +185 -159
  33. package/lib/types/specialAbility/AdvancedMagicalSpecialAbility.js +2 -1
  34. package/lib/types/specialAbility/AdvancedSkillSpecialAbility.d.ts +185 -159
  35. package/lib/types/specialAbility/AdvancedSkillSpecialAbility.js +2 -1
  36. package/lib/types/specialAbility/AncestorGlyph.d.ts +185 -159
  37. package/lib/types/specialAbility/AncestorGlyph.js +2 -1
  38. package/lib/types/specialAbility/BlessedTradition.d.ts +185 -159
  39. package/lib/types/specialAbility/BlessedTradition.js +2 -1
  40. package/lib/types/specialAbility/BrawlingSpecialAbility.d.ts +185 -159
  41. package/lib/types/specialAbility/BrawlingSpecialAbility.js +2 -1
  42. package/lib/types/specialAbility/CeremonialItemSpecialAbility.d.ts +185 -159
  43. package/lib/types/specialAbility/CeremonialItemSpecialAbility.js +2 -1
  44. package/lib/types/specialAbility/CombatSpecialAbility.d.ts +185 -159
  45. package/lib/types/specialAbility/CombatSpecialAbility.js +2 -1
  46. package/lib/types/specialAbility/CombatStyleSpecialAbility.d.ts +185 -159
  47. package/lib/types/specialAbility/CombatStyleSpecialAbility.js +2 -1
  48. package/lib/types/specialAbility/CommandSpecialAbility.d.ts +185 -159
  49. package/lib/types/specialAbility/CommandSpecialAbility.js +2 -1
  50. package/lib/types/specialAbility/FamiliarSpecialAbility.d.ts +185 -159
  51. package/lib/types/specialAbility/FamiliarSpecialAbility.js +2 -1
  52. package/lib/types/specialAbility/FatePointSexSpecialAbility.d.ts +185 -159
  53. package/lib/types/specialAbility/FatePointSexSpecialAbility.js +2 -1
  54. package/lib/types/specialAbility/FatePointSpecialAbility.d.ts +185 -159
  55. package/lib/types/specialAbility/FatePointSpecialAbility.js +2 -1
  56. package/lib/types/specialAbility/GeneralSpecialAbility.d.ts +185 -159
  57. package/lib/types/specialAbility/GeneralSpecialAbility.js +2 -1
  58. package/lib/types/specialAbility/KarmaSpecialAbility.d.ts +185 -159
  59. package/lib/types/specialAbility/KarmaSpecialAbility.js +2 -1
  60. package/lib/types/specialAbility/LiturgicalStyleSpecialAbility.d.ts +185 -159
  61. package/lib/types/specialAbility/LiturgicalStyleSpecialAbility.js +2 -1
  62. package/lib/types/specialAbility/LycantropicGift.d.ts +185 -159
  63. package/lib/types/specialAbility/LycantropicGift.js +2 -1
  64. package/lib/types/specialAbility/MagicStyleSpecialAbility.d.ts +185 -159
  65. package/lib/types/specialAbility/MagicStyleSpecialAbility.js +2 -1
  66. package/lib/types/specialAbility/MagicalSpecialAbility.d.ts +185 -159
  67. package/lib/types/specialAbility/MagicalSpecialAbility.js +2 -1
  68. package/lib/types/specialAbility/MagicalTradition.d.ts +185 -159
  69. package/lib/types/specialAbility/MagicalTradition.js +2 -1
  70. package/lib/types/specialAbility/PactGift.d.ts +185 -159
  71. package/lib/types/specialAbility/PactGift.js +2 -1
  72. package/lib/types/specialAbility/ProtectiveWardingCircleSpecialAbility.d.ts +185 -159
  73. package/lib/types/specialAbility/ProtectiveWardingCircleSpecialAbility.js +2 -1
  74. package/lib/types/specialAbility/Sermon.d.ts +185 -159
  75. package/lib/types/specialAbility/Sermon.js +2 -1
  76. package/lib/types/specialAbility/SexSpecialAbility.d.ts +185 -159
  77. package/lib/types/specialAbility/SexSpecialAbility.js +2 -1
  78. package/lib/types/specialAbility/SikaryanDrainSpecialAbility.d.ts +185 -159
  79. package/lib/types/specialAbility/SikaryanDrainSpecialAbility.js +2 -1
  80. package/lib/types/specialAbility/SkillStyleSpecialAbility.d.ts +185 -159
  81. package/lib/types/specialAbility/SkillStyleSpecialAbility.js +2 -1
  82. package/lib/types/specialAbility/VampiricGift.d.ts +185 -159
  83. package/lib/types/specialAbility/VampiricGift.js +2 -1
  84. package/lib/types/specialAbility/Vision.d.ts +185 -159
  85. package/lib/types/specialAbility/Vision.js +2 -1
  86. package/lib/types/traditionArtifacts/ArcaneOrbEnchantment.d.ts +185 -159
  87. package/lib/types/traditionArtifacts/ArcaneOrbEnchantment.js +2 -1
  88. package/lib/types/traditionArtifacts/AttireEnchantment.d.ts +185 -159
  89. package/lib/types/traditionArtifacts/AttireEnchantment.js +2 -1
  90. package/lib/types/traditionArtifacts/BowlEnchantment.d.ts +185 -159
  91. package/lib/types/traditionArtifacts/BowlEnchantment.js +2 -1
  92. package/lib/types/traditionArtifacts/CauldronEnchantment.d.ts +185 -159
  93. package/lib/types/traditionArtifacts/CauldronEnchantment.js +2 -1
  94. package/lib/types/traditionArtifacts/ChronicleEnchantment.d.ts +185 -159
  95. package/lib/types/traditionArtifacts/ChronicleEnchantment.js +2 -1
  96. package/lib/types/traditionArtifacts/DaggerRitual.d.ts +185 -159
  97. package/lib/types/traditionArtifacts/DaggerRitual.js +2 -1
  98. package/lib/types/traditionArtifacts/FoolsHatEnchantment.d.ts +185 -159
  99. package/lib/types/traditionArtifacts/FoolsHatEnchantment.js +2 -1
  100. package/lib/types/traditionArtifacts/InstrumentEnchantment.d.ts +185 -159
  101. package/lib/types/traditionArtifacts/InstrumentEnchantment.js +2 -1
  102. package/lib/types/traditionArtifacts/Krallenkettenzauber.d.ts +185 -159
  103. package/lib/types/traditionArtifacts/Krallenkettenzauber.js +2 -1
  104. package/lib/types/traditionArtifacts/OrbEnchantment.d.ts +185 -159
  105. package/lib/types/traditionArtifacts/OrbEnchantment.js +2 -1
  106. package/lib/types/traditionArtifacts/RingEnchantment.d.ts +185 -159
  107. package/lib/types/traditionArtifacts/RingEnchantment.js +2 -1
  108. package/lib/types/traditionArtifacts/SickleRitual.d.ts +185 -159
  109. package/lib/types/traditionArtifacts/SickleRitual.js +2 -1
  110. package/lib/types/traditionArtifacts/SpellSwordEnchantment.d.ts +185 -159
  111. package/lib/types/traditionArtifacts/SpellSwordEnchantment.js +2 -1
  112. package/lib/types/traditionArtifacts/StaffEnchantment.d.ts +185 -159
  113. package/lib/types/traditionArtifacts/StaffEnchantment.js +2 -1
  114. package/lib/types/traditionArtifacts/ToyEnchantment.d.ts +185 -159
  115. package/lib/types/traditionArtifacts/ToyEnchantment.js +2 -1
  116. package/lib/types/traditionArtifacts/Trinkhornzauber.d.ts +185 -159
  117. package/lib/types/traditionArtifacts/Trinkhornzauber.js +2 -1
  118. package/lib/types/traditionArtifacts/WandEnchantment.d.ts +185 -159
  119. package/lib/types/traditionArtifacts/WandEnchantment.js +2 -1
  120. package/lib/types/traditionArtifacts/WeaponEnchantment.d.ts +185 -159
  121. package/lib/types/traditionArtifacts/WeaponEnchantment.js +2 -1
  122. package/package.json +3 -3
package/gen/types.d.ts CHANGED
@@ -188,12 +188,19 @@ export interface AdvancedCombatSpecialAbility {
188
188
  usage_type: CombatSpecialAbilityUsageType
189
189
 
190
190
  /**
191
- * Definitions for possible options for the activatable entry. They can either be derived from entry categories or be defined explicitly. Both can happen as well, but if there is an explicitly defined select option and a derived select option has the same identifier (which may only happen if skill or combat technique identifiers are used for explicit select options), the explicit definition overwrites the derived option.
191
+ * Definitions for possible options for the activatable entry, derived from entry categories.
192
192
  *
193
193
  * Note that this is only a full definition of options for simple logic that can be made explicit using the more detailed configuration for both derived categories and explicit options. There are quite a few entries whose option logic cannot be fully represented here, so that it needs to be implemented manually.
194
194
  */
195
195
  select_options?: SelectOptions
196
196
 
197
+ /**
198
+ * Explicit definitions for possible options for the activatable entry.
199
+ *
200
+ * Note that this is only a full definition of options for simple logic that can be made explicit using the more detailed configuration for both derived categories and explicit options. There are quite a few entries whose option logic cannot be fully represented here, so that it needs to be implemented manually.
201
+ */
202
+ explicit_select_options: GeneralSelectOption_ID[]
203
+
197
204
  /**
198
205
  * Registers new skill applications, which get enabled once this entry is activated. It specifies an entry-unique identifier and the skill it belongs to. A translation can be left out if its name equals the name of the origin activatable entry.
199
206
  */
@@ -305,11 +312,6 @@ export interface SelectOptions {
305
312
  * An entry category with optional further configuration. All available entries from the specified categories will be included as separate select options. You can also specify a set of groups that should only be included. Groups not mentioned will be excluded then.
306
313
  */
307
314
  derived?: SelectOptionCategory
308
-
309
- /**
310
- * A list of explicit select options. If the identifier has a specific type, its entry is the base of this select option, where values defined here override values from the base. Define the `src` property if the options are not derived from the rules text of the advantage/disadvantage/special ability but instead are listed in a separate block and/or on a separate page.
311
- */
312
- explicit?: ExplicitSelectOption[]
313
315
  }
314
316
 
315
317
  export type SelectOptionCategory =
@@ -1838,12 +1840,19 @@ export interface Advantage {
1838
1840
  levels?: number
1839
1841
 
1840
1842
  /**
1841
- * Definitions for possible options for the activatable entry. They can either be derived from entry categories or be defined explicitly. Both can happen as well, but if there is an explicitly defined select option and a derived select option has the same identifier (which may only happen if skill or combat technique identifiers are used for explicit select options), the explicit definition overwrites the derived option.
1843
+ * Definitions for possible options for the activatable entry, derived from entry categories.
1842
1844
  *
1843
1845
  * Note that this is only a full definition of options for simple logic that can be made explicit using the more detailed configuration for both derived categories and explicit options. There are quite a few entries whose option logic cannot be fully represented here, so that it needs to be implemented manually.
1844
1846
  */
1845
1847
  select_options?: SelectOptions
1846
1848
 
1849
+ /**
1850
+ * Explicit definitions for possible options for the activatable entry.
1851
+ *
1852
+ * Note that this is only a full definition of options for simple logic that can be made explicit using the more detailed configuration for both derived categories and explicit options. There are quite a few entries whose option logic cannot be fully represented here, so that it needs to be implemented manually.
1853
+ */
1854
+ explicit_select_options: GeneralSelectOption_ID[]
1855
+
1847
1856
  /**
1848
1857
  * Registers new skill applications, which get enabled once this entry is activated. It specifies an entry-unique identifier and the skill it belongs to. A translation can be left out if its name equals the name of the origin activatable entry.
1849
1858
  */
@@ -1942,119 +1951,6 @@ export interface AdvantageTranslation {
1942
1951
  errata?: Errata
1943
1952
  }
1944
1953
 
1945
- /**
1946
- * Registers new skill applications, which get enabled once the referenced entry is activated. It specifies the skill(s) it belongs to. A translation can be left out if its name equals the name of the origin activatable entry.
1947
- */
1948
- export interface NewSkillApplication {
1949
- /**
1950
- * The entry that enables the new skill application.
1951
- */
1952
- parent: NewSkillApplicationOrUseParentIdentifier
1953
-
1954
- /**
1955
- * The skill(s) this application belongs to.
1956
- */
1957
- skills: Skill_ID[]
1958
-
1959
- /**
1960
- * If an application applies to multiple skills, it may need to ensure the respective skill is on a certain skill rating if the activatable entry cannot ensure this prerequisite.
1961
- */
1962
- required_skill_rating?: number
1963
-
1964
- /**
1965
- * All translations for the entry, identified by IETF language tag (BCP47).
1966
- */
1967
- translations?: {
1968
- [localeId: string]: NewSkillApplicationTranslation
1969
- }
1970
- }
1971
-
1972
- /**
1973
- * The entity’s identifier. A UUID or a locale code if it is registered as the locale entity.
1974
- */
1975
- export type NewSkillApplication_ID = string
1976
-
1977
- export interface NewSkillApplicationTranslation {
1978
- /**
1979
- * The name of the application if different from the activatable entry’s name.
1980
- */
1981
- name: string
1982
- }
1983
-
1984
- export type NewSkillApplicationOrUseParentIdentifier =
1985
- | {
1986
- kind: "GeneralSelectOption"
1987
- GeneralSelectOption: GeneralSelectOption_ID
1988
- }
1989
- | {
1990
- kind: "Advantage"
1991
- Advantage: Advantage_ID
1992
- }
1993
- | {
1994
- kind: "Disadvantage"
1995
- Disadvantage: Disadvantage_ID
1996
- }
1997
- | {
1998
- kind: "AdvancedCombatSpecialAbility"
1999
- AdvancedCombatSpecialAbility: AdvancedCombatSpecialAbility_ID
2000
- }
2001
- | {
2002
- kind: "AdvancedKarmaSpecialAbility"
2003
- AdvancedKarmaSpecialAbility: AdvancedKarmaSpecialAbility_ID
2004
- }
2005
- | {
2006
- kind: "AdvancedMagicalSpecialAbility"
2007
- AdvancedMagicalSpecialAbility: AdvancedMagicalSpecialAbility_ID
2008
- }
2009
- | {
2010
- kind: "AdvancedSkillSpecialAbility"
2011
- AdvancedSkillSpecialAbility: AdvancedSkillSpecialAbility_ID
2012
- }
2013
- | {
2014
- kind: "BlessedTradition"
2015
- BlessedTradition: BlessedTradition_ID
2016
- }
2017
- | {
2018
- kind: "CeremonialItemSpecialAbility"
2019
- CeremonialItemSpecialAbility: CeremonialItemSpecialAbility_ID
2020
- }
2021
- | {
2022
- kind: "CombatSpecialAbility"
2023
- CombatSpecialAbility: CombatSpecialAbility_ID
2024
- }
2025
- | {
2026
- kind: "CombatStyleSpecialAbility"
2027
- CombatStyleSpecialAbility: CombatStyleSpecialAbility_ID
2028
- }
2029
- | {
2030
- kind: "FatePointSpecialAbility"
2031
- FatePointSpecialAbility: FatePointSpecialAbility_ID
2032
- }
2033
- | {
2034
- kind: "GeneralSpecialAbility"
2035
- GeneralSpecialAbility: GeneralSpecialAbility_ID
2036
- }
2037
- | {
2038
- kind: "LiturgicalStyleSpecialAbility"
2039
- LiturgicalStyleSpecialAbility: LiturgicalStyleSpecialAbility_ID
2040
- }
2041
- | {
2042
- kind: "MagicalSpecialAbility"
2043
- MagicalSpecialAbility: MagicalSpecialAbility_ID
2044
- }
2045
- | {
2046
- kind: "MagicalTradition"
2047
- MagicalTradition: MagicalTradition_ID
2048
- }
2049
- | {
2050
- kind: "MagicStyleSpecialAbility"
2051
- MagicStyleSpecialAbility: MagicStyleSpecialAbility_ID
2052
- }
2053
- | {
2054
- kind: "SexSpecialAbility"
2055
- SexSpecialAbility: SexSpecialAbility_ID
2056
- }
2057
-
2058
1954
  export interface GeneralSelectOption {
2059
1955
  /**
2060
1956
  * The entry that contains select option.
@@ -2341,12 +2237,19 @@ export interface Disadvantage {
2341
2237
  levels?: number
2342
2238
 
2343
2239
  /**
2344
- * Definitions for possible options for the activatable entry. They can either be derived from entry categories or be defined explicitly. Both can happen as well, but if there is an explicitly defined select option and a derived select option has the same identifier (which may only happen if skill or combat technique identifiers are used for explicit select options), the explicit definition overwrites the derived option.
2240
+ * Definitions for possible options for the activatable entry, derived from entry categories.
2345
2241
  *
2346
2242
  * Note that this is only a full definition of options for simple logic that can be made explicit using the more detailed configuration for both derived categories and explicit options. There are quite a few entries whose option logic cannot be fully represented here, so that it needs to be implemented manually.
2347
2243
  */
2348
2244
  select_options?: SelectOptions
2349
2245
 
2246
+ /**
2247
+ * Explicit definitions for possible options for the activatable entry.
2248
+ *
2249
+ * Note that this is only a full definition of options for simple logic that can be made explicit using the more detailed configuration for both derived categories and explicit options. There are quite a few entries whose option logic cannot be fully represented here, so that it needs to be implemented manually.
2250
+ */
2251
+ explicit_select_options: GeneralSelectOption_ID[]
2252
+
2350
2253
  /**
2351
2254
  * Registers new skill applications, which get enabled once this entry is activated. It specifies an entry-unique identifier and the skill it belongs to. A translation can be left out if its name equals the name of the origin activatable entry.
2352
2255
  */
@@ -2445,21 +2348,21 @@ export interface DisadvantageTranslation {
2445
2348
  }
2446
2349
 
2447
2350
  /**
2448
- * Registers uses, which get enabled once this entry is activated. It specifies the skill(s) it belongs to. A translation can be left out if its name equals the name of the origin activatable entry.
2351
+ * Registers new skill applications, which get enabled once the referenced entry is activated. It specifies the skill(s) it belongs to. A translation can be left out if its name equals the name of the origin activatable entry.
2449
2352
  */
2450
- export interface SkillUse {
2353
+ export interface NewSkillApplication {
2451
2354
  /**
2452
- * The entry that enables the use.
2355
+ * The entry that enables the new skill application.
2453
2356
  */
2454
2357
  parent: NewSkillApplicationOrUseParentIdentifier
2455
2358
 
2456
2359
  /**
2457
- * The skill(s) this use belongs to.
2360
+ * The skill(s) this application belongs to.
2458
2361
  */
2459
2362
  skills: Skill_ID[]
2460
2363
 
2461
2364
  /**
2462
- * If a use applies to multiple skills, it may need to ensure the respective skill is on a certain skill rating if the activatable entry cannot ensure this prerequisite.
2365
+ * If an application applies to multiple skills, it may need to ensure the respective skill is on a certain skill rating if the activatable entry cannot ensure this prerequisite.
2463
2366
  */
2464
2367
  required_skill_rating?: number
2465
2368
 
@@ -2467,56 +2370,269 @@ export interface SkillUse {
2467
2370
  * All translations for the entry, identified by IETF language tag (BCP47).
2468
2371
  */
2469
2372
  translations?: {
2470
- [localeId: string]: SkillUseTranslation
2373
+ [localeId: string]: NewSkillApplicationTranslation
2471
2374
  }
2472
2375
  }
2473
2376
 
2474
2377
  /**
2475
2378
  * The entity’s identifier. A UUID or a locale code if it is registered as the locale entity.
2476
2379
  */
2477
- export type SkillUse_ID = string
2380
+ export type NewSkillApplication_ID = string
2478
2381
 
2479
- export interface SkillUseTranslation {
2382
+ export interface NewSkillApplicationTranslation {
2480
2383
  /**
2481
- * The name of the use if different from the activatable entry’s name.
2384
+ * The name of the application if different from the activatable entry’s name.
2482
2385
  */
2483
2386
  name: string
2484
2387
  }
2485
2388
 
2486
- export interface Skill {
2487
- /**
2488
- * Lists the linked three attributes used to make a skill check.
2489
- */
2490
- check: SkillCheck
2389
+ export type NewSkillApplicationOrUseParentIdentifier =
2390
+ | {
2391
+ kind: "GeneralSelectOption"
2392
+ GeneralSelectOption: GeneralSelectOption_ID
2393
+ }
2394
+ | {
2395
+ kind: "Advantage"
2396
+ Advantage: Advantage_ID
2397
+ }
2398
+ | {
2399
+ kind: "Disadvantage"
2400
+ Disadvantage: Disadvantage_ID
2401
+ }
2402
+ | {
2403
+ kind: "AdvancedCombatSpecialAbility"
2404
+ AdvancedCombatSpecialAbility: AdvancedCombatSpecialAbility_ID
2405
+ }
2406
+ | {
2407
+ kind: "AdvancedKarmaSpecialAbility"
2408
+ AdvancedKarmaSpecialAbility: AdvancedKarmaSpecialAbility_ID
2409
+ }
2410
+ | {
2411
+ kind: "AdvancedMagicalSpecialAbility"
2412
+ AdvancedMagicalSpecialAbility: AdvancedMagicalSpecialAbility_ID
2413
+ }
2414
+ | {
2415
+ kind: "AdvancedSkillSpecialAbility"
2416
+ AdvancedSkillSpecialAbility: AdvancedSkillSpecialAbility_ID
2417
+ }
2418
+ | {
2419
+ kind: "BlessedTradition"
2420
+ BlessedTradition: BlessedTradition_ID
2421
+ }
2422
+ | {
2423
+ kind: "CeremonialItemSpecialAbility"
2424
+ CeremonialItemSpecialAbility: CeremonialItemSpecialAbility_ID
2425
+ }
2426
+ | {
2427
+ kind: "CombatSpecialAbility"
2428
+ CombatSpecialAbility: CombatSpecialAbility_ID
2429
+ }
2430
+ | {
2431
+ kind: "CombatStyleSpecialAbility"
2432
+ CombatStyleSpecialAbility: CombatStyleSpecialAbility_ID
2433
+ }
2434
+ | {
2435
+ kind: "FatePointSpecialAbility"
2436
+ FatePointSpecialAbility: FatePointSpecialAbility_ID
2437
+ }
2438
+ | {
2439
+ kind: "GeneralSpecialAbility"
2440
+ GeneralSpecialAbility: GeneralSpecialAbility_ID
2441
+ }
2442
+ | {
2443
+ kind: "LiturgicalStyleSpecialAbility"
2444
+ LiturgicalStyleSpecialAbility: LiturgicalStyleSpecialAbility_ID
2445
+ }
2446
+ | {
2447
+ kind: "MagicalSpecialAbility"
2448
+ MagicalSpecialAbility: MagicalSpecialAbility_ID
2449
+ }
2450
+ | {
2451
+ kind: "MagicalTradition"
2452
+ MagicalTradition: MagicalTradition_ID
2453
+ }
2454
+ | {
2455
+ kind: "MagicStyleSpecialAbility"
2456
+ MagicStyleSpecialAbility: MagicStyleSpecialAbility_ID
2457
+ }
2458
+ | {
2459
+ kind: "SexSpecialAbility"
2460
+ SexSpecialAbility: SexSpecialAbility_ID
2461
+ }
2491
2462
 
2463
+ /**
2464
+ * Karma Special Abilities that are being unlocked by Liturgical Style Special Abilities.
2465
+ */
2466
+ export interface AdvancedKarmaSpecialAbility {
2492
2467
  /**
2493
- * Lists applications for the skill, if any. This does not necessarily include all possible applications. There may also be new applications that could be purchased via certain advantages or special abilities.
2468
+ * Number of available levels.
2494
2469
  */
2495
- applications: Applications
2470
+ levels?: number
2496
2471
 
2497
2472
  /**
2498
- * Indicates whether encumbrance gives a penalty for checks with the skill.
2473
+ * Definitions for possible options for the activatable entry, derived from entry categories.
2474
+ *
2475
+ * Note that this is only a full definition of options for simple logic that can be made explicit using the more detailed configuration for both derived categories and explicit options. There are quite a few entries whose option logic cannot be fully represented here, so that it needs to be implemented manually.
2499
2476
  */
2500
- encumbrance: EncumbranceInfluence
2477
+ select_options?: SelectOptions
2501
2478
 
2502
2479
  /**
2503
- * States which column is used to improve the skill.
2480
+ * Explicit definitions for possible options for the activatable entry.
2481
+ *
2482
+ * Note that this is only a full definition of options for simple logic that can be made explicit using the more detailed configuration for both derived categories and explicit options. There are quite a few entries whose option logic cannot be fully represented here, so that it needs to be implemented manually.
2504
2483
  */
2505
- improvement_cost: ImprovementCost
2484
+ explicit_select_options: GeneralSelectOption_ID[]
2506
2485
 
2507
2486
  /**
2508
- * The skill group this skill belongs to.
2487
+ * Registers new skill applications, which get enabled once this entry is activated. It specifies an entry-unique identifier and the skill it belongs to. A translation can be left out if its name equals the name of the origin activatable entry.
2509
2488
  */
2510
- group: SkillGroup_ID
2489
+ skill_applications: NewSkillApplication_ID[]
2511
2490
 
2512
2491
  /**
2513
- * All translations for the entry, identified by IETF language tag (BCP47).
2492
+ * Registers uses, which get enabled once this entry is activated. It specifies an entry-unique identifier and the skill it belongs to. A translation can be left out if its name equals the name of the origin activatable entry.
2514
2493
  */
2515
- src: PublicationRefs
2494
+ skill_uses: SkillUse_ID[]
2516
2495
 
2517
2496
  /**
2518
- * All translations for the entry, identified by IETF language tag (BCP47).
2519
- */
2497
+ * The number stating how often you can buy the entry. The **default** depends on the entry type:
2498
+ *
2499
+ * - **Advantage:** `1` in all cases (as specified in the **Core Rules**)
2500
+ * - **Disadvantage:** `1` in all cases (as specified in the **Core Rules**)
2501
+ * - **Special Abilities:** `1` if no options can be selected, otherwise the number of possible options
2502
+ *
2503
+ * The maximum is only set if it differs from the defaults specified above.
2504
+ */
2505
+ maximum?: number
2506
+
2507
+ prerequisites?: GeneralPrerequisites
2508
+
2509
+ /**
2510
+ * The adventure points value.
2511
+ */
2512
+ ap_value: AdventurePointsValue
2513
+
2514
+ /**
2515
+ * All translations for the entry, identified by IETF language tag (BCP47).
2516
+ */
2517
+ src: PublicationRefs
2518
+
2519
+ /**
2520
+ * All translations for the entry, identified by IETF language tag (BCP47).
2521
+ */
2522
+ translations: {
2523
+ [localeId: string]: AdvancedKarmaSpecialAbilityTranslation
2524
+ }
2525
+ }
2526
+
2527
+ /**
2528
+ * The entity’s identifier. A UUID or a locale code if it is registered as the locale entity.
2529
+ */
2530
+ export type AdvancedKarmaSpecialAbility_ID = string
2531
+
2532
+ export interface AdvancedKarmaSpecialAbilityTranslation {
2533
+ /**
2534
+ * Name of the activatable entry.
2535
+ */
2536
+ name: string
2537
+
2538
+ /**
2539
+ * The full name of the entry as stated in the sources. Only use when `name` needs to be different from full name for text generation purposes.
2540
+ */
2541
+ name_in_library?: string
2542
+
2543
+ /**
2544
+ * The rule text.
2545
+ */
2546
+ rules: string
2547
+
2548
+ /**
2549
+ * The string to append to the generated AP value text.
2550
+ * @deprecated
2551
+ */
2552
+ ap_value_append?: string
2553
+
2554
+ /**
2555
+ * The adventure points value.
2556
+ * @deprecated
2557
+ */
2558
+ ap_value?: string
2559
+
2560
+ errata?: Errata
2561
+ }
2562
+
2563
+ /**
2564
+ * Registers uses, which get enabled once this entry is activated. It specifies the skill(s) it belongs to. A translation can be left out if its name equals the name of the origin activatable entry.
2565
+ */
2566
+ export interface SkillUse {
2567
+ /**
2568
+ * The entry that enables the use.
2569
+ */
2570
+ parent: NewSkillApplicationOrUseParentIdentifier
2571
+
2572
+ /**
2573
+ * The skill(s) this use belongs to.
2574
+ */
2575
+ skills: Skill_ID[]
2576
+
2577
+ /**
2578
+ * If a use applies to multiple skills, it may need to ensure the respective skill is on a certain skill rating if the activatable entry cannot ensure this prerequisite.
2579
+ */
2580
+ required_skill_rating?: number
2581
+
2582
+ /**
2583
+ * All translations for the entry, identified by IETF language tag (BCP47).
2584
+ */
2585
+ translations?: {
2586
+ [localeId: string]: SkillUseTranslation
2587
+ }
2588
+ }
2589
+
2590
+ /**
2591
+ * The entity’s identifier. A UUID or a locale code if it is registered as the locale entity.
2592
+ */
2593
+ export type SkillUse_ID = string
2594
+
2595
+ export interface SkillUseTranslation {
2596
+ /**
2597
+ * The name of the use if different from the activatable entry’s name.
2598
+ */
2599
+ name: string
2600
+ }
2601
+
2602
+ export interface Skill {
2603
+ /**
2604
+ * Lists the linked three attributes used to make a skill check.
2605
+ */
2606
+ check: SkillCheck
2607
+
2608
+ /**
2609
+ * Lists applications for the skill, if any. This does not necessarily include all possible applications. There may also be new applications that could be purchased via certain advantages or special abilities.
2610
+ */
2611
+ applications: Applications
2612
+
2613
+ /**
2614
+ * Indicates whether encumbrance gives a penalty for checks with the skill.
2615
+ */
2616
+ encumbrance: EncumbranceInfluence
2617
+
2618
+ /**
2619
+ * States which column is used to improve the skill.
2620
+ */
2621
+ improvement_cost: ImprovementCost
2622
+
2623
+ /**
2624
+ * The skill group this skill belongs to.
2625
+ */
2626
+ group: SkillGroup_ID
2627
+
2628
+ /**
2629
+ * All translations for the entry, identified by IETF language tag (BCP47).
2630
+ */
2631
+ src: PublicationRefs
2632
+
2633
+ /**
2634
+ * All translations for the entry, identified by IETF language tag (BCP47).
2635
+ */
2520
2636
  translations: {
2521
2637
  [localeId: string]: SkillTranslation
2522
2638
  }
@@ -3017,7 +3133,7 @@ export interface Erratum {
3017
3133
  description: string
3018
3134
  }
3019
3135
 
3020
- export type AdvantageDisadvantagePrerequisites = PrerequisitesForLevels<AdvantageDisadvantagePrerequisiteGroup>
3136
+ export type GeneralPrerequisites = PrerequisitesForLevels<GeneralPrerequisiteGroup>
3021
3137
 
3022
3138
  export type PrerequisitesForLevels<T> = PrerequisiteForLevel<T>[]
3023
3139
 
@@ -3033,10 +3149,7 @@ export interface PrerequisiteForLevel<T> {
3033
3149
  prerequisite: PrerequisitesElement<T>
3034
3150
  }
3035
3151
 
3036
- export type AdvantageDisadvantagePrerequisiteGroup =
3037
- | {
3038
- kind: "CommonSuggestedByRCP"
3039
- }
3152
+ export type GeneralPrerequisiteGroup =
3040
3153
  | {
3041
3154
  kind: "Sex"
3042
3155
  Sex: SexPrerequisite
@@ -3101,9 +3214,6 @@ export type AdvantageDisadvantagePrerequisiteGroup =
3101
3214
  kind: "Text"
3102
3215
  Text: TextPrerequisite
3103
3216
  }
3104
- | {
3105
- kind: "NoOtherAncestorBloodAdvantage"
3106
- }
3107
3217
  | {
3108
3218
  kind: "SexualCharacteristic"
3109
3219
  SexualCharacteristic: SexualCharacteristicPrerequisite
@@ -4087,7 +4197,7 @@ export interface AspectTranslation {
4087
4197
  name: string
4088
4198
 
4089
4199
  /**
4090
- * The aspect’s name appended to the simple name (not `name_in_library`) of the special ability *Master of (Aspect)*.
4200
+ * In some languages, the aspect’s grammatical gender influences the full name of a *Master of (Aspect)* instance. To make this possible, the *name* (**not** the *name in library*) is joined with what is contained in this field.
4091
4201
  */
4092
4202
  master_of_aspect_suffix?: string
4093
4203
  }
@@ -5240,12 +5350,19 @@ export interface LiturgyTraditionWithAspects {
5240
5350
 
5241
5351
  export interface BlessedTradition {
5242
5352
  /**
5243
- * Definitions for possible options for the activatable entry. They can either be derived from entry categories or be defined explicitly. Both can happen as well, but if there is an explicitly defined select option and a derived select option has the same identifier (which may only happen if skill or combat technique identifiers are used for explicit select options), the explicit definition overwrites the derived option.
5353
+ * Definitions for possible options for the activatable entry, derived from entry categories.
5244
5354
  *
5245
5355
  * Note that this is only a full definition of options for simple logic that can be made explicit using the more detailed configuration for both derived categories and explicit options. There are quite a few entries whose option logic cannot be fully represented here, so that it needs to be implemented manually.
5246
5356
  */
5247
5357
  select_options?: SelectOptions
5248
5358
 
5359
+ /**
5360
+ * Explicit definitions for possible options for the activatable entry.
5361
+ *
5362
+ * Note that this is only a full definition of options for simple logic that can be made explicit using the more detailed configuration for both derived categories and explicit options. There are quite a few entries whose option logic cannot be fully represented here, so that it needs to be implemented manually.
5363
+ */
5364
+ explicit_select_options: GeneralSelectOption_ID[]
5365
+
5249
5366
  /**
5250
5367
  * Registers new skill applications, which get enabled once this entry is activated. It specifies an entry-unique identifier and the skill it belongs to. A translation can be left out if its name equals the name of the origin activatable entry.
5251
5368
  */
@@ -5542,280 +5659,156 @@ export interface ShamanisticBlessedTradition {
5542
5659
  can_use_bone_mace_as_ceremonial_item: boolean
5543
5660
  }
5544
5661
 
5545
- export type GeneralPrerequisites = PrerequisitesForLevels<GeneralPrerequisiteGroup>
5546
-
5547
- export type GeneralPrerequisiteGroup =
5548
- | {
5549
- kind: "Sex"
5550
- Sex: SexPrerequisite
5551
- }
5552
- | {
5553
- kind: "Race"
5554
- Race: RacePrerequisite
5555
- }
5556
- | {
5557
- kind: "Culture"
5558
- Culture: CulturePrerequisite
5559
- }
5560
- | {
5561
- kind: "Pact"
5562
- Pact: PactPrerequisitePactPrerequisite
5563
- }
5564
- | {
5565
- kind: "SocialStatus"
5566
- SocialStatus: SocialStatusPrerequisite
5567
- }
5568
- | {
5569
- kind: "State"
5570
- State: StatePrerequisite
5571
- }
5572
- | {
5573
- kind: "Rule"
5574
- Rule: RulePrerequisite
5575
- }
5576
- | {
5577
- kind: "PrimaryAttribute"
5578
- PrimaryAttribute: PrimaryAttributePrerequisite
5579
- }
5580
- | {
5581
- kind: "Activatable"
5582
- Activatable: ActivatablePrerequisite
5583
- }
5584
- | {
5585
- kind: "BlessedTradition"
5586
- BlessedTradition: BlessedTraditionPrerequisite
5587
- }
5588
- | {
5589
- kind: "MagicalTradition"
5590
- MagicalTradition: MagicalTraditionPrerequisite
5591
- }
5592
- | {
5593
- kind: "Rated"
5594
- Rated: RatedPrerequisite
5595
- }
5662
+ export type AdventurePointsValue =
5596
5663
  | {
5597
- kind: "RatedMinimumNumber"
5598
- RatedMinimumNumber: RatedMinimumNumberPrerequisite
5664
+ kind: "Fixed"
5665
+ Fixed: FixedAdventurePointsValue
5599
5666
  }
5600
5667
  | {
5601
- kind: "RatedSum"
5602
- RatedSum: RatedSumPrerequisite
5668
+ kind: "ByLevel"
5669
+ ByLevel: AdventurePointsValueByLevel
5603
5670
  }
5604
5671
  | {
5605
- kind: "Enhancement"
5606
- Enhancement: EnhancementPrerequisite
5672
+ kind: "DerivedFromSelection"
5673
+ DerivedFromSelection: AdventurePointsDerivedFromSelection
5607
5674
  }
5608
5675
  | {
5609
- kind: "Text"
5610
- Text: TextPrerequisite
5676
+ kind: "DependingOnActiveInstances"
5677
+ DependingOnActiveInstances: AdventurePointsDependingOnActiveInstances
5611
5678
  }
5612
5679
  | {
5613
- kind: "SexualCharacteristic"
5614
- SexualCharacteristic: SexualCharacteristicPrerequisite
5680
+ kind: "Indefinite"
5615
5681
  }
5616
5682
 
5617
5683
  /**
5618
- * Requires a specific culture or one of a specific set of cultures.
5684
+ * A fixed adventure points value. If the entry has levels, this is the cost per level as well.
5619
5685
  */
5620
- export interface CulturePrerequisite {
5621
- /**
5622
- * The culture’s identifier.
5623
- */
5624
- id: Culture_ID
5686
+ export type FixedAdventurePointsValue = AdventurePointsSingleValue
5625
5687
 
5626
- display_option?: DisplayOption
5627
- }
5688
+ /**
5689
+ * A single adventure points value.
5690
+ */
5691
+ export type AdventurePointsSingleValue = number
5628
5692
 
5629
5693
  /**
5630
- * Requires a specific pact.
5694
+ * An entry with levels may have different costs for each level. The length of the list must match the amount of levels the special ability has.
5631
5695
  */
5632
- export interface PactPrerequisitePactPrerequisite {
5696
+ export type AdventurePointsValueByLevel = AdventurePointsSingleValue[]
5697
+
5698
+ /**
5699
+ * The adventure points value is derived from the selection of the special ability. Its display value may be able to be derived from the given information for the select options. If that is not the case or the generated text would not match the original one, a replacement text can be provided.
5700
+ */
5701
+ export interface AdventurePointsDerivedFromSelection {
5633
5702
  /**
5634
- * The required pact category.
5703
+ * All translations for the entry, identified by IETF language tag (BCP47).
5635
5704
  */
5636
- category: PactCategory_ID
5705
+ translations?: {
5706
+ [localeId: string]: AdventurePointsDerivedFromSelectionTranslation
5707
+ }
5708
+ }
5637
5709
 
5710
+ export interface AdventurePointsDerivedFromSelectionTranslation {
5638
5711
  /**
5639
- * The required domain(s).
5640
- */
5641
- domain?: PactDomain_ID[]
5642
-
5643
- /**
5644
- * The level to which the minimum value applies.
5645
- */
5646
- level?: number
5647
-
5648
- display_option?: DisplayOption
5649
- }
5650
-
5651
- export interface PactCategory {
5652
- /**
5653
- * Types of creatures in this category.
5654
- */
5655
- types: PactType_ID[]
5656
-
5657
- /**
5658
- * Domains in this category.
5659
- */
5660
- domains: PactDomain_ID[]
5661
-
5662
- /**
5663
- * All translations for the entry, identified by IETF language tag (BCP47).
5664
- */
5665
- src: PublicationRefs
5666
-
5667
- /**
5668
- * All translations for the entry, identified by IETF language tag (BCP47).
5712
+ * A replacement for the generated text if it would not match the original one.
5669
5713
  */
5670
- translations: {
5671
- [localeId: string]: PactCategoryTranslation
5672
- }
5714
+ replacement?: string
5673
5715
  }
5674
5716
 
5675
5717
  /**
5676
- * The entity’s identifier. A UUID or a locale code if it is registered as the locale entity.
5718
+ * The adventure points cost depends on how many instances of the entry are already active.
5677
5719
  */
5678
- export type PactCategory_ID = string
5679
-
5680
- export interface PactCategoryTranslation {
5681
- /**
5682
- * The pact category’s name.
5683
- */
5684
- name: string
5685
-
5686
- errata?: Errata
5687
- }
5688
-
5689
- export interface PactType {
5690
- /**
5691
- * The pact category this type belongs to.
5692
- */
5693
- parent: PactCategory_ID
5694
-
5695
- /**
5696
- * All translations for the entry, identified by IETF language tag (BCP47).
5697
- */
5698
- translations: {
5699
- [localeId: string]: PactTypeTranslation
5720
+ export type AdventurePointsDependingOnActiveInstances =
5721
+ | {
5722
+ kind: "Threshold"
5723
+ Threshold: AdventurePointsDependingOnActiveInstancesThreshold
5700
5724
  }
5701
- }
5702
-
5703
- /**
5704
- * The entity’s identifier. A UUID or a locale code if it is registered as the locale entity.
5705
- */
5706
- export type PactType_ID = string
5707
-
5708
- export interface PactTypeTranslation {
5709
- /**
5710
- * The type’s name.
5711
- */
5712
- name: string
5713
- }
5714
-
5715
- export interface PactDomain {
5716
- /**
5717
- * The pact category this domain belongs to.
5718
- */
5719
- parent: PactCategory_ID
5720
-
5721
- /**
5722
- * All translations for the entry, identified by IETF language tag (BCP47).
5723
- */
5724
- translations: {
5725
- [localeId: string]: PactDomainTranslation
5725
+ | {
5726
+ kind: "Expression"
5727
+ Expression: AdventurePointsDependingOnActiveInstancesExpression
5726
5728
  }
5727
- }
5728
-
5729
- /**
5730
- * The entity’s identifier. A UUID or a locale code if it is registered as the locale entity.
5731
- */
5732
- export type PactDomain_ID = string
5733
-
5734
- export interface PactDomainTranslation {
5735
- /**
5736
- * The domain’s name.
5737
- */
5738
- name: string
5739
- }
5740
5729
 
5741
5730
  /**
5742
- * Requires a minimum social status.
5731
+ * The adventure points cost depends on how many instances of the entry are already active.
5743
5732
  */
5744
- export interface SocialStatusPrerequisite {
5733
+ export interface AdventurePointsDependingOnActiveInstancesThreshold {
5745
5734
  /**
5746
- * The minimum social status’s identifier.
5735
+ * The normal adventure points value.
5747
5736
  */
5748
- id: SocialStatus_ID
5749
-
5750
- display_option?: DisplayOption
5751
- }
5737
+ normal: number
5752
5738
 
5753
- export interface SocialStatus {
5754
5739
  /**
5755
- * The social status’ order. The higher the order, the more powerful the social status. This has to be a unique value.
5740
+ * The number of active instances **after** which the alternative cost applies.
5756
5741
  */
5757
- order: number
5742
+ threshold: number
5758
5743
 
5759
5744
  /**
5760
- * All translations for the entry, identified by IETF language tag (BCP47).
5745
+ * The alternative adventure points value.
5761
5746
  */
5762
- translations: {
5763
- [localeId: string]: SocialStatusTranslation
5764
- }
5747
+ alternative: number
5765
5748
  }
5766
5749
 
5767
5750
  /**
5768
- * The entity’s identifier. A UUID or a locale code if it is registered as the locale entity.
5751
+ * The adventure points cost depends on how many instances of the entry are already active.
5769
5752
  */
5770
- export type SocialStatus_ID = string
5753
+ export type AdventurePointsDependingOnActiveInstancesExpression = MathOperation<AdventurePointsDependingOnActiveInstancesExpressionValue>
5771
5754
 
5772
- export interface SocialStatusTranslation {
5773
- /**
5774
- * The social status’ name.
5775
- */
5776
- name: string
5777
- }
5755
+ export type MathOperation<Value> =
5756
+ | {
5757
+ kind: "Value"
5758
+ Value: Value
5759
+ }
5760
+ | {
5761
+ kind: "Addition"
5762
+ Addition: MathOperation<Value>[]
5763
+ }
5764
+ | {
5765
+ kind: "Subtraction"
5766
+ Subtraction: MathOperation<Value>[]
5767
+ }
5768
+ | {
5769
+ kind: "Multiplication"
5770
+ Multiplication: MathOperation<Value>[]
5771
+ }
5772
+ | {
5773
+ kind: "Division"
5774
+ Division: MathOperation<Value>[]
5775
+ }
5776
+ | {
5777
+ kind: "Exponentiation"
5778
+ Exponentiation: MathOperation<Value>[]
5779
+ }
5778
5780
 
5779
5781
  /**
5780
- * Requires a specific state to be active.
5782
+ * The type of value allowed in the expression to calculate the AP value.
5781
5783
  */
5782
- export interface StatePrerequisite {
5783
- id: State_ID
5784
- display_option?: DisplayOption
5785
- }
5784
+ export type AdventurePointsDependingOnActiveInstancesExpressionValue =
5785
+ | {
5786
+ kind: "Constant"
5787
+ Constant: number
5788
+ }
5789
+ | {
5790
+ kind: "Active"
5791
+ }
5786
5792
 
5787
- export interface State {
5793
+ export interface SpecialRule {
5788
5794
  /**
5789
- * All translations for the entry, identified by IETF language tag (BCP47).
5795
+ * An optional label that is displayed and placed before the actual text.
5790
5796
  */
5791
- src: PublicationRefs
5797
+ label?: string
5792
5798
 
5793
5799
  /**
5794
- * All translations for the entry, identified by IETF language tag (BCP47).
5800
+ * The text of a special rule.
5795
5801
  */
5796
- translations: {
5797
- [localeId: string]: StateTranslation
5798
- }
5802
+ text: string
5799
5803
  }
5800
5804
 
5801
- /**
5802
- * The entity’s identifier. A UUID or a locale code if it is registered as the locale entity.
5803
- */
5804
- export type State_ID = string
5805
-
5806
- export interface StateTranslation {
5807
- /**
5808
- * The state’s name.
5809
- */
5810
- name: string
5811
-
5812
- /**
5813
- * The description of the state.
5814
- */
5815
- description: string
5805
+ export type LiturgyPrerequisites = PlainPrerequisites<LiturgyPrerequisiteGroup>
5816
5806
 
5817
- errata?: Errata
5818
- }
5807
+ export type LiturgyPrerequisiteGroup =
5808
+ | {
5809
+ kind: "Rule"
5810
+ Rule: RulePrerequisite
5811
+ }
5819
5812
 
5820
5813
  /**
5821
5814
  * Requires a specific extension rule (focus rule or optional rule) to be used/active.
@@ -5962,99 +5955,120 @@ export interface OptionalRuleTranslation {
5962
5955
  errata?: Errata
5963
5956
  }
5964
5957
 
5965
- export interface PrimaryAttributePrerequisite {
5966
- /**
5967
- * Is the required primary attribute for spellcasters or blessed ones?
5968
- */
5969
- category: PrimaryAttributeCategory
5970
-
5971
- /**
5972
- * Required value of the attribute.
5973
- */
5974
- value: number
5975
-
5976
- display_option?: DisplayOption
5977
- }
5978
-
5979
- export type PrimaryAttributeCategory =
5958
+ /**
5959
+ * The effect description may be either a plain text or a text that is divided by a list of effects for each quality level. It may also be a list for each two quality levels.
5960
+ */
5961
+ export type ActivatableSkillEffect =
5980
5962
  | {
5981
- kind: "Blessed"
5963
+ kind: "Plain"
5964
+ Plain: ActivatableSkillPlainEffect
5982
5965
  }
5983
5966
  | {
5984
- kind: "Magical"
5967
+ kind: "ForEachQualityLevel"
5968
+ ForEachQualityLevel: ActivatableSkillEffectForEachQualityLevel
5969
+ }
5970
+ | {
5971
+ kind: "ForEachTwoQualityLevels"
5972
+ ForEachTwoQualityLevels: ActivatableSkillEffectForEachTwoQualityLevels
5985
5973
  }
5986
5974
 
5987
- export interface BlessedTraditionPrerequisite {
5975
+ export interface ActivatableSkillPlainEffect {
5988
5976
  /**
5989
- * The blessed tradition prerequisite may only be satified if the blessed tradition is either church or shamanistic.
5977
+ * The effect description.
5990
5978
  */
5991
- restriction?: BlessedTraditionPrerequisiteRestriction
5992
-
5993
- display_option?: DisplayOption
5979
+ text: string
5994
5980
  }
5995
5981
 
5996
- /**
5997
- * The blessed tradition prerequisite may only be satified if the blessed tradition is either church or shamanistic.
5998
- */
5999
- export type BlessedTraditionPrerequisiteRestriction =
6000
- | {
6001
- kind: "Church"
6002
- }
6003
- | {
6004
- kind: "Shamanistic"
6005
- }
5982
+ export interface ActivatableSkillEffectForEachQualityLevel {
5983
+ /**
5984
+ * The effect description before the list of effects for each quality level.
5985
+ */
5986
+ text_before: string
6006
5987
 
6007
- export interface MagicalTraditionPrerequisite {
6008
5988
  /**
6009
- * The magical tradition prerequisite may only be satified if the magical tradition can learn rituals or can bind familiars.
5989
+ * The list of effects for each quality level. The first element represents QL 1, the second element QL 2, and so on.
6010
5990
  */
6011
- restriction?: MagicalTraditionPrerequisiteRestriction
5991
+ quality_levels: string[]
6012
5992
 
6013
- display_option?: DisplayOption
5993
+ /**
5994
+ * The effect description after the list of effects for each quality level.
5995
+ */
5996
+ text_after?: string
5997
+ }
5998
+
5999
+ export interface ActivatableSkillEffectForEachTwoQualityLevels {
6000
+ /**
6001
+ * The effect description before the list of effects for each quality level.
6002
+ */
6003
+ text_before: string
6004
+
6005
+ /**
6006
+ * The list of effects for each two quality levels. The first element represents QL 1–2, the second element QL 3–4 and the third element QL 5–6.
6007
+ */
6008
+ quality_levels: string[]
6009
+
6010
+ /**
6011
+ * The effect description after the list of effects for each quality level.
6012
+ */
6013
+ text_after?: string
6014
+ }
6015
+
6016
+ export interface OldParameter {
6017
+ full: string
6018
+ abbr: string
6019
+ }
6020
+
6021
+ export interface Enhancement {
6022
+ /**
6023
+ * The spellwork or liturgy this enhancement belongs to
6024
+ */
6025
+ parent: SkillWithEnhancementsIdentifier
6026
+
6027
+ /**
6028
+ * The skill rating required to learn this enhancement.
6029
+ */
6030
+ skill_rating: number
6031
+
6032
+ /**
6033
+ * The value to multiply with the numeric representation of the associated skill's improvement cost to form the final AP cost of this enhancement.
6034
+ */
6035
+ adventure_points_modifier: number
6036
+
6037
+ prerequisites?: EnhancementPrerequisites
6038
+
6039
+ /**
6040
+ * Only defined if different than the associated skill.
6041
+ */
6042
+ src?: PublicationRefs
6043
+
6044
+ /**
6045
+ * All translations for the entry, identified by IETF language tag (BCP47).
6046
+ */
6047
+ translations: {
6048
+ [localeId: string]: EnhancementTranslation
6049
+ }
6014
6050
  }
6015
6051
 
6016
6052
  /**
6017
- * The magical tradition prerequisite may only be satified if the magical tradition can learn rituals or can bind familiars.
6053
+ * The entity’s identifier. A UUID or a locale code if it is registered as the locale entity.
6018
6054
  */
6019
- export type MagicalTraditionPrerequisiteRestriction =
6020
- | {
6021
- kind: "CanLearnRituals"
6022
- }
6023
- | {
6024
- kind: "CanBindFamiliars"
6025
- }
6055
+ export type Enhancement_ID = string
6026
6056
 
6027
- export interface RatedPrerequisite {
6057
+ export interface EnhancementTranslation {
6028
6058
  /**
6029
- * The rated entry’s identifier.
6059
+ * The name of the enhancement.
6030
6060
  */
6031
- id: RatedIdentifier
6061
+ name: string
6032
6062
 
6033
6063
  /**
6034
- * The required minimum value.
6064
+ * The effect description.
6035
6065
  */
6036
- value: number
6066
+ effect: string
6037
6067
 
6038
- display_option?: DisplayOption
6068
+ errata?: Errata
6039
6069
  }
6040
6070
 
6041
- export type RatedIdentifier =
6042
- | {
6043
- kind: "Attribute"
6044
- Attribute: Attribute_ID
6045
- }
6046
- | {
6047
- kind: "Skill"
6048
- Skill: Skill_ID
6049
- }
6050
- | {
6051
- kind: "CloseCombatTechnique"
6052
- CloseCombatTechnique: CloseCombatTechnique_ID
6053
- }
6054
- | {
6055
- kind: "RangedCombatTechnique"
6056
- RangedCombatTechnique: RangedCombatTechnique_ID
6057
- }
6071
+ export type SkillWithEnhancementsIdentifier =
6058
6072
  | {
6059
6073
  kind: "Spell"
6060
6074
  Spell: Spell_ID
@@ -6176,12 +6190,19 @@ export interface MagicalTradition {
6176
6190
  levels?: number
6177
6191
 
6178
6192
  /**
6179
- * Definitions for possible options for the activatable entry. They can either be derived from entry categories or be defined explicitly. Both can happen as well, but if there is an explicitly defined select option and a derived select option has the same identifier (which may only happen if skill or combat technique identifiers are used for explicit select options), the explicit definition overwrites the derived option.
6193
+ * Definitions for possible options for the activatable entry, derived from entry categories.
6180
6194
  *
6181
6195
  * Note that this is only a full definition of options for simple logic that can be made explicit using the more detailed configuration for both derived categories and explicit options. There are quite a few entries whose option logic cannot be fully represented here, so that it needs to be implemented manually.
6182
6196
  */
6183
6197
  select_options?: SelectOptions
6184
6198
 
6199
+ /**
6200
+ * Explicit definitions for possible options for the activatable entry.
6201
+ *
6202
+ * Note that this is only a full definition of options for simple logic that can be made explicit using the more detailed configuration for both derived categories and explicit options. There are quite a few entries whose option logic cannot be fully represented here, so that it needs to be implemented manually.
6203
+ */
6204
+ explicit_select_options: GeneralSelectOption_ID[]
6205
+
6185
6206
  /**
6186
6207
  * Registers new skill applications, which get enabled once this entry is activated. It specifies an entry-unique identifier and the skill it belongs to. A translation can be left out if its name equals the name of the origin activatable entry.
6187
6208
  */
@@ -6446,302 +6467,76 @@ export interface InfluenceEffect {
6446
6467
  text: string
6447
6468
  }
6448
6469
 
6449
- export type AdventurePointsValue =
6450
- | {
6451
- kind: "Fixed"
6452
- Fixed: FixedAdventurePointsValue
6453
- }
6454
- | {
6455
- kind: "ByLevel"
6456
- ByLevel: AdventurePointsValueByLevel
6457
- }
6458
- | {
6459
- kind: "DerivedFromSelection"
6460
- DerivedFromSelection: AdventurePointsDerivedFromSelection
6461
- }
6462
- | {
6463
- kind: "DependingOnActiveInstances"
6464
- DependingOnActiveInstances: AdventurePointsDependingOnActiveInstances
6465
- }
6466
- | {
6467
- kind: "Indefinite"
6468
- }
6469
-
6470
- /**
6471
- * A fixed adventure points value. If the entry has levels, this is the cost per level as well.
6472
- */
6473
- export type FixedAdventurePointsValue = AdventurePointsSingleValue
6474
-
6475
- /**
6476
- * A single adventure points value.
6477
- */
6478
- export type AdventurePointsSingleValue = number
6479
-
6480
- /**
6481
- * An entry with levels may have different costs for each level. The length of the list must match the amount of levels the special ability has.
6482
- */
6483
- export type AdventurePointsValueByLevel = AdventurePointsSingleValue[]
6484
-
6485
- /**
6486
- * The adventure points value is derived from the selection of the special ability. Its display value may be able to be derived from the given information for the select options. If that is not the case or the generated text would not match the original one, a replacement text can be provided.
6487
- */
6488
- export interface AdventurePointsDerivedFromSelection {
6489
- /**
6490
- * All translations for the entry, identified by IETF language tag (BCP47).
6491
- */
6492
- translations?: {
6493
- [localeId: string]: AdventurePointsDerivedFromSelectionTranslation
6494
- }
6495
- }
6496
-
6497
- export interface AdventurePointsDerivedFromSelectionTranslation {
6498
- /**
6499
- * A replacement for the generated text if it would not match the original one.
6500
- */
6501
- replacement?: string
6502
- }
6470
+ export type SpellworkPrerequisites = PlainPrerequisites<SpellworkPrerequisiteGroup>
6503
6471
 
6504
- /**
6505
- * The adventure points cost depends on how many instances of the entry are already active.
6506
- */
6507
- export type AdventurePointsDependingOnActiveInstances =
6472
+ export type SpellworkPrerequisiteGroup =
6508
6473
  | {
6509
- kind: "Threshold"
6510
- Threshold: AdventurePointsDependingOnActiveInstancesThreshold
6474
+ kind: "Rule"
6475
+ Rule: RulePrerequisite
6511
6476
  }
6512
6477
  | {
6513
- kind: "Expression"
6514
- Expression: AdventurePointsDependingOnActiveInstancesExpression
6478
+ kind: "Rated"
6479
+ Rated: RatedPrerequisite
6515
6480
  }
6516
6481
 
6517
- /**
6518
- * The adventure points cost depends on how many instances of the entry are already active.
6519
- */
6520
- export interface AdventurePointsDependingOnActiveInstancesThreshold {
6482
+ export interface RatedPrerequisite {
6521
6483
  /**
6522
- * The normal adventure points value.
6484
+ * The rated entry’s identifier.
6523
6485
  */
6524
- normal: number
6486
+ id: RatedIdentifier
6525
6487
 
6526
6488
  /**
6527
- * The number of active instances **after** which the alternative cost applies.
6489
+ * The required minimum value.
6528
6490
  */
6529
- threshold: number
6491
+ value: number
6530
6492
 
6531
- /**
6532
- * The alternative adventure points value.
6533
- */
6534
- alternative: number
6493
+ display_option?: DisplayOption
6535
6494
  }
6536
6495
 
6537
- /**
6538
- * The adventure points cost depends on how many instances of the entry are already active.
6539
- */
6540
- export type AdventurePointsDependingOnActiveInstancesExpression = MathOperation<AdventurePointsDependingOnActiveInstancesExpressionValue>
6541
-
6542
- export type MathOperation<Value> =
6496
+ export type RatedIdentifier =
6543
6497
  | {
6544
- kind: "Value"
6545
- Value: Value
6498
+ kind: "Attribute"
6499
+ Attribute: Attribute_ID
6546
6500
  }
6547
6501
  | {
6548
- kind: "Addition"
6549
- Addition: MathOperation<Value>[]
6502
+ kind: "Skill"
6503
+ Skill: Skill_ID
6550
6504
  }
6551
6505
  | {
6552
- kind: "Subtraction"
6553
- Subtraction: MathOperation<Value>[]
6506
+ kind: "CloseCombatTechnique"
6507
+ CloseCombatTechnique: CloseCombatTechnique_ID
6554
6508
  }
6555
6509
  | {
6556
- kind: "Multiplication"
6557
- Multiplication: MathOperation<Value>[]
6510
+ kind: "RangedCombatTechnique"
6511
+ RangedCombatTechnique: RangedCombatTechnique_ID
6558
6512
  }
6559
6513
  | {
6560
- kind: "Division"
6561
- Division: MathOperation<Value>[]
6514
+ kind: "Spell"
6515
+ Spell: Spell_ID
6562
6516
  }
6563
6517
  | {
6564
- kind: "Exponentiation"
6565
- Exponentiation: MathOperation<Value>[]
6518
+ kind: "Ritual"
6519
+ Ritual: Ritual_ID
6566
6520
  }
6567
-
6568
- /**
6569
- * The type of value allowed in the expression to calculate the AP value.
6570
- */
6571
- export type AdventurePointsDependingOnActiveInstancesExpressionValue =
6572
6521
  | {
6573
- kind: "Constant"
6574
- Constant: number
6522
+ kind: "LiturgicalChant"
6523
+ LiturgicalChant: LiturgicalChant_ID
6575
6524
  }
6576
6525
  | {
6577
- kind: "Active"
6526
+ kind: "Ceremony"
6527
+ Ceremony: Ceremony_ID
6578
6528
  }
6579
6529
 
6580
- export interface SpecialRule {
6530
+ export interface Ritual {
6581
6531
  /**
6582
- * An optional label that is displayed and placed before the actual text.
6532
+ * Lists the linked three attributes used to make a skill check.
6583
6533
  */
6584
- label?: string
6534
+ check: SkillCheck
6585
6535
 
6586
6536
  /**
6587
- * The text of a special rule.
6537
+ * In some cases, the target's Spirit or Toughness is applied as a penalty.
6588
6538
  */
6589
- text: string
6590
- }
6591
-
6592
- export type SpellworkPrerequisites = PlainPrerequisites<SpellworkPrerequisiteGroup>
6593
-
6594
- export type SpellworkPrerequisiteGroup =
6595
- | {
6596
- kind: "Rule"
6597
- Rule: RulePrerequisite
6598
- }
6599
- | {
6600
- kind: "Rated"
6601
- Rated: RatedPrerequisite
6602
- }
6603
-
6604
- /**
6605
- * The effect description may be either a plain text or a text that is divided by a list of effects for each quality level. It may also be a list for each two quality levels.
6606
- */
6607
- export type ActivatableSkillEffect =
6608
- | {
6609
- kind: "Plain"
6610
- Plain: ActivatableSkillPlainEffect
6611
- }
6612
- | {
6613
- kind: "ForEachQualityLevel"
6614
- ForEachQualityLevel: ActivatableSkillEffectForEachQualityLevel
6615
- }
6616
- | {
6617
- kind: "ForEachTwoQualityLevels"
6618
- ForEachTwoQualityLevels: ActivatableSkillEffectForEachTwoQualityLevels
6619
- }
6620
-
6621
- export interface ActivatableSkillPlainEffect {
6622
- /**
6623
- * The effect description.
6624
- */
6625
- text: string
6626
- }
6627
-
6628
- export interface ActivatableSkillEffectForEachQualityLevel {
6629
- /**
6630
- * The effect description before the list of effects for each quality level.
6631
- */
6632
- text_before: string
6633
-
6634
- /**
6635
- * The list of effects for each quality level. The first element represents QL 1, the second element QL 2, and so on.
6636
- */
6637
- quality_levels: string[]
6638
-
6639
- /**
6640
- * The effect description after the list of effects for each quality level.
6641
- */
6642
- text_after?: string
6643
- }
6644
-
6645
- export interface ActivatableSkillEffectForEachTwoQualityLevels {
6646
- /**
6647
- * The effect description before the list of effects for each quality level.
6648
- */
6649
- text_before: string
6650
-
6651
- /**
6652
- * The list of effects for each two quality levels. The first element represents QL 1–2, the second element QL 3–4 and the third element QL 5–6.
6653
- */
6654
- quality_levels: string[]
6655
-
6656
- /**
6657
- * The effect description after the list of effects for each quality level.
6658
- */
6659
- text_after?: string
6660
- }
6661
-
6662
- export interface OldParameter {
6663
- full: string
6664
- abbr: string
6665
- }
6666
-
6667
- export interface Enhancement {
6668
- /**
6669
- * The spellwork or liturgy this enhancement belongs to
6670
- */
6671
- parent: SkillWithEnhancementsIdentifier
6672
-
6673
- /**
6674
- * The skill rating required to learn this enhancement.
6675
- */
6676
- skill_rating: number
6677
-
6678
- /**
6679
- * The value to multiply with the numeric representation of the associated skill's improvement cost to form the final AP cost of this enhancement.
6680
- */
6681
- adventure_points_modifier: number
6682
-
6683
- prerequisites?: EnhancementPrerequisites
6684
-
6685
- /**
6686
- * Only defined if different than the associated skill.
6687
- */
6688
- src?: PublicationRefs
6689
-
6690
- /**
6691
- * All translations for the entry, identified by IETF language tag (BCP47).
6692
- */
6693
- translations: {
6694
- [localeId: string]: EnhancementTranslation
6695
- }
6696
- }
6697
-
6698
- /**
6699
- * The entity’s identifier. A UUID or a locale code if it is registered as the locale entity.
6700
- */
6701
- export type Enhancement_ID = string
6702
-
6703
- export interface EnhancementTranslation {
6704
- /**
6705
- * The name of the enhancement.
6706
- */
6707
- name: string
6708
-
6709
- /**
6710
- * The effect description.
6711
- */
6712
- effect: string
6713
-
6714
- errata?: Errata
6715
- }
6716
-
6717
- export type SkillWithEnhancementsIdentifier =
6718
- | {
6719
- kind: "Spell"
6720
- Spell: Spell_ID
6721
- }
6722
- | {
6723
- kind: "Ritual"
6724
- Ritual: Ritual_ID
6725
- }
6726
- | {
6727
- kind: "LiturgicalChant"
6728
- LiturgicalChant: LiturgicalChant_ID
6729
- }
6730
- | {
6731
- kind: "Ceremony"
6732
- Ceremony: Ceremony_ID
6733
- }
6734
-
6735
- export interface Ritual {
6736
- /**
6737
- * Lists the linked three attributes used to make a skill check.
6738
- */
6739
- check: SkillCheck
6740
-
6741
- /**
6742
- * In some cases, the target's Spirit or Toughness is applied as a penalty.
6743
- */
6744
- check_penalty?: SkillCheckPenalty
6539
+ check_penalty?: SkillCheckPenalty
6745
6540
 
6746
6541
  /**
6747
6542
  * Measurable parameters of a ritual.
@@ -6930,14 +6725,6 @@ export interface CeremonyTranslation {
6930
6725
  errata?: Errata
6931
6726
  }
6932
6727
 
6933
- export type LiturgyPrerequisites = PlainPrerequisites<LiturgyPrerequisiteGroup>
6934
-
6935
- export type LiturgyPrerequisiteGroup =
6936
- | {
6937
- kind: "Rule"
6938
- Rule: RulePrerequisite
6939
- }
6940
-
6941
6728
  export type EnhancementPrerequisites = PlainPrerequisites<EnhancementPrerequisiteGroup>
6942
6729
 
6943
6730
  export type EnhancementPrerequisiteGroup =
@@ -6956,197 +6743,92 @@ export interface EnhancementPrerequisite {
6956
6743
  id: Enhancement_ID
6957
6744
  }
6958
6745
 
6959
- export interface RatedMinimumNumberPrerequisite {
6746
+ export interface TradeSecret {
6960
6747
  /**
6961
- * The minimum number of skills that need to be on the defined minimum skill rating.
6748
+ * Definitions for possible options for the activatable entry.
6749
+ *
6750
+ * Note that this is only a full definition of options for simple logic that can be made explicit using the more detailed configuration for both derived categories and explicit options. There are quite a few entries whose option logic cannot be fully represented here, so that it needs to be implemented manually.
6962
6751
  */
6963
- number: number
6752
+ select_options?: TradeSecretSelectOptions
6964
6753
 
6965
6754
  /**
6966
- * The minimum skill rating the defined minimum number of skills need to be on.
6755
+ * The trade secret’s adventure point value
6967
6756
  */
6968
- value: number
6757
+ ap_value: TradeSecretAdventurePointsValue
6969
6758
 
6970
6759
  /**
6971
- * The targets that contribute to satisfying the prerequisite.
6760
+ * Is this trade secret considered secret knowledge?
6972
6761
  */
6973
- targets: RatedMinimumNumberPrerequisiteTarget
6762
+ is_secret_knowledge: boolean
6974
6763
 
6975
- display_option?: DisplayOption
6976
- }
6764
+ prerequisites?: PlainGeneralPrerequisites
6977
6765
 
6978
- export type RatedMinimumNumberPrerequisiteTarget =
6979
- | {
6980
- kind: "Skills"
6981
- Skills: RatedMinimumNumberPrerequisiteSkillsTarget
6982
- }
6983
- | {
6984
- kind: "CombatTechniques"
6985
- CombatTechniques: RatedMinimumNumberPrerequisiteCombatTechniquesTarget
6986
- }
6987
- | {
6988
- kind: "Spellworks"
6989
- Spellworks: RatedMinimumNumberPrerequisiteSpellworksTarget
6990
- }
6991
- | {
6992
- kind: "Liturgies"
6993
- Liturgies: RatedMinimumNumberPrerequisiteLiturgiesTarget
6766
+ /**
6767
+ * All translations for the entry, identified by IETF language tag (BCP47).
6768
+ */
6769
+ src: PublicationRefs
6770
+
6771
+ /**
6772
+ * All translations for the entry, identified by IETF language tag (BCP47).
6773
+ */
6774
+ translations: {
6775
+ [localeId: string]: TradeSecretTranslation
6994
6776
  }
6777
+ }
6995
6778
 
6996
- export interface RatedMinimumNumberPrerequisiteSkillsTarget {
6779
+ /**
6780
+ * The entity’s identifier. A UUID or a locale code if it is registered as the locale entity.
6781
+ */
6782
+ export type TradeSecret_ID = string
6783
+
6784
+ export interface TradeSecretTranslation {
6997
6785
  /**
6998
- * The skills that are taken into account for satisfying the prerequisite.
6786
+ * The trade secret’s name.
6999
6787
  */
7000
- targets: Skill_ID[]
6788
+ name: string
6789
+
6790
+ /**
6791
+ * The description of the trade secret.
6792
+ */
6793
+ description?: string
6794
+
6795
+ errata?: Errata
7001
6796
  }
7002
6797
 
7003
- export interface RatedMinimumNumberPrerequisiteCombatTechniquesTarget {
6798
+ /**
6799
+ * Definitions for possible options for the activatable entry. They can either be derived from entry categories or be defined explicitly. Both can happen as well, but if there is an explicitly defined select option and a derived select option has the same identifier (which may only happen if skill or combat technique identifiers are used for explicit select options), the explicit definition overwrites the derived option.
6800
+ *
6801
+ * Note that this is only a full definition of options for simple logic that can be made explicit using the more detailed configuration for both derived categories and explicit options. There are quite a few entries whose option logic cannot be fully represented here, so that it needs to be implemented manually.
6802
+ */
6803
+ export interface TradeSecretSelectOptions {
7004
6804
  /**
7005
- * The skills that are taken into account for satisfying the prerequisite.
6805
+ * A list of explicit select options. If the identifier has a specific type, its entry is the base of this select option, where values defined here override values from the base. Define the `src` property if the options are not derived from the rules text of the advantage/disadvantage/special ability but instead are listed in a separate block and/or on a separate page.
7006
6806
  */
7007
- group: RatedMinimumNumberPrerequisiteCombatTechniquesTargetGroup
6807
+ explicit?: ExplicitSelectOption[]
7008
6808
  }
7009
6809
 
7010
- export type RatedMinimumNumberPrerequisiteCombatTechniquesTargetGroup =
6810
+ export type ExplicitSelectOption =
7011
6811
  | {
7012
- kind: "All"
6812
+ kind: "General"
6813
+ General: GeneralSelectOption_ID
7013
6814
  }
7014
6815
  | {
7015
- kind: "Close"
6816
+ kind: "Skill"
6817
+ Skill: ExplicitSkillSelectOption
7016
6818
  }
7017
6819
  | {
7018
- kind: "Ranged"
6820
+ kind: "CombatTechnique"
6821
+ CombatTechnique: ExplicitCombatTechniqueSelectOption
7019
6822
  }
7020
6823
 
7021
- export interface RatedMinimumNumberPrerequisiteSpellworksTarget {
6824
+ export interface ExplicitSkillSelectOption {
7022
6825
  /**
7023
- * The skills that are taken into account for satisfying the prerequisite.
6826
+ * The skill’s identifier.
7024
6827
  */
7025
- property: Property_ID
7026
- }
6828
+ id: Skill_ID
7027
6829
 
7028
- export interface RatedMinimumNumberPrerequisiteLiturgiesTarget {
7029
6830
  /**
7030
- * The skills that are taken into account for satisfying the prerequisite.
7031
- */
7032
- aspect: Aspect_ID
7033
- }
7034
-
7035
- export interface RatedSumPrerequisite {
7036
- /**
7037
- * The minimum required sum of the targets’ ratings.
7038
- */
7039
- sum: number
7040
-
7041
- /**
7042
- * The targets that are included in calculating the sum.
7043
- */
7044
- targets: Skill_ID[]
7045
-
7046
- display_option?: DisplayOption
7047
- }
7048
-
7049
- /**
7050
- * Requires a specific sexual characteristic.
7051
- */
7052
- export interface SexualCharacteristicPrerequisite {
7053
- id: SexualCharacteristic
7054
- }
7055
-
7056
- export type SexualCharacteristic =
7057
- | {
7058
- kind: "Penis"
7059
- }
7060
- | {
7061
- kind: "Vagina"
7062
- }
7063
-
7064
- export interface TradeSecret {
7065
- /**
7066
- * Definitions for possible options for the activatable entry.
7067
- *
7068
- * Note that this is only a full definition of options for simple logic that can be made explicit using the more detailed configuration for both derived categories and explicit options. There are quite a few entries whose option logic cannot be fully represented here, so that it needs to be implemented manually.
7069
- */
7070
- select_options?: TradeSecretSelectOptions
7071
-
7072
- /**
7073
- * The trade secret’s adventure point value
7074
- */
7075
- ap_value: TradeSecretAdventurePointsValue
7076
-
7077
- /**
7078
- * Is this trade secret considered secret knowledge?
7079
- */
7080
- is_secret_knowledge: boolean
7081
-
7082
- prerequisites?: PlainGeneralPrerequisites
7083
-
7084
- /**
7085
- * All translations for the entry, identified by IETF language tag (BCP47).
7086
- */
7087
- src: PublicationRefs
7088
-
7089
- /**
7090
- * All translations for the entry, identified by IETF language tag (BCP47).
7091
- */
7092
- translations: {
7093
- [localeId: string]: TradeSecretTranslation
7094
- }
7095
- }
7096
-
7097
- /**
7098
- * The entity’s identifier. A UUID or a locale code if it is registered as the locale entity.
7099
- */
7100
- export type TradeSecret_ID = string
7101
-
7102
- export interface TradeSecretTranslation {
7103
- /**
7104
- * The trade secret’s name.
7105
- */
7106
- name: string
7107
-
7108
- /**
7109
- * The description of the trade secret.
7110
- */
7111
- description?: string
7112
-
7113
- errata?: Errata
7114
- }
7115
-
7116
- /**
7117
- * Definitions for possible options for the activatable entry. They can either be derived from entry categories or be defined explicitly. Both can happen as well, but if there is an explicitly defined select option and a derived select option has the same identifier (which may only happen if skill or combat technique identifiers are used for explicit select options), the explicit definition overwrites the derived option.
7118
- *
7119
- * Note that this is only a full definition of options for simple logic that can be made explicit using the more detailed configuration for both derived categories and explicit options. There are quite a few entries whose option logic cannot be fully represented here, so that it needs to be implemented manually.
7120
- */
7121
- export interface TradeSecretSelectOptions {
7122
- /**
7123
- * A list of explicit select options. If the identifier has a specific type, its entry is the base of this select option, where values defined here override values from the base. Define the `src` property if the options are not derived from the rules text of the advantage/disadvantage/special ability but instead are listed in a separate block and/or on a separate page.
7124
- */
7125
- explicit?: ExplicitSelectOption[]
7126
- }
7127
-
7128
- export type ExplicitSelectOption =
7129
- | {
7130
- kind: "General"
7131
- General: GeneralSelectOption_ID
7132
- }
7133
- | {
7134
- kind: "Skill"
7135
- Skill: ExplicitSkillSelectOption
7136
- }
7137
- | {
7138
- kind: "CombatTechnique"
7139
- CombatTechnique: ExplicitCombatTechniqueSelectOption
7140
- }
7141
-
7142
- export interface ExplicitSkillSelectOption {
7143
- /**
7144
- * The skill’s identifier.
7145
- */
7146
- id: Skill_ID
7147
-
7148
- /**
7149
- * Prerequisites for the select option.
6831
+ * Prerequisites for the select option.
7150
6832
  */
7151
6833
  prerequisites?: GeneralPrerequisites
7152
6834
 
@@ -7244,6 +6926,21 @@ export type PreconditionGroup =
7244
6926
  SexualCharacteristic: SexualCharacteristicPrerequisite
7245
6927
  }
7246
6928
 
6929
+ /**
6930
+ * Requires a specific sexual characteristic.
6931
+ */
6932
+ export interface SexualCharacteristicPrerequisite {
6933
+ id: SexualCharacteristic
6934
+ }
6935
+
6936
+ export type SexualCharacteristic =
6937
+ | {
6938
+ kind: "Penis"
6939
+ }
6940
+ | {
6941
+ kind: "Vagina"
6942
+ }
6943
+
7247
6944
  export interface AlternativeName {
7248
6945
  /**
7249
6946
  * An alternative name of the disease.
@@ -7319,6 +7016,32 @@ export interface AreaKnowledge {
7319
7016
  is_fixed: boolean
7320
7017
  }
7321
7018
 
7019
+ export interface SocialStatus {
7020
+ /**
7021
+ * The social status’ order. The higher the order, the more powerful the social status. This has to be a unique value.
7022
+ */
7023
+ order: number
7024
+
7025
+ /**
7026
+ * All translations for the entry, identified by IETF language tag (BCP47).
7027
+ */
7028
+ translations: {
7029
+ [localeId: string]: SocialStatusTranslation
7030
+ }
7031
+ }
7032
+
7033
+ /**
7034
+ * The entity’s identifier. A UUID or a locale code if it is registered as the locale entity.
7035
+ */
7036
+ export type SocialStatus_ID = string
7037
+
7038
+ export interface SocialStatusTranslation {
7039
+ /**
7040
+ * The social status’ name.
7041
+ */
7042
+ name: string
7043
+ }
7044
+
7322
7045
  /**
7323
7046
  * 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).
7324
7047
  */
@@ -7773,6 +7496,18 @@ export type ProfessionPrerequisiteGroup =
7773
7496
  Rated: RatedPrerequisite
7774
7497
  }
7775
7498
 
7499
+ /**
7500
+ * Requires a specific culture or one of a specific set of cultures.
7501
+ */
7502
+ export interface CulturePrerequisite {
7503
+ /**
7504
+ * The culture’s identifier.
7505
+ */
7506
+ id: Culture_ID
7507
+
7508
+ display_option?: DisplayOption
7509
+ }
7510
+
7776
7511
  export interface ProfessionPackage {
7777
7512
  /**
7778
7513
  * The associated profession version.
@@ -8105,7 +7840,7 @@ export interface CommonCantripTraditionNote {
8105
7840
  /**
8106
7841
  * All translations for the entry, identified by IETF language tag (BCP47).
8107
7842
  */
8108
- translations: {
7843
+ translations?: {
8109
7844
  [localeId: string]: CommonCantripTraditionNoteTranslation
8110
7845
  }
8111
7846
  }
@@ -8374,21 +8109,28 @@ export type SpecialAbilityIdentifier =
8374
8109
  }
8375
8110
 
8376
8111
  /**
8377
- * Karma Special Abilities that are being unlocked by Liturgical Style Special Abilities.
8112
+ * Magical Special Abilities that are being unlocked by Magic Style Special Abilities.
8378
8113
  */
8379
- export interface AdvancedKarmaSpecialAbility {
8114
+ export interface AdvancedMagicalSpecialAbility {
8380
8115
  /**
8381
8116
  * Number of available levels.
8382
8117
  */
8383
8118
  levels?: number
8384
8119
 
8385
8120
  /**
8386
- * Definitions for possible options for the activatable entry. They can either be derived from entry categories or be defined explicitly. Both can happen as well, but if there is an explicitly defined select option and a derived select option has the same identifier (which may only happen if skill or combat technique identifiers are used for explicit select options), the explicit definition overwrites the derived option.
8121
+ * Definitions for possible options for the activatable entry, derived from entry categories.
8387
8122
  *
8388
8123
  * Note that this is only a full definition of options for simple logic that can be made explicit using the more detailed configuration for both derived categories and explicit options. There are quite a few entries whose option logic cannot be fully represented here, so that it needs to be implemented manually.
8389
8124
  */
8390
8125
  select_options?: SelectOptions
8391
8126
 
8127
+ /**
8128
+ * Explicit definitions for possible options for the activatable entry.
8129
+ *
8130
+ * Note that this is only a full definition of options for simple logic that can be made explicit using the more detailed configuration for both derived categories and explicit options. There are quite a few entries whose option logic cannot be fully represented here, so that it needs to be implemented manually.
8131
+ */
8132
+ explicit_select_options: GeneralSelectOption_ID[]
8133
+
8392
8134
  /**
8393
8135
  * Registers new skill applications, which get enabled once this entry is activated. It specifies an entry-unique identifier and the skill it belongs to. A translation can be left out if its name equals the name of the origin activatable entry.
8394
8136
  */
@@ -8426,16 +8168,16 @@ export interface AdvancedKarmaSpecialAbility {
8426
8168
  * All translations for the entry, identified by IETF language tag (BCP47).
8427
8169
  */
8428
8170
  translations: {
8429
- [localeId: string]: AdvancedKarmaSpecialAbilityTranslation
8171
+ [localeId: string]: AdvancedMagicalSpecialAbilityTranslation
8430
8172
  }
8431
8173
  }
8432
8174
 
8433
8175
  /**
8434
8176
  * The entity’s identifier. A UUID or a locale code if it is registered as the locale entity.
8435
8177
  */
8436
- export type AdvancedKarmaSpecialAbility_ID = string
8178
+ export type AdvancedMagicalSpecialAbility_ID = string
8437
8179
 
8438
- export interface AdvancedKarmaSpecialAbilityTranslation {
8180
+ export interface AdvancedMagicalSpecialAbilityTranslation {
8439
8181
  /**
8440
8182
  * Name of the activatable entry.
8441
8183
  */
@@ -8467,21 +8209,28 @@ export interface AdvancedKarmaSpecialAbilityTranslation {
8467
8209
  }
8468
8210
 
8469
8211
  /**
8470
- * Magical Special Abilities that are being unlocked by Magic Style Special Abilities.
8212
+ * General Special Abilities that are being unlocked by Skill Style Special Abilities.
8471
8213
  */
8472
- export interface AdvancedMagicalSpecialAbility {
8214
+ export interface AdvancedSkillSpecialAbility {
8473
8215
  /**
8474
8216
  * Number of available levels.
8475
8217
  */
8476
8218
  levels?: number
8477
8219
 
8478
8220
  /**
8479
- * Definitions for possible options for the activatable entry. They can either be derived from entry categories or be defined explicitly. Both can happen as well, but if there is an explicitly defined select option and a derived select option has the same identifier (which may only happen if skill or combat technique identifiers are used for explicit select options), the explicit definition overwrites the derived option.
8221
+ * Definitions for possible options for the activatable entry, derived from entry categories.
8480
8222
  *
8481
8223
  * Note that this is only a full definition of options for simple logic that can be made explicit using the more detailed configuration for both derived categories and explicit options. There are quite a few entries whose option logic cannot be fully represented here, so that it needs to be implemented manually.
8482
8224
  */
8483
8225
  select_options?: SelectOptions
8484
8226
 
8227
+ /**
8228
+ * Explicit definitions for possible options for the activatable entry.
8229
+ *
8230
+ * Note that this is only a full definition of options for simple logic that can be made explicit using the more detailed configuration for both derived categories and explicit options. There are quite a few entries whose option logic cannot be fully represented here, so that it needs to be implemented manually.
8231
+ */
8232
+ explicit_select_options: GeneralSelectOption_ID[]
8233
+
8485
8234
  /**
8486
8235
  * Registers new skill applications, which get enabled once this entry is activated. It specifies an entry-unique identifier and the skill it belongs to. A translation can be left out if its name equals the name of the origin activatable entry.
8487
8236
  */
@@ -8519,16 +8268,16 @@ export interface AdvancedMagicalSpecialAbility {
8519
8268
  * All translations for the entry, identified by IETF language tag (BCP47).
8520
8269
  */
8521
8270
  translations: {
8522
- [localeId: string]: AdvancedMagicalSpecialAbilityTranslation
8271
+ [localeId: string]: AdvancedSkillSpecialAbilityTranslation
8523
8272
  }
8524
8273
  }
8525
8274
 
8526
8275
  /**
8527
8276
  * The entity’s identifier. A UUID or a locale code if it is registered as the locale entity.
8528
8277
  */
8529
- export type AdvancedMagicalSpecialAbility_ID = string
8278
+ export type AdvancedSkillSpecialAbility_ID = string
8530
8279
 
8531
- export interface AdvancedMagicalSpecialAbilityTranslation {
8280
+ export interface AdvancedSkillSpecialAbilityTranslation {
8532
8281
  /**
8533
8282
  * Name of the activatable entry.
8534
8283
  */
@@ -8560,30 +8309,27 @@ export interface AdvancedMagicalSpecialAbilityTranslation {
8560
8309
  }
8561
8310
 
8562
8311
  /**
8563
- * General Special Abilities that are being unlocked by Skill Style Special Abilities.
8312
+ * A type of magical signs, originating from Nostria.
8564
8313
  */
8565
- export interface AdvancedSkillSpecialAbility {
8314
+ export interface AncestorGlyph {
8566
8315
  /**
8567
8316
  * Number of available levels.
8568
8317
  */
8569
8318
  levels?: number
8570
8319
 
8571
8320
  /**
8572
- * Definitions for possible options for the activatable entry. They can either be derived from entry categories or be defined explicitly. Both can happen as well, but if there is an explicitly defined select option and a derived select option has the same identifier (which may only happen if skill or combat technique identifiers are used for explicit select options), the explicit definition overwrites the derived option.
8321
+ * Definitions for possible options for the activatable entry, derived from entry categories.
8573
8322
  *
8574
8323
  * Note that this is only a full definition of options for simple logic that can be made explicit using the more detailed configuration for both derived categories and explicit options. There are quite a few entries whose option logic cannot be fully represented here, so that it needs to be implemented manually.
8575
8324
  */
8576
8325
  select_options?: SelectOptions
8577
8326
 
8578
8327
  /**
8579
- * Registers new skill applications, which get enabled once this entry is activated. It specifies an entry-unique identifier and the skill it belongs to. A translation can be left out if its name equals the name of the origin activatable entry.
8580
- */
8581
- skill_applications: NewSkillApplication_ID[]
8582
-
8583
- /**
8584
- * Registers uses, which get enabled once this entry is activated. It specifies an entry-unique identifier and the skill it belongs to. A translation can be left out if its name equals the name of the origin activatable entry.
8328
+ * Explicit definitions for possible options for the activatable entry.
8329
+ *
8330
+ * Note that this is only a full definition of options for simple logic that can be made explicit using the more detailed configuration for both derived categories and explicit options. There are quite a few entries whose option logic cannot be fully represented here, so that it needs to be implemented manually.
8585
8331
  */
8586
- skill_uses: SkillUse_ID[]
8332
+ explicit_select_options: GeneralSelectOption_ID[]
8587
8333
 
8588
8334
  /**
8589
8335
  * The number stating how often you can buy the entry. The **default** depends on the entry type:
@@ -8598,6 +8344,11 @@ export interface AdvancedSkillSpecialAbility {
8598
8344
 
8599
8345
  prerequisites?: GeneralPrerequisites
8600
8346
 
8347
+ /**
8348
+ * The AE cost of the ancestor glyph.
8349
+ */
8350
+ ae_cost: number
8351
+
8601
8352
  /**
8602
8353
  * The adventure points value.
8603
8354
  */
@@ -8612,16 +8363,16 @@ export interface AdvancedSkillSpecialAbility {
8612
8363
  * All translations for the entry, identified by IETF language tag (BCP47).
8613
8364
  */
8614
8365
  translations: {
8615
- [localeId: string]: AdvancedSkillSpecialAbilityTranslation
8366
+ [localeId: string]: AncestorGlyphTranslation
8616
8367
  }
8617
8368
  }
8618
8369
 
8619
8370
  /**
8620
8371
  * The entity’s identifier. A UUID or a locale code if it is registered as the locale entity.
8621
8372
  */
8622
- export type AdvancedSkillSpecialAbility_ID = string
8373
+ export type AncestorGlyph_ID = string
8623
8374
 
8624
- export interface AdvancedSkillSpecialAbilityTranslation {
8375
+ export interface AncestorGlyphTranslation {
8625
8376
  /**
8626
8377
  * Name of the activatable entry.
8627
8378
  */
@@ -8652,22 +8403,26 @@ export interface AdvancedSkillSpecialAbilityTranslation {
8652
8403
  errata?: Errata
8653
8404
  }
8654
8405
 
8655
- /**
8656
- * A type of magical signs, originating from Nostria.
8657
- */
8658
- export interface AncestorGlyph {
8406
+ export interface ArcaneOrbEnchantment {
8659
8407
  /**
8660
8408
  * Number of available levels.
8661
8409
  */
8662
8410
  levels?: number
8663
8411
 
8664
8412
  /**
8665
- * Definitions for possible options for the activatable entry. They can either be derived from entry categories or be defined explicitly. Both can happen as well, but if there is an explicitly defined select option and a derived select option has the same identifier (which may only happen if skill or combat technique identifiers are used for explicit select options), the explicit definition overwrites the derived option.
8413
+ * Definitions for possible options for the activatable entry, derived from entry categories.
8666
8414
  *
8667
8415
  * Note that this is only a full definition of options for simple logic that can be made explicit using the more detailed configuration for both derived categories and explicit options. There are quite a few entries whose option logic cannot be fully represented here, so that it needs to be implemented manually.
8668
8416
  */
8669
8417
  select_options?: SelectOptions
8670
8418
 
8419
+ /**
8420
+ * Explicit definitions for possible options for the activatable entry.
8421
+ *
8422
+ * Note that this is only a full definition of options for simple logic that can be made explicit using the more detailed configuration for both derived categories and explicit options. There are quite a few entries whose option logic cannot be fully represented here, so that it needs to be implemented manually.
8423
+ */
8424
+ explicit_select_options: GeneralSelectOption_ID[]
8425
+
8671
8426
  /**
8672
8427
  * The number stating how often you can buy the entry. The **default** depends on the entry type:
8673
8428
  *
@@ -8682,9 +8437,19 @@ export interface AncestorGlyph {
8682
8437
  prerequisites?: GeneralPrerequisites
8683
8438
 
8684
8439
  /**
8685
- * The AE cost of the ancestor glyph.
8440
+ * The volume points the enchantment needs.
8686
8441
  */
8687
- ae_cost: number
8442
+ volume: Volume
8443
+
8444
+ /**
8445
+ * The cost when casting the entry.
8446
+ */
8447
+ cost?: EnchantmentCost
8448
+
8449
+ /**
8450
+ * The magic property’s identifier. `DependingOnProperty` can only be used if the special ability has an option to select a property.
8451
+ */
8452
+ property: PropertyDeclaration
8688
8453
 
8689
8454
  /**
8690
8455
  * The adventure points value.
@@ -8700,109 +8465,14 @@ export interface AncestorGlyph {
8700
8465
  * All translations for the entry, identified by IETF language tag (BCP47).
8701
8466
  */
8702
8467
  translations: {
8703
- [localeId: string]: AncestorGlyphTranslation
8468
+ [localeId: string]: ArcaneOrbEnchantmentTranslation
8704
8469
  }
8705
8470
  }
8706
8471
 
8707
8472
  /**
8708
8473
  * The entity’s identifier. A UUID or a locale code if it is registered as the locale entity.
8709
8474
  */
8710
- export type AncestorGlyph_ID = string
8711
-
8712
- export interface AncestorGlyphTranslation {
8713
- /**
8714
- * Name of the activatable entry.
8715
- */
8716
- name: string
8717
-
8718
- /**
8719
- * The full name of the entry as stated in the sources. Only use when `name` needs to be different from full name for text generation purposes.
8720
- */
8721
- name_in_library?: string
8722
-
8723
- /**
8724
- * The rule text.
8725
- */
8726
- rules: string
8727
-
8728
- /**
8729
- * The string to append to the generated AP value text.
8730
- * @deprecated
8731
- */
8732
- ap_value_append?: string
8733
-
8734
- /**
8735
- * The adventure points value.
8736
- * @deprecated
8737
- */
8738
- ap_value?: string
8739
-
8740
- errata?: Errata
8741
- }
8742
-
8743
- export interface ArcaneOrbEnchantment {
8744
- /**
8745
- * Number of available levels.
8746
- */
8747
- levels?: number
8748
-
8749
- /**
8750
- * Definitions for possible options for the activatable entry. They can either be derived from entry categories or be defined explicitly. Both can happen as well, but if there is an explicitly defined select option and a derived select option has the same identifier (which may only happen if skill or combat technique identifiers are used for explicit select options), the explicit definition overwrites the derived option.
8751
- *
8752
- * Note that this is only a full definition of options for simple logic that can be made explicit using the more detailed configuration for both derived categories and explicit options. There are quite a few entries whose option logic cannot be fully represented here, so that it needs to be implemented manually.
8753
- */
8754
- select_options?: SelectOptions
8755
-
8756
- /**
8757
- * The number stating how often you can buy the entry. The **default** depends on the entry type:
8758
- *
8759
- * - **Advantage:** `1` in all cases (as specified in the **Core Rules**)
8760
- * - **Disadvantage:** `1` in all cases (as specified in the **Core Rules**)
8761
- * - **Special Abilities:** `1` if no options can be selected, otherwise the number of possible options
8762
- *
8763
- * The maximum is only set if it differs from the defaults specified above.
8764
- */
8765
- maximum?: number
8766
-
8767
- prerequisites?: GeneralPrerequisites
8768
-
8769
- /**
8770
- * The volume points the enchantment needs.
8771
- */
8772
- volume: Volume
8773
-
8774
- /**
8775
- * The cost when casting the entry.
8776
- */
8777
- cost?: EnchantmentCost
8778
-
8779
- /**
8780
- * The magic property’s identifier. `DependingOnProperty` can only be used if the special ability has an option to select a property.
8781
- */
8782
- property: PropertyDeclaration
8783
-
8784
- /**
8785
- * The adventure points value.
8786
- */
8787
- ap_value: AdventurePointsValue
8788
-
8789
- /**
8790
- * All translations for the entry, identified by IETF language tag (BCP47).
8791
- */
8792
- src: PublicationRefs
8793
-
8794
- /**
8795
- * All translations for the entry, identified by IETF language tag (BCP47).
8796
- */
8797
- translations: {
8798
- [localeId: string]: ArcaneOrbEnchantmentTranslation
8799
- }
8800
- }
8801
-
8802
- /**
8803
- * The entity’s identifier. A UUID or a locale code if it is registered as the locale entity.
8804
- */
8805
- export type ArcaneOrbEnchantment_ID = string
8475
+ export type ArcaneOrbEnchantment_ID = string
8806
8476
 
8807
8477
  export interface ArcaneOrbEnchantmentTranslation {
8808
8478
  /**
@@ -9410,12 +9080,19 @@ export interface AttireEnchantment {
9410
9080
  levels?: number
9411
9081
 
9412
9082
  /**
9413
- * Definitions for possible options for the activatable entry. They can either be derived from entry categories or be defined explicitly. Both can happen as well, but if there is an explicitly defined select option and a derived select option has the same identifier (which may only happen if skill or combat technique identifiers are used for explicit select options), the explicit definition overwrites the derived option.
9083
+ * Definitions for possible options for the activatable entry, derived from entry categories.
9414
9084
  *
9415
9085
  * Note that this is only a full definition of options for simple logic that can be made explicit using the more detailed configuration for both derived categories and explicit options. There are quite a few entries whose option logic cannot be fully represented here, so that it needs to be implemented manually.
9416
9086
  */
9417
9087
  select_options?: SelectOptions
9418
9088
 
9089
+ /**
9090
+ * Explicit definitions for possible options for the activatable entry.
9091
+ *
9092
+ * Note that this is only a full definition of options for simple logic that can be made explicit using the more detailed configuration for both derived categories and explicit options. There are quite a few entries whose option logic cannot be fully represented here, so that it needs to be implemented manually.
9093
+ */
9094
+ explicit_select_options: GeneralSelectOption_ID[]
9095
+
9419
9096
  /**
9420
9097
  * The number stating how often you can buy the entry. The **default** depends on the entry type:
9421
9098
  *
@@ -9523,12 +9200,19 @@ export interface BowlEnchantment {
9523
9200
  levels?: number
9524
9201
 
9525
9202
  /**
9526
- * Definitions for possible options for the activatable entry. They can either be derived from entry categories or be defined explicitly. Both can happen as well, but if there is an explicitly defined select option and a derived select option has the same identifier (which may only happen if skill or combat technique identifiers are used for explicit select options), the explicit definition overwrites the derived option.
9203
+ * Definitions for possible options for the activatable entry, derived from entry categories.
9527
9204
  *
9528
9205
  * Note that this is only a full definition of options for simple logic that can be made explicit using the more detailed configuration for both derived categories and explicit options. There are quite a few entries whose option logic cannot be fully represented here, so that it needs to be implemented manually.
9529
9206
  */
9530
9207
  select_options?: SelectOptions
9531
9208
 
9209
+ /**
9210
+ * Explicit definitions for possible options for the activatable entry.
9211
+ *
9212
+ * Note that this is only a full definition of options for simple logic that can be made explicit using the more detailed configuration for both derived categories and explicit options. There are quite a few entries whose option logic cannot be fully represented here, so that it needs to be implemented manually.
9213
+ */
9214
+ explicit_select_options: GeneralSelectOption_ID[]
9215
+
9532
9216
  /**
9533
9217
  * The number stating how often you can buy the entry. The **default** depends on the entry type:
9534
9218
  *
@@ -9641,12 +9325,19 @@ export interface BrawlingSpecialAbility {
9641
9325
  usage_type: CombatSpecialAbilityUsageType
9642
9326
 
9643
9327
  /**
9644
- * Definitions for possible options for the activatable entry. They can either be derived from entry categories or be defined explicitly. Both can happen as well, but if there is an explicitly defined select option and a derived select option has the same identifier (which may only happen if skill or combat technique identifiers are used for explicit select options), the explicit definition overwrites the derived option.
9328
+ * Definitions for possible options for the activatable entry, derived from entry categories.
9645
9329
  *
9646
9330
  * Note that this is only a full definition of options for simple logic that can be made explicit using the more detailed configuration for both derived categories and explicit options. There are quite a few entries whose option logic cannot be fully represented here, so that it needs to be implemented manually.
9647
9331
  */
9648
9332
  select_options?: SelectOptions
9649
9333
 
9334
+ /**
9335
+ * Explicit definitions for possible options for the activatable entry.
9336
+ *
9337
+ * Note that this is only a full definition of options for simple logic that can be made explicit using the more detailed configuration for both derived categories and explicit options. There are quite a few entries whose option logic cannot be fully represented here, so that it needs to be implemented manually.
9338
+ */
9339
+ explicit_select_options: GeneralSelectOption_ID[]
9340
+
9650
9341
  /**
9651
9342
  * The number stating how often you can buy the entry. The **default** depends on the entry type:
9652
9343
  *
@@ -10420,12 +10111,19 @@ export interface CauldronEnchantment {
10420
10111
  levels?: number
10421
10112
 
10422
10113
  /**
10423
- * Definitions for possible options for the activatable entry. They can either be derived from entry categories or be defined explicitly. Both can happen as well, but if there is an explicitly defined select option and a derived select option has the same identifier (which may only happen if skill or combat technique identifiers are used for explicit select options), the explicit definition overwrites the derived option.
10114
+ * Definitions for possible options for the activatable entry, derived from entry categories.
10424
10115
  *
10425
10116
  * Note that this is only a full definition of options for simple logic that can be made explicit using the more detailed configuration for both derived categories and explicit options. There are quite a few entries whose option logic cannot be fully represented here, so that it needs to be implemented manually.
10426
10117
  */
10427
10118
  select_options?: SelectOptions
10428
10119
 
10120
+ /**
10121
+ * Explicit definitions for possible options for the activatable entry.
10122
+ *
10123
+ * Note that this is only a full definition of options for simple logic that can be made explicit using the more detailed configuration for both derived categories and explicit options. There are quite a few entries whose option logic cannot be fully represented here, so that it needs to be implemented manually.
10124
+ */
10125
+ explicit_select_options: GeneralSelectOption_ID[]
10126
+
10429
10127
  /**
10430
10128
  * The number stating how often you can buy the entry. The **default** depends on the entry type:
10431
10129
  *
@@ -10559,12 +10257,19 @@ export interface CeremonialItemSpecialAbility {
10559
10257
  levels?: number
10560
10258
 
10561
10259
  /**
10562
- * Definitions for possible options for the activatable entry. They can either be derived from entry categories or be defined explicitly. Both can happen as well, but if there is an explicitly defined select option and a derived select option has the same identifier (which may only happen if skill or combat technique identifiers are used for explicit select options), the explicit definition overwrites the derived option.
10260
+ * Definitions for possible options for the activatable entry, derived from entry categories.
10563
10261
  *
10564
10262
  * Note that this is only a full definition of options for simple logic that can be made explicit using the more detailed configuration for both derived categories and explicit options. There are quite a few entries whose option logic cannot be fully represented here, so that it needs to be implemented manually.
10565
10263
  */
10566
10264
  select_options?: SelectOptions
10567
10265
 
10266
+ /**
10267
+ * Explicit definitions for possible options for the activatable entry.
10268
+ *
10269
+ * Note that this is only a full definition of options for simple logic that can be made explicit using the more detailed configuration for both derived categories and explicit options. There are quite a few entries whose option logic cannot be fully represented here, so that it needs to be implemented manually.
10270
+ */
10271
+ explicit_select_options: GeneralSelectOption_ID[]
10272
+
10568
10273
  /**
10569
10274
  * Registers new skill applications, which get enabled once this entry is activated. It specifies an entry-unique identifier and the skill it belongs to. A translation can be left out if its name equals the name of the origin activatable entry.
10570
10275
  */
@@ -10654,12 +10359,19 @@ export interface ChronicleEnchantment {
10654
10359
  levels?: number
10655
10360
 
10656
10361
  /**
10657
- * Definitions for possible options for the activatable entry. They can either be derived from entry categories or be defined explicitly. Both can happen as well, but if there is an explicitly defined select option and a derived select option has the same identifier (which may only happen if skill or combat technique identifiers are used for explicit select options), the explicit definition overwrites the derived option.
10362
+ * Definitions for possible options for the activatable entry, derived from entry categories.
10658
10363
  *
10659
10364
  * Note that this is only a full definition of options for simple logic that can be made explicit using the more detailed configuration for both derived categories and explicit options. There are quite a few entries whose option logic cannot be fully represented here, so that it needs to be implemented manually.
10660
10365
  */
10661
10366
  select_options?: SelectOptions
10662
10367
 
10368
+ /**
10369
+ * Explicit definitions for possible options for the activatable entry.
10370
+ *
10371
+ * Note that this is only a full definition of options for simple logic that can be made explicit using the more detailed configuration for both derived categories and explicit options. There are quite a few entries whose option logic cannot be fully represented here, so that it needs to be implemented manually.
10372
+ */
10373
+ explicit_select_options: GeneralSelectOption_ID[]
10374
+
10663
10375
  /**
10664
10376
  * The number stating how often you can buy the entry. The **default** depends on the entry type:
10665
10377
  *
@@ -10772,12 +10484,19 @@ export interface CombatSpecialAbility {
10772
10484
  usage_type: CombatSpecialAbilityUsageType
10773
10485
 
10774
10486
  /**
10775
- * Definitions for possible options for the activatable entry. They can either be derived from entry categories or be defined explicitly. Both can happen as well, but if there is an explicitly defined select option and a derived select option has the same identifier (which may only happen if skill or combat technique identifiers are used for explicit select options), the explicit definition overwrites the derived option.
10487
+ * Definitions for possible options for the activatable entry, derived from entry categories.
10776
10488
  *
10777
10489
  * Note that this is only a full definition of options for simple logic that can be made explicit using the more detailed configuration for both derived categories and explicit options. There are quite a few entries whose option logic cannot be fully represented here, so that it needs to be implemented manually.
10778
10490
  */
10779
10491
  select_options?: SelectOptions
10780
10492
 
10493
+ /**
10494
+ * Explicit definitions for possible options for the activatable entry.
10495
+ *
10496
+ * Note that this is only a full definition of options for simple logic that can be made explicit using the more detailed configuration for both derived categories and explicit options. There are quite a few entries whose option logic cannot be fully represented here, so that it needs to be implemented manually.
10497
+ */
10498
+ explicit_select_options: GeneralSelectOption_ID[]
10499
+
10781
10500
  /**
10782
10501
  * Registers new skill applications, which get enabled once this entry is activated. It specifies an entry-unique identifier and the skill it belongs to. A translation can be left out if its name equals the name of the origin activatable entry.
10783
10502
  */
@@ -11058,12 +10777,19 @@ export interface CombatStyleSpecialAbility {
11058
10777
  type: CombatSpecialAbilityType
11059
10778
 
11060
10779
  /**
11061
- * Definitions for possible options for the activatable entry. They can either be derived from entry categories or be defined explicitly. Both can happen as well, but if there is an explicitly defined select option and a derived select option has the same identifier (which may only happen if skill or combat technique identifiers are used for explicit select options), the explicit definition overwrites the derived option.
10780
+ * Definitions for possible options for the activatable entry, derived from entry categories.
11062
10781
  *
11063
10782
  * Note that this is only a full definition of options for simple logic that can be made explicit using the more detailed configuration for both derived categories and explicit options. There are quite a few entries whose option logic cannot be fully represented here, so that it needs to be implemented manually.
11064
10783
  */
11065
10784
  select_options?: SelectOptions
11066
10785
 
10786
+ /**
10787
+ * Explicit definitions for possible options for the activatable entry.
10788
+ *
10789
+ * Note that this is only a full definition of options for simple logic that can be made explicit using the more detailed configuration for both derived categories and explicit options. There are quite a few entries whose option logic cannot be fully represented here, so that it needs to be implemented manually.
10790
+ */
10791
+ explicit_select_options: GeneralSelectOption_ID[]
10792
+
11067
10793
  /**
11068
10794
  * Registers new skill applications, which get enabled once this entry is activated. It specifies an entry-unique identifier and the skill it belongs to. A translation can be left out if its name equals the name of the origin activatable entry.
11069
10795
  */
@@ -11371,17 +11097,48 @@ export interface PatronCategoryTranslation {
11371
11097
  * The patron cultures the patron is or is not part of. If the patron is part of all patron cultures, the set should be empty and the operation should be difference.
11372
11098
  */
11373
11099
  export interface PatronCulture {
11100
+ set: Tribe_ID[]
11101
+ operation?: PatronCultureOperation
11102
+ }
11103
+
11104
+ export interface Tribe {
11374
11105
  /**
11375
- * The AE cost value.
11106
+ * The prerequisite(s) to be of this tribe.
11376
11107
  */
11377
- set: Culture_ID[]
11108
+ prerequisites: TribePrerequisites
11378
11109
 
11379
11110
  /**
11380
- * The interval in which you have to pay the AE cost again.
11111
+ * All translations for the entry, identified by IETF language tag (BCP47).
11381
11112
  */
11382
- operation?: PatronCultureOperation
11113
+ translations: {
11114
+ [localeId: string]: TribeTranslation
11115
+ }
11116
+ }
11117
+
11118
+ /**
11119
+ * The entity’s identifier. A UUID or a locale code if it is registered as the locale entity.
11120
+ */
11121
+ export type Tribe_ID = string
11122
+
11123
+ export interface TribeTranslation {
11124
+ /**
11125
+ * The tribe’s name.
11126
+ */
11127
+ name: string
11383
11128
  }
11384
11129
 
11130
+ export type TribePrerequisites = PlainPrerequisites<TribePrerequisiteGroup>
11131
+
11132
+ export type TribePrerequisiteGroup =
11133
+ | {
11134
+ kind: "Race"
11135
+ Race: RacePrerequisite
11136
+ }
11137
+ | {
11138
+ kind: "Culture"
11139
+ Culture: CulturePrerequisite
11140
+ }
11141
+
11385
11142
  /**
11386
11143
  * The set operation to combine the set of all patron cultures with the specified set of patron cultures: If they should intersect, the patron is only part of the given cultures. If they should differ, the patron is only part of the cultures that are not given.
11387
11144
  */
@@ -11512,12 +11269,19 @@ export interface CommandSpecialAbility {
11512
11269
  usage_type: CombatSpecialAbilityUsageType
11513
11270
 
11514
11271
  /**
11515
- * Definitions for possible options for the activatable entry. They can either be derived from entry categories or be defined explicitly. Both can happen as well, but if there is an explicitly defined select option and a derived select option has the same identifier (which may only happen if skill or combat technique identifiers are used for explicit select options), the explicit definition overwrites the derived option.
11272
+ * Definitions for possible options for the activatable entry, derived from entry categories.
11516
11273
  *
11517
11274
  * Note that this is only a full definition of options for simple logic that can be made explicit using the more detailed configuration for both derived categories and explicit options. There are quite a few entries whose option logic cannot be fully represented here, so that it needs to be implemented manually.
11518
11275
  */
11519
11276
  select_options?: SelectOptions
11520
11277
 
11278
+ /**
11279
+ * Explicit definitions for possible options for the activatable entry.
11280
+ *
11281
+ * Note that this is only a full definition of options for simple logic that can be made explicit using the more detailed configuration for both derived categories and explicit options. There are quite a few entries whose option logic cannot be fully represented here, so that it needs to be implemented manually.
11282
+ */
11283
+ explicit_select_options: GeneralSelectOption_ID[]
11284
+
11521
11285
  /**
11522
11286
  * The number stating how often you can buy the entry. The **default** depends on the entry type:
11523
11287
  *
@@ -11629,12 +11393,19 @@ export interface DaggerRitual {
11629
11393
  levels?: number
11630
11394
 
11631
11395
  /**
11632
- * Definitions for possible options for the activatable entry. They can either be derived from entry categories or be defined explicitly. Both can happen as well, but if there is an explicitly defined select option and a derived select option has the same identifier (which may only happen if skill or combat technique identifiers are used for explicit select options), the explicit definition overwrites the derived option.
11396
+ * Definitions for possible options for the activatable entry, derived from entry categories.
11633
11397
  *
11634
11398
  * Note that this is only a full definition of options for simple logic that can be made explicit using the more detailed configuration for both derived categories and explicit options. There are quite a few entries whose option logic cannot be fully represented here, so that it needs to be implemented manually.
11635
11399
  */
11636
11400
  select_options?: SelectOptions
11637
11401
 
11402
+ /**
11403
+ * Explicit definitions for possible options for the activatable entry.
11404
+ *
11405
+ * Note that this is only a full definition of options for simple logic that can be made explicit using the more detailed configuration for both derived categories and explicit options. There are quite a few entries whose option logic cannot be fully represented here, so that it needs to be implemented manually.
11406
+ */
11407
+ explicit_select_options: GeneralSelectOption_ID[]
11408
+
11638
11409
  /**
11639
11410
  * The number stating how often you can buy the entry. The **default** depends on the entry type:
11640
11411
  *
@@ -11767,12 +11538,19 @@ export interface FamiliarSpecialAbility {
11767
11538
  levels?: number
11768
11539
 
11769
11540
  /**
11770
- * Definitions for possible options for the activatable entry. They can either be derived from entry categories or be defined explicitly. Both can happen as well, but if there is an explicitly defined select option and a derived select option has the same identifier (which may only happen if skill or combat technique identifiers are used for explicit select options), the explicit definition overwrites the derived option.
11541
+ * Definitions for possible options for the activatable entry, derived from entry categories.
11771
11542
  *
11772
11543
  * Note that this is only a full definition of options for simple logic that can be made explicit using the more detailed configuration for both derived categories and explicit options. There are quite a few entries whose option logic cannot be fully represented here, so that it needs to be implemented manually.
11773
11544
  */
11774
11545
  select_options?: SelectOptions
11775
11546
 
11547
+ /**
11548
+ * Explicit definitions for possible options for the activatable entry.
11549
+ *
11550
+ * Note that this is only a full definition of options for simple logic that can be made explicit using the more detailed configuration for both derived categories and explicit options. There are quite a few entries whose option logic cannot be fully represented here, so that it needs to be implemented manually.
11551
+ */
11552
+ explicit_select_options: GeneralSelectOption_ID[]
11553
+
11776
11554
  /**
11777
11555
  * The number stating how often you can buy the entry. The **default** depends on the entry type:
11778
11556
  *
@@ -11847,12 +11625,19 @@ export interface FatePointSexSpecialAbility {
11847
11625
  levels?: number
11848
11626
 
11849
11627
  /**
11850
- * Definitions for possible options for the activatable entry. They can either be derived from entry categories or be defined explicitly. Both can happen as well, but if there is an explicitly defined select option and a derived select option has the same identifier (which may only happen if skill or combat technique identifiers are used for explicit select options), the explicit definition overwrites the derived option.
11628
+ * Definitions for possible options for the activatable entry, derived from entry categories.
11851
11629
  *
11852
11630
  * Note that this is only a full definition of options for simple logic that can be made explicit using the more detailed configuration for both derived categories and explicit options. There are quite a few entries whose option logic cannot be fully represented here, so that it needs to be implemented manually.
11853
11631
  */
11854
11632
  select_options?: SelectOptions
11855
11633
 
11634
+ /**
11635
+ * Explicit definitions for possible options for the activatable entry.
11636
+ *
11637
+ * Note that this is only a full definition of options for simple logic that can be made explicit using the more detailed configuration for both derived categories and explicit options. There are quite a few entries whose option logic cannot be fully represented here, so that it needs to be implemented manually.
11638
+ */
11639
+ explicit_select_options: GeneralSelectOption_ID[]
11640
+
11856
11641
  /**
11857
11642
  * The number stating how often you can buy the entry. The **default** depends on the entry type:
11858
11643
  *
@@ -11927,12 +11712,19 @@ export interface FatePointSpecialAbility {
11927
11712
  levels?: number
11928
11713
 
11929
11714
  /**
11930
- * Definitions for possible options for the activatable entry. They can either be derived from entry categories or be defined explicitly. Both can happen as well, but if there is an explicitly defined select option and a derived select option has the same identifier (which may only happen if skill or combat technique identifiers are used for explicit select options), the explicit definition overwrites the derived option.
11715
+ * Definitions for possible options for the activatable entry, derived from entry categories.
11931
11716
  *
11932
11717
  * Note that this is only a full definition of options for simple logic that can be made explicit using the more detailed configuration for both derived categories and explicit options. There are quite a few entries whose option logic cannot be fully represented here, so that it needs to be implemented manually.
11933
11718
  */
11934
11719
  select_options?: SelectOptions
11935
11720
 
11721
+ /**
11722
+ * Explicit definitions for possible options for the activatable entry.
11723
+ *
11724
+ * Note that this is only a full definition of options for simple logic that can be made explicit using the more detailed configuration for both derived categories and explicit options. There are quite a few entries whose option logic cannot be fully represented here, so that it needs to be implemented manually.
11725
+ */
11726
+ explicit_select_options: GeneralSelectOption_ID[]
11727
+
11936
11728
  /**
11937
11729
  * Registers new skill applications, which get enabled once this entry is activated. It specifies an entry-unique identifier and the skill it belongs to. A translation can be left out if its name equals the name of the origin activatable entry.
11938
11730
  */
@@ -12017,12 +11809,19 @@ export interface FoolsHatEnchantment {
12017
11809
  levels?: number
12018
11810
 
12019
11811
  /**
12020
- * Definitions for possible options for the activatable entry. They can either be derived from entry categories or be defined explicitly. Both can happen as well, but if there is an explicitly defined select option and a derived select option has the same identifier (which may only happen if skill or combat technique identifiers are used for explicit select options), the explicit definition overwrites the derived option.
11812
+ * Definitions for possible options for the activatable entry, derived from entry categories.
12021
11813
  *
12022
11814
  * Note that this is only a full definition of options for simple logic that can be made explicit using the more detailed configuration for both derived categories and explicit options. There are quite a few entries whose option logic cannot be fully represented here, so that it needs to be implemented manually.
12023
11815
  */
12024
11816
  select_options?: SelectOptions
12025
11817
 
11818
+ /**
11819
+ * Explicit definitions for possible options for the activatable entry.
11820
+ *
11821
+ * Note that this is only a full definition of options for simple logic that can be made explicit using the more detailed configuration for both derived categories and explicit options. There are quite a few entries whose option logic cannot be fully represented here, so that it needs to be implemented manually.
11822
+ */
11823
+ explicit_select_options: GeneralSelectOption_ID[]
11824
+
12026
11825
  /**
12027
11826
  * The number stating how often you can buy the entry. The **default** depends on the entry type:
12028
11827
  *
@@ -12130,12 +11929,19 @@ export interface GeneralSpecialAbility {
12130
11929
  levels?: number
12131
11930
 
12132
11931
  /**
12133
- * Definitions for possible options for the activatable entry. They can either be derived from entry categories or be defined explicitly. Both can happen as well, but if there is an explicitly defined select option and a derived select option has the same identifier (which may only happen if skill or combat technique identifiers are used for explicit select options), the explicit definition overwrites the derived option.
11932
+ * Definitions for possible options for the activatable entry, derived from entry categories.
12134
11933
  *
12135
11934
  * Note that this is only a full definition of options for simple logic that can be made explicit using the more detailed configuration for both derived categories and explicit options. There are quite a few entries whose option logic cannot be fully represented here, so that it needs to be implemented manually.
12136
11935
  */
12137
11936
  select_options?: SelectOptions
12138
11937
 
11938
+ /**
11939
+ * Explicit definitions for possible options for the activatable entry.
11940
+ *
11941
+ * Note that this is only a full definition of options for simple logic that can be made explicit using the more detailed configuration for both derived categories and explicit options. There are quite a few entries whose option logic cannot be fully represented here, so that it needs to be implemented manually.
11942
+ */
11943
+ explicit_select_options: GeneralSelectOption_ID[]
11944
+
12139
11945
  /**
12140
11946
  * Registers new skill applications, which get enabled once this entry is activated. It specifies an entry-unique identifier and the skill it belongs to. A translation can be left out if its name equals the name of the origin activatable entry.
12141
11947
  */
@@ -12225,12 +12031,19 @@ export interface InstrumentEnchantment {
12225
12031
  levels?: number
12226
12032
 
12227
12033
  /**
12228
- * Definitions for possible options for the activatable entry. They can either be derived from entry categories or be defined explicitly. Both can happen as well, but if there is an explicitly defined select option and a derived select option has the same identifier (which may only happen if skill or combat technique identifiers are used for explicit select options), the explicit definition overwrites the derived option.
12034
+ * Definitions for possible options for the activatable entry, derived from entry categories.
12229
12035
  *
12230
12036
  * Note that this is only a full definition of options for simple logic that can be made explicit using the more detailed configuration for both derived categories and explicit options. There are quite a few entries whose option logic cannot be fully represented here, so that it needs to be implemented manually.
12231
12037
  */
12232
12038
  select_options?: SelectOptions
12233
12039
 
12040
+ /**
12041
+ * Explicit definitions for possible options for the activatable entry.
12042
+ *
12043
+ * Note that this is only a full definition of options for simple logic that can be made explicit using the more detailed configuration for both derived categories and explicit options. There are quite a few entries whose option logic cannot be fully represented here, so that it needs to be implemented manually.
12044
+ */
12045
+ explicit_select_options: GeneralSelectOption_ID[]
12046
+
12234
12047
  /**
12235
12048
  * The number stating how often you can buy the entry. The **default** depends on the entry type:
12236
12049
  *
@@ -12338,12 +12151,19 @@ export interface KarmaSpecialAbility {
12338
12151
  levels?: number
12339
12152
 
12340
12153
  /**
12341
- * Definitions for possible options for the activatable entry. They can either be derived from entry categories or be defined explicitly. Both can happen as well, but if there is an explicitly defined select option and a derived select option has the same identifier (which may only happen if skill or combat technique identifiers are used for explicit select options), the explicit definition overwrites the derived option.
12154
+ * Definitions for possible options for the activatable entry, derived from entry categories.
12342
12155
  *
12343
12156
  * Note that this is only a full definition of options for simple logic that can be made explicit using the more detailed configuration for both derived categories and explicit options. There are quite a few entries whose option logic cannot be fully represented here, so that it needs to be implemented manually.
12344
12157
  */
12345
12158
  select_options?: SelectOptions
12346
12159
 
12160
+ /**
12161
+ * Explicit definitions for possible options for the activatable entry.
12162
+ *
12163
+ * Note that this is only a full definition of options for simple logic that can be made explicit using the more detailed configuration for both derived categories and explicit options. There are quite a few entries whose option logic cannot be fully represented here, so that it needs to be implemented manually.
12164
+ */
12165
+ explicit_select_options: GeneralSelectOption_ID[]
12166
+
12347
12167
  /**
12348
12168
  * The number stating how often you can buy the entry. The **default** depends on the entry type:
12349
12169
  *
@@ -12418,12 +12238,19 @@ export interface Krallenkettenzauber {
12418
12238
  levels?: number
12419
12239
 
12420
12240
  /**
12421
- * Definitions for possible options for the activatable entry. They can either be derived from entry categories or be defined explicitly. Both can happen as well, but if there is an explicitly defined select option and a derived select option has the same identifier (which may only happen if skill or combat technique identifiers are used for explicit select options), the explicit definition overwrites the derived option.
12241
+ * Definitions for possible options for the activatable entry, derived from entry categories.
12422
12242
  *
12423
12243
  * Note that this is only a full definition of options for simple logic that can be made explicit using the more detailed configuration for both derived categories and explicit options. There are quite a few entries whose option logic cannot be fully represented here, so that it needs to be implemented manually.
12424
12244
  */
12425
12245
  select_options?: SelectOptions
12426
12246
 
12247
+ /**
12248
+ * Explicit definitions for possible options for the activatable entry.
12249
+ *
12250
+ * Note that this is only a full definition of options for simple logic that can be made explicit using the more detailed configuration for both derived categories and explicit options. There are quite a few entries whose option logic cannot be fully represented here, so that it needs to be implemented manually.
12251
+ */
12252
+ explicit_select_options: GeneralSelectOption_ID[]
12253
+
12427
12254
  /**
12428
12255
  * The number stating how often you can buy the entry. The **default** depends on the entry type:
12429
12256
  *
@@ -12531,12 +12358,19 @@ export interface LiturgicalStyleSpecialAbility {
12531
12358
  levels?: number
12532
12359
 
12533
12360
  /**
12534
- * Definitions for possible options for the activatable entry. They can either be derived from entry categories or be defined explicitly. Both can happen as well, but if there is an explicitly defined select option and a derived select option has the same identifier (which may only happen if skill or combat technique identifiers are used for explicit select options), the explicit definition overwrites the derived option.
12361
+ * Definitions for possible options for the activatable entry, derived from entry categories.
12535
12362
  *
12536
12363
  * Note that this is only a full definition of options for simple logic that can be made explicit using the more detailed configuration for both derived categories and explicit options. There are quite a few entries whose option logic cannot be fully represented here, so that it needs to be implemented manually.
12537
12364
  */
12538
12365
  select_options?: SelectOptions
12539
12366
 
12367
+ /**
12368
+ * Explicit definitions for possible options for the activatable entry.
12369
+ *
12370
+ * Note that this is only a full definition of options for simple logic that can be made explicit using the more detailed configuration for both derived categories and explicit options. There are quite a few entries whose option logic cannot be fully represented here, so that it needs to be implemented manually.
12371
+ */
12372
+ explicit_select_options: GeneralSelectOption_ID[]
12373
+
12540
12374
  /**
12541
12375
  * Registers new skill applications, which get enabled once this entry is activated. It specifies an entry-unique identifier and the skill it belongs to. A translation can be left out if its name equals the name of the origin activatable entry.
12542
12376
  */
@@ -12626,12 +12460,19 @@ export interface LycantropicGift {
12626
12460
  levels?: number
12627
12461
 
12628
12462
  /**
12629
- * Definitions for possible options for the activatable entry. They can either be derived from entry categories or be defined explicitly. Both can happen as well, but if there is an explicitly defined select option and a derived select option has the same identifier (which may only happen if skill or combat technique identifiers are used for explicit select options), the explicit definition overwrites the derived option.
12463
+ * Definitions for possible options for the activatable entry, derived from entry categories.
12630
12464
  *
12631
12465
  * Note that this is only a full definition of options for simple logic that can be made explicit using the more detailed configuration for both derived categories and explicit options. There are quite a few entries whose option logic cannot be fully represented here, so that it needs to be implemented manually.
12632
12466
  */
12633
12467
  select_options?: SelectOptions
12634
12468
 
12469
+ /**
12470
+ * Explicit definitions for possible options for the activatable entry.
12471
+ *
12472
+ * Note that this is only a full definition of options for simple logic that can be made explicit using the more detailed configuration for both derived categories and explicit options. There are quite a few entries whose option logic cannot be fully represented here, so that it needs to be implemented manually.
12473
+ */
12474
+ explicit_select_options: GeneralSelectOption_ID[]
12475
+
12635
12476
  /**
12636
12477
  * The number stating how often you can buy the entry. The **default** depends on the entry type:
12637
12478
  *
@@ -12768,12 +12609,19 @@ export interface MagicalSpecialAbility {
12768
12609
  levels?: number
12769
12610
 
12770
12611
  /**
12771
- * Definitions for possible options for the activatable entry. They can either be derived from entry categories or be defined explicitly. Both can happen as well, but if there is an explicitly defined select option and a derived select option has the same identifier (which may only happen if skill or combat technique identifiers are used for explicit select options), the explicit definition overwrites the derived option.
12612
+ * Definitions for possible options for the activatable entry, derived from entry categories.
12772
12613
  *
12773
12614
  * Note that this is only a full definition of options for simple logic that can be made explicit using the more detailed configuration for both derived categories and explicit options. There are quite a few entries whose option logic cannot be fully represented here, so that it needs to be implemented manually.
12774
12615
  */
12775
12616
  select_options?: SelectOptions
12776
12617
 
12618
+ /**
12619
+ * Explicit definitions for possible options for the activatable entry.
12620
+ *
12621
+ * Note that this is only a full definition of options for simple logic that can be made explicit using the more detailed configuration for both derived categories and explicit options. There are quite a few entries whose option logic cannot be fully represented here, so that it needs to be implemented manually.
12622
+ */
12623
+ explicit_select_options: GeneralSelectOption_ID[]
12624
+
12777
12625
  /**
12778
12626
  * Registers new skill applications, which get enabled once this entry is activated. It specifies an entry-unique identifier and the skill it belongs to. A translation can be left out if its name equals the name of the origin activatable entry.
12779
12627
  */
@@ -12863,12 +12711,19 @@ export interface MagicStyleSpecialAbility {
12863
12711
  levels?: number
12864
12712
 
12865
12713
  /**
12866
- * Definitions for possible options for the activatable entry. They can either be derived from entry categories or be defined explicitly. Both can happen as well, but if there is an explicitly defined select option and a derived select option has the same identifier (which may only happen if skill or combat technique identifiers are used for explicit select options), the explicit definition overwrites the derived option.
12714
+ * Definitions for possible options for the activatable entry, derived from entry categories.
12867
12715
  *
12868
12716
  * Note that this is only a full definition of options for simple logic that can be made explicit using the more detailed configuration for both derived categories and explicit options. There are quite a few entries whose option logic cannot be fully represented here, so that it needs to be implemented manually.
12869
12717
  */
12870
12718
  select_options?: SelectOptions
12871
12719
 
12720
+ /**
12721
+ * Explicit definitions for possible options for the activatable entry.
12722
+ *
12723
+ * Note that this is only a full definition of options for simple logic that can be made explicit using the more detailed configuration for both derived categories and explicit options. There are quite a few entries whose option logic cannot be fully represented here, so that it needs to be implemented manually.
12724
+ */
12725
+ explicit_select_options: GeneralSelectOption_ID[]
12726
+
12872
12727
  /**
12873
12728
  * Registers new skill applications, which get enabled once this entry is activated. It specifies an entry-unique identifier and the skill it belongs to. A translation can be left out if its name equals the name of the origin activatable entry.
12874
12729
  */
@@ -12958,12 +12813,19 @@ export interface OrbEnchantment {
12958
12813
  levels?: number
12959
12814
 
12960
12815
  /**
12961
- * Definitions for possible options for the activatable entry. They can either be derived from entry categories or be defined explicitly. Both can happen as well, but if there is an explicitly defined select option and a derived select option has the same identifier (which may only happen if skill or combat technique identifiers are used for explicit select options), the explicit definition overwrites the derived option.
12816
+ * Definitions for possible options for the activatable entry, derived from entry categories.
12962
12817
  *
12963
12818
  * Note that this is only a full definition of options for simple logic that can be made explicit using the more detailed configuration for both derived categories and explicit options. There are quite a few entries whose option logic cannot be fully represented here, so that it needs to be implemented manually.
12964
12819
  */
12965
12820
  select_options?: SelectOptions
12966
12821
 
12822
+ /**
12823
+ * Explicit definitions for possible options for the activatable entry.
12824
+ *
12825
+ * Note that this is only a full definition of options for simple logic that can be made explicit using the more detailed configuration for both derived categories and explicit options. There are quite a few entries whose option logic cannot be fully represented here, so that it needs to be implemented manually.
12826
+ */
12827
+ explicit_select_options: GeneralSelectOption_ID[]
12828
+
12967
12829
  /**
12968
12830
  * The number stating how often you can buy the entry. The **default** depends on the entry type:
12969
12831
  *
@@ -13071,12 +12933,19 @@ export interface PactGift {
13071
12933
  levels?: number
13072
12934
 
13073
12935
  /**
13074
- * Definitions for possible options for the activatable entry. They can either be derived from entry categories or be defined explicitly. Both can happen as well, but if there is an explicitly defined select option and a derived select option has the same identifier (which may only happen if skill or combat technique identifiers are used for explicit select options), the explicit definition overwrites the derived option.
12936
+ * Definitions for possible options for the activatable entry, derived from entry categories.
13075
12937
  *
13076
12938
  * Note that this is only a full definition of options for simple logic that can be made explicit using the more detailed configuration for both derived categories and explicit options. There are quite a few entries whose option logic cannot be fully represented here, so that it needs to be implemented manually.
13077
12939
  */
13078
12940
  select_options?: SelectOptions
13079
12941
 
12942
+ /**
12943
+ * Explicit definitions for possible options for the activatable entry.
12944
+ *
12945
+ * Note that this is only a full definition of options for simple logic that can be made explicit using the more detailed configuration for both derived categories and explicit options. There are quite a few entries whose option logic cannot be fully represented here, so that it needs to be implemented manually.
12946
+ */
12947
+ explicit_select_options: GeneralSelectOption_ID[]
12948
+
13080
12949
  /**
13081
12950
  * The number stating how often you can buy the entry. The **default** depends on the entry type:
13082
12951
  *
@@ -13236,12 +13105,19 @@ export interface ProtectiveWardingCircleSpecialAbility {
13236
13105
  levels?: number
13237
13106
 
13238
13107
  /**
13239
- * Definitions for possible options for the activatable entry. They can either be derived from entry categories or be defined explicitly. Both can happen as well, but if there is an explicitly defined select option and a derived select option has the same identifier (which may only happen if skill or combat technique identifiers are used for explicit select options), the explicit definition overwrites the derived option.
13108
+ * Definitions for possible options for the activatable entry, derived from entry categories.
13240
13109
  *
13241
13110
  * Note that this is only a full definition of options for simple logic that can be made explicit using the more detailed configuration for both derived categories and explicit options. There are quite a few entries whose option logic cannot be fully represented here, so that it needs to be implemented manually.
13242
13111
  */
13243
13112
  select_options?: SelectOptions
13244
13113
 
13114
+ /**
13115
+ * Explicit definitions for possible options for the activatable entry.
13116
+ *
13117
+ * Note that this is only a full definition of options for simple logic that can be made explicit using the more detailed configuration for both derived categories and explicit options. There are quite a few entries whose option logic cannot be fully represented here, so that it needs to be implemented manually.
13118
+ */
13119
+ explicit_select_options: GeneralSelectOption_ID[]
13120
+
13245
13121
  /**
13246
13122
  * The number stating how often you can buy the entry. The **default** depends on the entry type:
13247
13123
  *
@@ -13326,18 +13202,25 @@ export interface RingEnchantment {
13326
13202
  levels?: number
13327
13203
 
13328
13204
  /**
13329
- * Definitions for possible options for the activatable entry. They can either be derived from entry categories or be defined explicitly. Both can happen as well, but if there is an explicitly defined select option and a derived select option has the same identifier (which may only happen if skill or combat technique identifiers are used for explicit select options), the explicit definition overwrites the derived option.
13205
+ * Definitions for possible options for the activatable entry, derived from entry categories.
13330
13206
  *
13331
13207
  * Note that this is only a full definition of options for simple logic that can be made explicit using the more detailed configuration for both derived categories and explicit options. There are quite a few entries whose option logic cannot be fully represented here, so that it needs to be implemented manually.
13332
13208
  */
13333
13209
  select_options?: SelectOptions
13334
13210
 
13335
13211
  /**
13336
- * The number stating how often you can buy the entry. The **default** depends on the entry type:
13212
+ * Explicit definitions for possible options for the activatable entry.
13337
13213
  *
13338
- * - **Advantage:** `1` in all cases (as specified in the **Core Rules**)
13339
- * - **Disadvantage:** `1` in all cases (as specified in the **Core Rules**)
13340
- * - **Special Abilities:** `1` if no options can be selected, otherwise the number of possible options
13214
+ * Note that this is only a full definition of options for simple logic that can be made explicit using the more detailed configuration for both derived categories and explicit options. There are quite a few entries whose option logic cannot be fully represented here, so that it needs to be implemented manually.
13215
+ */
13216
+ explicit_select_options: GeneralSelectOption_ID[]
13217
+
13218
+ /**
13219
+ * The number stating how often you can buy the entry. The **default** depends on the entry type:
13220
+ *
13221
+ * - **Advantage:** `1` in all cases (as specified in the **Core Rules**)
13222
+ * - **Disadvantage:** `1` in all cases (as specified in the **Core Rules**)
13223
+ * - **Special Abilities:** `1` if no options can be selected, otherwise the number of possible options
13341
13224
  *
13342
13225
  * The maximum is only set if it differs from the defaults specified above.
13343
13226
  */
@@ -13439,12 +13322,19 @@ export interface Sermon {
13439
13322
  levels?: number
13440
13323
 
13441
13324
  /**
13442
- * Definitions for possible options for the activatable entry. They can either be derived from entry categories or be defined explicitly. Both can happen as well, but if there is an explicitly defined select option and a derived select option has the same identifier (which may only happen if skill or combat technique identifiers are used for explicit select options), the explicit definition overwrites the derived option.
13325
+ * Definitions for possible options for the activatable entry, derived from entry categories.
13443
13326
  *
13444
13327
  * Note that this is only a full definition of options for simple logic that can be made explicit using the more detailed configuration for both derived categories and explicit options. There are quite a few entries whose option logic cannot be fully represented here, so that it needs to be implemented manually.
13445
13328
  */
13446
13329
  select_options?: SelectOptions
13447
13330
 
13331
+ /**
13332
+ * Explicit definitions for possible options for the activatable entry.
13333
+ *
13334
+ * Note that this is only a full definition of options for simple logic that can be made explicit using the more detailed configuration for both derived categories and explicit options. There are quite a few entries whose option logic cannot be fully represented here, so that it needs to be implemented manually.
13335
+ */
13336
+ explicit_select_options: GeneralSelectOption_ID[]
13337
+
13448
13338
  /**
13449
13339
  * The number stating how often you can buy the entry. The **default** depends on the entry type:
13450
13340
  *
@@ -13519,12 +13409,19 @@ export interface SexSpecialAbility {
13519
13409
  levels?: number
13520
13410
 
13521
13411
  /**
13522
- * Definitions for possible options for the activatable entry. They can either be derived from entry categories or be defined explicitly. Both can happen as well, but if there is an explicitly defined select option and a derived select option has the same identifier (which may only happen if skill or combat technique identifiers are used for explicit select options), the explicit definition overwrites the derived option.
13412
+ * Definitions for possible options for the activatable entry, derived from entry categories.
13523
13413
  *
13524
13414
  * Note that this is only a full definition of options for simple logic that can be made explicit using the more detailed configuration for both derived categories and explicit options. There are quite a few entries whose option logic cannot be fully represented here, so that it needs to be implemented manually.
13525
13415
  */
13526
13416
  select_options?: SelectOptions
13527
13417
 
13418
+ /**
13419
+ * Explicit definitions for possible options for the activatable entry.
13420
+ *
13421
+ * Note that this is only a full definition of options for simple logic that can be made explicit using the more detailed configuration for both derived categories and explicit options. There are quite a few entries whose option logic cannot be fully represented here, so that it needs to be implemented manually.
13422
+ */
13423
+ explicit_select_options: GeneralSelectOption_ID[]
13424
+
13528
13425
  /**
13529
13426
  * Registers new skill applications, which get enabled once this entry is activated. It specifies an entry-unique identifier and the skill it belongs to. A translation can be left out if its name equals the name of the origin activatable entry.
13530
13427
  */
@@ -13609,12 +13506,19 @@ export interface SickleRitual {
13609
13506
  levels?: number
13610
13507
 
13611
13508
  /**
13612
- * Definitions for possible options for the activatable entry. They can either be derived from entry categories or be defined explicitly. Both can happen as well, but if there is an explicitly defined select option and a derived select option has the same identifier (which may only happen if skill or combat technique identifiers are used for explicit select options), the explicit definition overwrites the derived option.
13509
+ * Definitions for possible options for the activatable entry, derived from entry categories.
13613
13510
  *
13614
13511
  * Note that this is only a full definition of options for simple logic that can be made explicit using the more detailed configuration for both derived categories and explicit options. There are quite a few entries whose option logic cannot be fully represented here, so that it needs to be implemented manually.
13615
13512
  */
13616
13513
  select_options?: SelectOptions
13617
13514
 
13515
+ /**
13516
+ * Explicit definitions for possible options for the activatable entry.
13517
+ *
13518
+ * Note that this is only a full definition of options for simple logic that can be made explicit using the more detailed configuration for both derived categories and explicit options. There are quite a few entries whose option logic cannot be fully represented here, so that it needs to be implemented manually.
13519
+ */
13520
+ explicit_select_options: GeneralSelectOption_ID[]
13521
+
13618
13522
  /**
13619
13523
  * The number stating how often you can buy the entry. The **default** depends on the entry type:
13620
13524
  *
@@ -13722,12 +13626,19 @@ export interface SikaryanDrainSpecialAbility {
13722
13626
  levels?: number
13723
13627
 
13724
13628
  /**
13725
- * Definitions for possible options for the activatable entry. They can either be derived from entry categories or be defined explicitly. Both can happen as well, but if there is an explicitly defined select option and a derived select option has the same identifier (which may only happen if skill or combat technique identifiers are used for explicit select options), the explicit definition overwrites the derived option.
13629
+ * Definitions for possible options for the activatable entry, derived from entry categories.
13726
13630
  *
13727
13631
  * Note that this is only a full definition of options for simple logic that can be made explicit using the more detailed configuration for both derived categories and explicit options. There are quite a few entries whose option logic cannot be fully represented here, so that it needs to be implemented manually.
13728
13632
  */
13729
13633
  select_options?: SelectOptions
13730
13634
 
13635
+ /**
13636
+ * Explicit definitions for possible options for the activatable entry.
13637
+ *
13638
+ * Note that this is only a full definition of options for simple logic that can be made explicit using the more detailed configuration for both derived categories and explicit options. There are quite a few entries whose option logic cannot be fully represented here, so that it needs to be implemented manually.
13639
+ */
13640
+ explicit_select_options: GeneralSelectOption_ID[]
13641
+
13731
13642
  /**
13732
13643
  * The number stating how often you can buy the entry. The **default** depends on the entry type:
13733
13644
  *
@@ -13802,12 +13713,19 @@ export interface SkillStyleSpecialAbility {
13802
13713
  levels?: number
13803
13714
 
13804
13715
  /**
13805
- * Definitions for possible options for the activatable entry. They can either be derived from entry categories or be defined explicitly. Both can happen as well, but if there is an explicitly defined select option and a derived select option has the same identifier (which may only happen if skill or combat technique identifiers are used for explicit select options), the explicit definition overwrites the derived option.
13716
+ * Definitions for possible options for the activatable entry, derived from entry categories.
13806
13717
  *
13807
13718
  * Note that this is only a full definition of options for simple logic that can be made explicit using the more detailed configuration for both derived categories and explicit options. There are quite a few entries whose option logic cannot be fully represented here, so that it needs to be implemented manually.
13808
13719
  */
13809
13720
  select_options?: SelectOptions
13810
13721
 
13722
+ /**
13723
+ * Explicit definitions for possible options for the activatable entry.
13724
+ *
13725
+ * Note that this is only a full definition of options for simple logic that can be made explicit using the more detailed configuration for both derived categories and explicit options. There are quite a few entries whose option logic cannot be fully represented here, so that it needs to be implemented manually.
13726
+ */
13727
+ explicit_select_options: GeneralSelectOption_ID[]
13728
+
13811
13729
  /**
13812
13730
  * The number stating how often you can buy the entry. The **default** depends on the entry type:
13813
13731
  *
@@ -13887,12 +13805,19 @@ export interface SpellSwordEnchantment {
13887
13805
  levels?: number
13888
13806
 
13889
13807
  /**
13890
- * Definitions for possible options for the activatable entry. They can either be derived from entry categories or be defined explicitly. Both can happen as well, but if there is an explicitly defined select option and a derived select option has the same identifier (which may only happen if skill or combat technique identifiers are used for explicit select options), the explicit definition overwrites the derived option.
13808
+ * Definitions for possible options for the activatable entry, derived from entry categories.
13891
13809
  *
13892
13810
  * Note that this is only a full definition of options for simple logic that can be made explicit using the more detailed configuration for both derived categories and explicit options. There are quite a few entries whose option logic cannot be fully represented here, so that it needs to be implemented manually.
13893
13811
  */
13894
13812
  select_options?: SelectOptions
13895
13813
 
13814
+ /**
13815
+ * Explicit definitions for possible options for the activatable entry.
13816
+ *
13817
+ * Note that this is only a full definition of options for simple logic that can be made explicit using the more detailed configuration for both derived categories and explicit options. There are quite a few entries whose option logic cannot be fully represented here, so that it needs to be implemented manually.
13818
+ */
13819
+ explicit_select_options: GeneralSelectOption_ID[]
13820
+
13896
13821
  /**
13897
13822
  * The number stating how often you can buy the entry. The **default** depends on the entry type:
13898
13823
  *
@@ -14000,12 +13925,19 @@ export interface StaffEnchantment {
14000
13925
  levels?: number
14001
13926
 
14002
13927
  /**
14003
- * Definitions for possible options for the activatable entry. They can either be derived from entry categories or be defined explicitly. Both can happen as well, but if there is an explicitly defined select option and a derived select option has the same identifier (which may only happen if skill or combat technique identifiers are used for explicit select options), the explicit definition overwrites the derived option.
13928
+ * Definitions for possible options for the activatable entry, derived from entry categories.
14004
13929
  *
14005
13930
  * Note that this is only a full definition of options for simple logic that can be made explicit using the more detailed configuration for both derived categories and explicit options. There are quite a few entries whose option logic cannot be fully represented here, so that it needs to be implemented manually.
14006
13931
  */
14007
13932
  select_options?: SelectOptions
14008
13933
 
13934
+ /**
13935
+ * Explicit definitions for possible options for the activatable entry.
13936
+ *
13937
+ * Note that this is only a full definition of options for simple logic that can be made explicit using the more detailed configuration for both derived categories and explicit options. There are quite a few entries whose option logic cannot be fully represented here, so that it needs to be implemented manually.
13938
+ */
13939
+ explicit_select_options: GeneralSelectOption_ID[]
13940
+
14009
13941
  /**
14010
13942
  * The number stating how often you can buy the entry. The **default** depends on the entry type:
14011
13943
  *
@@ -14118,12 +14050,19 @@ export interface ToyEnchantment {
14118
14050
  levels?: number
14119
14051
 
14120
14052
  /**
14121
- * Definitions for possible options for the activatable entry. They can either be derived from entry categories or be defined explicitly. Both can happen as well, but if there is an explicitly defined select option and a derived select option has the same identifier (which may only happen if skill or combat technique identifiers are used for explicit select options), the explicit definition overwrites the derived option.
14053
+ * Definitions for possible options for the activatable entry, derived from entry categories.
14122
14054
  *
14123
14055
  * Note that this is only a full definition of options for simple logic that can be made explicit using the more detailed configuration for both derived categories and explicit options. There are quite a few entries whose option logic cannot be fully represented here, so that it needs to be implemented manually.
14124
14056
  */
14125
14057
  select_options?: SelectOptions
14126
14058
 
14059
+ /**
14060
+ * Explicit definitions for possible options for the activatable entry.
14061
+ *
14062
+ * Note that this is only a full definition of options for simple logic that can be made explicit using the more detailed configuration for both derived categories and explicit options. There are quite a few entries whose option logic cannot be fully represented here, so that it needs to be implemented manually.
14063
+ */
14064
+ explicit_select_options: GeneralSelectOption_ID[]
14065
+
14127
14066
  /**
14128
14067
  * The number stating how often you can buy the entry. The **default** depends on the entry type:
14129
14068
  *
@@ -14231,12 +14170,19 @@ export interface Trinkhornzauber {
14231
14170
  levels?: number
14232
14171
 
14233
14172
  /**
14234
- * Definitions for possible options for the activatable entry. They can either be derived from entry categories or be defined explicitly. Both can happen as well, but if there is an explicitly defined select option and a derived select option has the same identifier (which may only happen if skill or combat technique identifiers are used for explicit select options), the explicit definition overwrites the derived option.
14173
+ * Definitions for possible options for the activatable entry, derived from entry categories.
14235
14174
  *
14236
14175
  * Note that this is only a full definition of options for simple logic that can be made explicit using the more detailed configuration for both derived categories and explicit options. There are quite a few entries whose option logic cannot be fully represented here, so that it needs to be implemented manually.
14237
14176
  */
14238
14177
  select_options?: SelectOptions
14239
14178
 
14179
+ /**
14180
+ * Explicit definitions for possible options for the activatable entry.
14181
+ *
14182
+ * Note that this is only a full definition of options for simple logic that can be made explicit using the more detailed configuration for both derived categories and explicit options. There are quite a few entries whose option logic cannot be fully represented here, so that it needs to be implemented manually.
14183
+ */
14184
+ explicit_select_options: GeneralSelectOption_ID[]
14185
+
14240
14186
  /**
14241
14187
  * The number stating how often you can buy the entry. The **default** depends on the entry type:
14242
14188
  *
@@ -14344,12 +14290,19 @@ export interface VampiricGift {
14344
14290
  levels?: number
14345
14291
 
14346
14292
  /**
14347
- * Definitions for possible options for the activatable entry. They can either be derived from entry categories or be defined explicitly. Both can happen as well, but if there is an explicitly defined select option and a derived select option has the same identifier (which may only happen if skill or combat technique identifiers are used for explicit select options), the explicit definition overwrites the derived option.
14293
+ * Definitions for possible options for the activatable entry, derived from entry categories.
14348
14294
  *
14349
14295
  * Note that this is only a full definition of options for simple logic that can be made explicit using the more detailed configuration for both derived categories and explicit options. There are quite a few entries whose option logic cannot be fully represented here, so that it needs to be implemented manually.
14350
14296
  */
14351
14297
  select_options?: SelectOptions
14352
14298
 
14299
+ /**
14300
+ * Explicit definitions for possible options for the activatable entry.
14301
+ *
14302
+ * Note that this is only a full definition of options for simple logic that can be made explicit using the more detailed configuration for both derived categories and explicit options. There are quite a few entries whose option logic cannot be fully represented here, so that it needs to be implemented manually.
14303
+ */
14304
+ explicit_select_options: GeneralSelectOption_ID[]
14305
+
14353
14306
  /**
14354
14307
  * The number stating how often you can buy the entry. The **default** depends on the entry type:
14355
14308
  *
@@ -14424,12 +14377,19 @@ export interface Vision {
14424
14377
  levels?: number
14425
14378
 
14426
14379
  /**
14427
- * Definitions for possible options for the activatable entry. They can either be derived from entry categories or be defined explicitly. Both can happen as well, but if there is an explicitly defined select option and a derived select option has the same identifier (which may only happen if skill or combat technique identifiers are used for explicit select options), the explicit definition overwrites the derived option.
14380
+ * Definitions for possible options for the activatable entry, derived from entry categories.
14428
14381
  *
14429
14382
  * Note that this is only a full definition of options for simple logic that can be made explicit using the more detailed configuration for both derived categories and explicit options. There are quite a few entries whose option logic cannot be fully represented here, so that it needs to be implemented manually.
14430
14383
  */
14431
14384
  select_options?: SelectOptions
14432
14385
 
14386
+ /**
14387
+ * Explicit definitions for possible options for the activatable entry.
14388
+ *
14389
+ * Note that this is only a full definition of options for simple logic that can be made explicit using the more detailed configuration for both derived categories and explicit options. There are quite a few entries whose option logic cannot be fully represented here, so that it needs to be implemented manually.
14390
+ */
14391
+ explicit_select_options: GeneralSelectOption_ID[]
14392
+
14433
14393
  /**
14434
14394
  * The number stating how often you can buy the entry. The **default** depends on the entry type:
14435
14395
  *
@@ -14504,12 +14464,19 @@ export interface WandEnchantment {
14504
14464
  levels?: number
14505
14465
 
14506
14466
  /**
14507
- * Definitions for possible options for the activatable entry. They can either be derived from entry categories or be defined explicitly. Both can happen as well, but if there is an explicitly defined select option and a derived select option has the same identifier (which may only happen if skill or combat technique identifiers are used for explicit select options), the explicit definition overwrites the derived option.
14467
+ * Definitions for possible options for the activatable entry, derived from entry categories.
14508
14468
  *
14509
14469
  * Note that this is only a full definition of options for simple logic that can be made explicit using the more detailed configuration for both derived categories and explicit options. There are quite a few entries whose option logic cannot be fully represented here, so that it needs to be implemented manually.
14510
14470
  */
14511
14471
  select_options?: SelectOptions
14512
14472
 
14473
+ /**
14474
+ * Explicit definitions for possible options for the activatable entry.
14475
+ *
14476
+ * Note that this is only a full definition of options for simple logic that can be made explicit using the more detailed configuration for both derived categories and explicit options. There are quite a few entries whose option logic cannot be fully represented here, so that it needs to be implemented manually.
14477
+ */
14478
+ explicit_select_options: GeneralSelectOption_ID[]
14479
+
14513
14480
  /**
14514
14481
  * The number stating how often you can buy the entry. The **default** depends on the entry type:
14515
14482
  *
@@ -14612,12 +14579,19 @@ export interface WeaponEnchantment {
14612
14579
  levels?: number
14613
14580
 
14614
14581
  /**
14615
- * Definitions for possible options for the activatable entry. They can either be derived from entry categories or be defined explicitly. Both can happen as well, but if there is an explicitly defined select option and a derived select option has the same identifier (which may only happen if skill or combat technique identifiers are used for explicit select options), the explicit definition overwrites the derived option.
14582
+ * Definitions for possible options for the activatable entry, derived from entry categories.
14616
14583
  *
14617
14584
  * Note that this is only a full definition of options for simple logic that can be made explicit using the more detailed configuration for both derived categories and explicit options. There are quite a few entries whose option logic cannot be fully represented here, so that it needs to be implemented manually.
14618
14585
  */
14619
14586
  select_options?: SelectOptions
14620
14587
 
14588
+ /**
14589
+ * Explicit definitions for possible options for the activatable entry.
14590
+ *
14591
+ * Note that this is only a full definition of options for simple logic that can be made explicit using the more detailed configuration for both derived categories and explicit options. There are quite a few entries whose option logic cannot be fully represented here, so that it needs to be implemented manually.
14592
+ */
14593
+ explicit_select_options: GeneralSelectOption_ID[]
14594
+
14621
14595
  /**
14622
14596
  * The number stating how often you can buy the entry. The **default** depends on the entry type:
14623
14597
  *
@@ -15971,27 +15945,6 @@ export type SustainedAnimistPowerCost =
15971
15945
  ByPrimaryPatron: AnimistPowerCostByPrimaryPatron
15972
15946
  }
15973
15947
 
15974
- export interface Tribe {
15975
- /**
15976
- * All translations for the entry, identified by IETF language tag (BCP47).
15977
- */
15978
- translations: {
15979
- [localeId: string]: TribeTranslation
15980
- }
15981
- }
15982
-
15983
- /**
15984
- * The entity’s identifier. A UUID or a locale code if it is registered as the locale entity.
15985
- */
15986
- export type Tribe_ID = string
15987
-
15988
- export interface TribeTranslation {
15989
- /**
15990
- * The tribe’s name.
15991
- */
15992
- name: string
15993
- }
15994
-
15995
15948
  export type AnimistPowerImprovementCost =
15996
15949
  | {
15997
15950
  kind: "Fixed"
@@ -16917,99 +16870,494 @@ export interface CommonNames {
16917
16870
  first_name_groups?: CommonNameGroup[]
16918
16871
 
16919
16872
  /**
16920
- * Last names can be gender-neutral, like family names, but they can also be for a specific binary sex. They are sorted into groups.
16873
+ * Last names can be gender-neutral, like family names, but they can also be for a specific binary sex. They are sorted into groups.
16874
+ */
16875
+ last_name_groups?: CommonNameGroup[]
16876
+
16877
+ /**
16878
+ * Special naming rules.
16879
+ */
16880
+ naming_rules?: string
16881
+ }
16882
+
16883
+ export interface CommonNameGroup {
16884
+ /**
16885
+ * The group label.
16886
+ */
16887
+ label: string
16888
+
16889
+ /**
16890
+ * The binary sex if the group is only for a certain binary sex.
16891
+ */
16892
+ sex?: BinarySex
16893
+
16894
+ /**
16895
+ * The names from the group.
16896
+ */
16897
+ names: CommonName[]
16898
+ }
16899
+
16900
+ export interface CommonName {
16901
+ name: string
16902
+
16903
+ /**
16904
+ * Additional information about the name, appended in parenthesis.
16905
+ */
16906
+ note?: string
16907
+ }
16908
+
16909
+ export interface HairColor {
16910
+ /**
16911
+ * All translations for the entry, identified by IETF language tag (BCP47).
16912
+ */
16913
+ translations: {
16914
+ [localeId: string]: HairColorTranslation
16915
+ }
16916
+ }
16917
+
16918
+ /**
16919
+ * The entity’s identifier. A UUID or a locale code if it is registered as the locale entity.
16920
+ */
16921
+ export type HairColor_ID = string
16922
+
16923
+ export interface HairColorTranslation {
16924
+ /**
16925
+ * The hair color’s name.
16926
+ */
16927
+ name: string
16928
+ }
16929
+
16930
+ export interface EyeColor {
16931
+ /**
16932
+ * All translations for the entry, identified by IETF language tag (BCP47).
16933
+ */
16934
+ translations: {
16935
+ [localeId: string]: EyeColorTranslation
16936
+ }
16937
+ }
16938
+
16939
+ /**
16940
+ * The entity’s identifier. A UUID or a locale code if it is registered as the locale entity.
16941
+ */
16942
+ export type EyeColor_ID = string
16943
+
16944
+ export interface EyeColorTranslation {
16945
+ /**
16946
+ * The eye color’s name.
16947
+ */
16948
+ name: string
16949
+ }
16950
+
16951
+ /**
16952
+ * Configuration for random height generation.
16953
+ */
16954
+ export interface RandomHeightGeneration {
16955
+ /**
16956
+ * The base value used for random height.
16957
+ */
16958
+ base: number
16959
+
16960
+ /**
16961
+ * The dice used for random height.
16962
+ */
16963
+ random: Dice[]
16964
+ }
16965
+
16966
+ /**
16967
+ * Requires a specific pact.
16968
+ */
16969
+ export interface PactPrerequisitePactPrerequisite {
16970
+ /**
16971
+ * The required pact category.
16972
+ */
16973
+ category: PactCategory_ID
16974
+
16975
+ /**
16976
+ * The required domain(s).
16977
+ */
16978
+ domain?: PactDomain_ID[]
16979
+
16980
+ /**
16981
+ * The level to which the minimum value applies.
16982
+ */
16983
+ level?: number
16984
+
16985
+ display_option?: DisplayOption
16986
+ }
16987
+
16988
+ export interface PactCategory {
16989
+ /**
16990
+ * Types of creatures in this category.
16991
+ */
16992
+ types: PactType_ID[]
16993
+
16994
+ /**
16995
+ * Domains in this category.
16996
+ */
16997
+ domains: PactDomain_ID[]
16998
+
16999
+ /**
17000
+ * All translations for the entry, identified by IETF language tag (BCP47).
17001
+ */
17002
+ src: PublicationRefs
17003
+
17004
+ /**
17005
+ * All translations for the entry, identified by IETF language tag (BCP47).
17006
+ */
17007
+ translations: {
17008
+ [localeId: string]: PactCategoryTranslation
17009
+ }
17010
+ }
17011
+
17012
+ /**
17013
+ * The entity’s identifier. A UUID or a locale code if it is registered as the locale entity.
17014
+ */
17015
+ export type PactCategory_ID = string
17016
+
17017
+ export interface PactCategoryTranslation {
17018
+ /**
17019
+ * The pact category’s name.
17020
+ */
17021
+ name: string
17022
+
17023
+ errata?: Errata
17024
+ }
17025
+
17026
+ export interface PactType {
17027
+ /**
17028
+ * The pact category this type belongs to.
17029
+ */
17030
+ parent: PactCategory_ID
17031
+
17032
+ /**
17033
+ * All translations for the entry, identified by IETF language tag (BCP47).
17034
+ */
17035
+ translations: {
17036
+ [localeId: string]: PactTypeTranslation
17037
+ }
17038
+ }
17039
+
17040
+ /**
17041
+ * The entity’s identifier. A UUID or a locale code if it is registered as the locale entity.
17042
+ */
17043
+ export type PactType_ID = string
17044
+
17045
+ export interface PactTypeTranslation {
17046
+ /**
17047
+ * The type’s name.
17048
+ */
17049
+ name: string
17050
+ }
17051
+
17052
+ export interface PactDomain {
17053
+ /**
17054
+ * The pact category this domain belongs to.
17055
+ */
17056
+ parent: PactCategory_ID
17057
+
17058
+ /**
17059
+ * All translations for the entry, identified by IETF language tag (BCP47).
17060
+ */
17061
+ translations: {
17062
+ [localeId: string]: PactDomainTranslation
17063
+ }
17064
+ }
17065
+
17066
+ /**
17067
+ * The entity’s identifier. A UUID or a locale code if it is registered as the locale entity.
17068
+ */
17069
+ export type PactDomain_ID = string
17070
+
17071
+ export interface PactDomainTranslation {
17072
+ /**
17073
+ * The domain’s name.
17074
+ */
17075
+ name: string
17076
+ }
17077
+
17078
+ /**
17079
+ * Requires a minimum social status.
17080
+ */
17081
+ export interface SocialStatusPrerequisite {
17082
+ /**
17083
+ * The minimum social status’s identifier.
17084
+ */
17085
+ id: SocialStatus_ID
17086
+
17087
+ display_option?: DisplayOption
17088
+ }
17089
+
17090
+ /**
17091
+ * Requires a specific state to be active.
17092
+ */
17093
+ export interface StatePrerequisite {
17094
+ id: State_ID
17095
+ display_option?: DisplayOption
17096
+ }
17097
+
17098
+ export interface State {
17099
+ /**
17100
+ * All translations for the entry, identified by IETF language tag (BCP47).
17101
+ */
17102
+ src: PublicationRefs
17103
+
17104
+ /**
17105
+ * All translations for the entry, identified by IETF language tag (BCP47).
17106
+ */
17107
+ translations: {
17108
+ [localeId: string]: StateTranslation
17109
+ }
17110
+ }
17111
+
17112
+ /**
17113
+ * The entity’s identifier. A UUID or a locale code if it is registered as the locale entity.
17114
+ */
17115
+ export type State_ID = string
17116
+
17117
+ export interface StateTranslation {
17118
+ /**
17119
+ * The state’s name.
17120
+ */
17121
+ name: string
17122
+
17123
+ /**
17124
+ * The description of the state.
17125
+ */
17126
+ description: string
17127
+
17128
+ errata?: Errata
17129
+ }
17130
+
17131
+ export interface PrimaryAttributePrerequisite {
17132
+ /**
17133
+ * Is the required primary attribute for spellcasters or blessed ones?
17134
+ */
17135
+ category: PrimaryAttributeCategory
17136
+
17137
+ /**
17138
+ * Required value of the attribute.
17139
+ */
17140
+ value: number
17141
+
17142
+ display_option?: DisplayOption
17143
+ }
17144
+
17145
+ export type PrimaryAttributeCategory =
17146
+ | {
17147
+ kind: "Blessed"
17148
+ }
17149
+ | {
17150
+ kind: "Magical"
17151
+ }
17152
+
17153
+ export interface BlessedTraditionPrerequisite {
17154
+ /**
17155
+ * The blessed tradition prerequisite may only be satified if the blessed tradition is either church or shamanistic.
17156
+ */
17157
+ restriction?: BlessedTraditionPrerequisiteRestriction
17158
+
17159
+ display_option?: DisplayOption
17160
+ }
17161
+
17162
+ /**
17163
+ * The blessed tradition prerequisite may only be satified if the blessed tradition is either church or shamanistic.
17164
+ */
17165
+ export type BlessedTraditionPrerequisiteRestriction =
17166
+ | {
17167
+ kind: "Church"
17168
+ }
17169
+ | {
17170
+ kind: "Shamanistic"
17171
+ }
17172
+
17173
+ export interface MagicalTraditionPrerequisite {
17174
+ /**
17175
+ * The magical tradition prerequisite may only be satified if the magical tradition can learn rituals or can bind familiars.
16921
17176
  */
16922
- last_name_groups?: CommonNameGroup[]
17177
+ restriction?: MagicalTraditionPrerequisiteRestriction
16923
17178
 
16924
- /**
16925
- * Special naming rules.
16926
- */
16927
- naming_rules?: string
17179
+ display_option?: DisplayOption
16928
17180
  }
16929
17181
 
16930
- export interface CommonNameGroup {
17182
+ /**
17183
+ * The magical tradition prerequisite may only be satified if the magical tradition can learn rituals or can bind familiars.
17184
+ */
17185
+ export type MagicalTraditionPrerequisiteRestriction =
17186
+ | {
17187
+ kind: "CanLearnRituals"
17188
+ }
17189
+ | {
17190
+ kind: "CanBindFamiliars"
17191
+ }
17192
+
17193
+ export interface RatedMinimumNumberPrerequisite {
16931
17194
  /**
16932
- * The group label.
17195
+ * The minimum number of skills that need to be on the defined minimum skill rating.
16933
17196
  */
16934
- label: string
17197
+ number: number
16935
17198
 
16936
17199
  /**
16937
- * The binary sex if the group is only for a certain binary sex.
17200
+ * The minimum skill rating the defined minimum number of skills need to be on.
16938
17201
  */
16939
- sex?: BinarySex
17202
+ value: number
16940
17203
 
16941
17204
  /**
16942
- * The names from the group.
17205
+ * The targets that contribute to satisfying the prerequisite.
16943
17206
  */
16944
- names: CommonName[]
17207
+ targets: RatedMinimumNumberPrerequisiteTarget
17208
+
17209
+ display_option?: DisplayOption
16945
17210
  }
16946
17211
 
16947
- export interface CommonName {
16948
- name: string
17212
+ export type RatedMinimumNumberPrerequisiteTarget =
17213
+ | {
17214
+ kind: "Skills"
17215
+ Skills: RatedMinimumNumberPrerequisiteSkillsTarget
17216
+ }
17217
+ | {
17218
+ kind: "CombatTechniques"
17219
+ CombatTechniques: RatedMinimumNumberPrerequisiteCombatTechniquesTarget
17220
+ }
17221
+ | {
17222
+ kind: "Spellworks"
17223
+ Spellworks: RatedMinimumNumberPrerequisiteSpellworksTarget
17224
+ }
17225
+ | {
17226
+ kind: "Liturgies"
17227
+ Liturgies: RatedMinimumNumberPrerequisiteLiturgiesTarget
17228
+ }
16949
17229
 
17230
+ export interface RatedMinimumNumberPrerequisiteSkillsTarget {
16950
17231
  /**
16951
- * Additional information about the name, appended in parenthesis.
17232
+ * The skills that are taken into account for satisfying the prerequisite.
16952
17233
  */
16953
- note?: string
17234
+ targets: Skill_ID[]
16954
17235
  }
16955
17236
 
16956
- export interface HairColor {
17237
+ export interface RatedMinimumNumberPrerequisiteCombatTechniquesTarget {
16957
17238
  /**
16958
- * All translations for the entry, identified by IETF language tag (BCP47).
17239
+ * The skills that are taken into account for satisfying the prerequisite.
16959
17240
  */
16960
- translations: {
16961
- [localeId: string]: HairColorTranslation
16962
- }
17241
+ group: RatedMinimumNumberPrerequisiteCombatTechniquesTargetGroup
16963
17242
  }
16964
17243
 
16965
- /**
16966
- * The entity’s identifier. A UUID or a locale code if it is registered as the locale entity.
16967
- */
16968
- export type HairColor_ID = string
17244
+ export type RatedMinimumNumberPrerequisiteCombatTechniquesTargetGroup =
17245
+ | {
17246
+ kind: "All"
17247
+ }
17248
+ | {
17249
+ kind: "Close"
17250
+ }
17251
+ | {
17252
+ kind: "Ranged"
17253
+ }
16969
17254
 
16970
- export interface HairColorTranslation {
17255
+ export interface RatedMinimumNumberPrerequisiteSpellworksTarget {
16971
17256
  /**
16972
- * The hair color’s name.
17257
+ * The skills that are taken into account for satisfying the prerequisite.
16973
17258
  */
16974
- name: string
17259
+ property: Property_ID
16975
17260
  }
16976
17261
 
16977
- export interface EyeColor {
17262
+ export interface RatedMinimumNumberPrerequisiteLiturgiesTarget {
16978
17263
  /**
16979
- * All translations for the entry, identified by IETF language tag (BCP47).
17264
+ * The skills that are taken into account for satisfying the prerequisite.
16980
17265
  */
16981
- translations: {
16982
- [localeId: string]: EyeColorTranslation
16983
- }
17266
+ aspect: Aspect_ID
16984
17267
  }
16985
17268
 
16986
- /**
16987
- * The entity’s identifier. A UUID or a locale code if it is registered as the locale entity.
16988
- */
16989
- export type EyeColor_ID = string
16990
-
16991
- export interface EyeColorTranslation {
17269
+ export interface RatedSumPrerequisite {
16992
17270
  /**
16993
- * The eye colors name.
17271
+ * The minimum required sum of the targetsratings.
16994
17272
  */
16995
- name: string
16996
- }
17273
+ sum: number
16997
17274
 
16998
- /**
16999
- * Configuration for random height generation.
17000
- */
17001
- export interface RandomHeightGeneration {
17002
17275
  /**
17003
- * The base value used for random height.
17276
+ * The targets that are included in calculating the sum.
17004
17277
  */
17005
- base: number
17278
+ targets: Skill_ID[]
17006
17279
 
17007
- /**
17008
- * The dice used for random height.
17009
- */
17010
- random: Dice[]
17280
+ display_option?: DisplayOption
17011
17281
  }
17012
17282
 
17283
+ export type AdvantageDisadvantagePrerequisites = PrerequisitesForLevels<AdvantageDisadvantagePrerequisiteGroup>
17284
+
17285
+ export type AdvantageDisadvantagePrerequisiteGroup =
17286
+ | {
17287
+ kind: "CommonSuggestedByRCP"
17288
+ }
17289
+ | {
17290
+ kind: "Sex"
17291
+ Sex: SexPrerequisite
17292
+ }
17293
+ | {
17294
+ kind: "Race"
17295
+ Race: RacePrerequisite
17296
+ }
17297
+ | {
17298
+ kind: "Culture"
17299
+ Culture: CulturePrerequisite
17300
+ }
17301
+ | {
17302
+ kind: "Pact"
17303
+ Pact: PactPrerequisitePactPrerequisite
17304
+ }
17305
+ | {
17306
+ kind: "SocialStatus"
17307
+ SocialStatus: SocialStatusPrerequisite
17308
+ }
17309
+ | {
17310
+ kind: "State"
17311
+ State: StatePrerequisite
17312
+ }
17313
+ | {
17314
+ kind: "Rule"
17315
+ Rule: RulePrerequisite
17316
+ }
17317
+ | {
17318
+ kind: "PrimaryAttribute"
17319
+ PrimaryAttribute: PrimaryAttributePrerequisite
17320
+ }
17321
+ | {
17322
+ kind: "Activatable"
17323
+ Activatable: ActivatablePrerequisite
17324
+ }
17325
+ | {
17326
+ kind: "BlessedTradition"
17327
+ BlessedTradition: BlessedTraditionPrerequisite
17328
+ }
17329
+ | {
17330
+ kind: "MagicalTradition"
17331
+ MagicalTradition: MagicalTraditionPrerequisite
17332
+ }
17333
+ | {
17334
+ kind: "Rated"
17335
+ Rated: RatedPrerequisite
17336
+ }
17337
+ | {
17338
+ kind: "RatedMinimumNumber"
17339
+ RatedMinimumNumber: RatedMinimumNumberPrerequisite
17340
+ }
17341
+ | {
17342
+ kind: "RatedSum"
17343
+ RatedSum: RatedSumPrerequisite
17344
+ }
17345
+ | {
17346
+ kind: "Enhancement"
17347
+ Enhancement: EnhancementPrerequisite
17348
+ }
17349
+ | {
17350
+ kind: "Text"
17351
+ Text: TextPrerequisite
17352
+ }
17353
+ | {
17354
+ kind: "NoOtherAncestorBloodAdvantage"
17355
+ }
17356
+ | {
17357
+ kind: "SexualCharacteristic"
17358
+ SexualCharacteristic: SexualCharacteristicPrerequisite
17359
+ }
17360
+
17013
17361
  export interface SkillsSelectOptionCategory {
17014
17362
  /**
17015
17363
  * A list of skill categories.
@@ -18893,6 +19241,11 @@ export interface Disease {
18893
19241
  */
18894
19242
  cause: Cause[]
18895
19243
 
19244
+ /**
19245
+ * AP value and prerequisites of the disease’s trade secret.
19246
+ */
19247
+ trade_secret?: RecipeTradeSecret
19248
+
18896
19249
  /**
18897
19250
  * All translations for the entry, identified by IETF language tag (BCP47).
18898
19251
  */
@@ -18960,6 +19313,18 @@ export interface DiseaseTranslation {
18960
19313
  errata?: Errata
18961
19314
  }
18962
19315
 
19316
+ export interface RecipeTradeSecret {
19317
+ /**
19318
+ * The AP value of the trade secret.
19319
+ */
19320
+ ap_value: number
19321
+
19322
+ /**
19323
+ * The prerequisites of the trade secret, if any.
19324
+ */
19325
+ prerequisites?: PlainGeneralPrerequisites
19326
+ }
19327
+
18963
19328
  export interface Elixir {
18964
19329
  /**
18965
19330
  * Effect type(s) of an alchemical poison.
@@ -19080,18 +19445,6 @@ export type LaboratoryLevel =
19080
19445
  kind: "AlchemistsLaboratory"
19081
19446
  }
19082
19447
 
19083
- export interface RecipeTradeSecret {
19084
- /**
19085
- * The AP value of the trade secret.
19086
- */
19087
- ap_value: number
19088
-
19089
- /**
19090
- * The prerequisites of the trade secret, if any.
19091
- */
19092
- prerequisites?: PlainGeneralPrerequisites
19093
- }
19094
-
19095
19448
  export interface EquipmentOfBlessedOnes {
19096
19449
  /**
19097
19450
  * The cost in silverthalers.
@@ -19830,6 +20183,16 @@ export interface MagicalArtifact {
19830
20183
  */
19831
20184
  weight?: Weight
19832
20185
 
20186
+ /**
20187
+ * The complexity of crafting the item.
20188
+ */
20189
+ complexity?: Complexity
20190
+
20191
+ /**
20192
+ * The item can also be used either as an improvised weapon or as an armor, although this is not the primary use case of the item.
20193
+ */
20194
+ combat_use?: CombatUse
20195
+
19833
20196
  /**
19834
20197
  * All translations for the entry, identified by IETF language tag (BCP47).
19835
20198
  */
@@ -20168,6 +20531,11 @@ export interface AnimalVenom {
20168
20531
  * If `false`, the poison cannot be extracted.
20169
20532
  */
20170
20533
  is_extractable: boolean
20534
+
20535
+ /**
20536
+ * AP value and prerequisites of the poison’s trade secret.
20537
+ */
20538
+ trade_secret?: RecipeTradeSecret
20171
20539
  }
20172
20540
 
20173
20541
  export type AnimalVenomLevel =
@@ -20886,6 +21254,16 @@ export interface Vehicle {
20886
21254
  */
20887
21255
  cost: Cost
20888
21256
 
21257
+ /**
21258
+ * The weight in kg.
21259
+ */
21260
+ weight?: Weight
21261
+
21262
+ /**
21263
+ * The complexity of crafting the item.
21264
+ */
21265
+ complexity?: Complexity
21266
+
20889
21267
  /**
20890
21268
  * All translations for the entry, identified by IETF language tag (BCP47).
20891
21269
  */
@@ -21302,6 +21680,10 @@ export interface PersonalityTraitTranslation {
21302
21680
  export type PersonalityTraitPrerequisites = PlainPrerequisites<PersonalityTraitPrerequisiteGroup>
21303
21681
 
21304
21682
  export type PersonalityTraitPrerequisiteGroup =
21683
+ | {
21684
+ kind: "Race"
21685
+ Race: RacePrerequisite
21686
+ }
21305
21687
  | {
21306
21688
  kind: "Culture"
21307
21689
  Culture: CulturePrerequisite