Monster difficulty

From NetHackWiki
Revision as of 15:34, 21 January 2018 by Phol ende wodan (talk | contribs) (Difficulty algorithm: fix some confusing text)
Jump to navigation Jump to search

A monster's difficulty (also known as its MONSTR) is a number from 1 to 57 which represents the game's idea of how tough a monster is. It is based on the monster's level, then adjusted for any special properties the monster has which might make it extra-difficult. The raw values can be seen in monstr.c.

A user has suggested improving this page or section as follows:

"What adjustments are these?"

A monster is "too strong" to be randomly generated when its difficulty is greater than the average of your experience level and your dungeon level. It is "too weak" to be randomly generated when its difficulty is less than your dungeon level divided by 6, rounded down. (For this purpose, once you have the Amulet of Yendor your dungeon level is considered to be that of the Sanctum, and in the endgame to be the depth of the Sanctum plus half your experience level.)

The level of your god's appreciation of a sacrificed corpse is also dependent on the corpse's Difficulty (and not on the late monster's experience level). If your god is angry, you must sacrifice a monster corpse of difficulty 7 (11 if you are chaotic) or greater in order to mollify the god.

Most of the less common mechanisms of monster generation do not have similar limits.

Difficulty algorithm

Start by setting the difficulty to the monster's base level, as defined directly in monst.c.[1]

If the monster's base level is greater than 49 (meaning that it's either a mail daemon or a demon lord), instead set the initial difficulty to (base level - 6) / 2.

Next, compute a bonus based on properties of this monster:

  • Start at 0.
  • Add 1 if the monster generates in small groups.
  • Add 2 if the monster generates in large groups.
  • Add 1 if the monster is capable of ranged attacks: whether it has any weapon, spellcasting, gaze, spit, or breath attacks.
  • Add 1 if the monster's base AC is between 0 and 3, inclusive.
  • Otherwise add 2 if the monster's base AC is -1 or lower.
  • Add 1 if the monster's speed is 18 or higher.
  • For each attack the monster has, add together all the following bonuses:
    • Add 1 if the attack is non-passive.
    • Add 1 if the attack is arcane spellcasting (AT_MAGC).
    • Add 1 if the monster is strong and the attack is a weapon attack (AT_WEAP).
    • Add 2 if the attack has a damage type of AD_DRLI (drain life), AD_STON (stoning), AD_DRST (strength poison), AD_DRDX (dexterity poison), AD_DRCO (consitution poison), or AD_WERE (lycanthropy).
    • Add 1 if the damage type is none of the above six types and is also not AD_PHYS (physical damage), and the monster is not a grid bug.
    • Add 1 if the maximum attack damage for this attack is 24 or higher.
  • Subtract 2 if the monster is a leprechaun.[2]

Then, modify difficulty based on what the bonus worked out to be:

  • If the total bonus equals 0, subtract 1 from difficulty.
  • If the total bonus is 6 or higher, add half of the bonus, rounded down, to difficulty.
  • Otherwise, if the total bonus is between 1 and 5, add 1 + one-third of the bonus, rounded down, to difficulty.

Finally, if difficulty is negative (only possible with very weak monsters like lichens), set it to 0.

Monsters

This is a list of monsters sorted by difficulty, then by experience value.

This table was generated with the use of a modified version of makedefs to calculate experience values as well, and is believed by the author to be accurate. If there are discrepancies between these and those listed in the articles, please correct the article.

