@optolith/database-schema 0.50.1 → 0.52.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (115) hide show
  1. package/CHANGELOG.md +24 -0
  2. package/gen/types.d.ts +643 -13
  3. package/lib/cache/activatableSelectOptions.js +3 -0
  4. package/lib/main.js +6 -0
  5. package/lib/types/Advantage.d.ts +33 -0
  6. package/lib/types/Blessing.d.ts +1 -0
  7. package/lib/types/Cantrip.d.ts +1 -0
  8. package/lib/types/Ceremony.d.ts +6 -0
  9. package/lib/types/DerivedCharacteristic.d.ts +3 -0
  10. package/lib/types/Disadvantage.d.ts +30 -0
  11. package/lib/types/FamiliarsTrick.d.ts +4 -0
  12. package/lib/types/LiturgicalChant.d.ts +6 -0
  13. package/lib/types/Locale.d.ts +6 -0
  14. package/lib/types/Locale.js +6 -0
  15. package/lib/types/Profession.d.ts +42 -0
  16. package/lib/types/Ritual.d.ts +6 -0
  17. package/lib/types/Spell.d.ts +6 -0
  18. package/lib/types/Talisman.d.ts +1 -0
  19. package/lib/types/_ActivatableAdventurePointsValue.d.ts +6 -0
  20. package/lib/types/_ActivatableAutomatic.d.ts +3 -0
  21. package/lib/types/_ActivatableNonMundane.d.ts +74 -0
  22. package/lib/types/_ActivatableNonMundane.js +2 -0
  23. package/lib/types/_ActivatableSelectOptionCategory.d.ts +48 -0
  24. package/lib/types/_ActivatableSelectOptions.d.ts +30 -0
  25. package/lib/types/_ActivatableSkill.d.ts +14 -0
  26. package/lib/types/_ActivatableSkillCost.d.ts +5 -0
  27. package/lib/types/_ActivatableSkillDuration.d.ts +7 -0
  28. package/lib/types/_ActivatableSkillDuration.js +1 -0
  29. package/lib/types/_Identifier.d.ts +6 -0
  30. package/lib/types/_Identifier.js +12 -0
  31. package/lib/types/_IdentifierGroup.d.ts +12 -0
  32. package/lib/types/_IdentifierGroup.js +4 -1
  33. package/lib/types/equipment/item/HerbalPreservation.d.ts +111 -0
  34. package/lib/types/equipment/item/HerbalPreservation.js +78 -0
  35. package/lib/types/equipment/item/Plant.d.ts +36 -4
  36. package/lib/types/equipment/item/Plant.js +69 -7
  37. package/lib/types/equipment/item/sub/Biome.d.ts +12 -0
  38. package/lib/types/equipment/item/sub/Biome.js +4 -0
  39. package/lib/types/equipment/item/sub/BotanicRegion.d.ts +7 -0
  40. package/lib/types/equipment/item/sub/BotanicRegion.js +30 -0
  41. package/lib/types/equipment/item/sub/SubBiome.d.ts +13 -0
  42. package/lib/types/equipment/item/sub/SubBiome.js +31 -0
  43. package/lib/types/index.d.ts +6 -0
  44. package/lib/types/index.js +6 -0
  45. package/lib/types/magicalActions/AnimistPower.d.ts +5 -0
  46. package/lib/types/magicalActions/Bannzeichen.d.ts +2 -0
  47. package/lib/types/magicalActions/Curse.d.ts +2 -0
  48. package/lib/types/magicalActions/DominationRitual.d.ts +2 -0
  49. package/lib/types/magicalActions/ElvenMagicalSong.d.ts +1 -0
  50. package/lib/types/magicalActions/GeodeRitual.d.ts +1 -0
  51. package/lib/types/magicalActions/GoblinRitual.d.ts +2 -0
  52. package/lib/types/magicalActions/JesterTrick.d.ts +3 -0
  53. package/lib/types/magicalActions/MagicalMelody.d.ts +1 -0
  54. package/lib/types/magicalActions/MagicalRune.d.ts +2 -0
  55. package/lib/types/magicalActions/ZibiljaRitual.d.ts +2 -0
  56. package/lib/types/prerequisites/PrerequisiteGroups.d.ts +21 -0
  57. package/lib/types/prerequisites/single/ActivatablePrerequisite.d.ts +3 -0
  58. package/lib/types/specialAbility/AdvancedCombatSpecialAbility.d.ts +30 -0
  59. package/lib/types/specialAbility/AdvancedKarmaSpecialAbility.d.ts +30 -0
  60. package/lib/types/specialAbility/AdvancedMagicalSpecialAbility.d.ts +30 -0
  61. package/lib/types/specialAbility/AdvancedSkillSpecialAbility.d.ts +30 -0
  62. package/lib/types/specialAbility/AncestorGlyph.d.ts +30 -0
  63. package/lib/types/specialAbility/BlessedTradition.d.ts +30 -0
  64. package/lib/types/specialAbility/BrawlingSpecialAbility.d.ts +30 -0
  65. package/lib/types/specialAbility/CeremonialItemSpecialAbility.d.ts +30 -0
  66. package/lib/types/specialAbility/CombatSpecialAbility.d.ts +30 -0
  67. package/lib/types/specialAbility/CombatStyleSpecialAbility.d.ts +30 -0
  68. package/lib/types/specialAbility/CommandSpecialAbility.d.ts +30 -0
  69. package/lib/types/specialAbility/FamiliarSpecialAbility.d.ts +30 -0
  70. package/lib/types/specialAbility/FatePointSexSpecialAbility.d.ts +30 -0
  71. package/lib/types/specialAbility/FatePointSpecialAbility.d.ts +30 -0
  72. package/lib/types/specialAbility/GeneralSpecialAbility.d.ts +30 -0
  73. package/lib/types/specialAbility/KarmaSpecialAbility.d.ts +30 -0
  74. package/lib/types/specialAbility/LiturgicalStyleSpecialAbility.d.ts +30 -0
  75. package/lib/types/specialAbility/LycantropicGift.d.ts +30 -0
  76. package/lib/types/specialAbility/MagicStyleSpecialAbility.d.ts +30 -0
  77. package/lib/types/specialAbility/MagicalSpecialAbility.d.ts +30 -0
  78. package/lib/types/specialAbility/MagicalTradition.d.ts +30 -0
  79. package/lib/types/specialAbility/PactGift.d.ts +33 -0
  80. package/lib/types/specialAbility/ProtectiveWardingCircleSpecialAbility.d.ts +30 -0
  81. package/lib/types/specialAbility/Sermon.d.ts +30 -0
  82. package/lib/types/specialAbility/SexSpecialAbility.d.ts +30 -0
  83. package/lib/types/specialAbility/SikaryanDrainSpecialAbility.d.ts +30 -0
  84. package/lib/types/specialAbility/SkillStyleSpecialAbility.d.ts +30 -0
  85. package/lib/types/specialAbility/VampiricGift.d.ts +30 -0
  86. package/lib/types/specialAbility/Vision.d.ts +30 -0
  87. package/lib/types/specialAbility/sub/TradeSecret.d.ts +27 -0
  88. package/lib/types/traditionArtifacts/ArcaneOrbEnchantment.d.ts +67 -0
  89. package/lib/types/traditionArtifacts/AttireEnchantment.d.ts +67 -0
  90. package/lib/types/traditionArtifacts/Beutelzauber.d.ts +67 -0
  91. package/lib/types/traditionArtifacts/BowlEnchantment.d.ts +67 -0
  92. package/lib/types/traditionArtifacts/CauldronEnchantment.d.ts +67 -0
  93. package/lib/types/traditionArtifacts/ChronicleEnchantment.d.ts +67 -0
  94. package/lib/types/traditionArtifacts/DaggerRitual.d.ts +67 -0
  95. package/lib/types/traditionArtifacts/FoolsHatEnchantment.d.ts +67 -0
  96. package/lib/types/traditionArtifacts/Haubenzauber.d.ts +67 -0
  97. package/lib/types/traditionArtifacts/Hauerkettenzauber.d.ts +442 -0
  98. package/lib/types/traditionArtifacts/Hauerkettenzauber.js +34 -0
  99. package/lib/types/traditionArtifacts/InstrumentEnchantment.d.ts +67 -0
  100. package/lib/types/traditionArtifacts/Keulenzauber.d.ts +442 -0
  101. package/lib/types/traditionArtifacts/Keulenzauber.js +35 -0
  102. package/lib/types/traditionArtifacts/Krallenkettenzauber.d.ts +67 -0
  103. package/lib/types/traditionArtifacts/Kristallkugelzauber.d.ts +67 -0
  104. package/lib/types/traditionArtifacts/OrbEnchantment.d.ts +67 -0
  105. package/lib/types/traditionArtifacts/RingEnchantment.d.ts +67 -0
  106. package/lib/types/traditionArtifacts/Schweinetrommelzauber.d.ts +442 -0
  107. package/lib/types/traditionArtifacts/Schweinetrommelzauber.js +34 -0
  108. package/lib/types/traditionArtifacts/SickleRitual.d.ts +67 -0
  109. package/lib/types/traditionArtifacts/SpellSwordEnchantment.d.ts +67 -0
  110. package/lib/types/traditionArtifacts/StaffEnchantment.d.ts +67 -0
  111. package/lib/types/traditionArtifacts/ToyEnchantment.d.ts +67 -0
  112. package/lib/types/traditionArtifacts/Trinkhornzauber.d.ts +67 -0
  113. package/lib/types/traditionArtifacts/WandEnchantment.d.ts +67 -0
  114. package/lib/types/traditionArtifacts/WeaponEnchantment.d.ts +67 -0
  115. package/package.json +1 -1
