optolith-database-schema 0.2.1 → 0.2.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.
- package/CHANGELOG.md +36 -0
- package/lib/types/Advantage.d.ts +1 -1
- package/lib/types/Blessing.d.ts +2 -13
- package/lib/types/Cantrip.d.ts +17 -1
- package/lib/types/Disadvantage.d.ts +1 -1
- package/lib/types/_Activatable.d.ts +87 -50
- package/lib/types/_Activatable.js +1 -1
- package/lib/types/_ActivatableSkill.d.ts +3 -0
- package/lib/types/_ActivatableSkill.js +1 -0
- package/lib/types/prerequisites/single/StatePrerequisite.d.ts +1 -1
- package/lib/types/prerequisites/single/TextPrerequisite.d.ts +1 -1
- package/lib/types/specialAbility/BlessedTradition.d.ts +1 -1
- package/lib/types/traditionArtifacts/AttireEnchantment.d.ts +1 -1
- package/package.json +1 -1
- package/schema/Advantage.schema.json +1 -1
- package/schema/Blessing.schema.json +2 -18
- package/schema/Cantrip.schema.json +23 -1
- package/schema/Disadvantage.schema.json +1 -1
- package/schema/_Activatable.schema.json +245 -210
- package/schema/_ActivatableSkill.schema.json +13 -0
- package/schema/prerequisites/single/StatePrerequisite.schema.json +1 -1
- package/schema/prerequisites/single/TextPrerequisite.schema.json +1 -1
- package/schema/specialAbility/BlessedTradition.schema.json +0 -1
- package/schema/traditionArtifacts/AttireEnchantment.schema.json +1 -0
package/CHANGELOG.md
CHANGED
|
@@ -2,6 +2,42 @@
|
|
|
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.2.4](https://github.com/elyukai/optolith-database-schema/compare/v0.2.3...v0.2.4) (2022-03-30)
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
### Features
|
|
9
|
+
|
|
10
|
+
* add actions as duration unit ([5e64e38](https://github.com/elyukai/optolith-database-schema/commit/5e64e38dbbcda2980bb70a2b1c1b8d01b3a31324))
|
|
11
|
+
* add cantrips as target category ([ac4cf38](https://github.com/elyukai/optolith-database-schema/commit/ac4cf380bc96ea20c214938fd96eca1af28b3952))
|
|
12
|
+
* add notes to tradition notes of cantrips ([7b37327](https://github.com/elyukai/optolith-database-schema/commit/7b373271312324064b0bac824511248d07f4ffbe))
|
|
13
|
+
* guild mages tradition can be noted as common for in general ([df175d1](https://github.com/elyukai/optolith-database-schema/commit/df175d1f523fb9f09c0e672b4bc71437763f34b1))
|
|
14
|
+
* remove compressed paramater description option ([7897b72](https://github.com/elyukai/optolith-database-schema/commit/7897b723258d97c1c71dcfef422821657c8efea2))
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
### Bug Fixes
|
|
18
|
+
|
|
19
|
+
* compressed name should be optional ([7281f6a](https://github.com/elyukai/optolith-database-schema/commit/7281f6ae055588511dfdb4ebc186f5e492e823c8))
|
|
20
|
+
* cost needs to be required ([05fd208](https://github.com/elyukai/optolith-database-schema/commit/05fd2086642ee8781f1a33021f98333685234b50))
|
|
21
|
+
|
|
22
|
+
### [0.2.3](https://github.com/elyukai/optolith-database-schema/compare/v0.2.2...v0.2.3) (2022-03-29)
|
|
23
|
+
|
|
24
|
+
|
|
25
|
+
### Features
|
|
26
|
+
|
|
27
|
+
* allow dis-/advantages to not contribute to maximum AP value ([9e401d0](https://github.com/elyukai/optolith-database-schema/commit/9e401d0be40797a5758220233af6c162d1ce76fb))
|
|
28
|
+
|
|
29
|
+
|
|
30
|
+
### Bug Fixes
|
|
31
|
+
|
|
32
|
+
* state prerequisite should have unique tag ([7710fd5](https://github.com/elyukai/optolith-database-schema/commit/7710fd538582b85cd67cb81b2f791774102d17db))
|
|
33
|
+
|
|
34
|
+
### [0.2.2](https://github.com/elyukai/optolith-database-schema/compare/v0.2.1...v0.2.2) (2022-03-29)
|
|
35
|
+
|
|
36
|
+
|
|
37
|
+
### Features
|
|
38
|
+
|
|
39
|
+
* add offset option for deriving AP value from improvement cost ([f556207](https://github.com/elyukai/optolith-database-schema/commit/f55620751b7a68383c74ba8c4256d11802ab99c7))
|
|
40
|
+
|
|
5
41
|
### [0.2.1](https://github.com/elyukai/optolith-database-schema/compare/v0.2.0...v0.2.1) (2022-03-29)
|
|
6
42
|
|
|
7
43
|
|
package/lib/types/Advantage.d.ts
CHANGED
|
@@ -16,7 +16,7 @@ export declare type Advantage = {
|
|
|
16
16
|
skill_uses?: Activatable.SkillUses;
|
|
17
17
|
maximum?: Activatable.Maximum;
|
|
18
18
|
prerequisites?: AdvantageDisadvantagePrerequisites;
|
|
19
|
-
ap_value: Activatable.
|
|
19
|
+
ap_value: Activatable.AdventurePointsValueAdvantagesDisadvantages;
|
|
20
20
|
/**
|
|
21
21
|
* Does this advantage not count towards the maximum of AP to be spent
|
|
22
22
|
* on advantages?
|
package/lib/types/Blessing.d.ts
CHANGED
|
@@ -103,20 +103,9 @@ declare type PerformanceParameters = {
|
|
|
103
103
|
[localeId: string]: {
|
|
104
104
|
/**
|
|
105
105
|
* A description of the duration.
|
|
106
|
+
* @minLength 1
|
|
106
107
|
*/
|
|
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
|
-
};
|
|
108
|
+
description: string;
|
|
120
109
|
};
|
|
121
110
|
};
|
|
122
111
|
};
|
package/lib/types/Cantrip.d.ts
CHANGED
|
@@ -188,9 +188,25 @@ export declare type CommonNote = {
|
|
|
188
188
|
/**
|
|
189
189
|
* The magical tradition's identifier.
|
|
190
190
|
* @integer
|
|
191
|
-
* @minimum
|
|
191
|
+
* @minimum 1
|
|
192
192
|
*/
|
|
193
193
|
id: number;
|
|
194
|
+
/**
|
|
195
|
+
* All translations for the entry, identified by IETF language tag (BCP47).
|
|
196
|
+
* @minProperties 1
|
|
197
|
+
*/
|
|
198
|
+
translations?: {
|
|
199
|
+
/**
|
|
200
|
+
* @patternProperties ^[a-z]{2}-[A-Z]{2}$
|
|
201
|
+
*/
|
|
202
|
+
[localeId: string]: {
|
|
203
|
+
/**
|
|
204
|
+
* A note, appended to the generated string in parenthesis.
|
|
205
|
+
* @minLength 1
|
|
206
|
+
*/
|
|
207
|
+
note: string;
|
|
208
|
+
};
|
|
209
|
+
};
|
|
194
210
|
};
|
|
195
211
|
export declare const validateSchema: import("../validation/schema.js").TypeValidator<Cantrip>;
|
|
196
212
|
export {};
|
|
@@ -14,7 +14,7 @@ export declare type Disadvantage = {
|
|
|
14
14
|
select_options?: Activatable.SelectOptions;
|
|
15
15
|
maximum?: Activatable.Maximum;
|
|
16
16
|
prerequisites?: AdvantageDisadvantagePrerequisites;
|
|
17
|
-
ap_value: Activatable.
|
|
17
|
+
ap_value: Activatable.AdventurePointsValueAdvantagesDisadvantages;
|
|
18
18
|
/**
|
|
19
19
|
* Does this disadvantage not count towards the maximum of AP to be granted by
|
|
20
20
|
* disadvantages?
|
|
@@ -357,53 +357,53 @@ declare type CategoryOption = {
|
|
|
357
357
|
/**
|
|
358
358
|
* Generate AP values for each entry.
|
|
359
359
|
*/
|
|
360
|
-
ap_value?: OptionSkillDeriveAdventurePointsValue<SkillIdentifier
|
|
361
|
-
|
|
360
|
+
ap_value?: OptionSkillDeriveAdventurePointsValue<SkillIdentifier>;
|
|
361
|
+
} | {
|
|
362
|
+
tag: "CombatTechniques";
|
|
363
|
+
/**
|
|
364
|
+
* A list of combat technique categories.
|
|
365
|
+
* @minItems 1
|
|
366
|
+
*/
|
|
367
|
+
categories: {
|
|
368
|
+
tag: CombatTechniqueCategory;
|
|
362
369
|
/**
|
|
363
|
-
*
|
|
364
|
-
*
|
|
370
|
+
* Only include (`Intersection`) or exclude (`Difference`) specific
|
|
371
|
+
* entries.
|
|
365
372
|
*/
|
|
366
|
-
|
|
367
|
-
|
|
368
|
-
|
|
369
|
-
|
|
370
|
-
|
|
371
|
-
*/
|
|
372
|
-
specific?: {
|
|
373
|
-
operation: {
|
|
374
|
-
tag: "Intersection";
|
|
375
|
-
} | {
|
|
376
|
-
tag: "Difference";
|
|
377
|
-
};
|
|
378
|
-
/**
|
|
379
|
-
* The list of specific entries.
|
|
380
|
-
* @minItems 1
|
|
381
|
-
* @uniqueItems
|
|
382
|
-
*/
|
|
383
|
-
list: {
|
|
384
|
-
/**
|
|
385
|
-
* The entry's identifier.
|
|
386
|
-
* @integer
|
|
387
|
-
* @minimum 1
|
|
388
|
-
* @maximum 59
|
|
389
|
-
*/
|
|
390
|
-
id: number;
|
|
391
|
-
}[];
|
|
373
|
+
specific?: {
|
|
374
|
+
operation: {
|
|
375
|
+
tag: "Intersection";
|
|
376
|
+
} | {
|
|
377
|
+
tag: "Difference";
|
|
392
378
|
};
|
|
393
379
|
/**
|
|
394
|
-
*
|
|
380
|
+
* The list of specific entries.
|
|
395
381
|
* @minItems 1
|
|
382
|
+
* @uniqueItems
|
|
396
383
|
*/
|
|
397
|
-
|
|
398
|
-
|
|
384
|
+
list: {
|
|
385
|
+
/**
|
|
386
|
+
* The entry's identifier.
|
|
387
|
+
* @integer
|
|
388
|
+
* @minimum 1
|
|
389
|
+
* @maximum 59
|
|
390
|
+
*/
|
|
391
|
+
id: number;
|
|
392
|
+
}[];
|
|
393
|
+
};
|
|
399
394
|
/**
|
|
400
|
-
* Generate
|
|
395
|
+
* Generate prerequisites for each entry of the category.
|
|
396
|
+
* @minItems 1
|
|
401
397
|
*/
|
|
402
|
-
|
|
403
|
-
};
|
|
398
|
+
prerequisites?: (OptionSkillSelfPrerequisite | OptionOptionPrerequisite)[];
|
|
399
|
+
}[];
|
|
400
|
+
/**
|
|
401
|
+
* Generate AP values for each entry.
|
|
402
|
+
*/
|
|
403
|
+
ap_value?: OptionSkillDeriveAdventurePointsValue<CombatTechniqueIdentifier>;
|
|
404
404
|
};
|
|
405
405
|
declare enum SkillWithEnhancementsCategory {
|
|
406
|
-
|
|
406
|
+
Spells = "Spells",
|
|
407
407
|
Rituals = "Rituals",
|
|
408
408
|
LiturgicalChants = "LiturgicalChants",
|
|
409
409
|
Ceremonies = "Ceremonies"
|
|
@@ -445,14 +445,27 @@ declare type OptionOptionPrerequisite = {
|
|
|
445
445
|
* Generate AP values for each entry.
|
|
446
446
|
*/
|
|
447
447
|
declare type OptionSkillDeriveAdventurePointsValue<Identifier> = {
|
|
448
|
+
/**
|
|
449
|
+
* Derive the cost from the improvement cost of each entry.
|
|
450
|
+
*
|
|
451
|
+
* AP Value = Improvement Cost × `multiplier` + `offset`
|
|
452
|
+
*/
|
|
448
453
|
tag: "DerivedFromImprovementCost";
|
|
449
454
|
/**
|
|
450
455
|
* This number is multiplied with the improvement cost of the entry
|
|
451
456
|
* (A = 1 to D = 4).
|
|
452
457
|
* @integer
|
|
453
458
|
* @minimum 2
|
|
459
|
+
* @default 1
|
|
454
460
|
*/
|
|
455
461
|
multiplier?: number;
|
|
462
|
+
/**
|
|
463
|
+
* This number is added to the maybe multiplied improvement cost of the
|
|
464
|
+
* entry.
|
|
465
|
+
* @integer
|
|
466
|
+
* @default 0
|
|
467
|
+
*/
|
|
468
|
+
offset?: number;
|
|
456
469
|
} | {
|
|
457
470
|
tag: "Fixed";
|
|
458
471
|
/**
|
|
@@ -1801,25 +1814,49 @@ export declare type AdventurePointsValue = {
|
|
|
1801
1814
|
*/
|
|
1802
1815
|
values: AdventurePointsSingleValue[];
|
|
1803
1816
|
} | {
|
|
1804
|
-
tag: "ByImprovementCost";
|
|
1805
1817
|
/**
|
|
1806
|
-
*
|
|
1807
|
-
|
|
1808
|
-
|
|
1809
|
-
|
|
1810
|
-
|
|
1811
|
-
|
|
1812
|
-
|
|
1813
|
-
|
|
1814
|
-
|
|
1815
|
-
|
|
1816
|
-
|
|
1817
|
-
|
|
1818
|
+
* Used if AP value is defined by the selected option(s) or special rules.
|
|
1819
|
+
*/
|
|
1820
|
+
tag: "Indefinite";
|
|
1821
|
+
};
|
|
1822
|
+
export declare type AdventurePointsValueAdvantagesDisadvantages = {
|
|
1823
|
+
tag: "Fixed";
|
|
1824
|
+
/**
|
|
1825
|
+
* A fixed adventure points value. If the entry has levels, this is the cost
|
|
1826
|
+
* for each level as well.
|
|
1827
|
+
*/
|
|
1828
|
+
value: AdventurePointsSingleValue;
|
|
1829
|
+
/**
|
|
1830
|
+
* The AP Value of the entry does not contribute to the AP maximum for
|
|
1831
|
+
* advantages or disadvantages, so it may also be bought if the maximum has
|
|
1832
|
+
* already been reached.
|
|
1833
|
+
*/
|
|
1834
|
+
does_not_contribute_to_maximum?: true;
|
|
1835
|
+
} | {
|
|
1836
|
+
tag: "ByLevel";
|
|
1837
|
+
/**
|
|
1838
|
+
* An entry with levels may have different costs for each level. The length
|
|
1839
|
+
* of the list must match the amount of levels the special ability has.
|
|
1840
|
+
* @minItems 2
|
|
1841
|
+
*/
|
|
1842
|
+
values: AdventurePointsSingleValue[];
|
|
1843
|
+
/**
|
|
1844
|
+
* The AP Value of the entry does not contribute to the AP maximum for
|
|
1845
|
+
* advantages or disadvantages, so it may also be bought if the maximum has
|
|
1846
|
+
* already been reached.
|
|
1847
|
+
*/
|
|
1848
|
+
does_not_contribute_to_maximum?: true;
|
|
1818
1849
|
} | {
|
|
1819
1850
|
/**
|
|
1820
1851
|
* Used if AP value is defined by the selected option(s) or special rules.
|
|
1821
1852
|
*/
|
|
1822
1853
|
tag: "Indefinite";
|
|
1854
|
+
/**
|
|
1855
|
+
* The AP Value of the entry does not contribute to the AP maximum for
|
|
1856
|
+
* advantages or disadvantages, so it may also be bought if the maximum has
|
|
1857
|
+
* already been reached.
|
|
1858
|
+
*/
|
|
1859
|
+
does_not_contribute_to_maximum?: true;
|
|
1823
1860
|
};
|
|
1824
1861
|
/**
|
|
1825
1862
|
* A single adventure points value.
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
*/
|
|
5
5
|
var SkillWithEnhancementsCategory;
|
|
6
6
|
(function (SkillWithEnhancementsCategory) {
|
|
7
|
-
SkillWithEnhancementsCategory["
|
|
7
|
+
SkillWithEnhancementsCategory["Spells"] = "Spells";
|
|
8
8
|
SkillWithEnhancementsCategory["Rituals"] = "Rituals";
|
|
9
9
|
SkillWithEnhancementsCategory["LiturgicalChants"] = "LiturgicalChants";
|
|
10
10
|
SkillWithEnhancementsCategory["Ceremonies"] = "Ceremonies";
|
|
@@ -963,6 +963,7 @@ export declare namespace Duration {
|
|
|
963
963
|
Months = "Months",
|
|
964
964
|
Years = "Years",
|
|
965
965
|
Centuries = "Centuries",
|
|
966
|
+
Actions = "Actions",
|
|
966
967
|
CombatRounds = "CombatRounds"
|
|
967
968
|
}
|
|
968
969
|
type UnitValue = {
|
|
@@ -1012,6 +1013,8 @@ export declare namespace TargetCategory {
|
|
|
1012
1013
|
tag: "Zone";
|
|
1013
1014
|
} | {
|
|
1014
1015
|
tag: "LiturgicalChantsAndCeremonies";
|
|
1016
|
+
} | {
|
|
1017
|
+
tag: "Cantrips";
|
|
1015
1018
|
} | {
|
|
1016
1019
|
tag: "Predefined";
|
|
1017
1020
|
/**
|
|
@@ -29,6 +29,7 @@ export var Duration;
|
|
|
29
29
|
Unit["Months"] = "Months";
|
|
30
30
|
Unit["Years"] = "Years";
|
|
31
31
|
Unit["Centuries"] = "Centuries";
|
|
32
|
+
Unit["Actions"] = "Actions";
|
|
32
33
|
Unit["CombatRounds"] = "CombatRounds";
|
|
33
34
|
})(Unit = Duration.Unit || (Duration.Unit = {}));
|
|
34
35
|
})(Duration || (Duration = {}));
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
* background information – or the referenced entities were not made available
|
|
4
4
|
* for use yet – e.g. races –, but which should be displayed, because it is part
|
|
5
5
|
* of the prerequisite string from the sources.
|
|
6
|
-
* @title
|
|
6
|
+
* @title Text Prerequisite
|
|
7
7
|
*/
|
|
8
8
|
export declare type TextPrerequisite = {
|
|
9
9
|
tag: "Text";
|
|
@@ -147,7 +147,7 @@ export declare type BlessedTradition = {
|
|
|
147
147
|
* descriptions.
|
|
148
148
|
* @minLength 1
|
|
149
149
|
*/
|
|
150
|
-
name_compressed
|
|
150
|
+
name_compressed?: string;
|
|
151
151
|
name_in_library?: Activatable.NameInLibrary;
|
|
152
152
|
/**
|
|
153
153
|
* The special rules of the tradition. They should be sorted like they are
|
|
@@ -15,7 +15,7 @@ export declare type AttireEnchantment = {
|
|
|
15
15
|
maximum?: Activatable.Maximum;
|
|
16
16
|
prerequisites?: GeneralPrerequisites;
|
|
17
17
|
volume: Activatable.Volume;
|
|
18
|
-
cost
|
|
18
|
+
cost: Activatable.EnchantmentCost;
|
|
19
19
|
property: Activatable.Property;
|
|
20
20
|
ap_value: Activatable.AdventurePointsValue;
|
|
21
21
|
src: PublicationRefs;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "optolith-database-schema",
|
|
3
|
-
"version": "0.2.
|
|
3
|
+
"version": "0.2.4",
|
|
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",
|
|
@@ -29,7 +29,7 @@
|
|
|
29
29
|
"$ref": "./_Prerequisite.schema.json#/definitions/AdvantageDisadvantagePrerequisites"
|
|
30
30
|
},
|
|
31
31
|
"ap_value": {
|
|
32
|
-
"$ref": "./_Activatable.schema.json#/definitions/
|
|
32
|
+
"$ref": "./_Activatable.schema.json#/definitions/AdventurePointsValueAdvantagesDisadvantages"
|
|
33
33
|
},
|
|
34
34
|
"has_no_maximum_spent_influence": {
|
|
35
35
|
"description": "Does this advantage not count towards the maximum of AP to be spent\non advantages?",
|
|
@@ -178,24 +178,8 @@
|
|
|
178
178
|
"properties": {
|
|
179
179
|
"description": {
|
|
180
180
|
"description": "A description of the duration.",
|
|
181
|
-
"type": "
|
|
182
|
-
"
|
|
183
|
-
"default": {
|
|
184
|
-
"description": "The full description of the duration.",
|
|
185
|
-
"type": "string",
|
|
186
|
-
"minLength": 1
|
|
187
|
-
},
|
|
188
|
-
"compressed": {
|
|
189
|
-
"description": "A compressed description of the duration for use in small areas\n(e.g. on character sheet).",
|
|
190
|
-
"type": "string",
|
|
191
|
-
"minLength": 1
|
|
192
|
-
}
|
|
193
|
-
},
|
|
194
|
-
"required": [
|
|
195
|
-
"default",
|
|
196
|
-
"compressed"
|
|
197
|
-
],
|
|
198
|
-
"additionalProperties": false
|
|
181
|
+
"type": "string",
|
|
182
|
+
"minLength": 1
|
|
199
183
|
}
|
|
200
184
|
},
|
|
201
185
|
"required": [
|
|
@@ -347,7 +347,29 @@
|
|
|
347
347
|
"id": {
|
|
348
348
|
"description": "The magical tradition's identifier.",
|
|
349
349
|
"type": "integer",
|
|
350
|
-
"minimum":
|
|
350
|
+
"minimum": 1
|
|
351
|
+
},
|
|
352
|
+
"translations": {
|
|
353
|
+
"description": "All translations for the entry, identified by IETF language tag (BCP47).",
|
|
354
|
+
"type": "object",
|
|
355
|
+
"patternProperties": {
|
|
356
|
+
"^[a-z]{2}-[A-Z]{2}$": {
|
|
357
|
+
"type": "object",
|
|
358
|
+
"properties": {
|
|
359
|
+
"note": {
|
|
360
|
+
"description": "A note, appended to the generated string in parenthesis.",
|
|
361
|
+
"type": "string",
|
|
362
|
+
"minLength": 1
|
|
363
|
+
}
|
|
364
|
+
},
|
|
365
|
+
"required": [
|
|
366
|
+
"note"
|
|
367
|
+
],
|
|
368
|
+
"additionalProperties": false
|
|
369
|
+
}
|
|
370
|
+
},
|
|
371
|
+
"minProperties": 1,
|
|
372
|
+
"additionalProperties": false
|
|
351
373
|
}
|
|
352
374
|
},
|
|
353
375
|
"required": [
|
|
@@ -23,7 +23,7 @@
|
|
|
23
23
|
"$ref": "./_Prerequisite.schema.json#/definitions/AdvantageDisadvantagePrerequisites"
|
|
24
24
|
},
|
|
25
25
|
"ap_value": {
|
|
26
|
-
"$ref": "./_Activatable.schema.json#/definitions/
|
|
26
|
+
"$ref": "./_Activatable.schema.json#/definitions/AdventurePointsValueAdvantagesDisadvantages"
|
|
27
27
|
},
|
|
28
28
|
"has_no_maximum_spent_influence": {
|
|
29
29
|
"description": "Does this disadvantage not count towards the maximum of AP to be granted by\ndisadvantages?",
|
|
@@ -644,233 +644,238 @@
|
|
|
644
644
|
"description": "Generate AP values for each entry.",
|
|
645
645
|
"oneOf": [
|
|
646
646
|
{
|
|
647
|
-
"
|
|
648
|
-
"
|
|
649
|
-
{
|
|
650
|
-
"
|
|
651
|
-
"
|
|
652
|
-
"tag": {
|
|
653
|
-
"const": "DerivedFromImprovementCost"
|
|
654
|
-
},
|
|
655
|
-
"multiplier": {
|
|
656
|
-
"description": "This number is multiplied with the improvement cost of the entry\n(A = 1 to D = 4).",
|
|
657
|
-
"type": "integer",
|
|
658
|
-
"minimum": 2
|
|
659
|
-
}
|
|
660
|
-
},
|
|
661
|
-
"required": [
|
|
662
|
-
"tag"
|
|
663
|
-
],
|
|
664
|
-
"additionalProperties": false
|
|
647
|
+
"type": "object",
|
|
648
|
+
"properties": {
|
|
649
|
+
"tag": {
|
|
650
|
+
"description": "Derive the cost from the improvement cost of each entry.\n\nAP Value = Improvement Cost × `multiplier` + `offset`",
|
|
651
|
+
"const": "DerivedFromImprovementCost"
|
|
665
652
|
},
|
|
666
|
-
{
|
|
667
|
-
"
|
|
668
|
-
"
|
|
669
|
-
|
|
670
|
-
|
|
671
|
-
|
|
672
|
-
|
|
673
|
-
|
|
674
|
-
"type": "array",
|
|
675
|
-
"items": {
|
|
676
|
-
"type": "object",
|
|
677
|
-
"properties": {
|
|
678
|
-
"id": {
|
|
679
|
-
"$ref": "./_Identifier.schema.json#/definitions/SkillIdentifier"
|
|
680
|
-
},
|
|
681
|
-
"ap_value": {
|
|
682
|
-
"description": "The AP value for the specified entry.",
|
|
683
|
-
"type": "integer",
|
|
684
|
-
"minimum": 1
|
|
685
|
-
}
|
|
686
|
-
},
|
|
687
|
-
"required": [
|
|
688
|
-
"id",
|
|
689
|
-
"ap_value"
|
|
690
|
-
],
|
|
691
|
-
"additionalProperties": false
|
|
692
|
-
}
|
|
693
|
-
},
|
|
694
|
-
"default": {
|
|
695
|
-
"description": "The default value of an entry. Used as a fallback if no value is\nfound in `list`.",
|
|
696
|
-
"type": "integer",
|
|
697
|
-
"minimum": 1
|
|
698
|
-
}
|
|
699
|
-
},
|
|
700
|
-
"required": [
|
|
701
|
-
"tag",
|
|
702
|
-
"map",
|
|
703
|
-
"default"
|
|
704
|
-
],
|
|
705
|
-
"additionalProperties": false
|
|
653
|
+
"multiplier": {
|
|
654
|
+
"description": "This number is multiplied with the improvement cost of the entry\n(A = 1 to D = 4).",
|
|
655
|
+
"type": "integer",
|
|
656
|
+
"minimum": 2
|
|
657
|
+
},
|
|
658
|
+
"offset": {
|
|
659
|
+
"description": "This number is added to the maybe multiplied improvement cost of the\nentry.",
|
|
660
|
+
"type": "integer"
|
|
706
661
|
}
|
|
707
|
-
|
|
662
|
+
},
|
|
663
|
+
"required": [
|
|
664
|
+
"tag"
|
|
665
|
+
],
|
|
666
|
+
"additionalProperties": false
|
|
708
667
|
},
|
|
709
668
|
{
|
|
710
669
|
"type": "object",
|
|
711
670
|
"properties": {
|
|
712
671
|
"tag": {
|
|
713
|
-
"const": "
|
|
672
|
+
"const": "Fixed"
|
|
714
673
|
},
|
|
715
|
-
"
|
|
716
|
-
"description": "A
|
|
674
|
+
"map": {
|
|
675
|
+
"description": "A mapping of skill identifiers to their specific AP values.",
|
|
717
676
|
"type": "array",
|
|
718
677
|
"items": {
|
|
719
678
|
"type": "object",
|
|
720
679
|
"properties": {
|
|
721
|
-
"
|
|
722
|
-
"$ref": "#/definitions/
|
|
680
|
+
"id": {
|
|
681
|
+
"$ref": "./_Identifier.schema.json#/definitions/SkillIdentifier"
|
|
723
682
|
},
|
|
724
|
-
"
|
|
725
|
-
"description": "
|
|
683
|
+
"ap_value": {
|
|
684
|
+
"description": "The AP value for the specified entry.",
|
|
685
|
+
"type": "integer",
|
|
686
|
+
"minimum": 1
|
|
687
|
+
}
|
|
688
|
+
},
|
|
689
|
+
"required": [
|
|
690
|
+
"id",
|
|
691
|
+
"ap_value"
|
|
692
|
+
],
|
|
693
|
+
"additionalProperties": false
|
|
694
|
+
}
|
|
695
|
+
},
|
|
696
|
+
"default": {
|
|
697
|
+
"description": "The default value of an entry. Used as a fallback if no value is\nfound in `list`.",
|
|
698
|
+
"type": "integer",
|
|
699
|
+
"minimum": 1
|
|
700
|
+
}
|
|
701
|
+
},
|
|
702
|
+
"required": [
|
|
703
|
+
"tag",
|
|
704
|
+
"map",
|
|
705
|
+
"default"
|
|
706
|
+
],
|
|
707
|
+
"additionalProperties": false
|
|
708
|
+
}
|
|
709
|
+
]
|
|
710
|
+
}
|
|
711
|
+
},
|
|
712
|
+
"required": [
|
|
713
|
+
"tag",
|
|
714
|
+
"categories"
|
|
715
|
+
],
|
|
716
|
+
"additionalProperties": false
|
|
717
|
+
},
|
|
718
|
+
{
|
|
719
|
+
"type": "object",
|
|
720
|
+
"properties": {
|
|
721
|
+
"tag": {
|
|
722
|
+
"const": "CombatTechniques"
|
|
723
|
+
},
|
|
724
|
+
"categories": {
|
|
725
|
+
"description": "A list of combat technique categories.",
|
|
726
|
+
"type": "array",
|
|
727
|
+
"items": {
|
|
728
|
+
"type": "object",
|
|
729
|
+
"properties": {
|
|
730
|
+
"tag": {
|
|
731
|
+
"$ref": "#/definitions/CombatTechniqueCategory"
|
|
732
|
+
},
|
|
733
|
+
"specific": {
|
|
734
|
+
"description": "Only include (`Intersection`) or exclude (`Difference`) specific\nentries.",
|
|
735
|
+
"type": "object",
|
|
736
|
+
"properties": {
|
|
737
|
+
"operation": {
|
|
738
|
+
"oneOf": [
|
|
739
|
+
{
|
|
726
740
|
"type": "object",
|
|
727
741
|
"properties": {
|
|
728
|
-
"
|
|
729
|
-
"
|
|
730
|
-
{
|
|
731
|
-
"type": "object",
|
|
732
|
-
"properties": {
|
|
733
|
-
"tag": {
|
|
734
|
-
"const": "Intersection"
|
|
735
|
-
}
|
|
736
|
-
},
|
|
737
|
-
"required": [
|
|
738
|
-
"tag"
|
|
739
|
-
],
|
|
740
|
-
"additionalProperties": false
|
|
741
|
-
},
|
|
742
|
-
{
|
|
743
|
-
"type": "object",
|
|
744
|
-
"properties": {
|
|
745
|
-
"tag": {
|
|
746
|
-
"const": "Difference"
|
|
747
|
-
}
|
|
748
|
-
},
|
|
749
|
-
"required": [
|
|
750
|
-
"tag"
|
|
751
|
-
],
|
|
752
|
-
"additionalProperties": false
|
|
753
|
-
}
|
|
754
|
-
]
|
|
755
|
-
},
|
|
756
|
-
"list": {
|
|
757
|
-
"description": "The list of specific entries.",
|
|
758
|
-
"type": "array",
|
|
759
|
-
"items": {
|
|
760
|
-
"type": "object",
|
|
761
|
-
"properties": {
|
|
762
|
-
"id": {
|
|
763
|
-
"description": "The entry's identifier.",
|
|
764
|
-
"type": "integer",
|
|
765
|
-
"maximum": 59,
|
|
766
|
-
"minimum": 1
|
|
767
|
-
}
|
|
768
|
-
},
|
|
769
|
-
"required": [
|
|
770
|
-
"id"
|
|
771
|
-
],
|
|
772
|
-
"additionalProperties": false
|
|
773
|
-
},
|
|
774
|
-
"minItems": 1,
|
|
775
|
-
"uniqueItems": true
|
|
742
|
+
"tag": {
|
|
743
|
+
"const": "Intersection"
|
|
776
744
|
}
|
|
777
745
|
},
|
|
778
746
|
"required": [
|
|
779
|
-
"
|
|
780
|
-
"list"
|
|
747
|
+
"tag"
|
|
781
748
|
],
|
|
782
749
|
"additionalProperties": false
|
|
783
750
|
},
|
|
784
|
-
|
|
785
|
-
"
|
|
786
|
-
"
|
|
787
|
-
|
|
788
|
-
|
|
789
|
-
|
|
790
|
-
"$ref": "#/definitions/OptionSkillSelfPrerequisite"
|
|
791
|
-
},
|
|
792
|
-
{
|
|
793
|
-
"$ref": "#/definitions/OptionOptionPrerequisite"
|
|
794
|
-
}
|
|
795
|
-
]
|
|
751
|
+
{
|
|
752
|
+
"type": "object",
|
|
753
|
+
"properties": {
|
|
754
|
+
"tag": {
|
|
755
|
+
"const": "Difference"
|
|
756
|
+
}
|
|
796
757
|
},
|
|
797
|
-
"
|
|
758
|
+
"required": [
|
|
759
|
+
"tag"
|
|
760
|
+
],
|
|
761
|
+
"additionalProperties": false
|
|
798
762
|
}
|
|
799
|
-
|
|
800
|
-
"required": [
|
|
801
|
-
"tag"
|
|
802
|
-
],
|
|
803
|
-
"additionalProperties": false
|
|
763
|
+
]
|
|
804
764
|
},
|
|
805
|
-
"
|
|
806
|
-
|
|
807
|
-
|
|
808
|
-
|
|
809
|
-
"oneOf": [
|
|
810
|
-
{
|
|
765
|
+
"list": {
|
|
766
|
+
"description": "The list of specific entries.",
|
|
767
|
+
"type": "array",
|
|
768
|
+
"items": {
|
|
811
769
|
"type": "object",
|
|
812
770
|
"properties": {
|
|
813
|
-
"
|
|
814
|
-
"
|
|
815
|
-
},
|
|
816
|
-
"multiplier": {
|
|
817
|
-
"description": "This number is multiplied with the improvement cost of the entry\n(A = 1 to D = 4).",
|
|
771
|
+
"id": {
|
|
772
|
+
"description": "The entry's identifier.",
|
|
818
773
|
"type": "integer",
|
|
819
|
-
"
|
|
774
|
+
"maximum": 59,
|
|
775
|
+
"minimum": 1
|
|
820
776
|
}
|
|
821
777
|
},
|
|
822
778
|
"required": [
|
|
823
|
-
"
|
|
779
|
+
"id"
|
|
824
780
|
],
|
|
825
781
|
"additionalProperties": false
|
|
826
782
|
},
|
|
783
|
+
"minItems": 1,
|
|
784
|
+
"uniqueItems": true
|
|
785
|
+
}
|
|
786
|
+
},
|
|
787
|
+
"required": [
|
|
788
|
+
"operation",
|
|
789
|
+
"list"
|
|
790
|
+
],
|
|
791
|
+
"additionalProperties": false
|
|
792
|
+
},
|
|
793
|
+
"prerequisites": {
|
|
794
|
+
"description": "Generate prerequisites for each entry of the category.",
|
|
795
|
+
"type": "array",
|
|
796
|
+
"items": {
|
|
797
|
+
"oneOf": [
|
|
798
|
+
{
|
|
799
|
+
"$ref": "#/definitions/OptionSkillSelfPrerequisite"
|
|
800
|
+
},
|
|
827
801
|
{
|
|
828
|
-
"
|
|
829
|
-
"properties": {
|
|
830
|
-
"tag": {
|
|
831
|
-
"const": "Fixed"
|
|
832
|
-
},
|
|
833
|
-
"map": {
|
|
834
|
-
"description": "A mapping of skill identifiers to their specific AP values.",
|
|
835
|
-
"type": "array",
|
|
836
|
-
"items": {
|
|
837
|
-
"type": "object",
|
|
838
|
-
"properties": {
|
|
839
|
-
"id": {
|
|
840
|
-
"$ref": "./_Identifier.schema.json#/definitions/CombatTechniqueIdentifier"
|
|
841
|
-
},
|
|
842
|
-
"ap_value": {
|
|
843
|
-
"description": "The AP value for the specified entry.",
|
|
844
|
-
"type": "integer",
|
|
845
|
-
"minimum": 1
|
|
846
|
-
}
|
|
847
|
-
},
|
|
848
|
-
"required": [
|
|
849
|
-
"id",
|
|
850
|
-
"ap_value"
|
|
851
|
-
],
|
|
852
|
-
"additionalProperties": false
|
|
853
|
-
}
|
|
854
|
-
},
|
|
855
|
-
"default": {
|
|
856
|
-
"description": "The default value of an entry. Used as a fallback if no value is\nfound in `list`.",
|
|
857
|
-
"type": "integer",
|
|
858
|
-
"minimum": 1
|
|
859
|
-
}
|
|
860
|
-
},
|
|
861
|
-
"required": [
|
|
862
|
-
"tag",
|
|
863
|
-
"map",
|
|
864
|
-
"default"
|
|
865
|
-
],
|
|
866
|
-
"additionalProperties": false
|
|
802
|
+
"$ref": "#/definitions/OptionOptionPrerequisite"
|
|
867
803
|
}
|
|
868
804
|
]
|
|
805
|
+
},
|
|
806
|
+
"minItems": 1
|
|
807
|
+
}
|
|
808
|
+
},
|
|
809
|
+
"required": [
|
|
810
|
+
"tag"
|
|
811
|
+
],
|
|
812
|
+
"additionalProperties": false
|
|
813
|
+
},
|
|
814
|
+
"minItems": 1
|
|
815
|
+
},
|
|
816
|
+
"ap_value": {
|
|
817
|
+
"description": "Generate AP values for each entry.",
|
|
818
|
+
"oneOf": [
|
|
819
|
+
{
|
|
820
|
+
"type": "object",
|
|
821
|
+
"properties": {
|
|
822
|
+
"tag": {
|
|
823
|
+
"description": "Derive the cost from the improvement cost of each entry.\n\nAP Value = Improvement Cost × `multiplier` + `offset`",
|
|
824
|
+
"const": "DerivedFromImprovementCost"
|
|
825
|
+
},
|
|
826
|
+
"multiplier": {
|
|
827
|
+
"description": "This number is multiplied with the improvement cost of the entry\n(A = 1 to D = 4).",
|
|
828
|
+
"type": "integer",
|
|
829
|
+
"minimum": 2
|
|
830
|
+
},
|
|
831
|
+
"offset": {
|
|
832
|
+
"description": "This number is added to the maybe multiplied improvement cost of the\nentry.",
|
|
833
|
+
"type": "integer"
|
|
834
|
+
}
|
|
835
|
+
},
|
|
836
|
+
"required": [
|
|
837
|
+
"tag"
|
|
838
|
+
],
|
|
839
|
+
"additionalProperties": false
|
|
840
|
+
},
|
|
841
|
+
{
|
|
842
|
+
"type": "object",
|
|
843
|
+
"properties": {
|
|
844
|
+
"tag": {
|
|
845
|
+
"const": "Fixed"
|
|
846
|
+
},
|
|
847
|
+
"map": {
|
|
848
|
+
"description": "A mapping of skill identifiers to their specific AP values.",
|
|
849
|
+
"type": "array",
|
|
850
|
+
"items": {
|
|
851
|
+
"type": "object",
|
|
852
|
+
"properties": {
|
|
853
|
+
"id": {
|
|
854
|
+
"$ref": "./_Identifier.schema.json#/definitions/CombatTechniqueIdentifier"
|
|
855
|
+
},
|
|
856
|
+
"ap_value": {
|
|
857
|
+
"description": "The AP value for the specified entry.",
|
|
858
|
+
"type": "integer",
|
|
859
|
+
"minimum": 1
|
|
860
|
+
}
|
|
861
|
+
},
|
|
862
|
+
"required": [
|
|
863
|
+
"id",
|
|
864
|
+
"ap_value"
|
|
865
|
+
],
|
|
866
|
+
"additionalProperties": false
|
|
867
|
+
}
|
|
868
|
+
},
|
|
869
|
+
"default": {
|
|
870
|
+
"description": "The default value of an entry. Used as a fallback if no value is\nfound in `list`.",
|
|
871
|
+
"type": "integer",
|
|
872
|
+
"minimum": 1
|
|
869
873
|
}
|
|
870
874
|
},
|
|
871
875
|
"required": [
|
|
872
876
|
"tag",
|
|
873
|
-
"
|
|
877
|
+
"map",
|
|
878
|
+
"default"
|
|
874
879
|
],
|
|
875
880
|
"additionalProperties": false
|
|
876
881
|
}
|
|
@@ -887,7 +892,7 @@
|
|
|
887
892
|
},
|
|
888
893
|
"SkillWithEnhancementsCategory": {
|
|
889
894
|
"enum": [
|
|
890
|
-
"
|
|
895
|
+
"Spells",
|
|
891
896
|
"Rituals",
|
|
892
897
|
"LiturgicalChants",
|
|
893
898
|
"Ceremonies"
|
|
@@ -3323,31 +3328,57 @@
|
|
|
3323
3328
|
"type": "object",
|
|
3324
3329
|
"properties": {
|
|
3325
3330
|
"tag": {
|
|
3326
|
-
"
|
|
3331
|
+
"description": "Used if AP value is defined by the selected option(s) or special rules.",
|
|
3332
|
+
"const": "Indefinite"
|
|
3333
|
+
}
|
|
3334
|
+
},
|
|
3335
|
+
"required": [
|
|
3336
|
+
"tag"
|
|
3337
|
+
],
|
|
3338
|
+
"additionalProperties": false
|
|
3339
|
+
}
|
|
3340
|
+
]
|
|
3341
|
+
},
|
|
3342
|
+
"AdventurePointsValueAdvantagesDisadvantages": {
|
|
3343
|
+
"oneOf": [
|
|
3344
|
+
{
|
|
3345
|
+
"type": "object",
|
|
3346
|
+
"properties": {
|
|
3347
|
+
"tag": {
|
|
3348
|
+
"const": "Fixed"
|
|
3349
|
+
},
|
|
3350
|
+
"value": {
|
|
3351
|
+
"description": "A fixed adventure points value. If the entry has levels, this is the cost\nfor each level as well.",
|
|
3352
|
+
"$ref": "#/definitions/AdventurePointsSingleValue"
|
|
3353
|
+
},
|
|
3354
|
+
"does_not_contribute_to_maximum": {
|
|
3355
|
+
"description": "The AP Value of the entry does not contribute to the AP maximum for\nadvantages or disadvantages, so it may also be bought if the maximum has\nalready been reached.",
|
|
3356
|
+
"const": true
|
|
3357
|
+
}
|
|
3358
|
+
},
|
|
3359
|
+
"required": [
|
|
3360
|
+
"tag",
|
|
3361
|
+
"value"
|
|
3362
|
+
],
|
|
3363
|
+
"additionalProperties": false
|
|
3364
|
+
},
|
|
3365
|
+
{
|
|
3366
|
+
"type": "object",
|
|
3367
|
+
"properties": {
|
|
3368
|
+
"tag": {
|
|
3369
|
+
"const": "ByLevel"
|
|
3327
3370
|
},
|
|
3328
3371
|
"values": {
|
|
3329
|
-
"description": "An entry with
|
|
3330
|
-
"type": "
|
|
3331
|
-
"
|
|
3332
|
-
"
|
|
3333
|
-
"$ref": "#/definitions/AdventurePointsSingleValue"
|
|
3334
|
-
},
|
|
3335
|
-
"B": {
|
|
3336
|
-
"$ref": "#/definitions/AdventurePointsSingleValue"
|
|
3337
|
-
},
|
|
3338
|
-
"C": {
|
|
3339
|
-
"$ref": "#/definitions/AdventurePointsSingleValue"
|
|
3340
|
-
},
|
|
3341
|
-
"D": {
|
|
3342
|
-
"$ref": "#/definitions/AdventurePointsSingleValue"
|
|
3343
|
-
}
|
|
3372
|
+
"description": "An entry with levels may have different costs for each level. The length\nof the list must match the amount of levels the special ability has.",
|
|
3373
|
+
"type": "array",
|
|
3374
|
+
"items": {
|
|
3375
|
+
"$ref": "#/definitions/AdventurePointsSingleValue"
|
|
3344
3376
|
},
|
|
3345
|
-
"
|
|
3346
|
-
|
|
3347
|
-
|
|
3348
|
-
|
|
3349
|
-
|
|
3350
|
-
"additionalProperties": false
|
|
3377
|
+
"minItems": 2
|
|
3378
|
+
},
|
|
3379
|
+
"does_not_contribute_to_maximum": {
|
|
3380
|
+
"description": "The AP Value of the entry does not contribute to the AP maximum for\nadvantages or disadvantages, so it may also be bought if the maximum has\nalready been reached.",
|
|
3381
|
+
"const": true
|
|
3351
3382
|
}
|
|
3352
3383
|
},
|
|
3353
3384
|
"required": [
|
|
@@ -3362,6 +3393,10 @@
|
|
|
3362
3393
|
"tag": {
|
|
3363
3394
|
"description": "Used if AP value is defined by the selected option(s) or special rules.",
|
|
3364
3395
|
"const": "Indefinite"
|
|
3396
|
+
},
|
|
3397
|
+
"does_not_contribute_to_maximum": {
|
|
3398
|
+
"description": "The AP Value of the entry does not contribute to the AP maximum for\nadvantages or disadvantages, so it may also be bought if the maximum has\nalready been reached.",
|
|
3399
|
+
"const": true
|
|
3365
3400
|
}
|
|
3366
3401
|
},
|
|
3367
3402
|
"required": [
|
|
@@ -1600,6 +1600,7 @@
|
|
|
1600
1600
|
"Months",
|
|
1601
1601
|
"Years",
|
|
1602
1602
|
"Centuries",
|
|
1603
|
+
"Actions",
|
|
1603
1604
|
"CombatRounds"
|
|
1604
1605
|
]
|
|
1605
1606
|
},
|
|
@@ -1729,6 +1730,18 @@
|
|
|
1729
1730
|
],
|
|
1730
1731
|
"additionalProperties": false
|
|
1731
1732
|
},
|
|
1733
|
+
{
|
|
1734
|
+
"type": "object",
|
|
1735
|
+
"properties": {
|
|
1736
|
+
"tag": {
|
|
1737
|
+
"const": "Cantrips"
|
|
1738
|
+
}
|
|
1739
|
+
},
|
|
1740
|
+
"required": [
|
|
1741
|
+
"tag"
|
|
1742
|
+
],
|
|
1743
|
+
"additionalProperties": false
|
|
1744
|
+
},
|
|
1732
1745
|
{
|
|
1733
1746
|
"type": "object",
|
|
1734
1747
|
"properties": {
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
"$id": "/prerequisites/single/TextPrerequisite.schema.json",
|
|
4
4
|
"definitions": {
|
|
5
5
|
"TextPrerequisite": {
|
|
6
|
-
"title": "
|
|
6
|
+
"title": "Text Prerequisite",
|
|
7
7
|
"description": "A prerequisite that is either not verifyable in general – e.g. roleplay or\nbackground information – or the referenced entities were not made available\nfor use yet – e.g. races –, but which should be displayed, because it is part\nof the prerequisite string from the sources.",
|
|
8
8
|
"type": "object",
|
|
9
9
|
"properties": {
|