optolith-database-schema 0.0.1 → 0.0.2

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 (35) hide show
  1. package/CHANGELOG.md +7 -0
  2. package/lib/types/Ceremony.d.ts +150 -0
  3. package/lib/types/Ceremony.js +4 -0
  4. package/lib/types/LiturgicalChant.d.ts +150 -0
  5. package/lib/types/LiturgicalChant.js +4 -0
  6. package/lib/types/Ritual.d.ts +134 -0
  7. package/lib/types/Ritual.js +4 -0
  8. package/lib/types/{SkillModificationIncrement.d.ts → SkillModificationLevel.d.ts} +58 -31
  9. package/lib/types/SkillModificationLevel.js +8 -0
  10. package/lib/types/Spell.d.ts +134 -0
  11. package/lib/types/Spell.js +4 -0
  12. package/lib/types/_ActivatableSkill.d.ts +42 -15
  13. package/lib/types/_ActivatableSkill.js +0 -5
  14. package/lib/types/_Enhancements.d.ts +66 -0
  15. package/lib/types/_Enhancements.js +4 -0
  16. package/lib/types/_Identifier.d.ts +80 -0
  17. package/lib/types/_Identifier.js +1 -0
  18. package/lib/types/_Prerequisite.d.ts +93 -1
  19. package/lib/types/_Prerequisite.js +183 -1
  20. package/lib/types/magicalActions/GeodeRitual.d.ts +3 -2
  21. package/lib/types/magicalActions/ZibiljaRitual.d.ts +2 -2
  22. package/package.json +1 -1
  23. package/schema/Ceremony.schema.json +239 -0
  24. package/schema/LiturgicalChant.schema.json +239 -0
  25. package/schema/Ritual.schema.json +219 -0
  26. package/schema/SkillModificationLevel.schema.json +138 -0
  27. package/schema/Spell.schema.json +219 -0
  28. package/schema/_ActivatableSkill.schema.json +174 -19
  29. package/schema/_Enhancements.schema.json +82 -0
  30. package/schema/_Identifier.schema.json +185 -0
  31. package/schema/_Prerequisite.schema.json +199 -1
  32. package/schema/magicalActions/GeodeRitual.schema.json +1 -1
  33. package/schema/magicalActions/ZibiljaRitual.schema.json +1 -1
  34. package/lib/types/SkillModificationIncrement.js +0 -4
  35. package/schema/SkillModificationIncrement.schema.json +0 -98
