91666d84b9
- Every data/spells/*.json now carries a "components" field with the V/S/M/F/DF tokens from its KB Components line (material/focus descriptions dropped; M/DF and F/DF alternatives kept verbatim). - 107/108 encoded. Create Alcool (data/spells/create_alcool.json) is left without the field: it is a homebrew cantrip (level 0) with no KB entry - the closest real spell, Enhance Water (Inner Sea Gods, V, S), is already a separate registry entry. - summon_monster_i/ii map to the KB's numeric files (summon-monster-1/2); hidden_diplomacy maps to its KB name Egorian Diplomacy (same spell, Spymaster's Handbook rename): V, S, M. - tests/test_spell_failure.py: the placeholder asserting the registry was not yet encoded is replaced by an encoded-state smoke test (all spells but Create Alcool declare components; five spot-checks against the SRD stat blocks). Golden transcripts unchanged: the component gates still need deafened/ASF conditions no golden combat has.
19 lines
900 B
JSON
19 lines
900 B
JSON
{
|
|
"name": "Virtue",
|
|
"level": 0,
|
|
"school": "transmutation",
|
|
"components": "V, S, DF",
|
|
"range": "touch",
|
|
"save": "none",
|
|
"base_dc": 10,
|
|
"cast_time": "standard",
|
|
"effects": [
|
|
{
|
|
"type": "temp_hp",
|
|
"amount": 1,
|
|
"duration_rounds": 10
|
|
}
|
|
],
|
|
"description": "SRD spells/virtue.md: a cantrip - the subject gains 1 temporary hit point for 1 minute. Saving Throw none, spell resistance yes (harmless). Modeled as a TempHpEffect (amount 1, 10 rounds): temporary hit points absorb damage before real hp (CRB 'Temporary Hit Points'), expire when the granting effect's duration ends, and do not stack (the creature keeps the higher amount, ties keep the longer remaining duration). default_policy never casts it: cantrips have no spell slot, and _find_buff_spell skips level-0 spells, so Virtue cannot preempt a leveled buff (Divine Favor) in the known-spell order."
|
|
}
|