Skip to content

Commit

Permalink
Merge pull request #154 from PJBrs/formatting-enhancements
Browse files Browse the repository at this point in the history
Formatting enhancements
  • Loading branch information
canismarko authored Dec 31, 2023
2 parents 11bd8b3 + 26580e8 commit 1163911
Show file tree
Hide file tree
Showing 19 changed files with 440 additions and 344 deletions.
14 changes: 7 additions & 7 deletions dungeonsheets/features/druid.py
Original file line number Diff line number Diff line change
Expand Up @@ -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
Expand Down
30 changes: 16 additions & 14 deletions dungeonsheets/features/races.py
Original file line number Diff line number Diff line change
Expand Up @@ -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)
======== =================== ========================================
"""

Expand Down
71 changes: 36 additions & 35 deletions dungeonsheets/features/sorceror.py
Original file line number Diff line number Diff line change
Expand Up @@ -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
"""

Expand Down Expand Up @@ -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
Expand Down Expand Up @@ -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
================ ===========================================
"""

Expand Down
105 changes: 53 additions & 52 deletions dungeonsheets/magic_items.py
Original file line number Diff line number Diff line change
Expand Up @@ -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"
Expand All @@ -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"
Expand All @@ -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"
Expand All @@ -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"
Expand Down
45 changes: 25 additions & 20 deletions dungeonsheets/monsters/monsters_a.py
Original file line number Diff line number Diff line change
Expand Up @@ -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
Expand Down Expand Up @@ -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
Expand Down Expand Up @@ -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.
Expand Down Expand Up @@ -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
Expand Down
Loading

0 comments on commit 1163911

Please sign in to comment.