@opencharacter/orc-2e 0.2.0 → 0.3.0
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/README.md +69 -12
- package/content/classes/alchemist/fields/bomber.yaml +1 -1
- package/content/classes/alchemist/fields/chirurgeon.yaml +1 -1
- package/content/classes/alchemist/fields/mutagenist.yaml +1 -1
- package/content/classes/alchemist/fields/toxicologist.yaml +1 -1
- package/content/classes/alchemist.yaml +2 -34
- package/content/classes/barbarian/animals/ape.yaml +1 -1
- package/content/classes/barbarian/animals/bear.yaml +1 -1
- package/content/classes/barbarian/animals/bull.yaml +1 -1
- package/content/classes/barbarian/animals/cat.yaml +1 -1
- package/content/classes/barbarian/animals/deer.yaml +1 -1
- package/content/classes/barbarian/animals/frog.yaml +1 -1
- package/content/classes/barbarian/animals/shark.yaml +1 -1
- package/content/classes/barbarian/animals/snake.yaml +1 -1
- package/content/classes/barbarian/animals/wolf.yaml +1 -1
- package/content/classes/barbarian/instincts/animal.yaml +2 -14
- package/content/classes/barbarian/instincts/dragon.yaml +1 -2
- package/content/classes/barbarian/instincts/fury.yaml +1 -1
- package/content/classes/barbarian/instincts/giant.yaml +1 -1
- package/content/classes/barbarian/instincts/spirit.yaml +1 -2
- package/content/classes/barbarian/instincts/superstition.yaml +1 -1
- package/content/classes/barbarian/raging.yaml +3 -1
- package/content/classes/barbarian.yaml +2 -36
- package/content/classes/bard/muses/enigma.yaml +1 -1
- package/content/classes/bard/muses/maestro.yaml +1 -1
- package/content/classes/bard/muses/polymath.yaml +1 -1
- package/content/classes/bard/muses/warrior.yaml +1 -1
- package/content/classes/bard.yaml +2 -34
- package/content/classes/champion/causes/desecration.yaml +1 -1
- package/content/classes/champion/causes/grandeur.yaml +1 -1
- package/content/classes/champion/causes/iniquity.yaml +1 -1
- package/content/classes/champion/causes/justice.yaml +1 -1
- package/content/classes/champion/causes/liberation.yaml +1 -1
- package/content/classes/champion/causes/obedience.yaml +1 -1
- package/content/classes/champion/causes/redemption.yaml +1 -1
- package/content/classes/champion.yaml +2 -37
- package/content/classes/cleric/doctrines/cloistered-cleric.yaml +1 -1
- package/content/classes/cleric/doctrines/warpriest.yaml +1 -1
- package/content/classes/cleric.yaml +2 -28
- package/content/classes/druid/orders/animal.yaml +1 -1
- package/content/classes/druid/orders/leaf.yaml +1 -1
- package/content/classes/druid/orders/storm.yaml +1 -1
- package/content/classes/druid/orders/untamed.yaml +1 -1
- package/content/classes/druid.yaml +2 -34
- package/content/classes/fighter.yaml +1 -26
- package/content/classes/investigator.yaml +1 -26
- package/content/classes/monk.yaml +1 -26
- package/content/classes/oracle/mysteries/ancestors.yaml +3 -1
- package/content/classes/oracle/mysteries/battle.yaml +5 -1
- package/content/classes/oracle/mysteries/bones.yaml +3 -1
- package/content/classes/oracle/mysteries/cosmos.yaml +3 -1
- package/content/classes/oracle/mysteries/flames.yaml +3 -1
- package/content/classes/oracle/mysteries/life.yaml +4 -1
- package/content/classes/oracle/mysteries/lore.yaml +5 -1
- package/content/classes/oracle/mysteries/tempest.yaml +3 -1
- package/content/classes/oracle.yaml +2 -38
- package/content/classes/ranger/edges/flurry.yaml +1 -1
- package/content/classes/ranger/edges/outwit.yaml +1 -1
- package/content/classes/ranger/edges/precision.yaml +1 -1
- package/content/classes/ranger.yaml +2 -29
- package/content/classes/rogue/rackets/mastermind.yaml +1 -1
- package/content/classes/rogue/rackets/ruffian.yaml +1 -1
- package/content/classes/rogue/rackets/scoundrel.yaml +1 -1
- package/content/classes/rogue/rackets/thief.yaml +1 -1
- package/content/classes/rogue.yaml +2 -34
- package/content/classes/sorcerer/bloodlines/aberrant.yaml +1 -1
- package/content/classes/sorcerer/bloodlines/angelic.yaml +1 -1
- package/content/classes/sorcerer/bloodlines/demonic.yaml +1 -1
- package/content/classes/sorcerer/bloodlines/diabolic.yaml +1 -1
- package/content/classes/sorcerer/bloodlines/draconic.yaml +1 -1
- package/content/classes/sorcerer/bloodlines/elemental.yaml +1 -1
- package/content/classes/sorcerer/bloodlines/fey.yaml +1 -1
- package/content/classes/sorcerer/bloodlines/hag.yaml +1 -1
- package/content/classes/sorcerer/bloodlines/imperial.yaml +1 -1
- package/content/classes/sorcerer/bloodlines/undead.yaml +1 -1
- package/content/classes/sorcerer.yaml +2 -40
- package/content/classes/swashbuckler.yaml +1 -26
- package/content/classes/witch/patrons/faiths-flamekeeper.yaml +1 -1
- package/content/classes/witch/patrons/inscribed-one.yaml +1 -1
- package/content/classes/witch/patrons/resentment.yaml +1 -1
- package/content/classes/witch/patrons/silence-in-snow.yaml +1 -1
- package/content/classes/witch/patrons/spinner-of-threads.yaml +1 -1
- package/content/classes/witch/patrons/starless-shadow.yaml +1 -1
- package/content/classes/witch/patrons/wilding-steward.yaml +1 -1
- package/content/classes/witch.yaml +2 -37
- package/content/classes/wizard/schools/ars-grammatica.yaml +1 -1
- package/content/classes/wizard/schools/battle-magic.yaml +1 -1
- package/content/classes/wizard/schools/boundary.yaml +1 -1
- package/content/classes/wizard/schools/civic-wizardry.yaml +1 -1
- package/content/classes/wizard/schools/mentalism.yaml +1 -1
- package/content/classes/wizard/schools/protean-form.yaml +1 -1
- package/content/classes/wizard/schools/unified-magical-theory.yaml +1 -1
- package/content/classes/wizard/theses/experimental-spellshaping.yaml +1 -1
- package/content/classes/wizard/theses/improved-familiar-attunement.yaml +1 -1
- package/content/classes/wizard/theses/spell-blending.yaml +1 -1
- package/content/classes/wizard/theses/spell-substitution.yaml +1 -1
- package/content/classes/wizard/theses/staff-nexus.yaml +1 -1
- package/content/classes/wizard.yaml +3 -46
- package/content/domains/advanced/air.yaml +7 -0
- package/content/domains/advanced/ambition.yaml +7 -0
- package/content/domains/advanced/cities.yaml +7 -0
- package/content/domains/advanced/confidence.yaml +7 -0
- package/content/domains/advanced/creation.yaml +7 -0
- package/content/domains/advanced/darkness.yaml +7 -0
- package/content/domains/advanced/death.yaml +7 -0
- package/content/domains/advanced/destruction.yaml +7 -0
- package/content/domains/advanced/dreams.yaml +7 -0
- package/content/domains/advanced/earth.yaml +7 -0
- package/content/domains/advanced/family.yaml +7 -0
- package/content/domains/advanced/fate.yaml +7 -0
- package/content/domains/advanced/fire.yaml +7 -0
- package/content/domains/advanced/freedom.yaml +7 -0
- package/content/domains/advanced/healing.yaml +7 -0
- package/content/domains/advanced/indulgence.yaml +7 -0
- package/content/domains/advanced/knowledge.yaml +7 -0
- package/content/domains/advanced/luck.yaml +7 -0
- package/content/domains/advanced/magic.yaml +7 -0
- package/content/domains/advanced/might.yaml +7 -0
- package/content/domains/advanced/moon.yaml +7 -0
- package/content/domains/advanced/nature.yaml +7 -0
- package/content/domains/advanced/nightmares.yaml +7 -0
- package/content/domains/advanced/pain.yaml +7 -0
- package/content/domains/advanced/passion.yaml +7 -0
- package/content/domains/advanced/perfection.yaml +7 -0
- package/content/domains/advanced/protection.yaml +7 -0
- package/content/domains/advanced/secrecy.yaml +7 -0
- package/content/domains/advanced/sun.yaml +7 -0
- package/content/domains/advanced/travel.yaml +7 -0
- package/content/domains/advanced/trickery.yaml +7 -0
- package/content/domains/advanced/truth.yaml +7 -0
- package/content/domains/advanced/tyranny.yaml +7 -0
- package/content/domains/advanced/undeath.yaml +7 -0
- package/content/domains/advanced/water.yaml +7 -0
- package/content/domains/advanced/wealth.yaml +7 -0
- package/content/domains/advanced/zeal.yaml +7 -0
- package/content/domains/air.yaml +6 -0
- package/content/domains/ambition.yaml +6 -0
- package/content/domains/cities.yaml +6 -0
- package/content/domains/confidence.yaml +6 -0
- package/content/domains/creation.yaml +6 -0
- package/content/domains/darkness.yaml +6 -0
- package/content/domains/death.yaml +6 -0
- package/content/domains/destruction.yaml +6 -0
- package/content/domains/dreams.yaml +6 -0
- package/content/domains/earth.yaml +6 -0
- package/content/domains/family.yaml +6 -0
- package/content/domains/fate.yaml +6 -0
- package/content/domains/fire.yaml +6 -0
- package/content/domains/freedom.yaml +6 -0
- package/content/domains/healing.yaml +6 -0
- package/content/domains/indulgence.yaml +6 -0
- package/content/domains/knowledge.yaml +6 -0
- package/content/domains/luck.yaml +6 -0
- package/content/domains/magic.yaml +6 -0
- package/content/domains/might.yaml +6 -0
- package/content/domains/moon.yaml +6 -0
- package/content/domains/nature.yaml +6 -0
- package/content/domains/nightmares.yaml +6 -0
- package/content/domains/pain.yaml +6 -0
- package/content/domains/passion.yaml +6 -0
- package/content/domains/perfection.yaml +6 -0
- package/content/domains/protection.yaml +6 -0
- package/content/domains/secrecy.yaml +6 -0
- package/content/domains/sun.yaml +6 -0
- package/content/domains/travel.yaml +6 -0
- package/content/domains/trickery.yaml +6 -0
- package/content/domains/truth.yaml +6 -0
- package/content/domains/tyranny.yaml +6 -0
- package/content/domains/undeath.yaml +6 -0
- package/content/domains/water.yaml +6 -0
- package/content/domains/wealth.yaml +6 -0
- package/content/domains/zeal.yaml +6 -0
- package/content/effects/treated-disease.yaml +4 -0
- package/content/effects/treated-poison.yaml +4 -0
- package/content/feats/ancestry/gnome-obsession.yaml +1 -39
- package/content/feats/ancestry/tengu-feather-fan.yaml +3 -3
- package/content/feats/archetype/barbarian/barbarian-dedication.yaml +0 -2
- package/content/feats/archetype/champion/champions-reaction.yaml +1 -11
- package/content/feats/archetype/investigator/skill-mastery.yaml +2 -58
- package/content/feats/archetype/rogue/skill-mastery.yaml +2 -58
- package/content/feats/champion/deitys-domain.yaml +1 -22
- package/content/feats/cleric/advanced-domain.yaml +1 -187
- package/content/feats/cleric/domain-initiate.yaml +1 -199
- package/content/feats/oracle/domain-acumen.yaml +4 -138
- package/content/feats/skill/skill-training.yaml +1 -55
- package/content/feats/sorcerer/arcane-evolution.yaml +1 -26
- package/content/feats/sorcerer/occult-evolution.yaml +1 -26
- package/content/gear/compass-lensatic.yaml +1 -0
- package/content/gear/compass.yaml +1 -0
- package/content/gear/crowbar-levered.yaml +1 -0
- package/content/gear/crowbar.yaml +1 -0
- package/content/shields/specific/reflecting-shield.yaml +1 -1
- package/content/shields/specific/spellguard-shield.yaml +1 -0
- package/content/spells/agile-feet.yaml +1 -0
- package/content/spells/appearance-of-wealth.yaml +1 -0
- package/content/spells/athletic-rush.yaml +1 -0
- package/content/spells/bit-of-luck.yaml +1 -0
- package/content/spells/charming-touch.yaml +1 -0
- package/content/spells/cloak-of-shadow.yaml +1 -0
- package/content/spells/creative-splash.yaml +1 -0
- package/content/spells/cry-of-destruction.yaml +1 -0
- package/content/spells/dazzling-flash.yaml +1 -0
- package/content/spells/deaths-call.yaml +1 -0
- package/content/spells/face-in-the-crowd.yaml +1 -0
- package/content/spells/fire-ray.yaml +1 -0
- package/content/spells/guidance.yaml +2 -0
- package/content/spells/healers-blessing.yaml +1 -0
- package/content/spells/hurtling-stone.yaml +1 -0
- package/content/spells/ignite-ambition.yaml +1 -0
- package/content/spells/magics-vessel.yaml +1 -0
- package/content/spells/moonbeam.yaml +1 -0
- package/content/spells/overstuff.yaml +1 -0
- package/content/spells/perfected-mind.yaml +1 -0
- package/content/spells/protectors-sacrifice.yaml +1 -0
- package/content/spells/pushing-gust.yaml +1 -0
- package/content/spells/read-fate.yaml +1 -0
- package/content/spells/savor-the-sting.yaml +1 -0
- package/content/spells/scholarly-recollection.yaml +1 -0
- package/content/spells/soothing-words.yaml +1 -0
- package/content/spells/sudden-shift.yaml +1 -0
- package/content/spells/sure-strike.yaml +2 -0
- package/content/spells/sweet-dream.yaml +1 -0
- package/content/spells/tidal-surge.yaml +1 -0
- package/content/spells/touch-of-obedience.yaml +1 -0
- package/content/spells/touch-of-undeath.yaml +1 -0
- package/content/spells/true-target.yaml +2 -0
- package/content/spells/unimpeded-stride.yaml +1 -0
- package/content/spells/veil-of-confidence.yaml +1 -0
- package/content/spells/vibrant-thorns.yaml +1 -0
- package/content/spells/waking-nightmare.yaml +1 -0
- package/content/spells/weapon-surge.yaml +3 -0
- package/content/spells/whispering-quiet.yaml +1 -0
- package/content/spells/word-of-truth.yaml +1 -0
- package/dist/i18n/en.js +1 -1
- package/dist/i18n/en.json +196 -207
- package/dist/index.js +1 -1
- package/dist/release.json +7103 -3825
- package/i18n/en/ancestry-dragonblood.yaml +2 -2
- package/i18n/en/archetypes.yaml +6 -6
- package/i18n/en/backgrounds.yaml +6 -3
- package/i18n/en/battle-forms.yaml +0 -1
- package/i18n/en/champion.yaml +1 -1
- package/i18n/en/cleric.yaml +151 -149
- package/i18n/en/equipment.yaml +4 -1
- package/i18n/en/oracle.yaml +0 -38
- package/i18n/en/rogue.yaml +3 -3
- package/i18n/en/spellcasting.yaml +2 -2
- package/i18n/en/type-fields.yaml +2 -0
- package/i18n/en.yaml +19 -1
- package/pack.yaml +2 -2
- package/package.json +2 -2
- package/rules/advancement.yaml +1 -0
- package/rules/afflictions.yaml +2 -0
- package/rules/alchemist.yaml +14 -3
- package/rules/ancestry-feats.yaml +55 -13
- package/rules/archetypes.yaml +1 -0
- package/rules/barbarian.yaml +8 -21
- package/rules/bard.yaml +10 -4
- package/rules/building.yaml +7 -1
- package/rules/champion.yaml +3 -2
- package/rules/checks.yaml +1 -1
- package/rules/cleric.yaml +13 -3
- package/rules/conditions.yaml +1 -0
- package/rules/core.yaml +1 -0
- package/rules/creation.yaml +18 -0
- package/rules/druid.yaml +3 -2
- package/rules/equipment.yaml +7 -1
- package/rules/heritages.yaml +1 -1
- package/rules/investigator.yaml +3 -11
- package/rules/layout.yaml +19 -6
- package/rules/lores-pc2.yaml +176 -38
- package/rules/lores.yaml +226 -50
- package/rules/monk.yaml +2 -5
- package/rules/oracle.yaml +5 -3
- package/rules/ranger.yaml +3 -3
- package/rules/rogue.yaml +6 -1
- package/rules/skill-actions-athletics.yaml +1 -2
- package/rules/skill-actions-stealth.yaml +1 -2
- package/rules/skills.yaml +173 -56
- package/rules/sorcerer.yaml +16 -4
- package/rules/spellcasting.yaml +94 -24
- package/rules/spells-high.yaml +3 -3
- package/rules/strikes.yaml +3 -1
- package/rules/swashbuckler.yaml +4 -17
- package/rules/tags.yaml +6 -0
- package/rules/witch.yaml +2 -1
- package/rules/wizard.yaml +5 -3
- package/upgrades/0.2.0-to-0.3.0.yaml +657 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
id: classes.cleric.doctrines.cloistered-cleric
|
|
2
2
|
type: feature
|
|
3
|
-
fields: { level: 1 }
|
|
3
|
+
fields: { level: 1, classOption: cleric.doctrine }
|
|
4
4
|
effects:
|
|
5
5
|
- { target: cleric.doctrine, op: set, value: "'cloistered'" }
|
|
6
6
|
- { target: saves.fortitude.rank, op: atLeast, value: 2, when: level >= 3 }
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
id: classes.cleric.doctrines.warpriest
|
|
2
2
|
type: feature
|
|
3
|
-
fields: { level: 1 }
|
|
3
|
+
fields: { level: 1, classOption: cleric.doctrine }
|
|
4
4
|
effects:
|
|
5
5
|
- { target: cleric.doctrine, op: set, value: "'warpriest'" }
|
|
6
6
|
- { target: defenses.light.rank, op: atLeast, value: 'level >= 13 ? 2 : 1' }
|
|
@@ -121,38 +121,12 @@ choices:
|
|
|
121
121
|
effects:
|
|
122
122
|
- { target: attacks.favoredWeapons, op: grant, value: { formula: pick.id } }
|
|
123
123
|
- id: doctrine
|
|
124
|
-
from:
|
|
125
|
-
items: [classes.cleric.doctrines.cloistered-cleric, classes.cleric.doctrines.warpriest]
|
|
124
|
+
from: { type: feature, where: "item.classOption == 'cleric.doctrine'" }
|
|
126
125
|
- id: skills
|
|
127
126
|
unique: skill-training
|
|
128
127
|
pick: 2 + max(0, attributes.int.mod)
|
|
129
128
|
from:
|
|
130
|
-
values:
|
|
131
|
-
[
|
|
132
|
-
skill.acrobatics,
|
|
133
|
-
skill.arcana,
|
|
134
|
-
skill.athletics,
|
|
135
|
-
skill.crafting,
|
|
136
|
-
skill.deception,
|
|
137
|
-
skill.diplomacy,
|
|
138
|
-
skill.intimidation,
|
|
139
|
-
skill.medicine,
|
|
140
|
-
skill.nature,
|
|
141
|
-
skill.occultism,
|
|
142
|
-
skill.performance,
|
|
143
|
-
skill.religion,
|
|
144
|
-
skill.society,
|
|
145
|
-
skill.stealth,
|
|
146
|
-
skill.survival,
|
|
147
|
-
skill.thievery,
|
|
148
|
-
skill.lore.academia,
|
|
149
|
-
skill.lore.circus,
|
|
150
|
-
skill.lore.farming,
|
|
151
|
-
skill.lore.legal,
|
|
152
|
-
skill.lore.scribing,
|
|
153
|
-
skill.lore.underworld,
|
|
154
|
-
skill.lore.warfare,
|
|
155
|
-
]
|
|
129
|
+
values: { formula: skills.offered }
|
|
156
130
|
where: '!(value in skills.trained) && !(value in skills.chosen) || value in choice.picks'
|
|
157
131
|
effects:
|
|
158
132
|
- { target: skills.chosen, op: grant, value: { formula: pick.value } }
|
|
@@ -49,14 +49,7 @@ grants:
|
|
|
49
49
|
- { item: features.druid.primal-hierophant, when: level >= 19 }
|
|
50
50
|
choices:
|
|
51
51
|
- id: order
|
|
52
|
-
from:
|
|
53
|
-
items:
|
|
54
|
-
[
|
|
55
|
-
classes.druid.orders.animal,
|
|
56
|
-
classes.druid.orders.leaf,
|
|
57
|
-
classes.druid.orders.storm,
|
|
58
|
-
classes.druid.orders.untamed,
|
|
59
|
-
]
|
|
52
|
+
from: { type: feature, where: "item.classOption == 'druid.order'" }
|
|
60
53
|
- id: voice-of-nature
|
|
61
54
|
unique: feats
|
|
62
55
|
from: { items: [feats.druid.animal-empathy, feats.druid.plant-empathy] }
|
|
@@ -64,32 +57,7 @@ choices:
|
|
|
64
57
|
unique: skill-training
|
|
65
58
|
pick: 2 + max(0, attributes.int.mod)
|
|
66
59
|
from:
|
|
67
|
-
values:
|
|
68
|
-
[
|
|
69
|
-
skill.acrobatics,
|
|
70
|
-
skill.arcana,
|
|
71
|
-
skill.athletics,
|
|
72
|
-
skill.crafting,
|
|
73
|
-
skill.deception,
|
|
74
|
-
skill.diplomacy,
|
|
75
|
-
skill.intimidation,
|
|
76
|
-
skill.medicine,
|
|
77
|
-
skill.nature,
|
|
78
|
-
skill.occultism,
|
|
79
|
-
skill.performance,
|
|
80
|
-
skill.religion,
|
|
81
|
-
skill.society,
|
|
82
|
-
skill.stealth,
|
|
83
|
-
skill.survival,
|
|
84
|
-
skill.thievery,
|
|
85
|
-
skill.lore.academia,
|
|
86
|
-
skill.lore.circus,
|
|
87
|
-
skill.lore.farming,
|
|
88
|
-
skill.lore.legal,
|
|
89
|
-
skill.lore.scribing,
|
|
90
|
-
skill.lore.underworld,
|
|
91
|
-
skill.lore.warfare,
|
|
92
|
-
]
|
|
60
|
+
values: { formula: skills.offered }
|
|
93
61
|
where: '!(value in skills.trained) && !(value in skills.chosen) || value in choice.picks'
|
|
94
62
|
effects:
|
|
95
63
|
- { target: skills.chosen, op: grant, value: { formula: pick.value } }
|
|
@@ -62,32 +62,7 @@ choices:
|
|
|
62
62
|
unique: skill-training
|
|
63
63
|
pick: 3 + max(0, attributes.int.mod)
|
|
64
64
|
from:
|
|
65
|
-
values:
|
|
66
|
-
[
|
|
67
|
-
skill.acrobatics,
|
|
68
|
-
skill.arcana,
|
|
69
|
-
skill.athletics,
|
|
70
|
-
skill.crafting,
|
|
71
|
-
skill.deception,
|
|
72
|
-
skill.diplomacy,
|
|
73
|
-
skill.intimidation,
|
|
74
|
-
skill.medicine,
|
|
75
|
-
skill.nature,
|
|
76
|
-
skill.occultism,
|
|
77
|
-
skill.performance,
|
|
78
|
-
skill.religion,
|
|
79
|
-
skill.society,
|
|
80
|
-
skill.stealth,
|
|
81
|
-
skill.survival,
|
|
82
|
-
skill.thievery,
|
|
83
|
-
skill.lore.academia,
|
|
84
|
-
skill.lore.circus,
|
|
85
|
-
skill.lore.farming,
|
|
86
|
-
skill.lore.legal,
|
|
87
|
-
skill.lore.scribing,
|
|
88
|
-
skill.lore.underworld,
|
|
89
|
-
skill.lore.warfare,
|
|
90
|
-
]
|
|
65
|
+
values: { formula: skills.offered }
|
|
91
66
|
where: '!(value in skills.trained) && !(value in skills.chosen) || value in choice.picks'
|
|
92
67
|
effects:
|
|
93
68
|
- { target: skills.chosen, op: grant, value: { formula: pick.value } }
|
|
@@ -117,32 +117,7 @@ choices:
|
|
|
117
117
|
unique: skill-training
|
|
118
118
|
pick: 4 + max(0, attributes.int.mod)
|
|
119
119
|
from:
|
|
120
|
-
values:
|
|
121
|
-
[
|
|
122
|
-
skill.acrobatics,
|
|
123
|
-
skill.arcana,
|
|
124
|
-
skill.athletics,
|
|
125
|
-
skill.crafting,
|
|
126
|
-
skill.deception,
|
|
127
|
-
skill.diplomacy,
|
|
128
|
-
skill.intimidation,
|
|
129
|
-
skill.medicine,
|
|
130
|
-
skill.nature,
|
|
131
|
-
skill.occultism,
|
|
132
|
-
skill.performance,
|
|
133
|
-
skill.religion,
|
|
134
|
-
skill.society,
|
|
135
|
-
skill.stealth,
|
|
136
|
-
skill.survival,
|
|
137
|
-
skill.thievery,
|
|
138
|
-
skill.lore.academia,
|
|
139
|
-
skill.lore.circus,
|
|
140
|
-
skill.lore.farming,
|
|
141
|
-
skill.lore.legal,
|
|
142
|
-
skill.lore.scribing,
|
|
143
|
-
skill.lore.underworld,
|
|
144
|
-
skill.lore.warfare,
|
|
145
|
-
]
|
|
120
|
+
values: { formula: skills.offered }
|
|
146
121
|
where: '!(value in skills.trained) && !(value in skills.chosen) || value in choice.picks'
|
|
147
122
|
effects:
|
|
148
123
|
- { target: skills.chosen, op: grant, value: { formula: pick.value } }
|
|
@@ -48,32 +48,7 @@ choices:
|
|
|
48
48
|
unique: skill-training
|
|
49
49
|
pick: 4 + max(0, attributes.int.mod)
|
|
50
50
|
from:
|
|
51
|
-
values:
|
|
52
|
-
[
|
|
53
|
-
skill.acrobatics,
|
|
54
|
-
skill.arcana,
|
|
55
|
-
skill.athletics,
|
|
56
|
-
skill.crafting,
|
|
57
|
-
skill.deception,
|
|
58
|
-
skill.diplomacy,
|
|
59
|
-
skill.intimidation,
|
|
60
|
-
skill.medicine,
|
|
61
|
-
skill.nature,
|
|
62
|
-
skill.occultism,
|
|
63
|
-
skill.performance,
|
|
64
|
-
skill.religion,
|
|
65
|
-
skill.society,
|
|
66
|
-
skill.stealth,
|
|
67
|
-
skill.survival,
|
|
68
|
-
skill.thievery,
|
|
69
|
-
skill.lore.academia,
|
|
70
|
-
skill.lore.circus,
|
|
71
|
-
skill.lore.farming,
|
|
72
|
-
skill.lore.legal,
|
|
73
|
-
skill.lore.scribing,
|
|
74
|
-
skill.lore.underworld,
|
|
75
|
-
skill.lore.warfare,
|
|
76
|
-
]
|
|
51
|
+
values: { formula: skills.offered }
|
|
77
52
|
where: '!(value in skills.trained) && !(value in skills.chosen) || value in choice.picks'
|
|
78
53
|
effects:
|
|
79
54
|
- { target: skills.chosen, op: grant, value: { formula: pick.value } }
|
|
@@ -1,7 +1,9 @@
|
|
|
1
1
|
id: classes.oracle.mysteries.ancestors
|
|
2
2
|
type: feature
|
|
3
|
-
fields: { level: 1 }
|
|
3
|
+
fields: { level: 1, classOption: oracle.mystery }
|
|
4
4
|
effects:
|
|
5
|
+
- { target: oracle.domains, op: grant, value: { item: domains.death } }
|
|
6
|
+
- { target: oracle.domains, op: grant, value: { item: domains.family } }
|
|
5
7
|
- { target: oracle.mystery, op: set, value: "'ancestors'" }
|
|
6
8
|
- {
|
|
7
9
|
target: skills.trained,
|
|
@@ -1,7 +1,11 @@
|
|
|
1
1
|
id: classes.oracle.mysteries.battle
|
|
2
2
|
type: feature
|
|
3
|
-
fields: { level: 1 }
|
|
3
|
+
fields: { level: 1, classOption: oracle.mystery }
|
|
4
4
|
effects:
|
|
5
|
+
- { target: oracle.domains, op: grant, value: { item: domains.destruction } }
|
|
6
|
+
- { target: oracle.domains, op: grant, value: { item: domains.might } }
|
|
7
|
+
- { target: oracle.domains, op: grant, value: { item: domains.protection } }
|
|
8
|
+
- { target: oracle.domains, op: grant, value: { item: domains.zeal } }
|
|
5
9
|
- { target: oracle.mystery, op: set, value: "'battle'" }
|
|
6
10
|
- {
|
|
7
11
|
target: skills.trained,
|
|
@@ -1,7 +1,9 @@
|
|
|
1
1
|
id: classes.oracle.mysteries.bones
|
|
2
2
|
type: feature
|
|
3
|
-
fields: { level: 1 }
|
|
3
|
+
fields: { level: 1, classOption: oracle.mystery }
|
|
4
4
|
effects:
|
|
5
|
+
- { target: oracle.domains, op: grant, value: { item: domains.death } }
|
|
6
|
+
- { target: oracle.domains, op: grant, value: { item: domains.undeath } }
|
|
5
7
|
- { target: oracle.mystery, op: set, value: "'bones'" }
|
|
6
8
|
- {
|
|
7
9
|
target: skills.trained,
|
|
@@ -1,7 +1,9 @@
|
|
|
1
1
|
id: classes.oracle.mysteries.cosmos
|
|
2
2
|
type: feature
|
|
3
|
-
fields: { level: 1 }
|
|
3
|
+
fields: { level: 1, classOption: oracle.mystery }
|
|
4
4
|
effects:
|
|
5
|
+
- { target: oracle.domains, op: grant, value: { item: domains.darkness } }
|
|
6
|
+
- { target: oracle.domains, op: grant, value: { item: domains.moon } }
|
|
5
7
|
- { target: oracle.mystery, op: set, value: "'cosmos'" }
|
|
6
8
|
- {
|
|
7
9
|
target: skills.trained,
|
|
@@ -1,7 +1,9 @@
|
|
|
1
1
|
id: classes.oracle.mysteries.flames
|
|
2
2
|
type: feature
|
|
3
|
-
fields: { level: 1 }
|
|
3
|
+
fields: { level: 1, classOption: oracle.mystery }
|
|
4
4
|
effects:
|
|
5
|
+
- { target: oracle.domains, op: grant, value: { item: domains.fire } }
|
|
6
|
+
- { target: oracle.domains, op: grant, value: { item: domains.sun } }
|
|
5
7
|
- { target: oracle.mystery, op: set, value: "'flames'" }
|
|
6
8
|
- {
|
|
7
9
|
target: skills.trained,
|
|
@@ -1,7 +1,10 @@
|
|
|
1
1
|
id: classes.oracle.mysteries.life
|
|
2
2
|
type: feature
|
|
3
|
-
fields: { level: 1 }
|
|
3
|
+
fields: { level: 1, classOption: oracle.mystery }
|
|
4
4
|
effects:
|
|
5
|
+
- { target: oracle.domains, op: grant, value: { item: domains.death } }
|
|
6
|
+
- { target: oracle.domains, op: grant, value: { item: domains.healing } }
|
|
7
|
+
- { target: oracle.domains, op: grant, value: { item: domains.pain } }
|
|
5
8
|
- { target: oracle.mystery, op: set, value: "'life'" }
|
|
6
9
|
- {
|
|
7
10
|
target: skills.trained,
|
|
@@ -1,7 +1,11 @@
|
|
|
1
1
|
id: classes.oracle.mysteries.lore
|
|
2
2
|
type: feature
|
|
3
|
-
fields: { level: 1 }
|
|
3
|
+
fields: { level: 1, classOption: oracle.mystery }
|
|
4
4
|
effects:
|
|
5
|
+
- { target: oracle.domains, op: grant, value: { item: domains.knowledge } }
|
|
6
|
+
- { target: oracle.domains, op: grant, value: { item: domains.magic } }
|
|
7
|
+
- { target: oracle.domains, op: grant, value: { item: domains.secrecy } }
|
|
8
|
+
- { target: oracle.domains, op: grant, value: { item: domains.truth } }
|
|
5
9
|
- { target: oracle.mystery, op: set, value: "'lore'" }
|
|
6
10
|
- {
|
|
7
11
|
target: skills.trained,
|
|
@@ -1,7 +1,9 @@
|
|
|
1
1
|
id: classes.oracle.mysteries.tempest
|
|
2
2
|
type: feature
|
|
3
|
-
fields: { level: 1 }
|
|
3
|
+
fields: { level: 1, classOption: oracle.mystery }
|
|
4
4
|
effects:
|
|
5
|
+
- { target: oracle.domains, op: grant, value: { item: domains.air } }
|
|
6
|
+
- { target: oracle.domains, op: grant, value: { item: domains.water } }
|
|
5
7
|
- { target: oracle.mystery, op: set, value: "'tempest'" }
|
|
6
8
|
- {
|
|
7
9
|
target: skills.trained,
|
|
@@ -52,48 +52,12 @@ grants:
|
|
|
52
52
|
choices:
|
|
53
53
|
# Asked first, so the free skills leave its skill out.
|
|
54
54
|
- id: mystery
|
|
55
|
-
from:
|
|
56
|
-
items:
|
|
57
|
-
[
|
|
58
|
-
classes.oracle.mysteries.ancestors,
|
|
59
|
-
classes.oracle.mysteries.battle,
|
|
60
|
-
classes.oracle.mysteries.bones,
|
|
61
|
-
classes.oracle.mysteries.cosmos,
|
|
62
|
-
classes.oracle.mysteries.flames,
|
|
63
|
-
classes.oracle.mysteries.life,
|
|
64
|
-
classes.oracle.mysteries.lore,
|
|
65
|
-
classes.oracle.mysteries.tempest,
|
|
66
|
-
]
|
|
55
|
+
from: { type: feature, where: "item.classOption == 'oracle.mystery'" }
|
|
67
56
|
- id: skills
|
|
68
57
|
unique: skill-training
|
|
69
58
|
pick: 3 + max(0, attributes.int.mod)
|
|
70
59
|
from:
|
|
71
|
-
values:
|
|
72
|
-
[
|
|
73
|
-
skill.acrobatics,
|
|
74
|
-
skill.arcana,
|
|
75
|
-
skill.athletics,
|
|
76
|
-
skill.crafting,
|
|
77
|
-
skill.deception,
|
|
78
|
-
skill.diplomacy,
|
|
79
|
-
skill.intimidation,
|
|
80
|
-
skill.medicine,
|
|
81
|
-
skill.nature,
|
|
82
|
-
skill.occultism,
|
|
83
|
-
skill.performance,
|
|
84
|
-
skill.religion,
|
|
85
|
-
skill.society,
|
|
86
|
-
skill.stealth,
|
|
87
|
-
skill.survival,
|
|
88
|
-
skill.thievery,
|
|
89
|
-
skill.lore.academia,
|
|
90
|
-
skill.lore.circus,
|
|
91
|
-
skill.lore.farming,
|
|
92
|
-
skill.lore.legal,
|
|
93
|
-
skill.lore.scribing,
|
|
94
|
-
skill.lore.underworld,
|
|
95
|
-
skill.lore.warfare,
|
|
96
|
-
]
|
|
60
|
+
values: { formula: skills.offered }
|
|
97
61
|
where: '!(value in skills.trained) && !(value in skills.chosen) || value in choice.picks'
|
|
98
62
|
effects:
|
|
99
63
|
- { target: skills.chosen, op: grant, value: { formula: pick.value } }
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
id: classes.ranger.edges.precision
|
|
2
2
|
type: feature
|
|
3
|
-
fields: { level: 1 }
|
|
3
|
+
fields: { level: 1, classOption: ranger.hunters-edge }
|
|
4
4
|
# Hits on the prey are counted in `prey.hits` on each hit and reset at the start of the turn. Two
|
|
5
5
|
# Strikes in one action (Double Slice) both read the count as the action starts.
|
|
6
6
|
effects:
|
|
@@ -62,39 +62,12 @@ choices:
|
|
|
62
62
|
- { target: attributes.dex.boosts, op: add, value: 1 }
|
|
63
63
|
- { target: class.keyAttribute, op: set, value: "'dex'" }
|
|
64
64
|
- id: hunters-edge
|
|
65
|
-
from:
|
|
66
|
-
items:
|
|
67
|
-
[classes.ranger.edges.flurry, classes.ranger.edges.outwit, classes.ranger.edges.precision]
|
|
65
|
+
from: { type: feature, where: "item.classOption == 'ranger.hunters-edge'" }
|
|
68
66
|
- id: skills
|
|
69
67
|
unique: skill-training
|
|
70
68
|
pick: 4 + max(0, attributes.int.mod)
|
|
71
69
|
from:
|
|
72
|
-
values:
|
|
73
|
-
[
|
|
74
|
-
skill.acrobatics,
|
|
75
|
-
skill.arcana,
|
|
76
|
-
skill.athletics,
|
|
77
|
-
skill.crafting,
|
|
78
|
-
skill.deception,
|
|
79
|
-
skill.diplomacy,
|
|
80
|
-
skill.intimidation,
|
|
81
|
-
skill.medicine,
|
|
82
|
-
skill.nature,
|
|
83
|
-
skill.occultism,
|
|
84
|
-
skill.performance,
|
|
85
|
-
skill.religion,
|
|
86
|
-
skill.society,
|
|
87
|
-
skill.stealth,
|
|
88
|
-
skill.survival,
|
|
89
|
-
skill.thievery,
|
|
90
|
-
skill.lore.academia,
|
|
91
|
-
skill.lore.circus,
|
|
92
|
-
skill.lore.farming,
|
|
93
|
-
skill.lore.legal,
|
|
94
|
-
skill.lore.scribing,
|
|
95
|
-
skill.lore.underworld,
|
|
96
|
-
skill.lore.warfare,
|
|
97
|
-
]
|
|
70
|
+
values: { formula: skills.offered }
|
|
98
71
|
where: '!(value in skills.trained) && !(value in skills.chosen) || value in choice.picks'
|
|
99
72
|
effects:
|
|
100
73
|
- { target: skills.chosen, op: grant, value: { formula: pick.value } }
|
|
@@ -47,14 +47,7 @@ choices:
|
|
|
47
47
|
# The racket first: it names the other key attributes the rogue may take, and its own choice (a
|
|
48
48
|
# mastermind's skill) is asked right after it, before the free skills.
|
|
49
49
|
- id: racket
|
|
50
|
-
from:
|
|
51
|
-
items:
|
|
52
|
-
[
|
|
53
|
-
classes.rogue.rackets.mastermind,
|
|
54
|
-
classes.rogue.rackets.ruffian,
|
|
55
|
-
classes.rogue.rackets.scoundrel,
|
|
56
|
-
classes.rogue.rackets.thief,
|
|
57
|
-
]
|
|
50
|
+
from: { type: feature, where: "item.classOption == 'rogue.racket'" }
|
|
58
51
|
- id: key-attribute
|
|
59
52
|
from:
|
|
60
53
|
options:
|
|
@@ -81,32 +74,7 @@ choices:
|
|
|
81
74
|
unique: skill-training
|
|
82
75
|
pick: 7 + max(0, attributes.int.mod)
|
|
83
76
|
from:
|
|
84
|
-
values:
|
|
85
|
-
[
|
|
86
|
-
skill.acrobatics,
|
|
87
|
-
skill.arcana,
|
|
88
|
-
skill.athletics,
|
|
89
|
-
skill.crafting,
|
|
90
|
-
skill.deception,
|
|
91
|
-
skill.diplomacy,
|
|
92
|
-
skill.intimidation,
|
|
93
|
-
skill.medicine,
|
|
94
|
-
skill.nature,
|
|
95
|
-
skill.occultism,
|
|
96
|
-
skill.performance,
|
|
97
|
-
skill.religion,
|
|
98
|
-
skill.society,
|
|
99
|
-
skill.stealth,
|
|
100
|
-
skill.survival,
|
|
101
|
-
skill.thievery,
|
|
102
|
-
skill.lore.academia,
|
|
103
|
-
skill.lore.circus,
|
|
104
|
-
skill.lore.farming,
|
|
105
|
-
skill.lore.legal,
|
|
106
|
-
skill.lore.scribing,
|
|
107
|
-
skill.lore.underworld,
|
|
108
|
-
skill.lore.warfare,
|
|
109
|
-
]
|
|
77
|
+
values: { formula: skills.offered }
|
|
110
78
|
where: '!(value in skills.trained) && !(value in skills.chosen) || value in choice.picks'
|
|
111
79
|
effects:
|
|
112
80
|
- { target: skills.chosen, op: grant, value: { formula: pick.value } }
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
id: classes.sorcerer.bloodlines.aberrant
|
|
2
2
|
type: feature
|
|
3
|
-
fields: { level: 1 }
|
|
3
|
+
fields: { level: 1, classOption: sorcerer.bloodline }
|
|
4
4
|
effects:
|
|
5
5
|
- { target: sorcerer.bloodline, op: set, value: "'aberrant'" }
|
|
6
6
|
- { target: spellcasting.tradition, op: set, value: "'occult'" }
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
id: classes.sorcerer.bloodlines.angelic
|
|
2
2
|
type: feature
|
|
3
|
-
fields: { level: 1 }
|
|
3
|
+
fields: { level: 1, classOption: sorcerer.bloodline }
|
|
4
4
|
effects:
|
|
5
5
|
- { target: sorcerer.bloodline, op: set, value: "'angelic'" }
|
|
6
6
|
- { target: spellcasting.tradition, op: set, value: "'divine'" }
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
id: classes.sorcerer.bloodlines.demonic
|
|
2
2
|
type: feature
|
|
3
|
-
fields: { level: 1 }
|
|
3
|
+
fields: { level: 1, classOption: sorcerer.bloodline }
|
|
4
4
|
effects:
|
|
5
5
|
- { target: sorcerer.bloodline, op: set, value: "'demonic'" }
|
|
6
6
|
- { target: spellcasting.tradition, op: set, value: "'divine'" }
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
id: classes.sorcerer.bloodlines.diabolic
|
|
2
2
|
type: feature
|
|
3
|
-
fields: { level: 1 }
|
|
3
|
+
fields: { level: 1, classOption: sorcerer.bloodline }
|
|
4
4
|
effects:
|
|
5
5
|
- { target: sorcerer.bloodline, op: set, value: "'diabolic'" }
|
|
6
6
|
- { target: spellcasting.tradition, op: set, value: "'divine'" }
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
id: classes.sorcerer.bloodlines.elemental
|
|
2
2
|
type: feature
|
|
3
|
-
fields: { level: 1 }
|
|
3
|
+
fields: { level: 1, classOption: sorcerer.bloodline }
|
|
4
4
|
effects:
|
|
5
5
|
- { target: sorcerer.bloodline, op: set, value: "'elemental'" }
|
|
6
6
|
- { target: spellcasting.tradition, op: set, value: "'primal'" }
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
id: classes.sorcerer.bloodlines.fey
|
|
2
2
|
type: feature
|
|
3
|
-
fields: { level: 1 }
|
|
3
|
+
fields: { level: 1, classOption: sorcerer.bloodline }
|
|
4
4
|
effects:
|
|
5
5
|
- { target: sorcerer.bloodline, op: set, value: "'fey'" }
|
|
6
6
|
- { target: spellcasting.tradition, op: set, value: "'primal'" }
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
id: classes.sorcerer.bloodlines.hag
|
|
2
2
|
type: feature
|
|
3
|
-
fields: { level: 1 }
|
|
3
|
+
fields: { level: 1, classOption: sorcerer.bloodline }
|
|
4
4
|
effects:
|
|
5
5
|
- { target: sorcerer.bloodline, op: set, value: "'hag'" }
|
|
6
6
|
- { target: spellcasting.tradition, op: set, value: "'occult'" }
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
id: classes.sorcerer.bloodlines.imperial
|
|
2
2
|
type: feature
|
|
3
|
-
fields: { level: 1 }
|
|
3
|
+
fields: { level: 1, classOption: sorcerer.bloodline }
|
|
4
4
|
effects:
|
|
5
5
|
- { target: sorcerer.bloodline, op: set, value: "'imperial'" }
|
|
6
6
|
- { target: spellcasting.tradition, op: set, value: "'arcane'" }
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
id: classes.sorcerer.bloodlines.undead
|
|
2
2
|
type: feature
|
|
3
|
-
fields: { level: 1 }
|
|
3
|
+
fields: { level: 1, classOption: sorcerer.bloodline }
|
|
4
4
|
effects:
|
|
5
5
|
- { target: sorcerer.bloodline, op: set, value: "'undead'" }
|
|
6
6
|
- { target: spellcasting.tradition, op: set, value: "'divine'" }
|