package/CHANGELOG.md CHANGED
@@ -2,6 +2,13 @@
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.0.2](https://github.com/elyukai/optolith-database-schema/compare/v0.0.1...v0.0.2) (2022-03-05)
6
+
7
+
8
+ ### Features
9
+
10
+ * finish basic activatable skills ([ede33df](https://github.com/elyukai/optolith-database-schema/commit/ede33df9e897cb58f19f58c4e8d5619c2f9be0e0))
11
+
5
12
  ### 0.0.1 (2022-03-05)
6
13
 
7
14
 
@@ -0,0 +1,150 @@
1
+ /**
2
+ * @main Ceremony
3
+ */
4
+ import { Errata } from "./source/_Erratum";
5
+ import { PublicationRefs } from "./source/_PublicationRef";
6
+ import { Effect, SlowPerformanceParameters, TargetCategory } from "./_ActivatableSkill";
7
+ import { Enhancements } from "./_Enhancements";
8
+ import { ImprovementCost } from "./_ImprovementCost";
9
+ import { GroupCollection } from "./_Prerequisite";
10
+ import { SkillCheck, SkillCheckPenalty } from "./_SkillCheck";
11
+ /**
12
+ * @title Ceremony
13
+ */
14
+ export declare type Ceremony = {
15
+ /**
16
+ * The ceremony's identifier. An unique, increasing integer.
17
+ * @integer
18
+ * @minimum 1
19
+ */
20
+ id: number;
21
+ /**
22
+ * Lists the linked three attributes used to make a skill check.
23
+ */
24
+ check: SkillCheck;
25
+ /**
26
+ * In some cases, the target's Spirit or Toughness is applied as a penalty.
27
+ */
28
+ check_penalty?: SkillCheckPenalty;
29
+ /**
30
+ * Measurable parameters of a ceremony.
31
+ */
32
+ parameters: SlowPerformanceParameters;
33
+ /**
34
+ * The target category – the kind of creature or object – the skill affects.
35
+ */
36
+ target: TargetCategory.T;
37
+ /**
38
+ * The property's identifier.
39
+ * @integer
40
+ * @minimum 1
41
+ */
42
+ property_id: number;
43
+ /**
44
+ * The tradition(s) the ceremony is available for. Note that general aspects
45
+ * do not have an associated tradition and thus need to be defined in a
46
+ * special way.
47
+ * @minItems 1
48
+ */
49
+ traditions: Tradition[];
50
+ /**
51
+ * States which column is used to improve the skill.
52
+ */
53
+ improvement_cost: ImprovementCost;
54
+ prerequisites?: GroupCollection.Liturgy;
55
+ src: PublicationRefs;
56
+ /**
57
+ * All translations for the entry, identified by IETF language tag (BCP47).
58
+ * @minProperties 1
59
+ */
60
+ translations: {
61
+ /**
62
+ * @patternProperties ^[a-z]{2}-[A-Z]{2}$
63
+ */
64
+ [localeId: string]: {
65
+ /**
66
+ * The name of the ceremony.
67
+ * @minLength 1
68
+ */
69
+ name: string;
70
+ /**
71
+ * A compressed name of the ceremony for use in small areas (e.g. on
72
+ * character sheet). Should only be defined if the `name` does not fit on
73
+ * character sheet.
74
+ * @minLength 1
75
+ */
76
+ name_compressed?: string;
77
+ /**
78
+ * The effect description may be either a plain text or a text that is
79
+ * divided by a list of effects for each quality level. It may also be a
80
+ * list for each two quality levels.
81
+ */
82
+ effect: Effect.T;
83
+ /**
84
+ * @deprecated
85
+ */
86
+ casting_time: {
87
+ full: string;
88
+ abbr: string;
89
+ };
90
+ /**
91
+ * @deprecated
92
+ */
93
+ cost: {
94
+ full: string;
95
+ abbr: string;
96
+ };
97
+ /**
98
+ * @deprecated
99
+ */
100
+ range: {
101
+ full: string;
102
+ abbr: string;
103
+ };
104
+ /**
105
+ * @deprecated
106
+ */
107
+ duration: {
108
+ full: string;
109
+ abbr: string;
110
+ };
111
+ /**
112
+ * @deprecated
113
+ */
114
+ target: string;
115
+ errata?: Errata;
116
+ };
117
+ };
118
+ enhancements?: Enhancements;
119
+ };
120
+ export declare type Tradition = {
121
+ tag: "GeneralAspect";
122
+ /**
123
+ * A general aspect's identifier.
124
+ * @integer
125
+ * @minimum 1
126
+ */
127
+ id: number;
128
+ } | {
129
+ tag: "Tradition";
130
+ /**
131
+ * The blessed tradition's identifier.
132
+ * @integer
133
+ * @minimum 1
134
+ */
135
+ id: number;
136
+ /**
137
+ * The aspect(s) from the tradition the ceremony belongs to. Note that not
138
+ * all traditions have aspects.
139
+ * @minItems 1
140
+ * @maxItems 2
141
+ */
142
+ aspects?: {
143
+ /**
144
+ * The aspect's identifier.
145
+ * @integer
146
+ * @minimum 1
147
+ */
148
+ id: number;
149
+ }[];
150
+ };
@@ -0,0 +1,4 @@
1
+ /**
2
+ * @main Ceremony
3
+ */
4
+ export {};
@@ -0,0 +1,150 @@
1
+ /**
2
+ * @main LiturgicalChant
3
+ */
4
+ import { Errata } from "./source/_Erratum";
5
+ import { PublicationRefs } from "./source/_PublicationRef";
6
+ import { Effect, FastPerformanceParameters, TargetCategory } from "./_ActivatableSkill";
7
+ import { Enhancements } from "./_Enhancements";
8
+ import { ImprovementCost } from "./_ImprovementCost";
9
+ import { GroupCollection } from "./_Prerequisite";
10
+ import { SkillCheck, SkillCheckPenalty } from "./_SkillCheck";
11
+ /**
12
+ * @title Liturgical Chant
13
+ */
14
+ export declare type LiturgicalChant = {
15
+ /**
16
+ * The liturgical chant's identifier. An unique, increasing integer.
17
+ * @integer
18
+ * @minimum 1
19
+ */
20
+ id: number;
21
+ /**
22
+ * Lists the linked three attributes used to make a skill check.
23
+ */
24
+ check: SkillCheck;
25
+ /**
26
+ * In some cases, the target's Spirit or Toughness is applied as a penalty.
27
+ */
28
+ check_penalty?: SkillCheckPenalty;
29
+ /**
30
+ * Measurable parameters of a liturgical chant.
31
+ */
32
+ parameters: FastPerformanceParameters;
33
+ /**
34
+ * The target category – the kind of creature or object – the skill affects.
35
+ */
36
+ target: TargetCategory.T;
37
+ /**
38
+ * The property's identifier.
39
+ * @integer
40
+ * @minimum 1
41
+ */
42
+ property_id: number;
43
+ /**
44
+ * The tradition(s) the liturgical chant is available for. Note that general
45
+ * aspects do not have an associated tradition and thus need to be defined in
46
+ * a special way.
47
+ * @minItems 1
48
+ */
49
+ traditions: Tradition[];
50
+ /**
51
+ * States which column is used to improve the skill.
52
+ */
53
+ improvement_cost: ImprovementCost;
54
+ prerequisites?: GroupCollection.Liturgy;
55
+ src: PublicationRefs;
56
+ /**
57
+ * All translations for the entry, identified by IETF language tag (BCP47).
58
+ * @minProperties 1
59
+ */
60
+ translations: {
61
+ /**
62
+ * @patternProperties ^[a-z]{2}-[A-Z]{2}$
63
+ */
64
+ [localeId: string]: {
65
+ /**
66
+ * The name of the liturgical chant.
67
+ * @minLength 1
68
+ */
69
+ name: string;
70
+ /**
71
+ * A compressed name of the liturgical chant for use in small areas (e.g.
72
+ * on character sheet). Should only be defined if the `name` does not fit
73
+ * on character sheet.
74
+ * @minLength 1
75
+ */
76
+ name_compressed?: string;
77
+ /**
78
+ * The effect description may be either a plain text or a text that is
79
+ * divided by a list of effects for each quality level. It may also be a
80
+ * list for each two quality levels.
81
+ */
82
+ effect: Effect.T;
83
+ /**
84
+ * @deprecated
85
+ */
86
+ casting_time: {
87
+ full: string;
88
+ abbr: string;
89
+ };
90
+ /**
91
+ * @deprecated
92
+ */
93
+ cost: {
94
+ full: string;
95
+ abbr: string;
96
+ };
97
+ /**
98
+ * @deprecated
99
+ */
100
+ range: {
101
+ full: string;
102
+ abbr: string;
103
+ };
104
+ /**
105
+ * @deprecated
106
+ */
107
+ duration: {
108
+ full: string;
109
+ abbr: string;
110
+ };
111
+ /**
112
+ * @deprecated
113
+ */
114
+ target: string;
115
+ errata?: Errata;
116
+ };
117
+ };
118
+ enhancements?: Enhancements;
119
+ };
120
+ export declare type Tradition = {
121
+ tag: "GeneralAspect";
122
+ /**
123
+ * A general aspect's identifier.
124
+ * @integer
125
+ * @minimum 1
126
+ */
127
+ id: number;
128
+ } | {
129
+ tag: "Tradition";
130
+ /**
131
+ * The blessed tradition's identifier.
132
+ * @integer
133
+ * @minimum 1
134
+ */
135
+ id: number;
136
+ /**
137
+ * The aspect(s) from the tradition the ceremony belongs to. Note that not
138
+ * all traditions have aspects.
139
+ * @minItems 1
140
+ * @maxItems 2
141
+ */
142
+ aspects?: {
143
+ /**
144
+ * The aspect's identifier.
145
+ * @integer
146
+ * @minimum 1
147
+ */
148
+ id: number;
149
+ }[];
150
+ };
@@ -0,0 +1,4 @@
1
+ /**
2
+ * @main LiturgicalChant
3
+ */
4
+ export {};
@@ -0,0 +1,134 @@
1
+ /**
2
+ * @main Ritual
3
+ */
4
+ import { Errata } from "./source/_Erratum";
5
+ import { PublicationRefs } from "./source/_PublicationRef";
6
+ import { Effect, SlowPerformanceParameters, TargetCategory } from "./_ActivatableSkill";
7
+ import { Enhancements } from "./_Enhancements";
8
+ import { ImprovementCost } from "./_ImprovementCost";
9
+ import { GroupCollection } from "./_Prerequisite";
10
+ import { SkillCheck, SkillCheckPenalty } from "./_SkillCheck";
11
+ /**
12
+ * @title Ritual
13
+ */
14
+ export declare type Ritual = {
15
+ /**
16
+ * The ritual's identifier. An unique, increasing integer.
17
+ * @integer
18
+ * @minimum 1
19
+ */
20
+ id: number;
21
+ /**
22
+ * Lists the linked three attributes used to make a skill check.
23
+ */
24
+ check: SkillCheck;
25
+ /**
26
+ * In some cases, the target's Spirit or Toughness is applied as a penalty.
27
+ */
28
+ check_penalty?: SkillCheckPenalty;
29
+ /**
30
+ * Measurable parameters of a ritual.
31
+ */
32
+ parameters: SlowPerformanceParameters;
33
+ /**
34
+ * The target category – the kind of creature or object – the skill affects.
35
+ */
36
+ target: TargetCategory.T;
37
+ /**
38
+ * The property's identifier.
39
+ * @integer
40
+ * @minimum 1
41
+ */
42
+ property_id: number;
43
+ /**
44
+ * The tradition(s) the ritual is available for. It may be *generally*
45
+ * available to all traditions or it may be only familiar in specific
46
+ * traditions.
47
+ */
48
+ traditions: {
49
+ tag: "General";
50
+ } | {
51
+ tag: "Specific";
52
+ /**
53
+ * A list of specific traditions.
54
+ * @minItems 1
55
+ */
56
+ list: {
57
+ /**
58
+ * The magical tradition's identifier. If `is_placeholder` is `true`
59
+ * then this is the magical tradition's placeholder identifier
60
+ * instead.
61
+ * @integer
62
+ * @minimum 1
63
+ */
64
+ id: number;
65
+ /**
66
+ * If set to `true`, the tradition is not available as a special ability
67
+ * yet.
68
+ */
69
+ is_placeholder?: true;
70
+ }[];
71
+ };
72
+ /**
73
+ * States which column is used to improve the skill.
74
+ */
75
+ improvement_cost: ImprovementCost;
76
+ prerequisites?: GroupCollection.Spellwork;
77
+ src: PublicationRefs;
78
+ /**
79
+ * All translations for the entry, identified by IETF language tag (BCP47).
80
+ * @minProperties 1
81
+ */
82
+ translations: {
83
+ /**
84
+ * @patternProperties ^[a-z]{2}-[A-Z]{2}$
85
+ */
86
+ [localeId: string]: {
87
+ /**
88
+ * The name of the ritual.
89
+ * @minLength 1
90
+ */
91
+ name: string;
92
+ /**
93
+ * The effect description may be either a plain text or a text that is
94
+ * divided by a list of effects for each quality level. It may also be a
95
+ * list for each two quality levels.
96
+ */
97
+ effect: Effect.T;
98
+ /**
99
+ * @deprecated
100
+ */
101
+ casting_time: {
102
+ full: string;
103
+ abbr: string;
104
+ };
105
+ /**
106
+ * @deprecated
107
+ */
108
+ cost: {
109
+ full: string;
110
+ abbr: string;
111
+ };
112
+ /**
113
+ * @deprecated
114
+ */
115
+ range: {
116
+ full: string;
117
+ abbr: string;
118
+ };
119
+ /**
120
+ * @deprecated
121
+ */
122
+ duration: {
123
+ full: string;
124
+ abbr: string;
125
+ };
126
+ /**
127
+ * @deprecated
128
+ */
129
+ target: string;
130
+ errata?: Errata;
131
+ };
132
+ };
133
+ enhancements?: Enhancements;
134
+ };
@@ -0,0 +1,4 @@
1
+ /**
2
+ * @main Ritual
3
+ */
4
+ export {};
@@ -1,27 +1,72 @@
1
1
  /**
2
- * @main SkillModificationIncrement
2
+ * @main SkillModificationLevel
3
3
  */
4
4
  /**
5
- * @title Skill Modification Increment
5
+ * @title Skill Modification Level
6
6
  */
7
- declare type SkillModificationIncrement = {
7
+ export declare type SkillModificationLevel = {
8
8
  /**
9
- * The skill modification increment's identifier. It also represents the
10
- * increment level.
9
+ * The skill modification level's identifier.
11
10
  * @integer
12
11
  * @minimum 1
13
12
  * @maximum 6
14
- *
15
13
  */
16
14
  id: number;
17
15
  /**
18
16
  * Configuration for this level for fast skills (spells, liturgical chants).
19
17
  */
20
- fast: LevelTypeConfig;
18
+ fast: {
19
+ /**
20
+ * The casting time in actions.
21
+ * @integer
22
+ * @minimum 1
23
+ */
24
+ casting_time: number;
25
+ /**
26
+ * The range in meters.
27
+ * @integer
28
+ * @minimum 1
29
+ */
30
+ range: number;
31
+ /**
32
+ * The cost in AE/KP.
33
+ * @integer
34
+ * @minimum 1
35
+ */
36
+ cost: number;
37
+ };
21
38
  /**
22
39
  * Configuration for this level for slow skills (rituals, ceremonies).
23
40
  */
24
- slow: LevelTypeConfig;
41
+ slow: {
42
+ /**
43
+ * The casting time.
44
+ */
45
+ casting_time: {
46
+ /**
47
+ * The (unitless) casting time.
48
+ * @integer
49
+ * @minimum 1
50
+ */
51
+ value: number;
52
+ /**
53
+ * The unit for the `value`.
54
+ */
55
+ unit: SlowSkillCastingTimeUnit;
56
+ };
57
+ /**
58
+ * The range in meters.
59
+ * @integer
60
+ * @minimum 1
61
+ */
62
+ range: number;
63
+ /**
64
+ * The cost in AE/KP.
65
+ * @integer
66
+ * @minimum 1
67
+ */
68
+ cost: number;
69
+ };
25
70
  /**
26
71
  * All translations for the entry, identified by IETF language tag (BCP47).
27
72
  * @minProperties 1
@@ -47,29 +92,10 @@ declare type SkillModificationIncrement = {
47
92
  };
48
93
  };
49
94
  };
50
- /**
51
- * Configuration of a type for a level.
52
- */
53
- declare type LevelTypeConfig = {
54
- /**
55
- * Casting time in actions.
56
- * @integer
57
- * @minimum 1
58
- */
59
- casting_time: number;
60
- /**
61
- * Range in meters.
62
- * @integer
63
- * @minimum 1
64
- */
65
- range: number;
66
- /**
67
- * Cost in AE/KP.
68
- * @integer
69
- * @minimum 1
70
- */
71
- cost: number;
72
- };
95
+ export declare enum SlowSkillCastingTimeUnit {
96
+ Minutes = "Minutes",
97
+ Hours = "Hours"
98
+ }
73
99
  /**
74
100
  * Configuration translation of a type for a level. Values set here override the
75
101
  * default generated text.
@@ -80,3 +106,4 @@ declare type LevelTypeConfigTranslation = {
80
106
  */
81
107
  range: string;
82
108
  };
109
+ export {};
@@ -0,0 +1,8 @@
1
+ /**
2
+ * @main SkillModificationLevel
3
+ */
4
+ export var SlowSkillCastingTimeUnit;
5
+ (function (SlowSkillCastingTimeUnit) {
6
+ SlowSkillCastingTimeUnit["Minutes"] = "Minutes";
7
+ SlowSkillCastingTimeUnit["Hours"] = "Hours";
8
+ })(SlowSkillCastingTimeUnit || (SlowSkillCastingTimeUnit = {}));