Vampire (monster attribute)
The vampire is a form of monster attribute in NetHack and some of its variants that is governed by a pointer or monster attribute flag, and designates monsters with the attribute as being vampiric.
A user has suggested improving this page or section as follows:
"Expand and tailor main section to reflect what does and does not use the pointer, and add historical information."
Description
In NetHack, vampires are defined using the pointer is_vampire(ptr) in mondata.h and consist of all monsters from the vampire monster class:[1]
- V vampire
- V vampire lord
- V Vlad the Impaler
- Deferred monsters:
All vampires are undead that are highly averse to silver. Vampires lack a reflection and are thus unaffected by applied mirrors.[2][3] A hero standing on any altar will scare vampires that approach them, similar to standing on Elbereth or a scroll of scare monster.[4]
Shapeshifting
Vampires are shapeshifters that can polymorph at will into vampire bats or fog clouds, while vampire lords and Vlad the Impaler can additionally shapeshift into wolves.[5][6] Vampires often turn into their animal forms when outside of the hero's sight, and shift into fog cloud form to flow under locked or inaccessible doors[7]—they will also shift to their other forms while healthy, and shift back to their base form if their HP is low enough.[8] Polymorphing a vampire will cause them to take on one of their other forms rather than become a new monster, unless they are a monster that became a vampire via polymorphitis.[9] Vampires retain all of their traits while they are shifted into other forms unless a trait from that form would override a base trait, e.g. a normally-inediate vampire can eat food while in vampire bat form, and is still weak to silver.
If a vampire is killed in any of their shifted forms, including by stoning, they will resurrect in vampire form.[10] Vlad the Impaler will not shapeshift if he is carrying the Candelabrum of Invocation.[11]
Polymorphing into a vampire
A hero that is polymorphed into a vampire of any kind can use the #monster extended command to shift into vampire bat or fog cloud form, or wolf form if they are a vampire lord:[12][13][14][15][16] the form is chosen at random, and polymorph control allows them to choose the desired form or decline; once transformed, they cannot shift back since the ability is tied to the vampire form.
Heroes polymorphed into the form of any vampire monster are warned of any human or elf monsters on the current level.[17][18] When engraving in their base form, they will "scrawl in blood" rather than "write in the dust". A hero in vampire form will be referred to as "dark lady" or "dark lord" by shopkeepers.[19]
The following information pertains to an upcoming version (NetHack 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 a27ca52b, a hero polymorphed into a vampire that shifts into bat or fog cloud form can use the #monster command in those forms to shapeshift again.Messages
- You don't have a reflection.
- You applied a mirror at yourself while in the form of a vampire, including being shifted into an animal or fog cloud from that form.
- <The vampire> doesn't have a reflection.
- You applied a mirror at a vampire, including one shifted into animal or fog cloud form.
Variants
SLASH'EM
In SLASH'EM, vampires are defined by the M2_VAMPIRE monster attribute flag in monst.c, and the flag is applied to the vampire bat monsters along with all new and returning monsters in the vampire monster class.[20]
dNetHack
In dNetHack, notdNetHack and notnotdNetHack, vampires are defined by the MA_VAMPIRE monster attribute flag in monst.c—these variants also apply the flag to the vampire bat as in SLASH'EM.
dNetHack, notdNetHack and notnotdNetHack add the following vampiric monsters:
- l lucksucker
- v blood shower
- V vampire lady
- V Mina Harker
- V Ilona Szilagy
- V Carmilla
- Defunct and deferred monsters
- notdNetHack and notnotdNetHack
References
- ↑ include/mondata.h in NetHack 3.6.7, line 198
- ↑ src/apply.c in NetHack 3.6.7, line 942
- ↑ src/apply.c in NetHack 3.6.7, line 1049
- ↑ src/monmove.c in NetHack 3.6.7, line 154
- ↑ src/mon.c in NetHack 3.6.7, line 3379
- ↑ src/mon.c in NetHack 3.6.7, line 3385
- ↑ src/mon.c in NetHack 3.6.7, line 3340
- ↑ src/mon.c in NetHack 3.6.7, line 3319
- ↑ src/mon.c in NetHack 3.6.7, line 3849
- ↑ src/mon.c in NetHack 3.6.7, line 2190:
if (!vamp_stone(mdef))is used to exclude shifted vampires from instant death by stoning - ↑ src/mon.c in NetHack 3.6.7, line 3375: If he does not have the Candelabrum, Vlad falls through to the vampire lord case
- ↑ src/cmd.c in NetHack 3.6.7, line 722
- ↑ src/polyself.c in NetHack 3.6.7, line 396
- ↑ src/polyself.c in NetHack 3.6.7, line 535
- ↑ src/polyself.c in NetHack 3.6.7, line 788
- ↑ src/polyself.c in NetHack 3.6.7, line 1530
- ↑ src/polyself.c in NetHack 3.6.7, line 1867
- ↑ src/end.c in NetHack 3.6.7, line 517
- ↑ src/shk.c in NetHack 3.6.7, line 2739
- ↑ mondata.h in SLASH'EM 0.0.7E7F3, line 93