diff --git a/api_v2/migrations/0017_characterclass_saving_throws.py b/api_v2/migrations/0017_characterclass_saving_throws.py new file mode 100644 index 00000000..f24a84ce --- /dev/null +++ b/api_v2/migrations/0017_characterclass_saving_throws.py @@ -0,0 +1,18 @@ +# Generated by Django 5.1.2 on 2024-11-25 19:36 + +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('api_v2', '0016_alter_creaturetrait_parent'), + ] + + operations = [ + migrations.AddField( + model_name='characterclass', + name='saving_throws', + field=models.ManyToManyField(help_text='Saving throw proficiencies for this class.', related_name='characterclass_saving_throws', to='api_v2.ability'), + ), + ] diff --git a/api_v2/models/characterclass.py b/api_v2/models/characterclass.py index 8e16dd46..3d76be0c 100644 --- a/api_v2/models/characterclass.py +++ b/api_v2/models/characterclass.py @@ -5,6 +5,7 @@ from .abstracts import HasName, HasDescription, Modification from .abstracts import key_field +from .abilities import Ability from .document import FromDocument from .enums import DIE_TYPES from drf_spectacular.utils import extend_schema_field, inline_serializer @@ -57,6 +58,11 @@ class CharacterClass(HasName, FromDocument): choices=DIE_TYPES, help_text='Dice notation hit dice option.') + + saving_throws = models.ManyToManyField(Ability, + related_name="characterclass_saving_throws", + help_text='Saving throw proficiencies for this class.') + @property @extend_schema_field(inline_serializer( name="hit_points", diff --git a/api_v2/tests/responses/TestObjects.test_class_example.approved.json b/api_v2/tests/responses/TestObjects.test_class_example.approved.json index 440dab54..a61b8a7f 100644 --- a/api_v2/tests/responses/TestObjects.test_class_example.approved.json +++ b/api_v2/tests/responses/TestObjects.test_class_example.approved.json @@ -16,6 +16,11 @@ "key": "srd_barbarian_danger-sense", "name": "Danger Sense" }, + { + "desc": "You start with the following equipment, in addition to the equipment granted by your background:\r\n* (*a*) a greataxe or (*b*) any martial melee weapon\r\n* (*a*) two handaxes or (*b*) any simple weapon\r\n* An explorer\u2019s pack and four javelins", + "key": "srd_barbarian_equipment", + "name": "Equipment" + }, { "desc": "Beginning at 5th level, you can attack twice, instead of once, whenever you take the Attack action on your turn.", "key": "srd_barbarian_extra-attack", @@ -51,6 +56,11 @@ "key": "srd_barbarian_primal-path", "name": "Primal Path" }, + { + "desc": "**Armor:** Light armor, medium armor, shields\r\n**Weapons:** Simple weapons, martial weapons\r\n**Tools:** None\r\n**Saving Throws:** Strength, Constitution\r\n**Skills:** Choose two from Animal Handling, Athletics, Intimidation, Nature, Perception, and Survival", + "key": "srd_barbarian_proficiencies", + "name": "Proficiencies" + }, { "desc": "In battle, you fight with primal ferocity. On your turn, you can enter a rage as a bonus action.\r\n\r\nWhile raging, you gain the following benefits if you aren't wearing heavy armor:\r\n\r\n* You have advantage on Strength checks and Strength saving throws.\r\n* When you make a melee weapon attack using Strength, you gain a bonus to the damage roll that increases as you gain levels as a barbarian, as shown in the Rage Damage column of the Barbarian table.\r\n* You have resistance to bludgeoning, piercing, and slashing damage. \r\n\r\nIf you are able to cast spells, you can't cast them or concentrate on them while raging.\r\n\r\nYour rage lasts for 1 minute. It ends early if you are knocked unconscious or if your turn ends and you haven't attacked a hostile creature since your last turn or taken damage since then. You can also end your rage on your turn as a bonus action.\r\n\r\nOnce you have raged the number of times shown for your barbarian level in the Rages column of the Barbarian table, you must finish a long rest before you can rage again.", "key": "srd_barbarian_rage", @@ -72,12 +82,12 @@ "name": "Unarmored Defense" } ], - "hit_dice": "d12", + "hit_dice": "D12", "hit_points": { - "hit_dice": "d12", - "hit_dice_name": "1d12 per Barbarian level", + "hit_dice": "D12", + "hit_dice_name": "1D12 per Barbarian level", "hit_points_at_1st_level": "12 + your Constitution modifier", - "hit_points_at_higher_levels": "1d12 (or 7) + your Constitution modifier per barbarian level after 1st" + "hit_points_at_higher_levels": "1D12 (or 7) + your Constitution modifier per barbarian level after 1st" }, "key": "srd_barbarian", "levels": { @@ -205,6 +215,10 @@ } }, "name": "Barbarian", + "saving_throws": [ + "http://localhost:8000/v2/abilities/con/", + "http://localhost:8000/v2/abilities/str/" + ], "subclass_of": null, "url": "http://localhost:8000/v2/classes/srd_barbarian/" } diff --git a/api_v2/tests/responses/TestObjects.test_spell_cantrip_example.approved.json b/api_v2/tests/responses/TestObjects.test_spell_cantrip_example.approved.json index bce33e9f..4e7cdacf 100644 --- a/api_v2/tests/responses/TestObjects.test_spell_cantrip_example.approved.json +++ b/api_v2/tests/responses/TestObjects.test_spell_cantrip_example.approved.json @@ -36,6 +36,11 @@ "key": "srd_bard_countercharm", "name": "Countercharm" }, + { + "desc": "You start with the following equipment, in addition to the equipment granted by your background:\r\n* (*a*) a rapier, (*b*) a longsword, or (*c*) any simple weapon\r\n* (*a*) a diplomat\u2019s pack or (*b*) an entertainer\u2019s pack\r\n* (*a*) a lute or (*b*) any other musical instrument\r\n* Leather armor and a dagger", + "key": "srd_bard_equipment", + "name": "Equipment" + }, { "desc": "At 3rd level, choose two of your skill proficiencies. Your proficiency bonus is doubled for any ability check you make that uses either of the chosen proficiencies.\r\n\r\nAt 10th level, you can choose another two skill proficiencies to gain this benefit.", "key": "srd_bard_expertise", @@ -56,6 +61,11 @@ "key": "srd_bard_magical-secrets", "name": "Magical Secrets" }, + { + "desc": "**Armor:** Light armor\r\n**Weapons:** Simple weapons, hand crossbows, longswords, rapiers, shortswords\r\n**Tools:** Three musical instruments of your choice\r\n**Saving Throws:** Dexterity, Charisma\r\n**Skills:** Choose any three", + "key": "srd_bard_proficiencies", + "name": "Proficiencies" + }, { "desc": "Beginning at 2nd level, you can use soothing music or oration to help revitalize your wounded allies during a short rest. If you or any friendly creatures who can hear your performance regain hit points at the end of the short rest by spending one or more Hit Dice, each of those creatures regains an extra 1d6 hit points.\r\n\r\nThe extra hit points increase when you reach certain levels in this class: to 1d8 at 9th level, to 1d10 at 13th level, and to 1d12 at 17th level.", "key": "srd_bard_song-of-rest", @@ -72,12 +82,12 @@ "name": "Superior Inspiration" } ], - "hit_dice": "d8", + "hit_dice": "D8", "hit_points": { - "hit_dice": "d8", - "hit_dice_name": "1d8 per Bard level", + "hit_dice": "D8", + "hit_dice_name": "1D8 per Bard level", "hit_points_at_1st_level": "8 + your Constitution modifier", - "hit_points_at_higher_levels": "1d8 (or 5) + your Constitution modifier per bard level after 1st" + "hit_points_at_higher_levels": "1D8 (or 5) + your Constitution modifier per bard level after 1st" }, "key": "srd_bard", "levels": { @@ -215,6 +225,10 @@ } }, "name": "Bard", + "saving_throws": [ + "http://localhost:8000/v2/abilities/cha/", + "http://localhost:8000/v2/abilities/dex/" + ], "subclass_of": null, "url": "http://localhost:8000/v2/classes/srd_bard/" }, @@ -226,6 +240,11 @@ "key": "srd_sorcerer_ability-score-improvement", "name": "Ability Score Improvement" }, + { + "desc": "You start with the following equipment, in addition to the equipment granted by your background:\r\n* (*a*) a light crossbow and 20 bolts or (*b*) any simple weapon\r\n* (*a*) a component pouch or (*b*) an arcane focus\r\n* (*a*) a dungeoneer\u2019s pack or (*b*) an explorer\u2019s pack\r\n* Two daggers", + "key": "srd_sorcerer_equipment", + "name": "Equipment" + }, { "desc": "At 2nd level, you tap into a deep wellspring of magic within yourself. This wellspring is represented by sorcery points, which allow you to create a variety of magical effects.\r\n\r\n### Sorcery Points\r\n\r\nYou have 2 sorcery points, and you gain more as you reach higher levels, as shown in the Sorcery Points column of the Sorcerer table. You can never have more sorcery points than shown on the table for your level. You regain all spent sorcery points when you finish a long rest.\r\n\r\n### Flexible Casting\r\n\r\nYou can use your sorcery points to gain additional spell slots, or sacrifice spell slots to gain additional sorcery points. You learn other ways to use your sorcery points as you reach higher levels.\r\n\r\n***Creating Spell Slots.*** You can transform unexpended sorcery points into one spell slot as a bonus action on your turn. The Creating Spell Slots table shows the cost of creating a spell slot of a given level. You can create spell slots no higher in level than 5th.\r\n\r\nAny spell slot you create with this feature vanishes when you finish a long rest.\r\n\r\n### Creating Spell Slots (table)\r\n| Spell Slot Level | Sorcery Point Cost |\r\n| --- | --- |\r\n| 1st | 2 |\r\n| 2nd | 3 |\r\n| 3rd | 5 |\r\n| 4th | 6 |\r\n| 5th | 7|\r\n\r\n***Converting a Spell Slot to Sorcery Points.*** As a bonus action on your turn, you can expend one spell slot and gain a number of sorcery points equal to the slot's level.", "key": "srd_sorcerer_font-of-magic", @@ -250,14 +269,19 @@ "desc": "An event in your past, or in the life of a parent or ancestor, left an indelible mark on you, infusing you with arcane magic. This font of magic, whatever its origin, fuels your spells.\r\n\r\n### Cantrips\r\n\r\nAt 1st level, you know four cantrips of your choice from the sorcerer spell list. You learn additional sorcerer cantrips of your choice at higher levels, as shown in the Cantrips Known column of the Sorcerer table.\r\n\r\n### Spell Slots\r\n\r\nThe Sorcerer table shows how many spell slots you have to cast your spells of 1st level and higher. To cast one of these sorcerer spells, you must expend a slot of the spell's level or higher. You regain all expended spell slots when you finish a long rest.\r\n\r\nFor example, if you know the 1st-level spell burning hands and have a 1st-level and a 2nd-level spell slot available, you can cast burning hands using either slot.\r\n\r\n### Spells Known of 1st Level and Higher\r\n\r\nYou know two 1st-level spells of your choice from the sorcerer spell list.\r\n\r\nThe Spells Known column of the Sorcerer table shows when you learn more sorcerer spells of your choice. Each of these spells must be of a level for which you have spell slots. For instance, when you reach 3rd level in this class, you can learn one new spell of 1st or 2nd level.\r\n\r\nAdditionally, when you gain a level in this class, you can choose one of the sorcerer spells you know and replace it with another spell from the sorcerer spell list, which also must be of a level for which you have spell slots.\r\n\r\n### Spellcasting Ability\r\n\r\nCharisma is your spellcasting ability for your sorcerer spells, since the power of your magic relies on your ability to project your will into the world. You use your Charisma whenever a spell refers to your spellcasting ability. In addition, you use your Charisma modifier when setting the saving throw DC for a sorcerer spell you cast and when making an attack roll with one.\r\n\r\n**Spell save DC = 8** + your proficiency bonus + your Charisma modifier\r\n\r\n**Spell attack modifier** = your proficiency bonus + your Charisma modifier\r\nSpellcasting Focus\r\n\r\nYou can use an arcane focus as a spellcasting focus for your sorcerer spells.", "key": "srd_sorcerer_spellcasting", "name": "Spellcasting" + }, + { + "desc": "**Armor:** None\r\n**Weapons:** Daggers, darts, slings, quarterstaffs, light crossbows\r\n**Tools:** None\r\n**Saving Throws:** Constitution, Charisma\r\n**Skills:** Choose two from Arcana, Deception, Insight, Intimidation, Persuasion, and Religion", + "key": "srd_sorceror_proficiencies", + "name": "Proficiencies" } ], - "hit_dice": "d6", + "hit_dice": "D6", "hit_points": { - "hit_dice": "d6", - "hit_dice_name": "1d6 per Sorcerer level", + "hit_dice": "D6", + "hit_dice_name": "1D6 per Sorcerer level", "hit_points_at_1st_level": "6 + your Constitution modifier", - "hit_points_at_higher_levels": "1d6 (or 4) + your Constitution modifier per sorcerer level after 1st" + "hit_points_at_higher_levels": "1D6 (or 4) + your Constitution modifier per sorcerer level after 1st" }, "key": "srd_sorcerer", "levels": { @@ -341,6 +365,10 @@ } }, "name": "Sorcerer", + "saving_throws": [ + "http://localhost:8000/v2/abilities/cha/", + "http://localhost:8000/v2/abilities/con/" + ], "subclass_of": null, "url": "http://localhost:8000/v2/classes/srd_sorcerer/" }, @@ -367,6 +395,11 @@ "key": "srd_warlock_eldritch-master", "name": "Eldritch Master" }, + { + "desc": "You start with the following equipment, in addition to the equipment granted by your background:\r\n* (*a*) a light crossbow and 20 bolts or (*b*) any simple weapon\r\n* (*a*) a component pouch or (*b*) an arcane focus\r\n* (*a*) a scholar\u2019s pack or (*b*) a dungeoneer\u2019s pack\r\n* Leather armor, any simple weapon, and two daggers", + "key": "srd_warlock_equipment", + "name": "Equipment" + }, { "desc": "At 11th level, your patron bestows upon you a magical secret called an arcanum. Choose one 6th- level spell from the warlock spell list as this arcanum.\r\n\r\nYou can cast your arcanum spell once without expending a spell slot. You must finish a long rest before you can do so again.\r\n\r\nAt higher levels, you gain more warlock spells of your choice that can be cast in this way: one 7th- level spell at 13th level, one 8th-level spell at 15th level, and one 9th-level spell at 17th level. You regain all uses of your Mystic Arcanum when you finish a long rest.", "key": "srd_warlock_mystic-arcanum", @@ -386,14 +419,19 @@ "desc": "Your arcane research and the magic bestowed on you by your patron have given you facility with spells.\r\n\r\n### Cantrips\r\n\r\nYou know two cantrips of your choice from the warlock spell list. You learn additional warlock cantrips of your choice at higher levels, as shown in the Cantrips Known column of the Warlock table.\r\nSpell Slots\r\n\r\nThe Warlock table shows how many spell slots you have. The table also shows what the level of those slots is; all of your spell slots are the same level. To cast one of your warlock spells of 1st level or higher, you must expend a spell slot. You regain all expended spell slots when you finish a short or long rest.\r\n\r\nFor example, when you are 5th level, you have two 3rd-level spell slots. To cast the 1st-level spell thunderwave, you must spend one of those slots, and you cast it as a 3rd-level spell.\r\n\r\n### Spells Known of 1st Level and Higher\r\n\r\nAt 1st level, you know two 1st-level spells of your choice from the warlock spell list.\r\n\r\nThe Spells Known column of the Warlock table shows when you learn more warlock spells of your choice of 1st level and higher. A spell you choose must be of a level no higher than what's shown in the table's Slot Level column for your level. When you reach 6th level, for example, you learn a new warlock spell, which can be 1st, 2nd, or 3rd level.\r\n\r\nAdditionally, when you gain a level in this class, you can choose one of the warlock spells you know and replace it with another spell from the warlock spell list, which also must be of a level for which you have spell slots.\r\n\r\n### Spellcasting Ability\r\n\r\nCharisma is your spellcasting ability for your warlock spells, so you use your Charisma whenever a spell refers to your spellcasting ability. In addition, you use your Charisma modifier when setting the saving throw DC for a warlock spell you cast and when making an attack roll with one.\r\n\r\n**Spell save DC** = 8 + your proficiency bonus + your Charisma modifier\r\n\r\n**Spell attack modifier** = your proficiency bonus + your Charisma modifier\r\n\r\n### Spellcasting Focus\r\n\r\nYou can use an arcane focus as a spellcasting focus for your warlock spells.", "key": "srd_warlock_pact-magic", "name": "Pact Magic" + }, + { + "desc": "**Armor:** Light armor\r\n**Weapons:** Simple weapons\r\n**Tools:** None\r\n**Saving Throws:** Wisdom, Charisma\r\n**Skills:** Choose two skills from Arcana, Deception, History, Intimidation, Investigation, Nature, and Religion", + "key": "srd_warlock_proficiencies", + "name": "Proficiencies" } ], - "hit_dice": "d8", + "hit_dice": "D8", "hit_points": { - "hit_dice": "d8", - "hit_dice_name": "1d8 per Warlock level", + "hit_dice": "D8", + "hit_dice_name": "1D8 per Warlock level", "hit_points_at_1st_level": "8 + your Constitution modifier", - "hit_points_at_higher_levels": "1d8 (or 5) + your Constitution modifier per warlock level after 1st" + "hit_points_at_higher_levels": "1D8 (or 5) + your Constitution modifier per warlock level after 1st" }, "key": "srd_warlock", "levels": { @@ -485,6 +523,10 @@ } }, "name": "Warlock", + "saving_throws": [ + "http://localhost:8000/v2/abilities/cha/", + "http://localhost:8000/v2/abilities/wis/" + ], "subclass_of": null, "url": "http://localhost:8000/v2/classes/srd_warlock/" }, @@ -506,6 +548,16 @@ "key": "srd_wizard_arcane-tradition", "name": "Arcane Tradition" }, + { + "desc": "You start with the following equipment, in addition to the equipment granted by your background:\r\n* (*a*) a quarterstaff or (*b*) a dagger\r\n* (*a*) a component pouch or (*b*) an arcane focus\r\n* (*a*) a scholar\u2019s pack or (*b*) an explorer\u2019s pack\r\n* A spellbook", + "key": "srd_wizard_equipment", + "name": "Equipment" + }, + { + "desc": "**Armor:** None\r\n**Weapons:** Daggers, darts, slings, quarterstaffs, light crossbows\r\n**Tools:** None\r\n**Saving Throws:** Intelligence, Wisdom\r\n**Skills:** Choose two from Arcana, History, Insight, Investigation, Medicine, and Religion", + "key": "srd_wizard_proficiencies", + "name": "Proficiencies" + }, { "desc": "When you reach 20th level, you gain mastery over two powerful spells and can cast them with little effort. Choose two 3rd-level wizard spells in your spellbook as your signature spells. You always have these spells prepared, they don't count against the number of spells you have prepared, and you can cast each of them once at 3rd level without expending a spell slot. When you do so, you can't do so again until you finish a short or long rest.\r\n\r\nIf you want to cast either spell at a higher level, you must expend a spell slot as normal.", "key": "srd_wizard_signature-spells", @@ -522,12 +574,12 @@ "name": "Spellcasting" } ], - "hit_dice": "d6", + "hit_dice": "D6", "hit_points": { - "hit_dice": "d6", - "hit_dice_name": "1d6 per Wizard level", + "hit_dice": "D6", + "hit_dice_name": "1D6 per Wizard level", "hit_points_at_1st_level": "6 + your Constitution modifier", - "hit_points_at_higher_levels": "1d6 (or 4) + your Constitution modifier per wizard level after 1st" + "hit_points_at_higher_levels": "1D6 (or 4) + your Constitution modifier per wizard level after 1st" }, "key": "srd_wizard", "levels": { @@ -597,6 +649,10 @@ } }, "name": "Wizard", + "saving_throws": [ + "http://localhost:8000/v2/abilities/int/", + "http://localhost:8000/v2/abilities/wis/" + ], "subclass_of": null, "url": "http://localhost:8000/v2/classes/srd_wizard/" } diff --git a/api_v2/tests/responses/TestObjects.test_spell_fireball.approved.json b/api_v2/tests/responses/TestObjects.test_spell_fireball.approved.json index ba304739..47db93db 100644 --- a/api_v2/tests/responses/TestObjects.test_spell_fireball.approved.json +++ b/api_v2/tests/responses/TestObjects.test_spell_fireball.approved.json @@ -75,6 +75,11 @@ "key": "srd_sorcerer_ability-score-improvement", "name": "Ability Score Improvement" }, + { + "desc": "You start with the following equipment, in addition to the equipment granted by your background:\r\n* (*a*) a light crossbow and 20 bolts or (*b*) any simple weapon\r\n* (*a*) a component pouch or (*b*) an arcane focus\r\n* (*a*) a dungeoneer\u2019s pack or (*b*) an explorer\u2019s pack\r\n* Two daggers", + "key": "srd_sorcerer_equipment", + "name": "Equipment" + }, { "desc": "At 2nd level, you tap into a deep wellspring of magic within yourself. This wellspring is represented by sorcery points, which allow you to create a variety of magical effects.\r\n\r\n### Sorcery Points\r\n\r\nYou have 2 sorcery points, and you gain more as you reach higher levels, as shown in the Sorcery Points column of the Sorcerer table. You can never have more sorcery points than shown on the table for your level. You regain all spent sorcery points when you finish a long rest.\r\n\r\n### Flexible Casting\r\n\r\nYou can use your sorcery points to gain additional spell slots, or sacrifice spell slots to gain additional sorcery points. You learn other ways to use your sorcery points as you reach higher levels.\r\n\r\n***Creating Spell Slots.*** You can transform unexpended sorcery points into one spell slot as a bonus action on your turn. The Creating Spell Slots table shows the cost of creating a spell slot of a given level. You can create spell slots no higher in level than 5th.\r\n\r\nAny spell slot you create with this feature vanishes when you finish a long rest.\r\n\r\n### Creating Spell Slots (table)\r\n| Spell Slot Level | Sorcery Point Cost |\r\n| --- | --- |\r\n| 1st | 2 |\r\n| 2nd | 3 |\r\n| 3rd | 5 |\r\n| 4th | 6 |\r\n| 5th | 7|\r\n\r\n***Converting a Spell Slot to Sorcery Points.*** As a bonus action on your turn, you can expend one spell slot and gain a number of sorcery points equal to the slot's level.", "key": "srd_sorcerer_font-of-magic", @@ -99,14 +104,19 @@ "desc": "An event in your past, or in the life of a parent or ancestor, left an indelible mark on you, infusing you with arcane magic. This font of magic, whatever its origin, fuels your spells.\r\n\r\n### Cantrips\r\n\r\nAt 1st level, you know four cantrips of your choice from the sorcerer spell list. You learn additional sorcerer cantrips of your choice at higher levels, as shown in the Cantrips Known column of the Sorcerer table.\r\n\r\n### Spell Slots\r\n\r\nThe Sorcerer table shows how many spell slots you have to cast your spells of 1st level and higher. To cast one of these sorcerer spells, you must expend a slot of the spell's level or higher. You regain all expended spell slots when you finish a long rest.\r\n\r\nFor example, if you know the 1st-level spell burning hands and have a 1st-level and a 2nd-level spell slot available, you can cast burning hands using either slot.\r\n\r\n### Spells Known of 1st Level and Higher\r\n\r\nYou know two 1st-level spells of your choice from the sorcerer spell list.\r\n\r\nThe Spells Known column of the Sorcerer table shows when you learn more sorcerer spells of your choice. Each of these spells must be of a level for which you have spell slots. For instance, when you reach 3rd level in this class, you can learn one new spell of 1st or 2nd level.\r\n\r\nAdditionally, when you gain a level in this class, you can choose one of the sorcerer spells you know and replace it with another spell from the sorcerer spell list, which also must be of a level for which you have spell slots.\r\n\r\n### Spellcasting Ability\r\n\r\nCharisma is your spellcasting ability for your sorcerer spells, since the power of your magic relies on your ability to project your will into the world. You use your Charisma whenever a spell refers to your spellcasting ability. In addition, you use your Charisma modifier when setting the saving throw DC for a sorcerer spell you cast and when making an attack roll with one.\r\n\r\n**Spell save DC = 8** + your proficiency bonus + your Charisma modifier\r\n\r\n**Spell attack modifier** = your proficiency bonus + your Charisma modifier\r\nSpellcasting Focus\r\n\r\nYou can use an arcane focus as a spellcasting focus for your sorcerer spells.", "key": "srd_sorcerer_spellcasting", "name": "Spellcasting" + }, + { + "desc": "**Armor:** None\r\n**Weapons:** Daggers, darts, slings, quarterstaffs, light crossbows\r\n**Tools:** None\r\n**Saving Throws:** Constitution, Charisma\r\n**Skills:** Choose two from Arcana, Deception, Insight, Intimidation, Persuasion, and Religion", + "key": "srd_sorceror_proficiencies", + "name": "Proficiencies" } ], - "hit_dice": "d6", + "hit_dice": "D6", "hit_points": { - "hit_dice": "d6", - "hit_dice_name": "1d6 per Sorcerer level", + "hit_dice": "D6", + "hit_dice_name": "1D6 per Sorcerer level", "hit_points_at_1st_level": "6 + your Constitution modifier", - "hit_points_at_higher_levels": "1d6 (or 4) + your Constitution modifier per sorcerer level after 1st" + "hit_points_at_higher_levels": "1D6 (or 4) + your Constitution modifier per sorcerer level after 1st" }, "key": "srd_sorcerer", "levels": { @@ -190,6 +200,10 @@ } }, "name": "Sorcerer", + "saving_throws": [ + "http://localhost:8000/v2/abilities/cha/", + "http://localhost:8000/v2/abilities/con/" + ], "subclass_of": null, "url": "http://localhost:8000/v2/classes/srd_sorcerer/" }, @@ -211,6 +225,16 @@ "key": "srd_wizard_arcane-tradition", "name": "Arcane Tradition" }, + { + "desc": "You start with the following equipment, in addition to the equipment granted by your background:\r\n* (*a*) a quarterstaff or (*b*) a dagger\r\n* (*a*) a component pouch or (*b*) an arcane focus\r\n* (*a*) a scholar\u2019s pack or (*b*) an explorer\u2019s pack\r\n* A spellbook", + "key": "srd_wizard_equipment", + "name": "Equipment" + }, + { + "desc": "**Armor:** None\r\n**Weapons:** Daggers, darts, slings, quarterstaffs, light crossbows\r\n**Tools:** None\r\n**Saving Throws:** Intelligence, Wisdom\r\n**Skills:** Choose two from Arcana, History, Insight, Investigation, Medicine, and Religion", + "key": "srd_wizard_proficiencies", + "name": "Proficiencies" + }, { "desc": "When you reach 20th level, you gain mastery over two powerful spells and can cast them with little effort. Choose two 3rd-level wizard spells in your spellbook as your signature spells. You always have these spells prepared, they don't count against the number of spells you have prepared, and you can cast each of them once at 3rd level without expending a spell slot. When you do so, you can't do so again until you finish a short or long rest.\r\n\r\nIf you want to cast either spell at a higher level, you must expend a spell slot as normal.", "key": "srd_wizard_signature-spells", @@ -227,12 +251,12 @@ "name": "Spellcasting" } ], - "hit_dice": "d6", + "hit_dice": "D6", "hit_points": { - "hit_dice": "d6", - "hit_dice_name": "1d6 per Wizard level", + "hit_dice": "D6", + "hit_dice_name": "1D6 per Wizard level", "hit_points_at_1st_level": "6 + your Constitution modifier", - "hit_points_at_higher_levels": "1d6 (or 4) + your Constitution modifier per wizard level after 1st" + "hit_points_at_higher_levels": "1D6 (or 4) + your Constitution modifier per wizard level after 1st" }, "key": "srd_wizard", "levels": { @@ -302,6 +326,10 @@ } }, "name": "Wizard", + "saving_throws": [ + "http://localhost:8000/v2/abilities/int/", + "http://localhost:8000/v2/abilities/wis/" + ], "subclass_of": null, "url": "http://localhost:8000/v2/classes/srd_wizard/" } diff --git a/api_v2/tests/responses/TestObjects.test_spell_wish.approved.json b/api_v2/tests/responses/TestObjects.test_spell_wish.approved.json index 9b85e4a7..d607c75f 100644 --- a/api_v2/tests/responses/TestObjects.test_spell_wish.approved.json +++ b/api_v2/tests/responses/TestObjects.test_spell_wish.approved.json @@ -21,6 +21,11 @@ "key": "srd_sorcerer_ability-score-improvement", "name": "Ability Score Improvement" }, + { + "desc": "You start with the following equipment, in addition to the equipment granted by your background:\r\n* (*a*) a light crossbow and 20 bolts or (*b*) any simple weapon\r\n* (*a*) a component pouch or (*b*) an arcane focus\r\n* (*a*) a dungeoneer\u2019s pack or (*b*) an explorer\u2019s pack\r\n* Two daggers", + "key": "srd_sorcerer_equipment", + "name": "Equipment" + }, { "desc": "At 2nd level, you tap into a deep wellspring of magic within yourself. This wellspring is represented by sorcery points, which allow you to create a variety of magical effects.\r\n\r\n### Sorcery Points\r\n\r\nYou have 2 sorcery points, and you gain more as you reach higher levels, as shown in the Sorcery Points column of the Sorcerer table. You can never have more sorcery points than shown on the table for your level. You regain all spent sorcery points when you finish a long rest.\r\n\r\n### Flexible Casting\r\n\r\nYou can use your sorcery points to gain additional spell slots, or sacrifice spell slots to gain additional sorcery points. You learn other ways to use your sorcery points as you reach higher levels.\r\n\r\n***Creating Spell Slots.*** You can transform unexpended sorcery points into one spell slot as a bonus action on your turn. The Creating Spell Slots table shows the cost of creating a spell slot of a given level. You can create spell slots no higher in level than 5th.\r\n\r\nAny spell slot you create with this feature vanishes when you finish a long rest.\r\n\r\n### Creating Spell Slots (table)\r\n| Spell Slot Level | Sorcery Point Cost |\r\n| --- | --- |\r\n| 1st | 2 |\r\n| 2nd | 3 |\r\n| 3rd | 5 |\r\n| 4th | 6 |\r\n| 5th | 7|\r\n\r\n***Converting a Spell Slot to Sorcery Points.*** As a bonus action on your turn, you can expend one spell slot and gain a number of sorcery points equal to the slot's level.", "key": "srd_sorcerer_font-of-magic", @@ -45,14 +50,19 @@ "desc": "An event in your past, or in the life of a parent or ancestor, left an indelible mark on you, infusing you with arcane magic. This font of magic, whatever its origin, fuels your spells.\r\n\r\n### Cantrips\r\n\r\nAt 1st level, you know four cantrips of your choice from the sorcerer spell list. You learn additional sorcerer cantrips of your choice at higher levels, as shown in the Cantrips Known column of the Sorcerer table.\r\n\r\n### Spell Slots\r\n\r\nThe Sorcerer table shows how many spell slots you have to cast your spells of 1st level and higher. To cast one of these sorcerer spells, you must expend a slot of the spell's level or higher. You regain all expended spell slots when you finish a long rest.\r\n\r\nFor example, if you know the 1st-level spell burning hands and have a 1st-level and a 2nd-level spell slot available, you can cast burning hands using either slot.\r\n\r\n### Spells Known of 1st Level and Higher\r\n\r\nYou know two 1st-level spells of your choice from the sorcerer spell list.\r\n\r\nThe Spells Known column of the Sorcerer table shows when you learn more sorcerer spells of your choice. Each of these spells must be of a level for which you have spell slots. For instance, when you reach 3rd level in this class, you can learn one new spell of 1st or 2nd level.\r\n\r\nAdditionally, when you gain a level in this class, you can choose one of the sorcerer spells you know and replace it with another spell from the sorcerer spell list, which also must be of a level for which you have spell slots.\r\n\r\n### Spellcasting Ability\r\n\r\nCharisma is your spellcasting ability for your sorcerer spells, since the power of your magic relies on your ability to project your will into the world. You use your Charisma whenever a spell refers to your spellcasting ability. In addition, you use your Charisma modifier when setting the saving throw DC for a sorcerer spell you cast and when making an attack roll with one.\r\n\r\n**Spell save DC = 8** + your proficiency bonus + your Charisma modifier\r\n\r\n**Spell attack modifier** = your proficiency bonus + your Charisma modifier\r\nSpellcasting Focus\r\n\r\nYou can use an arcane focus as a spellcasting focus for your sorcerer spells.", "key": "srd_sorcerer_spellcasting", "name": "Spellcasting" + }, + { + "desc": "**Armor:** None\r\n**Weapons:** Daggers, darts, slings, quarterstaffs, light crossbows\r\n**Tools:** None\r\n**Saving Throws:** Constitution, Charisma\r\n**Skills:** Choose two from Arcana, Deception, Insight, Intimidation, Persuasion, and Religion", + "key": "srd_sorceror_proficiencies", + "name": "Proficiencies" } ], - "hit_dice": "d6", + "hit_dice": "D6", "hit_points": { - "hit_dice": "d6", - "hit_dice_name": "1d6 per Sorcerer level", + "hit_dice": "D6", + "hit_dice_name": "1D6 per Sorcerer level", "hit_points_at_1st_level": "6 + your Constitution modifier", - "hit_points_at_higher_levels": "1d6 (or 4) + your Constitution modifier per sorcerer level after 1st" + "hit_points_at_higher_levels": "1D6 (or 4) + your Constitution modifier per sorcerer level after 1st" }, "key": "srd_sorcerer", "levels": { @@ -136,6 +146,10 @@ } }, "name": "Sorcerer", + "saving_throws": [ + "http://localhost:8000/v2/abilities/cha/", + "http://localhost:8000/v2/abilities/con/" + ], "subclass_of": null, "url": "http://localhost:8000/v2/classes/srd_sorcerer/" }, @@ -157,6 +171,16 @@ "key": "srd_wizard_arcane-tradition", "name": "Arcane Tradition" }, + { + "desc": "You start with the following equipment, in addition to the equipment granted by your background:\r\n* (*a*) a quarterstaff or (*b*) a dagger\r\n* (*a*) a component pouch or (*b*) an arcane focus\r\n* (*a*) a scholar\u2019s pack or (*b*) an explorer\u2019s pack\r\n* A spellbook", + "key": "srd_wizard_equipment", + "name": "Equipment" + }, + { + "desc": "**Armor:** None\r\n**Weapons:** Daggers, darts, slings, quarterstaffs, light crossbows\r\n**Tools:** None\r\n**Saving Throws:** Intelligence, Wisdom\r\n**Skills:** Choose two from Arcana, History, Insight, Investigation, Medicine, and Religion", + "key": "srd_wizard_proficiencies", + "name": "Proficiencies" + }, { "desc": "When you reach 20th level, you gain mastery over two powerful spells and can cast them with little effort. Choose two 3rd-level wizard spells in your spellbook as your signature spells. You always have these spells prepared, they don't count against the number of spells you have prepared, and you can cast each of them once at 3rd level without expending a spell slot. When you do so, you can't do so again until you finish a short or long rest.\r\n\r\nIf you want to cast either spell at a higher level, you must expend a spell slot as normal.", "key": "srd_wizard_signature-spells", @@ -173,12 +197,12 @@ "name": "Spellcasting" } ], - "hit_dice": "d6", + "hit_dice": "D6", "hit_points": { - "hit_dice": "d6", - "hit_dice_name": "1d6 per Wizard level", + "hit_dice": "D6", + "hit_dice_name": "1D6 per Wizard level", "hit_points_at_1st_level": "6 + your Constitution modifier", - "hit_points_at_higher_levels": "1d6 (or 4) + your Constitution modifier per wizard level after 1st" + "hit_points_at_higher_levels": "1D6 (or 4) + your Constitution modifier per wizard level after 1st" }, "key": "srd_wizard", "levels": { @@ -248,6 +272,10 @@ } }, "name": "Wizard", + "saving_throws": [ + "http://localhost:8000/v2/abilities/int/", + "http://localhost:8000/v2/abilities/wis/" + ], "subclass_of": null, "url": "http://localhost:8000/v2/classes/srd_wizard/" } diff --git a/api_v2/tests/responses/TestObjects.test_subclass_example.approved.json b/api_v2/tests/responses/TestObjects.test_subclass_example.approved.json index 3f3f1ffe..3bd5c069 100644 --- a/api_v2/tests/responses/TestObjects.test_subclass_example.approved.json +++ b/api_v2/tests/responses/TestObjects.test_subclass_example.approved.json @@ -61,6 +61,7 @@ } }, "name": "Thief", + "saving_throws": [], "subclass_of": "http://localhost:8000/v2/classes/srd_rogue/", "url": "http://localhost:8000/v2/classes/srd_thief/" } diff --git a/data/v2/wizards-of-the-coast/srd/CharacterClass.json b/data/v2/wizards-of-the-coast/srd/CharacterClass.json index d9422600..fb268b9f 100644 --- a/data/v2/wizards-of-the-coast/srd/CharacterClass.json +++ b/data/v2/wizards-of-the-coast/srd/CharacterClass.json @@ -6,7 +6,11 @@ "name": "Barbarian", "document": "srd", "subclass_of": null, - "hit_dice": "d12" + "hit_dice": "D12", + "saving_throws": [ + "con", + "str" + ] } }, { @@ -16,7 +20,11 @@ "name": "Bard", "document": "srd", "subclass_of": null, - "hit_dice": "d8" + "hit_dice": "D8", + "saving_throws": [ + "cha", + "dex" + ] } }, { @@ -26,7 +34,8 @@ "name": "Champion", "document": "srd", "subclass_of": "srd_fighter", - "hit_dice": null + "hit_dice": null, + "saving_throws": [] } }, { @@ -36,7 +45,8 @@ "name": "Circle of the Land", "document": "srd", "subclass_of": "srd_druid", - "hit_dice": null + "hit_dice": null, + "saving_throws": [] } }, { @@ -46,7 +56,11 @@ "name": "Cleric", "document": "srd", "subclass_of": null, - "hit_dice": "d8" + "hit_dice": "D8", + "saving_throws": [ + "cha", + "wis" + ] } }, { @@ -56,7 +70,8 @@ "name": "College of Lore", "document": "srd", "subclass_of": "srd_bard", - "hit_dice": null + "hit_dice": null, + "saving_throws": [] } }, { @@ -66,7 +81,8 @@ "name": "Draconic Bloodline", "document": "srd", "subclass_of": "srd_sorcerer", - "hit_dice": null + "hit_dice": null, + "saving_throws": [] } }, { @@ -76,7 +92,11 @@ "name": "Druid", "document": "srd", "subclass_of": null, - "hit_dice": "d8" + "hit_dice": "D8", + "saving_throws": [ + "int", + "wis" + ] } }, { @@ -86,7 +106,11 @@ "name": "Fighter", "document": "srd", "subclass_of": null, - "hit_dice": "d10" + "hit_dice": "D10", + "saving_throws": [ + "con", + "str" + ] } }, { @@ -96,7 +120,8 @@ "name": "Hunter", "document": "srd", "subclass_of": "srd_ranger", - "hit_dice": null + "hit_dice": null, + "saving_throws": [] } }, { @@ -106,7 +131,8 @@ "name": "Life Domain", "document": "srd", "subclass_of": "srd_cleric", - "hit_dice": null + "hit_dice": null, + "saving_throws": [] } }, { @@ -116,7 +142,11 @@ "name": "Monk", "document": "srd", "subclass_of": null, - "hit_dice": "d8" + "hit_dice": "D8", + "saving_throws": [ + "dex", + "str" + ] } }, { @@ -126,7 +156,8 @@ "name": "Oath of Devotion", "document": "srd", "subclass_of": "srd_paladin", - "hit_dice": null + "hit_dice": null, + "saving_throws": [] } }, { @@ -136,7 +167,11 @@ "name": "Paladin", "document": "srd", "subclass_of": null, - "hit_dice": "d10" + "hit_dice": "D10", + "saving_throws": [ + "cha", + "wis" + ] } }, { @@ -146,7 +181,8 @@ "name": "Path of the Berserker", "document": "srd", "subclass_of": "srd_barbarian", - "hit_dice": null + "hit_dice": null, + "saving_throws": [] } }, { @@ -156,7 +192,11 @@ "name": "Ranger", "document": "srd", "subclass_of": null, - "hit_dice": "d10" + "hit_dice": "D10", + "saving_throws": [ + "dex", + "str" + ] } }, { @@ -166,7 +206,11 @@ "name": "Rogue", "document": "srd", "subclass_of": null, - "hit_dice": "d8" + "hit_dice": "D8", + "saving_throws": [ + "dex", + "int" + ] } }, { @@ -176,7 +220,8 @@ "name": "School of Evocation", "document": "srd", "subclass_of": "srd_wizard", - "hit_dice": null + "hit_dice": null, + "saving_throws": [] } }, { @@ -186,7 +231,11 @@ "name": "Sorcerer", "document": "srd", "subclass_of": null, - "hit_dice": "d6" + "hit_dice": "D6", + "saving_throws": [ + "cha", + "con" + ] } }, { @@ -196,7 +245,8 @@ "name": "The Fiend", "document": "srd", "subclass_of": "srd_warlock", - "hit_dice": null + "hit_dice": null, + "saving_throws": [] } }, { @@ -206,7 +256,8 @@ "name": "Thief", "document": "srd", "subclass_of": "srd_rogue", - "hit_dice": null + "hit_dice": null, + "saving_throws": [] } }, { @@ -216,7 +267,11 @@ "name": "Warlock", "document": "srd", "subclass_of": null, - "hit_dice": "d8" + "hit_dice": "D8", + "saving_throws": [ + "cha", + "wis" + ] } }, { @@ -226,7 +281,8 @@ "name": "Way of the Open Hand", "document": "srd", "subclass_of": "srd_monk", - "hit_dice": null + "hit_dice": null, + "saving_throws": [] } }, { @@ -236,7 +292,11 @@ "name": "Wizard", "document": "srd", "subclass_of": null, - "hit_dice": "d6" + "hit_dice": "D6", + "saving_throws": [ + "int", + "wis" + ] } } ] diff --git a/data/v2/wizards-of-the-coast/srd/ClassFeature.json b/data/v2/wizards-of-the-coast/srd/ClassFeature.json index 0314aadd..0a67b5b7 100644 --- a/data/v2/wizards-of-the-coast/srd/ClassFeature.json +++ b/data/v2/wizards-of-the-coast/srd/ClassFeature.json @@ -29,6 +29,16 @@ "parent": "srd_barbarian" } }, +{ + "model": "api_v2.classfeature", + "pk": "srd_barbarian_equipment", + "fields": { + "name": "Equipment", + "desc": "You start with the following equipment, in addition to the equipment granted by your background:\r\n* (*a*) a greataxe or (*b*) any martial melee weapon\r\n* (*a*) two handaxes or (*b*) any simple weapon\r\n* An explorer’s pack and four javelins", + "document": "srd", + "parent": "srd_barbarian" + } +}, { "model": "api_v2.classfeature", "pk": "srd_barbarian_extra-attack", @@ -99,6 +109,16 @@ "parent": "srd_barbarian" } }, +{ + "model": "api_v2.classfeature", + "pk": "srd_barbarian_proficiencies", + "fields": { + "name": "Proficiencies", + "desc": "**Armor:** Light armor, medium armor, shields\r\n**Weapons:** Simple weapons, martial weapons\r\n**Tools:** None\r\n**Saving Throws:** Strength, Constitution\r\n**Skills:** Choose two from Animal Handling, Athletics, Intimidation, Nature, Perception, and Survival", + "document": "srd", + "parent": "srd_barbarian" + } +}, { "model": "api_v2.classfeature", "pk": "srd_barbarian_rage", @@ -179,6 +199,16 @@ "parent": "srd_bard" } }, +{ + "model": "api_v2.classfeature", + "pk": "srd_bard_equipment", + "fields": { + "name": "Equipment", + "desc": "You start with the following equipment, in addition to the equipment granted by your background:\r\n* (*a*) a rapier, (*b*) a longsword, or (*c*) any simple weapon\r\n* (*a*) a diplomat’s pack or (*b*) an entertainer’s pack\r\n* (*a*) a lute or (*b*) any other musical instrument\r\n* Leather armor and a dagger", + "document": "srd", + "parent": "srd_bard" + } +}, { "model": "api_v2.classfeature", "pk": "srd_bard_expertise", @@ -219,6 +249,16 @@ "parent": "srd_bard" } }, +{ + "model": "api_v2.classfeature", + "pk": "srd_bard_proficiencies", + "fields": { + "name": "Proficiencies", + "desc": "**Armor:** Light armor\r\n**Weapons:** Simple weapons, hand crossbows, longswords, rapiers, shortswords\r\n**Tools:** Three musical instruments of your choice\r\n**Saving Throws:** Dexterity, Charisma\r\n**Skills:** Choose any three", + "document": "srd", + "parent": "srd_bard" + } +}, { "model": "api_v2.classfeature", "pk": "srd_bard_song-of-rest", @@ -409,6 +449,26 @@ "parent": "srd_cleric" } }, +{ + "model": "api_v2.classfeature", + "pk": "srd_cleric_equipment", + "fields": { + "name": "Equipment", + "desc": "You start with the following equipment, in addition to the equipment granted by your background:\r\n* (*a*) a mace or (*b*) a warhammer (if proficient)\r\n* (*a*) scale mail, (*b*) leather armor, or (*c*) chain mail (if proficient)\r\n* (*a*) a light crossbow and 20 bolts or (*b*) any simple weapon\r\n* (*a*) a priest’s pack or (*b*) an explorer’s pack\r\n* A shield and a holy symbol", + "document": "srd", + "parent": "srd_cleric" + } +}, +{ + "model": "api_v2.classfeature", + "pk": "srd_cleric_proficiencies", + "fields": { + "name": "Proficiencies", + "desc": "**Armor:** Light armor, medium armor, shields\r\n**Weapons:** Simple weapons\r\n**Tools:** None\r\n**Saving Throws:** Wisdom, Charisma\r\n**Skills:** Choose two from History, Insight, Medicine, Persuasion, and Religion", + "document": "srd", + "parent": "srd_cleric" + } +}, { "model": "api_v2.classfeature", "pk": "srd_cleric_spellcasting", @@ -559,6 +619,26 @@ "parent": "srd_druid" } }, +{ + "model": "api_v2.classfeature", + "pk": "srd_druid_equipment", + "fields": { + "name": "Equipment", + "desc": "You start with the following equipment, in addition to the equipment granted by your background:\r\n* (*a*) a wooden shield or (*b*) any simple weapon\r\n* (*a*) a scimitar or (*b*) any simple melee weapon\r\n* Leather armor, an explorer’s pack, and a druidic focus", + "document": "srd", + "parent": "srd_druid" + } +}, +{ + "model": "api_v2.classfeature", + "pk": "srd_druid_proficiencies", + "fields": { + "name": "Proficiencies", + "desc": "**Armor:** Light armor, medium armor, shields (druids will not wear armor or use shields made of metal)\r\n**Weapons:** Clubs, daggers, darts, javelins, maces, quarterstaffs, scimitars, sickles, slings, spears \r\n**Tools:** Herbalism kit\r\n**Saving Throws:** Intelligence, Wisdom\r\n**Skills:** Choose two from Arcana, Animal Handling, Insight, Medicine, Nature, Perception, Religion, and Survival", + "document": "srd", + "parent": "srd_druid" + } +}, { "model": "api_v2.classfeature", "pk": "srd_druid_spellcasting", @@ -609,6 +689,16 @@ "parent": "srd_fighter" } }, +{ + "model": "api_v2.classfeature", + "pk": "srd_fighter_equipment", + "fields": { + "name": "Equipment", + "desc": "You start with the following equipment, in addition to the equipment granted by your background:\r\n* (*a*) chain mail or (*b*) leather armor, longbow, and 20 arrows\r\n* (*a*) a martial weapon and a shield or (*b*) two martial weapons\r\n* (*a*) a light crossbow and 20 bolts or (*b*) two handaxes\r\n* (*a*) a dungeoneer’s pack or (*b*) an explorer’s pack", + "document": "srd", + "parent": "srd_fighter" + } +}, { "model": "api_v2.classfeature", "pk": "srd_fighter_extra-attack", @@ -649,6 +739,16 @@ "parent": "srd_fighter" } }, +{ + "model": "api_v2.classfeature", + "pk": "srd_fighter_proficiencies", + "fields": { + "name": "Proficiencies", + "desc": "**Armor:** All armor, shields\r\n**Weapons:** Simple weapons, martial weapons\r\n**Tools:** None\r\n**Saving Throws:** Strength, Constitution\r\n**Skills:** Choose two skills from Acrobatics, Animal Handling, Athletics, History, Insight, Intimidation, Perception, and Survival", + "document": "srd", + "parent": "srd_fighter" + } +}, { "model": "api_v2.classfeature", "pk": "srd_fighter_second-wind", @@ -809,6 +909,16 @@ "parent": "srd_monk" } }, +{ + "model": "api_v2.classfeature", + "pk": "srd_monk_equipment", + "fields": { + "name": "Equipment", + "desc": "You start with the following equipment, in addition to the equipment granted by your background:\r\n* (*a*) a shortsword or (*b*) any simple weapon\r\n* (*a*) a dungeoneer’s pack or (*b*) an explorer’s pack\r\n* 10 darts", + "document": "srd", + "parent": "srd_monk" + } +}, { "model": "api_v2.classfeature", "pk": "srd_monk_evasion", @@ -879,6 +989,16 @@ "parent": "srd_monk" } }, +{ + "model": "api_v2.classfeature", + "pk": "srd_monk_proficiencies", + "fields": { + "name": "Proficiencies", + "desc": "**Armor:** None\r\n**Weapons:** Simple weapons, shortswords\r\n**Tools:** Choose one type of artisan’s tools or one musical instrument\r\n**Saving Throws:** Strength, Dexterity\r\n**Skills:** Choose two from Acrobatics, Athletics, History, Insight, Religion, and Stealth", + "document": "srd", + "parent": "srd_monk" + } +}, { "model": "api_v2.classfeature", "pk": "srd_monk_purity-of-body", @@ -1089,6 +1209,16 @@ "parent": "srd_paladin" } }, +{ + "model": "api_v2.classfeature", + "pk": "srd_paladin_equipment", + "fields": { + "name": "Equipment", + "desc": "You start with the following equipment, in addition to the equipment granted by your background:\r\n* (*a*) a martial weapon and a shield or (*b*) two martial weapons\r\n* (*a*) five javelins or (*b*) any simple melee weapon\r\n* (*a*) a priest’s pack or (*b*) an explorer’s pack\r\n* Chain mail and a holy symbol", + "document": "srd", + "parent": "srd_paladin" + } +}, { "model": "api_v2.classfeature", "pk": "srd_paladin_extra-attack", @@ -1129,6 +1259,16 @@ "parent": "srd_paladin" } }, +{ + "model": "api_v2.classfeature", + "pk": "srd_paladin_proficiencies", + "fields": { + "name": "Proficiencies", + "desc": "**Armor:** All armor, shields\r\n**Weapons:** Simple weapons, martial weapons\r\n**Tools:** None\r\n**Saving Throws:** Wisdom, Charisma\r\n**Skills:** Choose two from Athletics, Insight, Intimidation, Medicine, Persuasion, and Religion", + "document": "srd", + "parent": "srd_paladin" + } +}, { "model": "api_v2.classfeature", "pk": "srd_paladin_sacred-oath", @@ -1199,6 +1339,16 @@ "parent": "srd_ranger" } }, +{ + "model": "api_v2.classfeature", + "pk": "srd_ranger_equipment", + "fields": { + "name": "Equipment", + "desc": "You start with the following equipment, in addition to the equipment granted by your background:\r\n* (*a*) scale mail or (*b*) leather armor\r\n* (*a*) two shortswords or (*b*) two simple melee weapons\r\n* (*a*) a dungeoneer’s pack or (*b*) an explorer’s pack\r\n* A longbow and a quiver of 20 arrows", + "document": "srd", + "parent": "srd_ranger" + } +}, { "model": "api_v2.classfeature", "pk": "srd_ranger_extra-attack", @@ -1289,6 +1439,16 @@ "parent": "srd_ranger" } }, +{ + "model": "api_v2.classfeature", + "pk": "srd_ranger_proficiencies", + "fields": { + "name": "Proficiencies", + "desc": "**Armor:** Light armor, medium armor, shields\r\n**Weapons:** Simple weapons, martial weapons\r\n**Tools:** None\r\n**Saving Throws:** Strength, Dexterity\r\n**Skills:** Choose three from Animal Handling, Athletics, Insight, Investigation, Nature, Perception, Stealth, and Survival", + "document": "srd", + "parent": "srd_ranger" + } +}, { "model": "api_v2.classfeature", "pk": "srd_ranger_ranger-archetype", @@ -1359,6 +1519,16 @@ "parent": "srd_rogue" } }, +{ + "model": "api_v2.classfeature", + "pk": "srd_rogue_equipment", + "fields": { + "name": "Equipment", + "desc": "You start with the following equipment, in addition to the equipment granted by your background:\r\n* (*a*) a rapier or (*b*) a shortsword\r\n* (*a*) a shortbow and quiver of 20 arrows or (*b*) a shortsword\r\n* (*a*) a burglar’s pack, (*b*) a dungeoneer’s pack, or (*c*) an explorer’s pack\r\n* (*a*) Leather armor, two daggers, and thieves’ tools", + "document": "srd", + "parent": "srd_rogue" + } +}, { "model": "api_v2.classfeature", "pk": "srd_rogue_evasion", @@ -1379,6 +1549,16 @@ "parent": "srd_rogue" } }, +{ + "model": "api_v2.classfeature", + "pk": "srd_rogue_proficiencies", + "fields": { + "name": "Proficiencies", + "desc": "**Armor:** Light armor\r\n**Weapons:** Simple weapons, hand crossbows, longswords, rapiers, shortswords\r\n**Tools:** Thieves’ tools\r\n**Saving Throws:** Dexterity, Intelligence\r\n**Skills:** Choose four from Acrobatics, Athletics, Deception, Insight, Intimidation, Investigation, Perception, Performance, Persuasion, Sleight of Hand, and Stealth", + "document": "srd", + "parent": "srd_rogue" + } +}, { "model": "api_v2.classfeature", "pk": "srd_rogue_reliable-talent", @@ -1509,6 +1689,16 @@ "parent": "srd_sorcerer" } }, +{ + "model": "api_v2.classfeature", + "pk": "srd_sorcerer_equipment", + "fields": { + "name": "Equipment", + "desc": "You start with the following equipment, in addition to the equipment granted by your background:\r\n* (*a*) a light crossbow and 20 bolts or (*b*) any simple weapon\r\n* (*a*) a component pouch or (*b*) an arcane focus\r\n* (*a*) a dungeoneer’s pack or (*b*) an explorer’s pack\r\n* Two daggers", + "document": "srd", + "parent": "srd_sorcerer" + } +}, { "model": "api_v2.classfeature", "pk": "srd_sorcerer_font-of-magic", @@ -1559,6 +1749,16 @@ "parent": "srd_sorcerer" } }, +{ + "model": "api_v2.classfeature", + "pk": "srd_sorceror_proficiencies", + "fields": { + "name": "Proficiencies", + "desc": "**Armor:** None\r\n**Weapons:** Daggers, darts, slings, quarterstaffs, light crossbows\r\n**Tools:** None\r\n**Saving Throws:** Constitution, Charisma\r\n**Skills:** Choose two from Arcana, Deception, Insight, Intimidation, Persuasion, and Religion", + "document": "srd", + "parent": "srd_sorcerer" + } +}, { "model": "api_v2.classfeature", "pk": "srd_the-fiend_dark-ones-blessing", @@ -1699,6 +1899,16 @@ "parent": "srd_warlock" } }, +{ + "model": "api_v2.classfeature", + "pk": "srd_warlock_equipment", + "fields": { + "name": "Equipment", + "desc": "You start with the following equipment, in addition to the equipment granted by your background:\r\n* (*a*) a light crossbow and 20 bolts or (*b*) any simple weapon\r\n* (*a*) a component pouch or (*b*) an arcane focus\r\n* (*a*) a scholar’s pack or (*b*) a dungeoneer’s pack\r\n* Leather armor, any simple weapon, and two daggers", + "document": "srd", + "parent": "srd_warlock" + } +}, { "model": "api_v2.classfeature", "pk": "srd_warlock_mystic-arcanum", @@ -1739,6 +1949,16 @@ "parent": "srd_warlock" } }, +{ + "model": "api_v2.classfeature", + "pk": "srd_warlock_proficiencies", + "fields": { + "name": "Proficiencies", + "desc": "**Armor:** Light armor\r\n**Weapons:** Simple weapons\r\n**Tools:** None\r\n**Saving Throws:** Wisdom, Charisma\r\n**Skills:** Choose two skills from Arcana, Deception, History, Intimidation, Investigation, Nature, and Religion", + "document": "srd", + "parent": "srd_warlock" + } +}, { "model": "api_v2.classfeature", "pk": "srd_way-of-the-open-hand_open-hand-technique", @@ -1809,6 +2029,26 @@ "parent": "srd_wizard" } }, +{ + "model": "api_v2.classfeature", + "pk": "srd_wizard_equipment", + "fields": { + "name": "Equipment", + "desc": "You start with the following equipment, in addition to the equipment granted by your background:\r\n* (*a*) a quarterstaff or (*b*) a dagger\r\n* (*a*) a component pouch or (*b*) an arcane focus\r\n* (*a*) a scholar’s pack or (*b*) an explorer’s pack\r\n* A spellbook", + "document": "srd", + "parent": "srd_wizard" + } +}, +{ + "model": "api_v2.classfeature", + "pk": "srd_wizard_proficiencies", + "fields": { + "name": "Proficiencies", + "desc": "**Armor:** None\r\n**Weapons:** Daggers, darts, slings, quarterstaffs, light crossbows\r\n**Tools:** None\r\n**Saving Throws:** Intelligence, Wisdom\r\n**Skills:** Choose two from Arcana, History, Insight, Investigation, Medicine, and Religion", + "document": "srd", + "parent": "srd_wizard" + } +}, { "model": "api_v2.classfeature", "pk": "srd_wizard_signature-spells",