Divine Domain: Light
The gods of light have many followers, as so many mortals look up into the sky and see the sun, full of power and majesty. These deities often cast their light into the darkest shadows, bringing their light against the evil of the dark.
This domain is available to those who follow the Alalihatian tradition, the Almalzish tradition, the Kaevarian Church, Trinitarians who worship Sor, and those who revere Ehlonna, Lathander, Larethian, Pelor, ...
name = 'Light'
description = "***Divine Domain: Light.*** The gods of light have many followers, as so many mortals look up into the sky and see the sun, full of power and majesty. These deities often cast their light into the darkest shadows, bringing their light against the evil of the dark."
Domain Spells
Starting at 1st level, you gain domain spells at the cleric levels listed in the Light Domain Spells table. Once you gain a domain spell, you always have it prepared, and it doesn't count against the number of spells you can prepare each day. If you have a domain spell that doesn't appear on the cleric spell list, the spell is nonetheless a cleric spell for you.
Light Domain Spells
Cleric Level | Spells |
---|---|
1st | burning hands, faerie fire |
3rd | flaming sphere, scorching ray |
5th | daylight, fireball |
7th | guardian of faith, wall of fire |
9th | flame strike, scrying |
domainspells = {
1: ['burning hands', 'faerie fire'],
3: ['flaming sphere', 'scorching ray'],
5: ['daylight', 'fireball'],
7: ['guardian of faith', 'wall of fire'],
9: ['flame strike', 'scrying']
}
def level1(npc):
def domainspellsforlevel(npc):
results = []
if npc.levels(spellcasting.casterclass) >= 1: results += domainspells[1]
if npc.levels(spellcasting.casterclass) >= 3: results += domainspells[3]
if npc.levels(spellcasting.casterclass) >= 5: results += domainspells[5]
if npc.levels(spellcasting.casterclass) >= 7: results += domainspells[7]
if npc.levels(spellcasting.casterclass) >= 9: results += domainspells[9]
spellcasting.spellsalwaysprepared += results
npc.defer(lambda npc: domainspellsforlevel(npc))
Bonus Cantrip
1st-level Light domain feature
You gain the light cantrip if you don't already know it.
spellcasting.cantripsknown.append('light')
Warding Flare
1st-level Light domain feature
You can interpose divine light between yourself and an attacking enemy. When you are attacked by a creature within 30 feet of you that you can see, you can use your reaction to impose disadvantage on the attack roll, causing light to flare before the attacker before it hits or misses. An attacker that can't be blinded is immune to this feature.
You can use this feature a number of times equal to your Wisdom modifier (a minimum of once). You regain all expended uses when you finish a long rest.
npc.defer(lambda npc: npc.reactions.append(f"***Warding Flare ({npc.WISbonus()}/Recharges on long rest).*** When {'you' if npc.levels('Cleric') < 6 else 'a creature that you can see'} are attacked by a creature within 30 feet of you that you can see, you cause light to flare before the attacker before it hits or misses, imposing disadvantage on the attack roll. An attacker that can't be blinded is immune to this feature.") )
Channel Divinity: Radiance of the Dawn
2nd-level Light domain feature
You can use your Channel Divinity to harness sunlight, banishing darkness and dealing radiant damage to your foes.
As an action, you present your holy symbol, and any magical darkness within 30 feet of you is dispelled. Additionally, each hostile creature within 30 feet of you must make a Constitution saving throw. A creature takes radiant damage equal to 2d10 + your cleric level on a failed saving throw, and half as much damage on a successful one. A creature that has total cover from you is not affected.
def level2(npc):
npc.actions.append("***Channel Divinity: Radiance of the Dawn.*** you present your holy symbol, and any magical darkness within 30 feet of you is dispelled. Additionally, each hostile creature within 30 feet of you must make a Constitution saving throw. A creature takes 2d8 + {npc.levels('Cleric')} radiant damage on a failed saving throw, and half as much damage on a successful one. A creature that has total cover from you is not affected.")
Improved Flare
6th-level Light domain feature
You can also use your Warding Flare feature when a creature that you can see within 30 feet of you attacks a creature other than you.
Potent Spellcasting
8th-level Light domain feature
You add your Wisdom modifier to the damage you deal with any cleric cantrip.
def level8(npc):
npc.traits.append("***Potent Spellcasting.*** You add your Wisdom modifier to the damage you deal with any cleric cantrip.")
Corona of Light
17th-level Light domain feature
You can use your action to activate an aura of sunlight that lasts for 1 minute or until you dismiss it using another action. You emit bright light in a 60-foot radius and dim light 30 feet beyond that. Your enemies in the bright light have disadvantage on saving throws against any spell that deals fire or radiant damage.
def level17(npc):
npc.actions.append("***Corona of Light.*** You activate an aura of sunlight that lasts for 1 minute or until you dismiss it using another action. You emit bright light in a 60-foot radius and dim light 30 feet beyond that. Your enemies in the bright light have disadvantage on saving throws against any spell that deals fire or radiant damage.")