Name Experience Difficulty
Demogorgon 3297 57
Asmodeus 3225 53
Baalzebub 2333 45
Dispater 1923 40
Geryon 1625 36
Orcus 1445 36
Pestilence 1431 34
Famine 1431 34
Death 1431 34
Wizard of Yendor 1411 34
Master Kaen 1095 31
Yeenoghu 1073 31
high priest 1054 30
Grand Master 1053 30
Arch Priest 876 30
arch-lich 915 29
Juiblex 899 26
Archon 730 26
mail daemon 1 26
Medusa 634 25
Master of Thieves 588 24
Cyclops 662 23
Neferet the Green 593 23
Norn 588 23
Lord Sato 588 23
King Arthur 588 23
Chromatic Dragon 586 23
Nalzok 585 23
Minion of Huhetotl 585 23
kraken 1574 22
Croesus 746 22
mastodon 611 22
Shaman Karnov 583 22
Pelias 583 22
Orion 583 22
Lord Carnarvon 583 22
Hippocrates 583 22
Twoflower 581 22
Thoth Amon 547 22
Ixoth 545 22
iron golem 545 22
ki-rin 552 21
master lich 494 21
balrog 575 20
titan 553 20
yellow dragon 535 20
white dragon 535 20
silver dragon 535 20
red dragon 535 20
orange dragon 535 20
green dragon 535 20
gray dragon 535 20
blue dragon 535 20
black dragon 535 20
Master Assassin 503 20
Dark One 498 20
storm giant 536 19
Ashikaga Takauji 488 19
Lord Surtur 486 19
Angel 485 19
master mind flayer 416 19
Vlad the Impaler 493 18
jabberwock 489 18
glass golem 409 18
demilich 376 18
minotaur 504 17
Scorpius 474 17
purple worm 474 17
Nazgul 376 17
pit fiend 422 16
Olog-hai 325 16
guardian naga 295 16
stone golem 345 15
nalfeshnee 341 15
baluchitherium 331 15
sandestin 308 15
aligned priest 294 15
shopkeeper 287 15
vampire lord 399 14
skeleton 359 14
shade 357 14
ice devil 351 14
disenchanter 301 14
hell hound 290 14
guard 284 14
captain 277 14
prisoner 272 14
trapper 270 14
lich 269 14
frost giant 296 13
ettin 291 13
Oracle 286 13
bone devil 285 13
baby yellow dragon 272 13
baby white dragon 272 13
baby silver dragon 272 13
baby red dragon 272 13
baby orange dragon 272 13
baby green dragon 272 13
baby gray dragon 272 13
baby blue dragon 272 13
baby black dragon 272 13
titanothere 267 13
mind flayer 263 13
water troll 246 13
nurse 245 13
golden naga 239 13
vampire 327 12
Aleax 298 12
hezrou 267 12
clay golem 249 12
ghost 238 12
queen bee 225 12
watch captain 221 12
valkyrie 221 12
tourist 221 12
samurai 221 12
rogue 221 12
lieutenant 221 12
knight 221 12
black pudding 221 12
barbarian 221 12
archeologist 221 12
wizard 216 12
ranger 216 12
priestess 216 12
priest 216 12
healer 216 12
elf 216 12
cavewoman 216 12
caveman 216 12
lurker above 214 12
ice troll 205 12
rock troll 198 12
umber hulk 194 12
salamander 159 12
fire giant 254 11
monk 211 11
winged gargoyle 207 11
water demon 196 11
Elvenking 196 11
ogre king 194 11
doppelganger 191 11
zruty 186 11
giant mimic 186 11
couatl 180 11
marilith 177 11
vrock 176 11
xorn 139 11
elf-lord 123 11
electric eel 1129 10
flesh golem 186 10
barbed devil 179 10
hill giant 174 10
erinys 158 10
fire vortex 142 10
fire elemental 134 10
black naga 132 10
water elemental 126 10
earth elemental 126 10
air elemental 126 10
sergeant 118 10
giant mummy 116 10
cobra 90 10
long worm 169 9
horned devil 147 9
xan 120 9
wumpus 118 9
stalker 113 9
large mimic 113 9
giant zombie 113 9
baby purple worm 113 9
baby long worm 113 9
steam vortex 112 9
glass piercer 106 9
shark 104 9
winter wolf 102 9
hell hound pup 102 9
energy vortex 101 9
warhorse 97 9
troll 97 9
ogre lord 97 9
sasquatch 95 9
pit viper 93 9
quantum mechanic 92 9
mountain centaur 88 9
green slime 164 8
cockatrice 149 8
stone giant 127 8
giant 127 8
succubus 122 8
incubus 122 8
wraith 120 8
djinni 97 8
gargoyle 95 8
wood golem 92 8
warg 92 8
small mimic 92 8
ettin mummy 92 8
shocking sphere 91 8
freezing sphere 91 8
flaming sphere 91 8
ochre jelly 88 8
dwarf king 83 8
red naga 82 8
python 82 8
pyrolisk 82 8
watchman 78 8
soldier 78 8
Grey-elf 78 8
leocrotta 76 8
gelatinous cube 76 8
carnivorous ape 76 8
tiger 73 8
guide 71 8
apprentice 71 8
acolyte 71 8
rust monster 70 8
scorpion 67 8
abbot 66 8
forest centaur 64 8
gremlin 61 8
giant eel 1075 7
chickatrice 136 7
owlbear 94 7
barrow wight 90 7
tengu 76 7
large dog 76 7
large cat 76 7
ice vortex 74 7
black light 74 7
leather golem 73 7
human mummy 73 7
ettin zombie 73 7
elf mummy 73 7
crocodile 73 7
chameleon 73 7
mumak 68 7
warrior 66 7
vampire bat 66 7
thug 66 7
roshi 66 7
page 66 7
orc-captain 66 7
ninja 66 7
winter wolf cub 64 7
giant spider 64 7
student 61 7
ogre 61 7
neanderthal 61 7
hunter 61 7
horse 61 7
Green-elf 61 7
chieftain 61 7
attendant 61 7
yeti 59 7
panther 59 7
lynx 59 7
werewolf 56 7
water moccasin 48 7
quasit 36 7
iron piercer 63 6
werewolf 61 6
spotted jelly 61 6
gnome king 61 6
quivering blob 59 6
wolf 56 6
piranha 56 6
orc mummy 56 6
lizard 56 6
gold golem 56 6
giant beetle 56 6
dwarf mummy 56 6
brown pudding 56 6
dust vortex 54 6
white unicorn 51 6
gray unicorn 51 6
dwarf lord 51 6
black unicorn 51 6
plains centaur 49 6
snake 48 6
Woodland-elf 46 6
raven 46 6
Kop Kaptain 46 6
rope golem 44 6
jaguar 44 6
ape 41 6
soldier ant 37 6
fire ant 34 6
blue jelly 45 5
yellow light 44 5
housecat 44 5
dog 44 5
dingo 44 5
human zombie 41 5
gnome mummy 41 5
orc shaman 38 5
gnomish wizard 38 5
violet fungus 34 5
jellyfish 34 5
Uruk-hai 33 5
Mordor orc 33 5
Kop Lieutenant 33 5
bugbear 33 5
killer bee 31 5
wood nymph 28 5
water nymph 28 5
mountain nymph 28 5
lemure 28 5
ghoul 28 5
leprechaun 59 4
fog cloud 38 4
woodchuck 35 4
rock mole 35 4
imp 33 4
gnome lord 33 4
pony 31 4
straw golem 28 4
rock piercer 28 4
red naga hatchling 28 4
paper golem 28 4
kobold mummy 28 4
guardian naga hatchling 28 4
gray ooze 28 4
golden naga hatchling 28 4
elf zombie 28 4
black naga hatchling 28 4
baby crocodile 28 4
kobold shaman 27 4
Kop Sergeant 22 4
hill orc 22 4
dwarf 22 4
giant ant 20 4
centipede 19 4
wererat 17 4
werejackal 17 4
rothe 17 4
rabid rat 17 4
monkey 17 4
wererat 22 3
werejackal 22 3
kobold lord 22 3
giant bat 22 3
little dog 20 3
kitten 20 3
homunculus 19 3
orc zombie 17 3
iguana 17 3
floating eye 17 3
dwarf zombie 17 3
orc 13 3
Keystone Kop 13 3
hobgoblin 13 3
gnome 13 3
manes 8 3
garter snake 8 3
cave spider 8 3
shrieker 28 2
large kobold 13 2
hobbit 13 2
gas spore 12 2
red mold 9 2
green mold 9 2
brown mold 9 2
acid blob 9 2
yellow mold 8 2
gnome zombie 8 2
giant rat 8 2
gecko 8 2
coyote 8 2
human 6 2
bat 6 2
kobold 6 1
goblin 6 1
lichen 4 1
fox 4 1
sewer rat 1 1
newt 1 1
kobold zombie 1 1
jackal 1 1
grid bug 1 1

References

  1. util/makedefs.c in NetHack 3.6.0, line 2117
  2. util/makedefs.c in NetHack 3.6.0, line 2156: This is evidently to compensate for leprechauns' base level being artificially inflated, and to cancel out the 2 points they get from their gold-stealing attack. It is unclear why the bonus is not simply set to 0 here.

This page is based on a spoiler by Dylan O'Donnell. The original license is:

Redistribution, copying, and editing of these spoilers, with or without modification, are permitted provided that the following conditions are met:

  1. The original contributors to any spoiler must continue to be credited.
  2. Any modifications to the spoiler must be acknowledged and credited.

This page may need to be updated for the current version of NetHack.

It may contain text specific to NetHack 3.4.3. Information on this page may be out of date.

Editors: After reviewing this page and making necessary edits, please change the {{nethack-343}} tag to the current version's tag or {{noversion}} as appropriate.