Guards
Turning a hit away, where it stops.
v2's cookbook, turning a hit away (G266-G271). A mage casts a firebolt at a paladin, 20 fire, 10 armour off for 10 seconds and a harmless mark, and pays its 10 mana every time; what differs is where the hit stops. A bubble refuses what is harmful and lets the rest land; a ward spends a charge on each magic part it stops; a totem eats the cast whole; a shield soaks damage and refuses nothing; a sigil turns away the first hex and takes its own half-damage rule with it. A presenter draws the fire only on a hit that lands (G271).
1
# v2's cookbook, turning a hit away (G266-G271). A mage casts a firebolt at a paladin, 20 fire, 10 armour off for 102
# seconds and a harmless mark, and pays its 10 mana every time; what differs is where the hit stops. A bubble refuses3
# what is harmful and lets the rest land; a ward spends a charge on each magic part it stops; a totem eats the cast4
# whole; a shield soaks damage and refuses nothing; a sigil turns away the first hex and takes its own half-damage rule5
# with it. A presenter draws the fire only on a hit that lands (G271).7
rate 608
stat MaxHealth9
stat Armor10
stat Accuracy11
stat ShieldLeft12
pool Health max MaxHealth13
pool Mana max 10014
damage Health15
stages Absorb16
tags Fire Magic Harmful Unblockable Spell Hex Brand18
archetype Mage19
base MaxHealth 10020
base Accuracy 121
full Health Mana22
grants Firebolt Expose DoubleHex HexAndBrand Strike24
archetype Paladin25
base MaxHealth 10026
full Health28
ability Firebolt29
tags Spell Magic30
target one31
cost Mana 1032
if chance(holder.Accuracy)33
deal 20 Fire Magic Harmful to target34
apply Scorched to target35
apply Marked to target37
effect Scorched38
tags Magic Harmful39
stack refresh40
lasts 10s41
Armor - 1043
effect Marked44
stack refresh45
lasts 3s47
effect Blinded48
Accuracy x 050
# ---- G266 the divine shield: for 8 seconds whatever is harmful is refused, however much of it comes, unless it is51
# unblockable; what harmful was on the paladin goes as it rises ----53
effect DivineShield54
lasts 8s55
blocks Apply unless Unblockable having Harmful from others56
blocks Damage unless Unblockable having Harmful from others57
start58
remove all Harmful60
ability Expose61
target one62
apply Exposed to target64
effect Exposed65
tags Harmful Unblockable66
lasts 10s67
Armor - 569
# ---- G267 the spell ward: the next three magic parts for 30 seconds, a charge each; a bolt is two, its damage and its70
# armour loss; a bolt that missed raised nothing, so costs nothing ----72
# v2 never put a ward and a sigil on one paladin. Held together, the sigil turns away the hex it is kept for first,73
# sparing a ward's charge: the content's choice, said by their keys.74
effect SpellWard75
order 276
stack add max 377
lasts 30s78
before Damage of holder having Magic79
prevent80
remove SpellWard 181
before Apply of holder having Magic82
prevent83
remove SpellWard 185
# ---- G268 the grounding totem: the next spell cast at its holder in 15 seconds is eaten whole, its price paid ----87
effect Grounding88
lasts 15s89
before Activate targeting holder having Spell90
prevent91
remove self93
# ---- G269 power word: shield, 50 damage soaked for 15 seconds; nothing is refused, so every hit lands ----95
effect PowerWordShield96
lasts 15s97
var hp = 5098
ShieldLeft + self.hp99
before Damage of holder at Absorb100
absorb into self.hp101
if self.hp <= 0102
remove self104
# ---- G270 the sigil: the first hex that reaches its holder is turned away and the sigil goes, and its half-damage105
# rule with it ----107
effect Sigil108
order 1109
before Apply of holder having Hex110
prevent111
remove self112
before Damage of holder113
scale 0.5115
effect Hexed116
tags Hex117
stack add118
var dmg = 0119
lasts 10s120
start121
deal self.dmg to holder123
ability DoubleHex124
target one125
apply Hexed to target with dmg = 15126
apply Hexed to target with dmg = 10128
ability HexAndBrand129
target one130
apply Hexed to target with dmg = 15131
deal 10 Brand to target133
ability Strike134
target one135
deal 10 to target1
catalog guards.ledger2
row G266 Scorched Marked DivineShield Exposed Firebolt Expose Mage Paladin3
row G267 Scorched Marked Blinded SpellWard Firebolt Mage Paladin4
row G268 Marked Grounding Firebolt Mage Paladin5
row G269 PowerWordShield Firebolt Mage Paladin6
row G270 Sigil Hexed DoubleHex HexAndBrand Strike Mage Paladin7
row G271 Firebolt9
play G266 G271 "A firebolt burns the paladin, 20 and 10 armour off; its divine shield clears the burn, and for 8 seconds two bolts land only their marks, the mage paying for both; an unblockable exposure lands; after it, a bolt lands whole. The fire is drawn only on the bolt that landed"10
make m Mage11
make p Paladin12
act m Firebolt at p13
expect p.Health = 80 from G266: p.Health - "20 fire damage"14
expect event Change of p landed tagged Fire 1 time from G271: count "act m Firebolt at p"15
expect p.Armor = -10 from G266: "-10 armor"16
apply DivineShield to p17
expect p lacks Scorched18
act m Firebolt at p19
act m Firebolt at p20
expect no event Change of p landed tagged Fire21
expect m.Mana = 70 from G266: m.Mana - count "act m Firebolt at p" * "costs the mage 10 mana"22
expect p.Health = 80 from G266: p.Health - "20 fire damage"23
expect p lacks Scorched24
expect p has Marked25
act m Expose at p26
expect p has Exposed27
expect p.Armor = -5 from content: G266 gives the exposure no size; the content's -5 on the paladin's cleared armour28
save29
advance 8s30
act m Firebolt at p31
expect p.Health = 60 from content: G266 leaves open whether the 8 s bubble still holds at exactly 8 s; the content's has ended, so the bolt's 20 lands, off 8032
expect event Change of p landed tagged Fire 1 time from content: G266 leaves open whether the bubble still holds at exactly 8 s; the content's has ended, so the bolt lands and its fire shows once33
expect p has Scorched34
covers challenge 236
play G267 "A spell ward of three: the first bolt's damage and armour loss take two, its mark lands; the second's damage takes the last and its armour loss lands. A blinded mage's bolt misses, raises nothing and spends nothing"37
make m Mage38
make b Mage39
make p Paladin40
apply SpellWard 3 to p41
apply Blinded to b42
act b Firebolt at p43
expect b.Mana = 90 from G267: b.Mana - "costs the mage 10 mana" in G26644
expect p has SpellWard 3 from G267: "three magic"45
act m Firebolt at p46
expect p has SpellWard 1 from G267: "three magic" - "two magic"47
expect p.Health = 100 from G267: p.Health48
expect p lacks Scorched49
expect p has Marked50
save51
act m Firebolt at p52
expect p lacks SpellWard53
expect p.Health = 100 from G267: p.Health54
expect p has Scorched56
play G268 "A grounding totem eats the next spell cast at the paladin whole, mark and all, and the mage pays for it; the bolt after lands"57
make m Mage58
make p Paladin59
apply Grounding to p60
act m Firebolt at p61
expect refused Countered62
expect m.Mana = 90 from G268: m.Mana - "costs the mage 10 mana" in G26663
expect p.Health = 100 from G268: p.Health64
expect p lacks Marked65
expect p lacks Grounding66
save67
act m Firebolt at p68
expect p.Health = 80 from G268: p.Health - "20 fire damage" in G26669
expect p has Marked71
play G269 "Power word: shield soaks 50: a bolt leaves it 30 and the paladin's health whole, and its armour loss lands; the third bolt breaks it and 10 gets through"72
make m Mage73
make p Paladin74
apply PowerWordShield to p75
act m Firebolt at p76
expect p.Health = 100 from G269: p.Health77
expect p.ShieldLeft = 30 from G269: "50 damage" - "20-damage"78
expect p has Scorched79
act m Firebolt at p80
expect p.ShieldLeft = 10 from G269: "50 damage" - "20-damage" - "20-damage"81
save82
act m Firebolt at p83
expect p.Health = 90 from G269: p.Health - (count "act m Firebolt at p" * "20-damage" - "50 damage")84
expect p lacks PowerWordShield86
play G270 "Warded by a sigil, a strike of 10 is halved, 5; a double hex, 15 then 10, is turned away on the first, which takes the sigil, and the second lands whole. Another's hex and brand: the hex is turned away and the brand's 10 lands whole"87
make m Mage88
make p Paladin89
make q Paladin90
apply Sigil to p91
act m Strike at p92
expect p.Health = 95 from content: G270 halves damage while warded but gives the strike no size; the content's 10, halved, off 10093
act m DoubleHex at p94
expect p lacks Sigil95
expect p has Hexed 1 from content: G270 lands the double hex's second whole but gives no stacks; the content's hex lands as one stack of Hexed96
expect p.Health = 85 from content: G270 gives the second hex's 10 but not the paladin's health; the content's 100, less the halved strike of 5 and 1097
save98
apply Sigil to q99
act m HexAndBrand at q100
expect q lacks Hexed101
expect q.Health = 90 from G270: q.Health - "10 brand"What a change to Health meets
Every rule in this recipe a change to Health passes through, in order. Each line is a link to the rule.
Health: a change to it meets 3 rules, in this order before, at Absorb PowerWordShield: Damage of holder at Absorb (content/cookbook/guards.ledger:99) absorbs from it, changes the world beyond it; held by no archetype and applied by no content: the game or a play puts it on before, at no stage Sigil: Damage of holder (content/cookbook/guards.ledger:112) scales it; held by no archetype and applied by no content: the game or a play puts it on SpellWard: Damage of holder having Magic (content/cookbook/guards.ledger:78) prevents it, stops the phase: no rule after it runs, changes the world beyond it; held by no archetype and applied by no content: the game or a play puts it on no archetype lacks a layer its like hold
Run it yourself
ledger check content/cookbook/guards.ledger content/cookbook/guards.play
ledger play content/cookbook/guards.play
ledger pipeline content/cookbook/guards.ledger Health