Arcane Tradition: Luna Magi

A wizard of phases and a master of radiant damage, you use the moons as a conduit for your grasp on the weave of magic. When the four moons of Azgaarnoth are at high sanction, and thus closer to the world, your hold on the weave is at its strongest and your power magnified. Likewise, when they are at the lowest sanction of their cycle, your hold on the weave is at its weakest and your power dulled.

Luna magi are always members of (or former members of) the Four Moons school.

name = 'Luna'
description = "***Arcane Tradition: Luna Magi.*** A wizard of phases and a master of radiant damage, you use the moons as a conduit for your grasp on the weave of magic. When the four moons of Azgaarnoth are at high sanction, and thus closer to the world, your hold on the weave is at its strongest and your power magnified. Likewise, when they are at the lowest sanction of their cycle, your hold on the weave is at its weakest and your power dulled."

Radiance of the Night

2nd-level Luna feature

You also know the sacred flame cantrip which burns silver with moonlight.

def level2(npc):
    npc.spellcasting['Wizard'].cantrips.append('sacred flame')

2nd-level Luna feature

You gain a connection with the moons as a conduit to the magical weave; in particular, you choose one of the four moons of Azgaarnoth as your source of lunar power. As such, when that moon are in either high sanction or low sanction phases, you gain the following benefits or constraints:

Moon Phase Effect
Full Moon +1 to Spellcasting DC
Waning Moon No Effect
New Moon -1 to Spellcasting DC
Waxing Moon No Effect
    npc.traits.append("***Lunar Link.*** You gain a connection with the moons as a conduit to the magical weave; in particular, you choose one of the four moons of Azgaarnoth as your source of lunar power. As such, when that moon are in either high sanction or low sanction phases, you gain the following benefits or constraints: **Full Moon.** +1 to Spellcasting DC. **Waning Moon.** No Effect. **NewMoon.** -1 to Spellcasting DC. **Waxing Moon.** No Effect.")

Moon Shadows

6th-level Luna feature

When you are within 60 feet of a beam of moonlight, your connection with the moons allows you to bend this reflective shine within a 5-foot radius for up to 1 minute, even during the daylight hours. When using this in combination with making a Dexterity (Stealth) check, you do so with advantage. You can also use this ability to hide objects smaller than 5 feet wide, or other willing creatures that are Medium or smaller, for up to 1 minute. Any creature searching for such a hidden object or creature while the Moon Shadows ability is in effect must succeed on a Wisdom (Perception) check versus your Spell save DC to see it.

Once you use this feature, you can't do so again until you have finished a short or long rest.

def level6(npc):
    npc.defer(lambda npc: npc.traits.append(f"***Moon Shadows (Recharges on short or long rest).*** When you are within 60 feet of a beam of moonlight, your connection with the moons allows you to bend this reflective shine within a 5-foot radius for up to 1 minute, even during the daylight hours. When using this in combination with making a Dexterity (Stealth) check, you do so with advantage. You can also use this ability to hide objects smaller than 5 feet wide, or other willing creatures that are Medium or smaller, for up to 1 minute. Any creature searching for such a hidden object or creature while the Moon Shadows ability is in effect must succeed on a Wisdom (Perception) check (DC {npc.spellcasting['Wizard'].spellsavedc()}).") )

Lunar Retribution

10th-level Luna feature

As a reaction to a melee attack that hits you, you release a wave of lunar energies to rebuke your attacker. When successfully hit by a melee attack, you can use your reaction to force the attacker to make Wisdom saving throw against your Spell save DC, taking 1d8 + your Intelligence modifier (minimum of 1) in psychic damage on failed save, as they suffer a bout of moon madness from the exposure. If the attack was a critical hit, this damage is doubled.

This feature can be used a number of times equal to your Intelligence modifier (minimum of once) and you regain all expended uses after completing a long rest.

def level10(npc):
    npc.defer(lambda npc: npc.reactions.append(f"***Lunar Retribution.*** When a melee attack hits you, you release a wave of lunar energies to rebuke your attacker. When successfully hit by a melee attack, you can use your reaction to force the attacker to make Wisdom saving throw (DC {npc.spellcasting['Wizard'].spellsavedc()}); they take 1d8 + {npc.INTbonus()} psychic damage on failed save as they suffer a bout of moon madness from the exposure. If the initial attack was a critical hit, this damage is doubled.") )

Radiant Mastery

14th-level Luna feature

When you roll a 1 or 2 on a radiant damage die, you can reroll the die and must use the new roll, even if the new roll is a 1 or a 2.

def level14(npc):
    npc.traits.append("***Radiant Mastery.*** When you roll a 1 or 2 on a radiant damage die, you can reroll the die and must use the new roll, even if the new roll is a 1 or a 2.")

Luna Magi Spells

If a spell does radiant damage, it counts as a wizard spell for you.

2nd-level

3rd-level

5th-level