Mages are fragile without some form of protection. Magical wards provide methods for mages to completely negate spells. However, the ward might be expended when it absorbs the attack.
I decided to each elemental ward should respond differently to other elements:
- Immunity: No matter how many spells of this type you throw, it will not harm the ward.
- Weakness: The spell penetrates the ward.
- Resist: The ward negates the spell, but is expended.
While typically a mage will use an arcane ward for simplicity, a cabal might decide to specialize in an element to gain benefits, though at a risk.
Ward Type | Immunities | Weaknesses | Resists |
---|---|---|---|
Arcane Ward | Everything | ||
Fire Ward | Fire | Water, Shadow | Everything Else |
Water Ward | Water | Lightning | Everything Else |
Earth Ward | Lightning, Air, Arcane | Ice, Shadow | Everything Else |
I decided to cap it at these four elements to avoid deep memorization of type-v-type complexity.
Eventually, when cast into an abjuration sigil, these wards will protect the entire castle.
However, for now, I just want to add individual mage protection spells. My Spell system doesn’t
support Target: Entity
yet, so this is a good excuse to implement it:
I was able to reuse my selection shader, but with a different blur magnitude! I could also eventually change the color (perhaps blue or red) for protection/hostile spells.
The actual ward art is a silly placeholder, but I suspect I’ll want to write a shader to make it feel more magical.
Shields
While these elemental wards can protect against spells, sometimes you just want to guard your health. The cantrip for the Sentinel allows them to build a minor health shield on different mages as they deal damage.
I chose to represent this with a covered healthbar. I played around with a view different visualization algorithms. Here’s an example of a damaged unit with a shield that gets depleted:
I’ll revisit shields and wards when I add the abjuration sigil, but this is a good start.