From bf0a3d9a1c9238faf310f3499b006fbe58e4c5d9 Mon Sep 17 00:00:00 2001 From: Malin Freeborn <malinfreeborn@posteo.net> Date: Wed, 8 Nov 2023 21:46:15 +0100 Subject: [PATCH] give spells standard num effects of level +2 --- magic.sty | 122 +++----------------------------------------- spells/Air1.tex | 4 +- spells/AirFire4.tex | 4 +- spells/Earth2.tex | 4 +- spells/Earth3.tex | 4 +- spells/Fate1.tex | 8 +-- spells/Fate2.tex | 10 ++-- spells/Fate4.tex | 4 +- spells/Fire1.tex | 2 +- spells/Fire2.tex | 4 +- spells/Fire3.tex | 4 +- spells/Fire4.tex | 4 +- spells/Mind2.tex | 4 +- spells/Water1.tex | 2 +- spells/Water3.tex | 2 +- spells/fateAir4.tex | 4 +- 16 files changed, 38 insertions(+), 148 deletions(-) diff --git a/magic.sty b/magic.sty index d7875b9c..f3cf048f 100644 --- a/magic.sty +++ b/magic.sty @@ -7,8 +7,11 @@ % |___/ +% Some spells inflict X fatigue, where X is the spell level plus 2. \newcounter{spellCost} -\setcounter{spellCost}{1} + \setcounter{spellCost}{1} +\newcounter{spellPlusTwo} + \setcounter{spellPlusTwo}{1} \newcommand\spellName{} \newcommand\spellEnhancements{} @@ -32,6 +35,8 @@ \ifdefstring{\d}{duplicated}{\global\toggletrue{duplicated}}{}% \stepcounter{spellCost}% }% + \setcounter{spellPlusTwo}{\value{spellCost}}% + \addtocounter{spellPlusTwo}{2}% \renewcommand\spellEnhancements{#2}% \renewcommand\spellAction{#3}% \renewcommand\spellSphere{#4}% @@ -69,7 +74,6 @@ \newcommand\spellIndex{\index[spells]{\textbf{\spellName} Cost: \arabic{spellCost}, \spellEnhancements, \spellAction~\spellSphere, Range: \spellRange, \ifnum\value{spellTargets}>1 Targets: \arabic{spellTargets}, \fi Resisted by: \detokenize{\spellResistance}, \spellSum \spellNotes }} - \newcommand\shortSpell{% \item[\spellName] Cost: \arabic{spellCost}, @@ -93,55 +97,10 @@ }% } -% We use spellPotency to track spell effects which are typically larger than the spell's level. -\newcounter{spellPotency} % spellResTN is the TN to resist spells, used only in specified spells beneath creatures. For example, if someone had Air 2, resisting their spells would be TN (7 + 2) 9. \newcounter{spellResTN} - -\newcommand\mFate{% - Fate% - \global\settoggle{insubstantial}{true}% - \ifnum\value{spellResTN}<8% - \addtocounter{spellResTN}{\value{Fate}}% - \fi% -} -\newcommand\mEarth{% - Earth% - \ifnum\value{spellResTN}<8% - \addtocounter{spellResTN}{\value{Earth}}% - \fi% -} -\newcommand\mAir{% - Air% - \global\settoggle{insubstantial}{true}% - \ifnum\value{spellResTN}<8% - \addtocounter{spellResTN}{\value{Air}}% - \fi% -} -\newcommand\mFire{% - Fire% - \ifnum\value{spellResTN}<8% - \addtocounter{spellResTN}{\value{Fire}}% - \fi% - \addtocounter{spellPotency}{-1}% -} -\newcommand\mWater{% - Water% - \ifnum\value{spellResTN}<8% - \addtocounter{spellResTN}{\value{Water}}% - \fi% -} - -% 1 = Name -% 2 = Spheres -% 3 = Action -% 4 = Enhancements -% 5 = Resistance -% 6 = Description -% 7 = Longer notes - \newcommand\spellRange{} \newcommand\setRange{% \iftoggle{distant}% @@ -209,75 +168,6 @@ Distant% } -\newcommand\rollConv{\arabic{numberofdice}D6\ifnum\value{damagebonus}<0\arabic{damagebonus}\else\ifnum\value{damagebonus}>0+\arabic{damagebonus}\fi\fi} - -\newcommand\magicItem[7]{ - \global\settoggle{distant}{false}% - \global\settoggle{duplicated}{false}% - \global\settoggle{insubstantial}{false}% - \setcounter{spelllevel}{1}% - \foreach \s in {#3}{% - \stepcounter{spelllevel}% - }% - \setcounter{spellPotency}{\value{spelllevel}}% - \addtocounter{spellPotency}{3}% - \setcounter{spellResTN}{7}% - \vphantom{\dmg{spellPotency}}% - \vphantom{#3}% - \setArea% - \setRange% - \needspace{3em} - {\center\decoone~\textbf{\large #1}~\decoone} - \noindent - \begin{description} - \item[Item:] #7 - \item[Activation:] - When #3, - #6 - \raggedright - \item[Stats:] - Potence:~\arabic{spelllevel}, Range: \spellRange\iftoggle{duplicated}{, Targets: \spellArea}{} - \item[Resisted~by:] - #4 - \end{description} - -} - -\newcommand{\magicitem}[7]{% - \vspace{1em}\needspace{1em}\noindent\textbf{#1}% - \index{Magical Item!#1} - - \noindent - \textit{Spells: #2, }% - \textit{Path: #3, }% - \textit{Duration: #4, }% - \textit{Type: #5, }% - \textit{Potency: +#6, }% - \textit{MP: #7}% - % Type can be 'Pocket Spell', 'Talisman', or 'Artefact'. - \needspace{2em}% -} - -\newcommand{\manalake}[8]{ - \subsection{#1 (Level #8)} - - \textit{Spells: #2, }\textit{Path: #3, }\textit{Duration: #4, }\textit{Type: #5, }\textit{Potence: #6, }\textit{#7 MP}% Type can be 'pocket spell', 'magical item', or 'artefact'. - \index{Mana Lakes!#1} - \vspace{.3em} -} - -\newcommand\creatureSpells[2][]{ - \begin{description} - \settoggle{fullSpells}{false} - #1 - \foreach \s in {#2}{ - \IfFileExists{config/spells/\s.tex}{ - \input{config/spells/\s.tex} - }{} - } - \end{description} -} - \newcommand\showStdSpells{ \setcounter{enc}{0} \begin{description} diff --git a/spells/Air1.tex b/spells/Air1.tex index c42e1c17..ecc511a4 100644 --- a/spells/Air1.tex +++ b/spells/Air1.tex @@ -14,10 +14,10 @@ {Wane}% Action {Air}% Spheres {the wind speed}% Resist with - {a pocket of foul air inflicts \arabic{spellPotency}~\glspl{fatigue} each round}% Description + {a pocket of foul air inflicts \arabic{spellPlusTwo}~\glspl{fatigue} each round}% Description { The caster pollutes the air, making it stink, and caustic to breath. - Anyone can attempt to hold their breath, but those not expecting the nauseating fumes suffer \arabic{spellPotency}~\glspl{fatigue}. + Anyone can attempt to hold their breath, but those not expecting the nauseating fumes suffer \arabic{spellPlusTwo}~\glspl{fatigue}. The air only covers \arabic{spelllevel} square -- enough for a doorway, or small tunnel. It dissipates after a couple of turns, or less if wind is present. diff --git a/spells/AirFire4.tex b/spells/AirFire4.tex index d1cf5fcc..2028e2dd 100644 --- a/spells/AirFire4.tex +++ b/spells/AirFire4.tex @@ -3,12 +3,12 @@ {Wane}% Action {Fire, Air}% Spheres {\roll{Wits}{Vigilance}}% Resist with - {lanterns flare, burning \spellArea\ any nearby targets for \rollConv\ Damage, then shadowy spirits latch onto their face, inflicting \arabic{spelllevel} \glspl{fatigue}}% Description + {lanterns flare, burning \spellArea\ any nearby targets for \showDam\ Damage, then shadowy spirits latch onto their face, inflicting \arabic{spelllevel} \glspl{fatigue}}% Description { As the caster calls to fire spirits, fires in the area flare up like dragons' breath, burning anyone nearby. Shadowy spirits, born of the foul air from the dead fires, cover the caster's enemies. - Anyone neary a fire takes \rollConv\ Damage. + Anyone neary a fire takes \showDam\ Damage. Anyone who breathes in receives \arabic{spelllevel} \glspl{fatigue}. The shadowy spirits of noxious air will follow all targets, wth an effective Speed Bonus of \arabic{spelllevel}. diff --git a/spells/Earth2.tex b/spells/Earth2.tex index 36383162..fe280a3e 100644 --- a/spells/Earth2.tex +++ b/spells/Earth2.tex @@ -3,12 +3,12 @@ {Wax}% Action {Earth}% Spheres {by \gls{weight}}% Resist with - {the caster forms snow or sand into a weapon blade. It shatters if it deals over \arabic{spellPotency} Damage}% Description + {the caster forms snow or sand into a weapon blade. It shatters if it deals over \arabic{spellPlusTwo} Damage}% Description { Reaching into some soft ground, such as sand or snow, the caster explains how to form a weapon, and the ground complies. The higher the target weapon's \gls{weight}, the more difficult the spell, as the \gls{weight} adds (but never subtracts) from the \gls{tn}. - The weapons produced have a maximum \gls{weight} of \arabic{spelllevel}, and shatter on a solid blow (anything over \arabic{spellPotency} Damage). + The weapons produced have a maximum \gls{weight} of \arabic{spelllevel}, and shatter on a solid blow (anything over \arabic{spellPlusTwo} Damage). } diff --git a/spells/Earth3.tex b/spells/Earth3.tex index afab8ea5..5a664c94 100644 --- a/spells/Earth3.tex +++ b/spells/Earth3.tex @@ -3,10 +3,10 @@ {Wane}% Action {Earth}% Spheres {\roll{Wits}{Caving}}% Resist with - {the ceiling cracks, inflicting \rollConv\ Damage on a single target below}% Description + {the ceiling cracks, inflicting \showDam\ Damage on a single target below}% Description { The caster focusses on a stone ceiling, and demands that it crack and splint in a precise pattern, to send a hunk of rock onto someone's head. - If the target fails to notice the hunk of rock, they receive \rollConv\ Damage. + If the target fails to notice the hunk of rock, they receive \showDam\ Damage. The ceiling generally remains intact, despite the small missing chunk, although repeated castings will inevitably bring down an entire floor of a castle, and \emph{might} cause a cave-in when underground. diff --git a/spells/Fate1.tex b/spells/Fate1.tex index 0dbdbb3b..794662f6 100644 --- a/spells/Fate1.tex +++ b/spells/Fate1.tex @@ -3,9 +3,9 @@ {Wax}% Action {Fate}% Spheres {the target's Charisma}% Resist with - {\spellArea~target gains \rollConv~\glspl{fp}}% Description + {\spellArea~target gains \showDam~\glspl{fp}}% Description { - The mage blesses the target with high hopes for their future, bestowing \rollConv~\glspl{fp} immediately. + The mage blesses the target with high hopes for their future, bestowing \showDam~\glspl{fp} immediately. } \spell{Curse}% Name @@ -13,10 +13,10 @@ {Wane}% Action {Fate}% Spheres {\roll{Charisma}{Tactics}}% Resist with - {lose \rollConv~\glspl{fp}}% Description + {lose \showDam~\glspl{fp}}% Description { The caster wishes for the target's shoes to fill up with rocks, or some other small irritation. - The target then loses \rollConv~\glspl{fp}. + The target then loses \showDam~\glspl{fp}. } diff --git a/spells/Fate2.tex b/spells/Fate2.tex index 4b06290d..04d63b16 100644 --- a/spells/Fate2.tex +++ b/spells/Fate2.tex @@ -5,7 +5,7 @@ {target's Charisma}% Resist with {\spellArea{} targets gain \arabic{spelllevel} \glspl{fp}}% Description { - The mage blesses the targets with high hopes for their future, bestowing \rollConv~\glspl{fp} immediately. + The mage blesses the targets with high hopes for their future, bestowing \showDam~\glspl{fp} immediately. } \spell{Mass Curse}% Name @@ -13,10 +13,10 @@ {Wane}% Action {Fate}% Spheres {\roll{Charisma}{Tactics}}% Resist with - {\spellArea\ targets lose \rollConv~\glspl{fp}}% Description + {\spellArea\ targets lose \showDam~\glspl{fp}}% Description { The caster mentions the worst possible future for the targets -- the most unpleasant thing which seems reasonably likely. - They then loses \rollConv~\glspl{fp}. + They then loses \showDam~\glspl{fp}. } \spell{Hateful Cry}% Name @@ -24,8 +24,8 @@ {Wane}% Action {Fate}% Spheres {\roll{Charisma}{Tactics}}% Resist with - {target loses \rollConv~\glspl{fp}}% Description + {target loses \showDam~\glspl{fp}}% Description { - One target at \spellRange{} loses \rollConv~\glspl{fp}. + One target at \spellRange{} loses \showDam~\glspl{fp}. } diff --git a/spells/Fate4.tex b/spells/Fate4.tex index 73d5b207..714a236a 100644 --- a/spells/Fate4.tex +++ b/spells/Fate4.tex @@ -3,9 +3,9 @@ {Wax}% Action {Fate}% Spheres {ambient noise}% Resist with - {targets receive \rollConv~\glspl{fp}}% Description + {targets receive \showDam~\glspl{fp}}% Description { - The caster extends their best wishes to a crowd, and anyone \spellRange\ away but still listening gains \rollConv~\glspl{fp} (or at least up to \spellArea\ people). + The caster extends their best wishes to a crowd, and anyone \spellRange\ away but still listening gains \showDam~\glspl{fp} (or at least up to \spellArea\ people). Noisier crowds can present a challenge, and raise the \gls{tn} significantly. } diff --git a/spells/Fire1.tex b/spells/Fire1.tex index 92d45ea9..4a03eedd 100644 --- a/spells/Fire1.tex +++ b/spells/Fire1.tex @@ -3,7 +3,7 @@ {Wax}% Action {Fire}% Spheres {\roll{Wits}{Athletics}}% Resist with - {target fire flares, inflicting \rollConv\ Damage on all around}% Description + {target fire flares, inflicting \showDam\ Damage on all around}% Description { A fire-source roars, growing loud, aggressive, and large enough to damage anyone next to it. diff --git a/spells/Fire2.tex b/spells/Fire2.tex index 788b4097..8c894036 100644 --- a/spells/Fire2.tex +++ b/spells/Fire2.tex @@ -3,9 +3,9 @@ {Wax}% Action {Fire}% Spheres {\roll{Wits}{Athletics}}% Resist with - {a fire becomes claws and grabs someone, inflicting \rollConv\ Damage on someone}% Description + {a fire becomes claws and grabs someone, inflicting \showDam\ Damage on someone}% Description { - A fire-source turns into a long arm with claws, and rakes anyone next to it for \rollConv~Damage. + A fire-source turns into a long arm with claws, and rakes anyone next to it for \showDam~Damage. } \spell{Toothless Fire}% Name diff --git a/spells/Fire3.tex b/spells/Fire3.tex index 88188c1c..1a0421a8 100644 --- a/spells/Fire3.tex +++ b/spells/Fire3.tex @@ -3,12 +3,12 @@ {Wax}% Action {Fire}% Spheres {\roll{Speed}{Athletics}}% Resist with - {up to \spellArea\ fires in the area take the form of a raging, red, bull, dealing \rollConv\ Damage to anyone near them}% Description + {up to \spellArea\ fires in the area take the form of a raging, red, bull, dealing \showDam\ Damage to anyone near them}% Description { Fires all around flare up, and take on the form of a fiery bull. The spell affects \spellArea\ steps in total, and this may represent a series of furnaces in a busy blacksmith's which vomit fires out to form a gigantic bull, or myriad candles during a guild ceremony, which create a stampede of regular-sized bulls. - Anyone `trampled' by the flames receives \rollConv\ Damage. + Anyone `trampled' by the flames receives \showDam\ Damage. After this, the flames recede to their regular size, but with much less fuel than they started with. Furnaces burn through their wood, and candles often burn down to a stump within that long second the spell lasts. } diff --git a/spells/Fire4.tex b/spells/Fire4.tex index de8bd960..320b7531 100644 --- a/spells/Fire4.tex +++ b/spells/Fire4.tex @@ -3,12 +3,12 @@ {Wax}% Action {Fire}% Spheres {\roll{Wits}{Vigilance}}% Resist with - {up to \spellArea\ fires, \spellRange\ away, explode in the form of dancing creatures, dealing \rollConv\ Damage to anyone nearby}% Description + {up to \spellArea\ fires, \spellRange\ away, explode in the form of dancing creatures, dealing \showDam\ Damage to anyone nearby}% Description { The caster sings the Festival of Fire song -- an ancient elvish incantation about not being invited to a gathering. All fires around \spellRange\ transform into dancing humanoids, spiralling around each other fast enough to tear themselves apart. Anyone standing in the way of the dance receives repeated fiery lacerations. - Anyone hit by the flames takes \rollConv\ Damage. + Anyone hit by the flames takes \showDam\ Damage. } diff --git a/spells/Mind2.tex b/spells/Mind2.tex index 9ca01722..2f61d2e6 100644 --- a/spells/Mind2.tex +++ b/spells/Mind2.tex @@ -17,8 +17,8 @@ {Wane}% Action {divergent}% Enhancements {\roll{Wits}{Academics}}% Resist with - {the target loses \arabic{spelllevel}~\glspl{ap} and \rollConv~\glspl{fp}}% Description + {the target loses \arabic{spelllevel}~\glspl{ap} and \showDam~\glspl{fp}}% Description { The caster explains to the target their imminent death. - The target immediately loses \rollConv\ \glspl{fp} and takes on a persistent -\arabic{spelllevel} penalty to Mind Attributes and \glspl{ap}. + The target immediately loses \showDam\ \glspl{fp} and takes on a persistent -\arabic{spelllevel} penalty to Mind Attributes and \glspl{ap}. } diff --git a/spells/Water1.tex b/spells/Water1.tex index c74f1603..b585a787 100644 --- a/spells/Water1.tex +++ b/spells/Water1.tex @@ -9,6 +9,6 @@ Torches struggle to keep aflame as an entire room can become soaked. - When cast on a mostly-liquid creature, such as oozes, this spell deals \rollConv~Damage. + When cast on a mostly-liquid creature, such as oozes, this spell deals \showDam~Damage. } diff --git a/spells/Water3.tex b/spells/Water3.tex index d227cc94..6cd53b60 100644 --- a/spells/Water3.tex +++ b/spells/Water3.tex @@ -10,6 +10,6 @@ The mist forms ghostly aparitions which impede vision. Ranged attacks and some Vigilance checks take a minus \arabic{spelllevel} penalty. - When cast on acidic creatures, the spell inflicts \rollConv\ Damage. + When cast on acidic creatures, the spell inflicts \showDam\ Damage. } diff --git a/spells/fateAir4.tex b/spells/fateAir4.tex index aec7bfca..2056e204 100644 --- a/spells/fateAir4.tex +++ b/spells/fateAir4.tex @@ -3,10 +3,10 @@ {Wane}% Action {duplicated,detailed,divergent}% Enhancements {\roll{Charisma}{Vigilance}}% Resist with - {A stinking cloud covers \spellArea, inflicting \arabic{spelllevel}~\glspl{fatigue} to anyone in the area breathing it in, and removing \rollConv~\glspl{fp}}% Description + {A stinking cloud covers \spellArea, inflicting \arabic{spelllevel}~\glspl{fatigue} to anyone in the area breathing it in, and removing \showDam~\glspl{fp}}% Description { The caster simply laughs like a spoilt child done something awful. A fetid mist in the form of Sylf, mother of monsters, envelops \spellArea\ targets. - They immediately lose \rollConv~\glspl{fp}, and anyone breathing the mist in gains \arabic{spelllevel}~\glspl{fatigue}. + They immediately lose \showDam~\glspl{fp}, and anyone breathing the mist in gains \arabic{spelllevel}~\glspl{fatigue}. } -- GitLab