From fc6c7d70be970557ef1e0ac0c39a85c2bde1360d Mon Sep 17 00:00:00 2001 From: Pasi Kallinen Date: Thu, 2 Apr 2026 12:23:42 +0300 Subject: [PATCH] Give spellcast attack to monster priest and wizard Acolytes grow up to priests, apprentices to wizards, but they did not cast spells after they grew up. Give the monster priests and wizards the same spellcasting attack as all the other priest and wizard -type monsters. This lack of magical ability goes back at least to 3.3.1; I didn't bother checking back further. --- doc/fixes3-7-0.txt | 1 + include/monsters.h | 8 ++++---- 2 files changed, 5 insertions(+), 4 deletions(-) diff --git a/doc/fixes3-7-0.txt b/doc/fixes3-7-0.txt index 506dcdd5a..1d40de239 100644 --- a/doc/fixes3-7-0.txt +++ b/doc/fixes3-7-0.txt @@ -1591,6 +1591,7 @@ change some command keys, 'v' is now chronicle, 'V' is versionshort, one orc-town shaman has a higher level, affecting spellcasting hero has a small chance of catching items thrown at them wizard mode: history menu for #wizwish and WIZKIT +monster priests and wizards did not cast spells Fixes to 3.7.0-x General Problems Exposed Via git Repository diff --git a/include/monsters.h b/include/monsters.h index bf4d30c3d..c7605d3b6 100644 --- a/include/monsters.h +++ b/include/monsters.h @@ -3395,8 +3395,8 @@ /* monster priests are separate monsters (above; "aligned cleric") */ MON(NAMS("priest", "priestess", "cleric"), S_HUMAN, LVL(10, 12, 10, 2, 0), G_NOGEN, - A(ATTK(AT_WEAP, AD_PHYS, 1, 6), - NO_ATTK, NO_ATTK, NO_ATTK, NO_ATTK, NO_ATTK), + A(ATTK(AT_WEAP, AD_PHYS, 1, 6), ATTK(AT_MAGC, AD_CLRC, 0, 0), + NO_ATTK, NO_ATTK, NO_ATTK, NO_ATTK), SIZ(WT_HUMAN, 400, MS_HUMANOID, MZ_HUMAN), 0, 0, M1_HUMANOID | M1_OMNIVORE, M2_NOPOLY | M2_HUMAN | M2_STRONG | M2_COLLECT, @@ -3451,8 +3451,8 @@ 12, HI_DOMESTIC, VALKYRIE), MON(NAM("wizard"), S_HUMAN, LVL(10, 12, 10, 3, 0), G_NOGEN, - A(ATTK(AT_WEAP, AD_PHYS, 1, 6), - NO_ATTK, NO_ATTK, NO_ATTK, NO_ATTK, NO_ATTK), + A(ATTK(AT_WEAP, AD_PHYS, 1, 6), ATTK(AT_MAGC, AD_SPEL, 0, 0), + NO_ATTK, NO_ATTK, NO_ATTK, NO_ATTK), SIZ(WT_HUMAN, 400, MS_HUMANOID, MZ_HUMAN), 0, 0, M1_HUMANOID | M1_OMNIVORE, M2_NOPOLY | M2_HUMAN | M2_STRONG | M2_COLLECT | M2_MAGIC,