@opencharacter/5e-srd-5.1 0.1.0 → 0.2.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 +7 -6
- package/content/classes/warlock.yaml +0 -7
- package/content/features/druid/natural-recovery.yaml +23 -45
- package/content/features/wizard/arcane-recovery.yaml +22 -67
- package/content/invocations/bewitching-whispers.yaml +9 -2
- package/content/invocations/dreadful-word.yaml +9 -2
- package/content/invocations/eldritch-spear.yaml +3 -2
- package/content/invocations/minions-of-chaos.yaml +9 -2
- package/content/invocations/mire-the-mind.yaml +9 -2
- package/content/invocations/sculptor-of-flesh.yaml +9 -2
- package/content/invocations/sign-of-ill-omen.yaml +9 -2
- package/content/invocations/thief-of-five-fates.yaml +9 -2
- package/content/races/half-orc.yaml +0 -2
- package/content/races/tiefling.yaml +0 -3
- package/content/spells/death-ward.yaml +11 -0
- package/content/spells/eldritch-blast.yaml +1 -1
- package/content/templates/eldritch-spear.yaml +4 -0
- package/content/traits/infernal-legacy.yaml +11 -2
- package/content/traits/relentless-endurance.yaml +5 -10
- package/dist/i18n/en.js +1 -1
- package/dist/i18n/en.json +24 -23
- package/dist/index.js +1 -1
- package/dist/release.json +1341 -2227
- package/i18n/en.yaml +24 -23
- package/pack.yaml +2 -2
- package/package.json +2 -2
- package/rules/classes.yaml +0 -1
- package/rules/combat.yaml +5 -0
- package/rules/content-types.yaml +3 -0
- package/rules/creation.yaml +6 -2
- package/rules/display.yaml +0 -6
- package/rules/monsters.yaml +1 -1
- package/rules/rest.yaml +13 -50
- package/rules/spellcasting.yaml +5 -0
- package/upgrades/0.1.0-to-0.2.0.yaml +62 -0
package/i18n/en.yaml
CHANGED
|
@@ -11,6 +11,7 @@ types.weapon.name: 'Weapon'
|
|
|
11
11
|
types.weapon.followUps.retaliation.name: 'Retaliation'
|
|
12
12
|
types.weapon.followUps.retaliation.description: 'A creature within 5 feet damaged you: attack it with this weapon as a reaction'
|
|
13
13
|
types.weapon.state.wielding.name: 'Wielded'
|
|
14
|
+
types.draconicAncestry.state.used.name: 'Breath weapon used'
|
|
14
15
|
types.weapon.state.wielding.values.one-handed.name: 'One-handed'
|
|
15
16
|
types.weapon.state.wielding.values.two-handed.name: 'Two-handed'
|
|
16
17
|
types.weapon.state.attuned.name: 'Attuned'
|
|
@@ -436,7 +437,6 @@ fields.elementalAffinity.resistant.name: 'Elemental Affinity resistance'
|
|
|
436
437
|
fields.dragonWings.active.name: 'Dragon wings out'
|
|
437
438
|
fields.warlock.boons.name: 'Pact boon'
|
|
438
439
|
fields.eldritchBlast.beams.name: 'Eldritch blast beams'
|
|
439
|
-
fields.eldritchBlast.range.name: 'Eldritch blast range (feet)'
|
|
440
440
|
fields.eldritchBlast.push.name: 'Eldritch blast push (feet)'
|
|
441
441
|
fields.spellcasting.bard.dc.name: 'Bard spell save DC'
|
|
442
442
|
fields.spellcasting.bard.attack.name: 'Bard spell attack bonus'
|
|
@@ -6672,6 +6672,7 @@ traits.skill-versatility.choices.skills.prompt: 'Skill Versatility: choose two s
|
|
|
6672
6672
|
traits.menacing.name: 'Menacing'
|
|
6673
6673
|
traits.menacing.description: 'You gain proficiency in the Intimidation skill.'
|
|
6674
6674
|
traits.relentless-endurance.name: 'Relentless Endurance'
|
|
6675
|
+
traits.relentless-endurance.state.used.name: 'Relentless Endurance used'
|
|
6675
6676
|
traits.relentless-endurance.description: "When you are reduced to 0 hit points but not killed outright, you can drop to 1 hit point instead. You can't use this feature again until you finish a long rest."
|
|
6676
6677
|
traits.relentless-endurance.actions.relentless-endurance.name: 'Relentless Endurance'
|
|
6677
6678
|
traits.relentless-endurance.actions.relentless-endurance.results.endured.name: 'At 1 hit point'
|
|
@@ -6682,6 +6683,8 @@ traits.savage-attacks.description: "When you score a critical hit with a melee w
|
|
|
6682
6683
|
traits.hellish-resistance.name: 'Hellish Resistance'
|
|
6683
6684
|
traits.hellish-resistance.description: 'You have resistance to fire damage.'
|
|
6684
6685
|
traits.infernal-legacy.name: 'Infernal Legacy'
|
|
6686
|
+
traits.infernal-legacy.state.hellishRebukeUsed.name: 'Hellish Rebuke used'
|
|
6687
|
+
traits.infernal-legacy.state.darknessUsed.name: 'Darkness used'
|
|
6685
6688
|
traits.infernal-legacy.description: 'You know the *thaumaturgy* cantrip. When you reach 3rd level, you can cast the *hellish rebuke* spell as a 2nd-level spell once with this trait and regain the ability to do so when you finish a long rest. When you reach 5th level, you can cast the *darkness* spell once with this trait and regain the ability to do so when you finish a long rest. Charisma is your spellcasting ability for these spells.'
|
|
6686
6689
|
traits.infernal-legacy.options.hellish-rebuke.name: 'Infernal Legacy (once per long rest)'
|
|
6687
6690
|
traits.infernal-legacy.options.darkness.name: 'Infernal Legacy (once per long rest)'
|
|
@@ -6847,7 +6850,6 @@ races.half-orc.description: |-
|
|
|
6847
6850
|
***Speed.*** Your base walking speed is 30 feet.
|
|
6848
6851
|
|
|
6849
6852
|
***Languages.*** You can speak, read, and write Common and Orc. Orc is a harsh, grating language with hard consonants. It has no script of its own but is written in the Dwarvish script.
|
|
6850
|
-
races.half-orc.state.relentlessEnduranceUsed.name: 'Relentless Endurance used'
|
|
6851
6853
|
races.tiefling.name: 'Tiefling'
|
|
6852
6854
|
races.tiefling.description: |-
|
|
6853
6855
|
Tieflings share certain racial traits as a result of their infernal descent.
|
|
@@ -6863,8 +6865,6 @@ races.tiefling.description: |-
|
|
|
6863
6865
|
***Speed.*** Your base walking speed is 30 feet.
|
|
6864
6866
|
|
|
6865
6867
|
***Languages.*** You can speak, read, and write Common and Infernal.
|
|
6866
|
-
races.tiefling.state.hellishRebukeUsed.name: 'Hellish Rebuke used'
|
|
6867
|
-
races.tiefling.state.darknessUsed.name: 'Darkness used'
|
|
6868
6868
|
|
|
6869
6869
|
# Subraces
|
|
6870
6870
|
subraces.hill-dwarf.name: 'Hill dwarf'
|
|
@@ -7374,13 +7374,6 @@ classes.warlock.state.arcanum9Used.name: '9th-level arcanum used'
|
|
|
7374
7374
|
classes.warlock.state.eldritchMasterUsed.name: 'Eldritch Master used'
|
|
7375
7375
|
classes.warlock.state.darkOnesOwnLuckUsed.name: "Dark One's Own Luck used"
|
|
7376
7376
|
classes.warlock.state.hurlThroughHellUsed.name: 'Hurl Through Hell used'
|
|
7377
|
-
classes.warlock.state.bewitchingWhispersUsed.name: 'Bewitching Whispers used'
|
|
7378
|
-
classes.warlock.state.dreadfulWordUsed.name: 'Dreadful Word used'
|
|
7379
|
-
classes.warlock.state.minionsOfChaosUsed.name: 'Minions of Chaos used'
|
|
7380
|
-
classes.warlock.state.mireTheMindUsed.name: 'Mire the Mind used'
|
|
7381
|
-
classes.warlock.state.sculptorOfFleshUsed.name: 'Sculptor of Flesh used'
|
|
7382
|
-
classes.warlock.state.signOfIllOmenUsed.name: 'Sign of Ill Omen used'
|
|
7383
|
-
classes.warlock.state.thiefOfFiveFatesUsed.name: 'Thief of Five Fates used'
|
|
7384
7377
|
classes.wizard.choices.skills.prompt: 'Choose two wizard skills'
|
|
7385
7378
|
classes.wizard.name: 'Wizard'
|
|
7386
7379
|
classes.wizard.description: |-
|
|
@@ -7853,13 +7846,13 @@ features.druid.natural-recovery.description: |-
|
|
|
7853
7846
|
|
|
7854
7847
|
For example, when you are a 4th-level druid, you can recover up to two levels worth of spell slots. You can recover either a 2nd-level slot or two 1st-level slots.
|
|
7855
7848
|
features.druid.natural-recovery.actions.natural-recovery.name: 'Natural Recovery'
|
|
7856
|
-
features.druid.natural-recovery.actions.natural-recovery.
|
|
7857
|
-
features.druid.natural-recovery.actions.natural-recovery.
|
|
7858
|
-
features.druid.natural-recovery.actions.natural-recovery.
|
|
7859
|
-
features.druid.natural-recovery.actions.natural-recovery.
|
|
7860
|
-
features.druid.natural-recovery.actions.natural-recovery.
|
|
7849
|
+
features.druid.natural-recovery.actions.natural-recovery.steps.slots.prompt: 'Choose a spent slot to recover'
|
|
7850
|
+
features.druid.natural-recovery.actions.natural-recovery.options.1.name: '1st-level slot'
|
|
7851
|
+
features.druid.natural-recovery.actions.natural-recovery.options.2.name: '2nd-level slot'
|
|
7852
|
+
features.druid.natural-recovery.actions.natural-recovery.options.3.name: '3rd-level slot'
|
|
7853
|
+
features.druid.natural-recovery.actions.natural-recovery.options.4.name: '4th-level slot'
|
|
7854
|
+
features.druid.natural-recovery.actions.natural-recovery.options.5.name: '5th-level slot'
|
|
7861
7855
|
features.druid.natural-recovery.actions.natural-recovery.results.recovered.name: 'Slots recovered'
|
|
7862
|
-
features.druid.natural-recovery.actions.natural-recovery.results.too-many.name: 'Too many slot levels'
|
|
7863
7856
|
features.druid.circle-spells.name: 'Circle Spells'
|
|
7864
7857
|
features.druid.circle-spells.description: |-
|
|
7865
7858
|
Your mystical connection to the land infuses you with the ability to cast certain spells. At 3rd, 5th, 7th, and 9th level you gain access to circle spells connected to the land where you became a druid. Choose that land—arctic, coast, desert, forest, grassland, mountain, or swamp—and consult the associated list of spells.
|
|
@@ -8715,6 +8708,7 @@ invocations.beast-speech.description: 'You can cast *speak with animals* at will
|
|
|
8715
8708
|
invocations.beguiling-influence.name: 'Beguiling Influence'
|
|
8716
8709
|
invocations.beguiling-influence.description: 'You gain proficiency in the Deception and Persuasion skills.'
|
|
8717
8710
|
invocations.bewitching-whispers.name: 'Bewitching Whispers'
|
|
8711
|
+
invocations.bewitching-whispers.state.used.name: 'Bewitching Whispers used'
|
|
8718
8712
|
invocations.bewitching-whispers.description: "You can cast *compulsion* once using a warlock spell slot. You can't do so again until you finish a long rest."
|
|
8719
8713
|
invocations.bewitching-whispers.prerequisites.level: 'Bewitching Whispers needs warlock level 7.'
|
|
8720
8714
|
invocations.book-of-ancient-secrets.name: 'Book of Ancient Secrets'
|
|
@@ -8734,12 +8728,14 @@ invocations.chains-of-carceri.prerequisites.pact: 'Chains of Carceri needs the P
|
|
|
8734
8728
|
invocations.devils-sight.name: "Devil's Sight"
|
|
8735
8729
|
invocations.devils-sight.description: 'You can see normally in darkness, both magical and nonmagical, to a distance of 120 feet.'
|
|
8736
8730
|
invocations.dreadful-word.name: 'Dreadful Word'
|
|
8731
|
+
invocations.dreadful-word.state.used.name: 'Dreadful Word used'
|
|
8737
8732
|
invocations.dreadful-word.description: "You can cast *confusion* once using a warlock spell slot. You can't do so again until you finish a long rest."
|
|
8738
8733
|
invocations.dreadful-word.prerequisites.level: 'Dreadful Word needs warlock level 7.'
|
|
8739
8734
|
invocations.eldritch-sight.name: 'Eldritch Sight'
|
|
8740
8735
|
invocations.eldritch-sight.description: 'You can cast *detect magic* at will, without expending a spell slot.'
|
|
8741
8736
|
invocations.eldritch-spear.name: 'Eldritch Spear'
|
|
8742
8737
|
invocations.eldritch-spear.description: 'When you cast *eldritch blast*, its range is 300 feet.'
|
|
8738
|
+
templates.eldritch-spear.name: '{base}'
|
|
8743
8739
|
invocations.eyes-of-the-rune-keeper.name: 'Eyes of the Rune Keeper'
|
|
8744
8740
|
invocations.eyes-of-the-rune-keeper.description: 'You can read all writing.'
|
|
8745
8741
|
invocations.fiendish-vigor.name: 'Fiendish Vigor'
|
|
@@ -8756,9 +8752,11 @@ invocations.master-of-myriad-forms.name: 'Master of Myriad Forms'
|
|
|
8756
8752
|
invocations.master-of-myriad-forms.description: 'You can cast *alter self* at will, without expending a spell slot.'
|
|
8757
8753
|
invocations.master-of-myriad-forms.prerequisites.level: 'Master of Myriad Forms needs warlock level 15.'
|
|
8758
8754
|
invocations.minions-of-chaos.name: 'Minions of Chaos'
|
|
8755
|
+
invocations.minions-of-chaos.state.used.name: 'Minions of Chaos used'
|
|
8759
8756
|
invocations.minions-of-chaos.description: "You can cast *conjure elemental* once using a warlock spell slot. You can't do so again until you finish a long rest."
|
|
8760
8757
|
invocations.minions-of-chaos.prerequisites.level: 'Minions of Chaos needs warlock level 9.'
|
|
8761
8758
|
invocations.mire-the-mind.name: 'Mire the Mind'
|
|
8759
|
+
invocations.mire-the-mind.state.used.name: 'Mire the Mind used'
|
|
8762
8760
|
invocations.mire-the-mind.description: "You can cast *slow* once using a warlock spell slot. You can't do so again until you finish a long rest."
|
|
8763
8761
|
invocations.mire-the-mind.prerequisites.level: 'Mire the Mind needs warlock level 5.'
|
|
8764
8762
|
invocations.misty-visions.name: 'Misty Visions'
|
|
@@ -8772,12 +8770,15 @@ invocations.otherworldly-leap.prerequisites.level: 'Otherworldly Leap needs warl
|
|
|
8772
8770
|
invocations.repelling-blast.name: 'Repelling Blast'
|
|
8773
8771
|
invocations.repelling-blast.description: 'When you hit a creature with *eldritch blast*, you can push the creature up to 10 feet away from you in a straight line.'
|
|
8774
8772
|
invocations.sculptor-of-flesh.name: 'Sculptor of Flesh'
|
|
8773
|
+
invocations.sculptor-of-flesh.state.used.name: 'Sculptor of Flesh used'
|
|
8775
8774
|
invocations.sculptor-of-flesh.description: "You can cast *polymorph* once using a warlock spell slot. You can't do so again until you finish a long rest."
|
|
8776
8775
|
invocations.sculptor-of-flesh.prerequisites.level: 'Sculptor of Flesh needs warlock level 7.'
|
|
8777
8776
|
invocations.sign-of-ill-omen.name: 'Sign of Ill Omen'
|
|
8777
|
+
invocations.sign-of-ill-omen.state.used.name: 'Sign of Ill Omen used'
|
|
8778
8778
|
invocations.sign-of-ill-omen.description: "You can cast *bestow curse* once using a warlock spell slot. You can't do so again until you finish a long rest."
|
|
8779
8779
|
invocations.sign-of-ill-omen.prerequisites.level: 'Sign of Ill Omen needs warlock level 5.'
|
|
8780
8780
|
invocations.thief-of-five-fates.name: 'Thief of Five Fates'
|
|
8781
|
+
invocations.thief-of-five-fates.state.used.name: 'Thief of Five Fates used'
|
|
8781
8782
|
invocations.thief-of-five-fates.description: "You can cast *bane* once using a warlock spell slot. You can't do so again until you finish a long rest."
|
|
8782
8783
|
invocations.thirsting-blade.name: 'Thirsting Blade'
|
|
8783
8784
|
invocations.thirsting-blade.description: 'You can attack with your pact weapon twice, instead of once, whenever you take the Attack action on your turn.'
|
|
@@ -8845,14 +8846,14 @@ features.wizard.spellcasting.choices.spells.prompt: 'Choose wizard spells to pre
|
|
|
8845
8846
|
features.wizard.spellcasting.choices.spellbook.prompt: '{slot, select, 1 {Choose six 1st-level spells for your spellbook} other {Choose two spells for your spellbook (level {slot})}}'
|
|
8846
8847
|
features.wizard.spellcasting.choices.copied.prompt: 'Spells copied into your spellbook'
|
|
8847
8848
|
features.wizard.arcane-recovery.actions.arcane-recovery.name: 'Arcane Recovery'
|
|
8849
|
+
features.wizard.arcane-recovery.actions.arcane-recovery.steps.slots.prompt: 'Choose a spent slot to recover'
|
|
8850
|
+
features.wizard.arcane-recovery.actions.arcane-recovery.options.1.name: '1st-level slot'
|
|
8851
|
+
features.wizard.arcane-recovery.actions.arcane-recovery.options.2.name: '2nd-level slot'
|
|
8852
|
+
features.wizard.arcane-recovery.actions.arcane-recovery.options.3.name: '3rd-level slot'
|
|
8853
|
+
features.wizard.arcane-recovery.actions.arcane-recovery.options.4.name: '4th-level slot'
|
|
8854
|
+
features.wizard.arcane-recovery.actions.arcane-recovery.options.5.name: '5th-level slot'
|
|
8848
8855
|
features.wizard.overchannel.actions.overchannel.name: 'Overchannel'
|
|
8849
8856
|
features.wizard.spell-mastery.choices.level.prompt: 'Choose a {slot, selectordinal, one {#st} two {#nd} few {#rd} other {#th}}-level spell to master'
|
|
8850
|
-
features.wizard.arcane-recovery.actions.arcane-recovery.params.level1.name: '1st-level slots'
|
|
8851
|
-
features.wizard.arcane-recovery.actions.arcane-recovery.params.level2.name: '2nd-level slots'
|
|
8852
|
-
features.wizard.arcane-recovery.actions.arcane-recovery.params.level3.name: '3rd-level slots'
|
|
8853
|
-
features.wizard.arcane-recovery.actions.arcane-recovery.params.level4.name: '4th-level slots'
|
|
8854
|
-
features.wizard.arcane-recovery.actions.arcane-recovery.params.level5.name: '5th-level slots'
|
|
8855
|
-
features.wizard.arcane-recovery.actions.arcane-recovery.results.too-many.name: 'Too many slot levels'
|
|
8856
8857
|
features.wizard.arcane-recovery.actions.arcane-recovery.results.recovered.name: 'Slots recovered'
|
|
8857
8858
|
features.wizard.overchannel.actions.overchannel.params.spellLevel.name: 'Spell level'
|
|
8858
8859
|
features.wizard.overchannel.actions.overchannel.results.overchanneled.name: 'Overchanneled'
|
package/pack.yaml
CHANGED
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@opencharacter/5e-srd-5.1",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.2.0",
|
|
4
4
|
"description": "Open Character Format pack: the 5E System Reference Document 5.1.",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"5e",
|
|
@@ -52,7 +52,7 @@
|
|
|
52
52
|
"access": "public"
|
|
53
53
|
},
|
|
54
54
|
"devDependencies": {
|
|
55
|
-
"@opencharacter/engine": "0.
|
|
55
|
+
"@opencharacter/engine": "0.2.0"
|
|
56
56
|
},
|
|
57
57
|
"engines": {
|
|
58
58
|
"node": ">=22"
|
package/rules/classes.yaml
CHANGED
package/rules/combat.yaml
CHANGED
|
@@ -754,6 +754,7 @@ actions:
|
|
|
754
754
|
- id: breath-weapon
|
|
755
755
|
tags: [breath-weapon]
|
|
756
756
|
results: [breathed]
|
|
757
|
+
available: '!self.used'
|
|
757
758
|
participants:
|
|
758
759
|
target: {}
|
|
759
760
|
steps:
|
|
@@ -788,6 +789,10 @@ actions:
|
|
|
788
789
|
- save-half
|
|
789
790
|
- { formula: "'save.' + item.save" }
|
|
790
791
|
- { formula: "steps.saves.result == 'success' ? 'save-success' : 'save-failure'" }
|
|
792
|
+
- id: spend
|
|
793
|
+
kind: changes
|
|
794
|
+
changes:
|
|
795
|
+
- { type: setState, pick: self, key: used, value: true }
|
|
791
796
|
- id: result
|
|
792
797
|
kind: outcome
|
|
793
798
|
result: "'breathed'"
|
package/rules/content-types.yaml
CHANGED
|
@@ -289,6 +289,9 @@ contentTypes:
|
|
|
289
289
|
damageType: { type: enum, values: [acid, cold, fire, lightning, poison], required: true }
|
|
290
290
|
area: { type: enum, values: [line, cone], required: true }
|
|
291
291
|
save: { type: enum, values: [dex, con], required: true }
|
|
292
|
+
# Once until a short or long rest, on the ancestry's pick.
|
|
293
|
+
state:
|
|
294
|
+
used: { type: boolean, default: false }
|
|
292
295
|
actions:
|
|
293
296
|
- use: breath-weapon
|
|
294
297
|
|
package/rules/creation.yaml
CHANGED
|
@@ -23,7 +23,9 @@ actions:
|
|
|
23
23
|
kind: choice
|
|
24
24
|
options: { content: { type: subrace, where: item.race == steps.race.picked } }
|
|
25
25
|
changes:
|
|
26
|
-
-
|
|
26
|
+
- type: choose
|
|
27
|
+
path: { entry: { formula: 'steps.race.added[0]' }, choice: [subrace] }
|
|
28
|
+
option: picked.id
|
|
27
29
|
- id: class
|
|
28
30
|
kind: choice
|
|
29
31
|
options: { content: { type: class } }
|
|
@@ -129,7 +131,9 @@ actions:
|
|
|
129
131
|
options: { content: { type: subrace, where: item.race == steps.race.picked } }
|
|
130
132
|
random: true
|
|
131
133
|
changes:
|
|
132
|
-
-
|
|
134
|
+
- type: choose
|
|
135
|
+
path: { entry: { formula: 'steps.race.added[0]' }, choice: [subrace] }
|
|
136
|
+
option: picked.id
|
|
133
137
|
- id: class
|
|
134
138
|
kind: choice
|
|
135
139
|
options: { content: { type: class } }
|
package/rules/display.yaml
CHANGED
|
@@ -446,12 +446,6 @@ display:
|
|
|
446
446
|
priority: 1,
|
|
447
447
|
showWhen: '@spells.eldritch-blast in spells.warlock',
|
|
448
448
|
}
|
|
449
|
-
eldritchBlast.range:
|
|
450
|
-
{
|
|
451
|
-
groups: [class-features],
|
|
452
|
-
priority: 2,
|
|
453
|
-
showWhen: '@spells.eldritch-blast in spells.warlock',
|
|
454
|
-
}
|
|
455
449
|
eldritchBlast.push: { groups: [class-features], priority: 2, showWhen: eldritchBlast.push > 0 }
|
|
456
450
|
sorcery.left: { groups: [class-features], priority: 1, showWhen: sorcery.points > 0 }
|
|
457
451
|
sorcery.shortRestRegain: { hidden: true }
|
package/rules/monsters.yaml
CHANGED
|
@@ -540,7 +540,7 @@ actions:
|
|
|
540
540
|
changes:
|
|
541
541
|
- type: choose
|
|
542
542
|
when: has(steps.monster.item.startingForm)
|
|
543
|
-
path: { entry: monster, choice: [form] }
|
|
543
|
+
path: { entry: { formula: 'steps.monster.added[0]' }, choice: [form] }
|
|
544
544
|
option: steps.monster.item.startingForm
|
|
545
545
|
- type: addItem
|
|
546
546
|
forEach: steps.monster.item.ownCopies
|
package/rules/rest.yaml
CHANGED
|
@@ -279,13 +279,13 @@ actions:
|
|
|
279
279
|
key: wholenessUsed
|
|
280
280
|
value: false
|
|
281
281
|
- type: setState
|
|
282
|
-
when: countCopies(
|
|
283
|
-
|
|
282
|
+
when: countCopies(copy.item == @races.tiefling) > 0
|
|
283
|
+
grants: { where: 'item.id == @traits.infernal-legacy && self.hellishRebukeUsed' }
|
|
284
284
|
key: hellishRebukeUsed
|
|
285
285
|
value: false
|
|
286
286
|
- type: setState
|
|
287
|
-
when: countCopies(
|
|
288
|
-
|
|
287
|
+
when: countCopies(copy.item == @races.tiefling) > 0
|
|
288
|
+
grants: { where: 'item.id == @traits.infernal-legacy && self.darknessUsed' }
|
|
289
289
|
key: darknessUsed
|
|
290
290
|
value: false
|
|
291
291
|
- type: setState
|
|
@@ -300,15 +300,9 @@ actions:
|
|
|
300
300
|
key: used
|
|
301
301
|
value: false
|
|
302
302
|
- type: setState
|
|
303
|
-
when:
|
|
304
|
-
|
|
305
|
-
|
|
306
|
-
copies:
|
|
307
|
-
{
|
|
308
|
-
type: race,
|
|
309
|
-
where: has(self.relentlessEnduranceUsed) && self.relentlessEnduranceUsed,
|
|
310
|
-
}
|
|
311
|
-
key: relentlessEnduranceUsed
|
|
303
|
+
when: countCopies(copy.item == @races.half-orc) > 0
|
|
304
|
+
grants: { where: 'item.id == @traits.relentless-endurance && self.used' }
|
|
305
|
+
key: used
|
|
312
306
|
value: false
|
|
313
307
|
- type: setState
|
|
314
308
|
when: countCopies(has(copy.state.signatureSpell1Used) && copy.state.signatureSpell1Used) > 0
|
|
@@ -323,45 +317,14 @@ actions:
|
|
|
323
317
|
key: signatureSpell2Used
|
|
324
318
|
value: false
|
|
325
319
|
- type: setState
|
|
326
|
-
when: countCopies(
|
|
327
|
-
|
|
328
|
-
|
|
329
|
-
type: class,
|
|
330
|
-
where: has(self.bewitchingWhispersUsed) && self.bewitchingWhispersUsed,
|
|
331
|
-
}
|
|
332
|
-
key: bewitchingWhispersUsed
|
|
333
|
-
value: false
|
|
334
|
-
- type: setState
|
|
335
|
-
when: countCopies(has(copy.state.dreadfulWordUsed) && copy.state.dreadfulWordUsed) > 0
|
|
336
|
-
copies: { type: class, where: has(self.dreadfulWordUsed) && self.dreadfulWordUsed }
|
|
337
|
-
key: dreadfulWordUsed
|
|
338
|
-
value: false
|
|
339
|
-
- type: setState
|
|
340
|
-
when: countCopies(has(copy.state.minionsOfChaosUsed) && copy.state.minionsOfChaosUsed) > 0
|
|
341
|
-
copies: { type: class, where: has(self.minionsOfChaosUsed) && self.minionsOfChaosUsed }
|
|
342
|
-
key: minionsOfChaosUsed
|
|
343
|
-
value: false
|
|
344
|
-
- type: setState
|
|
345
|
-
when: countCopies(has(copy.state.mireTheMindUsed) && copy.state.mireTheMindUsed) > 0
|
|
346
|
-
copies: { type: class, where: has(self.mireTheMindUsed) && self.mireTheMindUsed }
|
|
347
|
-
key: mireTheMindUsed
|
|
348
|
-
value: false
|
|
349
|
-
- type: setState
|
|
350
|
-
when: countCopies(has(copy.state.sculptorOfFleshUsed) && copy.state.sculptorOfFleshUsed) > 0
|
|
351
|
-
copies:
|
|
352
|
-
{ type: class, where: has(self.sculptorOfFleshUsed) && self.sculptorOfFleshUsed }
|
|
353
|
-
key: sculptorOfFleshUsed
|
|
354
|
-
value: false
|
|
355
|
-
- type: setState
|
|
356
|
-
when: countCopies(has(copy.state.signOfIllOmenUsed) && copy.state.signOfIllOmenUsed) > 0
|
|
357
|
-
copies: { type: class, where: has(self.signOfIllOmenUsed) && self.signOfIllOmenUsed }
|
|
358
|
-
key: signOfIllOmenUsed
|
|
320
|
+
when: countCopies(copy.item == @classes.warlock) > 0
|
|
321
|
+
picks: { where: "item.type == 'invocation' && self.used" }
|
|
322
|
+
key: used
|
|
359
323
|
value: false
|
|
360
324
|
- type: setState
|
|
361
|
-
when: countCopies(
|
|
362
|
-
|
|
363
|
-
|
|
364
|
-
key: thiefOfFiveFatesUsed
|
|
325
|
+
when: countCopies(copy.item == @races.dragonborn) > 0
|
|
326
|
+
picks: { where: "item.type == 'draconicAncestry' && self.used" }
|
|
327
|
+
key: used
|
|
365
328
|
value: false
|
|
366
329
|
- type: setState
|
|
367
330
|
when: countCopies(copy.type == 'monsterAction') > 0
|
package/rules/spellcasting.yaml
CHANGED
|
@@ -685,6 +685,11 @@ actions:
|
|
|
685
685
|
{ type: class, where: has(self.signatureSpell2Used) && self.signatureSpell2Used }
|
|
686
686
|
key: signatureSpell2Used
|
|
687
687
|
value: false
|
|
688
|
+
- type: setState
|
|
689
|
+
when: countCopies(copy.item == @races.dragonborn) > 0
|
|
690
|
+
picks: { where: "item.type == 'draconicAncestry' && self.used" }
|
|
691
|
+
key: used
|
|
692
|
+
value: false
|
|
688
693
|
- type: setState
|
|
689
694
|
when: countCopies(copy.type == 'monsterAction') > 0
|
|
690
695
|
copies:
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
pack: 5e-srd-5.1
|
|
2
|
+
from: 0.1.0
|
|
3
|
+
to: 0.2.0
|
|
4
|
+
steps:
|
|
5
|
+
# Each once-per-rest invocation's use moved from the warlock copy to the invocation's pick.
|
|
6
|
+
- op: moveState
|
|
7
|
+
type: class
|
|
8
|
+
from: bewitchingWhispersUsed
|
|
9
|
+
to: used
|
|
10
|
+
owner: features.warlock.eldritch-invocations
|
|
11
|
+
choice: invocations
|
|
12
|
+
option: invocations.bewitching-whispers
|
|
13
|
+
- op: moveState
|
|
14
|
+
type: class
|
|
15
|
+
from: dreadfulWordUsed
|
|
16
|
+
to: used
|
|
17
|
+
owner: features.warlock.eldritch-invocations
|
|
18
|
+
choice: invocations
|
|
19
|
+
option: invocations.dreadful-word
|
|
20
|
+
- op: moveState
|
|
21
|
+
type: class
|
|
22
|
+
from: minionsOfChaosUsed
|
|
23
|
+
to: used
|
|
24
|
+
owner: features.warlock.eldritch-invocations
|
|
25
|
+
choice: invocations
|
|
26
|
+
option: invocations.minions-of-chaos
|
|
27
|
+
- op: moveState
|
|
28
|
+
type: class
|
|
29
|
+
from: mireTheMindUsed
|
|
30
|
+
to: used
|
|
31
|
+
owner: features.warlock.eldritch-invocations
|
|
32
|
+
choice: invocations
|
|
33
|
+
option: invocations.mire-the-mind
|
|
34
|
+
- op: moveState
|
|
35
|
+
type: class
|
|
36
|
+
from: sculptorOfFleshUsed
|
|
37
|
+
to: used
|
|
38
|
+
owner: features.warlock.eldritch-invocations
|
|
39
|
+
choice: invocations
|
|
40
|
+
option: invocations.sculptor-of-flesh
|
|
41
|
+
- op: moveState
|
|
42
|
+
type: class
|
|
43
|
+
from: signOfIllOmenUsed
|
|
44
|
+
to: used
|
|
45
|
+
owner: features.warlock.eldritch-invocations
|
|
46
|
+
choice: invocations
|
|
47
|
+
option: invocations.sign-of-ill-omen
|
|
48
|
+
- op: moveState
|
|
49
|
+
type: class
|
|
50
|
+
from: thiefOfFiveFatesUsed
|
|
51
|
+
to: used
|
|
52
|
+
owner: features.warlock.eldritch-invocations
|
|
53
|
+
choice: invocations
|
|
54
|
+
option: invocations.thief-of-five-fates
|
|
55
|
+
# Racial uses moved from the race copy to the granted trait's saved state.
|
|
56
|
+
- op: moveState
|
|
57
|
+
type: race
|
|
58
|
+
from: relentlessEnduranceUsed
|
|
59
|
+
to: used
|
|
60
|
+
grant: traits.relentless-endurance
|
|
61
|
+
- { op: moveState, type: race, from: hellishRebukeUsed, grant: traits.infernal-legacy }
|
|
62
|
+
- { op: moveState, type: race, from: darknessUsed, grant: traits.infernal-legacy }
|