Monster difficulty

From NetHackWiki
(Redirected from Difficult)
Jump to navigation Jump to search

In NetHack, a monster's difficulty is a number from 1 to 57 which represents the game's idea of how tough a monster is. It loosely correlates with a monster's base level, but is often higher for monsters with special properties that might make them tougher.

Difficulty is primarily used in the normal mechanism of monster generation to decide whether a candidate monster is appropriately difficult for the player to encounter. 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.) Most of the less common mechanisms of monster generation do not have similar limits.

Other effects of difficulty include:

  • How much your god appreciates a sacrificed corpse (the dead monster's experience level doesn't matter).
  • Whether your god will be mollified, if they are angry. You must sacrifice a monster corpse of difficulty 7 or greater (11 or greater if you are chaotic) in order to mollify the god.
  • The type of offensive, defensive, or miscellaneous item a monster may receive.
  • Whether a monster considers itself weak enough to try polymorphing itself.

Difficulty values

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

The experience value is calculated assuming that monster level is equal to its base level, which in practice is not always the case. The steps to reproduce the calculation can be found here. If there are discrepancies between these experience values and those listed in the articles, please verify the former first and then correct the article if necessary.

Name Experience Difficulty
Demogorgon 12549 57
Asmodeus 12164 53
Baalzebub 8889 45
Dispater 6951 40
Geryon 5906 36
Orcus 5177 36
Pestilence 1311 34
Famine 1311 34
Death 1311 34
Wizard of Yendor 1291 34
Vlad the Impaler 1117 32
Yeenoghu 3850 31
Master Kaen 995 31
Grand Master 956 30
high cleric 954 30
Arch Priest 779 30
arch-lich 815 29
Juiblex 3135 26
Archon 654 26
Hippocrates 566 26
mail daemon 1 26
Medusa 554 25
Neferet the Green 546 25
Orion 536 24
Lord Carnarvon 536 24
Shaman Karnov 516 24
Pelias 511 24
Norn 511 24
Master of Thieves 511 24
Lord Sato 511 24
King Arthur 511 24
Cyclops 572 23
Chromatic Dragon 538 23
Nalzok 521 23
Minion of Huhetotl 521 23
kraken 1474 22
Croesus 626 22
Ixoth 500 22
Thoth Amon 499 22
mastodon 491 22
Twoflower 479 22
iron golem 455 22
ki-rin 472 21
master lich 426 21
balrog 479 20
titan 473 20
yellow dragon 460 20
white dragon 460 20
silver dragon 460 20
red dragon 460 20
orange dragon 460 20
green dragon 460 20
gray dragon 460 20
gold dragon 460 20
blue dragon 460 20
black dragon 460 20
Master Assassin 443 20
Dark One 438 20
storm giant 440 19
Angel 415 19
Ashikaga Takauji 413 19
Lord Surtur 411 19
master mind flayer 403 19
jabberwock 399 18
demilich 320 18
glass golem 313 18
minotaur 414 17
Scorpius 414 17
purple worm 399 17
Nazgul 324 17
guardian naga 262 17
pit fiend 344 16
Olog-hai 247 16
ice devil 310 15
nalfeshnee 286 15
stone golem 261 15
baluchitherium 247 15
aligned cleric 234 15
sandestin 230 15
shopkeeper 215 15
vampire leader 339 14
displacer beast 313 14
shade 309 14
skeleton 299 14
genetic engineer 291 14
disenchanter 253 14
hell hound 230 14
lich 225 14
trapper 213 14
guard 212 14
captain 205 14
prisoner 200 14
bone devil 240 13
mind flayer 236 13
frost giant 236 13
ettin 231 13
Oracle 226 13
baby yellow dragon 200 13
baby white dragon 200 13
baby silver dragon 200 13
baby red dragon 200 13
baby orange dragon 200 13
baby green dragon 200 13
baby gray dragon 200 13
baby gold dragon 200 13
baby blue dragon 200 13
baby black dragon 200 13
titanothere 195 13
nurse 190 13
golden naga 189 13
water troll 180 13
vampire 277 12
Aleax 238 12
hezrou 213 12
clay golem 183 12
black pudding 181 12
queen bee 180 12
ghost 178 12
wizard 176 12
cleric 176 12
lurker above 167 12
watch captain 161 12
valkyrie 161 12
tourist 161 12
samurai 161 12
rogue 161 12
lieutenant 161 12
knight 161 12
barbarian 161 12
archeologist 161 12
ice troll 160 12
ranger 156 12
healer 156 12
cave dweller 156 12
umber hulk 149 12
rock troll 144 12
salamander 127 12
fire giant 200 11
winged gargoyle 153 11
monk 151 11
giant mimic 150 11
water demon 148 11
couatl 148 11
elven monarch 142 11
ogre tyrant 140 11
barbed devil 139 11
doppelganger 137 11
marilith 135 11
zruty 132 11
vrock 128 11
xorn 91 11
elf-noble 75 11
electric eel 1101 10
long worm 195 10
flesh golem 132 10
hill giant 126 10
erinys 123 10
fire vortex 110 10
fire elemental 102 10
black naga 92 10
water elemental 78 10
earth elemental 78 10
air elemental 78 10
sergeant 70 10
giant mummy 68 10
cobra 66 10
shocking sphere 61 10
horned devil 111 9
xan 85 9
energy vortex 83 9
steam vortex 77 9
large mimic 73 9
wumpus 70 9
pit viper 69 9
winter wolf 67 9
hell hound pup 67 9
stalker 65 9
giant zombie 65 9
baby purple worm 65 9
glass piercer 64 9
shark 62 9
freezing sphere 61 9
flaming sphere 61 9
quantum mechanic 57 9
warhorse 55 9
troll 55 9
ogre leader 55 9
sasquatch 53 9
mountain centaur 52 9
green slime 140 8
cockatrice 129 8
amorous demon 92 8
stone giant 91 8
giant 91 8
wraith 90 8
barrow wight 87 8
ochre jelly 64 8
gargoyle 59 8
rust monster 55 8
djinni 55 8
red naga 52 8
python 52 8
pyrolisk 52 8
gelatinous cube 52 8
wood golem 50 8
warg 50 8
small mimic 50 8
ettin mummy 50 8
dwarf ruler 47 8
guide 46 8
apprentice 46 8
acolyte 46 8
abbot 46 8
watchman 42 8
soldier 42 8
scorpion 42 8
Grey-elf 42 8
leocrotta 40 8
carnivorous ape 40 8
tiger 37 8
gremlin 36 8
forest centaur 34 8
giant eel 1050 7
chickatrice 120 7
owlbear 64 7
ice vortex 49 7
black light 49 7
vampire bat 41 7
tengu 40 7
large dog 40 7
large cat 40 7
winter wolf cub 39 7
giant spider 39 7
mumak 38 7
leather golem 37 7
human mummy 37 7
ettin zombie 37 7
elf mummy 37 7
crocodile 37 7
chameleon 37 7
warrior 36 7
thug 36 7
roshi 36 7
page 36 7
orc-captain 36 7
ninja 36 7
werewolf 31 7
student 31 7
ogre 31 7
neanderthal 31 7
hunter 31 7
horse 31 7
chieftain 31 7
attendant 31 7
Green-elf 31 7
yeti 29 7
piranha 29 7
panther 29 7
lynx 29 7
water moccasin 28 7
quasit 24 7
soldier ant 22 7
spotted jelly 36 6
dust vortex 34 6
iron piercer 33 6
werewolf 31 6
gnome ruler 31 6
brown pudding 31 6
quivering blob 29 6
snake 28 6
white unicorn 27 6
gray unicorn 27 6
dwarf leader 27 6
black unicorn 27 6
wolf 26 6
raven 26 6
orc mummy 26 6
lizard 26 6
killer bee 26 6
gold golem 26 6
giant beetle 26 6
dwarf mummy 26 6
baby long worm 26 6
plains centaur 25 6
Woodland-elf 22 6
Kop Kaptain 22 6
rope golem 20 6
jaguar 20 6
fire ant 19 6
ape 17 6
yellow light 29 5
blue jelly 25 5
orc shaman 23 5
gnomish wizard 23 5
housecat 20 5
dog 20 5
dingo 20 5
violet fungus 19 5
jellyfish 19 5
human zombie 17 5
gnome mummy 17 5
wood nymph 16 5
water nymph 16 5
mountain nymph 16 5
bugbear 15 5
Uruk-hai 15 5
Mordor orc 15 5
Kop Lieutenant 15 5
ghoul 13 5
lemure 10 5
leprechaun 34 4
fog cloud 20 4
woodchuck 17 4
rock mole 17 4
kobold shaman 17 4
imp 15 4
gnome leader 15 4
pony 13 4
gray ooze 13 4
straw golem 10 4
rock piercer 10 4
red naga hatchling 10 4
paper golem 10 4
kobold mummy 10 4
hill orc 10 4
guardian naga hatchling 10 4
golden naga hatchling 10 4
elf zombie 10 4
dwarf 10 4
black naga hatchling 10 4
baby crocodile 10 4
Kop Sergeant 10 4
centipede 9 4
giant ant 8 4
wererat 7 4
werejackal 7 4
rabid rat 7 4
monkey 7 4
rothe 5 4
wererat 10 3
werejackal 10 3
kobold leader 10 3
giant bat 10 3
homunculus 9 3
little dog 8 3
kitten 8 3
orc 7 3
hobgoblin 7 3
gnome 7 3
floating eye 7 3
Keystone Kop 7 3
orc zombie 5 3
iguana 5 3
dwarf zombie 5 3
manes 2 3
garter snake 2 3
cave spider 2 3
shrieker 10 2
large kobold 7 2
hobbit 7 2
human 6 2
gas spore 6 2
bat 6 2
red mold 4 2
green mold 4 2
brown mold 4 2
acid blob 4 2
yellow mold 3 2
gnome zombie 2 2
giant rat 2 2
gecko 2 2
coyote 2 2
kobold 6 1
goblin 6 1
elf 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

Difficulty algorithm (3.6.1 and earlier)

In versions of NetHack prior to 3.6.2 (and derived variants), the monster's difficulty was calculated during compilation using the below algorithm, and stored in monstr.c. As of NetHack 3.6.2, difficulty is now stored in the monst.c as part of the mons array. All monsters have the same difficulty in 3.6.1 and 3.6.2.

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.

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.