From cd1a34d17afcc1e117472c420ed49433c70a2132 Mon Sep 17 00:00:00 2001 From: PJ Beers Date: Mon, 30 Jan 2023 22:38:31 +0100 Subject: [PATCH 1/3] Formatting: Beautify tables The rst-to-latex translation results in rather narrow table columns and line breaks within cells without some additional padding in rst, which this patch adds. Furthermore, change some text that is supposed to be in tables to actual tables. --- dungeonsheets/features/druid.py | 14 ++-- dungeonsheets/features/races.py | 30 +++++---- dungeonsheets/features/sorceror.py | 71 +++++++++---------- dungeonsheets/magic_items.py | 105 +++++++++++++++-------------- dungeonsheets/spells/spells_t.py | 22 +++--- 5 files changed, 123 insertions(+), 119 deletions(-) diff --git a/dungeonsheets/features/druid.py b/dungeonsheets/features/druid.py index a1be4d56..ba07c744 100644 --- a/dungeonsheets/features/druid.py +++ b/dungeonsheets/features/druid.py @@ -13,13 +13,13 @@ class WildShape(Feature): rating of 1/4 or lower that doesn't have a flying or swimming speed. - ===== ====== ================== =========== - Level Max CR Limitations Example - ===== ====== ================== =========== - 2nd 1/4 No Flying/Swimming Wolf - 4th 1/2 No flying Crocodile - 8th 1 -- Giant eagle - ===== ====== ================== =========== + ===== ========== ====================== ================ + Level Max CR Limitations Example + ===== ========== ====================== ================ + 2nd 1/4 No Flying / Swimming Wolf + 4th 1/2 No flying Crocodile + 8th 1 -- Giant eagle + ===== ========== ====================== ================ You can stay in a beast shape for a number of hours equal to half your druid level (rounded down). You then revert to your normal diff --git a/dungeonsheets/features/races.py b/dungeonsheets/features/races.py index 55c8c661..633a53c6 100644 --- a/dungeonsheets/features/races.py +++ b/dungeonsheets/features/races.py @@ -207,20 +207,22 @@ class DraconicAncestry(Feature): Ancestry table. Your breath weapon and damage resistance are determined by the dragon type. - ====== =========== =========================== - Dragon Damage Type Breath Weapon - ====== =========== =========================== - Black Acid 5 by 30 ft. line (DEX save) - Blue Lightning 5 by 30 ft. line (DEX save) - Brass Fire 5 by 30 ft. line (DEX save) - Bronze Lightning 5 by 30 ft. line (DEX save) - Copper Acid 5 by 30 ft. line (DEX save) - Gold Fire 15 ft. cone (DEX save) - Green Poison 15 ft. cone (CON save) - Red Fire 15 ft. cone (DEX save) - Silver Cold 15 ft. cone (CON save) - White White 15 ft. cone (CON save) - ====== =========== =========================== + ======== =================== ======================================== + Draconic Ancestry + --------------------------------------------------------------------- + Dragon Damage Type Breath Weapon + ======== =================== ======================================== + Black Acid 5 by 30 ft. line (DEX save) + Blue Lightning 5 by 30 ft. line (DEX save) + Brass Fire 5 by 30 ft. line (DEX save) + Bronze Lightning 5 by 30 ft. line (DEX save) + Copper Acid 5 by 30 ft. line (DEX save) + Gold Fire 15 ft. cone (DEX save) + Green Poison 15 ft. cone (CON save) + Red Fire 15 ft. cone (DEX save) + Silver Cold 15 ft. cone (CON save) + White White 15 ft. cone (CON save) + ======== =================== ======================================== """ diff --git a/dungeonsheets/features/sorceror.py b/dungeonsheets/features/sorceror.py index 09de64c9..8c8805b5 100644 --- a/dungeonsheets/features/sorceror.py +++ b/dungeonsheets/features/sorceror.py @@ -23,15 +23,19 @@ class FontOfMagic(Feature): one spell slot and gain a number of sorcery points equal to the slot's level. - 1st Level Slot <--> 2 sorcery points - 2nd Level Slot <--> 3 sorcery points + ========================= ================================ + Creating Spell Slots + ------------------------------------------------------------ + Spell Slot Level Sorcery Point Cost + ========================= ================================ + 1st 2 + 2nd 3 + 3rd 5 + 4th 6 + 5th 7 + ========================= ================================ - 3rd Level Slot <--> 5 sorcery points - - 4th Level Slot <--> 6 sorcery points - - 5th Level Slot <--> 7 sorcery points """ @@ -234,27 +238,24 @@ class DragonAncestor(Feature): """At 1st level, you choose one type of dragon as your ancestor. The damage type associated with each dragon is used by features you gain later - Dragon : Damage - - Black : Acid - - Blue : Lightning - - Brass : Fire - - Bronze : Lightning - - Copper : Acid - Gold : Fire + ======================== =========================== + Draconic Ancestry + ------------------------------------------------------ + Dragon Damage Type + ======================== =========================== + Black Acid + Blue Lightning + Brass Fire + Bronze Lightning + Copper Acid + Gold Fire + Green Poison + Red Fire + Silver Cold + White Cold + ======================== =========================== - Green : Poison - - Red : Fire - - Silver : Cold - - White : Cold You can speak, read, and write Draconic. Additionally, whenever you make a Charisma check when interacting with dragons, your proficiency bonus is @@ -340,15 +341,15 @@ class DivineMagic(Feature): replace this spell, you must replace it with a Spell from the cleric spell list - Good : Cure Wounds - - Evil : Inflict Wounds - - Law : Bless - - Chaos : Bane - - Neutrality : Protection from Evil and Good + ================ =========================================== + Affinity Spell + ================ =========================================== + Good Cure Wounds + Evil Inflict Wounds + Law Bless + Chaos Bane + Neutrality Protection from Evil and Good + ================ =========================================== """ diff --git a/dungeonsheets/magic_items.py b/dungeonsheets/magic_items.py index 4700ce92..4dd3cb34 100644 --- a/dungeonsheets/magic_items.py +++ b/dungeonsheets/magic_items.py @@ -465,19 +465,20 @@ class PotionOfHealing(MagicItem): Healing table. Whatever its potency, the potion’s red liquid glimmers when agitated. - **Potions of Healing** - - +-----------------+-----------+-------------+ - | Potion of ... | Rarity | HP Regained | - +=================+===========+=============+ - |Healing | Common | 2d4 + 2 | - +-----------------+-----------+-------------+ - |Greater healing | Uncommon | 4d4 + 4 | - +-----------------+-----------+-------------+ - |Superior healing | Rare | 8d4 + 8 | - +-----------------+-----------+-------------+ - |Supreme healing | Very rare | 10d4 + 20 | - +-----------------+-----------+-------------+ + + +--------------------------------------------------------------------------+ + | Potions of Healing | + +-----------------------------+-------------------+------------------------+ + |Potion of ... | Rarity | HP Regained | + +=============================+===================+========================+ + |Healing | Common | ``2d4 + 2`` | + +-----------------------------+-------------------+------------------------+ + |Greater healing | Uncommon | ``4d4 + 4`` | + +-----------------------------+-------------------+------------------------+ + |Superior healing | Rare | ``8d4 + 8`` | + +-----------------------------+-------------------+------------------------+ + |Supreme healing | Very rare | ``10d4 + 20`` | + +-----------------------------+-------------------+------------------------+ """ rarity = "common" @@ -491,19 +492,19 @@ class PotionOfGreaterHealing(PotionOfHealing): Healing table. Whatever its potency, the potion’s red liquid glimmers when agitated. - **Potions of Healing** - - +-----------------+-----------+-----------------+ - | Potion of ... | Rarity | HP Regained | - +=================+===========+=================+ - |Healing | Common | ``2d4 + 2`` | - +-----------------+-----------+-----------------+ - |Greater healing | Uncommon | ``4d4 + 4`` | - +-----------------+-----------+-----------------+ - |Superior healing | Rare | ``8d4 + 8`` | - +-----------------+-----------+-----------------+ - |Supreme healing | Very rare | ``10d4 + 20`` | - +-----------------+-----------+-----------------+ + +--------------------------------------------------------------------------+ + | Potions of Healing | + +-----------------------------+-------------------+------------------------+ + |Potion of ... | Rarity | HP Regained | + +=============================+===================+========================+ + |Healing | Common | ``2d4 + 2`` | + +-----------------------------+-------------------+------------------------+ + |Greater healing | Uncommon | ``4d4 + 4`` | + +-----------------------------+-------------------+------------------------+ + |Superior healing | Rare | ``8d4 + 8`` | + +-----------------------------+-------------------+------------------------+ + |Supreme healing | Very rare | ``10d4 + 20`` | + +-----------------------------+-------------------+------------------------+ """ name = "Potion of Greater Healing" @@ -516,19 +517,19 @@ class PotionOfSuperiorHealing(PotionOfHealing): Healing table. Whatever its potency, the potion’s red liquid glimmers when agitated. - **Potions of Healing** - - +-----------------+-----------+-------------+ - | Potion of ... | Rarity | HP Regained | - +=================+===========+=============+ - |Healing | Common | 2d4 + 2 | - +-----------------+-----------+-------------+ - |Greater healing | Uncommon | 4d4 + 4 | - +-----------------+-----------+-------------+ - |Superior healing | Rare | 8d4 + 8 | - +-----------------+-----------+-------------+ - |Supreme healing | Very rare | 10d4 + 20 | - +-----------------+-----------+-------------+ + +--------------------------------------------------------------------------+ + | Potions of Healing | + +-----------------------------+-------------------+------------------------+ + |Potion of ... | Rarity | HP Regained | + +=============================+===================+========================+ + |Healing | Common | ``2d4 + 2`` | + +-----------------------------+-------------------+------------------------+ + |Greater healing | Uncommon | ``4d4 + 4`` | + +-----------------------------+-------------------+------------------------+ + |Superior healing | Rare | ``8d4 + 8`` | + +-----------------------------+-------------------+------------------------+ + |Supreme healing | Very rare | ``10d4 + 20`` | + +-----------------------------+-------------------+------------------------+ """ name = "Potion of Superior Healing" @@ -541,19 +542,19 @@ class PotionOfSupremeHealing(PotionOfHealing): Healing table. Whatever its potency, the potion’s red liquid glimmers when agitated. - **Potions of Healing** - - +-----------------+-----------+-------------+ - | Potion of ... | Rarity | HP Regained | - +=================+===========+=============+ - |Healing | Common | 2d4 + 2 | - +-----------------+-----------+-------------+ - |Greater healing | Uncommon | 4d4 + 4 | - +-----------------+-----------+-------------+ - |Superior healing | Rare | 8d4 + 8 | - +-----------------+-----------+-------------+ - |Supreme healing | Very rare | 10d4 + 20 | - +-----------------+-----------+-------------+ + +--------------------------------------------------------------------------+ + | Potions of Healing | + +-----------------------------+-------------------+------------------------+ + |Potion of ... | Rarity | HP Regained | + +=============================+===================+========================+ + |Healing | Common | ``2d4 + 2`` | + +-----------------------------+-------------------+------------------------+ + |Greater healing | Uncommon | ``4d4 + 4`` | + +-----------------------------+-------------------+------------------------+ + |Superior healing | Rare | ``8d4 + 8`` | + +-----------------------------+-------------------+------------------------+ + |Supreme healing | Very rare | ``10d4 + 20`` | + +-----------------------------+-------------------+------------------------+ """ name = "Potion of Supreme Healing" diff --git a/dungeonsheets/spells/spells_t.py b/dungeonsheets/spells/spells_t.py index b0f085fd..2d4e415c 100644 --- a/dungeonsheets/spells/spells_t.py +++ b/dungeonsheets/spells/spells_t.py @@ -114,17 +114,17 @@ class Teleport(Spell): destination determines whether you arrive there successfully. The DM rolls d100 and consults the table. - ================= ====== ============ ========== ========= - Familiarity Mishap Similar Area Off Target On Target - ================= ====== ============ ========== ========= - Permanent circle -- -- -- 01-100 - Associated object -- -- -- 01-100 - Very familiar 01–05 06–13 14–24 25–100 - Seen casually 01–33 34–43 44–53 54–100 - Viewed once 01–43 44–53 54–73 74–100 - Description 01–43 44–53 54–73 74–100 - False destination 01–50 51–100 -- -- - ================= ====== ============ ========== ========= + ================== ========== ============ ========== ========== + Familiarity Mishap Similar Area Off Target On Target + ================== ========== ============ ========== ========== + Permanent circle -- -- -- 01-100 + Associated object -- -- -- 01-100 + Very familiar 01–05 06–13 14–24 25–100 + Seen casually 01–33 34–43 44–53 54–100 + Viewed once 01–43 44–53 54–73 74–100 + Description 01–43 44–53 54–73 74–100 + False destination 01–50 51–100 -- -- + ================== ========== ============ ========== ========== Familiarity. "Permanent circle" means a permanent teleportation circle whose From 609ec32b16755de4dbbdfa4fad88f376fdcc4df0 Mon Sep 17 00:00:00 2001 From: PJ Beers Date: Sun, 5 Feb 2023 09:42:00 +0100 Subject: [PATCH 2/3] Formatting: Monsters: Assorted formatting fixes --- dungeonsheets/monsters/monsters_a.py | 45 +++--- dungeonsheets/monsters/monsters_b.py | 34 ++-- dungeonsheets/monsters/monsters_c.py | 4 +- dungeonsheets/monsters/monsters_d.py | 14 +- dungeonsheets/monsters/monsters_e.py | 14 +- dungeonsheets/monsters/monsters_f.py | 29 ++-- dungeonsheets/monsters/monsters_h.py | 11 +- dungeonsheets/monsters/monsters_k.py | 233 +++++++++++++++------------ dungeonsheets/monsters/monsters_l.py | 21 +-- dungeonsheets/monsters/monsters_n.py | 14 +- dungeonsheets/monsters/monsters_p.py | 23 +-- dungeonsheets/monsters/monsters_s.py | 72 ++++++--- dungeonsheets/monsters/monsters_w.py | 3 +- 13 files changed, 306 insertions(+), 211 deletions(-) diff --git a/dungeonsheets/monsters/monsters_a.py b/dungeonsheets/monsters/monsters_a.py index 2c8183d1..e0b7ee51 100644 --- a/dungeonsheets/monsters/monsters_a.py +++ b/dungeonsheets/monsters/monsters_a.py @@ -9,7 +9,8 @@ class Aboleth(Monster): - """Amphibious. + """ + Amphibious. The aboleth can breathe air and water. Mucous Cloud. While underwater, the aboleth is surrounded by transformative mucus. A @@ -125,8 +126,8 @@ class Acolyte(Monster): Spellcasting. The acolyte is a 1st-level spellcaster. Its spellcasting ability is Wisdom (spell save DC 12, +4 to hit with spell attacks). The acolyte has following cleric spells prepared: - - Cantrips (at will): light, sacred flame, thaumaturgy - - 1st level (3 slots): bless, cure wounds, sanctuary + - Cantrips (at will): light, sacred flame, thaumaturgy + - 1st level (3 slots): bless, cure wounds, sanctuary # Actions @@ -2042,13 +2043,16 @@ class Ankheg(Monster): class Ankylosaurus(Monster): - """Thick armor plating covers the body of the plant-eating dinosaur - ankylosaurus, which defends itself against predators with a - knobbed tail that delivers a devastating strike. + """ + Thick armor plating covers the body of the plant-eating dinosaur + ankylosaurus, which defends itself against predators with a + knobbed tail that delivers a devastating strike. - Tail - *Melee Weapon Attack:* +7 to hit, reach 10 ft., one - target. *Hit:* 18 (4d6+4) bludgeoning damage. If the target is a + # Actions + + Tail. + Melee Weapon Attack: +7 to hit, reach 10 ft., one + target. Hit: 18 (4d6+4) bludgeoning damage. If the target is a creature, it must succeed on a DC 14 Strength saving throw or be knocked prone. @@ -2123,17 +2127,18 @@ class Archmage(Monster): Spellcasting. The archmage is an 18th-level spellcaster. Its spellcasting ability is Intelligence (spell save DC 17, +9 to hit with spell attacks). The archmage can cast disguise self and invisibility at will and has the following wizard spells prepared: - - Cantrips (at will): fire bolt, light, mage hand, prestidigitation, shocking grasp - - 1st level (4 slots): detect magic, identify, mage armor*, magic missile - - 2nd level (3 slots): detect thoughts, mirror image, misty step - - 3rd level (3 slots): counterspell, fly, lightning bolt - - 4th level (3 slots): banishment, fire shield, stoneskin* - - 5th level (3 slots): cone of cold, scrying, wall of force - - 6th level (1 slot): globe of invulnerability - - 7th level (1 slot): teleport - - 8th level (1 slot): mind blank* - - 9th level (1 slot): time stop - * The archmage casts these spells on itself before combat. + - Cantrips (at will): fire bolt, light, mage hand, prestidigitation, shocking grasp + - 1st level (4 slots): detect magic, identify, mage armor*, magic missile + - 2nd level (3 slots): detect thoughts, mirror image, misty step + - 3rd level (3 slots): counterspell, fly, lightning bolt + - 4th level (3 slots): banishment, fire shield, stoneskin* + - 5th level (3 slots): cone of cold, scrying, wall of force + - 6th level (1 slot): globe of invulnerability + - 7th level (1 slot): teleport + - 8th level (1 slot): mind blank* + - 9th level (1 slot): time stop + + * The archmage casts these spells on itself before combat. # Actions diff --git a/dungeonsheets/monsters/monsters_b.py b/dungeonsheets/monsters/monsters_b.py index 0955d810..ec33a7c1 100644 --- a/dungeonsheets/monsters/monsters_b.py +++ b/dungeonsheets/monsters/monsters_b.py @@ -1198,32 +1198,36 @@ class Bulette(Monster): class Burrowshark(Monster): - """Elite warriors of the earth cult, burrowsharks are fierce champions - who ride trained bulettes into battle. While their powerful mounts - rend and tear foes to pieces, burrowsharks leap to the ground and - cut down their foes without mercy. - - Burrowsharks are much like Black Earth guards, since both have - uncanny footing and special armor. For burrowsharks, an additional - gift of Ogremoch's might establishes a magical bond between the - burrowshark and a bulette, allowing the rider to burrow with its - mount and sense what its mount senses. - - Bond of the Black Earth + """ + Elite warriors of the earth cult, burrowsharks are fierce champions + who ride trained bulettes into battle. While their powerful mounts + rend and tear foes to pieces, burrowsharks leap to the ground and + cut down their foes without mercy. + + Burrowsharks are much like Black Earth guards, since both have + uncanny footing and special armor. For burrowsharks, an additional + gift of Ogremoch's might establishes a magical bond between the + burrowshark and a bulette, allowing the rider to burrow with its + mount and sense what its mount senses. + + Bond of the Black Earth. The burrowshark is magically bound to a bulette trained to serve as its mount. While mounted on its bulette, the burrowshark shares the bulette's sense and can ride the bulette while it burrows. The bonded bulette obeys the burrowshark's commands. If its mount dies, the burrowshark can train a new bulette to serve as its bonded mount, a process requiring a month. - Multiattack + + # Actions + + Multiattack. The burrowshark makes three melee attacks. - Spear + Spear. Melee or ranged weapon attack: +6 to hit, reach 5ft. or range 20/60ft., one target. Hit: 7 (1d6+4) piercing damage, or 8 (1d8+4) piercing damage if used with two hands to make a melee attack. - Unyielding + Unyielding. When the burrowshark is subjected to an effect that would move it, knock it prone, or both, it can use its reaction to be neither moved nor knocked prone. diff --git a/dungeonsheets/monsters/monsters_c.py b/dungeonsheets/monsters/monsters_c.py index 092e9ca8..70743f17 100644 --- a/dungeonsheets/monsters/monsters_c.py +++ b/dungeonsheets/monsters/monsters_c.py @@ -462,8 +462,6 @@ class CloudGiant(Monster): The giant's innate spellcasting ability is Charisma. It can innately cast the following spells, requiring no material components: - - At will: detect magic, fog cloud, light 3/day each: feather fall, fly, misty step, telekinesis @@ -482,7 +480,7 @@ class CloudGiant(Monster): 30 (4d10 + 8) bludgeoning damage. """ name = 'Cloud Giant' - description = 'Huge giant, neutral good (50%) or neutral evil (50%)' + description = 'Huge giant, neutral good (50\%) or neutral evil (50\%)' challenge_rating = 9 armor_class = 14 skills = 'Insight +7, Perception +7' diff --git a/dungeonsheets/monsters/monsters_d.py b/dungeonsheets/monsters/monsters_d.py index 3b4963f1..84b74835 100644 --- a/dungeonsheets/monsters/monsters_d.py +++ b/dungeonsheets/monsters/monsters_d.py @@ -9,7 +9,8 @@ class Dao(Monster): - """Earth Glide. + """ + Earth Glide. The dao can burrow through nonmagical unworked earth and stone. While doing so, the dao doesn't distrub the material it moves through. @@ -30,14 +31,17 @@ class Dao(Monster): Sure-Footed. The dao has advantage on Strength and Dexterity saving throws made against effects that would knock it prone. + + # Actions + Multiattack. The dao makes two fist attacks or two maul attacks. Fist. - *Melee weapon attack:* +10 to hit, reach 5ft., one - target. *Hit:* 15 (2d8 + 6) bludgeoning damage. + Melee weapon attack: +10 to hit, reach 5ft., one + target. Hit: 15 (2d8 + 6) bludgeoning damage. Maul. - *Melee weapon attack:* +10 to hit, reach 5ft., one - target. *Hit:* 20 (4d6 + 6) bludgeoning damage. If the target is + Melee weapon attack: +10 to hit, reach 5ft., one + target. Hit: 20 (4d6 + 6) bludgeoning damage. If the target is a Huge or smaller creature, it must succeed on a DC 18 Strength check or be knocked prone. diff --git a/dungeonsheets/monsters/monsters_e.py b/dungeonsheets/monsters/monsters_e.py index 5f1c40ad..9971e89a 100644 --- a/dungeonsheets/monsters/monsters_e.py +++ b/dungeonsheets/monsters/monsters_e.py @@ -94,13 +94,17 @@ class EarthElemental(Monster): class EarthElementalMyrmidon(Monster): - """Magic Weapons. + """ + Magic Weapons. The myrmidon's weapon attacks are magical. + + # Actions + Multiattack. The myrmidon makes two maul attacks. Maul. - *Melee Weapon Attack:* +7 to hit, reach 5 ft., one - target. *Hit:* 11 (2d6 + 4) bludgeoning damage. + Melee Weapon Attack: +7 to hit, reach 5 ft., one + target. Hit: 11 (2d6 + 4) bludgeoning damage. Thunderous Strike (Recharge 6). The myrmidon makes one maul attack. On a hit, the target takes an extra 16 (3d10) thunder damage, and the target must succeed @@ -149,8 +153,6 @@ class Efreeti(Monster): 15, +7 to hit with spell attacks). It can innately cast the following spells, requiring no material components: - - At will: detect magic 3/day: enlarge/reduce, tongues @@ -162,8 +164,6 @@ class Efreeti(Monster): have even greater powers that allow them to alter their appearance or the nature of reality. - - Disguises. Some genies can veil themselves in illusion to pass as other similarly diff --git a/dungeonsheets/monsters/monsters_f.py b/dungeonsheets/monsters/monsters_f.py index 1e073bf0..4bdaecd4 100644 --- a/dungeonsheets/monsters/monsters_f.py +++ b/dungeonsheets/monsters/monsters_f.py @@ -106,22 +106,27 @@ class FireGiant(Monster): class FireSnake(Monster): - """**Heated Body.** A creature that touches the snake or hits it with - a melee attack while within 5 feet of it takes 3 (1d6) fire - damage. + """ + Heated Body. + A creature that touches the snake or hits it with + a melee attack while within 5 feet of it takes 3 (1d6) fire + damage. # ACTIONS - **Multiattack.** The snake makes two attacks: one with its bite - and one with its tail. + Multiattack. + The snake makes two attacks: one with its bite + and one with its tail. - **Bite.** *Melee Weapon Attack:* +3 to hit, reach 5 ft., one - target. *Hit:* 3 (1d4 + 1) piercing damage plus 3 (1d6) fire - damage. + Bite. + Melee Weapon Attack: +3 to hit, reach 5 ft., one + target. Hit: 3 (1d4 + 1) piercing damage plus 3 (1d6) fire + damage. - **Tail.** *Melee Weapon Attack:* +3 to hit, reach 5 ft., one - target. *Hit:* 3 (1d4 + 1) bludgeoning damage plus 3 (1d6) fire - damage. + Tail. + Melee Weapon Attack: +3 to hit, reach 5 ft., one + target. Hit: 3 (1d4 + 1) bludgeoning damage plus 3 (1d6) fire + damage. """ name = 'Fire Snake' @@ -307,9 +312,9 @@ class FlyingSword(Monster): class Frog(Monster): """ - Amphibious. The frog can breathe air and water + Standing Leap. The frog's long jump is up to 10 ft. and its high jump is up to 5 ft., with or without a running start. diff --git a/dungeonsheets/monsters/monsters_h.py b/dungeonsheets/monsters/monsters_h.py index 9021c8e8..cc31f484 100644 --- a/dungeonsheets/monsters/monsters_h.py +++ b/dungeonsheets/monsters/monsters_h.py @@ -355,7 +355,8 @@ class Hippogriff(Monster): class HobgoblinCaptain(Monster): - """Martial Advantage. + """ + Martial Advantage. Once per turn, the hobgoblin can deal an extra 10 (3d6) damage to a creature it hits with a weapon attack if that creature is within 5 feet of an ally of the hobgoblin that isn't @@ -366,11 +367,11 @@ class HobgoblinCaptain(Monster): Multiattack. The hobgoblin makes two greatsword attacks. Greatsword - *Melee Weapon Attack:* +4 to hit, reach 5 ft., one - target. *Hit*: 9 (2d6 + 2) piercing damage. + Melee Weapon Attack: +4 to hit, reach 5 ft., one target. Hit: + 9 (2d6 + 2) piercing damage. Javelin. - *Melee or Ranged Weapon Attach: +4 to hit, reach 5 ft. or range - 30/120 ft., one target. *Hit:* 5 (1d6+2) piercing damage. + Melee or Ranged Weapon Attack: +4 to hit, reach 5 ft. or range + 30/120 ft., one target. Hit: 5 (1d6+2) piercing damage. Leadership (Recharges after a Short or Long Rest). For 1 minutes, the hobgoblin can utter a special command or warning whenever a nonhostile creature that it can see within 30 diff --git a/dungeonsheets/monsters/monsters_k.py b/dungeonsheets/monsters/monsters_k.py index f2f224bf..e44168a9 100644 --- a/dungeonsheets/monsters/monsters_k.py +++ b/dungeonsheets/monsters/monsters_k.py @@ -9,7 +9,8 @@ class Kenku(Monster): - """Ambusher. + """ + Ambusher. In the first round of a combat, the kenku has advantage on attack rolls against any creature it surprised. Mimicry. @@ -295,44 +296,54 @@ class Kraken(Monster): class KuoToa(Monster): - """**Amphibious.** The kuo-toa can breathe air and water. + """ + Amphibious. + The kuo-toa can breathe air and water. - **Otherworldly Perception.** The kuo-toa can sense the presence of - any creature within 30 feet of it that is invisible or on the - Ethereal Plane. It can pinpoint such a creature that is moving. + Otherworldly Perception. + The kuo-toa can sense the presence of any creature within + 30 feet of it that is invisible or on the Ethereal Plane. It + can pinpoint such a creature that is moving. - **Slippery.** The kuo-toa has advantage on ability checks and - saving throws made to escape a grapple. + Slippery. + The kuo-toa has advantage on ability checks and + saving throws made to escape a grapple. - **Sunlight Sensitivity.** While in sunlight, the kuo-toa has - disadvantage on attack rolls, as well as on Wisdom (Perception) - checks that rely on sight. + Sunlight Sensitivity. + While in sunlight, the kuo-toa has disadvantage on attack + rolls, as well as on Wisdom (Perception) checks that rely on sight. # Actions - **Bite.** *Melee Weapon Attack:* +3 to hit, reach 5 ft., one - target. *Hit:* 3 (1d4 + 1) piercing damage. - - **Spear.** *Melee or Ranged Weapon Attack:* +3 to hit, reach 5 - ft. or range 20/60 ft., one target. *Hit:* 4 (1d6 + 1) piercing - damage, or 5 (1d8 + 1) piercing damage if used with two hands to - make a melee attack. - - **Net.** *Ranged Weapon Attack:* +3 to hit, range 5/15 ft., one - Large or smaller creature. *Hit:* The target is restrained. A - creature can use its action to make a DC 10 Strength check to free - itself or another creature in a net, ending the effect on a - success. Dealing 5 slashing damage to the net (AC 10) frees the - target without harming it and destroys the net. REACTIONS - - **Sticky Shield.** When a creature misses the kuo-toa with a melee - weapon attack, the kuo-toa uses its sticky shield to catch the - weapon. The attacker must succeed on a DC 11 Strength saving - throw, or the weapon becomes stuck to the kuo-toa's shield. If the - weapon's wielder can't or won't let go of the weapon, the wielder - is grappled while the weapon is stuck. While stuck, the weapon - can't be used. A creature can pull the weapon free by taking an - action to make a DC 11 Strength check and succeeding. + Bite. + Melee Weapon Attack: +3 to hit, reach 5 ft., one target. + Hit: 3 (1d4 + 1) piercing damage. + + Spear. + Melee or Ranged Weapon Attack: +3 to hit, reach 5ft. or range + 20/60 ft., one target. Hit: 4 (1d6 + 1) piercing damage, or + 5 (1d8 + 1) piercing damage if used with two hands to make + a melee attack. + + Net. + Ranged Weapon Attack: +3 to hit, range 5/15 ft., one Large or + smaller creature. Hit: The target is restrained. A creature can + use its action to make a DC 10 Strength check to free itself or + another creature in a net, ending the effect on a success. + Dealing 5 slashing damage to the net (AC 10) frees the target + without harming it and destroys the net. + + # Reactions + + Sticky Shield. + When a creature misses the kuo-toa with a melee weapon attack, + the kuo-toa uses its sticky shield to catch the weapon. The + attacker must succeed on a DC 11 Strength saving throw, or the + weapon becomes stuck to the kuo-toa's shield. If the weapon's + wielder can't or won't let go of the weapon, the wielder is + grappled while the weapon is stuck. While stuck, the weapon + can't be used. A creature can pull the weapon free by taking + an action to make a DC 11 Strength check and succeeding. """ name = "Kuo-Toa" description = "Medium humanoid (kuo-toa), neutral evil" @@ -354,39 +365,47 @@ class KuoToa(Monster): class KuoToaArchpriest(Monster): - """**Amphibious.** The kuo-toa can breathe air and water. + """ + Amphibious. + The kuo-toa can breathe air and water. - **Otherworldly Perception.** The kuo-toa can sense the presence of - any creature within 30 feet of it that is invisible or on the - Ethereal Plane. It can pinpoint such a creature that is moving. + Otherworldly Perception. + The kuo-toa can sense the presence of any creature within 30 + feet of it that is invisible or on the Ethereal Plane. It can + pinpoint such a creature that is moving. - **Slippery.** The kuo-toa has advantage on ability checks and saving throws made to escape a grapple. + Slippery. + The kuo-toa has advantage on ability checks and saving throws + made to escape a grapple. - **Sunlight Sensitivity.** While in sunlight, the kuo-toa has disadvantage on attack rolls, as well as on Wisdom (Perception) checks that rely on sight. + Sunlight Sensitivity. + While in sunlight, the kuo-toa has disadvantage on attack rolls, + as well as on Wisdom (Perception) checks that rely on sight. - **Spellcasting.** The kuo-toa is a 10th-level spellcaster. Its - spellcasting ability is Wisdom (spell save DC 14, +6 to hit with - spell attacks). The kuo-toa has the following cleric spells - prepared: + Spellcasting. + The kuo-toa is a 10th-level spellcaster. Its spellcasting ability + is Wisdom (spell save DC 14, +6 to hit with spell attacks). The + kuo-toa has the following cleric spells prepared: - - Cantrips (at will): guidance, sacred flame, thaumaturgy - - 1st level (4 slots): detect magic, sanctuary, shield of faith - - 2nd level (3 slots): hold person, spiritual weapon - - 3rd level (3 slots): spirit guardians, tongues - - 4th level (3 slots): control water, divination - - 5th level (2 slots): mass cure wounds, scrying + - Cantrips (at will): guidance, sacred flame, thaumaturgy + - 1st level (4 slots): detect magic, sanctuary, shield of faith + - 2nd level (3 slots): hold person, spiritual weapon + - 3rd level (3 slots): spirit guardians, tongues + - 4th level (3 slots): control water, divination + - 5th level (2 slots): mass cure wounds, scrying # ACTIONS - **Multiattack.** The kuo-toa makes two melee attacks. - - **Scepter.** *Melee Weapon Attack:* +6 to hit, reach 5 ft., one - target. *Hit:* 6 (1d6 + 3) bludgeoning damage plus 14 (4d6) - lightning damage. + Multiattack. + The kuo-toa makes two melee attacks. - **Unarmed Strike.** *Melee Weapon Attack:* +6 to hit, reach 5 ft., - one target. *Hit:* 5 (1d4 + 3) bludgeoning damage. + Scepter. + Melee Weapon Attack: +6 to hit, reach 5 ft., one target. Hit: + 6 (1d6 + 3) bludgeoning damage plus 14 (4d6) lightning damage. + Unarmed Strike. + Melee Weapon Attack: +6 to hit, reach 5 ft., one target. Hit: + 5 (1d4 + 3) bludgeoning damage. """ name = "Kuo-Toa Archpriest" description = "Medium humanoid (kuo-toa), neutral evil" @@ -416,34 +435,40 @@ class KuoToaArchpriest(Monster): class KuoToaMonitor(Monster): - """**Amphibious.** The kuo-toa can breathe air and water. + """ + Amphibious. + The kuo-toa can breathe air and water. - **Otherworldly Perception.** The kuo-toa can sense the presence of - any creature within 30 feet of it that is invisible or on the - Ethereal Plane. It can pinpoint such a creature that is moving. + Otherworldly Perception. + The kuo-toa can sense the presence of any creature within 30 + feet of it that is invisible or on the Ethereal Plane. It can + pinpoint such a creature that is moving. - **Slippery.** The kuo-toa has advantage on ability checks and - saving throws made to escape a grapple. + Slippery. + The kuo-toa has advantage on ability checks and saving throws + made to escape a grapple. - **Sunlight Sensitivity.** While in sunlight, the kuo-toa has - disadvantage on attack rolls, as well as on Wisdom (Perception) - checks that rely on sight. + Sunlight Sensitivity. + While in sunlight, the kuo-toa has disadvantage on attack rolls, + as well as on Wisdom (Perception) checks that rely on sight. - **Unarmored Defense.** The kuo-toa adds its Wisdom modifier to its - armor class. + Unarmored Defense. + The kuo-toa adds its Wisdom modifier to its armor class. # Actions - **Multiattack.** The kuo-toa makes one bite attack and two unarmed - strikes. - - **Bite.** *Melee Weapon Attack:* +6 to hit, reach 5 ft., one - target. *Hit:* 4 (1d4 + 2) piercing damage. + Multiattack. + The kuo-toa makes one bite attack and two unarmed strikes. - **Unarmed Strike.** *Melee Weapon Attack:* +6 to hit, reach 5 ft., - one target. *Hit:* 5 (1d6 + 2) bludgeoning damage plus 3 (1d6) - lightning damage, and the target can't take reactions until the - end of the kuo-toa's next turn. + Bite. + Melee Weapon Attack: +6 to hit, reach 5 ft., one target. Hit: + 4 (1d4 + 2) piercing damage. + + Unarmed Strike. + Melee Weapon Attack: +6 to hit, reach 5 ft., one target. Hit: + 5 (1d6 + 2) bludgeoning damage plus 3 (1d6) lightning damage, + and the target can't take reactions until the end of the kuo-toa's + next turn. """ name = "Kuo-Toa Monitor" description = "Medium humanoid (kuo-toa), neutral evil" @@ -465,40 +490,46 @@ class KuoToaMonitor(Monster): class KuoToaWhip(Monster): - """**Amphibious.** The kuo-toa can breathe air and water. + """ + Amphibious. + The kuo-toa can breathe air and water. - **Otherworldly Perception.** The kuo-toa can sense the presence of - any creature within 30 feet of it that is invisible or on the - Ethereal Plane. It can pinpoint such a creature that is moving. + Otherworldly Perception. + The kuo-toa can sense the presence of any creature within 30 feet + of it that is invisible or on the Ethereal Plane. It can pinpoint + such a creature that is moving. - **Slippery.** The kuo-toa has advantage on ability checks and - saving throws made to escape a grapple. + Slippery. + The kuo-toa has advantage on ability checks and saving throws made + to escape a grapple. - **Sunlight Sensitivity.** While in sunlight, the kuo-toa has - disadvantage on attack rolls, as well as on Wisdom (Perception) - checks that rely on sight. + Sunlight Sensitivity. + While in sunlight, the kuo-toa has disadvantage on attack rolls, + as well as on Wisdom (Perception) checks that rely on sight. - **Spellcasting.** The kuo-toa is a 2nd-level spellcaster. Its - spellcasting ability is Wisdom (spell save DC 12, +4 to hit with - spell attacks). The kuo-toa has the following cleric spells - prepared: + Spellcasting. + The kuo-toa is a 2nd-level spellcaster. Its spellcasting ability is + Wisdom (spell save DC 12, +4 to hit with spell attacks). The + kuo-toa has the following cleric spells prepared: - - Cantrips (at will): sacred flame, thaumaturgy - - 1st level (3 slots): bane, shield of faith + - Cantrips (at will): sacred flame, thaumaturgy + - 1st level (3 slots): bane, shield of faith # Actions - **Multiattack.** The kuo-toa makes two attacks: one with its bite - and one with its pincer staff. - - **Bite.** *Melee Weapon Attack:* +4 to hit, reach 5 ft., one - target. *Hit:* 4 (1d4 + 2) piercing damage. + Multiattack. + The kuo-toa makes two attacks: one with its bite and one with its + pincer staff. - **Pincer Staff.** *Melee Weapon Attack:* +4 to hit, reach 10 ft., - one target. *Hit:* 5 (1d6 + 2) piercing damage. If the target is a - Medium or smaller creature, it is grappled (escape DC 14). Until - this grapple ends, the kuo-toa can't use its pincer staff on - another target. + Bite. + Melee Weapon Attack: +4 to hit, reach 5 ft., one target. Hit: + 4 (1d4 + 2) piercing damage. + + Pincer Staff. + Melee Weapon Attack: +4 to hit, reach 10 ft., one target. Hit: + 5 (1d6 + 2) piercing damage. If the target is a Medium or smaller + creature, it is grappled (escape DC 14). Until this grapple ends, + the kuo-toa can't use its pincer staff on another target. """ name = "Kuo-Toa Whip" description = "Medium humanoid (kuo-toa), neutral evil" diff --git a/dungeonsheets/monsters/monsters_l.py b/dungeonsheets/monsters/monsters_l.py index cd2e5df4..67d2da0b 100644 --- a/dungeonsheets/monsters/monsters_l.py +++ b/dungeonsheets/monsters/monsters_l.py @@ -118,16 +118,17 @@ class Lich(Monster): Spellcasting. The lich is an 18th-level spellcaster. Its spellcasting ability is Intelligence (spell save DC 20, +12 to hit with spell attacks). The lich has the following wizard spells prepared: - - Cantrips (at will): mage hand, prestidigitation, ray of frost - - 1st level (4 slots): detect magic, magic missile, shield, thunderwave - - 2nd level (3 slots): acid arrow, detect thoughts, invisibility, mirror image - - 3rd level (3 slots): animate dead, counterspell, dispel magic, fireball - - 4th level (3 slots): blight, dimension door - - 5th level (3 slots): cloudkill, scrying - - 6th level (1 slot): disintegrate, globe of invulnerability - - 7th level (1 slot): finger of death, plane shift - - 8th level (1 slot): dominate monster, power word stun - - 9th level (1 slot): power word kill + - Cantrips (at will): mage hand, prestidigitation, ray of frost + - 1st level (4 slots): detect magic, magic missile, shield, thunderwave + - 2nd level (3 slots): acid arrow, detect thoughts, invisibility, mirror image + - 3rd level (3 slots): animate dead, counterspell, dispel magic, fireball + - 4th level (3 slots): blight, dimension door + - 5th level (3 slots): cloudkill, scrying + - 6th level (1 slot): disintegrate, globe of invulnerability + - 7th level (1 slot): finger of death, plane shift + - 8th level (1 slot): dominate monster, power word stun + - 9th level (1 slot): power word kill + Turn Resistance. The lich has advantage on saving throws against any effect that turns undead. diff --git a/dungeonsheets/monsters/monsters_n.py b/dungeonsheets/monsters/monsters_n.py index 99f4f811..95f7fc46 100644 --- a/dungeonsheets/monsters/monsters_n.py +++ b/dungeonsheets/monsters/monsters_n.py @@ -250,19 +250,23 @@ class Noble(Monster): class Nothic(Monster): - """Keen Sight + """ + Keen Sight. The nothic has advantage on Wisdom (Perception) checks that rely on sight. - Multiattack + + # Actions + + Multiattack. The nothic makes two claw attacks. - Claw + Claw. Melee Weapon Attack: +4 to hit, reach 5 ft., one target. Hit: 6 (1d6 + 3) slashing damage. - Rotting Gaze + Rotting Gaze. The nothic targets one creature it can see within 30 feet of it. The target must succeed on a DC 12 Constitution saving throw against this magic or take 10 (3d6) necrotic damage. - Weird Insight + Weird Insight. The nothic targets one creature it can see within 30 feet of it. The target must contest its Charisma (Deception) check against the nothic’s Wisdom (Insight) check. If the nothic wins, diff --git a/dungeonsheets/monsters/monsters_p.py b/dungeonsheets/monsters/monsters_p.py index 0ed60cea..58c44c8d 100644 --- a/dungeonsheets/monsters/monsters_p.py +++ b/dungeonsheets/monsters/monsters_p.py @@ -144,17 +144,22 @@ class PhaseSpider(Monster): class Piercer(Monster): - """**False Appearance.** While the piercer remains motionless on - the ceiling, it is indistinguishable from a normal stalactite. + """ + False Appearance. + While the piercer remains motionless on the ceiling, it is + indistinguishable from a normal stalactite. + + Spider Climb. + The piercer can climb difficult surfaces, including upside down + on ceilings, without needing to make an ability check. - **Spider Climb.** The piercer can climb difficult surfaces, - including upside down on ceilings, without needing to make an - ability check. Action + # Actions - **Drop.** *Melee Weapon Attack:* +3 to hit, one creature directly - underneath the piercer. *Hit:* 3 (1d6) piercing damage per 10 feet - fallen, up to 21 (6d6). *Miss:* The piercer takes half the normal - falling damage for the distance fallen. + Drop. + Melee Weapon Attack: +3 to hit, one creature directly underneath + the piercer. Hit: 3 (1d6) piercing damage per 10 feet fallen, up + to 21 (6d6). *Miss:* The piercer takes half the normal falling + damage for the distance fallen. """ name = "Piercer" diff --git a/dungeonsheets/monsters/monsters_s.py b/dungeonsheets/monsters/monsters_s.py index 7d09c2e4..7a367141 100644 --- a/dungeonsheets/monsters/monsters_s.py +++ b/dungeonsheets/monsters/monsters_s.py @@ -455,7 +455,8 @@ class Shadow(Monster): class ShadowDemon(Monster): - """Incorporeal Movement. + """ + Incorporeal Movement. The demon can move through other creatures and objects as if they were difficult terrain. It takes 5 (1d10) force damage if it ends its turn inside an object. @@ -466,9 +467,12 @@ class ShadowDemon(Monster): Shadow Stealth. While in dim light or darkness, the demon can take the Hide action as a bonus action. + + # Actions + Claws. - *Melee Weapon Attack:* +5 to hit, reach 5ft., one - creature. *Hit:* 10 (2d6+3) psychic damage or, if the demon + Melee Weapon Attack: +5 to hit, reach 5ft., one + creature. Hit: 10 (2d6+3) psychic damage or, if the demon had advantage on the attack roll, 17 (4d6+3) psychic damage. """ name = 'Shadow Demon' @@ -1289,7 +1293,8 @@ class StoneGolem(Monster): class Stonemelder(Monster): - """Death Burst. + """ + Death Burst. When the stonemelder dies, it turns to stone and explodes in a burst of rock shards, becoming a smoking pile of rubble. Each creature within 10 feet of the exploding stonemelder must make a @@ -1307,23 +1312,25 @@ class Stonemelder(Monster): - 2nd level (3 slots): Maximilian's earthen grasp,* shatter - 3rd level (3 slots): erupting earth,* meld into stone - 4th level (1 slots): stoneskin - + + # Actions + Black Earth Rod. - *Melee Weapon Attack:* +5 to hit, reach 5 ft., one - target. *Hit:* 5 (1d6 + 2) bludgeoning damage. The stonemelder + Melee Weapon Attack: +5 to hit, reach 5 ft., one + target. Hit: 5 (1d6 + 2) bludgeoning damage. The stonemelder can also expend a spell slot to deal extra damage, dealing 2d8 bludgeoning damage for a 1st level slot, plus an additional 1d8 for each level of the slot above 1st. - Stonemelders are spellcasters who gain their power from Ogrémoch, - using elemental earth magic to sheathe their bodies in carapaces - of rock. They are elite champions of the cult and answer only to - the cult leaders. Not even the Black Earth priests tell - stonemelders what to do. + Stonemelders are spellcasters who gain their power from Ogrémoch, + using elemental earth magic to sheathe their bodies in carapaces + of rock. They are elite champions of the cult and answer only to + the cult leaders. Not even the Black Earth priests tell + stonemelders what to do. - Each stonemelder carries a weapon known as a Black Earth rod. Such - a rod is like an ordinary mace, but in the hands of a stonemelder, - it serves as a conduit for Ogrémoch's wrath. + Each stonemelder carries a weapon known as a Black Earth rod. Such + a rod is like an ordinary mace, but in the hands of a stonemelder, + it serves as a conduit for Ogrémoch's wrath. """ name = 'Stonemelder' @@ -1358,8 +1365,6 @@ class StormGiant(Monster): 17). It can innately cast the following spells, requiring no material components: - - At will: detect magic, feather fall, levitate, light 3/day each: control weather, water breathing @@ -1477,7 +1482,8 @@ class SuccubusIncubus(Monster): class SwarmOfBats(Monster): - """Echolocation. + """ + Echolocation. The swarm can't use its blindsight while deafened. Keen Hearing. The swarm has advantage on Wisdom (Perception) checks that rely on hearing. @@ -1486,6 +1492,9 @@ class SwarmOfBats(Monster): and the swarm can move through any opening large enough for a Tiny bat. The swarm can't regain hit points or gain temporary hit points. + + # Actions + Bites. Melee Weapon Attack: +4 to hit, reach 0 ft., one creature in the swarm's space. Hit: 5 (2d4) piercing damage, or 2 (1d4) piercing @@ -1519,6 +1528,9 @@ class SwarmOfBeetles(Monster): The swarm can occupy another creature's space and vice versa, and the swarm can move through any opening large enough for a Tiny insect. The swarm can't regain hit points or gain temporary hit points. + + # Actions + Bites. Melee Weapon Attack: +3 to hit, reach 0 ft., one target in the swarm's space. Hit: 10 (4d4) piercing damage, or 5 (2d4) piercing damage if @@ -1552,6 +1564,9 @@ class SwarmOfCentipedes(Monster): The swarm can occupy another creature's space and vice versa, and the swarm can move through any opening large enough for a Tiny insect. The swarm can't regain hit points or gain temporary hit points. + + # Actions + Bites. Melee Weapon Attack: +3 to hit, reach 0 ft., one target in the swarm's space. Hit: 10 (4d4) piercing damage, or 5 (2d4) piercing damage if @@ -1589,6 +1604,9 @@ class SwarmOfInsects(Monster): The swarm can occupy another creature's space and vice versa, and the swarm can move through any opening large enough for a Tiny insect. The swarm can't regain hit points or gain temporary hit points. + + # Actions + Bites. Melee Weapon Attack: +3 to hit, reach 0 ft., one target in the swarm's space. Hit: 10 (4d4) piercing damage, or 5 (2d4) piercing damage if @@ -1622,6 +1640,9 @@ class SwarmOfPoisonousSnakes(Monster): The swarm can occupy another creature's space and vice versa, and the swarm can move through any opening large enough for a Tiny snake. The swarm can't regain hit points or gain temporary hit points. + + # Actions + Bites. Melee Weapon Attack: +6 to hit, reach 0 ft., one creature in the swarm's space. Hit: 7 (2d6) piercing damage, or 3 (1d6) piercing @@ -1662,6 +1683,9 @@ class SwarmOfQuippers(Monster): The swarm can't regain hit points or gain temporary hit points. Water Breathing. The swarm can breathe only underwater. + + # Actions + Bites. Melee Weapon Attack: +5 to hit, reach 0 ft., one creature in the swarm's space. Hit: 14 (4d6) piercing damage, or 7 (2d6) piercing @@ -1698,6 +1722,9 @@ class SwarmOfRats(Monster): The swarm can occupy another creature's space and vice versa, and the swarm can move through any opening large enough for a Tiny rat. The swarm can't regain hit points or gain temporary hit points. + + # Actions + Bites. Melee Weapon Attack: +2 to hit, reach 0 ft., one target in the swarm's space. Hit: 7 (2d6) piercing damage, or 3 (1d6) piercing damage if the @@ -1731,6 +1758,9 @@ class SwarmOfRavens(Monster): The swarm can occupy another creature's space and vice versa, and the swarm can move through any opening large enough for a Tiny raven. The swarm can't regain hit points or gain temporary hit points. + + # Actions + Beaks. Melee Weapon Attack: +4 to hit, reach 5 ft., one target in the swarm's space. Hit: 7 (2d6) piercing damage, or 3 (1d6) piercing damage if the @@ -1772,6 +1802,9 @@ class SwarmOfSpiders(Monster): other creature in contact with the same web. Web Walker. The swarm ignores movement restrictions caused by webbing. + + # Actions + Bites. Melee Weapon Attack: +3 to hit, reach 0 ft., one target in the swarm's space. Hit: 10 (4d4) piercing damage, or 5 (2d4) piercing damage if @@ -1805,6 +1838,9 @@ class SwarmOfWasps(Monster): The swarm can occupy another creature's space and vice versa, and the swarm can move through any opening large enough for a Tiny insect. The swarm can't regain hit points or gain temporary hit points. + + # Actions + Bites. Melee Weapon Attack: +3 to hit, reach 0 ft., one target in the swarm's space. Hit: 10 (4d4) piercing damage, or 5 (2d4) piercing damage if diff --git a/dungeonsheets/monsters/monsters_w.py b/dungeonsheets/monsters/monsters_w.py index 078d78bb..9a75102f 100644 --- a/dungeonsheets/monsters/monsters_w.py +++ b/dungeonsheets/monsters/monsters_w.py @@ -1821,7 +1821,8 @@ class WilloWisp(Monster): class WingedKobold(Monster): - """Sunlight Sensitivity. + """ + Sunlight Sensitivity. While in sunlight, the kobold has disadvantage on attack rolls, as well as on Wisdom (Perception) checks that rely on sight. Pack Tactics. From 26580e83ec75730c28dc706056cde2b4c8fe9d1a Mon Sep 17 00:00:00 2001 From: PJ Beers Date: Thu, 28 Dec 2023 12:01:45 +0100 Subject: [PATCH 3/3] Formatting: Spells: Prestidigitation: Fix bullet list This fixes the formatting of the bulleted list in the prestidigitation spell. --- dungeonsheets/spells/spells_p.py | 25 +++++++++++-------------- 1 file changed, 11 insertions(+), 14 deletions(-) diff --git a/dungeonsheets/spells/spells_p.py b/dungeonsheets/spells/spells_p.py index 79b7c7a4..45c69ae8 100644 --- a/dungeonsheets/spells/spells_p.py +++ b/dungeonsheets/spells/spells_p.py @@ -491,20 +491,17 @@ class PrayerOfHealing(Spell): class Prestidigitation(Spell): """This spell is a minor magical trick that novice spellcasters use for practice. You create one of the following magical effects within range: -  -You create an - instantaneous, harmless sensory effect, such as a shower of sparks, a puff of - wind, faint musical notes, or an odd odor. - -You instantaneously light or snuff - out a candle, a torch, or a small campfire. - -You instantaneously clean or soil - an object no larger than 1 cubic foot. - -You chill, warm, or flavor up to 1 - cubic foot of nonliving material for 1 hour. - -You make a color, a small mark, - or a symbol appear on an object or a surface for 1 hour. - -You create a - nonmagical trinket or an illusory image that can fit in your hand and that lasts - until the end of your next turn. + + - You create an instantaneous, harmless sensory effect, such as a shower of sparks, + a puff of wind, faint musical notes, or an odd odor. + - You instantaneously light or snuff out a candle, a torch, or a small campfire. + - You instantaneously clean or soil an object no larger than 1 cubic foot. + - You chill, warm, or flavor up to 1 cubic foot of nonliving material for 1 hour. + - You make a color, a small mark, or a symbol appear on an object or a surface + for 1 hour. + - You create a nonmagical trinket or an illusory image that can fit in your hand + and that lasts until the end of your next turn. + If you cast this spell multiple times, you can have up to three of its non-instantaneous effects active at a time, and you can dismiss such an effect as an action.