optolith-database-schema 0.0.1 → 0.0.4

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 (44) hide show
  1. package/CHANGELOG.md +29 -0
  2. package/lib/types/Blessing.d.ts +124 -0
  3. package/lib/types/Blessing.js +4 -0
  4. package/lib/types/Cantrip.d.ts +220 -0
  5. package/lib/types/Cantrip.js +4 -0
  6. package/lib/types/Ceremony.d.ts +144 -0
  7. package/lib/types/Ceremony.js +4 -0
  8. package/lib/types/LiturgicalChant.d.ts +144 -0
  9. package/lib/types/LiturgicalChant.js +4 -0
  10. package/lib/types/PactCategory.d.ts +90 -0
  11. package/lib/types/PactCategory.js +4 -0
  12. package/lib/types/Ritual.d.ts +134 -0
  13. package/lib/types/Ritual.js +4 -0
  14. package/lib/types/{SkillModificationIncrement.d.ts → SkillModificationLevel.d.ts} +58 -31
  15. package/lib/types/SkillModificationLevel.js +8 -0
  16. package/lib/types/Spell.d.ts +134 -0
  17. package/lib/types/Spell.js +4 -0
  18. package/lib/types/_ActivatableSkill.d.ts +86 -37
  19. package/lib/types/_ActivatableSkill.js +0 -5
  20. package/lib/types/_Enhancements.d.ts +66 -0
  21. package/lib/types/_Enhancements.js +4 -0
  22. package/lib/types/_Identifier.d.ts +80 -0
  23. package/lib/types/_Identifier.js +1 -0
  24. package/lib/types/_Prerequisite.d.ts +93 -1
  25. package/lib/types/_Prerequisite.js +183 -1
  26. package/lib/types/magicalActions/GeodeRitual.d.ts +3 -2
  27. package/lib/types/magicalActions/ZibiljaRitual.d.ts +2 -2
  28. package/package.json +2 -2
  29. package/schema/Blessing.schema.json +227 -0
  30. package/schema/Cantrip.schema.json +427 -0
  31. package/schema/Ceremony.schema.json +233 -0
  32. package/schema/LiturgicalChant.schema.json +233 -0
  33. package/schema/PactCategory.schema.json +138 -0
  34. package/schema/Ritual.schema.json +219 -0
  35. package/schema/SkillModificationLevel.schema.json +138 -0
  36. package/schema/Spell.schema.json +219 -0
  37. package/schema/_ActivatableSkill.schema.json +227 -41
  38. package/schema/_Enhancements.schema.json +82 -0
  39. package/schema/_Identifier.schema.json +185 -0
  40. package/schema/_Prerequisite.schema.json +199 -1
  41. package/schema/magicalActions/GeodeRitual.schema.json +1 -1
  42. package/schema/magicalActions/ZibiljaRitual.schema.json +1 -1
  43. package/lib/types/SkillModificationIncrement.js +0 -4
  44. package/schema/SkillModificationIncrement.schema.json +0 -98
