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,65 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @main DerivedCharacteristic
|
|
3
|
+
*/
|
|
4
|
+
import { PublicationRefs } from "./source/_PublicationRef";
|
|
5
|
+
import { GroupCollection } from "./_Prerequisite";
|
|
6
|
+
/**
|
|
7
|
+
* @title Derived Characteristic
|
|
8
|
+
*/
|
|
9
|
+
export declare type DerivedCharacteristic = {
|
|
10
|
+
/**
|
|
11
|
+
* An unique, increasing integer.
|
|
12
|
+
* @integer
|
|
13
|
+
* @minimum 1
|
|
14
|
+
*/
|
|
15
|
+
id: number;
|
|
16
|
+
prerequisites?: GroupCollection.DerivedCharacteristic;
|
|
17
|
+
src: PublicationRefs;
|
|
18
|
+
/**
|
|
19
|
+
* All translations for the entry, identified by IETF language tag (BCP47).
|
|
20
|
+
* @minProperties 1
|
|
21
|
+
*/
|
|
22
|
+
translations: {
|
|
23
|
+
/**
|
|
24
|
+
* @patternProperties ^[a-z]{2}-[A-Z]{2}$
|
|
25
|
+
*/
|
|
26
|
+
[localeId: string]: Translation;
|
|
27
|
+
};
|
|
28
|
+
};
|
|
29
|
+
declare type Translation = {
|
|
30
|
+
/**
|
|
31
|
+
* The characteristic's name.
|
|
32
|
+
* @minLength 1
|
|
33
|
+
*/
|
|
34
|
+
name: string;
|
|
35
|
+
/**
|
|
36
|
+
* The characteristic's abbreviation.
|
|
37
|
+
* @minLength 1
|
|
38
|
+
*/
|
|
39
|
+
abbreviation: string;
|
|
40
|
+
/**
|
|
41
|
+
* Possible calculation strings for the final value.
|
|
42
|
+
*/
|
|
43
|
+
calculation?: Calculation;
|
|
44
|
+
};
|
|
45
|
+
/**
|
|
46
|
+
* Possible calculation strings for the final value.
|
|
47
|
+
*/
|
|
48
|
+
declare type Calculation = {
|
|
49
|
+
/**
|
|
50
|
+
* The default calculation string.
|
|
51
|
+
* @minLength 1
|
|
52
|
+
*/
|
|
53
|
+
default: string;
|
|
54
|
+
/**
|
|
55
|
+
* The calculation string if only half of the primary attribute is used.
|
|
56
|
+
* @minLength 1
|
|
57
|
+
*/
|
|
58
|
+
half_primary?: string;
|
|
59
|
+
/**
|
|
60
|
+
* The calculation string if no primary attribute is used.
|
|
61
|
+
* @minLength 1
|
|
62
|
+
*/
|
|
63
|
+
no_primary?: string;
|
|
64
|
+
};
|
|
65
|
+
export {};
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @main Element
|
|
3
|
+
*/
|
|
4
|
+
/**
|
|
5
|
+
* @title Element
|
|
6
|
+
*/
|
|
7
|
+
export declare type Element = {
|
|
8
|
+
/**
|
|
9
|
+
* The element'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 element's name.
|
|
25
|
+
* @minLength 1
|
|
26
|
+
*/
|
|
27
|
+
name: string;
|
|
28
|
+
};
|
|
29
|
+
};
|
|
30
|
+
};
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @main ExperienceLevel
|
|
3
|
+
*/
|
|
4
|
+
/**
|
|
5
|
+
* Adventure Points and maximum values at hero creation.
|
|
6
|
+
* @title Experience Level
|
|
7
|
+
*/
|
|
8
|
+
export declare type ExperienceLevel = {
|
|
9
|
+
/**
|
|
10
|
+
* An unique, increasing integer.
|
|
11
|
+
* @integer
|
|
12
|
+
* @minimum 1
|
|
13
|
+
*/
|
|
14
|
+
id: number;
|
|
15
|
+
/**
|
|
16
|
+
* The AP value you get.
|
|
17
|
+
* @integer
|
|
18
|
+
*/
|
|
19
|
+
adventure_points: number;
|
|
20
|
+
/**
|
|
21
|
+
* The highest possible attribute value.
|
|
22
|
+
* @integer
|
|
23
|
+
*/
|
|
24
|
+
max_attribute_value: number;
|
|
25
|
+
/**
|
|
26
|
+
* The highest possible skill rating.
|
|
27
|
+
* @integer
|
|
28
|
+
*/
|
|
29
|
+
max_skill_rating: number;
|
|
30
|
+
/**
|
|
31
|
+
* The highest possible combat technique rating.
|
|
32
|
+
* @integer
|
|
33
|
+
*/
|
|
34
|
+
max_combat_technique_rating: number;
|
|
35
|
+
/**
|
|
36
|
+
* The limit for the sum of all attribute values.
|
|
37
|
+
* @integer
|
|
38
|
+
*/
|
|
39
|
+
max_attribute_total: number;
|
|
40
|
+
/**
|
|
41
|
+
* The maximum of spells/chants you can activate.
|
|
42
|
+
* @integer
|
|
43
|
+
*/
|
|
44
|
+
max_number_of_spells_liturgical_chants: number;
|
|
45
|
+
/**
|
|
46
|
+
* The maximum of spells of an unfamiliar tradition you can activate.
|
|
47
|
+
* @integer
|
|
48
|
+
*/
|
|
49
|
+
max_number_of_unfamiliar_spells: number;
|
|
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]: Translation;
|
|
59
|
+
};
|
|
60
|
+
};
|
|
61
|
+
declare type Translation = {
|
|
62
|
+
/**
|
|
63
|
+
* The name of the experience level.
|
|
64
|
+
* @minLength 1
|
|
65
|
+
*/
|
|
66
|
+
name: string;
|
|
67
|
+
};
|
|
68
|
+
export {};
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @main EyeColor
|
|
3
|
+
*/
|
|
4
|
+
/**
|
|
5
|
+
* @title Eye Color
|
|
6
|
+
*/
|
|
7
|
+
export declare type EyeColor = {
|
|
8
|
+
/**
|
|
9
|
+
* The eye color'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 eye color.
|
|
25
|
+
* @minLength 1
|
|
26
|
+
*/
|
|
27
|
+
name: string;
|
|
28
|
+
};
|
|
29
|
+
};
|
|
30
|
+
};
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @main HairColor
|
|
3
|
+
*/
|
|
4
|
+
/**
|
|
5
|
+
* @title Hair Color
|
|
6
|
+
*/
|
|
7
|
+
export declare type HairColor = {
|
|
8
|
+
/**
|
|
9
|
+
* The hair color'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 hair color.
|
|
25
|
+
* @minLength 1
|
|
26
|
+
*/
|
|
27
|
+
name: string;
|
|
28
|
+
};
|
|
29
|
+
};
|
|
30
|
+
};
|
|
@@ -0,0 +1,297 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @main Curriculum
|
|
3
|
+
*/
|
|
4
|
+
import { Errata } from "./source/_Erratum";
|
|
5
|
+
import { PublicationRefs } from "./source/_PublicationRef";
|
|
6
|
+
/**
|
|
7
|
+
* This is a curriculum of a specified academy, containing the guideline,
|
|
8
|
+
* elective and restricted spellworks as well as the lesson packages of that
|
|
9
|
+
* academy.
|
|
10
|
+
* @title Curriculum
|
|
11
|
+
*/
|
|
12
|
+
export declare type Curriculum = {
|
|
13
|
+
/**
|
|
14
|
+
* The curriculum's identifier. An unique, increasing integer.
|
|
15
|
+
* @integer
|
|
16
|
+
* @minimum 1
|
|
17
|
+
*/
|
|
18
|
+
id: number;
|
|
19
|
+
/**
|
|
20
|
+
* The institution's guideline's identifier.
|
|
21
|
+
* @integer
|
|
22
|
+
* @minimum 1
|
|
23
|
+
* @maximum 6
|
|
24
|
+
*/
|
|
25
|
+
guideline_id: number;
|
|
26
|
+
/**
|
|
27
|
+
* The academy's elective spellworks package.
|
|
28
|
+
*/
|
|
29
|
+
elective_spellworks?: ElectiveSpellworks;
|
|
30
|
+
/**
|
|
31
|
+
* The academy's restricted spellworks package.
|
|
32
|
+
*/
|
|
33
|
+
restricted_spellworks?: RestrictedSpellworks;
|
|
34
|
+
/**
|
|
35
|
+
* A list of available lesson packages.
|
|
36
|
+
*/
|
|
37
|
+
lesson_packages: LessonPackages;
|
|
38
|
+
src: PublicationRefs;
|
|
39
|
+
/**
|
|
40
|
+
* All translations for the entry, identified by IETF language tag (BCP47).
|
|
41
|
+
* @minProperties 1
|
|
42
|
+
*/
|
|
43
|
+
translations: {
|
|
44
|
+
/**
|
|
45
|
+
* @patternProperties ^[a-z]{2}-[A-Z]{2}$
|
|
46
|
+
*/
|
|
47
|
+
[localeId: string]: {
|
|
48
|
+
/**
|
|
49
|
+
* The name of the academy.
|
|
50
|
+
* @minLength 1
|
|
51
|
+
*/
|
|
52
|
+
name: string;
|
|
53
|
+
errata?: Errata;
|
|
54
|
+
};
|
|
55
|
+
};
|
|
56
|
+
};
|
|
57
|
+
/**
|
|
58
|
+
* The academy's elective spellworks package.
|
|
59
|
+
*/
|
|
60
|
+
declare type ElectiveSpellworks = {
|
|
61
|
+
tag: "DefinedByGameMaster";
|
|
62
|
+
} | {
|
|
63
|
+
tag: "Explicit";
|
|
64
|
+
/**
|
|
65
|
+
* @minItems 1
|
|
66
|
+
*/
|
|
67
|
+
list: ElectiveSpellwork[];
|
|
68
|
+
};
|
|
69
|
+
declare type ElectiveSpellwork = {
|
|
70
|
+
id: SpellworkId;
|
|
71
|
+
/**
|
|
72
|
+
* The elective spellwork may only take effect if a certain condition is met.
|
|
73
|
+
* The condition may be related to professions or profession variants, but it
|
|
74
|
+
* is designed so that it can work without a specific profession, as multiple
|
|
75
|
+
* may belong to an institute, but with referencing other entities instead.
|
|
76
|
+
*/
|
|
77
|
+
restriction?: ElectiveSpellworkRestriction;
|
|
78
|
+
};
|
|
79
|
+
/**
|
|
80
|
+
* The elective spellwork may only take effect if a certain condition is met.
|
|
81
|
+
* The condition may be related to professions or profession variants, but it is
|
|
82
|
+
* designed so that it can work without a specific profession, as multiple may
|
|
83
|
+
* belong to an institute, but with referencing other entities instead.
|
|
84
|
+
*/
|
|
85
|
+
declare type ElectiveSpellworkRestriction = {
|
|
86
|
+
tag: "Element";
|
|
87
|
+
/**
|
|
88
|
+
* The element's identifier.
|
|
89
|
+
* @integer
|
|
90
|
+
* @minimum 1
|
|
91
|
+
* @maximum 6
|
|
92
|
+
*/
|
|
93
|
+
id: number;
|
|
94
|
+
};
|
|
95
|
+
/**
|
|
96
|
+
* The academy's restricted spellworks package.
|
|
97
|
+
* @minItems 1
|
|
98
|
+
*/
|
|
99
|
+
declare type RestrictedSpellworks = RestrictedSpellwork[];
|
|
100
|
+
/**
|
|
101
|
+
* The academy's restricted spellworks package.
|
|
102
|
+
*/
|
|
103
|
+
declare type RestrictedSpellwork = {
|
|
104
|
+
tag: "Property";
|
|
105
|
+
/**
|
|
106
|
+
* The identifier of the property that spellworks are disallowed from.
|
|
107
|
+
* @integer
|
|
108
|
+
* @minimum 1
|
|
109
|
+
*/
|
|
110
|
+
id: number;
|
|
111
|
+
/**
|
|
112
|
+
* Exclude specific spellworks from the restriction.
|
|
113
|
+
* @minItems 1
|
|
114
|
+
*/
|
|
115
|
+
exclude?: SpellworkId[];
|
|
116
|
+
/**
|
|
117
|
+
* Spellworks from this property up to a certain number are allowed.
|
|
118
|
+
* Spellworks excluded from this restriction definition using `exclude` do
|
|
119
|
+
* not contribute to the maximum.
|
|
120
|
+
*/
|
|
121
|
+
maximum?: number;
|
|
122
|
+
} | SpellworkId | {
|
|
123
|
+
tag: "DemonSummoning";
|
|
124
|
+
} | {
|
|
125
|
+
tag: "Borbaradian";
|
|
126
|
+
} | {
|
|
127
|
+
tag: "DamageIntelligent";
|
|
128
|
+
};
|
|
129
|
+
/**
|
|
130
|
+
* A list of available lesson packages.
|
|
131
|
+
*/
|
|
132
|
+
declare type LessonPackages = [LessonPackage, LessonPackage];
|
|
133
|
+
/**
|
|
134
|
+
* @title Lesson Package
|
|
135
|
+
* @minProperties 3
|
|
136
|
+
*/
|
|
137
|
+
declare type LessonPackage = {
|
|
138
|
+
/**
|
|
139
|
+
* The lesson package's identifier. An unique, increasing integer.
|
|
140
|
+
* @integer
|
|
141
|
+
* @minimum 1
|
|
142
|
+
*/
|
|
143
|
+
id: number;
|
|
144
|
+
/**
|
|
145
|
+
* The spell values difference of the lesson package. This field reflects the
|
|
146
|
+
* changes (difference) to the field of the same name in the profession
|
|
147
|
+
* package. If a spell gets to SR 0 because of this, it will be removed
|
|
148
|
+
* completely.
|
|
149
|
+
* @minItems 1
|
|
150
|
+
*/
|
|
151
|
+
spellwork_changes?: {
|
|
152
|
+
base: SpellworkAdjustment;
|
|
153
|
+
replacement: SpellworkAdjustment;
|
|
154
|
+
}[];
|
|
155
|
+
skills?: SkillAdjustment[];
|
|
156
|
+
/**
|
|
157
|
+
* All translations for the entry, identified by IETF language tag (BCP47).
|
|
158
|
+
* @minProperties 1
|
|
159
|
+
*/
|
|
160
|
+
translations: {
|
|
161
|
+
/**
|
|
162
|
+
* @patternProperties ^[a-z]{2}-[A-Z]{2}$
|
|
163
|
+
*/
|
|
164
|
+
[localeId: string]: {
|
|
165
|
+
/**
|
|
166
|
+
* The name of the lesson package.
|
|
167
|
+
* @minLength 1
|
|
168
|
+
*/
|
|
169
|
+
name: string;
|
|
170
|
+
/**
|
|
171
|
+
* The spell values difference of the lesson package. Use this field to
|
|
172
|
+
* specify a text that is displayed instead of the generated
|
|
173
|
+
* `spellwork_changes` list. The field is displayed even if no list is
|
|
174
|
+
* present.
|
|
175
|
+
* @minLength 1
|
|
176
|
+
*/
|
|
177
|
+
spellwork_changes?: string;
|
|
178
|
+
};
|
|
179
|
+
};
|
|
180
|
+
};
|
|
181
|
+
declare type SkillAdjustment = {
|
|
182
|
+
tag: "MeleeCombatTechnique";
|
|
183
|
+
/**
|
|
184
|
+
* The melee combat technique's identifier.
|
|
185
|
+
* @integer
|
|
186
|
+
* @minimum 1
|
|
187
|
+
*/
|
|
188
|
+
id: number;
|
|
189
|
+
/**
|
|
190
|
+
* The combat technique points that will be added to the current combat
|
|
191
|
+
* technique rating.
|
|
192
|
+
* @integer
|
|
193
|
+
* @minimum -6
|
|
194
|
+
* @maximum 6
|
|
195
|
+
*/
|
|
196
|
+
points: number;
|
|
197
|
+
} | {
|
|
198
|
+
tag: "RangedCombatTechnique";
|
|
199
|
+
/**
|
|
200
|
+
* The ranged combat technique's identifier.
|
|
201
|
+
* @integer
|
|
202
|
+
* @minimum 1
|
|
203
|
+
*/
|
|
204
|
+
id: number;
|
|
205
|
+
/**
|
|
206
|
+
* The combat technique points that will be added to the current combat
|
|
207
|
+
* technique rating.
|
|
208
|
+
* @integer
|
|
209
|
+
* @minimum -6
|
|
210
|
+
* @maximum 6
|
|
211
|
+
*/
|
|
212
|
+
points: number;
|
|
213
|
+
} | {
|
|
214
|
+
tag: "Skill";
|
|
215
|
+
/**
|
|
216
|
+
* The skill's identifier.
|
|
217
|
+
* @integer
|
|
218
|
+
* @minimum 1
|
|
219
|
+
*/
|
|
220
|
+
id: number;
|
|
221
|
+
/**
|
|
222
|
+
* The skill points that will be added to the current skill rating.
|
|
223
|
+
* @integer
|
|
224
|
+
* @minimum -8
|
|
225
|
+
* @maximum 8
|
|
226
|
+
*/
|
|
227
|
+
points: number;
|
|
228
|
+
} | SpellworkAdjustment;
|
|
229
|
+
declare type SpellworkAdjustment = {
|
|
230
|
+
tag: "Spell";
|
|
231
|
+
/**
|
|
232
|
+
* The spell's identifier.
|
|
233
|
+
* @integer
|
|
234
|
+
* @minimum 1
|
|
235
|
+
*/
|
|
236
|
+
id: number;
|
|
237
|
+
/**
|
|
238
|
+
* The skill points that will be added to the current skill rating. If a
|
|
239
|
+
* spell gets to a skill rating of 0 because of this, it will be removed
|
|
240
|
+
* completely.
|
|
241
|
+
* @integer
|
|
242
|
+
* @minimum -10
|
|
243
|
+
* @maximum 10
|
|
244
|
+
*/
|
|
245
|
+
points: number;
|
|
246
|
+
/**
|
|
247
|
+
* The target tradition's identifier. If the target spell is not from the
|
|
248
|
+
* Guild Mage tradition, specify the tradition identifier here.
|
|
249
|
+
* @integer
|
|
250
|
+
* @minimum 2
|
|
251
|
+
* @default 1
|
|
252
|
+
*/
|
|
253
|
+
tradition_id?: number;
|
|
254
|
+
} | {
|
|
255
|
+
tag: "Ritual";
|
|
256
|
+
/**
|
|
257
|
+
* The ritual's identifier.
|
|
258
|
+
* @integer
|
|
259
|
+
* @minimum 1
|
|
260
|
+
*/
|
|
261
|
+
id: number;
|
|
262
|
+
/**
|
|
263
|
+
* The skill points that will be added to the current skill rating. If a
|
|
264
|
+
* ritual gets to a skill rating of 0 because of this, it will be removed
|
|
265
|
+
* completely.
|
|
266
|
+
* @integer
|
|
267
|
+
* @minimum -10
|
|
268
|
+
* @maximum 10
|
|
269
|
+
*/
|
|
270
|
+
points: number;
|
|
271
|
+
/**
|
|
272
|
+
* The target tradition's identifier. If the target ritual is not from the
|
|
273
|
+
* Guild Mage tradition, specify the tradition identifier here.
|
|
274
|
+
* @integer
|
|
275
|
+
* @minimum 2
|
|
276
|
+
* @default 1
|
|
277
|
+
*/
|
|
278
|
+
tradition_id?: number;
|
|
279
|
+
};
|
|
280
|
+
declare type SpellworkId = {
|
|
281
|
+
tag: "Spell";
|
|
282
|
+
/**
|
|
283
|
+
* The spell's identifier.
|
|
284
|
+
* @integer
|
|
285
|
+
* @minimum 1
|
|
286
|
+
*/
|
|
287
|
+
id: number;
|
|
288
|
+
} | {
|
|
289
|
+
tag: "Ritual";
|
|
290
|
+
/**
|
|
291
|
+
* The ritual's identifier.
|
|
292
|
+
* @integer
|
|
293
|
+
* @minimum 1
|
|
294
|
+
*/
|
|
295
|
+
id: number;
|
|
296
|
+
};
|
|
297
|
+
export {};
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @main Guideline
|
|
3
|
+
*/
|
|
4
|
+
/**
|
|
5
|
+
* @title Guideline
|
|
6
|
+
*/
|
|
7
|
+
export declare type Guideline = {
|
|
8
|
+
/**
|
|
9
|
+
* The region's identifier. An unique, increasing integer.
|
|
10
|
+
* @integer
|
|
11
|
+
* @minimum 1
|
|
12
|
+
*/
|
|
13
|
+
id: number;
|
|
14
|
+
/**
|
|
15
|
+
* Maximum number of spells that can be exchanged.
|
|
16
|
+
* @integer
|
|
17
|
+
* @minimum 0
|
|
18
|
+
*/
|
|
19
|
+
spellwork_changes_allowed: number;
|
|
20
|
+
/**
|
|
21
|
+
* All translations for the entry, identified by IETF language tag (BCP47).
|
|
22
|
+
* @minProperties 1
|
|
23
|
+
*/
|
|
24
|
+
translations: {
|
|
25
|
+
/**
|
|
26
|
+
* @patternProperties ^[a-z]{2}-[A-Z]{2}$
|
|
27
|
+
*/
|
|
28
|
+
[localeId: string]: {
|
|
29
|
+
/**
|
|
30
|
+
* The guideline name.
|
|
31
|
+
* @minLength 1
|
|
32
|
+
*/
|
|
33
|
+
name: string;
|
|
34
|
+
};
|
|
35
|
+
};
|
|
36
|
+
};
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @main Locales
|
|
3
|
+
*/
|
|
4
|
+
/**
|
|
5
|
+
* @title Supported locales
|
|
6
|
+
*/
|
|
7
|
+
declare type Locales = Locale[];
|
|
8
|
+
/**
|
|
9
|
+
* @title Supported locale
|
|
10
|
+
*/
|
|
11
|
+
declare type Locale = {
|
|
12
|
+
/**
|
|
13
|
+
* The locale's identifier. An IETF language tag (BCP47).
|
|
14
|
+
* @pattern ^[a-z]{2}-[A-Z]{2}$
|
|
15
|
+
*/
|
|
16
|
+
id: string;
|
|
17
|
+
/**
|
|
18
|
+
* Name of the language in it's language.
|
|
19
|
+
* @minLength 1
|
|
20
|
+
* @example "Deutsch"
|
|
21
|
+
* @example "English"
|
|
22
|
+
* @example "Nederlands"
|
|
23
|
+
*/
|
|
24
|
+
name: string;
|
|
25
|
+
/**
|
|
26
|
+
* Region in which the language is spoken in it's language.
|
|
27
|
+
* @minLength 1
|
|
28
|
+
* @example "Deutschland"
|
|
29
|
+
* @example "United States"
|
|
30
|
+
* @example "België"
|
|
31
|
+
*/
|
|
32
|
+
region: string;
|
|
33
|
+
/**
|
|
34
|
+
* The language is not (fully) implemented and thus needs to be excluded from
|
|
35
|
+
* stable releases.
|
|
36
|
+
*/
|
|
37
|
+
is_missing_implementation?: boolean;
|
|
38
|
+
};
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @main MetaCondition
|
|
3
|
+
*/
|
|
4
|
+
import { Errata } from "./source/_Erratum";
|
|
5
|
+
import { PublicationRefs } from "./source/_PublicationRef";
|
|
6
|
+
/**
|
|
7
|
+
* Meta Conditions are rule elements that work like conditions in the sense that
|
|
8
|
+
* they have four levels with different effects, but which are not explicitly
|
|
9
|
+
* listed as conditions.
|
|
10
|
+
* @title Meta Condition
|
|
11
|
+
*/
|
|
12
|
+
export declare type MetaCondition = {
|
|
13
|
+
/**
|
|
14
|
+
* The meta condition's identifier. An unique, increasing integer.
|
|
15
|
+
* @integer
|
|
16
|
+
* @minimum 1
|
|
17
|
+
*/
|
|
18
|
+
id: number;
|
|
19
|
+
src: PublicationRefs;
|
|
20
|
+
/**
|
|
21
|
+
* All translations for the entry, identified by IETF language tag (BCP47).
|
|
22
|
+
* @minProperties 1
|
|
23
|
+
*/
|
|
24
|
+
translations: {
|
|
25
|
+
/**
|
|
26
|
+
* @patternProperties ^[a-z]{2}-[A-Z]{2}$
|
|
27
|
+
*/
|
|
28
|
+
[localeId: string]: {
|
|
29
|
+
/**
|
|
30
|
+
* The meta condition's name.
|
|
31
|
+
* @minLength 1
|
|
32
|
+
*/
|
|
33
|
+
name: string;
|
|
34
|
+
/**
|
|
35
|
+
* Additional rules for the meta condition, if applicable.
|
|
36
|
+
* @markdown
|
|
37
|
+
* @minLength 1
|
|
38
|
+
*/
|
|
39
|
+
rules?: string;
|
|
40
|
+
/**
|
|
41
|
+
* The effects for level 1 to 4.
|
|
42
|
+
*/
|
|
43
|
+
effects: [Effect, Effect, Effect, Effect];
|
|
44
|
+
errata?: Errata;
|
|
45
|
+
};
|
|
46
|
+
};
|
|
47
|
+
};
|
|
48
|
+
/**
|
|
49
|
+
* The effect on a level.
|
|
50
|
+
* @markdown
|
|
51
|
+
* @minLength 1
|
|
52
|
+
*/
|
|
53
|
+
declare type Effect = string;
|
|
54
|
+
export {};
|