Holiness
All monsters in Crawl are sorted into six fundamental categories of holiness: Holy, Demonic, Undead, Non-living, Plant, and Natural.
Monsters of each type of holiness have several attributes in common. For instance, all plants, undead, and nonliving are unbreathing. Only natural monsters are vulnerable to negative energy. Demons and undead are automatically evil.
From mon-data.h, line 45:
MH_HOLY - irritates some gods when killed, immunity from holy wrath weapons MH_NATURAL - baseline monster type MH_UNDEAD - immunity from draining, pain, torment; extra damage from holy wrath/disruption; affected by repel undead and holy word MH_DEMONIC - similar to undead, but repel undead effects are ignored -- *no* automatic hellfire resistance MH_NONLIVING - golems and other constructs MH_PLANT - plants