package/CHANGELOG.md CHANGED
@@ -2,6 +2,35 @@
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.4](https://github.com/elyukai/optolith-database-schema/compare/v0.0.3...v0.0.4) (2022-03-06)
6
+
7
+
8
+ ### Bug Fixes
9
+
10
+ * broken markdown newlines ([87c5ff2](https://github.com/elyukai/optolith-database-schema/commit/87c5ff243c6df1a9dd966167c85dd41b45c36369))
11
+ * cost map should allow different translations ([f65683f](https://github.com/elyukai/optolith-database-schema/commit/f65683fc45f2c9f16d1571ec9fcbc449eee042b1))
12
+
13
+ ### [0.0.3](https://github.com/elyukai/optolith-database-schema/compare/v0.0.2...v0.0.3) (2022-03-05)
14
+
15
+
16
+ ### Features
17
+
18
+ * blessings ([8586a40](https://github.com/elyukai/optolith-database-schema/commit/8586a4026615ff6ebdc6cfb1e988d71828e5cd23))
19
+ * cantrips ([50397e8](https://github.com/elyukai/optolith-database-schema/commit/50397e83c9322dd36ef0cd28d2924128a6133a27))
20
+ * pact categories ([7b9cbc6](https://github.com/elyukai/optolith-database-schema/commit/7b9cbc66a5f13b40536d03a90f726fd9aff8c15a))
21
+
22
+
23
+ ### Bug Fixes
24
+
25
+ * liturgies do not have properties ([9b2c41d](https://github.com/elyukai/optolith-database-schema/commit/9b2c41dd9996abeac627b652cdb6ce0226760f2a))
26
+
27
+ ### [0.0.2](https://github.com/elyukai/optolith-database-schema/compare/v0.0.1...v0.0.2) (2022-03-05)
28
+
29
+
30
+ ### Features
31
+
32
+ * finish basic activatable skills ([ede33df](https://github.com/elyukai/optolith-database-schema/commit/ede33df9e897cb58f19f58c4e8d5619c2f9be0e0))
33
+
5
34
  ### 0.0.1 (2022-03-05)
6
35
 
7
36
 
@@ -0,0 +1,124 @@
1
+ /**
2
+ * @main Blessing
3
+ */
4
+ import { Errata } from "./source/_Erratum";
5
+ import { PublicationRefs } from "./source/_PublicationRef";
6
+ import { Duration, TargetCategory } from "./_ActivatableSkill";
7
+ /**
8
+ * @title Blessing
9
+ */
10
+ export declare type Blessing = {
11
+ /**
12
+ * The blessing's identifier. An unique, increasing integer.
13
+ * @integer
14
+ * @minimum 1
15
+ */
16
+ id: number;
17
+ /**
18
+ * Measurable parameters of a blessing.
19
+ */
20
+ parameters: PerformanceParameters;
21
+ /**
22
+ * The target category – the kind of creature or object – the skill affects.
23
+ */
24
+ target: TargetCategory.T;
25
+ src: PublicationRefs;
26
+ /**
27
+ * All translations for the entry, identified by IETF language tag (BCP47).
28
+ * @minProperties 1
29
+ */
30
+ translations: {
31
+ /**
32
+ * @patternProperties ^[a-z]{2}-[A-Z]{2}$
33
+ */
34
+ [localeId: string]: {
35
+ /**
36
+ * The name of the blessing.
37
+ * @minLength 1
38
+ */
39
+ name: string;
40
+ /**
41
+ * The effect description.
42
+ * @markdown
43
+ * @minLength 1
44
+ */
45
+ effect: string;
46
+ /**
47
+ * @deprecated
48
+ */
49
+ range: string;
50
+ /**
51
+ * @deprecated
52
+ */
53
+ duration: string;
54
+ /**
55
+ * @deprecated
56
+ */
57
+ target: string;
58
+ errata?: Errata;
59
+ };
60
+ };
61
+ };
62
+ /**
63
+ * Measurable parameters of a blessing.
64
+ */
65
+ declare type PerformanceParameters = {
66
+ range: {
67
+ tag: "Self";
68
+ } | {
69
+ tag: "Touch";
70
+ } | {
71
+ tag: "Fixed";
72
+ /**
73
+ * The range in steps/m.
74
+ * @integer
75
+ * @minimum 1
76
+ */
77
+ value: number;
78
+ };
79
+ duration: {
80
+ tag: "Immediate";
81
+ } | {
82
+ tag: "Fixed";
83
+ /**
84
+ * The (unitless) duration.
85
+ * @integer
86
+ * @minimum 1
87
+ */
88
+ value: number;
89
+ /**
90
+ * The duration unit.
91
+ */
92
+ unit: Duration.Unit;
93
+ } | {
94
+ tag: "Indefinite";
95
+ /**
96
+ * All translations for the entry, identified by IETF language tag (BCP47).
97
+ * @minProperties 1
98
+ */
99
+ translations: {
100
+ /**
101
+ * @patternProperties ^[a-z]{2}-[A-Z]{2}$
102
+ */
103
+ [localeId: string]: {
104
+ /**
105
+ * A description of the duration.
106
+ */
107
+ description: {
108
+ /**
109
+ * The full description of the duration.
110
+ * @minLength 1
111
+ */
112
+ default: string;
113
+ /**
114
+ * A compressed description of the duration for use in small areas
115
+ * (e.g. on character sheet).
116
+ * @minLength 1
117
+ */
118
+ compressed: string;
119
+ };
120
+ };
121
+ };
122
+ };
123
+ };
124
+ export {};
@@ -0,0 +1,4 @@
1
+ /**
2
+ * @main Blessing
3
+ */
4
+ export {};
@@ -0,0 +1,220 @@
1
+ /**
2
+ * @main Spell
3
+ */
4
+ import { Errata } from "./source/_Erratum";
5
+ import { PublicationRefs } from "./source/_PublicationRef";
6
+ import { Duration, Effect, TargetCategory } from "./_ActivatableSkill";
7
+ import { Enhancements } from "./_Enhancements";
8
+ import { ImprovementCost } from "./_ImprovementCost";
9
+ /**
10
+ * @title Spell
11
+ */
12
+ export declare type Spell = {
13
+ /**
14
+ * The spell's identifier. An unique, increasing integer.
15
+ * @integer
16
+ * @minimum 1
17
+ */
18
+ id: number;
19
+ /**
20
+ * Measurable parameters of a spell.
21
+ */
22
+ parameters: PerformanceParameters;
23
+ /**
24
+ * The target category – the kind of creature or object – the skill affects.
25
+ */
26
+ target: TargetCategory.T;
27
+ /**
28
+ * The property's identifier.
29
+ * @integer
30
+ * @minimum 1
31
+ */
32
+ property_id: number;
33
+ /**
34
+ * States which column is used to improve the skill.
35
+ */
36
+ improvement_cost: ImprovementCost;
37
+ /**
38
+ * A note specifying the dissemination of the cantrip in different traditions.
39
+ * Sometimes a cantrip is exclusively available to one or more specific
40
+ * traditions, but usually one the academies and traditions are listed the
41
+ * cantrip is most commonly teached in.
42
+ */
43
+ note: {
44
+ tag: "Exclusive";
45
+ /**
46
+ * The traditions the cantrip is exclusively available to.
47
+ * @minItems 1
48
+ * @uniqueItems
49
+ */
50
+ traditions: {
51
+ /**
52
+ * The magical tradition's identifier.
53
+ * @integer
54
+ * @minimum 2
55
+ */
56
+ id: number;
57
+ }[];
58
+ } | {
59
+ tag: "Common";
60
+ /**
61
+ * The academies and traditions the cantrip is commonly teached in.
62
+ * @minItems 1
63
+ * @uniqueItems
64
+ */
65
+ list: CommonNote[];
66
+ };
67
+ src: PublicationRefs;
68
+ /**
69
+ * All translations for the entry, identified by IETF language tag (BCP47).
70
+ * @minProperties 1
71
+ */
72
+ translations: {
73
+ /**
74
+ * @patternProperties ^[a-z]{2}-[A-Z]{2}$
75
+ */
76
+ [localeId: string]: {
77
+ /**
78
+ * The name of the spell.
79
+ * @minLength 1
80
+ */
81
+ name: string;
82
+ /**
83
+ * The effect description may be either a plain text or a text that is
84
+ * divided by a list of effects for each quality level. It may also be a
85
+ * list for each two quality levels.
86
+ */
87
+ effect: Effect.T;
88
+ /**
89
+ * @deprecated
90
+ */
91
+ casting_time: {
92
+ full: string;
93
+ abbr: string;
94
+ };
95
+ /**
96
+ * @deprecated
97
+ */
98
+ cost: {
99
+ full: string;
100
+ abbr: string;
101
+ };
102
+ /**
103
+ * @deprecated
104
+ */
105
+ range: {
106
+ full: string;
107
+ abbr: string;
108
+ };
109
+ /**
110
+ * @deprecated
111
+ */
112
+ duration: {
113
+ full: string;
114
+ abbr: string;
115
+ };
116
+ /**
117
+ * @deprecated
118
+ */
119
+ target: string;
120
+ errata?: Errata;
121
+ };
122
+ };
123
+ enhancements?: Enhancements;
124
+ };
125
+ /**
126
+ * Measurable parameters of a blessing.
127
+ */
128
+ declare type PerformanceParameters = {
129
+ range: {
130
+ tag: "Self";
131
+ } | {
132
+ tag: "Touch";
133
+ } | {
134
+ tag: "Fixed";
135
+ /**
136
+ * The range in steps/m.
137
+ * @integer
138
+ * @minimum 1
139
+ */
140
+ value: number;
141
+ /**
142
+ * If `true`, the range is a radius.
143
+ */
144
+ is_radius?: true;
145
+ };
146
+ duration: {
147
+ tag: "Immediate";
148
+ } | {
149
+ tag: "Fixed";
150
+ /**
151
+ * If `true`, the duration is a maximum duration.
152
+ */
153
+ is_maximum?: true;
154
+ /**
155
+ * The (unitless) duration.
156
+ * @integer
157
+ * @minimum 1
158
+ */
159
+ value: number;
160
+ /**
161
+ * The duration unit.
162
+ */
163
+ unit: Duration.Unit;
164
+ } | {
165
+ tag: "DuringLovemaking";
166
+ /**
167
+ * The duration in rounds.
168
+ * @integer
169
+ * @minimum 1
170
+ */
171
+ value: number;
172
+ } | {
173
+ tag: "Indefinite";
174
+ /**
175
+ * All translations for the entry, identified by IETF language tag (BCP47).
176
+ * @minProperties 1
177
+ */
178
+ translations: {
179
+ /**
180
+ * @patternProperties ^[a-z]{2}-[A-Z]{2}$
181
+ */
182
+ [localeId: string]: {
183
+ /**
184
+ * A description of the duration.
185
+ */
186
+ description: {
187
+ /**
188
+ * The full description of the duration.
189
+ * @minLength 1
190
+ */
191
+ default: string;
192
+ /**
193
+ * A compressed description of the duration for use in small areas
194
+ * (e.g. on character sheet).
195
+ * @minLength 1
196
+ */
197
+ compressed: string;
198
+ };
199
+ };
200
+ };
201
+ };
202
+ };
203
+ export declare type CommonNote = {
204
+ tag: "Academy";
205
+ /**
206
+ * The academy's curriculum identifier.
207
+ * @integer
208
+ * @minimum 1
209
+ */
210
+ id: number;
211
+ } | {
212
+ tag: "Tradition";
213
+ /**
214
+ * The magical tradition's identifier.
215
+ * @integer
216
+ * @minimum 2
217
+ */
218
+ id: number;
219
+ };
220
+ export {};
@@ -0,0 +1,4 @@
1
+ /**
2
+ * @main Spell
3
+ */
4
+ export {};
@@ -0,0 +1,144 @@
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 tradition(s) the ceremony is available for. Note that general aspects
39
+ * do not have an associated tradition and thus need to be defined in a
40
+ * special way.
41
+ * @minItems 1
42
+ */
43
+ traditions: Tradition[];
44
+ /**
45
+ * States which column is used to improve the skill.
46
+ */
47
+ improvement_cost: ImprovementCost;
48
+ prerequisites?: GroupCollection.Liturgy;
49
+ src: PublicationRefs;
50
+ /**
51
+ * All translations for the entry, identified by IETF language tag (BCP47).
52
+ * @minProperties 1
53
+ */
54
+ translations: {
55
+ /**
56
+ * @patternProperties ^[a-z]{2}-[A-Z]{2}$
57
+ */
58
+ [localeId: string]: {
59
+ /**
60
+ * The name of the ceremony.
61
+ * @minLength 1
62
+ */
63
+ name: string;
64
+ /**
65
+ * A compressed name of the ceremony for use in small areas (e.g. on
66
+ * character sheet). Should only be defined if the `name` does not fit on
67
+ * character sheet.
68
+ * @minLength 1
69
+ */
70
+ name_compressed?: string;
71
+ /**
72
+ * The effect description may be either a plain text or a text that is
73
+ * divided by a list of effects for each quality level. It may also be a
74
+ * list for each two quality levels.
75
+ */
76
+ effect: Effect.T;
77
+ /**
78
+ * @deprecated
79
+ */
80
+ casting_time: {
81
+ full: string;
82
+ abbr: string;
83
+ };
84
+ /**
85
+ * @deprecated
86
+ */
87
+ cost: {
88
+ full: string;
89
+ abbr: string;
90
+ };
91
+ /**
92
+ * @deprecated
93
+ */
94
+ range: {
95
+ full: string;
96
+ abbr: string;
97
+ };
98
+ /**
99
+ * @deprecated
100
+ */
101
+ duration: {
102
+ full: string;
103
+ abbr: string;
104
+ };
105
+ /**
106
+ * @deprecated
107
+ */
108
+ target: string;
109
+ errata?: Errata;
110
+ };
111
+ };
112
+ enhancements?: Enhancements;
113
+ };
114
+ export declare type Tradition = {
115
+ tag: "GeneralAspect";
116
+ /**
117
+ * A general aspect's identifier.
118
+ * @integer
119
+ * @minimum 1
120
+ */
121
+ id: number;
122
+ } | {
123
+ tag: "Tradition";
124
+ /**
125
+ * The blessed tradition's identifier.
126
+ * @integer
127
+ * @minimum 1
128
+ */
129
+ id: number;
130
+ /**
131
+ * The aspect(s) from the tradition the ceremony belongs to. Note that not
132
+ * all traditions have aspects.
133
+ * @minItems 1
134
+ * @maxItems 2
135
+ */
136
+ aspects?: {
137
+ /**
138
+ * The aspect's identifier.
139
+ * @integer
140
+ * @minimum 1
141
+ */
142
+ id: number;
143
+ }[];
144
+ };
@@ -0,0 +1,4 @@
1
+ /**
2
+ * @main Ceremony
3
+ */
4
+ export {};
@@ -0,0 +1,144 @@
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 tradition(s) the liturgical chant is available for. Note that general
39
+ * aspects do not have an associated tradition and thus need to be defined in
40
+ * a special way.
41
+ * @minItems 1
42
+ */
43
+ traditions: Tradition[];
44
+ /**
45
+ * States which column is used to improve the skill.
46
+ */
47
+ improvement_cost: ImprovementCost;
48
+ prerequisites?: GroupCollection.Liturgy;
49
+ src: PublicationRefs;
50
+ /**
51
+ * All translations for the entry, identified by IETF language tag (BCP47).
52
+ * @minProperties 1
53
+ */
54
+ translations: {
55
+ /**
56
+ * @patternProperties ^[a-z]{2}-[A-Z]{2}$
57
+ */
58
+ [localeId: string]: {
59
+ /**
60
+ * The name of the liturgical chant.
61
+ * @minLength 1
62
+ */
63
+ name: string;
64
+ /**
65
+ * A compressed name of the liturgical chant for use in small areas (e.g.
66
+ * on character sheet). Should only be defined if the `name` does not fit
67
+ * on character sheet.
68
+ * @minLength 1
69
+ */
70
+ name_compressed?: string;
71
+ /**
72
+ * The effect description may be either a plain text or a text that is
73
+ * divided by a list of effects for each quality level. It may also be a
74
+ * list for each two quality levels.
75
+ */
76
+ effect: Effect.T;
77
+ /**
78
+ * @deprecated
79
+ */
80
+ casting_time: {
81
+ full: string;
82
+ abbr: string;
83
+ };
84
+ /**
85
+ * @deprecated
86
+ */
87
+ cost: {
88
+ full: string;
89
+ abbr: string;
90
+ };
91
+ /**
92
+ * @deprecated
93
+ */
94
+ range: {
95
+ full: string;
96
+ abbr: string;
97
+ };
98
+ /**
99
+ * @deprecated
100
+ */
101
+ duration: {
102
+ full: string;
103
+ abbr: string;
104
+ };
105
+ /**
106
+ * @deprecated
107
+ */
108
+ target: string;
109
+ errata?: Errata;
110
+ };
111
+ };
112
+ enhancements?: Enhancements;
113
+ };
114
+ export declare type Tradition = {
115
+ tag: "GeneralAspect";
116
+ /**
117
+ * A general aspect's identifier.
118
+ * @integer
119
+ * @minimum 1
120
+ */
121
+ id: number;
122
+ } | {
123
+ tag: "Tradition";
124
+ /**
125
+ * The blessed tradition's identifier.
126
+ * @integer
127
+ * @minimum 1
128
+ */
129
+ id: number;
130
+ /**
131
+ * The aspect(s) from the tradition the ceremony belongs to. Note that not
132
+ * all traditions have aspects.
133
+ * @minItems 1
134
+ * @maxItems 2
135
+ */
136
+ aspects?: {
137
+ /**
138
+ * The aspect's identifier.
139
+ * @integer
140
+ * @minimum 1
141
+ */
142
+ id: number;
143
+ }[];
144
+ };
@@ -0,0 +1,4 @@
1
+ /**
2
+ * @main LiturgicalChant
3
+ */
4
+ export {};