package/gen/types.d.ts CHANGED
@@ -33,6 +33,7 @@ export type EntityMap = {
33
33
  BlessedTradition: BlessedTradition
34
34
  Blessing: Blessing
35
35
  Book: Book
36
+ BotanicRegion: BotanicRegion
36
37
  BowlEnchantment: BowlEnchantment
37
38
  BrawlingSpecialAbility: BrawlingSpecialAbility
38
39
  Brew: Brew
@@ -82,7 +83,9 @@ export type EntityMap = {
82
83
  Guideline: Guideline
83
84
  HairColor: HairColor
84
85
  Haubenzauber: Haubenzauber
86
+ Hauerkettenzauber: Hauerkettenzauber
85
87
  HerbalAid: HerbalAid
88
+ HerbalPreservation: HerbalPreservation
86
89
  HomunculusType: HomunculusType
87
90
  IlluminationLightSource: IlluminationLightSource
88
91
  IlluminationRefillOrSupply: IlluminationRefillOrSupply
@@ -91,6 +94,7 @@ export type EntityMap = {
91
94
  JesterTrick: JesterTrick
92
95
  Jewelry: Jewelry
93
96
  KarmaSpecialAbility: KarmaSpecialAbility
97
+ Keulenzauber: Keulenzauber
94
98
  Krallenkettenzauber: Krallenkettenzauber
95
99
  Kristallkugelzauber: Kristallkugelzauber
96
100
  Laboratory: Laboratory
@@ -144,6 +148,7 @@ export type EntityMap = {
144
148
  RingEnchantment: RingEnchantment
145
149
  Ritual: Ritual
146
150
  RopeOrChain: RopeOrChain
151
+ Schweinetrommelzauber: Schweinetrommelzauber
147
152
  Script: Script
148
153
  Sermon: Sermon
149
154
  Service: Service
@@ -163,6 +168,7 @@ export type EntityMap = {
163
168
  StaffEnchantment: StaffEnchantment
164
169
  State: State
165
170
  Stationery: Stationery
171
+ SubBiome: SubBiome
166
172
  Subject: Subject
167
173
  Talisman: Talisman
168
174
  TargetCategory: TargetCategory
@@ -186,6 +192,7 @@ export type EntityMap = {
186
192
 
187
193
  export type ChildEntityMap = {
188
194
  BannzeichenOption: [BannzeichenOption, "parent", BannzeichenOption["parent"]]
195
+ BotanicRegion: [BotanicRegion, "parent", BotanicRegion["parent"]]
189
196
  Enhancement: [Enhancement, "parent", Enhancement["parent"]]
190
197
  GeneralSelectOption: [GeneralSelectOption, "parent", GeneralSelectOption["parent"]]
191
198
  LanguageSpecialization: [LanguageSpecialization, "parent", LanguageSpecialization["parent"]]
@@ -200,6 +207,7 @@ export type ChildEntityMap = {
200
207
  RaceVariant: [RaceVariant, "race", RaceVariant["race"]]
201
208
  SkillApplication: [SkillApplication, "parent", SkillApplication["parent"]]
202
209
  SkillUse: [SkillUse, "parent", SkillUse["parent"]]
210
+ SubBiome: [SubBiome, "parent", SubBiome["parent"]]
203
211
  }
204
212
 
205
213
  export type EnumMap = {
@@ -322,6 +330,7 @@ export type EnumMap = {
322
330
  GoblinRitualRangeValue: GoblinRitualRangeValue
323
331
  GradientColor: GradientColor
324
332
  HerbalAidCombatUse: HerbalAidCombatUse
333
+ HerbalPreservationLongevityValue: HerbalPreservationLongevityValue
325
334
  HitZone: HitZone
326
335
  ImprovementCost: ImprovementCost
327
336
  IndefiniteArcaneEnergyCostModifierArithmetic: IndefiniteArcaneEnergyCostModifierArithmetic
@@ -370,6 +379,9 @@ export type EnumMap = {
370
379
  PenaltyByAttackReplacement: PenaltyByAttackReplacement
371
380
  PenaltySelectionOptions: PenaltySelectionOptions
372
381
  PersonalityTraitPrerequisiteGroup: PersonalityTraitPrerequisiteGroup
382
+ PlantApplications: PlantApplications
383
+ PlantDifficulty: PlantDifficulty
384
+ PlantOccurrenceTier: PlantOccurrenceTier
373
385
  PlantPrice: PlantPrice
374
386
  PlantRarity: PlantRarity
375
387
  PlantRecipe: PlantRecipe
@@ -654,6 +666,8 @@ export type TypeAliasMap = {
654
666
  HeadHitZone: HeadHitZone
655
667
  HeadHitZoneCombinationPossibilities: HeadHitZoneCombinationPossibilities
656
668
  HerbalAidRecipe: HerbalAidRecipe
669
+ HerbalPreservationLongevity: HerbalPreservationLongevity
670
+ HerbalPreservationLongevityExpression: HerbalPreservationLongevityExpression
657
671
  Immediate: Immediate
658
672
  ImprovisedWeapon: ImprovisedWeapon
659
673
  IndefiniteArcaneEnergyCost: IndefiniteArcaneEnergyCost
@@ -667,6 +681,7 @@ export type TypeAliasMap = {
667
681
  IndefiniteFamiliarsTrickProperty: IndefiniteFamiliarsTrickProperty
668
682
  IndefiniteMagicalDanceCost: IndefiniteMagicalDanceCost
669
683
  IndefiniteOneTimeCost: IndefiniteOneTimeCost
684
+ IndefinitePlantDescription: IndefinitePlantDescription
670
685
  IndefinitePlantPrice: IndefinitePlantPrice
671
686
  IndefinitePoisonCost: IndefinitePoisonCost
672
687
  IndefinitePoisonTime: IndefinitePoisonTime
@@ -760,6 +775,7 @@ export type TypeAliasMap = {
760
775
  PlainGeneralPrerequisites: PlainGeneralPrerequisites
761
776
  PlainPrerequisites: PlainPrerequisites<unknown>
762
777
  PlantEffect: PlantEffect
778
+ PlantLongevity: PlantLongevity
763
779
  PlantOccurences: PlantOccurences
764
780
  PlantOccurrence: PlantOccurrence
765
781
  PlantPoison: PlantPoison
@@ -2008,6 +2024,12 @@ export interface Locale {
2008
2024
  ".input {$value :number} .input {$style :string} {{{$value} years}}": string & { __params: { "value": number; "style": string } }
2009
2025
  "{$value} years": string & { __params: { "value": StringableTranslationParameter } }
2010
2026
  "years": string
2027
+ ".input {$value :number} .input {$style :string} {{{$value} dcs.}}": string & { __params: { "value": number; "style": string } }
2028
+ "{$value} dcs.": string & { __params: { "value": StringableTranslationParameter } }
2029
+ "dcs.": string
2030
+ ".input {$value :number} .input {$style :string} {{{$value} decades}}": string & { __params: { "value": number; "style": string } }
2031
+ "{$value} decades": string & { __params: { "value": StringableTranslationParameter } }
2032
+ "decades": string
2011
2033
  ".input {$value :number} .input {$style :string} {{{$value} cent.}}": string & { __params: { "value": number; "style": string } }
2012
2034
  "{$value} cent.": string & { __params: { "value": StringableTranslationParameter } }
2013
2035
  "cent.": string
@@ -2847,6 +2869,10 @@ export type ActivatableIdentifier =
2847
2869
  kind: "Haubenzauber"
2848
2870
  Haubenzauber: Haubenzauber_ID
2849
2871
  }
2872
+ | {
2873
+ kind: "Hauerkettenzauber"
2874
+ Hauerkettenzauber: Hauerkettenzauber_ID
2875
+ }
2850
2876
  | {
2851
2877
  kind: "InstrumentEnchantment"
2852
2878
  InstrumentEnchantment: InstrumentEnchantment_ID
@@ -2855,6 +2881,10 @@ export type ActivatableIdentifier =
2855
2881
  kind: "KarmaSpecialAbility"
2856
2882
  KarmaSpecialAbility: KarmaSpecialAbility_ID
2857
2883
  }
2884
+ | {
2885
+ kind: "Keulenzauber"
2886
+ Keulenzauber: Keulenzauber_ID
2887
+ }
2858
2888
  | {
2859
2889
  kind: "Krallenkettenzauber"
2860
2890
  Krallenkettenzauber: Krallenkettenzauber_ID
@@ -2903,6 +2933,10 @@ export type ActivatableIdentifier =
2903
2933
  kind: "RingEnchantment"
2904
2934
  RingEnchantment: RingEnchantment_ID
2905
2935
  }
2936
+ | {
2937
+ kind: "Schweinetrommelzauber"
2938
+ Schweinetrommelzauber: Schweinetrommelzauber_ID
2939
+ }
2906
2940
  | {
2907
2941
  kind: "Sermon"
2908
2942
  Sermon: Sermon_ID
@@ -3235,6 +3269,10 @@ export type SelectOptionParentIdentifier =
3235
3269
  kind: "Haubenzauber"
3236
3270
  Haubenzauber: Haubenzauber_ID
3237
3271
  }
3272
+ | {
3273
+ kind: "Hauerkettenzauber"
3274
+ Hauerkettenzauber: Hauerkettenzauber_ID
3275
+ }
3238
3276
  | {
3239
3277
  kind: "InstrumentEnchantment"
3240
3278
  InstrumentEnchantment: InstrumentEnchantment_ID
@@ -3243,6 +3281,10 @@ export type SelectOptionParentIdentifier =
3243
3281
  kind: "KarmaSpecialAbility"
3244
3282
  KarmaSpecialAbility: KarmaSpecialAbility_ID
3245
3283
  }
3284
+ | {
3285
+ kind: "Keulenzauber"
3286
+ Keulenzauber: Keulenzauber_ID
3287
+ }
3246
3288
  | {
3247
3289
  kind: "Krallenkettenzauber"
3248
3290
  Krallenkettenzauber: Krallenkettenzauber_ID
@@ -3291,6 +3333,10 @@ export type SelectOptionParentIdentifier =
3291
3333
  kind: "RingEnchantment"
3292
3334
  RingEnchantment: RingEnchantment_ID
3293
3335
  }
3336
+ | {
3337
+ kind: "Schweinetrommelzauber"
3338
+ Schweinetrommelzauber: Schweinetrommelzauber_ID
3339
+ }
3294
3340
  | {
3295
3341
  kind: "Sermon"
3296
3342
  Sermon: Sermon_ID
@@ -7003,6 +7049,9 @@ export type DurationUnit =
7003
7049
  | {
7004
7050
  kind: "Years"
7005
7051
  }
7052
+ | {
7053
+ kind: "Decades"
7054
+ }
7006
7055
  | {
7007
7056
  kind: "Centuries"
7008
7057
  }
@@ -10111,6 +10160,10 @@ export type ProfessionSpecialAbilityIdentifier =
10111
10160
  kind: "Haubenzauber"
10112
10161
  Haubenzauber: Haubenzauber_ID
10113
10162
  }
10163
+ | {
10164
+ kind: "Hauerkettenzauber"
10165
+ Hauerkettenzauber: Hauerkettenzauber_ID
10166
+ }
10114
10167
  | {
10115
10168
  kind: "InstrumentEnchantment"
10116
10169
  InstrumentEnchantment: InstrumentEnchantment_ID
@@ -10119,6 +10172,10 @@ export type ProfessionSpecialAbilityIdentifier =
10119
10172
  kind: "KarmaSpecialAbility"
10120
10173
  KarmaSpecialAbility: KarmaSpecialAbility_ID
10121
10174
  }
10175
+ | {
10176
+ kind: "Keulenzauber"
10177
+ Keulenzauber: Keulenzauber_ID
10178
+ }
10122
10179
  | {
10123
10180
  kind: "Krallenkettenzauber"
10124
10181
  Krallenkettenzauber: Krallenkettenzauber_ID
@@ -10167,6 +10224,10 @@ export type ProfessionSpecialAbilityIdentifier =
10167
10224
  kind: "RingEnchantment"
10168
10225
  RingEnchantment: RingEnchantment_ID
10169
10226
  }
10227
+ | {
10228
+ kind: "Schweinetrommelzauber"
10229
+ Schweinetrommelzauber: Schweinetrommelzauber_ID
10230
+ }
10170
10231
  | {
10171
10232
  kind: "Sermon"
10172
10233
  Sermon: Sermon_ID
@@ -10839,6 +10900,10 @@ export type ArcaneEnergyCost =
10839
10900
  kind: "ByLevel"
10840
10901
  ByLevel: ArcaneEnergyCostByLevel
10841
10902
  }
10903
+ | {
10904
+ kind: "Map"
10905
+ Map: OneTimeCostMap
10906
+ }
10842
10907
 
10843
10908
  export interface FixedArcaneEnergyCost {
10844
10909
  /**
@@ -14590,6 +14655,122 @@ export interface HaubenzauberTranslation {
14590
14655
  errata?: Errata
14591
14656
  }
14592
14657
 
14658
+ export interface Hauerkettenzauber {
14659
+ /**
14660
+ * Number of available levels.
14661
+ */
14662
+ levels?: number
14663
+
14664
+ /**
14665
+ * Rules for building the name of an activatable. These rules are used when the activatable doesn't have a custom name specified.
14666
+ */
14667
+ nameBuilderRules?: ActivatableNameBuilderRules
14668
+
14669
+ /**
14670
+ * The number stating how often you can buy the entry. The **default** depends on the entry type:
14671
+ *
14672
+ * - **Advantage:** `1` in all cases (as specified in the **Core Rules**)
14673
+ * - **Disadvantage:** `1` in all cases (as specified in the **Core Rules**)
14674
+ * - **Special Abilities:** `1` if no options can be selected, otherwise the number of possible options
14675
+ *
14676
+ * The maximum is only set if it differs from the defaults specified above.
14677
+ */
14678
+ maximum?: number
14679
+
14680
+ prerequisites?: GeneralPrerequisites
14681
+
14682
+ /**
14683
+ * The volume points the enchantment needs.
14684
+ */
14685
+ volume: Volume
14686
+
14687
+ /**
14688
+ * The cost when casting the entry.
14689
+ */
14690
+ cost?: EnchantmentCost
14691
+
14692
+ /**
14693
+ * The magic property’s identifier. `DependingOnProperty` can only be used if the special ability has an option to select a property.
14694
+ */
14695
+ property: PropertyDeclaration
14696
+
14697
+ /**
14698
+ * The adventure points value.
14699
+ */
14700
+ ap_value: AdventurePointsValue
14701
+
14702
+ /**
14703
+ * References to where in which publications this entry has been defined. Entries may also be added or removed in later printings.
14704
+ */
14705
+ src: PublicationRefs
14706
+
14707
+ /**
14708
+ * All translations for the entry, identified by IETF language tag (BCP47).
14709
+ */
14710
+ translations: {
14711
+ [localeId: string]: HauerkettenzauberTranslation
14712
+ }
14713
+ }
14714
+
14715
+ /**
14716
+ * The entity’s identifier. A UUID or a locale code if it is registered as the locale entity.
14717
+ */
14718
+ export type Hauerkettenzauber_ID = string
14719
+
14720
+ export interface HauerkettenzauberTranslation {
14721
+ /**
14722
+ * Name of the activatable entry.
14723
+ */
14724
+ name: string
14725
+
14726
+ /**
14727
+ * 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.
14728
+ */
14729
+ name_in_library?: string
14730
+
14731
+ /**
14732
+ * The effect description.
14733
+ */
14734
+ effect: string
14735
+
14736
+ /**
14737
+ * A note, appended to the generated cost string in parenthesis.
14738
+ */
14739
+ cost_note?: ResponsiveTextOptional
14740
+
14741
+ /**
14742
+ * The binding cost for an enchantment.
14743
+ * @deprecated
14744
+ */
14745
+ bindingCost?: string
14746
+
14747
+ /**
14748
+ * The AE cost.
14749
+ * @deprecated
14750
+ */
14751
+ aeCost?: string
14752
+
14753
+ /**
14754
+ * The volume points the enchantment needs.
14755
+ * @deprecated
14756
+ */
14757
+ volume?: string
14758
+
14759
+ /**
14760
+ * The string to append to the generated AP value text.
14761
+ * @deprecated
14762
+ */
14763
+ ap_value_append?: string
14764
+
14765
+ /**
14766
+ * The adventure points value.
14767
+ * @deprecated
14768
+ */
14769
+ ap_value?: string
14770
+
14771
+ errata?: Errata
14772
+ }
14773
+
14593
14774
  export interface InstrumentEnchantment {
14594
14775
  /**
14595
14776
  * Number of available levels.
@@ -14798,6 +14979,122 @@ export interface KarmaSpecialAbilityTranslation {
14798
14979
  errata?: Errata
14799
14980
  }
14800
14981
 
14982
+ export interface Keulenzauber {
14983
+ /**
14984
+ * Number of available levels.
14985
+ */
14986
+ levels?: number
14987
+
14988
+ /**
14989
+ * Rules for building the name of an activatable. These rules are used when the activatable doesn't have a custom name specified.
14990
+ */
14991
+ nameBuilderRules?: ActivatableNameBuilderRules
14992
+
14993
+ /**
14994
+ * The number stating how often you can buy the entry. The **default** depends on the entry type:
14995
+ *
14996
+ * - **Advantage:** `1` in all cases (as specified in the **Core Rules**)
14997
+ * - **Disadvantage:** `1` in all cases (as specified in the **Core Rules**)
14998
+ * - **Special Abilities:** `1` if no options can be selected, otherwise the number of possible options
14999
+ *
15000
+ * The maximum is only set if it differs from the defaults specified above.
15001
+ */
15002
+ maximum?: number
15003
+
15004
+ prerequisites?: GeneralPrerequisites
15005
+
15006
+ /**
15007
+ * The volume points the enchantment needs.
15008
+ */
15009
+ volume: Volume
15010
+
15011
+ /**
15012
+ * The cost when casting the entry.
15013
+ */
15014
+ cost?: EnchantmentCost
15015
+
15016
+ /**
15017
+ * The magic property’s identifier. `DependingOnProperty` can only be used if the special ability has an option to select a property.
15018
+ */
15019
+ property: PropertyDeclaration
15020
+
15021
+ /**
15022
+ * The adventure points value.
15023
+ */
15024
+ ap_value: AdventurePointsValue
15025
+
15026
+ /**
15027
+ * References to where in which publications this entry has been defined. Entries may also be added or removed in later printings.
15028
+ */
15029
+ src: PublicationRefs
15030
+
15031
+ /**
15032
+ * All translations for the entry, identified by IETF language tag (BCP47).
15033
+ */
15034
+ translations: {
15035
+ [localeId: string]: KeulenzauberTranslation
15036
+ }
15037
+ }
15038
+
15039
+ /**
15040
+ * The entity’s identifier. A UUID or a locale code if it is registered as the locale entity.
15041
+ */
15042
+ export type Keulenzauber_ID = string
15043
+
15044
+ export interface KeulenzauberTranslation {
15045
+ /**
15046
+ * Name of the activatable entry.
15047
+ */
15048
+ name: string
15049
+
15050
+ /**
15051
+ * 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.
15052
+ */
15053
+ name_in_library?: string
15054
+
15055
+ /**
15056
+ * The effect description.
15057
+ */
15058
+ effect: string
15059
+
15060
+ /**
15061
+ * A note, appended to the generated cost string in parenthesis.
15062
+ */
15063
+ cost_note?: ResponsiveTextOptional
15064
+
15065
+ /**
15066
+ * The binding cost for an enchantment.
15067
+ * @deprecated
15068
+ */
15069
+ bindingCost?: string
15070
+
15071
+ /**
15072
+ * The AE cost.
15073
+ * @deprecated
15074
+ */
15075
+ aeCost?: string
15076
+
15077
+ /**
15078
+ * The volume points the enchantment needs.
15079
+ * @deprecated
15080
+ */
15081
+ volume?: string
15082
+
15083
+ /**
15084
+ * The string to append to the generated AP value text.
15085
+ * @deprecated
15086
+ */
15087
+ ap_value_append?: string
15088
+
15089
+ /**
15090
+ * The adventure points value.
15091
+ * @deprecated
15092
+ */
15093
+ ap_value?: string
15094
+
15095
+ errata?: Errata
15096
+ }
15097
+
14801
15098
  export interface Krallenkettenzauber {
14802
15099
  /**
14803
15100
  * Number of available levels.
@@ -16004,7 +16301,7 @@ export interface RingEnchantmentTranslation {
16004
16301
  errata?: Errata
16005
16302
  }
16006
16303
 
16007
- export interface Sermon {
16304
+ export interface Schweinetrommelzauber {
16008
16305
  /**
16009
16306
  * Number of available levels.
16010
16307
  */
@@ -16015,13 +16312,129 @@ export interface Sermon {
16015
16312
  */
16016
16313
  nameBuilderRules?: ActivatableNameBuilderRules
16017
16314
 
16018
- /**
16019
- * Definitions for possible options for the activatable entry, derived from entry categories.
16020
- *
16021
- * 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.
16022
- */
16023
- select_options?: SelectOptions
16024
-
16315
+ /**
16316
+ * The number stating how often you can buy the entry. The **default** depends on the entry type:
16317
+ *
16318
+ * - **Advantage:** `1` in all cases (as specified in the **Core Rules**)
16319
+ * - **Disadvantage:** `1` in all cases (as specified in the **Core Rules**)
16320
+ * - **Special Abilities:** `1` if no options can be selected, otherwise the number of possible options
16321
+ *
16322
+ * The maximum is only set if it differs from the defaults specified above.
16323
+ */
16324
+ maximum?: number
16325
+
16326
+ prerequisites?: GeneralPrerequisites
16327
+
16328
+ /**
16329
+ * The volume points the enchantment needs.
16330
+ */
16331
+ volume: Volume
16332
+
16333
+ /**
16334
+ * The cost when casting the entry.
16335
+ */
16336
+ cost?: EnchantmentCost
16337
+
16338
+ /**
16339
+ * The magic property’s identifier. `DependingOnProperty` can only be used if the special ability has an option to select a property.
16340
+ */
16341
+ property: PropertyDeclaration
16342
+
16343
+ /**
16344
+ * The adventure points value.
16345
+ */
16346
+ ap_value: AdventurePointsValue
16347
+
16348
+ /**
16349
+ * References to where in which publications this entry has been defined. Entries may also be added or removed in later printings.
16350
+ */
16351
+ src: PublicationRefs
16352
+
16353
+ /**
16354
+ * All translations for the entry, identified by IETF language tag (BCP47).
16355
+ */
16356
+ translations: {
16357
+ [localeId: string]: SchweinetrommelzauberTranslation
16358
+ }
16359
+ }
16360
+
16361
+ /**
16362
+ * The entity’s identifier. A UUID or a locale code if it is registered as the locale entity.
16363
+ */
16364
+ export type Schweinetrommelzauber_ID = string
16365
+
16366
+ export interface SchweinetrommelzauberTranslation {
16367
+ /**
16368
+ * Name of the activatable entry.
16369
+ */
16370
+ name: string
16371
+
16372
+ /**
16373
+ * 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.
16374
+ */
16375
+ name_in_library?: string
16376
+
16377
+ /**
16378
+ * The effect description.
16379
+ */
16380
+ effect: string
16381
+
16382
+ /**
16383
+ * A note, appended to the generated cost string in parenthesis.
16384
+ */
16385
+ cost_note?: ResponsiveTextOptional
16386
+
16387
+ /**
16388
+ * The binding cost for an enchantment.
16389
+ * @deprecated
16390
+ */
16391
+ bindingCost?: string
16392
+
16393
+ /**
16394
+ * The AE cost.
16395
+ * @deprecated
16396
+ */
16397
+ aeCost?: string
16398
+
16399
+ /**
16400
+ * The volume points the enchantment needs.
16401
+ * @deprecated
16402
+ */
16403
+ volume?: string
16404
+
16405
+ /**
16406
+ * The string to append to the generated AP value text.
16407
+ * @deprecated
16408
+ */
16409
+ ap_value_append?: string
16410
+
16411
+ /**
16412
+ * The adventure points value.
16413
+ * @deprecated
16414
+ */
16415
+ ap_value?: string
16416
+
16417
+ errata?: Errata
16418
+ }
16419
+
16420
+ export interface Sermon {
16421
+ /**
16422
+ * Number of available levels.
16423
+ */
16424
+ levels?: number
16425
+
16426
+ /**
16427
+ * Rules for building the name of an activatable. These rules are used when the activatable doesn't have a custom name specified.
16428
+ */
16429
+ nameBuilderRules?: ActivatableNameBuilderRules
16430
+
16431
+ /**
16432
+ * Definitions for possible options for the activatable entry, derived from entry categories.
16433
+ *
16434
+ * 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.
16435
+ */
16436
+ select_options?: SelectOptions
16437
+
16025
16438
  /**
16026
16439
  * The number stating how often you can buy the entry. The **default** depends on the entry type:
16027
16440
  *
@@ -22021,6 +22434,58 @@ export interface BiomeTranslation {
22021
22434
  name: string
22022
22435
  }
22023
22436
 
22437
+ export interface SubBiome {
22438
+ /**
22439
+ * The biome this sub-biome belongs to.
22440
+ */
22441
+ parent: Biome_ID
22442
+
22443
+ /**
22444
+ * All translations for the entry, identified by IETF language tag (BCP47).
22445
+ */
22446
+ translations: {
22447
+ [localeId: string]: SubBiomeTranslation
22448
+ }
22449
+ }
22450
+
22451
+ /**
22452
+ * The entity’s identifier. A UUID or a locale code if it is registered as the locale entity.
22453
+ */
22454
+ export type SubBiome_ID = string
22455
+
22456
+ export interface SubBiomeTranslation {
22457
+ /**
22458
+ * The subbiome's name.
22459
+ */
22460
+ name: string
22461
+ }
22462
+
22463
+ export interface BotanicRegion {
22464
+ /**
22465
+ * The subbiome this region belongs to.
22466
+ */
22467
+ parent: SubBiome_ID
22468
+
22469
+ /**
22470
+ * All translations for the entry, identified by IETF language tag (BCP47).
22471
+ */
22472
+ translations: {
22473
+ [localeId: string]: BotanicRegionTranslation
22474
+ }
22475
+ }
22476
+
22477
+ /**
22478
+ * The entity’s identifier. A UUID or a locale code if it is registered as the locale entity.
22479
+ */
22480
+ export type BotanicRegion_ID = string
22481
+
22482
+ export interface BotanicRegionTranslation {
22483
+ /**
22484
+ * The region's name.
22485
+ */
22486
+ name: string
22487
+ }
22488
+
22024
22489
  export interface Book {
22025
22490
  /**
22026
22491
  * The type of book.
@@ -24823,6 +25288,90 @@ export type HerbalAidCombatUse =
24823
25288
  Armor: Armor_ID
24824
25289
  }
24825
25290
 
25291
+ export interface HerbalPreservation {
25292
+ /**
25293
+ * The types of this preservation.
25294
+ */
25295
+ types: EffectType[]
25296
+
25297
+ /**
25298
+ * How long this preservation lasts.
25299
+ */
25300
+ longevity: HerbalPreservationLongevity
25301
+
25302
+ /**
25303
+ * References to where in which publications this entry has been defined. Entries may also be added or removed in later printings.
25304
+ */
25305
+ src: PublicationRefs
25306
+
25307
+ /**
25308
+ * All translations for the entry, identified by IETF language tag (BCP47).
25309
+ */
25310
+ translations: {
25311
+ [localeId: string]: HerbalPreservationTranslation
25312
+ }
25313
+ }
25314
+
25315
+ /**
25316
+ * The entity’s identifier. A UUID or a locale code if it is registered as the locale entity.
25317
+ */
25318
+ export type HerbalPreservation_ID = string
25319
+
25320
+ export interface HerbalPreservationTranslation {
25321
+ /**
25322
+ * The herbal preservation's name.
25323
+ */
25324
+ name: string
25325
+
25326
+ /**
25327
+ * How to prepare this preservation.
25328
+ */
25329
+ preparation: string
25330
+
25331
+ /**
25332
+ * The herbal preservation's alternative effect.
25333
+ */
25334
+ alternative_effect: string
25335
+ }
25336
+
25337
+ export interface HerbalPreservationLongevity {
25338
+ /**
25339
+ * An expression that evaluates to the duration.
25340
+ */
25341
+ value: HerbalPreservationLongevityExpression
25342
+
25343
+ /**
25344
+ * The duration unit.
25345
+ */
25346
+ unit: DurationUnit
25347
+
25348
+ /**
25349
+ * All translations for the entry, identified by IETF language tag (BCP47).
25350
+ */
25351
+ translations?: {
25352
+ [localeId: string]: HerbalPreservationLongevityTranslation
25353
+ }
25354
+ }
25355
+
25356
+ export interface HerbalPreservationLongevityTranslation {
25357
+ /**
25358
+ * A replacement string.
25359
+ */
25360
+ replacement: ResponsiveTextReplace
25361
+ }
25362
+
25363
+ export type HerbalPreservationLongevityExpression = MathOperation<HerbalPreservationLongevityValue>
25364
+
25365
+ export type HerbalPreservationLongevityValue =
25366
+ | {
25367
+ kind: "Constant"
25368
+ Constant: number
25369
+ }
25370
+ | {
25371
+ kind: "Dice"
25372
+ Dice: Dice
25373
+ }
25374
+
24826
25375
  export interface HomunculusType {
24827
25376
  /**
24828
25377
  * All translations for the entry, identified by IETF language tag (BCP47).
@@ -24899,17 +25448,17 @@ export interface Plant {
24899
25448
  /**
24900
25449
  * The search difficulty for this plant.
24901
25450
  */
24902
- search_difficulty: number
25451
+ search_difficulty: PlantDifficulty
24903
25452
 
24904
25453
  /**
24905
25454
  * The identification difficulty for this plant.
24906
25455
  */
24907
- identification_difficulty: number
25456
+ identification_difficulty: PlantDifficulty
24908
25457
 
24909
25458
  /**
24910
25459
  * The applications of this plant per quality level.
24911
25460
  */
24912
- applications: [number, number, number, number, number, number]
25461
+ applications: PlantApplications
24913
25462
 
24914
25463
  /**
24915
25464
  * The plant's touch effect.
@@ -24936,6 +25485,11 @@ export interface Plant {
24936
25485
  */
24937
25486
  recipes?: PlantRecipe[]
24938
25487
 
25488
+ /**
25489
+ * The longevity of the plant.
25490
+ */
25491
+ longevity?: PlantLongevity
25492
+
24939
25493
  /**
24940
25494
  * References to where in which publications this entry has been defined. Entries may also be added or removed in later printings.
24941
25495
  */
@@ -24999,9 +25553,9 @@ export interface PlantOccurrencesTranslation {
24999
25553
 
25000
25554
  export interface PlantOccurrence {
25001
25555
  /**
25002
- * The biome this plant occurs in.
25556
+ * Where this plant occurs in.
25003
25557
  */
25004
- biome: Biome_ID
25558
+ regions: PlantOccurrenceTier
25005
25559
 
25006
25560
  /**
25007
25561
  * The rarity of this plant in the biome.
@@ -25023,6 +25577,20 @@ export interface PlantOccurrenceTranslation {
25023
25577
  note: string
25024
25578
  }
25025
25579
 
25580
+ export type PlantOccurrenceTier =
25581
+ | {
25582
+ kind: "Biomes"
25583
+ Biomes: Biome_ID[]
25584
+ }
25585
+ | {
25586
+ kind: "SubBiomes"
25587
+ SubBiomes: SubBiome_ID[]
25588
+ }
25589
+ | {
25590
+ kind: "BotanicRegions"
25591
+ BotanicRegions: BotanicRegion_ID[]
25592
+ }
25593
+
25026
25594
  /**
25027
25595
  * The rarity of a plant in a biome.
25028
25596
  */
@@ -25043,6 +25611,42 @@ export type PlantRarity =
25043
25611
  kind: "VeryRare"
25044
25612
  }
25045
25613
 
25614
+ export type PlantDifficulty =
25615
+ | {
25616
+ kind: "Constant"
25617
+ Constant: number
25618
+ }
25619
+ | {
25620
+ kind: "Indefinite"
25621
+ Indefinite: IndefinitePlantDescription
25622
+ }
25623
+
25624
+ export interface IndefinitePlantDescription {
25625
+ /**
25626
+ * All translations for the entry, identified by IETF language tag (BCP47).
25627
+ */
25628
+ translations: {
25629
+ [localeId: string]: IndefinitePlantDescriptionTranslation
25630
+ }
25631
+ }
25632
+
25633
+ export interface IndefinitePlantDescriptionTranslation {
25634
+ /**
25635
+ * A description of whatever is indefinite of this plant.
25636
+ */
25637
+ description: string
25638
+ }
25639
+
25640
+ export type PlantApplications =
25641
+ | {
25642
+ kind: "Constant"
25643
+ Constant: [number, number, number, number, number, number]
25644
+ }
25645
+ | {
25646
+ kind: "Indefinite"
25647
+ Indefinite: IndefinitePlantDescription
25648
+ }
25649
+
25046
25650
  export interface PlantEffect {
25047
25651
  /**
25048
25652
  * The effect type of this plant effect.
@@ -25212,6 +25816,32 @@ export interface IndefiniteRecipeTranslation {
25212
25816
  description: string
25213
25817
  }
25214
25818
 
25819
+ export interface PlantLongevity {
25820
+ /**
25821
+ * The preservations with alternative effect of this preserved plant
25822
+ */
25823
+ preservations?: HerbalPreservation_ID[]
25824
+
25825
+ /**
25826
+ * All translations for the entry, identified by IETF language tag (BCP47).
25827
+ */
25828
+ translations: {
25829
+ [localeId: string]: PlantLongevityTranslation
25830
+ }
25831
+ }
25832
+
25833
+ export interface PlantLongevityTranslation {
25834
+ /**
25835
+ * The longevity of the raw plant
25836
+ */
25837
+ raw: string
25838
+
25839
+ /**
25840
+ * The longevity of the preserved plant
25841
+ */
25842
+ preserved?: string
25843
+ }
25844
+
25215
25845
  export interface Region {
25216
25846
  /**
25217
25847
  * All translations for the entry, identified by IETF language tag (BCP47).