@optolith/database-schema 0.110.0 → 0.110.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 (53) hide show
  1. package/CHANGELOG.md +6 -0
  2. package/gen/types.d.ts +642 -496
  3. package/lib/types/Advantage.d.ts +13 -0
  4. package/lib/types/DerivedCharacteristic.d.ts +1 -0
  5. package/lib/types/Disadvantage.d.ts +12 -0
  6. package/lib/types/Profession.d.ts +17 -0
  7. package/lib/types/Settings.d.ts +3 -0
  8. package/lib/types/_ActivatableAdventurePointsValue.d.ts +2 -0
  9. package/lib/types/_ActivatableAutomatic.d.ts +1 -0
  10. package/lib/types/_ActivatableSelectOptionCategory.d.ts +20 -0
  11. package/lib/types/_ActivatableSelectOptions.d.ts +22 -0
  12. package/lib/types/_Identifier.d.ts +1 -0
  13. package/lib/types/_Identifier.js +2 -0
  14. package/lib/types/_IdentifierGroup.d.ts +5 -0
  15. package/lib/types/_IdentifierGroup.js +2 -1
  16. package/lib/types/index.d.ts +1 -0
  17. package/lib/types/index.js +1 -0
  18. package/lib/types/prerequisites/PrerequisiteGroups.d.ts +8 -0
  19. package/lib/types/prerequisites/single/ActivatablePrerequisite.d.ts +1 -0
  20. package/lib/types/prerequisites/single/RatedMinimumNumberPrerequisiteForProfession.d.ts +2 -0
  21. package/lib/types/specialAbility/AdvancedCombatSpecialAbility.d.ts +12 -0
  22. package/lib/types/specialAbility/AdvancedKarmaSpecialAbility.d.ts +12 -0
  23. package/lib/types/specialAbility/AdvancedMagicalSpecialAbility.d.ts +12 -0
  24. package/lib/types/specialAbility/AdvancedSkillSpecialAbility.d.ts +12 -0
  25. package/lib/types/specialAbility/AncestorGlyph.d.ts +12 -0
  26. package/lib/types/specialAbility/BlessedTradition.d.ts +12 -0
  27. package/lib/types/specialAbility/BrawlingSpecialAbility.d.ts +12 -0
  28. package/lib/types/specialAbility/CeremonialItemSpecialAbility.d.ts +12 -0
  29. package/lib/types/specialAbility/CombatSpecialAbility.d.ts +12 -0
  30. package/lib/types/specialAbility/CombatStyleSpecialAbility.d.ts +12 -0
  31. package/lib/types/specialAbility/CommandSpecialAbility.d.ts +12 -0
  32. package/lib/types/specialAbility/FamiliarSpecialAbility.d.ts +12 -0
  33. package/lib/types/specialAbility/FatePointSexSpecialAbility.d.ts +12 -0
  34. package/lib/types/specialAbility/FatePointSpecialAbility.d.ts +12 -0
  35. package/lib/types/specialAbility/GeneralSpecialAbility.d.ts +12 -0
  36. package/lib/types/specialAbility/KarmaSpecialAbility.d.ts +12 -0
  37. package/lib/types/specialAbility/LiturgicalStyleSpecialAbility.d.ts +12 -0
  38. package/lib/types/specialAbility/LycantropicGift.d.ts +12 -0
  39. package/lib/types/specialAbility/MagicStyleSpecialAbility.d.ts +12 -0
  40. package/lib/types/specialAbility/MagicalSpecialAbility.d.ts +12 -0
  41. package/lib/types/specialAbility/MagicalTradition.d.ts +12 -0
  42. package/lib/types/specialAbility/PactGift.d.ts +13 -0
  43. package/lib/types/specialAbility/ProtectiveWardingCircleSpecialAbility.d.ts +12 -0
  44. package/lib/types/specialAbility/Sermon.d.ts +12 -0
  45. package/lib/types/specialAbility/SexSpecialAbility.d.ts +12 -0
  46. package/lib/types/specialAbility/SikaryanDrainSpecialAbility.d.ts +12 -0
  47. package/lib/types/specialAbility/SkillStyleSpecialAbility.d.ts +12 -0
  48. package/lib/types/specialAbility/VampiricGift.d.ts +12 -0
  49. package/lib/types/specialAbility/Vision.d.ts +12 -0
  50. package/lib/types/specialAbility/sub/TradeSecret.d.ts +11 -0
  51. package/lib/types/traditionArtifacts/Adoruzepterzauber.d.ts +1 -0
  52. package/lib/types/traditionArtifacts/Adoruzepterzauber.js +5 -0
  53. package/package.json +1 -1
package/gen/types.d.ts CHANGED
@@ -1,6 +1,7 @@
1
1
  // Generated by TSONDB -- do not edit manually.
2
2
 
3
3
  export type EntityMap = {
4
+ Adoruzepterzauber: Adoruzepterzauber
4
5
  AdvancedCombatSpecialAbility: AdvancedCombatSpecialAbility
5
6
  AdvancedKarmaSpecialAbility: AdvancedKarmaSpecialAbility
6
7
  AdvancedMagicalSpecialAbility: AdvancedMagicalSpecialAbility
@@ -3008,6 +3009,10 @@ export type ActivatableIdentifier =
3008
3009
  kind: "Disadvantage"
3009
3010
  Disadvantage: Disadvantage_ID
3010
3011
  }
3012
+ | {
3013
+ kind: "Adoruzepterzauber"
3014
+ Adoruzepterzauber: Adoruzepterzauber_ID
3015
+ }
3011
3016
  | {
3012
3017
  kind: "AdvancedCombatSpecialAbility"
3013
3018
  AdvancedCombatSpecialAbility: AdvancedCombatSpecialAbility_ID
@@ -3436,6 +3441,10 @@ export type SelectOptionParentIdentifier =
3436
3441
  kind: "Disadvantage"
3437
3442
  Disadvantage: Disadvantage_ID
3438
3443
  }
