Ad placeholder
Counterspell
Jump to navigation
Jump to search
Counterspell is a level 3 abjuration spell. It allows spellcasters to interrupt another caster's spellcasting, causing it to fail and have no effect.
Description
Try to stop a spell being cast.If it is higher level than the spell slot you used to Counterspell, you must make a check using your spellcasting ability[See Notes] to prevent it. The check's difficulty is equal to 10 plus the level of the spell you are trying to counter. This spell can be cast while you are .
Properties
- Cost
Reaction +
Level 3 Spell Slot
At higher levels
Counterspell can be upcast to counter spells of higher levels without requiring a check.How to learn
Classes:
- Class level 5: Sorcerer, Warlock, and Wizard
- Class level 6: College of Lore (via Magical Secrets)
- Class level 10: Bard (via Magical Secrets)
Granted by items:
Staff of Interruption (
Recharge: Long rest)
Other ways to learn:
Notes
- When attempting to Counterspell a spell of a higher level, the Counterspell caster's modifier is used instead of their spellcasting ability modifier. [1]
- Even a failed Counterspell feeds an Abjuration School Wizard's .
- When a scroll is successfully counterspelled the scroll is not consumed.
- Cantrips can also be counterspelled.
- The incantation for Counterspell is Impero Tibi, Latin for "I command you".
Bugs
- Arcane Ward can only be fed up to 3 charges, regardless of spell Level used, due to how an additional hidden Counterspell is cast based on success/failure.
External links[edit | edit source]
References[edit | edit source]
- ↑ From the definition of
TryCounterspellHigherLevel(level)
inMods/Shared/Scripts/thoth/helpers/CommonConditions.khn
:Show code
function TryCounterspellHigherLevel(level) local spellPowerLevel = SpellPowerLevelEqualOrLessThan(level) if not spellPowerLevel.Result then local counterspellDC = 10 + context.HitDescription.SpellPowerLevel local st = AbilityCheck(Ability.Intelligence, counterspellDC, false, false, 0, context.Observer, context.Observer) return ConditionResult(st.Result,{},{},st.Chance) end return ConditionResult(true,{},{},1.0) end