optolith-database-schema 0.0.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.
- package/AUTHORS +1 -0
- package/CHANGELOG.md +27 -0
- package/CODEOWNERS +1 -0
- package/LICENSE +378 -0
- package/README.md +17 -0
- package/lib/main.d.ts +1 -0
- package/lib/main.js +1 -0
- package/lib/types/ArcaneBardTradition.d.ts +32 -0
- package/lib/types/ArcaneBardTradition.js +4 -0
- package/lib/types/ArcaneDancerTradition.d.ts +32 -0
- package/lib/types/ArcaneDancerTradition.js +4 -0
- package/lib/types/Aspect.d.ts +36 -0
- package/lib/types/Aspect.js +4 -0
- package/lib/types/Attribute.d.ts +42 -0
- package/lib/types/Attribute.js +5 -0
- package/lib/types/CombatTechnique_Close.d.ts +80 -0
- package/lib/types/CombatTechnique_Close.js +4 -0
- package/lib/types/CombatTechnique_Ranged.d.ts +62 -0
- package/lib/types/CombatTechnique_Ranged.js +4 -0
- package/lib/types/Condition.d.ts +51 -0
- package/lib/types/Condition.js +4 -0
- package/lib/types/Culture.d.ts +494 -0
- package/lib/types/Culture.js +4 -0
- package/lib/types/DerivedCharacteristic.d.ts +65 -0
- package/lib/types/DerivedCharacteristic.js +4 -0
- package/lib/types/Element.d.ts +30 -0
- package/lib/types/Element.js +4 -0
- package/lib/types/ExperienceLevel.d.ts +68 -0
- package/lib/types/ExperienceLevel.js +4 -0
- package/lib/types/EyeColor.d.ts +30 -0
- package/lib/types/EyeColor.js +4 -0
- package/lib/types/HairColor.d.ts +30 -0
- package/lib/types/HairColor.js +4 -0
- package/lib/types/Lessons_Curriculum.d.ts +297 -0
- package/lib/types/Lessons_Curriculum.js +4 -0
- package/lib/types/Lessons_Guideline.d.ts +36 -0
- package/lib/types/Lessons_Guideline.js +4 -0
- package/lib/types/Locale.d.ts +38 -0
- package/lib/types/Locale.js +4 -0
- package/lib/types/MetaCondition.d.ts +54 -0
- package/lib/types/MetaCondition.js +4 -0
- package/lib/types/Property.d.ts +36 -0
- package/lib/types/Property.js +4 -0
- package/lib/types/Race.d.ts +524 -0
- package/lib/types/Race.js +13 -0
- package/lib/types/Region.d.ts +30 -0
- package/lib/types/Region.js +4 -0
- package/lib/types/Service.d.ts +40 -0
- package/lib/types/Service.js +4 -0
- package/lib/types/SexPractice.d.ts +53 -0
- package/lib/types/SexPractice.js +4 -0
- package/lib/types/Skill.d.ts +169 -0
- package/lib/types/Skill.js +4 -0
- package/lib/types/SkillGroup.d.ts +40 -0
- package/lib/types/SkillGroup.js +4 -0
- package/lib/types/SkillModificationIncrement.d.ts +82 -0
- package/lib/types/SkillModificationIncrement.js +4 -0
- package/lib/types/SocialStatus.d.ts +30 -0
- package/lib/types/SocialStatus.js +4 -0
- package/lib/types/State.d.ts +40 -0
- package/lib/types/State.js +4 -0
- package/lib/types/TargetCategory.d.ts +36 -0
- package/lib/types/TargetCategory.js +4 -0
- package/lib/types/_ActivatableSkill.d.ts +919 -0
- package/lib/types/_ActivatableSkill.js +38 -0
- package/lib/types/_CommonnessRatedAdvantageDisadvantage.d.ts +12 -0
- package/lib/types/_CommonnessRatedAdvantageDisadvantage.js +1 -0
- package/lib/types/_ImprovementCost.d.ts +9 -0
- package/lib/types/_ImprovementCost.js +10 -0
- package/lib/types/_Prerequisite.d.ts +274 -0
- package/lib/types/_Prerequisite.js +4 -0
- package/lib/types/_Sex.d.ts +11 -0
- package/lib/types/_Sex.js +4 -0
- package/lib/types/_SkillCheck.d.ts +28 -0
- package/lib/types/_SkillCheck.js +1 -0
- package/lib/types/magicalActions/AnimistPower.d.ts +227 -0
- package/lib/types/magicalActions/AnimistPower.js +4 -0
- package/lib/types/magicalActions/AnimistPower_Tribe.d.ts +30 -0
- package/lib/types/magicalActions/AnimistPower_Tribe.js +4 -0
- package/lib/types/magicalActions/Curse.d.ts +228 -0
- package/lib/types/magicalActions/Curse.js +4 -0
- package/lib/types/magicalActions/DominationRitual.d.ts +181 -0
- package/lib/types/magicalActions/DominationRitual.js +4 -0
- package/lib/types/magicalActions/ElvenMagicalSong.d.ts +149 -0
- package/lib/types/magicalActions/ElvenMagicalSong.js +4 -0
- package/lib/types/magicalActions/GeodeRitual.d.ts +162 -0
- package/lib/types/magicalActions/GeodeRitual.js +4 -0
- package/lib/types/magicalActions/JesterTrick.d.ts +167 -0
- package/lib/types/magicalActions/JesterTrick.js +4 -0
- package/lib/types/magicalActions/MagicalDance.d.ts +184 -0
- package/lib/types/magicalActions/MagicalDance.js +4 -0
- package/lib/types/magicalActions/MagicalMelody.d.ts +132 -0
- package/lib/types/magicalActions/MagicalMelody.js +4 -0
- package/lib/types/magicalActions/MagicalRune.d.ts +241 -0
- package/lib/types/magicalActions/MagicalRune.js +4 -0
- package/lib/types/magicalActions/ZibiljaRitual.d.ts +101 -0
- package/lib/types/magicalActions/ZibiljaRitual.js +4 -0
- package/lib/types/magicalActions/_MusicTradition.d.ts +28 -0
- package/lib/types/magicalActions/_MusicTradition.js +1 -0
- package/lib/types/magicalActions/_SkillReference.d.ts +13 -0
- package/lib/types/magicalActions/_SkillReference.js +5 -0
- package/lib/types/rule/FocusRule.d.ts +53 -0
- package/lib/types/rule/FocusRule.js +4 -0
- package/lib/types/rule/FocusRule_Subject.d.ts +31 -0
- package/lib/types/rule/FocusRule_Subject.js +4 -0
- package/lib/types/rule/OptionalRule.d.ts +65 -0
- package/lib/types/rule/OptionalRule.js +4 -0
- package/lib/types/source/Publication.d.ts +4 -0
- package/lib/types/source/Publication.js +4 -0
- package/lib/types/source/_Erratum.d.ts +25 -0
- package/lib/types/source/_Erratum.js +4 -0
- package/lib/types/source/_PublicationRef.d.ts +146 -0
- package/lib/types/source/_PublicationRef.js +4 -0
- package/lib/validation/integrity.d.ts +16 -0
- package/lib/validation/integrity.js +3 -0
- package/package.json +37 -0
- package/schema/ArcaneBardTradition.schema.json +49 -0
- package/schema/ArcaneDancerTradition.schema.json +49 -0
- package/schema/Aspect.schema.json +50 -0
- package/schema/Attribute.schema.json +57 -0
- package/schema/CombatTechnique_Close.schema.json +127 -0
- package/schema/CombatTechnique_Ranged.schema.json +83 -0
- package/schema/Condition.schema.json +84 -0
- package/schema/Culture.schema.json +858 -0
- package/schema/DerivedCharacteristic.schema.json +90 -0
- package/schema/Element.schema.json +45 -0
- package/schema/ExperienceLevel.schema.json +84 -0
- package/schema/EyeColor.schema.json +45 -0
- package/schema/HairColor.schema.json +45 -0
- package/schema/Lessons_Curriculum.schema.json +500 -0
- package/schema/Lessons_Guideline.schema.json +51 -0
- package/schema/Locale.schema.json +45 -0
- package/schema/MetaCondition.schema.json +85 -0
- package/schema/Property.schema.json +49 -0
- package/schema/Race.schema.json +724 -0
- package/schema/Region.schema.json +45 -0
- package/schema/Service.schema.json +58 -0
- package/schema/SexPractice.schema.json +72 -0
- package/schema/Skill.schema.json +278 -0
- package/schema/SkillGroup.schema.json +56 -0
- package/schema/SkillModificationIncrement.schema.json +98 -0
- package/schema/SocialStatus.schema.json +45 -0
- package/schema/State.schema.json +58 -0
- package/schema/TargetCategory.schema.json +51 -0
- package/schema/_ActivatableSkill.schema.json +1534 -0
- package/schema/_CommonnessRatedAdvantageDisadvantage.schema.json +22 -0
- package/schema/_ImprovementCost.schema.json +15 -0
- package/schema/_Prerequisite.schema.json +519 -0
- package/schema/_Sex.schema.json +36 -0
- package/schema/_SkillCheck.schema.json +94 -0
- package/schema/magicalActions/AnimistPower.schema.json +411 -0
- package/schema/magicalActions/AnimistPower_Tribe.schema.json +45 -0
- package/schema/magicalActions/Curse.schema.json +378 -0
- package/schema/magicalActions/DominationRitual.schema.json +288 -0
- package/schema/magicalActions/ElvenMagicalSong.schema.json +194 -0
- package/schema/magicalActions/GeodeRitual.schema.json +303 -0
- package/schema/magicalActions/JesterTrick.schema.json +292 -0
- package/schema/magicalActions/MagicalDance.schema.json +328 -0
- package/schema/magicalActions/MagicalMelody.schema.json +254 -0
- package/schema/magicalActions/MagicalRune.schema.json +426 -0
- package/schema/magicalActions/ZibiljaRitual.schema.json +159 -0
- package/schema/magicalActions/_MusicTradition.schema.json +44 -0
- package/schema/magicalActions/_SkillReference.schema.json +26 -0
- package/schema/rule/FocusRule.schema.json +71 -0
- package/schema/rule/FocusRule_Subject.schema.json +46 -0
- package/schema/rule/OptionalRule.schema.json +96 -0
- package/schema/source/Publication.schema.json +165 -0
- package/schema/source/_Erratum.schema.json +37 -0
- package/schema/source/_PublicationRef.schema.json +242 -0
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @title Activatable Skill
|
|
3
|
+
*/
|
|
4
|
+
export var CastingTime;
|
|
5
|
+
(function (CastingTime) {
|
|
6
|
+
let CastingTimeDuringLovemakingUnit;
|
|
7
|
+
(function (CastingTimeDuringLovemakingUnit) {
|
|
8
|
+
CastingTimeDuringLovemakingUnit["SeductionActions"] = "SeductionActions";
|
|
9
|
+
CastingTimeDuringLovemakingUnit["Rounds"] = "Rounds";
|
|
10
|
+
})(CastingTimeDuringLovemakingUnit = CastingTime.CastingTimeDuringLovemakingUnit || (CastingTime.CastingTimeDuringLovemakingUnit = {}));
|
|
11
|
+
let SlowSkillCastingTimeUnit;
|
|
12
|
+
(function (SlowSkillCastingTimeUnit) {
|
|
13
|
+
SlowSkillCastingTimeUnit["Minutes"] = "Minutes";
|
|
14
|
+
SlowSkillCastingTimeUnit["Hours"] = "Hours";
|
|
15
|
+
})(SlowSkillCastingTimeUnit = CastingTime.SlowSkillCastingTimeUnit || (CastingTime.SlowSkillCastingTimeUnit = {}));
|
|
16
|
+
})(CastingTime || (CastingTime = {}));
|
|
17
|
+
export var Range;
|
|
18
|
+
(function (Range) {
|
|
19
|
+
let Unit;
|
|
20
|
+
(function (Unit) {
|
|
21
|
+
Unit["Steps"] = "Steps";
|
|
22
|
+
Unit["Miles"] = "Miles";
|
|
23
|
+
})(Unit = Range.Unit || (Range.Unit = {}));
|
|
24
|
+
})(Range || (Range = {}));
|
|
25
|
+
export var Duration;
|
|
26
|
+
(function (Duration) {
|
|
27
|
+
let Unit;
|
|
28
|
+
(function (Unit) {
|
|
29
|
+
Unit["Seconds"] = "Seconds";
|
|
30
|
+
Unit["Minutes"] = "Minutes";
|
|
31
|
+
Unit["Hours"] = "Hours";
|
|
32
|
+
Unit["Days"] = "Days";
|
|
33
|
+
Unit["Weeks"] = "Weeks";
|
|
34
|
+
Unit["Months"] = "Months";
|
|
35
|
+
Unit["Years"] = "Years";
|
|
36
|
+
Unit["CombatRounds"] = "CombatRounds";
|
|
37
|
+
})(Unit = Duration.Unit || (Duration.Unit = {}));
|
|
38
|
+
})(Duration || (Duration = {}));
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Reference to a commonness-rated advantage or disadvantage. Commonness-rating terms used in the source books are strongly recommended, common, uncommon, suggested and unsuitable.
|
|
3
|
+
* @title Commonness-rated Advantage/Disadvantage
|
|
4
|
+
*/
|
|
5
|
+
export declare type CommonnessRatedAdvantageDisadvantage = {
|
|
6
|
+
/**
|
|
7
|
+
* The advantage's or disadvantage's identifier.
|
|
8
|
+
* @integer
|
|
9
|
+
* @minimum 1
|
|
10
|
+
*/
|
|
11
|
+
id: number;
|
|
12
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @title Improvement Cost
|
|
3
|
+
*/
|
|
4
|
+
export var ImprovementCost;
|
|
5
|
+
(function (ImprovementCost) {
|
|
6
|
+
ImprovementCost["A"] = "A";
|
|
7
|
+
ImprovementCost["B"] = "B";
|
|
8
|
+
ImprovementCost["C"] = "C";
|
|
9
|
+
ImprovementCost["D"] = "D";
|
|
10
|
+
})(ImprovementCost || (ImprovementCost = {}));
|
|
@@ -0,0 +1,274 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @title Prerequisites
|
|
3
|
+
*/
|
|
4
|
+
import { BinarySex } from "./_Sex";
|
|
5
|
+
/**
|
|
6
|
+
* @title Single Prerequisites
|
|
7
|
+
*/
|
|
8
|
+
export declare namespace Single {
|
|
9
|
+
namespace DisplayOption {
|
|
10
|
+
/**
|
|
11
|
+
* @title Display Option
|
|
12
|
+
*/
|
|
13
|
+
type T = {
|
|
14
|
+
tag: "Hide";
|
|
15
|
+
} | {
|
|
16
|
+
tag: "ReplaceWith";
|
|
17
|
+
/**
|
|
18
|
+
* All translations for the entry, identified by IETF language tag (BCP47).
|
|
19
|
+
* @minProperties 1
|
|
20
|
+
*/
|
|
21
|
+
value: {
|
|
22
|
+
/**
|
|
23
|
+
* @patternProperties ^[a-z]{2}-[A-Z]{2}$
|
|
24
|
+
*/
|
|
25
|
+
[localeId: string]: string;
|
|
26
|
+
};
|
|
27
|
+
};
|
|
28
|
+
}
|
|
29
|
+
namespace Sex {
|
|
30
|
+
/**
|
|
31
|
+
* Requires a specific sex.
|
|
32
|
+
* @title Sex Prerequisite
|
|
33
|
+
*/
|
|
34
|
+
type T = {
|
|
35
|
+
tag: "Sex";
|
|
36
|
+
id: BinarySex;
|
|
37
|
+
display_option?: DisplayOption.T;
|
|
38
|
+
};
|
|
39
|
+
}
|
|
40
|
+
namespace Race {
|
|
41
|
+
/**
|
|
42
|
+
* Requires a specific culture or one of a specific set of cultures.
|
|
43
|
+
* @title Race Prerequisite
|
|
44
|
+
*/
|
|
45
|
+
export type T = {
|
|
46
|
+
tag: "Culture";
|
|
47
|
+
id: Identifier;
|
|
48
|
+
active: boolean;
|
|
49
|
+
display_option?: DisplayOption.T;
|
|
50
|
+
};
|
|
51
|
+
type Identifier = SingleIdentifier | MultipleIdentifiers;
|
|
52
|
+
/**
|
|
53
|
+
* @minimum 1
|
|
54
|
+
*/
|
|
55
|
+
type SingleIdentifier = number;
|
|
56
|
+
/**
|
|
57
|
+
* @minItems 2
|
|
58
|
+
*/
|
|
59
|
+
type MultipleIdentifiers = SingleIdentifier[];
|
|
60
|
+
export {};
|
|
61
|
+
}
|
|
62
|
+
namespace Culture {
|
|
63
|
+
/**
|
|
64
|
+
* Requires a specific race or one of a specific set of races. You can also
|
|
65
|
+
* provide an object to say whether the hero must meet one of the races or
|
|
66
|
+
* if the entry does not allow one of the races.
|
|
67
|
+
* @title Culture Prerequisite
|
|
68
|
+
*/
|
|
69
|
+
export type T = {
|
|
70
|
+
tag: "Culture";
|
|
71
|
+
id: Identifier;
|
|
72
|
+
display_option?: DisplayOption.T;
|
|
73
|
+
};
|
|
74
|
+
type Identifier = SingleIdentifier | MultipleIdentifiers;
|
|
75
|
+
/**
|
|
76
|
+
* @minimum 1
|
|
77
|
+
*/
|
|
78
|
+
type SingleIdentifier = number;
|
|
79
|
+
/**
|
|
80
|
+
* @minItems 2
|
|
81
|
+
*/
|
|
82
|
+
type MultipleIdentifiers = SingleIdentifier[];
|
|
83
|
+
export {};
|
|
84
|
+
}
|
|
85
|
+
namespace Rule {
|
|
86
|
+
/**
|
|
87
|
+
* @title Rule Prerequisite
|
|
88
|
+
*/
|
|
89
|
+
export type T = {
|
|
90
|
+
tag: "Rule";
|
|
91
|
+
id: Identifier;
|
|
92
|
+
display_option?: DisplayOption.T;
|
|
93
|
+
};
|
|
94
|
+
type Identifier = {
|
|
95
|
+
tag: "FocusRule";
|
|
96
|
+
/**
|
|
97
|
+
* @integer
|
|
98
|
+
* @minimum 1
|
|
99
|
+
*/
|
|
100
|
+
value: number;
|
|
101
|
+
} | {
|
|
102
|
+
tag: "OptionalRule";
|
|
103
|
+
/**
|
|
104
|
+
* @integer
|
|
105
|
+
* @minimum 1
|
|
106
|
+
*/
|
|
107
|
+
value: number;
|
|
108
|
+
};
|
|
109
|
+
export {};
|
|
110
|
+
}
|
|
111
|
+
namespace Publication {
|
|
112
|
+
/**
|
|
113
|
+
* @title Publication Prerequisite
|
|
114
|
+
*/
|
|
115
|
+
type T = {
|
|
116
|
+
tag: "Publication";
|
|
117
|
+
/**
|
|
118
|
+
* @integer
|
|
119
|
+
* @minimum 1
|
|
120
|
+
*/
|
|
121
|
+
id: number;
|
|
122
|
+
display_option?: DisplayOption.T;
|
|
123
|
+
};
|
|
124
|
+
}
|
|
125
|
+
namespace PrimaryAttribute {
|
|
126
|
+
/**
|
|
127
|
+
* @title Primary Attribute Prerequisite
|
|
128
|
+
*/
|
|
129
|
+
type T = {
|
|
130
|
+
tag: "PrimaryAttribute";
|
|
131
|
+
/**
|
|
132
|
+
* Is the required primary attribute for spellcasters or blessed ones?
|
|
133
|
+
*/
|
|
134
|
+
category: Category;
|
|
135
|
+
/**
|
|
136
|
+
* Required value of the attribute
|
|
137
|
+
* @integer
|
|
138
|
+
* @minimum 9
|
|
139
|
+
*/
|
|
140
|
+
value: number;
|
|
141
|
+
display_option?: DisplayOption.T;
|
|
142
|
+
};
|
|
143
|
+
type Category = {
|
|
144
|
+
tag: "Blessed";
|
|
145
|
+
} | {
|
|
146
|
+
tag: "Magical";
|
|
147
|
+
};
|
|
148
|
+
}
|
|
149
|
+
namespace Pact {
|
|
150
|
+
/**
|
|
151
|
+
* Requires a specific pact.
|
|
152
|
+
* @title Pact Prerequisite
|
|
153
|
+
*/
|
|
154
|
+
type T = {
|
|
155
|
+
tag: "Pact";
|
|
156
|
+
/**
|
|
157
|
+
* The required pact category's identifier.
|
|
158
|
+
* @integer
|
|
159
|
+
* @minimum 1
|
|
160
|
+
*/
|
|
161
|
+
category_id: number;
|
|
162
|
+
/**
|
|
163
|
+
* The required domains' identifiers.
|
|
164
|
+
*/
|
|
165
|
+
domain_id?: DomainId[];
|
|
166
|
+
/**
|
|
167
|
+
* The required pact level.
|
|
168
|
+
* @integer
|
|
169
|
+
* @minimum 1
|
|
170
|
+
*/
|
|
171
|
+
level?: number;
|
|
172
|
+
display_option?: DisplayOption.T;
|
|
173
|
+
};
|
|
174
|
+
/**
|
|
175
|
+
* A domain's identifier.
|
|
176
|
+
* @integer
|
|
177
|
+
* @minimum 1
|
|
178
|
+
*/
|
|
179
|
+
type DomainId = number;
|
|
180
|
+
}
|
|
181
|
+
namespace SocialStatus {
|
|
182
|
+
/**
|
|
183
|
+
* Requires a minimum social status.
|
|
184
|
+
* @title Social Status Prerequisite
|
|
185
|
+
*/
|
|
186
|
+
type T = {
|
|
187
|
+
tag: "SocialStatus";
|
|
188
|
+
/**
|
|
189
|
+
* The minimum social status' identifier.
|
|
190
|
+
* @integer
|
|
191
|
+
* @minimum 2
|
|
192
|
+
* @maximum 5
|
|
193
|
+
*/
|
|
194
|
+
id: number;
|
|
195
|
+
display_option?: DisplayOption.T;
|
|
196
|
+
};
|
|
197
|
+
}
|
|
198
|
+
namespace Influence {
|
|
199
|
+
/**
|
|
200
|
+
* @title Influence Prerequisite
|
|
201
|
+
*/
|
|
202
|
+
type T = {
|
|
203
|
+
tag: "Influence";
|
|
204
|
+
/**
|
|
205
|
+
* The influence' identifier.
|
|
206
|
+
* @integer
|
|
207
|
+
* @minimum 1
|
|
208
|
+
*/
|
|
209
|
+
id: number;
|
|
210
|
+
/**
|
|
211
|
+
* If the referenced influence must or must not be chosen.
|
|
212
|
+
*/
|
|
213
|
+
active: boolean;
|
|
214
|
+
display_option?: DisplayOption.T;
|
|
215
|
+
};
|
|
216
|
+
}
|
|
217
|
+
}
|
|
218
|
+
/**
|
|
219
|
+
* @title Grouped Prerequisites
|
|
220
|
+
*/
|
|
221
|
+
declare namespace Group {
|
|
222
|
+
type DerivedCharacteristic = Single.Rule.T;
|
|
223
|
+
type Publication = Single.Publication.T;
|
|
224
|
+
type ArcaneTradition = Single.Sex.T | Single.Culture.T;
|
|
225
|
+
type GeodeRitual = Single.Influence.T;
|
|
226
|
+
}
|
|
227
|
+
/**
|
|
228
|
+
* @title Prerequisite Collection Types
|
|
229
|
+
*/
|
|
230
|
+
declare namespace Collection {
|
|
231
|
+
type Plain<T> = {
|
|
232
|
+
tag: "Plain";
|
|
233
|
+
/**
|
|
234
|
+
* @minItems 1
|
|
235
|
+
*/
|
|
236
|
+
value: T[];
|
|
237
|
+
};
|
|
238
|
+
type ByLevel<T> = {
|
|
239
|
+
tag: "Plain";
|
|
240
|
+
/**
|
|
241
|
+
* @minItems 1
|
|
242
|
+
*/
|
|
243
|
+
value: T[];
|
|
244
|
+
} | {
|
|
245
|
+
tag: "ByLevel";
|
|
246
|
+
/**
|
|
247
|
+
* @minItems 1
|
|
248
|
+
*/
|
|
249
|
+
value: {
|
|
250
|
+
/**
|
|
251
|
+
* @integer
|
|
252
|
+
* @minimum 1
|
|
253
|
+
*/
|
|
254
|
+
level: number;
|
|
255
|
+
prerequisites: T[];
|
|
256
|
+
}[];
|
|
257
|
+
};
|
|
258
|
+
}
|
|
259
|
+
/**
|
|
260
|
+
* @title Grouped Prerequisite Collections
|
|
261
|
+
*/
|
|
262
|
+
export declare namespace GroupCollection {
|
|
263
|
+
type DerivedCharacteristic = Collection.Plain<Group.DerivedCharacteristic>;
|
|
264
|
+
type Publication = Collection.Plain<Group.Publication>;
|
|
265
|
+
/**
|
|
266
|
+
* @title Arcane Tradition Prerequisites
|
|
267
|
+
*/
|
|
268
|
+
type ArcaneTradition = Collection.Plain<Group.ArcaneTradition>;
|
|
269
|
+
/**
|
|
270
|
+
* @title Geode Ritual Prerequisites
|
|
271
|
+
*/
|
|
272
|
+
type GeodeRitual = Collection.Plain<Group.GeodeRitual>;
|
|
273
|
+
}
|
|
274
|
+
export {};
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The attributes' identifiers of the skill check.
|
|
3
|
+
* @title Skill Check
|
|
4
|
+
*/
|
|
5
|
+
export declare type SkillCheck = [Attribute, Attribute, Attribute];
|
|
6
|
+
declare type Attribute = {
|
|
7
|
+
/**
|
|
8
|
+
* The attribute's identifier.
|
|
9
|
+
* @integer
|
|
10
|
+
* @minimum 1
|
|
11
|
+
* @maximum 8
|
|
12
|
+
*/
|
|
13
|
+
id: number;
|
|
14
|
+
};
|
|
15
|
+
/**
|
|
16
|
+
* A specific value that represents a penalty for the associated skill check.
|
|
17
|
+
* @title Skill Check Penalty
|
|
18
|
+
*/
|
|
19
|
+
export declare type SkillCheckPenalty = {
|
|
20
|
+
tag: "SPI";
|
|
21
|
+
} | {
|
|
22
|
+
tag: "SPI/2";
|
|
23
|
+
} | {
|
|
24
|
+
tag: "TOU";
|
|
25
|
+
} | {
|
|
26
|
+
tag: "SPI/TOU";
|
|
27
|
+
};
|
|
28
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,227 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @main AnimistPower
|
|
3
|
+
*/
|
|
4
|
+
import { Errata } from "../source/_Erratum";
|
|
5
|
+
import { PublicationRefs } from "../source/_PublicationRef";
|
|
6
|
+
import { Duration, Effect } from "../_ActivatableSkill";
|
|
7
|
+
import { ImprovementCost } from "../_ImprovementCost";
|
|
8
|
+
import { SkillCheck } from "../_SkillCheck";
|
|
9
|
+
/**
|
|
10
|
+
* @title Animist Power
|
|
11
|
+
*/
|
|
12
|
+
export declare type AnimistPower = {
|
|
13
|
+
/**
|
|
14
|
+
* The animist power's identifier. An unique, increasing integer.
|
|
15
|
+
* @integer
|
|
16
|
+
* @minimum 1
|
|
17
|
+
*/
|
|
18
|
+
id: number;
|
|
19
|
+
/**
|
|
20
|
+
* Lists the linked three attributes used to make a skill check.
|
|
21
|
+
*/
|
|
22
|
+
check: SkillCheck;
|
|
23
|
+
/**
|
|
24
|
+
* Measurable parameters of a animist power.
|
|
25
|
+
*/
|
|
26
|
+
parameters: PerformanceParameters;
|
|
27
|
+
/**
|
|
28
|
+
* The property's identifier.
|
|
29
|
+
* @integer
|
|
30
|
+
* @minimum 1
|
|
31
|
+
*/
|
|
32
|
+
property_id: number;
|
|
33
|
+
/**
|
|
34
|
+
* The tribe traditions the animist power is available to. It may be available
|
|
35
|
+
* to all or only specific tribes.
|
|
36
|
+
*/
|
|
37
|
+
tribe_tradition: {
|
|
38
|
+
tag: "General";
|
|
39
|
+
} | {
|
|
40
|
+
tag: "Specific";
|
|
41
|
+
/**
|
|
42
|
+
* The specific tribe traditions this animist power is available to.
|
|
43
|
+
* @minItems 1
|
|
44
|
+
* @uniqueItems
|
|
45
|
+
*/
|
|
46
|
+
list: {
|
|
47
|
+
/**
|
|
48
|
+
* The tribe's identifier.
|
|
49
|
+
* @integer
|
|
50
|
+
* @minimum 1
|
|
51
|
+
* @maximum 6
|
|
52
|
+
*/
|
|
53
|
+
id: number;
|
|
54
|
+
}[];
|
|
55
|
+
};
|
|
56
|
+
/**
|
|
57
|
+
* States which column is used to improve the skill. It is a fixed value or
|
|
58
|
+
* depends on the primary patron.
|
|
59
|
+
*/
|
|
60
|
+
improvement_cost: {
|
|
61
|
+
tag: "Flat";
|
|
62
|
+
value: ImprovementCost;
|
|
63
|
+
} | {
|
|
64
|
+
tag: "ByPrimaryPatron";
|
|
65
|
+
};
|
|
66
|
+
/**
|
|
67
|
+
* The animist power can have multiple levels. Each level is skilled
|
|
68
|
+
* separately. A previous level must be on at least 10 so that the next higher
|
|
69
|
+
* level can be activated and skilled. A higher level cannot be skilled higher
|
|
70
|
+
* than a lower level. Each level also adds an effect text to the text of the
|
|
71
|
+
* first level.
|
|
72
|
+
* @minItems 1
|
|
73
|
+
*/
|
|
74
|
+
levels?: {
|
|
75
|
+
/**
|
|
76
|
+
* The level number.
|
|
77
|
+
* @integer
|
|
78
|
+
* @minimum 2
|
|
79
|
+
*/
|
|
80
|
+
level: number;
|
|
81
|
+
/**
|
|
82
|
+
* The source references, if different than the references for level 1.
|
|
83
|
+
*/
|
|
84
|
+
src?: PublicationRefs;
|
|
85
|
+
/**
|
|
86
|
+
* All translations for the entry, identified by IETF language tag (BCP47).
|
|
87
|
+
* @minProperties 1
|
|
88
|
+
*/
|
|
89
|
+
translations: {
|
|
90
|
+
/**
|
|
91
|
+
* @patternProperties ^[a-z]{2}-[A-Z]{2}$
|
|
92
|
+
*/
|
|
93
|
+
[localeId: string]: {
|
|
94
|
+
/**
|
|
95
|
+
* An additional effect description for this level.
|
|
96
|
+
* @markdown
|
|
97
|
+
* @minLength 1
|
|
98
|
+
*/
|
|
99
|
+
effect: string;
|
|
100
|
+
};
|
|
101
|
+
};
|
|
102
|
+
}[];
|
|
103
|
+
src: PublicationRefs;
|
|
104
|
+
/**
|
|
105
|
+
* All translations for the entry, identified by IETF language tag (BCP47).
|
|
106
|
+
* @minProperties 1
|
|
107
|
+
*/
|
|
108
|
+
translations: {
|
|
109
|
+
/**
|
|
110
|
+
* @patternProperties ^[a-z]{2}-[A-Z]{2}$
|
|
111
|
+
*/
|
|
112
|
+
[localeId: string]: {
|
|
113
|
+
/**
|
|
114
|
+
* The name of the animist power.
|
|
115
|
+
* @minLength 1
|
|
116
|
+
*/
|
|
117
|
+
name: string;
|
|
118
|
+
/**
|
|
119
|
+
* The full name of the entry as stated in the sources. Only use when
|
|
120
|
+
* `name` needs to be different from full name for text generation
|
|
121
|
+
* purposes.
|
|
122
|
+
* @minLength 1
|
|
123
|
+
*/
|
|
124
|
+
name_in_library?: string;
|
|
125
|
+
/**
|
|
126
|
+
* The effect description may be either a plain text or a text that is
|
|
127
|
+
* divided by a list of effects for each quality level. It may also be a
|
|
128
|
+
* list for each two quality levels.
|
|
129
|
+
*/
|
|
130
|
+
effect: Effect.T;
|
|
131
|
+
/**
|
|
132
|
+
* @deprecated
|
|
133
|
+
*/
|
|
134
|
+
cost: {
|
|
135
|
+
full: string;
|
|
136
|
+
abbr: string;
|
|
137
|
+
};
|
|
138
|
+
/**
|
|
139
|
+
* @deprecated
|
|
140
|
+
*/
|
|
141
|
+
duration: {
|
|
142
|
+
full: string;
|
|
143
|
+
abbr: string;
|
|
144
|
+
};
|
|
145
|
+
errata?: Errata;
|
|
146
|
+
};
|
|
147
|
+
};
|
|
148
|
+
};
|
|
149
|
+
/**
|
|
150
|
+
* Measurable parameters of a animist power.
|
|
151
|
+
*/
|
|
152
|
+
declare type PerformanceParameters = {
|
|
153
|
+
tag: "OneTime";
|
|
154
|
+
/**
|
|
155
|
+
* The AE cost value, either a flat value or defined dynamically by the
|
|
156
|
+
* primary patron.
|
|
157
|
+
*/
|
|
158
|
+
cost: {
|
|
159
|
+
tag: "Fixed";
|
|
160
|
+
/**
|
|
161
|
+
* The AE cost value.
|
|
162
|
+
* @integer
|
|
163
|
+
* @minimum 1
|
|
164
|
+
*/
|
|
165
|
+
value: number;
|
|
166
|
+
/**
|
|
167
|
+
* If defined, half of the AE cost `value` has to be paid each
|
|
168
|
+
* interval.
|
|
169
|
+
*/
|
|
170
|
+
interval?: Duration.UnitValue;
|
|
171
|
+
} | {
|
|
172
|
+
tag: "ByPrimaryPatron";
|
|
173
|
+
/**
|
|
174
|
+
* If defined, half of the AE cost `value` has to be paid each
|
|
175
|
+
* interval.
|
|
176
|
+
*/
|
|
177
|
+
interval?: Duration.UnitValue;
|
|
178
|
+
};
|
|
179
|
+
/**
|
|
180
|
+
* The duration.
|
|
181
|
+
*/
|
|
182
|
+
duration: {
|
|
183
|
+
tag: "Immediate";
|
|
184
|
+
} | {
|
|
185
|
+
tag: "Fixed";
|
|
186
|
+
/**
|
|
187
|
+
* If the duration is the maximum duration, so it may end earlier.
|
|
188
|
+
*/
|
|
189
|
+
is_maximum?: boolean;
|
|
190
|
+
/**
|
|
191
|
+
* The (unitless) duration.
|
|
192
|
+
* @integer
|
|
193
|
+
* @minimum 2
|
|
194
|
+
*/
|
|
195
|
+
value: number;
|
|
196
|
+
/**
|
|
197
|
+
* The duration unit.
|
|
198
|
+
*/
|
|
199
|
+
unit: Duration.Unit;
|
|
200
|
+
} | Duration.CheckResultBasedTaggedAnimistPower;
|
|
201
|
+
} | {
|
|
202
|
+
tag: "Sustained";
|
|
203
|
+
/**
|
|
204
|
+
* The AE cost value, either a flat value or defined dynamically by the
|
|
205
|
+
* primary patron.
|
|
206
|
+
*/
|
|
207
|
+
cost: {
|
|
208
|
+
tag: "Fixed";
|
|
209
|
+
/**
|
|
210
|
+
* The AE cost value.
|
|
211
|
+
* @integer
|
|
212
|
+
* @minimum 1
|
|
213
|
+
*/
|
|
214
|
+
value: number;
|
|
215
|
+
/**
|
|
216
|
+
* Half of the AE cost `value` has to be paid each interval.
|
|
217
|
+
*/
|
|
218
|
+
interval: Duration.UnitValue;
|
|
219
|
+
} | {
|
|
220
|
+
tag: "ByPrimaryPatron";
|
|
221
|
+
/**
|
|
222
|
+
* Half of the AE cost `value` has to be paid each interval.
|
|
223
|
+
*/
|
|
224
|
+
interval: Duration.UnitValue;
|
|
225
|
+
};
|
|
226
|
+
};
|
|
227
|
+
export {};
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @main Tribe
|
|
3
|
+
*/
|
|
4
|
+
/**
|
|
5
|
+
* @title Tribe
|
|
6
|
+
*/
|
|
7
|
+
export declare type Tribe = {
|
|
8
|
+
/**
|
|
9
|
+
* The tribe's identifier. An unique, increasing integer.
|
|
10
|
+
* @integer
|
|
11
|
+
* @minimum 1
|
|
12
|
+
*/
|
|
13
|
+
id: number;
|
|
14
|
+
/**
|
|
15
|
+
* All translations for the entry, identified by IETF language tag (BCP47).
|
|
16
|
+
* @minProperties 1
|
|
17
|
+
*/
|
|
18
|
+
translations: {
|
|
19
|
+
/**
|
|
20
|
+
* @patternProperties ^[a-z]{2}-[A-Z]{2}$
|
|
21
|
+
*/
|
|
22
|
+
[localeId: string]: {
|
|
23
|
+
/**
|
|
24
|
+
* The tribe name.
|
|
25
|
+
* @minLength 1
|
|
26
|
+
*/
|
|
27
|
+
name: string;
|
|
28
|
+
};
|
|
29
|
+
};
|
|
30
|
+
};
|