The horror is a type of monster appearing in dNetHack. They are part of the U class, which in dNetHack indicates an "unknown abomination". There are three species—the shambling horror, stumbling horror and wandering horror; the statistics for each of these species are randomized every game.
Each game, the following attributes are randomized for each type of horror:
- The speed is anywhere from 6 to 18 (slow to fast)
- The AC is anywhere from 10 to −20
- The MR is anywhere from 0 to 100
- The alignment is anywhere from 8 to −8.
- The size can be anything from tiny to gigantic.
- The corpse weight and nutrition will match the size, but horrors will normally never leave a corpse.
- The sounds they produce will always be a random humanoid sound.
- The horror will have one random type of internal organs: none, normal, or non-differentiated (homogenous) organs.
- The horror will have a level based on its attacks and flags, with a minimum level of 11.
- If the horror should have a level below 11 based on attacks and flags, the entire horror will be re-randomized.
A horror has up to 4 attacks, each with a random attack type and damage type:
- The damage types encompass almost every type in the game, excluding Rider-only attacks, lycanthrope attacks, seduction (nymph or foocubus) attacks, and lethe attacks.
- Not every damage type is possible for each attack type; inclusions are mostly based on whether there is a pre-existing monster with that attack combination already.
The horror then gets up to 17 flags of each type (resistances, resistances conveyed, movement pattern, etc.), with the following conditions:
- The horror will never be polymorphable, always hostile, and never a werecreature.
- Any contradictory flags (such as MT_ANIMAL and MT_MINDLESS) are filtered out, with one chosen from the set.