3444
+ | {
3445
+ kind: "Adoruzepterzauber"
3446
+ Adoruzepterzauber: Adoruzepterzauber_ID
3447
+ }
3439
3448
  | {
3440
3449
  kind: "AdvancedCombatSpecialAbility"
3441
3450
  AdvancedCombatSpecialAbility: AdvancedCombatSpecialAbility_ID
@@ -10509,6 +10518,9 @@ export interface SpecialAbilitiesForAdventurePointsOption {
10509
10518
  }
10510
10519
 
10511
10520
  export type SpecialAbilitiesForAdventurePointsOptionGroup =
10521
+ | {
10522
+ kind: "Adoruzepterzauber"
10523
+ }
10512
10524
  | {
10513
10525
  kind: "AdvancedCombatSpecialAbility"
10514
10526
  }
@@ -10984,6 +10996,10 @@ export interface SpellworksForChosenProperty {
10984
10996
  }
10985
10997
 
10986
10998
  export type SpecialAbilityIdentifier =
10999
+ | {
11000
+ kind: "Adoruzepterzauber"
11001
+ Adoruzepterzauber: Adoruzepterzauber_ID
11002
+ }
10987
11003
  | {
10988
11004
  kind: "AdvancedCombatSpecialAbility"
10989
11005
  AdvancedCombatSpecialAbility: AdvancedCombatSpecialAbility_ID
@@ -11201,10 +11217,7 @@ export type SpecialAbilityIdentifier =
11201
11217
  WeaponEnchantment: WeaponEnchantment_ID
11202
11218
  }
11203
11219
 
11204
- /**
11205
- * Magical Special Abilities that are being unlocked by Magic Style Special Abilities.
11206
- */
11207
- export interface AdvancedMagicalSpecialAbility {
11220
+ export interface Adoruzepterzauber {
11208
11221
  /**
11209
11222
  * Number of available levels.
11210
11223
  */
@@ -11235,6 +11248,21 @@ export interface AdvancedMagicalSpecialAbility {
11235
11248
 
11236
11249
  prerequisites?: GeneralPrerequisites
11237
11250
 
11251
+ /**
11252
+ * The volume points the enchantment needs.
11253
+ */
11254
+ volume: Volume
11255
+
11256
+ /**
11257
+ * The cost when casting the entry.
11258
+ */
11259
+ cost?: EnchantmentCost
11260
+
11261
+ /**
11262
+ * The magic property’s identifier. `DependingOnProperty` can only be used if the special ability has an option to select a property.
11263
+ */
11264
+ property: PropertyDeclaration
11265
+
11238
11266
  /**
11239
11267
  * The adventure points value.
11240
11268
  */
@@ -11249,16 +11277,16 @@ export interface AdvancedMagicalSpecialAbility {
11249
11277
  * All translations for the entry, identified by IETF language tag (BCP47).
11250
11278
  */
11251
11279
  translations: {
11252
- [localeId: string]: AdvancedMagicalSpecialAbilityTranslation
11280
+ [localeId: string]: AdoruzepterzauberTranslation
11253
11281
  }
11254
11282
  }
11255
11283
 
11256
11284
  /**
11257
11285
  * The entity’s identifier. A UUID or a locale code if it is registered as the locale entity.
11258
11286
  */
11259
- export type AdvancedMagicalSpecialAbility_ID = string
11287
+ export type Adoruzepterzauber_ID = string
11260
11288
 
11261
- export interface AdvancedMagicalSpecialAbilityTranslation {
11289
+ export interface AdoruzepterzauberTranslation {
11262
11290
  /**
11263
11291
  * Name of the activatable entry.
11264
11292
  */
@@ -11270,9 +11298,32 @@ export interface AdvancedMagicalSpecialAbilityTranslation {
11270
11298
  name_in_library?: string
11271
11299
 
11272
11300
  /**
11273
- * The rule text.
11301
+ * The effect description.
11274
11302
  */
11275
- rules: string
11303
+ effect: string
11304
+
11305
+ /**
11306
+ * A note, appended to the generated cost string in parenthesis.
11307
+ */
11308
+ cost_note?: ResponsiveTextOptional
11309
+
11310
+ /**
11311
+ * The binding cost for an enchantment.
11312
+ * @deprecated
11313
+ */
11314
+ bindingCost?: string
11315
+
11316
+ /**
11317
+ * The AE cost.
11318
+ * @deprecated
11319
+ */
11320
+ aeCost?: string
11321
+
11322
+ /**
11323
+ * The volume points the enchantment needs.
11324
+ * @deprecated
11325
+ */
11326
+ volume?: string
11276
11327
 
11277
11328
  /**
11278
11329
  * The string to append to the generated AP value text.
@@ -11290,797 +11341,885 @@ export interface AdvancedMagicalSpecialAbilityTranslation {
11290
11341
  }
11291
11342
 
11292
11343
  /**
11293
- * General Special Abilities that are being unlocked by Skill Style Special Abilities.
11344
+ * The volume points the enchantment needs.
11294
11345
  */
11295
- export interface AdvancedSkillSpecialAbility {
11346
+ export type Volume =
11347
+ | {
11348
+ kind: "Fixed"
11349
+ Fixed: FixedVolume
11350
+ }
11351
+ | {
11352
+ kind: "PerLevel"
11353
+ PerLevel: VolumePerLevel
11354
+ }
11355
+ | {
11356
+ kind: "ByLevel"
11357
+ ByLevel: VolumeByLevel
11358
+ }
11359
+ | {
11360
+ kind: "Map"
11361
+ Map: VolumeMap
11362
+ }
11363
+ | {
11364
+ kind: "DerivedFromSelection"
11365
+ DerivedFromSelection: VolumeDerivedFromSelection
11366
+ }
11367
+
11368
+ export interface FixedVolume {
11296
11369
  /**
11297
- * Number of available levels.
11370
+ * The volume points.
11298
11371
  */
11299
- levels?: number
11372
+ points: number
11373
+ }
11300
11374
 
11375
+ export interface VolumePerLevel {
11301
11376
  /**
11302
- * Rules for building the name of an activatable. These rules are used when the activatable doesn't have a custom name specified.
11377
+ * The volume points per level.
11303
11378
  */
11304
- nameBuilderRules?: ActivatableNameBuilderRules
11379
+ points: number
11380
+ }
11305
11381
 
11382
+ export interface VolumeByLevel {
11306
11383
  /**
11307
- * Definitions for possible options for the activatable entry, derived from entry categories.
11308
- *
11309
- * 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.
11384
+ * The volume points for each level. The first element is the volume points for the first level, the second element is the volume points for the second level, and so on.
11310
11385
  */
11311
- select_options?: SelectOptions
11386
+ list: VolumeByLevelItem[]
11387
+ }
11312
11388
 
11389
+ export interface VolumeByLevelItem {
11313
11390
  /**
11314
- * The number stating how often you can buy the entry. The **default** depends on the entry type:
11315
- *
11316
- * - **Advantage:** `1` in all cases (as specified in the **Core Rules**)
11317
- * - **Disadvantage:** `1` in all cases (as specified in the **Core Rules**)
11318
- * - **Special Abilities:** `1` if no options can be selected, otherwise the number of possible options
11319
- *
11320
- * The maximum is only set if it differs from the defaults specified above.
11391
+ * The volume points for this level.
11321
11392
  */
11322
- maximum?: number
11393
+ points: number
11394
+ }
11323
11395
 
11324
- prerequisites?: GeneralPrerequisites
11396
+ /**
11397
+ * A content that is `3/4/5 Points for Chimera, Daimonid, Golems, Undead / Fairies, Ghosts / Demons, Elementals` may be respresented as the following map:
11398
+ *
11399
+ * ```yaml
11400
+ * options:
11401
+ * - points: 3
11402
+ * associated_options:
11403
+ * - id:
11404
+ * tag: General
11405
+ * value: # ...
11406
+ * # ...
11407
+ * translations:
11408
+ * en-US:
11409
+ * label: "Chimera, Daimonid, Golems, Undead"
11410
+ * label_standalone: "Chimera/Daimonid/Golems/Undead"
11411
+ * - points: 4
11412
+ * associated_options:
11413
+ * - id:
11414
+ * tag: General
11415
+ * value: # ...
11416
+ * # ...
11417
+ * translations:
11418
+ * en-US:
11419
+ * label: "Fairies, Ghosts"
11420
+ * label_standalone: "Fairies/Ghosts"
11421
+ * - points: 5
11422
+ * associated_options:
11423
+ * - id:
11424
+ * tag: General
11425
+ * value: # ...
11426
+ * # ...
11427
+ * translations:
11428
+ * en-US:
11429
+ * label: "Demons, Elementals"
11430
+ * label_standalone: "Demons/Elementals"
11431
+ * ```
11432
+ *
11433
+ * This will generate the exact same string as seen above. The associated options are not present in the example, but they link to the options the volume specification is meant for.
11434
+ */
11435
+ export type VolumeMap = ParameterMap<VolumeMapOptionValue>
11325
11436
 
11437
+ export interface VolumeMapOptionValue {
11326
11438
  /**
11327
- * The adventure points value.
11439
+ * The full permanent AE cost value for this option.
11328
11440
  */
11329
- ap_value: AdventurePointsValue
11441
+ points: number
11330
11442
 
11331
11443
  /**
11332
- * References to where in which publications this entry has been defined. Entries may also be added or removed in later printings.
11444
+ * Links to the options this volume specification is meant for.
11333
11445
  */
11334
- src: PublicationRefs
11446
+ associated_options: VolumeMapOptionAssociatedOption[]
11447
+ }
11335
11448
 
11449
+ export interface VolumeMapOptionAssociatedOption {
11336
11450
  /**
11337
- * All translations for the entry, identified by IETF language tag (BCP47).
11451
+ * The option’s identifier.
11338
11452
  */
11339
- translations: {
11340
- [localeId: string]: AdvancedSkillSpecialAbilityTranslation
11453
+ id: VolumePointsOptionReferenceIdentifier
11454
+ }
11455
+
11456
+ export type VolumePointsOptionReferenceIdentifier =
11457
+ | {
11458
+ kind: "General"
11459
+ General: GeneralSelectOption_ID
11460
+ }
11461
+ | {
11462
+ kind: "AnimalShapeSize"
11463
+ AnimalShapeSize: AnimalShapeSize_ID
11341
11464
  }
11465
+
11466
+ export interface VolumeDerivedFromSelection {
11467
+ /**
11468
+ * The volume for the selection if it does not define a specific one.
11469
+ */
11470
+ fallback: number
11342
11471
  }
11343
11472
 
11473
+ export type EnchantmentCost =
11474
+ | {
11475
+ kind: "ArcaneEnergyCost"
11476
+ ArcaneEnergyCost: ArcaneEnergyCost
11477
+ }
11478
+ | {
11479
+ kind: "BindingCost"
11480
+ BindingCost: BindingCost
11481
+ }
11482
+
11344
11483
  /**
11345
- * The entity’s identifier. A UUID or a locale code if it is registered as the locale entity.
11484
+ * The AE cost.
11346
11485
  */
11347
- export type AdvancedSkillSpecialAbility_ID = string
11486
+ export type ArcaneEnergyCost =
11487
+ | {
11488
+ kind: "Fixed"
11489
+ Fixed: FixedArcaneEnergyCost
11490
+ }
11491
+ | {
11492
+ kind: "PerCountable"
11493
+ PerCountable: ArcaneEnergyCostPerCountable
11494
+ }
11495
+ | {
11496
+ kind: "Interval"
11497
+ Interval: IntervalArcaneEnergyCost
11498
+ }
11499
+ | {
11500
+ kind: "ActivationAndHalfInterval"
11501
+ ActivationAndHalfInterval: ActivationAndHalfIntervalArcaneEnergyCost
11502
+ }
11503
+ | {
11504
+ kind: "Indefinite"
11505
+ Indefinite: IndefiniteArcaneEnergyCost
11506
+ }
11507
+ | {
11508
+ kind: "Disjunction"
11509
+ Disjunction: ArcaneEnergyCostDisjunction
11510
+ }
11511
+ | {
11512
+ kind: "Variable"
11513
+ }
11514
+ | {
11515
+ kind: "ByLevel"
11516
+ ByLevel: ArcaneEnergyCostByLevel
11517
+ }
11518
+ | {
11519
+ kind: "Map"
11520
+ Map: StandaloneCostMap
11521
+ }
11348
11522
 
11349
- export interface AdvancedSkillSpecialAbilityTranslation {
11523
+ export interface FixedArcaneEnergyCost {
11350
11524
  /**
11351
- * Name of the activatable entry.
11525
+ * The AE cost value.
11352
11526
  */
11353
- name: string
11527
+ value: number
11354
11528
 
11355
11529
  /**
11356
- * 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.
11530
+ * Set to `true` if the AE costs are permanent.
11357
11531
  */
11358
- name_in_library?: string
11532
+ is_permanent?: boolean
11359
11533
 
11360
11534
  /**
11361
- * The rule text.
11535
+ * Specified if the AE cost `value` has to be paid for each time interval.
11362
11536
  */
11363
- rules: string
11537
+ interval?: DurationUnitValue
11364
11538
 
11365
11539
  /**
11366
- * The string to append to the generated AP value text.
11367
- * @deprecated
11540
+ * The AE cost are per level of the enchantment. It may either be displayed in a compressed way (e.g. `1 AE per level`) or in a verbose way (e.g. `1 AE for level I; 2 AE for level II`).
11368
11541
  */
11369
- ap_value_append?: string
11542
+ per_level?: FixedArcaneEnergyCostPerLevel
11370
11543
 
11371
11544
  /**
11372
- * The adventure points value.
11373
- * @deprecated
11545
+ * All translations for the entry, identified by IETF language tag (BCP47).
11374
11546
  */
11375
- ap_value?: string
11376
-
11377
- errata?: Errata
11547
+ translations?: {
11548
+ [localeId: string]: FixedArcaneEnergyCostTranslation
11549
+ }
11378
11550
  }
11379
11551
 
11380
- /**
11381
- * A type of magical signs, originating from Nostria.
11382
- */
11383
- export interface AncestorGlyph {
11384
- /**
11385
- * Number of available levels.
11386
- */
11387
- levels?: number
11388
-
11389
- /**
11390
- * Rules for building the name of an activatable. These rules are used when the activatable doesn't have a custom name specified.
11391
- */
11392
- nameBuilderRules?: ActivatableNameBuilderRules
11393
-
11394
- /**
11395
- * Definitions for possible options for the activatable entry, derived from entry categories.
11396
- *
11397
- * 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.
11398
- */
11399
- select_options?: SelectOptions
11400
-
11552
+ export interface FixedArcaneEnergyCostTranslation {
11401
11553
  /**
11402
- * The number stating how often you can buy the entry. The **default** depends on the entry type:
11403
- *
11404
- * - **Advantage:** `1` in all cases (as specified in the **Core Rules**)
11405
- * - **Disadvantage:** `1` in all cases (as specified in the **Core Rules**)
11406
- * - **Special Abilities:** `1` if no options can be selected, otherwise the number of possible options
11407
- *
11408
- * The maximum is only set if it differs from the defaults specified above.
11554
+ * A note, appended to the generated option string in parenthesis.
11409
11555
  */
11410
- maximum?: number
11411
-
11412
- prerequisites?: GeneralPrerequisites
11556
+ note?: ResponsiveTextOptional
11557
+ }
11413
11558
 
11414
- /**
11415
- * The AE cost of the ancestor glyph.
11416
- */
11417
- ae_cost: number
11559
+ /**
11560
+ * The AE cost are per level of the enchantment. It may either be displayed in a compressed way (e.g. `1 AE per level`) or in a verbose way (e.g. `1 AE for level I; 2 AE for level II`).
11561
+ */
11562
+ export type FixedArcaneEnergyCostPerLevel =
11563
+ | {
11564
+ kind: "Compressed"
11565
+ }
11566
+ | {
11567
+ kind: "Verbose"
11568
+ }
11418
11569
 
11570
+ export interface ArcaneEnergyCostPerCountable {
11419
11571
  /**
11420
- * The adventure points value.
11572
+ * The AE cost value that has to be per a specific countable entity.
11421
11573
  */
11422
- ap_value: AdventurePointsValue
11574
+ value: number
11423
11575
 
11424
11576
  /**
11425
- * References to where in which publications this entry has been defined. Entries may also be added or removed in later printings.
11577
+ * If defined, in addition to the cost per entity you have to pay a flat amount, regardless of the entity count.
11426
11578
  */
11427
- src: PublicationRefs
11579
+ base_value?: number
11428
11580
 
11429
11581
  /**
11430
11582
  * All translations for the entry, identified by IETF language tag (BCP47).
11431
11583
  */
11432
11584
  translations: {
11433
- [localeId: string]: AncestorGlyphTranslation
11585
+ [localeId: string]: ArcaneEnergyCostPerCountableTranslation
11434
11586
  }
11435
11587
  }
11436
11588
 
11437
- /**
11438
- * The entity’s identifier. A UUID or a locale code if it is registered as the locale entity.
11439
- */
11440
- export type AncestorGlyph_ID = string
11441
-
11442
- export interface AncestorGlyphTranslation {
11443
- /**
11444
- * Name of the activatable entry.
11445
- */
11446
- name: string
11447
-
11589
+ export interface ArcaneEnergyCostPerCountableTranslation {
11448
11590
  /**
11449
- * 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.
11591
+ * The cost have to be per a specific countable entity, e.g. `8 AE per person`.
11450
11592
  */
11451
- name_in_library?: string
11593
+ per: ResponsiveText
11452
11594
 
11453
11595
  /**
11454
- * The rule text.
11596
+ * A note, appended to the generated string in parenthesis.
11455
11597
  */
11456
- rules: string
11598
+ note?: ResponsiveTextOptional
11599
+ }
11457
11600
 
11601
+ export interface IntervalArcaneEnergyCost {
11458
11602
  /**
11459
- * The string to append to the generated AP value text.
11460
- * @deprecated
11603
+ * The AE cost value that has to be payed each interval.
11461
11604
  */
11462
- ap_value_append?: string
11605
+ value: number
11463
11606
 
11464
11607
  /**
11465
- * The adventure points value.
11466
- * @deprecated
11608
+ * The time interval for which the AE cost `value` has to be paid.
11467
11609
  */
11468
- ap_value?: string
11469
-
11470
- errata?: Errata
11610
+ interval: DurationUnitValue
11471
11611
  }
11472
11612
 
11473
- export interface ArcaneOrbEnchantment {
11613
+ export interface ActivationAndHalfIntervalArcaneEnergyCost {
11474
11614
  /**
11475
- * Number of available levels.
11615
+ * The AE cost value that has to be payed for activation. Half of this value has to be payed each interval.
11476
11616
  */
11477
- levels?: number
11617
+ value: number
11478
11618
 
11479
11619
  /**
11480
- * Rules for building the name of an activatable. These rules are used when the activatable doesn't have a custom name specified.
11620
+ * The time interval for which the AE cost `value` has to be paid.
11481
11621
  */
11482
- nameBuilderRules?: ActivatableNameBuilderRules
11622
+ interval: DurationUnitValue
11623
+ }
11483
11624
 
11625
+ export interface IndefiniteArcaneEnergyCost {
11484
11626
  /**
11485
- * Definitions for possible options for the activatable entry, derived from entry categories.
11486
- *
11487
- * 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.
11627
+ * Specified if the indefinite AP cost description needs to be modified by a certain value.
11488
11628
  */
11489
- select_options?: SelectOptions
11629
+ modifier?: IndefiniteArcaneEnergyCostModifier
11490
11630
 
11491
11631
  /**
11492
- * The number stating how often you can buy the entry. The **default** depends on the entry type:
11493
- *
11494
- * - **Advantage:** `1` in all cases (as specified in the **Core Rules**)
11495
- * - **Disadvantage:** `1` in all cases (as specified in the **Core Rules**)
11496
- * - **Special Abilities:** `1` if no options can be selected, otherwise the number of possible options
11497
- *
11498
- * The maximum is only set if it differs from the defaults specified above.
11632
+ * All translations for the entry, identified by IETF language tag (BCP47).
11499
11633
  */
11500
- maximum?: number
11501
-
11502
- prerequisites?: GeneralPrerequisites
11634
+ translations: {
11635
+ [localeId: string]: IndefiniteArcaneEnergyCostTranslation
11636
+ }
11637
+ }
11503
11638
 
11639
+ export interface IndefiniteArcaneEnergyCostTranslation {
11504
11640
  /**
11505
- * The volume points the enchantment needs.
11641
+ * A description of where the cost come from.
11506
11642
  */
11507
- volume: Volume
11643
+ description: ResponsiveText
11644
+ }
11508
11645
 
11646
+ export interface IndefiniteArcaneEnergyCostModifier {
11509
11647
  /**
11510
- * The cost when casting the entry.
11648
+ * The arithmetic how to apply the `value` to the `base`.
11511
11649
  */
11512
- cost?: EnchantmentCost
11650
+ arithmetic: IndefiniteArcaneEnergyCostModifierArithmetic
11513
11651
 
11514
11652
  /**
11515
- * The magic property’s identifier. `DependingOnProperty` can only be used if the special ability has an option to select a property.
11653
+ * The value that is applied to the `base` using the defined `arithmetic`.
11516
11654
  */
11517
- property: PropertyDeclaration
11655
+ value: number
11656
+ }
11657
+
11658
+ export type IndefiniteArcaneEnergyCostModifierArithmetic =
11659
+ | {
11660
+ kind: "Add"
11661
+ }
11518
11662
 
11663
+ export interface ArcaneEnergyCostDisjunction {
11519
11664
  /**
11520
- * The adventure points value.
11665
+ * The possible AE cost values.
11521
11666
  */
11522
- ap_value: AdventurePointsValue
11667
+ options: ArcaneEnergyCostDisjunctionOption[]
11668
+ }
11523
11669
 
11670
+ export interface ArcaneEnergyCostDisjunctionOption {
11524
11671
  /**
11525
- * References to where in which publications this entry has been defined. Entries may also be added or removed in later printings.
11672
+ * A possible AE cost value.
11526
11673
  */
11527
- src: PublicationRefs
11674
+ value: number
11528
11675
 
11529
11676
  /**
11530
11677
  * All translations for the entry, identified by IETF language tag (BCP47).
11531
11678
  */
11532
- translations: {
11533
- [localeId: string]: ArcaneOrbEnchantmentTranslation
11679
+ translations?: {
11680
+ [localeId: string]: ArcaneEnergyCostDisjunctionOptionTranslation
11534
11681
  }
11535
11682
  }
11536
11683
 
11537
- /**
11538
- * The entity’s identifier. A UUID or a locale code if it is registered as the locale entity.
11539
- */
11540
- export type ArcaneOrbEnchantment_ID = string
11541
-
11542
- export interface ArcaneOrbEnchantmentTranslation {
11543
- /**
11544
- * Name of the activatable entry.
11545
- */
11546
- name: string
11547
-
11548
- /**
11549
- * 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.
11550
- */
11551
- name_in_library?: string
11552
-
11553
- /**
11554
- * The effect description.
11555
- */
11556
- effect: string
11557
-
11558
- /**
11559
- * A note, appended to the generated cost string in parenthesis.
11560
- */
11561
- cost_note?: ResponsiveTextOptional
11562
-
11684
+ export interface ArcaneEnergyCostDisjunctionOptionTranslation {
11563
11685
  /**
11564
- * The binding cost for an enchantment.
11565
- * @deprecated
11686
+ * A note, appended to the generated option string in parenthesis.
11566
11687
  */
11567
- bindingCost?: string
11688
+ note?: ResponsiveTextOptional
11689
+ }
11568
11690
 
11691
+ export interface ArcaneEnergyCostByLevel {
11569
11692
  /**
11570
- * The AE cost.
11571
- * @deprecated
11693
+ * A continuous range of arcane energy cost for each level. The first element is the AE cost for the first level, the second element is the AE cost for the second level, and so on.
11572
11694
  */
11573
- aeCost?: string
11695
+ levels: ArcaneEnergyCostByLevelLevel[]
11574
11696
 
11575
11697
  /**
11576
- * The volume points the enchantment needs.
11577
- * @deprecated
11698
+ * How to display the AE cost by level.
11578
11699
  */
11579
- volume?: string
11700
+ style: ArcaneEnergyCostByLevelStyle
11701
+ }
11580
11702
 
11703
+ export interface ArcaneEnergyCostByLevelLevel {
11581
11704
  /**
11582
- * The string to append to the generated AP value text.
11583
- * @deprecated
11705
+ * The arcane energy cost for this level.
11584
11706
  */
11585
- ap_value_append?: string
11707
+ value: number
11708
+ }
11586
11709
 
11587
- /**
11588
- * The adventure points value.
11589
- * @deprecated
11590
- */
11591
- ap_value?: string
11710
+ /**
11711
+ * The AE cost are defined by level of the enchantment. It may either be displayed in a compressed way (e.g. `1/2 AE for level I/II`) or in a verbose way (e.g. `1 AE for level I; 2 AE for level II`).
11712
+ */
11713
+ export type ArcaneEnergyCostByLevelStyle =
11714
+ | {
11715
+ kind: "Compressed"
11716
+ }
11717
+ | {
11718
+ kind: "Verbose"
11719
+ }
11592
11720
 
11593
- errata?: Errata
11594
- }
11721
+ export type StandaloneCostMap = ParameterMap<NonModifiableOneTimeCostMapOptionValue>
11595
11722
 
11596
11723
  /**
11597
- * The volume points the enchantment needs.
11724
+ * The binding cost for an enchantment.
11598
11725
  */
11599
- export type Volume =
11726
+ export type BindingCost =
11600
11727
  | {
11601
11728
  kind: "Fixed"
11602
- Fixed: FixedVolume
11729
+ Fixed: FixedBindingCost
11603
11730
  }
11604
11731
  | {
11605
11732
  kind: "PerLevel"
11606
- PerLevel: VolumePerLevel
11607
- }
11608
- | {
11609
- kind: "ByLevel"
11610
- ByLevel: VolumeByLevel
11733
+ PerLevel: BindingCostPerLevel
11611
11734
  }
11612
11735
  | {
11613
11736
  kind: "Map"
11614
- Map: VolumeMap
11737
+ Map: BindingCostMap
11615
11738
  }
11616
11739
  | {
11617
11740
  kind: "DerivedFromSelection"
11618
- DerivedFromSelection: VolumeDerivedFromSelection
11741
+ DerivedFromSelection: BindingCostDerivedFromSelection
11619
11742
  }
11620
11743
 
11621
- export interface FixedVolume {
11622
- /**
11623
- * The volume points.
11624
- */
11625
- points: number
11626
- }
11627
-
11628
- export interface VolumePerLevel {
11629
- /**
11630
- * The volume points per level.
11631
- */
11632
- points: number
11633
- }
11634
-
11635
- export interface VolumeByLevel {
11744
+ export interface FixedBindingCost {
11636
11745
  /**
11637
- * The volume points for each level. The first element is the volume points for the first level, the second element is the volume points for the second level, and so on.
11746
+ * The permanent AE cost.
11747
+ *
11748
+ * If the enchantment has multiple levels, it is only applied for the first level.
11638
11749
  */
11639
- list: VolumeByLevelItem[]
11750
+ permanent_value: number
11640
11751
  }
11641
11752
 
11642
- export interface VolumeByLevelItem {
11753
+ export interface BindingCostPerLevel {
11643
11754
  /**
11644
- * The volume points for this level.
11755
+ * The permanent AE cost per level.
11645
11756
  */
11646
- points: number
11757
+ permanent_value: number
11647
11758
  }
11648
11759
 
11649
11760
  /**
11650
- * A content that is `3/4/5 Points for Chimera, Daimonid, Golems, Undead / Fairies, Ghosts / Demons, Elementals` may be respresented as the following map:
11761
+ * A content that is `2/4/8 permanent AE for spell-swords with the combat technique Daggers, Swords, or Two-Handed Swords` may be respresented as the following map:
11651
11762
  *
11652
11763
  * ```yaml
11653
11764
  * options:
11654
- * - points: 3
11655
- * associated_options:
11656
- * - id:
11657
- * tag: General
11658
- * value: # ...
11659
- * # ...
11765
+ * - permanent_value: 2
11660
11766
  * translations:
11661
11767
  * en-US:
11662
- * label: "Chimera, Daimonid, Golems, Undead"
11663
- * label_standalone: "Chimera/Daimonid/Golems/Undead"
11664
- * - points: 4
11665
- * associated_options:
11666
- * - id:
11667
- * tag: General
11668
- * value: # ...
11669
- * # ...
11768
+ * label: "Daggers"
11769
+ * label_standalone: "Dagger"
11770
+ * - permanent_value: 4
11670
11771
  * translations:
11671
11772
  * en-US:
11672
- * label: "Fairies, Ghosts"
11673
- * label_standalone: "Fairies/Ghosts"
11674
- * - points: 5
11675
- * associated_options:
11676
- * - id:
11677
- * tag: General
11678
- * value: # ...
11679
- * # ...
11773
+ * label: "Swords"
11774
+ * label_standalone: "Sword"
11775
+ * - permanent_value: 8
11680
11776
  * translations:
11681
11777
  * en-US:
11682
- * label: "Demons, Elementals"
11683
- * label_standalone: "Demons/Elementals"
11778
+ * label: "Two-Handed Swords"
11779
+ * label_standalone: "Two-Handed Sword"
11780
+ * list_prepend: "spell-swords with the combat technique"
11684
11781
  * ```
11685
11782
  *
11686
- * This will generate the exact same string as seen above. The associated options are not present in the example, but they link to the options the volume specification is meant for.
11783
+ * This will generate the exact same string as seen above.
11687
11784
  */
11688
- export type VolumeMap = ParameterMap<VolumeMapOptionValue>
11785
+ export type BindingCostMap = ParameterMap<BindingCostMapOptionValue>
11689
11786
 
11690
- export interface VolumeMapOptionValue {
11787
+ export interface BindingCostMapOptionValue {
11691
11788
  /**
11692
11789
  * The full permanent AE cost value for this option.
11693
11790
  */
11694
- points: number
11791
+ permanentValue: number
11792
+ }
11695
11793
 
11794
+ export interface BindingCostDerivedFromSelection {
11696
11795
  /**
11697
- * Links to the options this volume specification is meant for.
11796
+ * The binding cost for the selection if it does not define a specific one.
11698
11797
  */
11699
- associated_options: VolumeMapOptionAssociatedOption[]
11700
- }
11798
+ fallback: number
11701
11799
 
11702
- export interface VolumeMapOptionAssociatedOption {
11703
11800
  /**
11704
- * The option’s identifier.
11801
+ * All translations for the entry, identified by IETF language tag (BCP47).
11705
11802
  */
11706
- id: VolumePointsOptionReferenceIdentifier
11803
+ translations?: {
11804
+ [localeId: string]: BindingCostDerivedFromSelectionTranslation
11805
+ }
11707
11806
  }
11708
11807
 
11709
- export type VolumePointsOptionReferenceIdentifier =
11710
- | {
11711
- kind: "General"
11712
- General: GeneralSelectOption_ID
11713
- }
11714
- | {
11715
- kind: "AnimalShapeSize"
11716
- AnimalShapeSize: AnimalShapeSize_ID
11717
- }
11808
+ export interface BindingCostDerivedFromSelectionTranslation {
11809
+ /**
11810
+ * Place a string between the `for` and the grouped option names.
11811
+ */
11812
+ listPrepend?: string
11718
11813
 
11719
- export interface VolumeDerivedFromSelection {
11720
11814
  /**
11721
- * The volume for the selection if it does not define a specific one.
11815
+ * A replacement for the generated text if it would not match the original one.
11722
11816
  */
11723
- fallback: number
11817
+ replacement?: string
11724
11818
  }
11725
11819
 
11726
- export type EnchantmentCost =
11820
+ /**
11821
+ * The magic property’s identifier. `DependingOnProperty` can only be used if the special ability has an option to select a property.
11822
+ */
11823
+ export type PropertyDeclaration =
11727
11824
  | {
11728
- kind: "ArcaneEnergyCost"
11729
- ArcaneEnergyCost: ArcaneEnergyCost
11825
+ kind: "DependingOnSelection"
11730
11826
  }
11731
11827
  | {
11732
- kind: "BindingCost"
11733
- BindingCost: BindingCost
11828
+ kind: "Fixed"
11829
+ Fixed: Property_ID
11734
11830
  }
11735
11831
 
11736
11832
  /**
11737
- * The AE cost.
11833
+ * Magical Special Abilities that are being unlocked by Magic Style Special Abilities.
11738
11834
  */
11739
- export type ArcaneEnergyCost =
11740
- | {
11741
- kind: "Fixed"
11742
- Fixed: FixedArcaneEnergyCost
11743
- }
11744
- | {
11745
- kind: "PerCountable"
11746
- PerCountable: ArcaneEnergyCostPerCountable
11747
- }
11748
- | {
11749
- kind: "Interval"
11750
- Interval: IntervalArcaneEnergyCost
11751
- }
11752
- | {
11753
- kind: "ActivationAndHalfInterval"
11754
- ActivationAndHalfInterval: ActivationAndHalfIntervalArcaneEnergyCost
11755
- }
11756
- | {
11757
- kind: "Indefinite"
11758
- Indefinite: IndefiniteArcaneEnergyCost
11759
- }
11760
- | {
11761
- kind: "Disjunction"
11762
- Disjunction: ArcaneEnergyCostDisjunction
11763
- }
11764
- | {
11765
- kind: "Variable"
11766
- }
11767
- | {
11768
- kind: "ByLevel"
11769
- ByLevel: ArcaneEnergyCostByLevel
11770
- }
11771
- | {
11772
- kind: "Map"
11773
- Map: StandaloneCostMap
11774
- }
11835
+ export interface AdvancedMagicalSpecialAbility {
11836
+ /**
11837
+ * Number of available levels.
11838
+ */
11839
+ levels?: number
11775
11840
 
11776
- export interface FixedArcaneEnergyCost {
11777
11841
  /**
11778
- * The AE cost value.
11842
+ * Rules for building the name of an activatable. These rules are used when the activatable doesn't have a custom name specified.
11779
11843
  */
11780
- value: number
11844
+ nameBuilderRules?: ActivatableNameBuilderRules
11781
11845
 
11782
11846
  /**
11783
- * Set to `true` if the AE costs are permanent.
11847
+ * Definitions for possible options for the activatable entry, derived from entry categories.
11848
+ *
11849
+ * 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.
11784
11850
  */
11785
- is_permanent?: boolean
11851
+ select_options?: SelectOptions
11786
11852
 
11787
11853
  /**
11788
- * Specified if the AE cost `value` has to be paid for each time interval.
11854
+ * The number stating how often you can buy the entry. The **default** depends on the entry type:
11855
+ *
11856
+ * - **Advantage:** `1` in all cases (as specified in the **Core Rules**)
11857
+ * - **Disadvantage:** `1` in all cases (as specified in the **Core Rules**)
11858
+ * - **Special Abilities:** `1` if no options can be selected, otherwise the number of possible options
11859
+ *
11860
+ * The maximum is only set if it differs from the defaults specified above.
11789
11861
  */
11790
- interval?: DurationUnitValue
11862
+ maximum?: number
11863
+
11864
+ prerequisites?: GeneralPrerequisites
11791
11865
 
11792
11866
  /**
11793
- * The AE cost are per level of the enchantment. It may either be displayed in a compressed way (e.g. `1 AE per level`) or in a verbose way (e.g. `1 AE for level I; 2 AE for level II`).
11867
+ * The adventure points value.
11794
11868
  */
11795
- per_level?: FixedArcaneEnergyCostPerLevel
11869
+ ap_value: AdventurePointsValue
11870
+
11871
+ /**
11872
+ * References to where in which publications this entry has been defined. Entries may also be added or removed in later printings.
11873
+ */
11874
+ src: PublicationRefs
11796
11875
 
11797
11876
  /**
11798
11877
  * All translations for the entry, identified by IETF language tag (BCP47).
11799
11878
  */
11800
- translations?: {
11801
- [localeId: string]: FixedArcaneEnergyCostTranslation
11879
+ translations: {
11880
+ [localeId: string]: AdvancedMagicalSpecialAbilityTranslation
11802
11881
  }
11803
11882
  }
11804
11883
 
11805
- export interface FixedArcaneEnergyCostTranslation {
11884
+ /**
11885
+ * The entity’s identifier. A UUID or a locale code if it is registered as the locale entity.
11886
+ */
11887
+ export type AdvancedMagicalSpecialAbility_ID = string
11888
+
11889
+ export interface AdvancedMagicalSpecialAbilityTranslation {
11806
11890
  /**
11807
- * A note, appended to the generated option string in parenthesis.
11891
+ * Name of the activatable entry.
11808
11892
  */
11809
- note?: ResponsiveTextOptional
11893
+ name: string
11894
+
11895
+ /**
11896
+ * 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.
11897
+ */
11898
+ name_in_library?: string
11899
+
11900
+ /**
11901
+ * The rule text.
11902
+ */
11903
+ rules: string
11904
+
11905
+ /**
11906
+ * The string to append to the generated AP value text.
11907
+ * @deprecated
11908
+ */
11909
+ ap_value_append?: string
11910
+
11911
+ /**
11912
+ * The adventure points value.
11913
+ * @deprecated
11914
+ */
11915
+ ap_value?: string
11916
+
11917
+ errata?: Errata
11810
11918
  }
11811
11919
 
11812
11920
  /**
11813
- * The AE cost are per level of the enchantment. It may either be displayed in a compressed way (e.g. `1 AE per level`) or in a verbose way (e.g. `1 AE for level I; 2 AE for level II`).
11921
+ * General Special Abilities that are being unlocked by Skill Style Special Abilities.
11814
11922
  */
11815
- export type FixedArcaneEnergyCostPerLevel =
11816
- | {
11817
- kind: "Compressed"
11818
- }
11819
- | {
11820
- kind: "Verbose"
11821
- }
11923
+ export interface AdvancedSkillSpecialAbility {
11924
+ /**
11925
+ * Number of available levels.
11926
+ */
11927
+ levels?: number
11822
11928
 
11823
- export interface ArcaneEnergyCostPerCountable {
11824
11929
  /**
11825
- * The AE cost value that has to be per a specific countable entity.
11930
+ * Rules for building the name of an activatable. These rules are used when the activatable doesn't have a custom name specified.
11826
11931
  */
11827
- value: number
11932
+ nameBuilderRules?: ActivatableNameBuilderRules
11828
11933
 
11829
11934
  /**
11830
- * If defined, in addition to the cost per entity you have to pay a flat amount, regardless of the entity count.
11935
+ * Definitions for possible options for the activatable entry, derived from entry categories.
11936
+ *
11937
+ * 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.
11831
11938
  */
11832
- base_value?: number
11939
+ select_options?: SelectOptions
11940
+
11941
+ /**
11942
+ * The number stating how often you can buy the entry. The **default** depends on the entry type:
11943
+ *
11944
+ * - **Advantage:** `1` in all cases (as specified in the **Core Rules**)
11945
+ * - **Disadvantage:** `1` in all cases (as specified in the **Core Rules**)
11946
+ * - **Special Abilities:** `1` if no options can be selected, otherwise the number of possible options
11947
+ *
11948
+ * The maximum is only set if it differs from the defaults specified above.
11949
+ */
11950
+ maximum?: number
11951
+
11952
+ prerequisites?: GeneralPrerequisites
11953
+
11954
+ /**
11955
+ * The adventure points value.
11956
+ */
11957
+ ap_value: AdventurePointsValue
11958
+
11959
+ /**
11960
+ * References to where in which publications this entry has been defined. Entries may also be added or removed in later printings.
11961
+ */
11962
+ src: PublicationRefs
11833
11963
 
11834
11964
  /**
11835
11965
  * All translations for the entry, identified by IETF language tag (BCP47).
11836
11966
  */
11837
11967
  translations: {
11838
- [localeId: string]: ArcaneEnergyCostPerCountableTranslation
11968
+ [localeId: string]: AdvancedSkillSpecialAbilityTranslation
11839
11969
  }
11840
11970
  }
11841
11971
 
11842
- export interface ArcaneEnergyCostPerCountableTranslation {
11972
+ /**
11973
+ * The entity’s identifier. A UUID or a locale code if it is registered as the locale entity.
11974
+ */
11975
+ export type AdvancedSkillSpecialAbility_ID = string
11976
+
11977
+ export interface AdvancedSkillSpecialAbilityTranslation {
11843
11978
  /**
11844
- * The cost have to be per a specific countable entity, e.g. `8 AE per person`.
11979
+ * Name of the activatable entry.
11980
+ */
11981
+ name: string
11982
+
11983
+ /**
11984
+ * 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.
11985
+ */
11986
+ name_in_library?: string
11987
+
11988
+ /**
11989
+ * The rule text.
11990
+ */
11991
+ rules: string
11992
+
11993
+ /**
11994
+ * The string to append to the generated AP value text.
11995
+ * @deprecated
11996
+ */
11997
+ ap_value_append?: string
11998
+
11999
+ /**
12000
+ * The adventure points value.
12001
+ * @deprecated
12002
+ */
12003
+ ap_value?: string
12004
+
12005
+ errata?: Errata
12006
+ }
12007
+
12008
+ /**
12009
+ * A type of magical signs, originating from Nostria.
12010
+ */
12011
+ export interface AncestorGlyph {
12012
+ /**
12013
+ * Number of available levels.
12014
+ */
12015
+ levels?: number
12016
+
12017
+ /**
12018
+ * Rules for building the name of an activatable. These rules are used when the activatable doesn't have a custom name specified.
12019
+ */
12020
+ nameBuilderRules?: ActivatableNameBuilderRules
12021
+
12022
+ /**
12023
+ * Definitions for possible options for the activatable entry, derived from entry categories.
12024
+ *
12025
+ * 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.
12026
+ */
12027
+ select_options?: SelectOptions
12028
+
12029
+ /**
12030
+ * The number stating how often you can buy the entry. The **default** depends on the entry type:
12031
+ *
12032
+ * - **Advantage:** `1` in all cases (as specified in the **Core Rules**)
12033
+ * - **Disadvantage:** `1` in all cases (as specified in the **Core Rules**)
12034
+ * - **Special Abilities:** `1` if no options can be selected, otherwise the number of possible options
12035
+ *
12036
+ * The maximum is only set if it differs from the defaults specified above.
12037
+ */
12038
+ maximum?: number
12039
+
12040
+ prerequisites?: GeneralPrerequisites
12041
+
12042
+ /**
12043
+ * The AE cost of the ancestor glyph.
11845
12044
  */
11846
- per: ResponsiveText
12045
+ ae_cost: number
11847
12046
 
11848
12047
  /**
11849
- * A note, appended to the generated string in parenthesis.
12048
+ * The adventure points value.
11850
12049
  */
11851
- note?: ResponsiveTextOptional
11852
- }
12050
+ ap_value: AdventurePointsValue
11853
12051
 
11854
- export interface IntervalArcaneEnergyCost {
11855
12052
  /**
11856
- * The AE cost value that has to be payed each interval.
12053
+ * References to where in which publications this entry has been defined. Entries may also be added or removed in later printings.
11857
12054
  */
11858
- value: number
12055
+ src: PublicationRefs
11859
12056
 
11860
12057
  /**
11861
- * The time interval for which the AE cost `value` has to be paid.
12058
+ * All translations for the entry, identified by IETF language tag (BCP47).
11862
12059
  */
11863
- interval: DurationUnitValue
12060
+ translations: {
12061
+ [localeId: string]: AncestorGlyphTranslation
12062
+ }
11864
12063
  }
11865
12064
 
11866
- export interface ActivationAndHalfIntervalArcaneEnergyCost {
12065
+ /**
12066
+ * The entity’s identifier. A UUID or a locale code if it is registered as the locale entity.
12067
+ */
12068
+ export type AncestorGlyph_ID = string
12069
+
12070
+ export interface AncestorGlyphTranslation {
11867
12071
  /**
11868
- * The AE cost value that has to be payed for activation. Half of this value has to be payed each interval.
12072
+ * Name of the activatable entry.
11869
12073
  */
11870
- value: number
12074
+ name: string
11871
12075
 
11872
12076
  /**
11873
- * The time interval for which the AE cost `value` has to be paid.
12077
+ * 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.
11874
12078
  */
11875
- interval: DurationUnitValue
11876
- }
12079
+ name_in_library?: string
11877
12080
 
11878
- export interface IndefiniteArcaneEnergyCost {
11879
12081
  /**
11880
- * Specified if the indefinite AP cost description needs to be modified by a certain value.
12082
+ * The rule text.
11881
12083
  */
11882
- modifier?: IndefiniteArcaneEnergyCostModifier
12084
+ rules: string
11883
12085
 
11884
12086
  /**
11885
- * All translations for the entry, identified by IETF language tag (BCP47).
12087
+ * The string to append to the generated AP value text.
12088
+ * @deprecated
11886
12089
  */
11887
- translations: {
11888
- [localeId: string]: IndefiniteArcaneEnergyCostTranslation
11889
- }
11890
- }
12090
+ ap_value_append?: string
11891
12091
 
11892
- export interface IndefiniteArcaneEnergyCostTranslation {
11893
12092
  /**
11894
- * A description of where the cost come from.
12093
+ * The adventure points value.
12094
+ * @deprecated
11895
12095
  */
11896
- description: ResponsiveText
12096
+ ap_value?: string
12097
+
12098
+ errata?: Errata
11897
12099
  }
11898
12100
 
11899
- export interface IndefiniteArcaneEnergyCostModifier {
12101
+ export interface ArcaneOrbEnchantment {
11900
12102
  /**
11901
- * The arithmetic how to apply the `value` to the `base`.
12103
+ * Number of available levels.
11902
12104
  */
11903
- arithmetic: IndefiniteArcaneEnergyCostModifierArithmetic
12105
+ levels?: number
11904
12106
 
11905
12107
  /**
11906
- * The value that is applied to the `base` using the defined `arithmetic`.
12108
+ * Rules for building the name of an activatable. These rules are used when the activatable doesn't have a custom name specified.
11907
12109
  */
11908
- value: number
11909
- }
12110
+ nameBuilderRules?: ActivatableNameBuilderRules
11910
12111
 
11911
- export type IndefiniteArcaneEnergyCostModifierArithmetic =
11912
- | {
11913
- kind: "Add"
11914
- }
12112
+ /**
12113
+ * Definitions for possible options for the activatable entry, derived from entry categories.
12114
+ *
12115
+ * 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.
12116
+ */
12117
+ select_options?: SelectOptions
11915
12118
 
11916
- export interface ArcaneEnergyCostDisjunction {
11917
12119
  /**
11918
- * The possible AE cost values.
12120
+ * The number stating how often you can buy the entry. The **default** depends on the entry type:
12121
+ *
12122
+ * - **Advantage:** `1` in all cases (as specified in the **Core Rules**)
12123
+ * - **Disadvantage:** `1` in all cases (as specified in the **Core Rules**)
12124
+ * - **Special Abilities:** `1` if no options can be selected, otherwise the number of possible options
12125
+ *
12126
+ * The maximum is only set if it differs from the defaults specified above.
11919
12127
  */
11920
- options: ArcaneEnergyCostDisjunctionOption[]
11921
- }
12128
+ maximum?: number
12129
+
12130
+ prerequisites?: GeneralPrerequisites
11922
12131
 
11923
- export interface ArcaneEnergyCostDisjunctionOption {
11924
12132
  /**
11925
- * A possible AE cost value.
12133
+ * The volume points the enchantment needs.
11926
12134
  */
11927
- value: number
12135
+ volume: Volume
11928
12136
 
11929
12137
  /**
11930
- * All translations for the entry, identified by IETF language tag (BCP47).
12138
+ * The cost when casting the entry.
11931
12139
  */
11932
- translations?: {
11933
- [localeId: string]: ArcaneEnergyCostDisjunctionOptionTranslation
11934
- }
11935
- }
12140
+ cost?: EnchantmentCost
11936
12141
 
11937
- export interface ArcaneEnergyCostDisjunctionOptionTranslation {
11938
12142
  /**
11939
- * A note, appended to the generated option string in parenthesis.
12143
+ * The magic property’s identifier. `DependingOnProperty` can only be used if the special ability has an option to select a property.
11940
12144
  */
11941
- note?: ResponsiveTextOptional
11942
- }
12145
+ property: PropertyDeclaration
11943
12146
 
11944
- export interface ArcaneEnergyCostByLevel {
11945
12147
  /**
11946
- * A continuous range of arcane energy cost for each level. The first element is the AE cost for the first level, the second element is the AE cost for the second level, and so on.
12148
+ * The adventure points value.
11947
12149
  */
11948
- levels: ArcaneEnergyCostByLevelLevel[]
12150
+ ap_value: AdventurePointsValue
11949
12151
 
11950
12152
  /**
11951
- * How to display the AE cost by level.
12153
+ * References to where in which publications this entry has been defined. Entries may also be added or removed in later printings.
11952
12154
  */
11953
- style: ArcaneEnergyCostByLevelStyle
11954
- }
12155
+ src: PublicationRefs
11955
12156
 
11956
- export interface ArcaneEnergyCostByLevelLevel {
11957
12157
  /**
11958
- * The arcane energy cost for this level.
12158
+ * All translations for the entry, identified by IETF language tag (BCP47).
11959
12159
  */
11960
- value: number
12160
+ translations: {
12161
+ [localeId: string]: ArcaneOrbEnchantmentTranslation
12162
+ }
11961
12163
  }
11962
12164
 
11963
12165
  /**
11964
- * The AE cost are defined by level of the enchantment. It may either be displayed in a compressed way (e.g. `1/2 AE for level I/II`) or in a verbose way (e.g. `1 AE for level I; 2 AE for level II`).
12166
+ * The entity’s identifier. A UUID or a locale code if it is registered as the locale entity.
11965
12167
  */
11966
- export type ArcaneEnergyCostByLevelStyle =
11967
- | {
11968
- kind: "Compressed"
11969
- }
11970
- | {
11971
- kind: "Verbose"
11972
- }
11973
-
11974
- export type StandaloneCostMap = ParameterMap<NonModifiableOneTimeCostMapOptionValue>
12168
+ export type ArcaneOrbEnchantment_ID = string
11975
12169
 
11976
- /**
11977
- * The binding cost for an enchantment.
11978
- */
11979
- export type BindingCost =
11980
- | {
11981
- kind: "Fixed"
11982
- Fixed: FixedBindingCost
11983
- }
11984
- | {
11985
- kind: "PerLevel"
11986
- PerLevel: BindingCostPerLevel
11987
- }
11988
- | {
11989
- kind: "Map"
11990
- Map: BindingCostMap
11991
- }
11992
- | {
11993
- kind: "DerivedFromSelection"
11994
- DerivedFromSelection: BindingCostDerivedFromSelection
11995
- }
12170
+ export interface ArcaneOrbEnchantmentTranslation {
12171
+ /**
12172
+ * Name of the activatable entry.
12173
+ */
12174
+ name: string
11996
12175
 
11997
- export interface FixedBindingCost {
11998
12176
  /**
11999
- * The permanent AE cost.
12000
- *
12001
- * If the enchantment has multiple levels, it is only applied for the first level.
12177
+ * 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.
12002
12178
  */
12003
- permanent_value: number
12004
- }
12179
+ name_in_library?: string
12005
12180
 
12006
- export interface BindingCostPerLevel {
12007
12181
  /**
12008
- * The permanent AE cost per level.
12182
+ * The effect description.
12009
12183
  */
12010
- permanent_value: number
12011
- }
12184
+ effect: string
12012
12185
 
12013
- /**
12014
- * A content that is `2/4/8 permanent AE for spell-swords with the combat technique Daggers, Swords, or Two-Handed Swords` may be respresented as the following map:
12015
- *
12016
- * ```yaml
12017
- * options:
12018
- * - permanent_value: 2
12019
- * translations:
12020
- * en-US:
12021
- * label: "Daggers"
12022
- * label_standalone: "Dagger"
12023
- * - permanent_value: 4
12024
- * translations:
12025
- * en-US:
12026
- * label: "Swords"
12027
- * label_standalone: "Sword"
12028
- * - permanent_value: 8
12029
- * translations:
12030
- * en-US:
12031
- * label: "Two-Handed Swords"
12032
- * label_standalone: "Two-Handed Sword"
12033
- * list_prepend: "spell-swords with the combat technique"
12034
- * ```
12035
- *
12036
- * This will generate the exact same string as seen above.
12037
- */
12038
- export type BindingCostMap = ParameterMap<BindingCostMapOptionValue>
12186
+ /**
12187
+ * A note, appended to the generated cost string in parenthesis.
12188
+ */
12189
+ cost_note?: ResponsiveTextOptional
12039
12190
 
12040
- export interface BindingCostMapOptionValue {
12041
12191
  /**
12042
- * The full permanent AE cost value for this option.
12192
+ * The binding cost for an enchantment.
12193
+ * @deprecated
12043
12194
  */
12044
- permanentValue: number
12045
- }
12195
+ bindingCost?: string
12046
12196
 
12047
- export interface BindingCostDerivedFromSelection {
12048
12197
  /**
12049
- * The binding cost for the selection if it does not define a specific one.
12198
+ * The AE cost.
12199
+ * @deprecated
12050
12200
  */
12051
- fallback: number
12201
+ aeCost?: string
12052
12202
 
12053
12203
  /**
12054
- * All translations for the entry, identified by IETF language tag (BCP47).
12204
+ * The volume points the enchantment needs.
12205
+ * @deprecated
12055
12206
  */
12056
- translations?: {
12057
- [localeId: string]: BindingCostDerivedFromSelectionTranslation
12058
- }
12059
- }
12207
+ volume?: string
12060
12208
 
12061
- export interface BindingCostDerivedFromSelectionTranslation {
12062
12209
  /**
12063
- * Place a string between the `for` and the grouped option names.
12210
+ * The string to append to the generated AP value text.
12211
+ * @deprecated
12064
12212
  */
12065
- listPrepend?: string
12213
+ ap_value_append?: string
12066
12214
 
12067
12215
  /**
12068
- * A replacement for the generated text if it would not match the original one.
12216
+ * The adventure points value.
12217
+ * @deprecated
12069
12218
  */
12070
- replacement?: string
12071
- }
12219
+ ap_value?: string
12072
12220
 
12073
- /**
12074
- * The magic property’s identifier. `DependingOnProperty` can only be used if the special ability has an option to select a property.
12075
- */
12076
- export type PropertyDeclaration =
12077
- | {
12078
- kind: "DependingOnSelection"
12079
- }
12080
- | {
12081
- kind: "Fixed"
12082
- Fixed: Property_ID
12083
- }
12221
+ errata?: Errata
12222
+ }
12084
12223
 
12085
12224
  export interface AttireEnchantment {
12086
12225
  /**
@@ -18984,6 +19123,10 @@ export interface SingleProfessionSpecialAbility {
18984
19123
  }
18985
19124
 
18986
19125
  export type ProfessionSpecialAbilityIdentifier =
19126
+ | {
19127
+ kind: "Adoruzepterzauber"
19128
+ Adoruzepterzauber: Adoruzepterzauber_ID
19129
+ }
18987
19130
  | {
18988
19131
  kind: "AdvancedCombatSpecialAbility"
18989
19132
  AdvancedCombatSpecialAbility: AdvancedCombatSpecialAbility_ID
@@ -23210,6 +23353,9 @@ export interface AnySpecialAbilityOfGroupPrerequisite {
23210
23353
  }
23211
23354
 
23212
23355
  export type SpecialAbilityGroup =
23356
+ | {
23357
+ kind: "Adoruzepterzauber"
23358
+ }
23213
23359
  | {
23214
23360
  kind: "AdvancedCombatSpecialAbility"
23215
23361
  }