Monster spell
In NetHack, a monster spell is a category of spell that spell-casting monsters can make use of. Some are unique to this category, while others share properties with other magical items and spells that the player character can use.
Contents
Description
Hostile monsters that have spell-casting attacks can cast one of three categories of spell: mage spells, clerical spells and ray-type spells.[1][2] No monster will cast spells in more than one category. Ray spells are handled differently compared to mage and clerical spells - see the section below for more information.[3] Monsters that are cancelled can no longer cast any spells.[4]
For non-ray spells, the monster must be at least level one to cast spells, and spells are selected randomly based on that monster's level (represented in calculations as ML) and spellcasting type, with their level providing the cap for what spells of that type are eligible.[5][6] Monsters that cast spells from a given category can use any spell in that category if it is available at or below their current level, and will only cast a particular spell once every (10 − ML) turns, with a minimum "cooldown" of two turns between attempts.[7] Monsters that attempt to cast a spell while it is on cooldown will produce a "curse" message.[8]
Once the conditions for being able to cast a given spell, there is a 2⁄ML chance that the spell will fail and produce a different non-"curse" message, with the chance of failure multiplied by 5 if that monster is confused.[9] Otherwise, the spell is cast and its effects are applied: damaging spells will deal (ML⁄2 + 1)d6 of damage, while damaging spells from an attack that has dice specified in the routine will deal (ML⁄2 + x)dy damage, where (x, y) is the amount and size of the damage dice[10][11] - for example, a level 14 Angel using the magic missile spell at melee range (ATTK(AT_MAGC, AD_MAGM, 2, 6)
) will deal (14⁄2 + 2)d6 in damage, or 9d6.[12] Monster spell damage is always halved by the half spell damage property if you possess it.[13]
Hostile monsters that are scared (e.g. by Elbereth) or are not adjacent to you will only use non-directed spells.[3] If a hostile monster uses a directed spell at you, but you are on a different square than the monster expected, the spell will fail and produce a "curse" message. Monsters will not cast spells of either type if they are more than 7 squares away from you.[14] Peaceful or tame monsters will not cast directed spells at you unless under the effects of conflict.
List of spells
In the tables below, Min. level refers to the minimum level required for the monster to be able to cast that spell. The monsters that use the type of spells in each table are listed in the two Monsters column. In the Monsters (at lowest level) column, we assume that the monster is generated at its base level minus one, which is the lowest possible level at which a monster will be randomly generated. In the Monsters (at highest level) column, we assume that the monster is generated at its base level times 1.5, which is the highest possible level at which a monster will be randomly generated. In both cases, each named monster can cast the spell on the same row as their name and every spell above it.
As an example, a golden naga is guaranteed to cast psi bolt, cure self, haste self, stun, disappear, drain strength and destroy armor. They may be able to cast curse items and aggravate, if they are generated at a high enough level. Monsters at their maximum level can still gain the ability to cast other spells below their names in the table if they gain levels through other means, e.g. potions of gain level.
Mage spells
The list of available mage spells is as follows:[1]
Spell | Min. level | Directed | Monsters (at lowest level) | Monsters (at highest level) |
---|---|---|---|---|
Psi bolt | 1 | Y | kobold shaman | |
Cure self | 2 | barrow wight, orc shaman, gnomish wizard | ||
Haste self | 3 | kobold shaman | ||
Stun | 4 | Y | guide, apprentice | barrow wight, orc shaman, gnomish wizard |
Disappear | 5 | |||
Drain strength | 7 | Y | guide, apprentice | |
Destroy armor | 9 | Y | golden naga, lich, nalfeshnee | |
Curse items | 11 | Y | demilich | |
Aggravate | 14 | ki-rin, titan, Ixoth, Dark One, Minion of Huhetotl, Thoth Amon, Chromatic Dragon, Nalzok | golden naga | |
Summon nasties | 16 | master lich, Archon, Neferet the Green | lich, nalfeshnee | |
Touch of death | 21 | Y | arch-lich, Orcus, Dispater, Demogorgon | demilich, master lich, arch-lich, ki-rin, titan, Archon, Ixoth, Dark One, Minion of Huhetotl, Thoth Amon, Chromatic Dragon, Nalzok, Neferet the Green, Orcus, Dispater, Demogorgon |
Double Trouble | 19/unique | Wizard of Yendor | Wizard of Yendor |
Peaceful or tame monsters that cast mage spells will only use haste self, cure self and disappear, and will only cast the lattermost spell if you can currently see invisible.
The following information pertains to an upcoming version (3.7.0). If this version is now released, please verify that the information below is still accurate, then update the page to incorporate it.
As part of a rework to make them better emulate their inspirations in the Furies, commit f930a12f gives erinyes the ability to cast mage monster spells among the traits and properties they can gain if a character commits enough alignment abuse.Clerical spells
The list of available clerical spells is as follows:[2]
Spell | Min. level | Directed | Monsters (at lowest level) | Monsters (at highest level) |
---|---|---|---|---|
Open wounds | 1 | Y | ||
Cure self | 2 | |||
Confuse | 3 | Y | abbot, acolyte | |
Paralyze | 5 | Y | ||
Blind | 6 | Y | abbot, acolyte | |
Summon insects | 9 | |||
Curse items | 10 | Y | aligned priest | |
Lightning | 12 | Y | ||
Fire pillar | 13 | Y | ||
Geyser | 14 | Y | high priest, Grand Master, Master Kaen, Arch Priest | aligned priest, high priest, Grand Master, Master Kaen, Arch Priest |
Peaceful or tame monsters that cast clerical spells will only use cure self.
Ray-type spells
Ray-type spells are non-directed and can be cast by monsters with the corresponding attack type and can be used at melee-range, or from a distance if the caster is lined up with its perceived target.[3] At a distance, the spell behaves the same as a wand or breath weapon; when cast at an adjacent square, they act as melee attacks that deal damage based on the caster's level like other spells, and cannot be blocked by reflection.[10] Each of the ray spells can be nullified with the appropriate resistance property, and half spell damage applies. Ray spells that are cast unsuccessfully do not produce "curse" messages.
The ray-type spells are as follows:
- Fireball: This attack is present in the code, but is currently unused by any monsters. It appears as a fireball ray when used at a distance, and leaves you "enveloped in flames" at melee range. Fire resistance blocks the spell in either form.[15]
- Cone of cold: This is used by Asmodeus.[16] It appears as a frost ray when used at a distance, and leaves you "covered in frost" if used at melee range. Cold resistance blocks the spell completely in either form.[17]
- Magic missile: This is used by Angels, Yeenoghu and the Oracle[12][18][19] - the Oracle only uses the melee-range version as a passive in response to a melee attack from your character. When used at a distance, it appears as a magic missile ray, and when used in melee range, it appears as a "shower of missiles". Magic resistance completely blocks the attack in either form.[20]
The following information pertains to an upcoming version (3.7.0). If this version is now released, please verify that the information below is still accurate, then update the page to incorporate it.
Per commit 6b8079a1, each of the ray spells have secondary effects:
Strategy
For non-ray spells, a monster subjected to any form of life drain can lose its ability to cast higher-level spells; however, many higher-level spellcasters are immune, and those that aren't generally have a very high MR score. Stormbringer and the Staff of Aesculapius bypass monster MR, with the caveat that it is possible to kill a non-resistant target before any effect on their spellcasting is noticeable.
Messages
- <Monster> points at you, then curses.
- <Monster> points all around, then curses.
- The monster attempted to cast a spell before they were able to do so.
- <Monster> points and curses in your general direction.
- As above, but the monster cannot see you.
- <Monster> points and curses at your displaced image.
- As above, but you are displaced.
- You hear a mumbled curse.
- As above, but you cannot see the monster.
- The air crackles around <monster>.
- The monster cast a spell when able to do so, but the spell failed.
- <Monster> casts a spell!
- <Monster> casts a spell at you!
- The monster successfully cast a spell.
- <Monster> casts a spell at a spot near you!
- As above, but the monster cannot see you.
- <Monster> casts a spell at your displaced image!
- As above, but you are displaced.
- You are hit by a shower of missiles!
- A monster used a magic missile attack against you.
- The missiles bounce off!
- As above, but you have magic resistance.
- You are covered in frost!
- You were hit by the cold ray spell.
- You are enveloped in flames!
- You were hit by the fire ray spell.
Variants
SLASH'EM
SLASH'EM has many new spellcasting monsters, including fire vampires that use the previously-unimplemented fire ray spell. It also introduces two new mage spells:
- Call undead, which can be used only by liches
- Create pool, which can be used by monsters of level 13 or higher
GruntHack
In GruntHack, mages and other similar casters have the ability to cast the same spells available to the player, with their spell repertoire dependent on their level. This turns weaker hostile casters such as gnomish mages (which replace gnomish wizards) from virtual pushovers to fairly dangerous threats, and stronger casters such as liches and vampire mages become even more powerful threats that can deal significant damage with the spell of acid blast or even zap the spell of cancellation at you.
SporkHack
In SporkHack, some new monster spells are added:
- Mage spells
- Clerical spells
Some existing spells also have changes made:
- The touch of death deals 8d6 damage against a target and drains maximum HP; magic resistance and/or half spell damage can reduce the HP and max HP damage.
- The destroy armor spell erodes a target piece of armor, removing erosion-proofing if necessary even from inherently proofed materials such as silver. One to three levels of erosion can occur per casting, with magic resistance lowering the armor damage to one level per casting - an item eroded by any means while already at maximum erosion is destroyed instead.
dNetHack
In dNetHack, monster spellcasting is divided into three broad categories: magical casting, divine casting, and psionic casting. In addition to basic spell lists, many spellcasting monsters also have specific lists of spells that they can cast with varying probabilities - these lists are consistent for a given monster type, and vary between monster types; monster spell type is a factor for interactions with various items and madnesses. Most regular spellcasting monsters have a cooldown on their ability to cast spells frequently, while much stronger casters (including most unique spellcasters) are able to cast without any cooldown. A list of monster spells and the monsters that can cast them is available in the linked article above.
Most directed monster spells can be cast against targets at a distance compared to NetHack, where they can only be cast against adjacent targets.
FIQHack
In FIQHack, monsters use the same spellcasting system as the player, and can also read spellbooks to acquire new spells. This makes higher-level spellcasting monsters much more dangerous. Low-level spellcasting monsters (e.g., kobold shamans, orc shamans, gnomish wizards) no longer approach you due to lacking melee ability, and will instead attempt to line up with you in order to cast spells.
EvilHack
In EvilHack, many new monster spells are added, including several from SporkHack:
- Mage spells
- Clerical spells
- Other spells
Some existing spells also have changes made:
- The cure self spell is not directly altered, but the spell is made a priority if the spellcasting monster's hit points drop to a life-threatening level.
- Similar to SporkHack, the touch of death deals 8d6 damage against a target with magic resistance and drains maximum HP, and both types of HP loss can be reduced with half spell damage - if the target lacks magic resistance and is also not immune to death magic, they are instantly killed.
- As in SporkHack, the destroy armor spell erodes a target piece of armor, destroying it upon inflicting enough erosion - it can also remove erosion-proofing from inherently proofed materials such as dragonhide and mithril. One to three levels of erosion can occur per casting, with magic resistance lowering the armor damage to one level per casting. Blessed armor has a small chance of resisting, while crystal plate mail, quest artifact armor and The Hand of Vecna are immune.
- The geyser spell can rust any unprotected worn armor, and certain monsters will cast an "avalanche" variation that deals cold damage and affects inventory.
- The summon insects spell will create hostile arachnid or centipede monsters instead of insects if cast by Lolth or a drow monster.
Several new spellcasting monsters are added, and some existing spellcasters also have their attack routines adjusted to make them stronger; the fireball spell is also given to a few monsters, all of them major demons. Monsters can use their spells in combat against other monsters, but tame and peaceful monsters will not cast any spell that summons or aggravates monsters. Polymorphing into a spellcasting monster and attacking in melee will cast a random monster spell, with the same attack order as that monster would have normally; the spellcasting fails if you do not have enough power for the selected spell.
See also
References
- ↑ 1.0 1.1 src/mcastu.c in NetHack 3.6.7, line 9: list of mage spells
- ↑ 2.0 2.1 src/mcastu.c in NetHack 3.6.7, line 25: list of clerical spells
- ↑ 3.0 3.1 3.2 src/mcastu.c in NetHack 3.6.7, line 841: buzzmu() handles ray-type spells, and is called if monster is at range
- ↑ src/mcastu.c in NetHack 3.6.7, line 233
- ↑ src/mcastu.c in NetHack 3.6.7, line 87: cases for randomly selected mage spells
- ↑ src/mcastu.c in NetHack 3.6.7, line 142: cases for randomly selected cleric spells
- ↑ src/mcastu.c in NetHack 3.6.7, line 239
- ↑ src/mcastu.c in NetHack 3.6.7, line 53
- ↑ src/mcastu.c in NetHack 3.6.7, line 257
- ↑ 10.0 10.1 src/mcastu.c in NetHack 3.6.7, line 288: calculations for monster spells cast with damage dice
- ↑ src/mcastu.c in NetHack 3.6.7, line 290: calculations for monsters spells cast without dice
- ↑ 12.0 12.1 src/monst.c in NetHack 3.6.7, line 1010
- ↑ src/mcastu.c in NetHack 3.6.7, line 292
- ↑ src/monmove.c in NetHack 3.6.7, line 586
- ↑ src/mcastu.c in NetHack 3.6.7, line 298
- ↑ src/monst.c in NetHack 3.6.7, line 2546
- ↑ src/mcastu.c in NetHack 3.6.7, line 307
- ↑ src/monst.c in NetHack 3.6.7, line 2212
- ↑ src/monst.c in NetHack 3.6.7, line 2497
- ↑ src/mcastu.c in NetHack 3.6.7, line 315