optolith-database-schema 0.7.0 → 0.8.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.
package/CHANGELOG.md CHANGED
@@ -2,6 +2,28 @@
2
2
 
3
3
  All notable changes to this project will be documented in this file. See [standard-version](https://github.com/conventional-changelog/standard-version) for commit guidelines.
4
4
 
5
+ ## [0.8.0](https://github.com/elyukai/optolith-database-schema/compare/v0.7.0...v0.8.0) (2023-01-03)
6
+
7
+
8
+ ### ⚠ BREAKING CHANGES
9
+
10
+ * remove none option from cost, do not use property instead
11
+ * use simple boolean to indicate implementation availability
12
+
13
+ ### Features
14
+
15
+ * add interval cost option ([6643594](https://github.com/elyukai/optolith-database-schema/commit/66435948fb567e161e6ab3ecc8e416e9cbef3441))
16
+
17
+
18
+ ### Bug Fixes
19
+
20
+ * add missing KrallenkettenzauberIdentifier and add to associated groups ([2f18a75](https://github.com/elyukai/optolith-database-schema/commit/2f18a75e4bd61f31e8cf0f62de46685c18cc603b))
21
+ * RatedIdentifier used wrong SkillIdentifier ([c528f34](https://github.com/elyukai/optolith-database-schema/commit/c528f34f10bda702d5adf5f2e6fd4948a98b9f62))
22
+
23
+
24
+ * remove none option from cost, do not use property instead ([4a1cc06](https://github.com/elyukai/optolith-database-schema/commit/4a1cc062aaa47715d54922545cb1477567416cf0))
25
+ * use simple boolean to indicate implementation availability ([4282ef3](https://github.com/elyukai/optolith-database-schema/commit/4282ef3d7567919012f65197b4bc9c94176e5720))
26
+
5
27
  ## [0.7.0](https://github.com/elyukai/optolith-database-schema/compare/v0.6.0...v0.7.0) (2022-12-25)
6
28
 
7
29
 
@@ -530,6 +530,9 @@ export declare type ArcaneEnergyCost = {
530
530
  } | {
531
531
  tag: "PerCountable";
532
532
  per_countable: ArcaneEnergyCostPerCountable;
533
+ } | {
534
+ tag: "Interval";
535
+ interval: IntervalArcaneEnergyCost;
533
536
  } | {
534
537
  tag: "ActivationAndHalfInterval";
535
538
  activation_and_half_interval: ActivationAndHalfIntervalArcaneEnergyCost;
@@ -539,9 +542,6 @@ export declare type ArcaneEnergyCost = {
539
542
  } | {
540
543
  tag: "Disjunction";
541
544
  disjunction: ArcaneEnergyCostDisjunction;
542
- } | {
543
- tag: "None";
544
- none: NoArcaneEnergyCost;
545
545
  } | {
546
546
  tag: "Variable";
547
547
  variable: {};
@@ -609,7 +609,7 @@ export declare type ArcaneEnergyCostPerCountable = {
609
609
  /**
610
610
  * All translations for the entry, identified by IETF language tag (BCP47).
611
611
  */
612
- translations?: LocaleMap<ArcaneEnergyCostPerCountableTranslation>;
612
+ translations: LocaleMap<ArcaneEnergyCostPerCountableTranslation>;
613
613
  };
614
614
  export declare type ArcaneEnergyCostPerCountableTranslation = {
615
615
  /**
@@ -622,6 +622,18 @@ export declare type ArcaneEnergyCostPerCountableTranslation = {
622
622
  */
623
623
  note?: ResponsiveTextOptional;
624
624
  };
625
+ export declare type IntervalArcaneEnergyCost = {
626
+ /**
627
+ * The AE cost value that has to be payed each interval.
628
+ * @integer
629
+ * @minimum 1
630
+ */
631
+ value: number;
632
+ /**
633
+ * The time interval for which the AE cost `value` has to be paid.
634
+ */
635
+ interval: DurationUnitValue;
636
+ };
625
637
  export declare type ActivationAndHalfIntervalArcaneEnergyCost = {
626
638
  /**
627
639
  * The AE cost value that has to be payed for activation. Half of this value
@@ -637,34 +649,11 @@ export declare type ActivationAndHalfIntervalArcaneEnergyCost = {
637
649
  interval: DurationUnitValue;
638
650
  };
639
651
  export declare type IndefiniteArcaneEnergyCost = {
640
- /**
641
- * The indefinite AE cost may be modified by a certain value.
642
- */
643
- modifier: IndefiniteArcaneEnergyCostModifier;
644
652
  /**
645
653
  * All translations for the entry, identified by IETF language tag (BCP47).
646
654
  */
647
655
  translations: LocaleMap<IndefiniteArcaneEnergyCostTranslation>;
648
656
  };
649
- /**
650
- * Defines how the the `value` is set off against the check result.
651
- */
652
- export declare enum IndefiniteArcaneEnergyCostArithmetic {
653
- Add = "Add",
654
- Subtract = "Subtract"
655
- }
656
- export declare type IndefiniteArcaneEnergyCostModifier = {
657
- /**
658
- * The arithmetic how to apply the `value` to the `base`.
659
- */
660
- arithmetic: IndefiniteArcaneEnergyCostArithmetic;
661
- /**
662
- * The value that is applied to the `base` using the defined `arithmetic`.
663
- * @integer
664
- * @minimum 1
665
- */
666
- value: number;
667
- };
668
657
  export declare type IndefiniteArcaneEnergyCostTranslation = {
669
658
  /**
670
659
  * A description of where the cost come from.
@@ -38,14 +38,6 @@ export var FixedArcaneEnergyCostPerLevel;
38
38
  FixedArcaneEnergyCostPerLevel["Compressed"] = "Compressed";
39
39
  FixedArcaneEnergyCostPerLevel["Verbose"] = "Verbose";
40
40
  })(FixedArcaneEnergyCostPerLevel || (FixedArcaneEnergyCostPerLevel = {}));
41
- /**
42
- * Defines how the the `value` is set off against the check result.
43
- */
44
- export var IndefiniteArcaneEnergyCostArithmetic;
45
- (function (IndefiniteArcaneEnergyCostArithmetic) {
46
- IndefiniteArcaneEnergyCostArithmetic["Add"] = "Add";
47
- IndefiniteArcaneEnergyCostArithmetic["Subtract"] = "Subtract";
48
- })(IndefiniteArcaneEnergyCostArithmetic || (IndefiniteArcaneEnergyCostArithmetic = {}));
49
41
  // "Input": {
50
42
  // "description": "A string that is used as a placeholder text for an input field.",
51
43
  // "type": "string",
@@ -520,6 +520,15 @@ export declare type ChronicleEnchantmentIdentifier = {
520
520
  */
521
521
  chronicle_enchantment: number;
522
522
  };
523
+ export declare type KrallenkettenzauberIdentifier = {
524
+ tag: "Krallenkettenzauber";
525
+ /**
526
+ * The Krallenkettenzauber’s identifier.
527
+ * @integer
528
+ * @minimum 1
529
+ */
530
+ krallenkettenzauber: number;
531
+ };
523
532
  export declare type LanguageIdentifier = {
524
533
  tag: "Language";
525
534
  /**
@@ -1,9 +1,9 @@
1
1
  import * as Identifier from "./_Identifier.js";
2
- export declare type ActivatableIdentifier = Identifier.AdvantageIdentifier | Identifier.DisadvantageIdentifier | Identifier.GeneralSpecialAbilityIdentifier | Identifier.FatePointSpecialAbilityIdentifier | Identifier.CombatSpecialAbilityIdentifier | Identifier.MagicalSpecialAbilityIdentifier | Identifier.StaffEnchantmentIdentifier | Identifier.FamiliarSpecialAbilityIdentifier | Identifier.KarmaSpecialAbilityIdentifier | Identifier.ProtectiveWardingCircleSpecialAbilityIdentifier | Identifier.CombatStyleSpecialAbilityIdentifier | Identifier.AdvancedCombatSpecialAbilityIdentifier | Identifier.CommandSpecialAbilityIdentifier | Identifier.MagicStyleSpecialAbilityIdentifier | Identifier.AdvancedMagicalSpecialAbilityIdentifier | Identifier.SpellSwordEnchantmentIdentifier | Identifier.DaggerRitualIdentifier | Identifier.InstrumentEnchantmentIdentifier | Identifier.AttireEnchantmentIdentifier | Identifier.OrbEnchantmentIdentifier | Identifier.WandEnchantmentIdentifier | Identifier.BrawlingSpecialAbilityIdentifier | Identifier.AncestorGlyphIdentifier | Identifier.CeremonialItemSpecialAbilityIdentifier | Identifier.SermonIdentifier | Identifier.LiturgicalStyleSpecialAbilityIdentifier | Identifier.AdvancedKarmaSpecialAbilityIdentifier | Identifier.VisionIdentifier | Identifier.MagicalTraditionIdentifier | Identifier.BlessedTraditionIdentifier | Identifier.PactGiftIdentifier | Identifier.SikaryanDrainSpecialAbilityIdentifier | Identifier.LycantropicGiftIdentifier | Identifier.SkillStyleSpecialAbilityIdentifier | Identifier.AdvancedSkillSpecialAbilityIdentifier | Identifier.ArcaneOrbEnchantmentIdentifier | Identifier.CauldronEnchantmentIdentifier | Identifier.FoolsHatEnchantmentIdentifier | Identifier.ToyEnchantmentIdentifier | Identifier.BowlEnchantmentIdentifier | Identifier.FatePointSexSpecialAbilityIdentifier | Identifier.SexSpecialAbilityIdentifier | Identifier.WeaponEnchantmentIdentifier | Identifier.SickleRitualIdentifier | Identifier.RingEnchantmentIdentifier | Identifier.ChronicleEnchantmentIdentifier;
3
- export declare type SpecialAbilityIdentifier = Identifier.GeneralSpecialAbilityIdentifier | Identifier.FatePointSpecialAbilityIdentifier | Identifier.CombatSpecialAbilityIdentifier | Identifier.MagicalSpecialAbilityIdentifier | Identifier.StaffEnchantmentIdentifier | Identifier.FamiliarSpecialAbilityIdentifier | Identifier.KarmaSpecialAbilityIdentifier | Identifier.ProtectiveWardingCircleSpecialAbilityIdentifier | Identifier.CombatStyleSpecialAbilityIdentifier | Identifier.AdvancedCombatSpecialAbilityIdentifier | Identifier.CommandSpecialAbilityIdentifier | Identifier.MagicStyleSpecialAbilityIdentifier | Identifier.AdvancedMagicalSpecialAbilityIdentifier | Identifier.SpellSwordEnchantmentIdentifier | Identifier.DaggerRitualIdentifier | Identifier.InstrumentEnchantmentIdentifier | Identifier.AttireEnchantmentIdentifier | Identifier.OrbEnchantmentIdentifier | Identifier.WandEnchantmentIdentifier | Identifier.BrawlingSpecialAbilityIdentifier | Identifier.AncestorGlyphIdentifier | Identifier.CeremonialItemSpecialAbilityIdentifier | Identifier.SermonIdentifier | Identifier.LiturgicalStyleSpecialAbilityIdentifier | Identifier.AdvancedKarmaSpecialAbilityIdentifier | Identifier.VisionIdentifier | Identifier.MagicalTraditionIdentifier | Identifier.BlessedTraditionIdentifier | Identifier.PactGiftIdentifier | Identifier.SikaryanDrainSpecialAbilityIdentifier | Identifier.LycantropicGiftIdentifier | Identifier.SkillStyleSpecialAbilityIdentifier | Identifier.AdvancedSkillSpecialAbilityIdentifier | Identifier.ArcaneOrbEnchantmentIdentifier | Identifier.CauldronEnchantmentIdentifier | Identifier.FoolsHatEnchantmentIdentifier | Identifier.ToyEnchantmentIdentifier | Identifier.BowlEnchantmentIdentifier | Identifier.FatePointSexSpecialAbilityIdentifier | Identifier.SexSpecialAbilityIdentifier | Identifier.WeaponEnchantmentIdentifier | Identifier.SickleRitualIdentifier | Identifier.RingEnchantmentIdentifier | Identifier.ChronicleEnchantmentIdentifier;
2
+ export declare type ActivatableIdentifier = Identifier.AdvantageIdentifier | Identifier.DisadvantageIdentifier | Identifier.GeneralSpecialAbilityIdentifier | Identifier.FatePointSpecialAbilityIdentifier | Identifier.CombatSpecialAbilityIdentifier | Identifier.MagicalSpecialAbilityIdentifier | Identifier.StaffEnchantmentIdentifier | Identifier.FamiliarSpecialAbilityIdentifier | Identifier.KarmaSpecialAbilityIdentifier | Identifier.ProtectiveWardingCircleSpecialAbilityIdentifier | Identifier.CombatStyleSpecialAbilityIdentifier | Identifier.AdvancedCombatSpecialAbilityIdentifier | Identifier.CommandSpecialAbilityIdentifier | Identifier.MagicStyleSpecialAbilityIdentifier | Identifier.AdvancedMagicalSpecialAbilityIdentifier | Identifier.SpellSwordEnchantmentIdentifier | Identifier.DaggerRitualIdentifier | Identifier.InstrumentEnchantmentIdentifier | Identifier.AttireEnchantmentIdentifier | Identifier.OrbEnchantmentIdentifier | Identifier.WandEnchantmentIdentifier | Identifier.BrawlingSpecialAbilityIdentifier | Identifier.AncestorGlyphIdentifier | Identifier.CeremonialItemSpecialAbilityIdentifier | Identifier.SermonIdentifier | Identifier.LiturgicalStyleSpecialAbilityIdentifier | Identifier.AdvancedKarmaSpecialAbilityIdentifier | Identifier.VisionIdentifier | Identifier.MagicalTraditionIdentifier | Identifier.BlessedTraditionIdentifier | Identifier.PactGiftIdentifier | Identifier.SikaryanDrainSpecialAbilityIdentifier | Identifier.LycantropicGiftIdentifier | Identifier.SkillStyleSpecialAbilityIdentifier | Identifier.AdvancedSkillSpecialAbilityIdentifier | Identifier.ArcaneOrbEnchantmentIdentifier | Identifier.CauldronEnchantmentIdentifier | Identifier.FoolsHatEnchantmentIdentifier | Identifier.ToyEnchantmentIdentifier | Identifier.BowlEnchantmentIdentifier | Identifier.FatePointSexSpecialAbilityIdentifier | Identifier.SexSpecialAbilityIdentifier | Identifier.WeaponEnchantmentIdentifier | Identifier.SickleRitualIdentifier | Identifier.RingEnchantmentIdentifier | Identifier.ChronicleEnchantmentIdentifier | Identifier.KrallenkettenzauberIdentifier;
3
+ export declare type SpecialAbilityIdentifier = Identifier.GeneralSpecialAbilityIdentifier | Identifier.FatePointSpecialAbilityIdentifier | Identifier.CombatSpecialAbilityIdentifier | Identifier.MagicalSpecialAbilityIdentifier | Identifier.StaffEnchantmentIdentifier | Identifier.FamiliarSpecialAbilityIdentifier | Identifier.KarmaSpecialAbilityIdentifier | Identifier.ProtectiveWardingCircleSpecialAbilityIdentifier | Identifier.CombatStyleSpecialAbilityIdentifier | Identifier.AdvancedCombatSpecialAbilityIdentifier | Identifier.CommandSpecialAbilityIdentifier | Identifier.MagicStyleSpecialAbilityIdentifier | Identifier.AdvancedMagicalSpecialAbilityIdentifier | Identifier.SpellSwordEnchantmentIdentifier | Identifier.DaggerRitualIdentifier | Identifier.InstrumentEnchantmentIdentifier | Identifier.AttireEnchantmentIdentifier | Identifier.OrbEnchantmentIdentifier | Identifier.WandEnchantmentIdentifier | Identifier.BrawlingSpecialAbilityIdentifier | Identifier.AncestorGlyphIdentifier | Identifier.CeremonialItemSpecialAbilityIdentifier | Identifier.SermonIdentifier | Identifier.LiturgicalStyleSpecialAbilityIdentifier | Identifier.AdvancedKarmaSpecialAbilityIdentifier | Identifier.VisionIdentifier | Identifier.MagicalTraditionIdentifier | Identifier.BlessedTraditionIdentifier | Identifier.PactGiftIdentifier | Identifier.SikaryanDrainSpecialAbilityIdentifier | Identifier.LycantropicGiftIdentifier | Identifier.SkillStyleSpecialAbilityIdentifier | Identifier.AdvancedSkillSpecialAbilityIdentifier | Identifier.ArcaneOrbEnchantmentIdentifier | Identifier.CauldronEnchantmentIdentifier | Identifier.FoolsHatEnchantmentIdentifier | Identifier.ToyEnchantmentIdentifier | Identifier.BowlEnchantmentIdentifier | Identifier.FatePointSexSpecialAbilityIdentifier | Identifier.SexSpecialAbilityIdentifier | Identifier.WeaponEnchantmentIdentifier | Identifier.SickleRitualIdentifier | Identifier.RingEnchantmentIdentifier | Identifier.ChronicleEnchantmentIdentifier | Identifier.KrallenkettenzauberIdentifier;
4
4
  export declare type CombatRelatedSpecialAbilityIdentifier = Identifier.CombatSpecialAbilityIdentifier | Identifier.CombatStyleSpecialAbilityIdentifier | Identifier.AdvancedCombatSpecialAbilityIdentifier | Identifier.CommandSpecialAbilityIdentifier;
5
5
  export declare type TraditionIdentifier = Identifier.MagicalTraditionIdentifier | Identifier.BlessedTraditionIdentifier;
6
- export declare type RatedIdentifier = Identifier.AttributeIdentifier | SkillIdentifier | Identifier.CloseCombatTechniqueIdentifier | Identifier.RangedCombatTechniqueIdentifier | Identifier.SpellIdentifier | Identifier.RitualIdentifier | Identifier.LiturgicalChantIdentifier | Identifier.CeremonyIdentifier;
6
+ export declare type RatedIdentifier = Identifier.AttributeIdentifier | Identifier.SkillIdentifier | Identifier.CloseCombatTechniqueIdentifier | Identifier.RangedCombatTechniqueIdentifier | Identifier.SpellIdentifier | Identifier.RitualIdentifier | Identifier.LiturgicalChantIdentifier | Identifier.CeremonyIdentifier;
7
7
  export declare type SkillIdentifier = Identifier.SkillIdentifier | Identifier.SpellIdentifier | Identifier.RitualIdentifier | Identifier.LiturgicalChantIdentifier | Identifier.CeremonyIdentifier;
8
8
  export declare type AdvancedSpecialAbilityRestrictedOptionIdentifier = Identifier.GeneralIdentifier | Identifier.SkillIdentifier | Identifier.ElementIdentifier;
9
9
  export declare type VolumePointsOptionReferenceIdentifier = Identifier.GeneralIdentifier | Identifier.AnimalShapeSizeIdentifier;
@@ -6,7 +6,6 @@ import { PublicationRefs } from "../source/_PublicationRef.js";
6
6
  import { LocaleMap } from "../_LocaleMap.js";
7
7
  import { NonEmptyMarkdown, NonEmptyString } from "../_NonEmptyString.js";
8
8
  import { FocusRuleSubjectReference } from "../_SimpleReferences.js";
9
- import { Relevance } from "./_Rule.js";
10
9
  /**
11
10
  * @title Focus Rule
12
11
  */
@@ -28,7 +27,11 @@ export declare type FocusRule = {
28
27
  * @maximum 4
29
28
  */
30
29
  level: number;
31
- relevance: Relevance;
30
+ /**
31
+ * Has the focus rule not been implemented in Optolith yet? This is also true
32
+ * if the focus rule does not (currently) apply to any Optolith feature.
33
+ */
34
+ is_missing_implementation: boolean;
32
35
  src: PublicationRefs;
33
36
  /**
34
37
  * All translations for the entry, identified by IETF language tag (BCP47).
@@ -5,7 +5,6 @@ import { Errata } from "../source/_Erratum.js";
5
5
  import { PublicationRefs } from "../source/_PublicationRef.js";
6
6
  import { LocaleMap } from "../_LocaleMap.js";
7
7
  import { NonEmptyMarkdown, NonEmptyString } from "../_NonEmptyString.js";
8
- import { Relevance } from "./_Rule.js";
9
8
  /**
10
9
  * @title Optional Rule
11
10
  */
@@ -17,12 +16,10 @@ export declare type OptionalRule = {
17
16
  */
18
17
  id: number;
19
18
  /**
20
- * The relevance of the optional rule for Optolith. It may be that it
21
- * influences character creating but it may also just influnce the character
22
- * sheet. If it is linked to systems in Optolith, it may be specified if this
23
- * rule has not been implemented in Optolith yet.
19
+ * Has the focus rule not been implemented in Optolith yet? This is also true
20
+ * if the focus rule does not (currently) apply to any Optolith feature.
24
21
  */
25
- relevance: Relevance;
22
+ is_missing_implementation: boolean;
26
23
  src: PublicationRefs;
27
24
  /**
28
25
  * All translations for the entry, identified by IETF language tag (BCP47).
@@ -16,7 +16,7 @@ export declare type AttireEnchantment = {
16
16
  maximum?: Activatable.Maximum;
17
17
  prerequisites?: GeneralPrerequisites;
18
18
  volume: Activatable.Volume;
19
- cost: Activatable.EnchantmentCost;
19
+ cost?: Activatable.EnchantmentCost;
20
20
  property: Activatable.Property;
21
21
  ap_value: Activatable.AdventurePointsValue;
22
22
  src: PublicationRefs;
@@ -21,7 +21,7 @@ export declare type CauldronEnchantment = {
21
21
  * brews can be categorized in different types.
22
22
  */
23
23
  brew: BrewReference;
24
- cost: Activatable.EnchantmentCost;
24
+ cost?: Activatable.EnchantmentCost;
25
25
  property: Activatable.Property;
26
26
  ap_value: Activatable.AdventurePointsValue;
27
27
  src: PublicationRefs;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "optolith-database-schema",
3
- "version": "0.7.0",
3
+ "version": "0.8.0",
4
4
  "description": "Definitions and utilities for the flat-file database of Optolith, a character creation tool for the Pen and Paper RPG “The Dark Eye 5”, and its external integrations into other software.",
5
5
  "keywords": [
6
6
  "tde",
@@ -965,15 +965,15 @@
965
965
  "type": "object",
966
966
  "properties": {
967
967
  "tag": {
968
- "const": "ActivationAndHalfInterval"
968
+ "const": "Interval"
969
969
  },
970
- "activation_and_half_interval": {
971
- "$ref": "#/$defs/ActivationAndHalfIntervalArcaneEnergyCost"
970
+ "interval": {
971
+ "$ref": "#/$defs/IntervalArcaneEnergyCost"
972
972
  }
973
973
  },
974
974
  "required": [
975
975
  "tag",
976
- "activation_and_half_interval"
976
+ "interval"
977
977
  ],
978
978
  "additionalProperties": false
979
979
  },
@@ -981,15 +981,15 @@
981
981
  "type": "object",
982
982
  "properties": {
983
983
  "tag": {
984
- "const": "Indefinite"
984
+ "const": "ActivationAndHalfInterval"
985
985
  },
986
- "indefinite": {
987
- "$ref": "#/$defs/IndefiniteArcaneEnergyCost"
986
+ "activation_and_half_interval": {
987
+ "$ref": "#/$defs/ActivationAndHalfIntervalArcaneEnergyCost"
988
988
  }
989
989
  },
990
990
  "required": [
991
991
  "tag",
992
- "indefinite"
992
+ "activation_and_half_interval"
993
993
  ],
994
994
  "additionalProperties": false
995
995
  },
@@ -997,15 +997,15 @@
997
997
  "type": "object",
998
998
  "properties": {
999
999
  "tag": {
1000
- "const": "Disjunction"
1000
+ "const": "Indefinite"
1001
1001
  },
1002
- "disjunction": {
1003
- "$ref": "#/$defs/ArcaneEnergyCostDisjunction"
1002
+ "indefinite": {
1003
+ "$ref": "#/$defs/IndefiniteArcaneEnergyCost"
1004
1004
  }
1005
1005
  },
1006
1006
  "required": [
1007
1007
  "tag",
1008
- "disjunction"
1008
+ "indefinite"
1009
1009
  ],
1010
1010
  "additionalProperties": false
1011
1011
  },
@@ -1013,15 +1013,15 @@
1013
1013
  "type": "object",
1014
1014
  "properties": {
1015
1015
  "tag": {
1016
- "const": "None"
1016
+ "const": "Disjunction"
1017
1017
  },
1018
- "none": {
1019
- "$ref": "#/$defs/NoArcaneEnergyCost"
1018
+ "disjunction": {
1019
+ "$ref": "#/$defs/ArcaneEnergyCostDisjunction"
1020
1020
  }
1021
1021
  },
1022
1022
  "required": [
1023
1023
  "tag",
1024
- "none"
1024
+ "disjunction"
1025
1025
  ],
1026
1026
  "additionalProperties": false
1027
1027
  },
@@ -1128,7 +1128,8 @@
1128
1128
  }
1129
1129
  },
1130
1130
  "required": [
1131
- "value"
1131
+ "value",
1132
+ "translations"
1132
1133
  ],
1133
1134
  "additionalProperties": false
1134
1135
  },
@@ -1149,6 +1150,25 @@
1149
1150
  ],
1150
1151
  "additionalProperties": false
1151
1152
  },
1153
+ "IntervalArcaneEnergyCost": {
1154
+ "type": "object",
1155
+ "properties": {
1156
+ "value": {
1157
+ "description": "The AE cost value that has to be payed each interval.",
1158
+ "type": "integer",
1159
+ "minimum": 1
1160
+ },
1161
+ "interval": {
1162
+ "description": "The time interval for which the AE cost `value` has to be paid.",
1163
+ "$ref": "./_ActivatableSkillDuration.schema.json#/$defs/DurationUnitValue"
1164
+ }
1165
+ },
1166
+ "required": [
1167
+ "value",
1168
+ "interval"
1169
+ ],
1170
+ "additionalProperties": false
1171
+ },
1152
1172
  "ActivationAndHalfIntervalArcaneEnergyCost": {
1153
1173
  "type": "object",
1154
1174
  "properties": {
@@ -1172,10 +1192,6 @@
1172
1192
  "IndefiniteArcaneEnergyCost": {
1173
1193
  "type": "object",
1174
1194
  "properties": {
1175
- "modifier": {
1176
- "description": "The indefinite AE cost may be modified by a certain value.",
1177
- "$ref": "#/$defs/IndefiniteArcaneEnergyCostModifier"
1178
- },
1179
1195
  "translations": {
1180
1196
  "description": "All translations for the entry, identified by IETF language tag (BCP47).",
1181
1197
  "type": "object",
@@ -1189,37 +1205,10 @@
1189
1205
  }
1190
1206
  },
1191
1207
  "required": [
1192
- "modifier",
1193
1208
  "translations"
1194
1209
  ],
1195
1210
  "additionalProperties": false
1196
1211
  },
1197
- "IndefiniteArcaneEnergyCostArithmetic": {
1198
- "description": "Defines how the the `value` is set off against the check result.",
1199
- "enum": [
1200
- "Add",
1201
- "Subtract"
1202
- ]
1203
- },
1204
- "IndefiniteArcaneEnergyCostModifier": {
1205
- "type": "object",
1206
- "properties": {
1207
- "arithmetic": {
1208
- "description": "The arithmetic how to apply the `value` to the `base`.",
1209
- "$ref": "#/$defs/IndefiniteArcaneEnergyCostArithmetic"
1210
- },
1211
- "value": {
1212
- "description": "The value that is applied to the `base` using the defined `arithmetic`.",
1213
- "type": "integer",
1214
- "minimum": 1
1215
- }
1216
- },
1217
- "required": [
1218
- "arithmetic",
1219
- "value"
1220
- ],
1221
- "additionalProperties": false
1222
- },
1223
1212
  "IndefiniteArcaneEnergyCostTranslation": {
1224
1213
  "type": "object",
1225
1214
  "properties": {
@@ -1046,6 +1046,24 @@
1046
1046
  ],
1047
1047
  "additionalProperties": false
1048
1048
  },
1049
+ "KrallenkettenzauberIdentifier": {
1050
+ "type": "object",
1051
+ "properties": {
1052
+ "tag": {
1053
+ "const": "Krallenkettenzauber"
1054
+ },
1055
+ "krallenkettenzauber": {
1056
+ "description": "The Krallenkettenzauber’s identifier.",
1057
+ "type": "integer",
1058
+ "minimum": 1
1059
+ }
1060
+ },
1061
+ "required": [
1062
+ "tag",
1063
+ "krallenkettenzauber"
1064
+ ],
1065
+ "additionalProperties": false
1066
+ },
1049
1067
  "LanguageIdentifier": {
1050
1068
  "type": "object",
1051
1069
  "properties": {
@@ -141,6 +141,9 @@
141
141
  },
142
142
  {
143
143
  "$ref": "./_Identifier.schema.json#/$defs/ChronicleEnchantmentIdentifier"
144
+ },
145
+ {
146
+ "$ref": "./_Identifier.schema.json#/$defs/KrallenkettenzauberIdentifier"
144
147
  }
145
148
  ]
146
149
  },
@@ -277,6 +280,9 @@
277
280
  },
278
281
  {
279
282
  "$ref": "./_Identifier.schema.json#/$defs/ChronicleEnchantmentIdentifier"
283
+ },
284
+ {
285
+ "$ref": "./_Identifier.schema.json#/$defs/KrallenkettenzauberIdentifier"
280
286
  }
281
287
  ]
282
288
  },
@@ -312,7 +318,7 @@
312
318
  "$ref": "./_Identifier.schema.json#/$defs/AttributeIdentifier"
313
319
  },
314
320
  {
315
- "$ref": "#/$defs/SkillIdentifier"
321
+ "$ref": "./_Identifier.schema.json#/$defs/SkillIdentifier"
316
322
  },
317
323
  {
318
324
  "$ref": "./_Identifier.schema.json#/$defs/CloseCombatTechniqueIdentifier"
@@ -22,8 +22,9 @@
22
22
  "maximum": 4,
23
23
  "minimum": 1
24
24
  },
25
- "relevance": {
26
- "$ref": "./_Rule.schema.json#/$defs/Relevance"
25
+ "is_missing_implementation": {
26
+ "description": "Has the focus rule not been implemented in Optolith yet? This is also true\nif the focus rule does not (currently) apply to any Optolith feature.",
27
+ "type": "boolean"
27
28
  },
28
29
  "src": {
29
30
  "$ref": "../source/_PublicationRef.schema.json#/$defs/PublicationRefs"
@@ -44,7 +45,7 @@
44
45
  "id",
45
46
  "subject",
46
47
  "level",
47
- "relevance",
48
+ "is_missing_implementation",
48
49
  "src",
49
50
  "translations"
50
51
  ],
@@ -12,9 +12,9 @@
12
12
  "type": "integer",
13
13
  "minimum": 1
14
14
  },
15
- "relevance": {
16
- "description": "The relevance of the optional rule for Optolith. It may be that it\ninfluences character creating but it may also just influnce the character\nsheet. If it is linked to systems in Optolith, it may be specified if this\nrule has not been implemented in Optolith yet.",
17
- "$ref": "./_Rule.schema.json#/$defs/Relevance"
15
+ "is_missing_implementation": {
16
+ "description": "Has the focus rule not been implemented in Optolith yet? This is also true\nif the focus rule does not (currently) apply to any Optolith feature.",
17
+ "type": "boolean"
18
18
  },
19
19
  "src": {
20
20
  "$ref": "../source/_PublicationRef.schema.json#/$defs/PublicationRefs"
@@ -33,7 +33,7 @@
33
33
  },
34
34
  "required": [
35
35
  "id",
36
- "relevance",
36
+ "is_missing_implementation",
37
37
  "src",
38
38
  "translations"
39
39
  ],
@@ -52,7 +52,6 @@
52
52
  "required": [
53
53
  "id",
54
54
  "volume",
55
- "cost",
56
55
  "property",
57
56
  "ap_value",
58
57
  "src",
@@ -57,7 +57,6 @@
57
57
  "id",
58
58
  "volume",
59
59
  "brew",
60
- "cost",
61
60
  "property",
62
61
  "ap_value",
63
62
  "src",
@@ -1,20 +0,0 @@
1
- /**
2
- * The relevance of the rule for Optolith. It may be that it influences
3
- * character creating but it may also just influnce the character sheet. If it
4
- * is linked to systems in Optolith, it may be specified if this rule has not
5
- * been implemented in Optolith yet.
6
- */
7
- export declare type Relevance = {
8
- tag: "Extraneous";
9
- extraneous: {};
10
- } | {
11
- tag: "Linked";
12
- linked: LinkedRelevance;
13
- };
14
- export declare type LinkedRelevance = {
15
- /**
16
- * Does the optional rule have an impact on character creation or character
17
- * sheet and this effect has not been implemented in Optolith yet?
18
- */
19
- is_missing_implementation: boolean;
20
- };
@@ -1 +0,0 @@
1
- export {};
@@ -1,59 +0,0 @@
1
- {
2
- "$schema": "https://json-schema.org/draft/2019-09/schema",
3
- "$id": "/rule/_Rule.schema.json",
4
- "$defs": {
5
- "Relevance": {
6
- "description": "The relevance of the rule for Optolith. It may be that it influences\ncharacter creating but it may also just influnce the character sheet. If it\nis linked to systems in Optolith, it may be specified if this rule has not\nbeen implemented in Optolith yet.",
7
- "oneOf": [
8
- {
9
- "type": "object",
10
- "properties": {
11
- "tag": {
12
- "const": "Extraneous"
13
- },
14
- "extraneous": {
15
- "type": "object",
16
- "properties": {},
17
- "required": [],
18
- "additionalProperties": false
19
- }
20
- },
21
- "required": [
22
- "tag",
23
- "extraneous"
24
- ],
25
- "additionalProperties": false
26
- },
27
- {
28
- "type": "object",
29
- "properties": {
30
- "tag": {
31
- "const": "Linked"
32
- },
33
- "linked": {
34
- "$ref": "#/$defs/LinkedRelevance"
35
- }
36
- },
37
- "required": [
38
- "tag",
39
- "linked"
40
- ],
41
- "additionalProperties": false
42
- }
43
- ]
44
- },
45
- "LinkedRelevance": {
46
- "type": "object",
47
- "properties": {
48
- "is_missing_implementation": {
49
- "description": "Does the optional rule have an impact on character creation or character\nsheet and this effect has not been implemented in Optolith yet?",
50
- "type": "boolean"
51
- }
52
- },
53
- "required": [
54
- "is_missing_implementation"
55
- ],
56
- "additionalProperties": false
57
- }
58
- }
59
- }