Let pairs of ragged claws scuttle across the floors of liquid seas, too.
[crawl.git] / crawl-ref / source / mon-data.h
1 #define AT_NO_ATK       {AT_NONE, AF_PLAIN, 0}
2
3 #include "enum.h"
4
5 /* ******************************************************************
6
7    (see "mon-util.h" for the gory details)
8
9  - ordering does not matter, because seekmonster() searches the entire
10    array ... probably not to most efficient thing to do, but so it goes
11
12  - Here are the rows:
13     - row 1: monster id, display character, display colour, name
14     - row 2: monster flags
15     - row 3: monster resistance flags
16     - row 4: mass, experience modifier, genus, species, holiness, resist magic
17     - row 5: damage for each of four attacks
18     - row 6: hit dice, described by four parameters
19     - row 7: AC, evasion, sec(spell), corpse_thingy, zombie size, shouts
20     - row 8: intel, habitat, flight class, speed, energy_usage
21     - row 9: gmon_use class, gmon_eat class, body size, body shape
22
23  - Some further explanations:
24
25     - colour: if BLACK, monster uses value of mons_sec
26     - name: if an empty string, name generated automagically (see moname)
27     - mass: if zero, the monster never leaves a corpse (also corpse_thingy)
28     - genus: base monster "type" for a classed monsters (i.e. jackal as hound)
29     - species: corpse type of monster (i.e. orc for orc wizard)
30     - holiness:
31        MH_HOLY       - irritates some gods when killed, immunity from
32                         holy wrath weapons
33        MH_NATURAL    - baseline monster type
34        MH_UNDEAD     - immunity from draining, pain, torment; resistance
35                         to poison; extra damage from holy wrath;
36                         affected by holy word
37        MH_DEMONIC    - similar to undead, but no poison resistance and
38                         *no* automatic hellfire resistance
39        MH_NONLIVING  - golems and other constructs
40        MH_PLANT      - plants
41
42    exp_mod: see give_adjusted_experience() in mon-death.cc
43    - the experience given for killing this monster is calculated something
44    like this:
45
46     experience = (16 + maxhp) * HD * HD * exp_mod * (100 + diff. score) * speed
47                  / 100000
48     with a minimum of 1, and maximum 15000 (jpeg)
49
50    resist_magic: see mons_resist_magic() in mon-util.cc
51    - If -x calculate (-x * hit dice * 4/3), else simply x
52
53    damage [4]
54    - up to 4 different attacks
55
56    hp_dice [4]
57    - hit dice, min hp per HD, extra random hp per HD, fixed HP (unique mons)
58
59     Further explanations copied from mon-util.h:
60         hpdice[4]: [0]=HD [1]=min_hp [2]=rand_hp [3]=add_hp
61         min hp = [0]*[1] + [3]
62         max hp = [0]*([1]+[2]) + [3]
63         hp     = [0] *times_do* { [1] + random2(1+[2]) }, *then* + [3]
64         example: the Iron Golem, hpdice={15,7,4,0}
65            15*7 < hp < 15*(7+4),
66            105 < hp < 165
67         hp will be around 135 each time.
68
69    sec: if the monster has only one possible spellbook, sec is set to that book.
70      If a monster has multiple possible books, sec is set to MST_NO_SPELLS. Then
71      the function mons_spellbook_list in mon-util.cc checks for the flag
72      M_SPELLCASTER, and handles the books.
73
74    corpse_thingy
75    - err, bad name. Describes effects of eating corpses.
76      CE_NOCORPSE,        leaves no corpse (mass == 0)
77      CE_CLEAN,           can be healthily eaten by non-Ghouls
78      CE_POISONOUS,       inedible to characters without poison resistance
79      CE_ROT,             causes rotting in non-Ghouls
80      CE_MUTAGEN,         mutagenic
81      CE_ROTTEN           always causes sickness (good for Ghouls)
82
83    zombie_size
84      Z_NOZOMBIE
85      Z_SMALL    (z)
86      Z_BIG      (Z)
87
88    shouts
89    - various things monsters can do upon seeing you
90
91    intel explanation:
92    - How smart it is:
93    I_PLANT < I_INSECT < I_REPTILE < I_ANIMAL < I_NORMAL < I_HIGH.
94    So far, differences here have little effects except for monster's chance
95    of seeing you if stealthy and rudimentary trap handling; really stupid
96    monsters will walk through clouds.
97    I_REPTILE is are lower vertebrates (fish, amphibians, non-draconic reptiles),
98    smarter reptiles could be I_ANIMAL.
99
100    speed
101    - Increases the store of energy that the monster uses for doing things.
102    less = slower. 5 = half speed, 10 = normal, 20 = double speed.
103
104    energy usage
105    - How quickly the energy granted by speed is used up.  Most monsters
106    should just use DEFAULT_ENERGY, where all the different types of actions
107    use 10 energy units.
108
109    gmon_use explanation:
110      MONUSE_NOTHING,
111      MONUSE_OPEN_DOORS,
112      MONUSE_STARTING_EQUIPMENT,
113      MONUSE_WEAPONS_ARMOUR
114
115     From MONUSE_STARTING_EQUIPMENT on, monsters are capable of handling
116     items.  Contrary to what one might expect, MONUSE_WEAPONS_ARMOUR
117     also means a monster is capable of using wands and will also pick
118     them up, something that those with MONUSE_STARTING_EQUIPMENT won't
119     do.
120
121    gmon_eat explanation:
122      MONEAT_ITEMS,
123      MONEAT_CORPSES,
124
125     Monsters with MONEAT_ITEMS are capable of eating most items,
126     and monsters with MONEAT_CORPSES are capable of eating corpses.
127
128    size:
129      SIZE_TINY,              // rats/bats
130      SIZE_LITTLE,            // spriggans
131      SIZE_SMALL,             // halflings/kobolds
132      SIZE_MEDIUM,            // humans/elves/dwarves
133      SIZE_LARGE,             // trolls/ogres/centaurs/nagas
134      SIZE_BIG,               // large quadrupeds
135      SIZE_GIANT,             // giants
136
137 */
138
139 #define MOVE_ENERGY(x)     { x,  x, 10, 10, 10, 10, 10, 100}
140 #define ACTION_ENERGY(x)   {10, 10,  x,  x,  x,  x,  x, x * 10}
141 #define ATTACK_ENERGY(x)   {10, 10,  x, 10, 10, 10, 10, 100}
142 #define MISSILE_ENERGY(x)  {10, 10, 10,  x, 10, 10, 10, 100}
143 #define SPELL_ENERGY(x)    {10, 10, 10, 10,  x, 10, 10, 100}
144 #define SWIM_ENERGY(x)     {10,  x, 10, 10, 10, 10, 10, 100}
145
146 static monsterentry mondata[] =
147 {
148
149 // The Thing That Should Not Be(tm)
150 // NOTE: Do not remove, or seekmonster will crash on unknown mc request!
151 // It is also a good prototype for new monsters.
152 {
153     // id, glyph, colour, name
154     MONS_PROGRAM_BUG, 'B', LIGHTRED, "program bug",
155     // monster flags
156     M_NO_EXP_GAIN | M_CANT_SPAWN,
157     // resistance flags
158     MR_NO_FLAGS,
159     // mass, xp modifier, genus, species, holiness, magic resistance
160     0, 10, MONS_PROGRAM_BUG, MONS_PROGRAM_BUG, MH_NATURAL, -3,
161     // up to four attacks
162     { AT_NO_ATK, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
163     // hit points
164     { 0, 0, 0, 0 },
165     // AC, EV, spells, corpse type, zombie size, shout type, intelligence
166     0, 0, MST_NO_SPELLS, CE_CLEAN, Z_NOZOMBIE, S_SILENT,
167     // intelligence, habitat, speed, energy usage, use type
168     I_PLANT, HT_LAND, FL_NONE, 0, DEFAULT_ENERGY,
169     // use type, eat type, body size, body shape
170     MONUSE_NOTHING, MONEAT_NOTHING, SIZE_GIANT, MON_SHAPE_MISC,
171 },
172
173 // Use this to replace removed monsters, to retain save compatibility.
174 // Please put it in #if TAG_MAJOR_VERSION == X, so they will go away
175 // after save compat is broken.
176 #define AXED_MON(id) \
177 { \
178     id, 'X', LIGHTRED, "removed "#id, \
179     M_NO_EXP_GAIN | M_CANT_SPAWN | M_UNFINISHED, \
180     MR_NO_FLAGS, \
181     0, 10, MONS_PROGRAM_BUG, MONS_PROGRAM_BUG, MH_NONLIVING, -3, \
182     { AT_NO_ATK, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK }, \
183     { 0, 0, 0, 0 }, \
184     0, 0, MST_NO_SPELLS, CE_CLEAN, Z_NOZOMBIE, S_SILENT, \
185     I_PLANT, HT_LAND, FL_NONE, 0, DEFAULT_ENERGY, \
186     MONUSE_NOTHING, MONEAT_NOTHING, SIZE_GIANT, MON_SHAPE_MISC \
187 },
188
189 // Axed monsters.
190 // AXED_MON(MONS_MOTHER_IN_LAW)
191 #if TAG_MAJOR_VERSION == 34
192     AXED_MON(MONS_BUMBLEBEE)
193     AXED_MON(MONS_WOOD_GOLEM)
194     AXED_MON(MONS_ANT_LARVA)
195     AXED_MON(MONS_LABORATORY_RAT)
196     AXED_MON(MONS_WAR_DOG)
197     AXED_MON(MONS_SPIRIT)
198     AXED_MON(MONS_PALADIN)
199     AXED_MON(MONS_DEEP_ELF_SOLDIER)
200     AXED_MON(MONS_PAN)
201     AXED_MON(MONS_LAMIA)
202     AXED_MON(MONS_DEEP_DWARF_SCION)
203     AXED_MON(MONS_DEEP_DWARF_ARTIFICER)
204     AXED_MON(MONS_DEEP_DWARF_NECROMANCER)
205     AXED_MON(MONS_CHAOS_BUTTERFLY)
206     AXED_MON(MONS_POLYMOTH)
207     AXED_MON(MONS_MOTH_OF_SUPPRESSION)
208     AXED_MON(MONS_ROCK_WORM)
209     AXED_MON(MONS_FORMICID_DRONE)
210     AXED_MON(MONS_SPIRIT_WOLF)
211     AXED_MON(MONS_ELEMENTAL_WELLSPRING)
212     AXED_MON(MONS_LAVA_FISH)
213     AXED_MON(MONS_LEMURE)
214     AXED_MON(MONS_JELLYFISH)
215     AXED_MON(MONS_GREY_RAT)
216     AXED_MON(MONS_SPINY_WORM)
217     AXED_MON(MONS_ROCK_TROLL)
218     AXED_MON(MONS_MONSTROUS_ITEM_MIMIC)
219     AXED_MON(MONS_GIANT_AMOEBA)
220     AXED_MON(MONS_DEEP_DWARF_BERSERKER)
221     AXED_MON(MONS_AGATE_SNAIL)
222     AXED_MON(MONS_GIANT_CENTIPEDE)
223     AXED_MON(MONS_ANCIENT_BEAR)
224     AXED_MON(MONS_ROTTING_DEVIL)
225     AXED_MON(MONS_IGNIS)
226     AXED_MON(MONS_DJINNI)
227     AXED_MON(MONS_RAKSHASA_FAKE)
228     AXED_MON(MONS_MARA_FAKE)
229     // GNOME_NO_MORE
230     AXED_MON(MONS_GNOME)
231     // GOLEM_NO_MORE
232     AXED_MON(MONS_CLAY_GOLEM)
233     AXED_MON(MONS_STONE_GOLEM)
234     AXED_MON(MONS_FORMICID_VENOM_MAGE)
235     AXED_MON(MONS_SPRIGGAN_ASSASSIN)
236     AXED_MON(MONS_VAPOUR)
237     AXED_MON(MONS_THORN_LOTUS)
238     AXED_MON(MONS_GIANT_GOLDFISH)
239     AXED_MON(MONS_SILVER_STAR)
240     AXED_MON(MONS_FLAMING_CORPSE)
241     AXED_MON(MONS_GRIZZLY_BEAR)
242     AXED_MON(MONS_SPRIGGAN_ENCHANTER)
243     AXED_MON(MONS_PHOENIX)
244     AXED_MON(MONS_SHEDU)
245     AXED_MON(MONS_PLAGUE_SHAMBLER)
246     AXED_MON(MONS_GIANT_SLUG)
247     AXED_MON(MONS_FIREFLY)
248     AXED_MON(MONS_BROWN_OOZE)
249     AXED_MON(MONS_PULSATING_LUMP)
250     AXED_MON(MONS_BIG_FISH)
251     AXED_MON(MONS_LAVA_WORM)
252     AXED_MON(MONS_SHARK)
253 #endif
254
255 // Used for genus monsters (which are used for grouping monsters by how they
256 // work and in comes-into-view messages.
257 #define DUMMY(id, glyph, colour, name) \
258 { \
259     (id), (glyph), (colour), (name), \
260     M_CANT_SPAWN, \
261     MR_NO_FLAGS, \
262     0, 10, (id), (id), MH_NONLIVING, -3, \
263     { AT_NO_ATK, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK }, \
264     { 0, 0, 0, 0 }, \
265     0, 0, MST_NO_SPELLS, CE_CLEAN, Z_NOZOMBIE, S_SILENT, \
266     I_PLANT, HT_LAND, FL_NONE, 0, DEFAULT_ENERGY, \
267     MONUSE_NOTHING, MONEAT_NOTHING, SIZE_MEDIUM, MON_SHAPE_MISC \
268 },
269
270
271 // Real monsters begin here {dlb}:
272
273 // ants and formicids ('a')
274 {
275     MONS_WORKER_ANT, 'a', RED, "worker ant",
276     M_NO_SKELETON,
277     MR_VUL_POISON,
278     450, 10, MONS_WORKER_ANT, MONS_WORKER_ANT, MH_NATURAL, -3,
279     { {AT_BITE, AF_POISON, 8}, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
280     { 3, 3, 5, 0 },
281     4, 10, MST_NO_SPELLS, CE_CLEAN, Z_SMALL, S_SILENT,
282     I_INSECT, HT_LAND, FL_NONE, 12, DEFAULT_ENERGY,
283     MONUSE_NOTHING, MONEAT_NOTHING, SIZE_SMALL, MON_SHAPE_INSECT
284 },
285
286 {
287     MONS_QUEEN_ANT, 'a', LIGHTRED, "queen ant",
288     M_NO_SKELETON | M_NO_FLAGS,
289     MR_VUL_POISON,
290     900, 10, MONS_WORKER_ANT, MONS_QUEEN_ANT, MH_NATURAL, -3,
291     { {AT_STING, AF_POISON_STRONG, 20}, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
292     { 13, 3, 5, 0 },
293     14, 3, MST_NO_SPELLS, CE_POISONOUS, Z_BIG, S_SILENT,
294     I_INSECT, HT_LAND, FL_NONE, 7, DEFAULT_ENERGY,
295     MONUSE_NOTHING, MONEAT_NOTHING, SIZE_LARGE, MON_SHAPE_INSECT
296 },
297
298 {
299     MONS_SOLDIER_ANT, 'a', WHITE, "soldier ant",
300     M_NO_SKELETON,
301     MR_VUL_POISON,
302     600, 10, MONS_WORKER_ANT, MONS_SOLDIER_ANT, MH_NATURAL, -3,
303     { {AT_STING, AF_POISON, 14}, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
304     { 6, 3, 5, 0 },
305     8, 10, MST_NO_SPELLS, CE_POISONOUS, Z_SMALL, S_SILENT,
306     I_INSECT, HT_LAND, FL_NONE, 10, DEFAULT_ENERGY,
307     MONUSE_NOTHING, MONEAT_NOTHING, SIZE_MEDIUM, MON_SHAPE_INSECT
308 },
309
310 // dummy for recolouring
311 {
312     MONS_FORMICID, 'a', GREEN, "formicid",
313     M_WARM_BLOOD | M_SEE_INVIS | M_SPEAKS | M_NO_SKELETON | M_BURROWS
314         | M_NO_POLY_TO,
315     MR_NO_FLAGS,
316     600, 10, MONS_FORMICID, MONS_FORMICID, MH_NATURAL, -4,
317     { {AT_HIT, AF_PLAIN, 15}, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
318     { 6, 4, 6, 0 },
319     3, 10, MST_NO_SPELLS, CE_CLEAN, Z_SMALL, S_SHOUT,
320     I_NORMAL, HT_LAND, FL_NONE, 10, DEFAULT_ENERGY,
321     MONUSE_WEAPONS_ARMOUR, MONEAT_NOTHING, SIZE_MEDIUM, MON_SHAPE_HUMANOID
322 },
323
324 // batty monsters ('b')
325 {
326     MONS_BAT, 'b', LIGHTGREY, "bat",
327     M_SENSE_INVIS | M_WARM_BLOOD | M_BATTY,
328     MR_NO_FLAGS,
329     150, 4, MONS_BAT, MONS_BAT, MH_NATURAL, -1,
330     { {AT_HIT, AF_PLAIN, 1}, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
331     { 1, 2, 3, 0 },
332     1, 14, MST_NO_SPELLS, CE_CLEAN, Z_SMALL, S_SILENT,
333     I_ANIMAL, HT_LAND, FL_WINGED, 30, DEFAULT_ENERGY,
334     MONUSE_NOTHING, MONEAT_NOTHING, SIZE_TINY, MON_SHAPE_BAT
335 },
336
337 {
338     MONS_BUTTERFLY, 'b', BLACK, "butterfly",
339     M_CONFUSED | M_NO_EXP_GAIN,
340     MR_VUL_POISON,
341     0, 10, MONS_BUTTERFLY, MONS_BUTTERFLY, MH_NATURAL, -3,
342     { AT_NO_ATK, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
343     { 1, 0, 0, 1 },
344     0, 25, MST_NO_SPELLS, CE_NOCORPSE, Z_NOZOMBIE, S_SILENT,
345     I_INSECT, HT_LAND, FL_WINGED, 25, DEFAULT_ENERGY,
346     MONUSE_NOTHING, MONEAT_NOTHING, SIZE_TINY, MON_SHAPE_INSECT_WINGED
347 },
348
349 { // one vault + player transform (Vp ability)
350     MONS_VAMPIRE_BAT, 'b', MAGENTA, "vampire bat",
351     M_SENSE_INVIS | M_WARM_BLOOD | M_BATTY | M_NO_POLY_TO,
352     MR_NO_FLAGS,
353     0, 8, MONS_BAT, MONS_VAMPIRE_BAT, MH_UNDEAD, -1,
354     { {AT_BITE, AF_VAMPIRIC, 3}, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
355     { 3, 2, 3, 0 },
356     1, 14, MST_NO_SPELLS, CE_NOCORPSE, Z_NOZOMBIE, S_SILENT,
357     I_ANIMAL, HT_LAND, FL_WINGED, 30, DEFAULT_ENERGY,
358     MONUSE_NOTHING, MONEAT_NOTHING, SIZE_TINY, MON_SHAPE_BAT
359 },
360
361 {
362     MONS_FIRE_BAT, 'b', LIGHTRED, "fire bat",
363     M_SENSE_INVIS | M_WARM_BLOOD | M_BATTY,
364     MR_RES_HELLFIRE | MR_VUL_COLD | MR_VUL_WATER,
365     0, 8, MONS_BAT, MONS_FIRE_BAT, MH_NATURAL, -1,
366     { {AT_BITE, AF_FIRE, 6}, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
367     { 5, 3, 3, 0 },
368     1, 14, MST_NO_SPELLS, CE_NOCORPSE, Z_NOZOMBIE, S_SILENT,
369     I_ANIMAL, HT_LAND, FL_WINGED, 30, DEFAULT_ENERGY,
370     MONUSE_NOTHING, MONEAT_NOTHING, SIZE_TINY, MON_SHAPE_BAT
371 },
372
373 {
374     MONS_RAVEN, 'b', BLUE, "raven",
375     M_SENSE_INVIS | M_WARM_BLOOD,
376     MR_NO_FLAGS,
377     250, 9, MONS_RAVEN, MONS_RAVEN, MH_NATURAL, -2,
378     { {AT_PECK, AF_PLAIN, 14}, {AT_CLAW, AF_PLAIN, 11}, AT_NO_ATK, AT_NO_ATK },
379     { 6, 4, 3, 0 },
380     1, 10, MST_NO_SPELLS, CE_CLEAN, Z_SMALL, S_CAW,
381     I_ANIMAL, HT_LAND, FL_WINGED, 20, DEFAULT_ENERGY,
382     MONUSE_NOTHING, MONEAT_NOTHING, SIZE_TINY, MON_SHAPE_BAT // ...
383 },
384
385 // centaurs ('c')
386 {
387     MONS_CENTAUR, 'c', BROWN, "centaur",
388     M_WARM_BLOOD | M_SPEAKS,
389     MR_NO_FLAGS,
390     1500, 10, MONS_CENTAUR, MONS_CENTAUR, MH_NATURAL, -3,
391     { {AT_HIT, AF_PLAIN, 10}, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
392     { 4, 3, 5, 0 },
393     3, 7, MST_NO_SPELLS, CE_CLEAN, Z_BIG, S_SHOUT,
394     I_NORMAL, HT_LAND, FL_NONE, 15, DEFAULT_ENERGY,
395     MONUSE_WEAPONS_ARMOUR, MONEAT_NOTHING, SIZE_LARGE, MON_SHAPE_CENTAUR
396 },
397
398 {
399     MONS_CENTAUR_WARRIOR, 'c', YELLOW, "centaur warrior",
400     M_WARM_BLOOD | M_FIGHTER | M_SPEAKS,
401     MR_NO_FLAGS,
402     1500, 12, MONS_CENTAUR, MONS_CENTAUR, MH_NATURAL, -3,
403     { {AT_HIT, AF_PLAIN, 16}, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
404     { 10, 3, 5, 0 },
405     4, 8, MST_NO_SPELLS, CE_CLEAN, Z_NOZOMBIE, S_SHOUT,
406     I_NORMAL, HT_LAND, FL_NONE, 15, DEFAULT_ENERGY,
407     MONUSE_WEAPONS_ARMOUR, MONEAT_NOTHING, SIZE_LARGE, MON_SHAPE_CENTAUR
408 },
409
410 {
411     MONS_YAKTAUR, 'c', RED, "yaktaur",
412     M_WARM_BLOOD | M_SPEAKS,
413     MR_NO_FLAGS,
414     1900, 9, MONS_YAKTAUR, MONS_YAKTAUR, MH_NATURAL, -3,
415     { {AT_HIT, AF_PLAIN, 15}, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
416     { 8, 3, 5, 0 },
417     4, 4, MST_NO_SPELLS, CE_CLEAN, Z_BIG, S_SHOUT,
418     I_NORMAL, HT_LAND, FL_NONE, 10, DEFAULT_ENERGY,
419     MONUSE_WEAPONS_ARMOUR, MONEAT_NOTHING, SIZE_BIG, MON_SHAPE_CENTAUR
420 },
421
422 {
423     MONS_YAKTAUR_CAPTAIN, 'c', LIGHTRED, "yaktaur captain",
424     M_WARM_BLOOD | M_FIGHTER | M_SPEAKS,
425     MR_NO_FLAGS,
426     1900, 9, MONS_YAKTAUR, MONS_YAKTAUR, MH_NATURAL, -3,
427     { {AT_HIT, AF_PLAIN, 23}, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
428     { 14, 3, 5, 0 },
429     5, 5, MST_NO_SPELLS, CE_CLEAN, Z_NOZOMBIE, S_SHOUT,
430     I_NORMAL, HT_LAND, FL_NONE, 10, DEFAULT_ENERGY,
431     MONUSE_WEAPONS_ARMOUR, MONEAT_NOTHING, SIZE_BIG, MON_SHAPE_CENTAUR
432 },
433
434 {
435     MONS_FAUN, 'c', GREEN, "faun",
436     M_WARM_BLOOD | M_SPEAKS | M_SPELLCASTER | M_ACTUAL_SPELLS,
437     MR_NO_FLAGS,
438     550, 8, MONS_FAUN, MONS_FAUN, MH_NATURAL, -3,
439     { {AT_HIT, AF_PLAIN, 23}, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
440     { 10, 3, 4, 0 },
441     2, 10, MST_NO_SPELLS, CE_CLEAN, Z_SMALL, S_SHOUT,
442     I_NORMAL, HT_LAND, FL_NONE, 10, DEFAULT_ENERGY,
443     MONUSE_STARTING_EQUIPMENT, MONEAT_NOTHING, SIZE_MEDIUM,
444         MON_SHAPE_HUMANOID_TAILED
445 },
446
447 {
448     MONS_SATYR, 'c', LIGHTGREEN, "satyr",
449     M_WARM_BLOOD | M_SPEAKS | M_ARCHER | M_SPELLCASTER | M_ACTUAL_SPELLS,
450     MR_NO_FLAGS,
451     550, 10, MONS_SATYR, MONS_SATYR, MH_NATURAL, -3,
452     { {AT_HIT, AF_PLAIN, 25}, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
453     { 12, 3, 5, 0 },
454     2, 12, MST_SATYR, CE_CLEAN, Z_SMALL, S_SHOUT,
455     I_HIGH, HT_LAND, FL_NONE, 10, DEFAULT_ENERGY,
456     MONUSE_STARTING_EQUIPMENT, MONEAT_NOTHING, SIZE_MEDIUM,
457         MON_SHAPE_HUMANOID_TAILED
458 },
459
460 // draconians ('d')
461 {   // Base draconian - for use like MONS_HUMAN, MONS_ELF although we
462     // now store the draconian subspecies in base_monster for those
463     // listed as species MONS_DRACONIAN.
464     MONS_DRACONIAN, 'd', BROWN, "draconian",
465     M_COLD_BLOOD | M_SPEAKS,
466     MR_NO_FLAGS,
467     900, 10, MONS_DRACONIAN, MONS_DRACONIAN, MH_NATURAL, -1,
468     { {AT_HIT, AF_PLAIN, 15}, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
469     { 8, 6, 4, 0 },
470     10, 11, MST_NO_SPELLS, CE_CLEAN, Z_SMALL, S_ROAR,
471     I_HIGH, HT_LAND, FL_NONE, 10, DEFAULT_ENERGY,
472     MONUSE_WEAPONS_ARMOUR, MONEAT_NOTHING, SIZE_MEDIUM,
473         MON_SHAPE_HUMANOID_TAILED
474 },
475
476 {
477     MONS_BLACK_DRACONIAN, 'd', BLUE, "black draconian",
478     M_COLD_BLOOD | M_SPEAKS,
479     mrd(MR_RES_ELEC, 2),
480     900, 10, MONS_DRACONIAN, MONS_BLACK_DRACONIAN, MH_NATURAL, -2,
481     { {AT_HIT, AF_PLAIN, 20}, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
482     { 14, 5, 4, 0 },
483     9, 10, MST_NO_SPELLS, CE_CLEAN, Z_SMALL, S_ROAR,
484     I_HIGH, HT_LAND, FL_WINGED, 10, DEFAULT_ENERGY,
485     MONUSE_WEAPONS_ARMOUR, MONEAT_NOTHING, SIZE_MEDIUM,
486         MON_SHAPE_HUMANOID_WINGED_TAILED
487 },
488
489 {
490     MONS_YELLOW_DRACONIAN, 'd', YELLOW, "yellow draconian",
491     M_COLD_BLOOD | M_SPEAKS,
492     MR_RES_ACID,
493     900, 10, MONS_DRACONIAN, MONS_YELLOW_DRACONIAN, MH_NATURAL, -2,
494     { {AT_HIT, AF_PLAIN, 20}, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
495     { 14, 5, 4, 0 },
496     9, 10, MST_NO_SPELLS, CE_CLEAN, Z_SMALL, S_ROAR,
497     I_HIGH, HT_LAND, FL_NONE, 10, DEFAULT_ENERGY,
498     MONUSE_WEAPONS_ARMOUR, MONEAT_NOTHING, SIZE_MEDIUM,
499         MON_SHAPE_HUMANOID_TAILED
500 },
501
502 {
503     // Colours are used for picking the right tile for Tiamat,
504     // so this needs to be different from the grey draconian. (jpeg)
505     MONS_PALE_DRACONIAN, 'd', CYAN, "pale draconian",
506     M_COLD_BLOOD | M_SPEAKS,
507     MR_RES_STEAM,
508     900, 10, MONS_DRACONIAN, MONS_PALE_DRACONIAN, MH_NATURAL, -2,
509     { {AT_HIT, AF_PLAIN, 20}, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
510     { 14, 5, 4, 0 },
511     9, 14, MST_NO_SPELLS, CE_CLEAN, Z_SMALL, S_ROAR,
512     I_HIGH, HT_LAND, FL_NONE, 10, DEFAULT_ENERGY,
513     MONUSE_WEAPONS_ARMOUR, MONEAT_NOTHING, SIZE_MEDIUM,
514         MON_SHAPE_HUMANOID_TAILED
515 },
516
517 {
518     MONS_GREEN_DRACONIAN, 'd', GREEN, "green draconian",
519     M_COLD_BLOOD | M_SPEAKS,
520     MR_RES_POISON,
521     900, 10, MONS_DRACONIAN, MONS_GREEN_DRACONIAN, MH_NATURAL, -2,
522     { {AT_HIT, AF_PLAIN, 20}, {AT_TAIL_SLAP, AF_POISON, 15}, AT_NO_ATK,
523        AT_NO_ATK },
524     { 14, 5, 4, 0 },
525     9, 10, MST_NO_SPELLS, CE_POISONOUS, Z_SMALL, S_ROAR,
526     I_HIGH, HT_LAND, FL_NONE, 10, DEFAULT_ENERGY,
527     MONUSE_WEAPONS_ARMOUR, MONEAT_NOTHING, SIZE_MEDIUM,
528         MON_SHAPE_HUMANOID_TAILED
529 },
530
531 {
532     MONS_PURPLE_DRACONIAN, 'd', MAGENTA, "purple draconian",
533     M_COLD_BLOOD | M_SPEAKS,
534     MR_NO_FLAGS,
535     900, 10, MONS_DRACONIAN, MONS_PURPLE_DRACONIAN, MH_NATURAL, -8,
536     { {AT_HIT, AF_PLAIN, 20}, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
537     { 14, 5, 4, 0 },
538     8, 10, MST_NO_SPELLS, CE_CLEAN, Z_SMALL, S_ROAR,
539     I_HIGH, HT_LAND, FL_NONE, 10, DEFAULT_ENERGY,
540     MONUSE_WEAPONS_ARMOUR, MONEAT_NOTHING, SIZE_MEDIUM,
541         MON_SHAPE_HUMANOID_TAILED
542 },
543
544 {
545     MONS_RED_DRACONIAN, 'd', LIGHTRED, "red draconian",
546     M_COLD_BLOOD | M_SPEAKS,
547     MR_RES_FIRE,
548     900, 10, MONS_DRACONIAN, MONS_RED_DRACONIAN, MH_NATURAL, -2,
549     { {AT_HIT, AF_PLAIN, 20}, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
550     { 14, 5, 4, 0 },
551     9, 10, MST_NO_SPELLS, CE_CLEAN, Z_SMALL, S_ROAR,
552     I_HIGH, HT_LAND, FL_NONE, 10, DEFAULT_ENERGY,
553     MONUSE_WEAPONS_ARMOUR, MONEAT_NOTHING, SIZE_MEDIUM,
554         MON_SHAPE_HUMANOID_TAILED
555 },
556
557 {
558     MONS_WHITE_DRACONIAN, 'd', WHITE, "white draconian",
559     M_COLD_BLOOD | M_SPEAKS,
560     MR_RES_COLD,
561     900, 10, MONS_DRACONIAN, MONS_WHITE_DRACONIAN, MH_NATURAL, -2,
562     { {AT_HIT, AF_PLAIN, 20}, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
563     { 14, 5, 4, 0 },
564     9, 10, MST_NO_SPELLS, CE_CLEAN, Z_SMALL, S_ROAR,
565     I_HIGH, HT_LAND, FL_NONE, 10, DEFAULT_ENERGY,
566     MONUSE_WEAPONS_ARMOUR, MONEAT_NOTHING, SIZE_MEDIUM,
567         MON_SHAPE_HUMANOID_TAILED
568 },
569
570 {
571     MONS_GREY_DRACONIAN, 'd', LIGHTGREY, "grey draconian",
572     M_COLD_BLOOD | M_UNBREATHING | M_SPEAKS,
573     MR_NO_FLAGS,
574     900, 10, MONS_DRACONIAN, MONS_GREY_DRACONIAN, MH_NATURAL, -2,
575     { {AT_HIT, AF_PLAIN, 25}, {AT_TAIL_SLAP, AF_PLAIN, 15}, AT_NO_ATK,
576        AT_NO_ATK },
577     { 14, 5, 4, 0 },
578     16, 10, MST_NO_SPELLS, CE_CLEAN, Z_SMALL, S_ROAR,
579     I_HIGH, HT_LAND, FL_NONE, 10, DEFAULT_ENERGY,
580     MONUSE_WEAPONS_ARMOUR, MONEAT_NOTHING, SIZE_MEDIUM,
581         MON_SHAPE_HUMANOID_TAILED
582 },
583
584 {
585     MONS_MOTTLED_DRACONIAN, 'd', LIGHTMAGENTA, "mottled draconian",
586     M_COLD_BLOOD | M_SPEAKS,
587     MR_RES_FIRE | MR_RES_STICKY_FLAME,
588     900, 10, MONS_DRACONIAN, MONS_MOTTLED_DRACONIAN, MH_NATURAL, -2,
589     { {AT_HIT, AF_PLAIN, 20}, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
590     { 14, 5, 4, 0 },
591     9, 10, MST_NO_SPELLS, CE_CLEAN, Z_SMALL, S_ROAR,
592     I_HIGH, HT_LAND, FL_NONE, 10, DEFAULT_ENERGY,
593     MONUSE_WEAPONS_ARMOUR, MONEAT_NOTHING, SIZE_MEDIUM,
594         MON_SHAPE_HUMANOID_TAILED
595 },
596
597 // nonbase draconians ('q')
598 // Nonbase draconian AC and EV is additive with the base type.
599 {
600     MONS_DRACONIAN_CALLER, 'q', BROWN, "draconian caller",
601     M_SPELLCASTER | M_ACTUAL_SPELLS | M_COLD_BLOOD | M_SPEAKS,
602     MR_NO_FLAGS,
603     900, 10, MONS_DRACONIAN, MONS_DRACONIAN, MH_NATURAL, -3,
604     { {AT_HIT, AF_PLAIN, 20}, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
605     { 16, 4, 3, 0 },
606     0, 0, MST_DRAC_CALLER, CE_CLEAN, Z_NOZOMBIE, S_ROAR,
607     I_HIGH, HT_LAND, FL_NONE, 10, DEFAULT_ENERGY,
608     MONUSE_WEAPONS_ARMOUR, MONEAT_NOTHING, SIZE_MEDIUM,
609         MON_SHAPE_HUMANOID_TAILED
610 },
611
612 {
613     MONS_DRACONIAN_MONK, 'q', BLUE, "draconian monk",
614     M_FIGHTER | M_COLD_BLOOD | M_SPEAKS,
615     MR_NO_FLAGS,
616     900, 10, MONS_DRACONIAN, MONS_DRACONIAN, MH_NATURAL, -3,
617     { {AT_HIT, AF_PLAIN, 35}, {AT_KICK, AF_PLAIN, 20},
618       {AT_TAIL_SLAP, AF_PLAIN, 15}, AT_NO_ATK },
619     { 16, 6, 3, 0 },
620     -3, 10, MST_NO_SPELLS, CE_CLEAN, Z_NOZOMBIE, S_ROAR,
621     I_HIGH, HT_LAND, FL_NONE, 10, DEFAULT_ENERGY,
622     MONUSE_WEAPONS_ARMOUR, MONEAT_NOTHING, SIZE_MEDIUM,
623         MON_SHAPE_HUMANOID_TAILED
624 },
625
626 {
627     MONS_DRACONIAN_ZEALOT, 'q', LIGHTGREEN, "draconian zealot",
628     M_SPELLCASTER | M_PRIEST | M_COLD_BLOOD | M_SPEAKS,
629     MR_NO_FLAGS,
630     900, 10, MONS_DRACONIAN, MONS_DRACONIAN, MH_NATURAL, -3,
631     { {AT_HIT, AF_PLAIN, 15}, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
632     { 16, 4, 2, 0 },
633     3, 0, MST_DRACONIAN_ZEALOT, CE_CLEAN, Z_NOZOMBIE, S_ROAR,
634     I_HIGH, HT_LAND, FL_NONE, 10, DEFAULT_ENERGY,
635     MONUSE_WEAPONS_ARMOUR, MONEAT_NOTHING, SIZE_MEDIUM,
636         MON_SHAPE_HUMANOID_TAILED
637 },
638
639 {
640     MONS_DRACONIAN_SHIFTER, 'q', LIGHTCYAN, "draconian shifter",
641     M_SPELLCASTER | M_ACTUAL_SPELLS | M_COLD_BLOOD | M_SPEAKS,
642     MR_NO_FLAGS,
643     900, 10, MONS_DRACONIAN, MONS_DRACONIAN, MH_NATURAL, -4,
644     { {AT_HIT, AF_PLAIN, 15}, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
645     { 16, 4, 4, 0 },
646     -1, 6, MST_DRAC_SHIFTER, CE_CLEAN, Z_NOZOMBIE, S_ROAR,
647     I_HIGH, HT_LAND, FL_NONE, 10, DEFAULT_ENERGY,
648     MONUSE_WEAPONS_ARMOUR, MONEAT_NOTHING, SIZE_MEDIUM,
649         MON_SHAPE_HUMANOID_TAILED
650 },
651
652 {
653     MONS_DRACONIAN_ANNIHILATOR, 'q', LIGHTBLUE, "draconian annihilator",
654     M_SPELLCASTER | M_ACTUAL_SPELLS | M_COLD_BLOOD | M_SPEAKS,
655     MR_NO_FLAGS,
656     900, 10, MONS_DRACONIAN, MONS_DRACONIAN, MH_NATURAL, -4,
657     { {AT_HIT, AF_PLAIN, 15}, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
658     { 16, 4, 2, 0 },
659     -1, 0, MST_DEEP_ELF_ANNIHILATOR, CE_CLEAN, Z_NOZOMBIE, S_ROAR,
660     I_HIGH, HT_LAND, FL_NONE, 10, DEFAULT_ENERGY,
661     MONUSE_WEAPONS_ARMOUR, MONEAT_NOTHING, SIZE_MEDIUM,
662         MON_SHAPE_HUMANOID_TAILED
663 },
664
665 {
666     MONS_DRACONIAN_KNIGHT, 'q', CYAN, "draconian knight",
667     M_SPELLCASTER | M_ACTUAL_SPELLS | M_FIGHTER | M_COLD_BLOOD | M_SPEAKS,
668     MR_NO_FLAGS,
669     900, 10, MONS_DRACONIAN, MONS_DRACONIAN, MH_NATURAL, -4,
670     { {AT_HIT, AF_PLAIN, 27}, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
671     { 16, 6, 2, 0 },
672     3, 2, MST_NO_SPELLS, CE_CLEAN, Z_NOZOMBIE, S_ROAR,
673     I_HIGH, HT_LAND, FL_NONE, 10, DEFAULT_ENERGY,
674     MONUSE_WEAPONS_ARMOUR, MONEAT_NOTHING, SIZE_MEDIUM,
675         MON_SHAPE_HUMANOID_TAILED
676 },
677
678 {
679     MONS_DRACONIAN_SCORCHER, 'q', LIGHTRED, "draconian scorcher",
680     M_SPELLCASTER | M_ACTUAL_SPELLS | M_COLD_BLOOD | M_SPEAKS,
681     MR_NO_FLAGS,
682     900, 10, MONS_DRACONIAN, MONS_DRACONIAN, MH_NATURAL, -4,
683     { {AT_HIT, AF_PLAIN, 15}, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
684     { 16, 4, 2, 0 },
685     -1, 2, MST_DRAC_SCORCHER, CE_CLEAN, Z_NOZOMBIE, S_ROAR,
686     I_HIGH, HT_LAND, FL_NONE, 10, DEFAULT_ENERGY,
687     MONUSE_WEAPONS_ARMOUR, MONEAT_NOTHING, SIZE_MEDIUM,
688         MON_SHAPE_HUMANOID_TAILED
689 },
690
691 // elves ('e')
692 //mv: have to exist because it's (and should be) a valid polymorph target.
693 {
694     MONS_ELF, 'e', LIGHTRED, "elf",
695     M_WARM_BLOOD | M_SPEAKS,
696     MR_NO_FLAGS,
697     450, 10, MONS_ELF, MONS_ELF, MH_NATURAL, -3,
698     { {AT_HIT, AF_PLAIN, 10}, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
699     { 8, 3, 3, 0 },
700     3, 15, MST_NO_SPELLS, CE_CLEAN, Z_SMALL, S_SHOUT,
701     I_HIGH, HT_LAND, FL_NONE, 10, DEFAULT_ENERGY,
702     MONUSE_WEAPONS_ARMOUR, MONEAT_NOTHING, SIZE_MEDIUM, MON_SHAPE_HUMANOID
703 },
704
705 {
706     MONS_DEEP_ELF_FIGHTER, 'e', LIGHTRED, "deep elf fighter",
707     M_SPELLCASTER | M_ACTUAL_SPELLS | M_WARM_BLOOD | M_FIGHTER | M_SPEAKS,
708     MR_NO_FLAGS,
709     450, 10, MONS_ELF, MONS_ELF, MH_NATURAL, -6,
710     { {AT_HIT, AF_PLAIN, 9}, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
711     { 6, 3, 3, 0 },
712     0, 13, MST_NO_SPELLS, CE_CLEAN, Z_NOZOMBIE, S_SHOUT,
713     I_HIGH, HT_LAND, FL_NONE, 10, DEFAULT_ENERGY,
714     MONUSE_WEAPONS_ARMOUR, MONEAT_NOTHING, SIZE_MEDIUM, MON_SHAPE_HUMANOID
715 },
716
717 {
718     MONS_DEEP_ELF_KNIGHT, 'e', CYAN, "deep elf knight",
719     M_SPELLCASTER | M_ACTUAL_SPELLS | M_WARM_BLOOD | M_FIGHTER | M_SPEAKS,
720     MR_NO_FLAGS,
721     450, 10, MONS_ELF, MONS_ELF, MH_NATURAL, -6,
722     { {AT_HIT, AF_PLAIN, 14}, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
723     { 11, 3, 3, 0 },
724     0, 15, MST_NO_SPELLS, CE_CLEAN, Z_NOZOMBIE, S_SHOUT,
725     I_HIGH, HT_LAND, FL_NONE, 10, DEFAULT_ENERGY,
726     MONUSE_WEAPONS_ARMOUR, MONEAT_NOTHING, SIZE_MEDIUM, MON_SHAPE_HUMANOID
727 },
728
729 {
730     MONS_DEEP_ELF_BLADEMASTER, 'e', LIGHTCYAN, "deep elf blademaster",
731     M_WARM_BLOOD | M_FIGHTER | M_TWO_WEAPONS | M_SPEAKS,
732     MR_NO_FLAGS,
733     450, 10, MONS_ELF, MONS_ELF, MH_NATURAL, -6,
734     { {AT_HIT, AF_PLAIN, 25}, {AT_HIT, AF_PLAIN, 25}, AT_NO_ATK, AT_NO_ATK },
735     { 16, 5, 3, 0 },
736     0, 25, MST_NO_SPELLS, CE_CLEAN, Z_NOZOMBIE, S_SHOUT,
737     I_HIGH, HT_LAND, FL_NONE, 15, DEFAULT_ENERGY,
738     MONUSE_WEAPONS_ARMOUR, MONEAT_NOTHING, SIZE_MEDIUM, MON_SHAPE_HUMANOID
739 },
740
741 {
742     MONS_DEEP_ELF_MASTER_ARCHER, 'e', LIGHTGREY, "deep elf master archer",
743     M_WARM_BLOOD | M_ARCHER | M_SPEAKS,
744     MR_NO_FLAGS,
745     450, 30, MONS_ELF, MONS_ELF, MH_NATURAL, -5,
746     // Attack damage gets rolled into their ranged attacks.
747     { {AT_HIT, AF_PLAIN, 25}, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
748     { 15, 4, 2, 0 },
749     0, 15, MST_NO_SPELLS, CE_CLEAN, Z_NOZOMBIE, S_SHOUT,
750     I_HIGH, HT_LAND, FL_NONE, 10, MISSILE_ENERGY(5),
751     MONUSE_WEAPONS_ARMOUR, MONEAT_NOTHING, SIZE_MEDIUM, MON_SHAPE_HUMANOID
752 },
753
754 {
755     MONS_DEEP_ELF_MAGE, 'e', MAGENTA, "deep elf mage",
756     M_SPELLCASTER | M_ACTUAL_SPELLS | M_WARM_BLOOD | M_SPEAKS,
757     MR_NO_FLAGS,
758     450, 12, MONS_ELF, MONS_ELF, MH_NATURAL, -6,
759     { {AT_HIT, AF_PLAIN, 5}, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
760     { 6, 3, 3, 0 },
761     0, 13, MST_NO_SPELLS, CE_CLEAN, Z_NOZOMBIE, S_SHOUT,
762     I_HIGH, HT_LAND, FL_NONE, 10, DEFAULT_ENERGY,
763     MONUSE_WEAPONS_ARMOUR, MONEAT_NOTHING, SIZE_MEDIUM, MON_SHAPE_HUMANOID
764 },
765
766 {
767     MONS_DEEP_ELF_SUMMONER, 'e', BROWN, "deep elf summoner",
768     M_SPELLCASTER | M_ACTUAL_SPELLS | M_WARM_BLOOD | M_SPEAKS,
769     MR_NO_FLAGS,
770     450, 13, MONS_ELF, MONS_ELF, MH_NATURAL, -6,
771     { {AT_HIT, AF_PLAIN, 5}, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
772     { 9, 4, 3, 0 },
773     0, 13, MST_DEEP_ELF_SUMMONER, CE_CLEAN, Z_NOZOMBIE, S_SHOUT,
774     I_HIGH, HT_LAND, FL_NONE, 10, DEFAULT_ENERGY,
775     MONUSE_WEAPONS_ARMOUR, MONEAT_NOTHING, SIZE_MEDIUM, MON_SHAPE_HUMANOID
776 },
777
778 {
779     MONS_DEEP_ELF_CONJURER, 'e', BLUE, "deep elf conjurer",
780     M_SPELLCASTER | M_ACTUAL_SPELLS | M_WARM_BLOOD | M_SPEAKS,
781     MR_NO_FLAGS,
782     450, 12, MONS_ELF, MONS_ELF, MH_NATURAL, -6,
783     { {AT_HIT, AF_PLAIN, 5}, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
784     { 9, 3, 3, 0 },
785     0, 13, MST_DEEP_ELF_CONJURER, CE_CLEAN, Z_NOZOMBIE, S_SHOUT,
786     I_HIGH, HT_LAND, FL_NONE, 10, DEFAULT_ENERGY,
787     MONUSE_WEAPONS_ARMOUR, MONEAT_NOTHING, SIZE_MEDIUM, MON_SHAPE_HUMANOID
788 },
789
790 {
791     MONS_DEEP_ELF_PRIEST, 'e', GREEN, "deep elf priest",
792     M_SPELLCASTER | M_PRIEST | M_WARM_BLOOD | M_SPEAKS,
793     MR_NO_FLAGS,
794     450, 11, MONS_ELF, MONS_ELF, MH_NATURAL, -6,
795     { {AT_HIT, AF_PLAIN, 9}, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
796     { 7, 3, 3, 0 },
797     0, 13, MST_DEEP_ELF_PRIEST, CE_CLEAN, Z_NOZOMBIE, S_SHOUT,
798     I_HIGH, HT_LAND, FL_NONE, 10, DEFAULT_ENERGY,
799     MONUSE_WEAPONS_ARMOUR, MONEAT_NOTHING, SIZE_MEDIUM, MON_SHAPE_HUMANOID
800 },
801
802 {
803     MONS_DEEP_ELF_HIGH_PRIEST, 'e', LIGHTGREEN, "deep elf high priest",
804     M_SPELLCASTER | M_SPEAKS | M_PRIEST | M_WARM_BLOOD | M_SEE_INVIS,
805     MR_NO_FLAGS,
806     450, 15, MONS_ELF, MONS_ELF, MH_NATURAL, -6,
807     { {AT_HIT, AF_PLAIN, 14}, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
808     { 11, 3, 3, 0 },
809     3, 13, MST_DEEP_ELF_HIGH_PRIEST, CE_CLEAN, Z_NOZOMBIE, S_SHOUT,
810     I_HIGH, HT_LAND, FL_NONE, 10, DEFAULT_ENERGY,
811     MONUSE_WEAPONS_ARMOUR, MONEAT_NOTHING, SIZE_MEDIUM, MON_SHAPE_HUMANOID
812 },
813
814 {
815     MONS_DEEP_ELF_DEMONOLOGIST, 'e', YELLOW, "deep elf demonologist",
816     M_SPELLCASTER | M_ACTUAL_SPELLS | M_WARM_BLOOD | M_SEE_INVIS | M_SPEAKS,
817     MR_NO_FLAGS,
818     450, 20, MONS_ELF, MONS_ELF, MH_NATURAL, -6,
819     { {AT_HIT, AF_PLAIN, 12}, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
820     { 12, 3, 3, 0 },
821     0, 13, MST_DEEP_ELF_DEMONOLOGIST, CE_CLEAN, Z_NOZOMBIE, S_SHOUT,
822     I_HIGH, HT_LAND, FL_NONE, 10, DEFAULT_ENERGY,
823     MONUSE_WEAPONS_ARMOUR, MONEAT_NOTHING, SIZE_MEDIUM, MON_SHAPE_HUMANOID
824 },
825
826 {
827     MONS_DEEP_ELF_ANNIHILATOR, 'e', LIGHTBLUE, "deep elf annihilator",
828     M_SPELLCASTER | M_ACTUAL_SPELLS | M_WARM_BLOOD | M_SEE_INVIS | M_SPEAKS,
829     MR_NO_FLAGS,
830     450, 10, MONS_ELF, MONS_ELF, MH_NATURAL, -6,
831     { {AT_HIT, AF_PLAIN, 12}, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
832     { 15, 3, 3, 0 },
833     0, 13, MST_DEEP_ELF_ANNIHILATOR, CE_CLEAN, Z_NOZOMBIE, S_SHOUT,
834     I_HIGH, HT_LAND, FL_NONE, 10, DEFAULT_ENERGY,
835     MONUSE_WEAPONS_ARMOUR, MONEAT_NOTHING, SIZE_MEDIUM, MON_SHAPE_HUMANOID
836 },
837
838 {
839     MONS_DEEP_ELF_SORCERER, 'e', LIGHTMAGENTA, "deep elf sorcerer",
840     M_SPELLCASTER | M_ACTUAL_SPELLS | M_WARM_BLOOD | M_SEE_INVIS | M_SPEAKS,
841     MR_NO_FLAGS,
842     450, 17, MONS_ELF, MONS_ELF, MH_NATURAL, -6,
843     { {AT_HIT, AF_PLAIN, 12}, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
844     { 14, 3, 3, 0 },
845     0, 13, MST_DEEP_ELF_SORCERER, CE_CLEAN, Z_NOZOMBIE, S_SHOUT,
846     I_HIGH, HT_LAND, FL_NONE, 10, DEFAULT_ENERGY,
847     MONUSE_WEAPONS_ARMOUR, MONEAT_NOTHING, SIZE_MEDIUM, MON_SHAPE_HUMANOID
848 },
849
850 {
851     MONS_DEEP_ELF_DEATH_MAGE, 'e', WHITE, "deep elf death mage",
852     M_SPELLCASTER | M_ACTUAL_SPELLS | M_WARM_BLOOD | M_SEE_INVIS | M_SPEAKS,
853     MR_NO_FLAGS,
854     450, 10, MONS_ELF, MONS_ELF, MH_NATURAL, -6,
855     { {AT_HIT, AF_PLAIN, 12}, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
856     { 15, 3, 3, 0 },
857     0, 13, MST_DEEP_ELF_DEATH_MAGE, CE_CLEAN, Z_NOZOMBIE, S_SHOUT,
858     I_HIGH, HT_LAND, FL_NONE, 10, DEFAULT_ENERGY,
859     MONUSE_WEAPONS_ARMOUR, MONEAT_NOTHING, SIZE_MEDIUM, MON_SHAPE_HUMANOID
860 },
861
862 // Mobile plants and fungi ('f')
863 {
864     MONS_WANDERING_MUSHROOM, 'f', BROWN, "wandering mushroom",
865     M_NO_FLAGS,
866     MR_RES_POISON,
867     0, 10, MONS_FUNGUS, MONS_WANDERING_MUSHROOM, MH_PLANT, -3,
868     { {AT_SPORE, AF_CONFUSE, 20}, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
869     { 8, 3, 5, 0 },
870     5, 0, MST_NO_SPELLS, CE_NOCORPSE, Z_NOZOMBIE, S_SILENT,
871     I_PLANT, HT_LAND, FL_NONE, 10, DEFAULT_ENERGY,
872     MONUSE_NOTHING, MONEAT_NOTHING, SIZE_TINY, MON_SHAPE_FUNGUS
873 },
874
875 {
876     MONS_DEATHCAP, 'f', LIGHTMAGENTA, "deathcap",
877     M_SPELLCASTER | M_FAKE_SPELLS,
878     MR_RES_COLD,
879     0, 6, MONS_FUNGUS, MONS_WANDERING_MUSHROOM, MH_UNDEAD, -5,
880     { {AT_SPORE, AF_CONFUSE, 33}, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
881     { 13, 2, 4, 0 },
882     5, 0, MST_SOUL_EATER, CE_NOCORPSE, Z_NOZOMBIE, S_SILENT,
883     I_PLANT, HT_LAND, FL_NONE, 10, DEFAULT_ENERGY,
884     MONUSE_NOTHING, MONEAT_NOTHING, SIZE_TINY, MON_SHAPE_FUNGUS
885 },
886
887 {
888     MONS_THORN_HUNTER, 'f', WHITE, "thorn hunter",
889     M_SENSE_INVIS | M_SPELLCASTER | M_FAKE_SPELLS,
890     MR_RES_POISON | MR_VUL_FIRE,
891     0, 14, MONS_PLANT, MONS_THORN_HUNTER, MH_PLANT, MAG_IMMUNE,
892     { {AT_HIT, AF_PLAIN, 27}, {AT_HIT, AF_PLAIN, 23}, AT_NO_ATK,
893        AT_NO_ATK },
894     { 15, 4, 5, 0 },
895     9, 9, MST_THORN_HUNTER, CE_NOCORPSE, Z_NOZOMBIE, S_SILENT,
896     I_ANIMAL, HT_AMPHIBIOUS, FL_NONE, 12, SWIM_ENERGY(12),
897     MONUSE_NOTHING, MONEAT_NOTHING, SIZE_LARGE, MON_SHAPE_PLANT
898 },
899
900 {
901     MONS_SHAMBLING_MANGROVE, 'f', LIGHTRED, "shambling mangrove",
902     M_SPELLCASTER | M_FAKE_SPELLS,
903     MR_RES_POISON,
904     0, 12, MONS_SHAMBLING_MANGROVE, MONS_SHAMBLING_MANGROVE, MH_PLANT, MAG_IMMUNE,
905     { {AT_HIT, AF_PLAIN, 41}, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
906     { 13, 5, 4, 0 },
907     13, 3, MST_NO_SPELLS, CE_NOCORPSE, Z_NOZOMBIE, S_SILENT,
908     I_NORMAL, HT_AMPHIBIOUS, FL_NONE, 8, DEFAULT_ENERGY,
909     MONUSE_NOTHING, MONEAT_NOTHING, SIZE_BIG, MON_SHAPE_PLANT
910 },
911
912 {
913     MONS_VINE_STALKER, 'f', GREEN, "vine stalker",
914     M_SPEAKS | M_NO_POLY_TO | M_FAST_REGEN,
915     MR_NO_FLAGS,
916     0, 10, MONS_VINE_STALKER, MONS_VINE_STALKER, MH_NATURAL, -4,
917     { {AT_HIT, AF_PLAIN, 10}, {AT_BITE, AF_ANTIMAGIC, 10}, AT_NO_ATK,
918        AT_NO_ATK },
919     { 8, 3, 3, 0 },
920     2, 12, MST_NO_SPELLS, CE_CLEAN, Z_NOZOMBIE, S_SHOUT,
921     I_NORMAL, HT_LAND, FL_NONE, 10, DEFAULT_ENERGY,
922     MONUSE_WEAPONS_ARMOUR, MONEAT_NOTHING, SIZE_MEDIUM, MON_SHAPE_HUMANOID
923 },
924
925 // goblins and other small humanoids ('g')
926 {
927     MONS_GOBLIN, 'g', LIGHTGREY, "goblin",
928     M_WARM_BLOOD | M_SPEAKS,
929     MR_NO_FLAGS,
930     400, 10, MONS_GOBLIN, MONS_GOBLIN, MH_NATURAL, -1,
931     { {AT_HIT, AF_PLAIN, 4}, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
932     { 1, 2, 4, 0 },
933     0, 12, MST_NO_SPELLS, CE_CLEAN, Z_SMALL, S_SHOUT,
934     I_NORMAL, HT_LAND, FL_NONE, 10, DEFAULT_ENERGY,
935     MONUSE_WEAPONS_ARMOUR, MONEAT_NOTHING, SIZE_SMALL, MON_SHAPE_HUMANOID
936 },
937
938 {
939     MONS_HOBGOBLIN, 'g', BROWN, "hobgoblin",
940     M_WARM_BLOOD | M_SPEAKS,
941     MR_NO_FLAGS,
942     500, 10, MONS_GOBLIN, MONS_HOBGOBLIN, MH_NATURAL, -1,
943     { {AT_HIT, AF_PLAIN, 5}, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
944     { 1, 4, 3, 0 },
945     2, 10, MST_NO_SPELLS, CE_CLEAN, Z_SMALL, S_SHOUT,
946     I_NORMAL, HT_LAND, FL_NONE, 10, DEFAULT_ENERGY,
947     MONUSE_WEAPONS_ARMOUR, MONEAT_NOTHING, SIZE_MEDIUM, MON_SHAPE_HUMANOID
948 },
949
950 {
951     MONS_GNOLL, 'g', YELLOW, "gnoll",
952     M_WARM_BLOOD | M_SPEAKS,
953     MR_NO_FLAGS,
954     680, 10, MONS_GNOLL, MONS_GNOLL, MH_NATURAL, -3,
955     { {AT_HIT, AF_PLAIN, 9}, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
956     { 2, 4, 5, 0 },
957     2, 9, MST_NO_SPELLS, CE_CLEAN, Z_SMALL, S_SHOUT,
958     I_NORMAL, HT_LAND, FL_NONE, 10, DEFAULT_ENERGY,
959     MONUSE_WEAPONS_ARMOUR, MONEAT_NOTHING, SIZE_MEDIUM, MON_SHAPE_HUMANOID
960 },
961
962 {
963     MONS_GNOLL_SHAMAN, 'g', WHITE, "gnoll shaman",
964     M_SPELLCASTER | M_PRIEST | M_WARM_BLOOD | M_SPEAKS,
965     MR_NO_FLAGS,
966     680, 10, MONS_GNOLL, MONS_GNOLL, MH_NATURAL, -4,
967     { {AT_HIT, AF_PLAIN, 10}, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
968     { 3, 4, 5, 0 },
969     2, 9, MST_GNOLL_SHAMAN, CE_CLEAN, Z_NOZOMBIE, S_SHOUT,
970     I_NORMAL, HT_LAND, FL_NONE, 10, DEFAULT_ENERGY,
971     MONUSE_WEAPONS_ARMOUR, MONEAT_NOTHING, SIZE_MEDIUM, MON_SHAPE_HUMANOID
972 },
973
974 {
975     MONS_GNOLL_SERGEANT, 'g', CYAN, "gnoll sergeant",
976     M_FIGHTER | M_WARM_BLOOD | M_SPEAKS,
977     MR_NO_FLAGS,
978     680, 10, MONS_GNOLL, MONS_GNOLL, MH_NATURAL, -3,
979     { {AT_HIT, AF_PLAIN, 11}, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
980     { 4, 4, 5, 0 },
981     2, 9, MST_NO_SPELLS, CE_CLEAN, Z_NOZOMBIE, S_SHOUT,
982     I_NORMAL, HT_LAND, FL_NONE, 10, DEFAULT_ENERGY,
983     MONUSE_WEAPONS_ARMOUR, MONEAT_NOTHING, SIZE_MEDIUM, MON_SHAPE_HUMANOID
984 },
985
986 {
987     MONS_BOGGART, 'g', MAGENTA, "boggart",
988     M_SPELLCASTER | M_ACTUAL_SPELLS | M_SEE_INVIS | M_WARM_BLOOD,
989     MR_NO_FLAGS,
990     0, 14, MONS_BOGGART, MONS_BOGGART, MH_NATURAL, -7,
991     { {AT_HIT, AF_PLAIN, 5}, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
992     { 4, 3, 4, 0 },
993     0, 12, MST_BOGGART, CE_CLEAN, Z_NOZOMBIE, S_SHOUT,
994     I_NORMAL, HT_LAND, FL_NONE, 12, DEFAULT_ENERGY,
995     MONUSE_WEAPONS_ARMOUR, MONEAT_NOTHING, SIZE_LITTLE, MON_SHAPE_HUMANOID
996 },
997
998 { // Another dummy monster.  Zombies and poly allowed.
999     MONS_DWARF, 'g', GREEN, "dwarf",
1000     M_WARM_BLOOD | M_SPEAKS,
1001     MR_NO_FLAGS,
1002     550, 10, MONS_DWARF, MONS_DWARF, MH_NATURAL, -3,
1003     { {AT_HIT, AF_PLAIN, 10}, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
1004     { 5, 3, 5, 0 },
1005     2, 12, MST_NO_SPELLS, CE_CLEAN, Z_SMALL, S_SHOUT,
1006     I_NORMAL, HT_LAND, FL_NONE, 10, DEFAULT_ENERGY,
1007     MONUSE_WEAPONS_ARMOUR, MONEAT_NOTHING, SIZE_MEDIUM, MON_SHAPE_HUMANOID
1008 },
1009
1010 {
1011     MONS_DEEP_DWARF, 'g', LIGHTBLUE, "deep dwarf",
1012     M_WARM_BLOOD | M_SPEAKS | M_NO_REGEN,
1013     MR_NO_FLAGS,
1014     600, 10, MONS_DWARF, MONS_DEEP_DWARF, MH_NATURAL, -6,
1015     { {AT_HIT, AF_PLAIN, 10}, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
1016     { 5, 3, 5, 0 },
1017     2, 12, MST_NO_SPELLS, CE_CLEAN, Z_SMALL, S_SHOUT,
1018     I_NORMAL, HT_LAND, FL_NONE, 10, DEFAULT_ENERGY,
1019     MONUSE_WEAPONS_ARMOUR, MONEAT_NOTHING, SIZE_MEDIUM, MON_SHAPE_HUMANOID
1020 },
1021
1022 // carnivorous quadrupeds ('h')
1023 {
1024     MONS_JACKAL, 'h', BROWN, "jackal",
1025     M_WARM_BLOOD | M_BLOOD_SCENT,
1026     MR_NO_FLAGS,
1027     360, 10, MONS_HOUND, MONS_JACKAL, MH_NATURAL, -1,
1028     { {AT_BITE, AF_PLAIN, 3}, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
1029     { 1, 3, 5, 0 },
1030     2, 12, MST_NO_SPELLS, CE_CLEAN, Z_SMALL, S_BARK,
1031     I_ANIMAL, HT_LAND, FL_NONE, 14, DEFAULT_ENERGY,
1032     MONUSE_NOTHING, MONEAT_NOTHING, SIZE_SMALL, MON_SHAPE_QUADRUPED
1033 },
1034
1035 {
1036     MONS_HOUND, 'h', YELLOW, "hound",
1037     M_SENSE_INVIS | M_WARM_BLOOD | M_BLOOD_SCENT,
1038     MR_NO_FLAGS,
1039     300, 10, MONS_HOUND, MONS_HOUND, MH_NATURAL, -3,
1040     { {AT_BITE, AF_PLAIN, 6}, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
1041     { 3, 3, 5, 0 },
1042     2, 13, MST_NO_SPELLS, CE_CLEAN, Z_SMALL, S_BARK,
1043     I_ANIMAL, HT_LAND, FL_NONE, 15, DEFAULT_ENERGY,
1044     MONUSE_NOTHING, MONEAT_NOTHING, SIZE_SMALL, MON_SHAPE_QUADRUPED
1045 },
1046
1047 {
1048     MONS_WARG, 'h', WHITE, "warg",
1049     M_SENSE_INVIS | M_WARM_BLOOD | M_BLOOD_SCENT,
1050     MR_RES_POISON,
1051     750, 12, MONS_HOUND, MONS_WARG, MH_NATURAL, -6,
1052     { {AT_BITE, AF_PLAIN, 18}, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
1053     { 5, 4, 5, 0 },
1054     4, 12, MST_NO_SPELLS, CE_CLEAN, Z_BIG, S_BARK,
1055     I_ANIMAL, HT_LAND, FL_NONE, 13, DEFAULT_ENERGY,
1056     MONUSE_NOTHING, MONEAT_NOTHING, SIZE_LARGE, MON_SHAPE_QUADRUPED
1057 },
1058
1059 {
1060     MONS_WOLF, 'h', LIGHTGREY, "wolf",
1061     M_SENSE_INVIS | M_WARM_BLOOD | M_BLOOD_SCENT,
1062     MR_NO_FLAGS,
1063     450, 19, MONS_HOUND, MONS_WOLF, MH_NATURAL, -3,
1064     { {AT_BITE, AF_PLAIN, 12}, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
1065     { 4, 3, 5, 0 },
1066     4, 15, MST_NO_SPELLS, CE_CLEAN, Z_SMALL, S_BARK,
1067     I_ANIMAL, HT_LAND, FL_NONE, 17, DEFAULT_ENERGY,
1068     MONUSE_NOTHING, MONEAT_NOTHING, SIZE_MEDIUM, MON_SHAPE_QUADRUPED
1069 },
1070
1071 {
1072     MONS_HOG, 'h', LIGHTMAGENTA, "hog",
1073     M_WARM_BLOOD,
1074     MR_NO_FLAGS,
1075     450, 10, MONS_HOG, MONS_HOG, MH_NATURAL, -3,
1076     { {AT_BITE, AF_PLAIN, 14}, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
1077     { 6, 3, 5, 0 },
1078     2, 9, MST_NO_SPELLS, CE_CLEAN, Z_SMALL, S_SILENT,
1079     I_ANIMAL, HT_LAND, FL_NONE, 13, DEFAULT_ENERGY,
1080     MONUSE_NOTHING, MONEAT_NOTHING, SIZE_SMALL, MON_SHAPE_QUADRUPED
1081 },
1082
1083 {
1084     MONS_HELL_HOUND, 'h', CYAN, "hell hound",
1085     M_SENSE_INVIS | M_BLOOD_SCENT,
1086     MR_RES_POISON | MR_RES_HELLFIRE | MR_VUL_COLD,
1087     450, 10, MONS_HOUND, MONS_HELL_HOUND, MH_DEMONIC, -3,
1088     { {AT_BITE, AF_PLAIN, 13}, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
1089     { 5, 3, 5, 0 },
1090     6, 13, MST_NO_SPELLS, CE_POISONOUS, Z_SMALL, S_BARK,
1091     I_ANIMAL, HT_LAND, FL_NONE, 15, DEFAULT_ENERGY,
1092     MONUSE_NOTHING, MONEAT_NOTHING, SIZE_MEDIUM, MON_SHAPE_QUADRUPED
1093 },
1094
1095 {
1096     MONS_RAIJU, 'h', LIGHTCYAN, "raiju",
1097     M_SENSE_INVIS | M_BLOOD_SCENT | M_SPELLCASTER | M_FAKE_SPELLS,
1098     mrd(MR_RES_ELEC, 3),
1099     450, 12, MONS_HOUND, MONS_RAIJU, MH_NATURAL, -3,
1100     { {AT_BITE, AF_ELEC, 11}, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
1101     { 7, 3, 5, 0 },
1102     4, 14, MST_RAIJU, CE_CLEAN, Z_SMALL, S_BARK,
1103     I_ANIMAL, HT_LAND, FL_NONE, 10, DEFAULT_ENERGY,
1104     MONUSE_NOTHING, MONEAT_NOTHING, SIZE_MEDIUM, MON_SHAPE_QUADRUPED
1105 },
1106
1107 {
1108     MONS_HELL_HOG, 'h', LIGHTRED, "hell hog",
1109     M_SPELLCASTER | M_FAKE_SPELLS,
1110     MR_NO_FLAGS,
1111     450, 10, MONS_HOG, MONS_HELL_HOG, MH_DEMONIC, -3,
1112     { {AT_BITE, AF_PLAIN, 20}, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
1113     { 11, 3, 5, 0 },
1114     2, 9, MST_HELL_HOG, CE_POISONOUS, Z_SMALL, S_SILENT,
1115     I_ANIMAL, HT_LAND, FL_NONE, 14, DEFAULT_ENERGY,
1116     MONUSE_NOTHING, MONEAT_NOTHING, SIZE_MEDIUM, MON_SHAPE_QUADRUPED
1117 },
1118
1119 {   // effect of porkalator cast on holies
1120     MONS_HOLY_SWINE, 'h', YELLOW, "holy swine",
1121     M_WARM_BLOOD,
1122     MR_NO_FLAGS,
1123     450, 10, MONS_HOG, MONS_HOLY_SWINE, MH_HOLY, -3,
1124     { {AT_BITE, AF_HOLY, 20}, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
1125     { 11, 3, 5, 0 },
1126     2, 9, MST_NO_SPELLS, CE_CLEAN, Z_SMALL, S_SILENT,
1127     I_ANIMAL, HT_LAND, FL_NONE, 14, DEFAULT_ENERGY,
1128     MONUSE_NOTHING, MONEAT_NOTHING, SIZE_SMALL, MON_SHAPE_QUADRUPED
1129 },
1130
1131 { // a dummy monster for recolouring
1132     MONS_FELID, 'h', MAGENTA, "felid",
1133     M_SEE_INVIS | M_WARM_BLOOD | M_SPEAKS | M_NO_POLY_TO,
1134     MR_NO_FLAGS,
1135     200, 10, MONS_FELID, MONS_FELID, MH_NATURAL, -6,
1136     { {AT_CLAW, AF_PLAIN, 10}, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
1137     { 5, 2, 3, 0 },
1138     2, 18, MST_NO_SPELLS, CE_CLEAN, Z_SMALL, S_HISS,
1139     I_HIGH, HT_LAND, FL_NONE, 10, MOVE_ENERGY(8),
1140     MONUSE_STARTING_EQUIPMENT, MONEAT_NOTHING, SIZE_LITTLE, MON_SHAPE_QUADRUPED
1141 },
1142
1143 DUMMY(MONS_BEAR, 'h', LIGHTGREY, "bear")
1144
1145 {
1146     MONS_POLAR_BEAR, 'h', LIGHTBLUE, "polar bear",
1147     M_WARM_BLOOD | M_SPELLCASTER | M_FAKE_SPELLS | M_FLEES,
1148     MR_RES_COLD,
1149     1200, 12, MONS_BEAR, MONS_POLAR_BEAR, MH_NATURAL, -3,
1150     { {AT_BITE, AF_PLAIN, 20}, {AT_CLAW, AF_PLAIN, 5}, {AT_CLAW, AF_PLAIN, 5},
1151        AT_NO_ATK },
1152     { 7, 5, 3, 0 },
1153     7, 8, MST_BERSERK_ESCAPE, CE_CLEAN, Z_BIG, S_GROWL,
1154     I_ANIMAL, HT_AMPHIBIOUS, FL_NONE, 10, DEFAULT_ENERGY,
1155     MONUSE_NOTHING, MONEAT_NOTHING, SIZE_LARGE, MON_SHAPE_QUADRUPED_TAILLESS
1156 },
1157
1158 {
1159     MONS_BLACK_BEAR, 'h', BLUE, "black bear",
1160     M_WARM_BLOOD | M_SPELLCASTER | M_FAKE_SPELLS | M_FLEES,
1161     MR_NO_FLAGS,
1162     800, 9, MONS_BEAR, MONS_BLACK_BEAR, MH_NATURAL, -3,
1163     { {AT_BITE, AF_PLAIN, 9}, {AT_CLAW, AF_PLAIN, 5}, {AT_CLAW, AF_PLAIN, 5},
1164        AT_NO_ATK },
1165     { 6, 3, 3, 0 },
1166     2, 8, MST_BERSERK_ESCAPE, CE_CLEAN, Z_SMALL, S_GROWL,
1167     I_ANIMAL, HT_LAND, FL_NONE, 10, DEFAULT_ENERGY,
1168     MONUSE_NOTHING, MONEAT_NOTHING, SIZE_MEDIUM, MON_SHAPE_QUADRUPED_TAILLESS
1169 },
1170
1171 // spriggans ('i')
1172 {
1173     MONS_SPRIGGAN, 'i', LIGHTGREY, "spriggan",
1174     M_WARM_BLOOD | M_SPEAKS | M_SEE_INVIS,
1175     MR_NO_FLAGS,
1176     200, 10, MONS_SPRIGGAN, MONS_SPRIGGAN, MH_NATURAL, -7,
1177     { {AT_HIT, AF_PLAIN, 15}, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
1178     { 7, 2, 3, 0 },
1179     1, 18, MST_NO_SPELLS, CE_CLEAN, Z_SMALL, S_SHOUT,
1180     I_HIGH, HT_LAND, FL_NONE, 10, MOVE_ENERGY(6),
1181     MONUSE_WEAPONS_ARMOUR, MONEAT_NOTHING, SIZE_LITTLE, MON_SHAPE_HUMANOID
1182 },
1183
1184 {   // both the guy and his ride as one monster
1185     MONS_SPRIGGAN_RIDER, 'i', LIGHTBLUE, "spriggan rider",
1186     M_WARM_BLOOD | M_SPEAKS | M_SEE_INVIS | M_FIGHTER,
1187     MR_VUL_POISON, // the mount
1188     200, 10, MONS_SPRIGGAN, MONS_SPRIGGAN, MH_NATURAL, -7,
1189     { {AT_HIT, AF_PLAIN, 27}, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
1190     { 11, 4, 3, 0 },
1191     1, 18, MST_NO_SPELLS, CE_CLEAN, Z_NOZOMBIE, S_SHOUT,
1192     I_HIGH, HT_LAND, FL_WINGED, 10, MOVE_ENERGY(6),
1193     MONUSE_WEAPONS_ARMOUR, MONEAT_NOTHING, SIZE_SMALL, MON_SHAPE_HUMANOID // ??
1194 },
1195
1196 {
1197     MONS_SPRIGGAN_DRUID, 'i', GREEN, "spriggan druid",
1198     M_WARM_BLOOD | M_SPEAKS | M_SEE_INVIS | M_SPELLCASTER | M_ACTUAL_SPELLS,
1199     MR_RES_POISON,
1200     200, 10, MONS_SPRIGGAN, MONS_SPRIGGAN, MH_NATURAL, -7,
1201     { {AT_HIT, AF_PLAIN, 18}, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
1202     { 11, 3, 2, 0 },
1203     1, 18, MST_SPRIGGAN_DRUID, CE_CLEAN, Z_NOZOMBIE, S_SHOUT,
1204     I_HIGH, HT_LAND, FL_NONE, 10, MOVE_ENERGY(6),
1205     MONUSE_WEAPONS_ARMOUR, MONEAT_NOTHING, SIZE_LITTLE, MON_SHAPE_HUMANOID
1206 },
1207
1208 {
1209     MONS_SPRIGGAN_BERSERKER, 'i', LIGHTRED, "spriggan berserker",
1210     M_WARM_BLOOD | M_SPEAKS | M_SEE_INVIS | M_FIGHTER | M_PRIEST,
1211     MR_NO_FLAGS,
1212     200, 10, MONS_SPRIGGAN, MONS_SPRIGGAN, MH_NATURAL, -7,
1213     { {AT_HIT, AF_PLAIN, 27}, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
1214     { 12, 3, 3, 0 },
1215     2, 18, MST_BK_TROG, CE_CLEAN, Z_NOZOMBIE, S_SHOUT,
1216     I_NORMAL, HT_LAND, FL_NONE, 10, MOVE_ENERGY(6),
1217     MONUSE_WEAPONS_ARMOUR, MONEAT_NOTHING, SIZE_LITTLE, MON_SHAPE_HUMANOID
1218 },
1219
1220 {
1221     MONS_SPRIGGAN_AIR_MAGE, 'i', LIGHTCYAN, "spriggan air mage",
1222     M_WARM_BLOOD | M_SPEAKS | M_SEE_INVIS | M_SPELLCASTER | M_ACTUAL_SPELLS
1223         | M_DEFLECT_MISSILES,
1224     mrd(MR_RES_ELEC, 2),
1225     200, 10, MONS_SPRIGGAN, MONS_SPRIGGAN, MH_NATURAL, -7,
1226     { {AT_HIT, AF_PLAIN, 16}, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
1227     { 14, 2, 3, 0 },
1228     1, 22, MST_SPRIGGAN_AIR_MAGE, CE_CLEAN, Z_NOZOMBIE, S_SHOUT,
1229     I_HIGH, HT_LAND, FL_LEVITATE, 10, MOVE_ENERGY(6),
1230     MONUSE_WEAPONS_ARMOUR, MONEAT_NOTHING, SIZE_LITTLE, MON_SHAPE_HUMANOID
1231 },
1232
1233 {
1234     MONS_SPRIGGAN_DEFENDER, 'i', YELLOW, "spriggan defender",
1235     M_WARM_BLOOD | M_SPEAKS | M_SEE_INVIS | M_FIGHTER,
1236     MR_NO_FLAGS,
1237     200, 10, MONS_SPRIGGAN, MONS_SPRIGGAN, MH_NATURAL, -7,
1238     { {AT_HIT, AF_PLAIN, 30}, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
1239     { 15, 3, 3, 0 },
1240     3, 22, MST_NO_SPELLS, CE_CLEAN, Z_NOZOMBIE, S_SHOUT,
1241     I_HIGH, HT_LAND, FL_NONE, 16, DEFAULT_ENERGY,
1242     MONUSE_WEAPONS_ARMOUR, MONEAT_NOTHING, SIZE_LITTLE, MON_SHAPE_HUMANOID
1243 },
1244
1245 // drakes ('k')
1246 DUMMY(MONS_DRAKE, 'k', LIGHTGREY, "drake")
1247
1248 {
1249     MONS_SWAMP_DRAKE, 'k', BROWN, "swamp drake",
1250     M_SPELLCASTER | M_WARM_BLOOD | M_FAKE_SPELLS,
1251     MR_RES_POISON,
1252     900, 20, MONS_DRAKE, MONS_SWAMP_DRAKE, MH_NATURAL, -3,
1253     { {AT_BITE, AF_PLAIN, 14}, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
1254     { 4, 5, 5, 0 },
1255     3, 11, MST_SWAMP_DRAKE, CE_POISONOUS, Z_BIG, S_ROAR,
1256     I_ANIMAL, HT_LAND, FL_WINGED, 10, DEFAULT_ENERGY,
1257     MONUSE_NOTHING, MONEAT_NOTHING, SIZE_LARGE, MON_SHAPE_QUADRUPED_WINGED
1258 },
1259
1260 {
1261     MONS_FIRE_DRAKE, 'k', LIGHTRED, "fire drake",
1262     M_WARM_BLOOD | M_FAKE_SPELLS,
1263     MR_RES_FIRE,
1264     1000, 20, MONS_DRAKE, MONS_FIRE_DRAKE, MH_NATURAL, -3,
1265     { {AT_BITE, AF_PLAIN, 8}, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
1266     { 6, 3, 5, 0 },
1267     3, 12, MST_NO_SPELLS, CE_CLEAN, Z_BIG, S_SILENT,
1268     I_ANIMAL, HT_LAND, FL_WINGED, 12, DEFAULT_ENERGY,
1269     MONUSE_NOTHING, MONEAT_NOTHING, SIZE_LARGE, MON_SHAPE_QUADRUPED_WINGED
1270 },
1271
1272 {
1273     MONS_WIND_DRAKE, 'k', WHITE, "wind drake",
1274     M_SPELLCASTER | M_WARM_BLOOD | M_FAKE_SPELLS | M_DEFLECT_MISSILES,
1275     MR_NO_FLAGS,
1276     1000, 6, MONS_DRAKE, MONS_WIND_DRAKE, MH_NATURAL, -3,
1277     { {AT_BITE, AF_PLAIN, 12}, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
1278     { 8, 5, 5, 0 },
1279     3, 12, MST_WIND_DRAKE, CE_CLEAN, Z_BIG, S_SILENT,
1280     I_ANIMAL, HT_LAND, FL_WINGED, 12, DEFAULT_ENERGY,
1281     MONUSE_NOTHING, MONEAT_NOTHING, SIZE_LARGE, MON_SHAPE_QUADRUPED_WINGED
1282 },
1283
1284 {
1285     MONS_LINDWURM, 'k', LIGHTGREEN, "lindwurm",
1286     M_WARM_BLOOD | M_GLOWS_LIGHT,
1287     MR_NO_FLAGS,
1288     950, 13, MONS_DRAKE, MONS_LINDWURM, MH_NATURAL, -3,
1289     { {AT_BITE, AF_PLAIN, 20}, {AT_CLAW, AF_PLAIN, 10},
1290       {AT_CLAW, AF_PLAIN, 10}, AT_NO_ATK },
1291     { 9, 3, 5, 0 },
1292     8, 6, MST_NO_SPELLS, CE_CLEAN, Z_BIG, S_ROAR,
1293     I_REPTILE, HT_LAND, FL_NONE, 10, DEFAULT_ENERGY,
1294     MONUSE_NOTHING, MONEAT_NOTHING, SIZE_LARGE, MON_SHAPE_QUADRUPED
1295 },
1296
1297 {
1298     MONS_DEATH_DRAKE, 'k', LIGHTGREY, "death drake",
1299     M_SPELLCASTER | M_COLD_BLOOD | M_FAKE_SPELLS,
1300     MR_RES_POISON | MR_RES_ROTTING,
1301     900, 10, MONS_DRAKE, MONS_DEATH_DRAKE, MH_NATURAL, -3,
1302     { {AT_BITE, AF_PLAIN, 12}, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
1303     { 9, 5, 7, 0 },
1304     6, 14, MST_DEATH_DRAKE, CE_ROT, Z_BIG, S_ROAR,
1305     I_ANIMAL, HT_LAND, FL_WINGED, 13, DEFAULT_ENERGY,
1306     MONUSE_NOTHING, MONEAT_NOTHING, SIZE_LARGE, MON_SHAPE_QUADRUPED_WINGED
1307 },
1308
1309 // lizards ('l')
1310 DUMMY(MONS_GIANT_LIZARD, 'l', LIGHTGREY, "giant lizard")
1311
1312 {
1313     MONS_GIANT_NEWT, 'l', GREEN, "giant newt",
1314     M_COLD_BLOOD,
1315     MR_NO_FLAGS,
1316     170, 10, MONS_GIANT_LIZARD, MONS_GIANT_NEWT, MH_NATURAL, -3,
1317     { {AT_BITE, AF_PLAIN, 3}, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
1318     { 1, 1, 2, 0 },
1319     0, 15, MST_NO_SPELLS, CE_CLEAN, Z_SMALL, S_SILENT,
1320     I_REPTILE, HT_AMPHIBIOUS, FL_NONE, 10, SWIM_ENERGY(6),
1321     MONUSE_NOTHING, MONEAT_NOTHING, SIZE_TINY, MON_SHAPE_QUADRUPED
1322 },
1323
1324 {
1325     MONS_GIANT_GECKO, 'l', YELLOW, "giant gecko",
1326     M_COLD_BLOOD,
1327     MR_NO_FLAGS,
1328     250, 16, MONS_GIANT_LIZARD, MONS_GIANT_GECKO, MH_NATURAL, -3,
1329     { {AT_BITE, AF_PLAIN, 5}, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
1330     { 1, 3, 5, 0 },
1331     1, 14, MST_NO_SPELLS, CE_CLEAN, Z_SMALL, S_SILENT,
1332     I_REPTILE, HT_LAND, FL_NONE, 12, DEFAULT_ENERGY,
1333     MONUSE_NOTHING, MONEAT_NOTHING, SIZE_LITTLE, MON_SHAPE_QUADRUPED
1334 },
1335
1336 {
1337     MONS_IGUANA, 'l', BLUE, "iguana",
1338     M_COLD_BLOOD,
1339     MR_NO_FLAGS,
1340     400, 13, MONS_GIANT_LIZARD, MONS_IGUANA, MH_NATURAL, -3,
1341     { {AT_BITE, AF_PLAIN, 15}, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
1342     { 3, 3, 5, 0 },
1343     5, 9, MST_NO_SPELLS, CE_CLEAN, Z_SMALL, S_HISS,
1344     I_REPTILE, HT_LAND, FL_NONE, 10, DEFAULT_ENERGY,
1345     MONUSE_NOTHING, MONEAT_NOTHING, SIZE_SMALL, MON_SHAPE_QUADRUPED
1346 },
1347
1348 {
1349     MONS_BASILISK, 'l', MAGENTA, "basilisk",
1350     M_COLD_BLOOD | M_SPELLCASTER | M_FAKE_SPELLS,
1351     MR_NO_FLAGS,
1352     450, 15, MONS_GIANT_LIZARD, MONS_BASILISK, MH_NATURAL, -3,
1353     { {AT_BITE, AF_PLAIN, 20}, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
1354     { 6, 4, 4, 0 },
1355     3, 12, MST_BASILISK, CE_POISONOUS, Z_SMALL, S_HISS,
1356     I_REPTILE, HT_LAND, FL_NONE, 10, DEFAULT_ENERGY,
1357     MONUSE_NOTHING, MONEAT_NOTHING, SIZE_LARGE, MON_SHAPE_QUADRUPED
1358 },
1359
1360 {
1361     MONS_KOMODO_DRAGON, 'l', LIGHTRED, "komodo dragon",
1362     M_COLD_BLOOD,
1363     MR_NO_FLAGS,
1364     800, 10, MONS_GIANT_LIZARD, MONS_KOMODO_DRAGON, MH_NATURAL, -3,
1365     { {AT_BITE, AF_PLAIN, 34}, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
1366     { 8, 3, 5, 0 },
1367     7, 8, MST_NO_SPELLS, CE_CLEAN, Z_BIG, S_HISS,
1368     I_REPTILE, HT_AMPHIBIOUS, FL_NONE, 10, SWIM_ENERGY(6),
1369     MONUSE_NOTHING, MONEAT_NOTHING, SIZE_LARGE, MON_SHAPE_QUADRUPED
1370 },
1371
1372 // merfolk ('m')
1373 {
1374     MONS_MERFOLK, 'm', LIGHTRED, "merfolk",
1375     M_WARM_BLOOD | M_SPEAKS,
1376     MR_NO_FLAGS,
1377     500, 4, MONS_MERFOLK, MONS_MERFOLK, MH_NATURAL, -3,
1378     { {AT_HIT, AF_PLAIN, 22}, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
1379     { 10, 4, 3, 0 },
1380     4, 12, MST_NO_SPELLS, CE_CLEAN, Z_SMALL, S_SHOUT,
1381     I_NORMAL, HT_AMPHIBIOUS, FL_NONE, 10, SWIM_ENERGY(6),
1382     MONUSE_WEAPONS_ARMOUR, MONEAT_NOTHING, SIZE_MEDIUM, MON_SHAPE_HUMANOID
1383 },
1384
1385 {
1386     MONS_MERFOLK_IMPALER, 'm', YELLOW, "merfolk impaler",
1387     M_WARM_BLOOD | M_SPEAKS,
1388     MR_NO_FLAGS,
1389     500, 13, MONS_MERFOLK, MONS_MERFOLK, MH_NATURAL, -3,
1390     { {AT_HIT, AF_PLAIN, 25}, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
1391     { 12, 5, 3, 0 },
1392     // Impalers prefer light armour, and are dodging experts.
1393     0, 18, MST_NO_SPELLS, CE_CLEAN, Z_NOZOMBIE, S_SHOUT,
1394     I_NORMAL, HT_AMPHIBIOUS, FL_NONE, 10, {10, 6, 6, 10, 10, 10, 10, 100},
1395     MONUSE_WEAPONS_ARMOUR, MONEAT_NOTHING, SIZE_MEDIUM, MON_SHAPE_HUMANOID
1396 },
1397
1398 {
1399     MONS_MERFOLK_JAVELINEER, 'm', WHITE, "merfolk javelineer",
1400     M_WARM_BLOOD | M_ARCHER | M_SPEAKS,
1401     MR_NO_FLAGS,
1402     500, 12, MONS_MERFOLK, MONS_MERFOLK, MH_NATURAL, -4,
1403     { {AT_HIT, AF_PLAIN, 17}, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
1404     { 13, 5, 2, 0 },
1405     0, 14, MST_NO_SPELLS, CE_CLEAN, Z_NOZOMBIE, S_SHOUT,
1406     I_NORMAL, HT_AMPHIBIOUS, FL_NONE, 10, SWIM_ENERGY(6),
1407     MONUSE_WEAPONS_ARMOUR, MONEAT_NOTHING, SIZE_MEDIUM, MON_SHAPE_HUMANOID
1408 },
1409
1410 {
1411     MONS_MERFOLK_AQUAMANCER, 'm', GREEN, "merfolk aquamancer",
1412     M_WARM_BLOOD | M_SPELLCASTER | M_ACTUAL_SPELLS | M_SPEAKS | M_SEE_INVIS,
1413     MR_NO_FLAGS,
1414     500, 8, MONS_MERFOLK, MONS_MERFOLK, MH_NATURAL, -4,
1415     { {AT_HIT, AF_PLAIN, 15}, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
1416     { 14, 3, 3, 0 },
1417     0, 12, MST_MERFOLK_AQUAMANCER, CE_CLEAN, Z_NOZOMBIE, S_SHOUT,
1418     I_NORMAL, HT_AMPHIBIOUS, FL_NONE, 10, SWIM_ENERGY(6),
1419     MONUSE_WEAPONS_ARMOUR, MONEAT_NOTHING, SIZE_MEDIUM, MON_SHAPE_HUMANOID
1420 },
1421
1422 {
1423     MONS_MERMAID, 'm', CYAN, "mermaid",
1424     M_SPELLCASTER | M_WARM_BLOOD | M_SPEAKS | M_FAKE_SPELLS,
1425     MR_NO_FLAGS,
1426     500, 10, MONS_MERMAID, MONS_MERMAID, MH_NATURAL, -5,
1427     { {AT_HIT, AF_PLAIN, 19}, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
1428     { 9, 3, 3, 0 },
1429     4, 12, MST_NO_SPELLS, CE_CLEAN, Z_SMALL, S_SHOUT,
1430     I_NORMAL, HT_AMPHIBIOUS, FL_NONE, 10, SWIM_ENERGY(6),
1431     MONUSE_WEAPONS_ARMOUR, MONEAT_NOTHING, SIZE_MEDIUM, MON_SHAPE_HUMANOID
1432 },
1433
1434 {
1435     MONS_SIREN, 'm', LIGHTCYAN, "siren",
1436     M_SPELLCASTER | M_WARM_BLOOD | M_SPEAKS | M_FAKE_SPELLS | M_NO_GEN_DERIVED,
1437     MR_NO_FLAGS,
1438     500, 10, MONS_MERMAID, MONS_SIREN, MH_NATURAL, -7,
1439     { AT_NO_ATK, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
1440     { 13, 5, 3, 0 },
1441     4, 12, MST_NO_SPELLS, CE_CLEAN, Z_SMALL, S_SHOUT,
1442     I_NORMAL, HT_AMPHIBIOUS, FL_NONE, 10, SWIM_ENERGY(6),
1443     MONUSE_NOTHING, MONEAT_NOTHING, SIZE_MEDIUM, MON_SHAPE_HUMANOID
1444 },
1445
1446 {
1447     MONS_WATER_NYMPH, 'm', MAGENTA, "water nymph",
1448     M_SPELLCASTER | M_WARM_BLOOD | M_SPEAKS | M_ACTUAL_SPELLS | M_SEE_INVIS,
1449     MR_NO_FLAGS,
1450     500, 10, MONS_WATER_NYMPH, MONS_WATER_NYMPH, MH_NATURAL, -7,
1451     { {AT_TOUCH, AF_DROWN, 12}, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
1452     { 10, 3, 4, 0 },
1453     4, 13, MST_WATER_NYMPH, CE_CLEAN, Z_SMALL, S_SHOUT,
1454     I_NORMAL, HT_AMPHIBIOUS, FL_NONE, 10, DEFAULT_ENERGY,
1455     MONUSE_NOTHING, MONEAT_NOTHING, SIZE_MEDIUM, MON_SHAPE_HUMANOID
1456 },
1457
1458 // rotting monsters ('n')
1459 {
1460     MONS_BOG_BODY, 'n', GREEN, "bog body",
1461     M_NO_ZOMBIE | M_SPELLCASTER | M_ACTUAL_SPELLS,
1462     MR_RES_FIRE | MR_RES_COLD,
1463     500, 16, MONS_GHOUL, MONS_BOG_BODY, MH_UNDEAD, -5,
1464     { {AT_HIT, AF_PLAIN, 25}, {AT_TOUCH, AF_COLD, 4}, AT_NO_ATK, AT_NO_ATK },
1465     { 6, 5, 3, 0 },
1466     1, 9, MST_BOG_BODY, CE_ROT, Z_SMALL, S_SILENT,
1467     I_NORMAL, HT_AMPHIBIOUS, FL_NONE, 10, SWIM_ENERGY(14),
1468     MONUSE_OPEN_DOORS, MONEAT_NOTHING, SIZE_MEDIUM, MON_SHAPE_HUMANOID
1469 },
1470
1471 {
1472     MONS_NECROPHAGE, 'n', LIGHTGREY, "necrophage",
1473     M_NO_ZOMBIE,
1474     MR_RES_COLD,
1475     500, 12, MONS_GHOUL, MONS_NECROPHAGE, MH_UNDEAD, -5,
1476     { {AT_HIT, AF_ROT, 8}, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
1477     { 5, 3, 5, 0 },
1478     2, 10, MST_NO_SPELLS, CE_ROT, Z_SMALL, S_SILENT,
1479     I_NORMAL, HT_LAND, FL_NONE, 10, DEFAULT_ENERGY,
1480     MONUSE_OPEN_DOORS, MONEAT_CORPSES, SIZE_MEDIUM, MON_SHAPE_HUMANOID
1481 },
1482
1483 {
1484     MONS_GHOUL, 'n', RED, "ghoul",
1485     M_NO_ZOMBIE,
1486     MR_RES_COLD,
1487     500, 10, MONS_GHOUL, MONS_GHOUL, MH_UNDEAD, -5,
1488     { {AT_HIT, AF_ROT, 30}, {AT_CLAW, AF_PLAIN, 30}, AT_NO_ATK, AT_NO_ATK },
1489     { 14, 8, 5, 0 },
1490     4, 10, MST_NO_SPELLS, CE_ROT, Z_SMALL, S_SILENT,
1491     I_NORMAL, HT_LAND, FL_NONE, 10, DEFAULT_ENERGY,
1492     MONUSE_OPEN_DOORS, MONEAT_CORPSES, SIZE_MEDIUM, MON_SHAPE_HUMANOID
1493 },
1494
1495 // orcs ('o')
1496 {
1497     MONS_ORC, 'o', LIGHTRED, "orc",
1498     M_WARM_BLOOD | M_SPEAKS,
1499     MR_NO_FLAGS,
1500     600, 15, MONS_ORC, MONS_ORC, MH_NATURAL, -3,
1501     { {AT_HIT, AF_PLAIN, 5}, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
1502     { 1, 4, 6, 0 },
1503     0, 10, MST_NO_SPELLS, CE_CLEAN, Z_SMALL, S_SHOUT,
1504     I_NORMAL, HT_LAND, FL_NONE, 10, DEFAULT_ENERGY,
1505     MONUSE_WEAPONS_ARMOUR, MONEAT_NOTHING, SIZE_MEDIUM, MON_SHAPE_HUMANOID
1506 },
1507
1508 {
1509     MONS_ORC_WIZARD, 'o', MAGENTA, "orc wizard",
1510     M_SPELLCASTER | M_ACTUAL_SPELLS | M_WARM_BLOOD | M_SPEAKS,
1511     MR_NO_FLAGS,
1512     600, 10, MONS_ORC, MONS_ORC, MH_NATURAL, -5,
1513     { {AT_HIT, AF_PLAIN, 5}, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
1514     { 3, 3, 4, 0 },
1515     1, 12, MST_NO_SPELLS, CE_CLEAN, Z_NOZOMBIE, S_SHOUT,
1516     I_NORMAL, HT_LAND, FL_NONE, 10, DEFAULT_ENERGY,
1517     MONUSE_WEAPONS_ARMOUR, MONEAT_NOTHING, SIZE_MEDIUM, MON_SHAPE_HUMANOID
1518 },
1519
1520 {
1521     MONS_ORC_PRIEST, 'o', GREEN, "orc priest",
1522     M_SPELLCASTER | M_PRIEST | M_WARM_BLOOD | M_SPEAKS,
1523     MR_NO_FLAGS,
1524     600, 10, MONS_ORC, MONS_ORC, MH_NATURAL, -4,
1525     { {AT_HIT, AF_PLAIN, 6}, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
1526     { 3, 3, 4, 0 },
1527     1, 10, MST_ORC_PRIEST, CE_CLEAN, Z_NOZOMBIE, S_SHOUT,
1528     I_NORMAL, HT_LAND, FL_NONE, 10, DEFAULT_ENERGY,
1529     MONUSE_WEAPONS_ARMOUR, MONEAT_NOTHING, SIZE_MEDIUM, MON_SHAPE_HUMANOID
1530 },
1531
1532 {
1533     MONS_ORC_WARRIOR, 'o', YELLOW, "orc warrior",
1534     M_FIGHTER | M_WARM_BLOOD | M_SPEAKS,
1535     MR_NO_FLAGS,
1536     600, 16, MONS_ORC, MONS_ORC, MH_NATURAL, -3,
1537     { {AT_HIT, AF_PLAIN, 20}, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
1538     { 4, 4, 6, 0 },
1539     0, 13, MST_NO_SPELLS, CE_CLEAN, Z_NOZOMBIE, S_SHOUT,
1540     I_NORMAL, HT_LAND, FL_NONE, 10, DEFAULT_ENERGY,
1541     MONUSE_WEAPONS_ARMOUR, MONEAT_NOTHING, SIZE_MEDIUM, MON_SHAPE_HUMANOID
1542 },
1543
1544 {
1545     MONS_ORC_KNIGHT, 'o', CYAN, "orc knight",
1546     M_FIGHTER | M_WARM_BLOOD | M_SPEAKS,
1547     MR_NO_FLAGS,
1548     600, 9, MONS_ORC, MONS_ORC, MH_NATURAL, -3,
1549     { {AT_HIT, AF_PLAIN, 25}, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
1550     { 9, 4, 7, 0 },
1551     2, 13, MST_NO_SPELLS, CE_CLEAN, Z_NOZOMBIE, S_SHOUT,
1552     I_NORMAL, HT_LAND, FL_NONE, 10, DEFAULT_ENERGY,
1553     MONUSE_WEAPONS_ARMOUR, MONEAT_NOTHING, SIZE_MEDIUM, MON_SHAPE_HUMANOID
1554 },
1555
1556 {
1557     MONS_ORC_WARLORD, 'o', LIGHTCYAN, "orc warlord",
1558     M_FIGHTER | M_WARM_BLOOD | M_SPEAKS,
1559     MR_NO_FLAGS,
1560     600, 11, MONS_ORC, MONS_ORC, MH_NATURAL, -3,
1561     { {AT_HIT, AF_PLAIN, 32}, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
1562     { 15, 4, 7, 0 },
1563     3, 10, MST_NO_SPELLS, CE_CLEAN, Z_NOZOMBIE, S_SHOUT,
1564     I_NORMAL, HT_LAND, FL_NONE, 10, DEFAULT_ENERGY,
1565     MONUSE_WEAPONS_ARMOUR, MONEAT_NOTHING, SIZE_MEDIUM, MON_SHAPE_HUMANOID
1566 },
1567
1568 {
1569     MONS_ORC_SORCERER, 'o', LIGHTMAGENTA, "orc sorcerer",
1570     M_SPELLCASTER | M_SEE_INVIS | M_SPEAKS | M_ACTUAL_SPELLS
1571         | M_WARM_BLOOD,
1572     MR_NO_FLAGS,
1573     600, 12, MONS_ORC, MONS_ORC, MH_NATURAL, -3,
1574     { {AT_HIT, AF_PLAIN, 7}, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
1575     { 9, 2, 3, 0 },
1576     5, 12, MST_ORC_SORCERER, CE_CLEAN, Z_NOZOMBIE, S_SHOUT,
1577     I_HIGH, HT_LAND, FL_NONE, 10, DEFAULT_ENERGY,
1578     MONUSE_WEAPONS_ARMOUR, MONEAT_NOTHING, SIZE_MEDIUM, MON_SHAPE_HUMANOID
1579 },
1580
1581 {
1582     MONS_ORC_HIGH_PRIEST, 'o', LIGHTGREEN, "orc high priest",
1583     M_SPELLCASTER | M_SEE_INVIS | M_SPEAKS | M_PRIEST | M_WARM_BLOOD,
1584     MR_NO_FLAGS,
1585     600, 10, MONS_ORC, MONS_ORC, MH_NATURAL, -4,
1586     { {AT_HIT, AF_PLAIN, 7}, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
1587     { 11, 3, 4, 0 },
1588     1, 12, MST_ORC_HIGH_PRIEST, CE_CLEAN, Z_NOZOMBIE, S_SHOUT,
1589     I_HIGH, HT_LAND, FL_NONE, 10, DEFAULT_ENERGY,
1590     MONUSE_WEAPONS_ARMOUR, MONEAT_NOTHING, SIZE_MEDIUM, MON_SHAPE_HUMANOID
1591 },
1592
1593 #if TAG_MAJOR_VERSION == 34
1594 {
1595     MONS_LAVA_ORC, 'o', RED, "lava orc",
1596     M_WARM_BLOOD | M_SPEAKS | M_NO_POLY_TO,
1597     mrd(MR_RES_FIRE, 3),
1598     600, 15, MONS_ORC, MONS_LAVA_ORC, MH_NATURAL, -3,
1599     { {AT_HIT, AF_PLAIN, 5}, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
1600     { 1, 4, 6, 0 },
1601     0, 10, MST_NO_SPELLS, CE_CLEAN, Z_SMALL, S_SHOUT,
1602     I_NORMAL, HT_LAND, FL_NONE, 10, DEFAULT_ENERGY,
1603     MONUSE_WEAPONS_ARMOUR, MONEAT_NOTHING, SIZE_MEDIUM, MON_SHAPE_HUMANOID
1604 },
1605 #endif
1606
1607 // humans ('p')
1608 {
1609     MONS_HUMAN, 'p', LIGHTGREY, "human",
1610     M_WARM_BLOOD | M_SPEAKS,
1611     MR_NO_FLAGS,
1612     550, 10, MONS_HUMAN, MONS_HUMAN, MH_NATURAL, -3,
1613     { {AT_HIT, AF_PLAIN, 10}, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
1614     { 6, 3, 5, 0 },
1615     3, 13, MST_NO_SPELLS, CE_CLEAN, Z_SMALL, S_SHOUT,
1616     I_NORMAL, HT_LAND, FL_NONE, 10, DEFAULT_ENERGY,
1617     MONUSE_WEAPONS_ARMOUR, MONEAT_NOTHING, SIZE_MEDIUM, MON_SHAPE_HUMANOID
1618 },
1619
1620 {
1621     MONS_SLAVE, 'p', WHITE, "slave",
1622     M_WARM_BLOOD | M_SPEAKS,
1623     MR_NO_FLAGS,
1624     550, 10, MONS_HUMAN, MONS_HUMAN, MH_NATURAL, -3,
1625     { {AT_HIT, AF_PLAIN, 10}, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
1626     { 5, 3, 5, 0 },
1627     2, 12, MST_NO_SPELLS, CE_CLEAN, Z_NOZOMBIE, S_SHOUT,
1628     I_NORMAL, HT_LAND, FL_NONE, 10, DEFAULT_ENERGY,
1629     MONUSE_STARTING_EQUIPMENT, MONEAT_NOTHING, SIZE_MEDIUM, MON_SHAPE_HUMANOID
1630 },
1631
1632 {
1633     MONS_HELL_KNIGHT, 'p', RED, "hell knight",
1634     M_FIGHTER | M_SPELLCASTER | M_ACTUAL_SPELLS | M_WARM_BLOOD | M_SPEAKS,
1635     MR_RES_HELLFIRE,
1636     550, 10, MONS_HUMAN, MONS_HUMAN, MH_NATURAL, -3,
1637     { {AT_HIT, AF_PLAIN, 26}, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
1638     { 10, 4, 5, 0 },
1639     0, 10, MST_NO_SPELLS, CE_CLEAN, Z_NOZOMBIE, S_SHOUT,
1640     I_HIGH, HT_LAND, FL_NONE, 10, DEFAULT_ENERGY,
1641     MONUSE_WEAPONS_ARMOUR, MONEAT_NOTHING, SIZE_MEDIUM, MON_SHAPE_HUMANOID
1642 },
1643
1644 {
1645     MONS_DEATH_KNIGHT, 'p', GREEN, "death knight",
1646     M_WARM_BLOOD | M_FIGHTER | M_SPELLCASTER | M_PRIEST | M_SPEAKS,
1647     MR_NO_FLAGS,
1648     600, 12, MONS_HUMAN, MONS_HUMAN, MH_NATURAL, -6,
1649     { {AT_HIT, AF_PLAIN, 28}, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
1650     { 10, 5, 6, 0 },
1651     2, 12, MST_BK_YREDELEMNUL, CE_CLEAN, Z_NOZOMBIE, S_SHOUT,
1652     I_NORMAL, HT_LAND, FL_NONE, 10, DEFAULT_ENERGY,
1653     MONUSE_WEAPONS_ARMOUR, MONEAT_NOTHING, SIZE_MEDIUM, MON_SHAPE_HUMANOID
1654 },
1655
1656 {
1657     MONS_NECROMANCER, 'p', WHITE, "necromancer",
1658     M_SPELLCASTER | M_ACTUAL_SPELLS | M_WARM_BLOOD | M_SPEAKS,
1659     MR_NO_FLAGS,
1660     550, 10, MONS_HUMAN, MONS_HUMAN, MH_NATURAL, -4,
1661     { {AT_HIT, AF_PLAIN, 6}, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
1662     { 10, 2, 4, 0 },
1663     0, 13, MST_NO_SPELLS, CE_CLEAN, Z_NOZOMBIE, S_SHOUT,
1664     I_HIGH, HT_LAND, FL_NONE, 10, DEFAULT_ENERGY,
1665     MONUSE_WEAPONS_ARMOUR, MONEAT_NOTHING, SIZE_MEDIUM, MON_SHAPE_HUMANOID
1666 },
1667
1668 {
1669     MONS_WIZARD, 'p', MAGENTA, "wizard",
1670     M_SPELLCASTER | M_SPEAKS | M_ACTUAL_SPELLS | M_WARM_BLOOD,
1671     MR_NO_FLAGS,
1672     550, 10, MONS_HUMAN, MONS_HUMAN, MH_NATURAL, -4,
1673     { {AT_HIT, AF_PLAIN, 6}, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
1674     { 10, 2, 4, 0 },
1675     0, 13, MST_NO_SPELLS, CE_CLEAN, Z_NOZOMBIE, S_SHOUT,
1676     I_HIGH, HT_LAND, FL_NONE, 10, DEFAULT_ENERGY,
1677     MONUSE_WEAPONS_ARMOUR, MONEAT_NOTHING, SIZE_MEDIUM, MON_SHAPE_HUMANOID
1678 },
1679
1680 {
1681     MONS_VAULT_GUARD, 'p', CYAN, "vault guard",
1682     M_FIGHTER | M_WARM_BLOOD | M_SEE_INVIS | M_SPEAKS,
1683     MR_NO_FLAGS,
1684     550, 12, MONS_HUMAN, MONS_HUMAN, MH_NATURAL, -3,
1685     { {AT_HIT, AF_PLAIN, 20}, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
1686     { 13, 3, 5, 0 },
1687     1, 13, MST_NO_SPELLS, CE_CLEAN, Z_NOZOMBIE, S_SHOUT,
1688     I_NORMAL, HT_LAND, FL_NONE, 10, DEFAULT_ENERGY,
1689     MONUSE_WEAPONS_ARMOUR, MONEAT_NOTHING, SIZE_MEDIUM, MON_SHAPE_HUMANOID
1690 },
1691
1692 {
1693     MONS_VAULT_SENTINEL, 'p', LIGHTBLUE, "vault sentinel",
1694     M_FIGHTER | M_WARM_BLOOD | M_SEE_INVIS | M_SPEAKS
1695         | M_SPELLCASTER | M_ACTUAL_SPELLS,
1696     MR_NO_FLAGS,
1697     550, 10, MONS_HUMAN, MONS_HUMAN, MH_NATURAL, -4,
1698     { {AT_HIT, AF_PLAIN, 15}, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
1699     { 8, 4, 5, 0 },
1700     1, 13, MST_VAULT_SENTINEL, CE_CLEAN, Z_NOZOMBIE, S_SHOUT,
1701     I_NORMAL, HT_LAND, FL_NONE, 10, DEFAULT_ENERGY,
1702     MONUSE_WEAPONS_ARMOUR, MONEAT_NOTHING, SIZE_MEDIUM, MON_SHAPE_HUMANOID
1703 },
1704
1705 {
1706     MONS_VAULT_WARDEN, 'p', LIGHTRED, "vault warden",
1707     M_FIGHTER | M_WARM_BLOOD | M_SEE_INVIS | M_SPEAKS,
1708     MR_NO_FLAGS,
1709     550, 12, MONS_HUMAN, MONS_HUMAN, MH_NATURAL, -3,
1710     { {AT_HIT, AF_PLAIN, 36}, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
1711     { 16, 3, 5, 0 },
1712     1, 13, MST_NO_SPELLS, CE_CLEAN, Z_NOZOMBIE, S_SHOUT,
1713     I_NORMAL, HT_LAND, FL_NONE, 10, DEFAULT_ENERGY,
1714     MONUSE_WEAPONS_ARMOUR, MONEAT_NOTHING, SIZE_MEDIUM, MON_SHAPE_HUMANOID
1715 },
1716
1717 {
1718     MONS_IRONBRAND_CONVOKER, 'p', YELLOW, "ironbrand convoker",
1719     M_WARM_BLOOD | M_SPEAKS | M_SPELLCASTER | M_ACTUAL_SPELLS,
1720     MR_NO_FLAGS,
1721     550, 12, MONS_HUMAN, MONS_HUMAN, MH_NATURAL, -3,
1722     { {AT_HIT, AF_PLAIN, 20}, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
1723     { 9, 3, 5, 0 },
1724     0, 10, MST_IRONBRAND_CONVOKER, CE_CLEAN, Z_NOZOMBIE, S_SHOUT,
1725     I_NORMAL, HT_LAND, FL_NONE, 10, DEFAULT_ENERGY,
1726     MONUSE_WEAPONS_ARMOUR, MONEAT_NOTHING, SIZE_MEDIUM, MON_SHAPE_HUMANOID
1727 },
1728
1729 {
1730     MONS_IRONHEART_PRESERVER, 'p', LIGHTGREEN, "ironheart preserver",
1731     M_WARM_BLOOD | M_SPEAKS | M_SPELLCASTER | M_ACTUAL_SPELLS,
1732     MR_NO_FLAGS,
1733     550, 12, MONS_HUMAN, MONS_HUMAN, MH_NATURAL, -3,
1734     { {AT_HIT, AF_PLAIN, 25}, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
1735     { 12, 4, 5, 0 },
1736     0, 10, MST_IRONHEART_PRESERVER, CE_CLEAN, Z_NOZOMBIE, S_SHOUT,
1737     I_NORMAL, HT_LAND, FL_NONE, 10, DEFAULT_ENERGY,
1738     MONUSE_WEAPONS_ARMOUR, MONEAT_NOTHING, SIZE_MEDIUM, MON_SHAPE_HUMANOID
1739 },
1740
1741 {
1742     MONS_SHAPESHIFTER, 'p', LIGHTRED, "shapeshifter",
1743     M_NO_SKELETON | M_NO_ZOMBIE,
1744     MR_NO_FLAGS,
1745     600, 10, MONS_SHAPESHIFTER, MONS_SHAPESHIFTER, MH_NATURAL, -6,
1746     { {AT_HIT, AF_PLAIN, 5}, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
1747     { 7, 3, 5, 0 },
1748     0, 10, MST_NO_SPELLS, CE_MUTAGEN, Z_SMALL, S_SILENT,
1749     I_NORMAL, HT_LAND, FL_NONE, 10, DEFAULT_ENERGY,
1750     MONUSE_OPEN_DOORS, MONEAT_NOTHING, SIZE_MEDIUM, MON_SHAPE_HUMANOID
1751 },
1752
1753 {
1754     MONS_GLOWING_SHAPESHIFTER, 'p', LIGHTRED, "glowing shapeshifter",
1755     M_NO_SKELETON | M_NO_ZOMBIE | M_GLOWS_RADIATION,
1756     MR_NO_FLAGS,
1757     600, 10, MONS_SHAPESHIFTER, MONS_GLOWING_SHAPESHIFTER, MH_NATURAL, -6,
1758     { {AT_HIT, AF_PLAIN, 15}, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
1759     { 10, 3, 5, 0 },
1760     0, 10, MST_NO_SPELLS, CE_MUTAGEN, Z_SMALL, S_SILENT,
1761     I_NORMAL, HT_LAND, FL_NONE, 10, DEFAULT_ENERGY,
1762     MONUSE_OPEN_DOORS, MONEAT_NOTHING, SIZE_MEDIUM, MON_SHAPE_HUMANOID
1763 },
1764
1765 {
1766     MONS_KILLER_KLOWN, 'p', BLACK, "Killer Klown",
1767     M_SEE_INVIS | M_SPEAKS | M_WARM_BLOOD | M_FAST_REGEN | M_BLINKER,
1768     MR_NO_FLAGS,
1769     0, 17, MONS_HUMAN, MONS_HUMAN, MH_NATURAL, -6,
1770     { {AT_HIT, AF_KLOWN, 30}, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
1771     { 20, 5, 5, 0 },
1772     10, 15, MST_NO_SPELLS, CE_CLEAN, Z_NOZOMBIE, S_SHOUT,
1773     I_HIGH, HT_LAND, FL_NONE, 13, DEFAULT_ENERGY,
1774     MONUSE_OPEN_DOORS, MONEAT_NOTHING, SIZE_MEDIUM, MON_SHAPE_HUMANOID
1775 },
1776
1777 { // dummy; spawns in a single vault.
1778     MONS_DEMIGOD, 'p', YELLOW, "demigod",
1779     M_WARM_BLOOD | M_SPEAKS | M_NO_POLY_TO,
1780     MR_NO_FLAGS,
1781     550, 10, MONS_HUMAN, MONS_DEMIGOD, MH_NATURAL, -4,
1782     { {AT_HIT, AF_PLAIN, 10}, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
1783     { 5, 5, 5, 0 },
1784     2, 12, MST_NO_SPELLS, CE_CLEAN, Z_SMALL, S_SHOUT,
1785     I_NORMAL, HT_LAND, FL_NONE, 10, DEFAULT_ENERGY,
1786     MONUSE_WEAPONS_ARMOUR, MONEAT_NOTHING, SIZE_MEDIUM, MON_SHAPE_HUMANOID
1787 },
1788
1789 { // dummy... literally; single vault
1790     MONS_HALFLING, 'p', LIGHTGREY, "halfling",
1791     M_WARM_BLOOD | M_SPEAKS | M_NO_POLY_TO,
1792     MR_NO_FLAGS,
1793     400, 10, MONS_HALFLING, MONS_HALFLING, MH_NATURAL, -2,
1794     { {AT_HIT, AF_PLAIN, 6}, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
1795     { 3, 2, 3, 0 },
1796     2, 12, MST_NO_SPELLS, CE_CLEAN, Z_SMALL, S_SHOUT,
1797     I_NORMAL, HT_LAND, FL_NONE, 10, DEFAULT_ENERGY,
1798     MONUSE_WEAPONS_ARMOUR, MONEAT_NOTHING, SIZE_SMALL, MON_SHAPE_HUMANOID
1799 },
1800
1801 // rodents ('r')
1802 {
1803     MONS_RAT, 'r', BROWN, "rat",
1804     M_WARM_BLOOD,
1805     MR_NO_FLAGS,
1806     200, 1, MONS_RAT, MONS_RAT, MH_NATURAL, -1,
1807     { {AT_BITE, AF_PLAIN, 3}, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
1808     { 1, 1, 3, 0 },
1809     1, 10, MST_NO_SPELLS, CE_CLEAN, Z_SMALL, S_SILENT,
1810     I_ANIMAL, HT_LAND, FL_NONE, 10, DEFAULT_ENERGY,
1811     MONUSE_NOTHING, MONEAT_NOTHING, SIZE_TINY, MON_SHAPE_QUADRUPED
1812 },
1813
1814 {
1815     MONS_QUOKKA, 'r', WHITE, "quokka",
1816     M_WARM_BLOOD,
1817     MR_NO_FLAGS,
1818     300, 10, MONS_QUOKKA, MONS_QUOKKA, MH_NATURAL, -1,
1819     { {AT_BITE, AF_PLAIN, 5}, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
1820     { 1, 3, 5, 0 },
1821     2, 13, MST_NO_SPELLS, CE_CLEAN, Z_SMALL, S_SILENT,
1822     I_ANIMAL, HT_LAND, FL_NONE, 12, DEFAULT_ENERGY,
1823     MONUSE_NOTHING, MONEAT_NOTHING, SIZE_LITTLE, MON_SHAPE_QUADRUPED
1824 },
1825
1826 {
1827     MONS_GREEN_RAT, 'r', LIGHTGREEN, "green rat",
1828     M_WARM_BLOOD,
1829     MR_NO_FLAGS,
1830     220, 13, MONS_RAT, MONS_GREEN_RAT, MH_NATURAL, -3,
1831     { {AT_BITE, AF_PLAIN, 10}, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
1832     { 2, 3, 5, 0 },
1833     5, 11, MST_NO_SPELLS, CE_POISONOUS, Z_SMALL, S_SILENT,
1834     I_ANIMAL, HT_LAND, FL_NONE, 10, DEFAULT_ENERGY,
1835     MONUSE_NOTHING, MONEAT_NOTHING, SIZE_TINY, MON_SHAPE_QUADRUPED
1836 },
1837
1838 {
1839     MONS_ORANGE_RAT, 'r', LIGHTRED, "orange rat",
1840     M_WARM_BLOOD | M_GLOWS_LIGHT,
1841     MR_NO_FLAGS,
1842     300, 10, MONS_RAT, MONS_ORANGE_RAT, MH_NATURAL, -3,
1843     { {AT_BITE, AF_DRAIN_XP, 20}, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
1844     { 3, 3, 5, 0 },
1845     7, 10, MST_NO_SPELLS, CE_POISONOUS, Z_SMALL, S_ROAR,
1846     I_ANIMAL, HT_LAND, FL_NONE, 12, DEFAULT_ENERGY,
1847     MONUSE_NOTHING, MONEAT_NOTHING, SIZE_LITTLE, MON_SHAPE_QUADRUPED
1848 },
1849
1850 {
1851     MONS_PORCUPINE, 'r', BLUE, "porcupine",
1852     M_WARM_BLOOD,
1853     MR_NO_FLAGS,
1854     220, 26, MONS_RAT, MONS_PORCUPINE, MH_NATURAL, -3,
1855     { {AT_BITE, AF_PLAIN, 7}, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
1856     { 4, 2, 4, 0 },
1857     2, 12, MST_NO_SPELLS, CE_CLEAN, Z_SMALL, S_SILENT,
1858     I_ANIMAL, HT_LAND, FL_NONE, 12, DEFAULT_ENERGY,
1859     MONUSE_NOTHING, MONEAT_NOTHING, SIZE_TINY, MON_SHAPE_QUADRUPED
1860 },
1861
1862 // spiders and insects ('s')
1863 {
1864     MONS_GIANT_COCKROACH, 's', BROWN, "giant cockroach",
1865     M_NO_SKELETON,
1866     MR_VUL_POISON,
1867     250, 10, MONS_GIANT_COCKROACH, MONS_GIANT_COCKROACH, MH_NATURAL, -1,
1868     { {AT_BITE, AF_PLAIN, 2}, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
1869     { 1, 3, 4, 0 },
1870     3, 10, MST_NO_SPELLS, CE_CLEAN, Z_SMALL, S_SILENT,
1871     I_INSECT, HT_LAND, FL_NONE, 12, DEFAULT_ENERGY,
1872     MONUSE_NOTHING, MONEAT_NOTHING, SIZE_LITTLE, MON_SHAPE_INSECT
1873 },
1874
1875 {
1876     MONS_GIANT_MITE, 's', LIGHTRED, "giant mite",
1877     M_NO_SKELETON,
1878     MR_VUL_POISON,
1879     300, 10, MONS_GIANT_MITE, MONS_GIANT_MITE, MH_NATURAL, -1,
1880     { {AT_BITE, AF_POISON, 5}, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
1881     { 2, 3, 5, 0 },
1882     1, 7, MST_NO_SPELLS, CE_POISONOUS, Z_SMALL, S_SILENT,
1883     I_INSECT, HT_LAND, FL_NONE, 10, DEFAULT_ENERGY,
1884     MONUSE_NOTHING, MONEAT_NOTHING, SIZE_LITTLE, MON_SHAPE_ARACHNID
1885 },
1886
1887 {
1888     MONS_SCORPION, 's', YELLOW, "scorpion",
1889     M_NO_SKELETON,
1890     MR_VUL_POISON,
1891     320, 13, MONS_SCORPION, MONS_SCORPION, MH_NATURAL, -3,
1892     { {AT_STING, AF_POISON, 10}, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
1893     { 4, 3, 3, 0 },
1894     5, 10, MST_NO_SPELLS, CE_POISONOUS, Z_SMALL, S_SILENT,
1895     I_INSECT, HT_LAND, FL_NONE, 10, DEFAULT_ENERGY,
1896     MONUSE_NOTHING, MONEAT_NOTHING, SIZE_SMALL, MON_SHAPE_ARACHNID
1897 },
1898
1899 {
1900     MONS_EMPEROR_SCORPION, 's', LIGHTGREY, "emperor scorpion",
1901     M_NO_SKELETON,
1902     MR_RES_POISON,
1903     900, 13, MONS_SCORPION, MONS_EMPEROR_SCORPION, MH_NATURAL, -3,
1904     { {AT_STING, AF_POISON, 30}, {AT_CLAW, AF_PLAIN, 15},
1905       {AT_CLAW, AF_PLAIN, 15}, AT_NO_ATK },
1906     { 14, 6, 5, 0 },
1907     20, 12, MST_NO_SPELLS, CE_POISONOUS, Z_BIG, S_SILENT,
1908     I_INSECT, HT_LAND, FL_NONE, 10, DEFAULT_ENERGY,
1909     MONUSE_NOTHING, MONEAT_NOTHING, SIZE_GIANT, MON_SHAPE_ARACHNID
1910 },
1911
1912 {
1913     MONS_SPIDER, 's', CYAN, "spider",
1914     M_NO_SKELETON | M_WEB_SENSE,
1915     MR_VUL_POISON,
1916     250, 10, MONS_SPIDER, MONS_SPIDER, MH_NATURAL, -2,
1917     { {AT_BITE, AF_POISON, 10}, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
1918     { 5, 3, 3, 0 },
1919     3, 10, MST_NO_SPELLS, CE_POISONOUS, Z_SMALL, S_HISS,
1920     I_INSECT, HT_LAND, FL_NONE, 15, DEFAULT_ENERGY,
1921     MONUSE_NOTHING, MONEAT_NOTHING, SIZE_TINY, MON_SHAPE_ARACHNID
1922 },
1923
1924 {
1925     MONS_TARANTELLA, 's', LIGHTMAGENTA, "tarantella",
1926     M_NO_SKELETON | M_WEB_SENSE,
1927     MR_VUL_POISON,
1928     300, 6, MONS_SPIDER, MONS_TARANTELLA, MH_NATURAL, -2,
1929     { {AT_BITE, AF_CONFUSE, 19}, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
1930     { 8, 2, 3, 0 },
1931     3, 14, MST_NO_SPELLS, CE_POISONOUS, Z_SMALL, S_HISS,
1932     I_INSECT, HT_LAND, FL_NONE, 15, DEFAULT_ENERGY,
1933     MONUSE_NOTHING, MONEAT_NOTHING, SIZE_SMALL, MON_SHAPE_ARACHNID
1934 },
1935
1936 {
1937     MONS_JUMPING_SPIDER, 's', LIGHTBLUE, "jumping spider",
1938     M_NO_SKELETON | M_SPELLCASTER | M_FAKE_SPELLS | M_WEB_SENSE | M_SENSE_INVIS,
1939     MR_VUL_POISON,
1940     300, 8, MONS_SPIDER, MONS_JUMPING_SPIDER, MH_NATURAL, -2,
1941     { {AT_POUNCE, AF_ENSNARE, 20}, {AT_BITE, AF_POISON, 5}, AT_NO_ATK,
1942        AT_NO_ATK },
1943     { 8, 2, 4, 0 },
1944     6, 12, MST_JUMPING_SPIDER, CE_POISONOUS, Z_SMALL, S_HISS,
1945     I_INSECT, HT_LAND, FL_NONE, 15, DEFAULT_ENERGY,
1946     MONUSE_NOTHING, MONEAT_NOTHING, SIZE_MEDIUM, MON_SHAPE_ARACHNID
1947 },
1948
1949 {
1950     MONS_WOLF_SPIDER, 's', WHITE, "wolf spider",
1951     M_NO_SKELETON | M_WEB_SENSE,
1952     MR_VUL_POISON,
1953     900, 4, MONS_SPIDER, MONS_WOLF_SPIDER, MH_NATURAL, -2,
1954     { {AT_HIT, AF_PLAIN, 25}, {AT_BITE, AF_POISON, 15}, AT_NO_ATK,
1955        AT_NO_ATK },
1956     { 11, 3, 4, 0 },
1957     3, 10, MST_NO_SPELLS, CE_POISONOUS, Z_SMALL, S_HISS,
1958     I_INSECT, HT_LAND, FL_NONE, 15, DEFAULT_ENERGY,
1959     MONUSE_NOTHING, MONEAT_NOTHING, SIZE_MEDIUM, MON_SHAPE_ARACHNID
1960 },
1961
1962 {
1963     MONS_TRAPDOOR_SPIDER, 's', LIGHTCYAN, "trapdoor spider",
1964     M_NO_SKELETON | M_SUBMERGES | M_WEB_SENSE,
1965     MR_VUL_POISON,
1966     240, 5, MONS_SPIDER, MONS_TRAPDOOR_SPIDER, MH_NATURAL, -2,
1967     { {AT_BITE, AF_POISON, 20}, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
1968     { 8, 3, 4, 0 },
1969     3, 10, MST_NO_SPELLS, CE_POISONOUS, Z_SMALL, S_HISS,
1970     I_INSECT, HT_LAND, FL_NONE, 15, DEFAULT_ENERGY,
1971     MONUSE_NOTHING, MONEAT_NOTHING, SIZE_LITTLE, MON_SHAPE_ARACHNID
1972 },
1973
1974 {
1975     MONS_REDBACK, 's', RED, "redback",
1976     M_NO_SKELETON | M_WEB_SENSE,
1977     MR_VUL_POISON,
1978     130, 5, MONS_SPIDER, MONS_REDBACK, MH_NATURAL, -2,
1979     { {AT_BITE, AF_POISON_STRONG, 18}, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
1980     { 9, 2, 2, 0 },
1981     2, 12, MST_NO_SPELLS, CE_POISONOUS, Z_SMALL, S_SILENT,
1982     I_INSECT, HT_LAND, FL_NONE, 15, DEFAULT_ENERGY,
1983     MONUSE_NOTHING, MONEAT_NOTHING, SIZE_TINY, MON_SHAPE_ARACHNID
1984 },
1985
1986 {
1987     MONS_DEMONIC_CRAWLER, 's', LIGHTGREEN, "demonic crawler",
1988     M_NO_SKELETON | M_SEE_INVIS,
1989     MR_RES_ELEC | MR_RES_POISON | MR_RES_COLD | MR_RES_FIRE,
1990     900, 4, MONS_DEMONIC_CRAWLER, MONS_DEMONIC_CRAWLER, MH_DEMONIC, -8,
1991     { {AT_HIT, AF_PLAIN, 13}, {AT_HIT, AF_PLAIN, 13}, {AT_HIT, AF_PLAIN, 13},
1992        AT_NO_ATK },
1993     { 9, 4, 5, 0 },
1994     10, 6, MST_NO_SPELLS, CE_POISONOUS, Z_BIG, S_SCREAM,
1995     I_INSECT, HT_LAND, FL_NONE, 13, DEFAULT_ENERGY,
1996     MONUSE_NOTHING, MONEAT_NOTHING, SIZE_BIG, MON_SHAPE_CENTIPEDE
1997 },
1998
1999 {
2000     MONS_ORB_SPIDER, 's', MAGENTA, "orb spider",
2001     M_NO_SKELETON | M_SPELLCASTER | M_FAKE_SPELLS | M_WEB_SENSE
2002         | M_MAINTAIN_RANGE,
2003     MR_VUL_POISON,
2004     300, 20, MONS_SPIDER, MONS_ORB_SPIDER, MH_NATURAL, -4,
2005     { {AT_BITE, AF_POISON, 5}, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
2006     { 7, 4, 4, 0 },
2007     3, 10, MST_ORB_SPIDER, CE_POISONOUS, Z_SMALL, S_HISS,
2008     I_INSECT, HT_LAND, FL_NONE, 12, SPELL_ENERGY(20),
2009     MONUSE_NOTHING, MONEAT_NOTHING, SIZE_SMALL, MON_SHAPE_ARACHNID
2010 },
2011
2012 // testudines and crocodiles ('t')
2013 {
2014     MONS_CROCODILE, 't', BROWN, "crocodile",
2015     M_COLD_BLOOD | M_SUBMERGES,
2016     MR_NO_FLAGS,
2017     800, 10, MONS_CROCODILE, MONS_CROCODILE, MH_NATURAL, -3,
2018     { {AT_BITE, AF_PLAIN, 20}, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
2019     { 5, 3, 5, 0 },
2020     4, 10, MST_NO_SPELLS, CE_CLEAN, Z_BIG, S_SILENT,
2021     I_REPTILE, HT_AMPHIBIOUS, FL_NONE, 10, SWIM_ENERGY(6),
2022     MONUSE_NOTHING, MONEAT_NOTHING, SIZE_LARGE, MON_SHAPE_QUADRUPED
2023 },
2024
2025 {
2026     MONS_BABY_ALLIGATOR, 't', BLUE, "baby alligator",
2027     M_COLD_BLOOD | M_SPELLCASTER | M_SUBMERGES | M_FAKE_SPELLS,
2028     MR_NO_FLAGS,
2029     300, 10, MONS_CROCODILE, MONS_BABY_ALLIGATOR, MH_NATURAL, -3,
2030     { {AT_BITE, AF_PLAIN, 20}, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
2031     { 7, 3, 5, 0 },
2032     1, 11, MST_NO_SPELLS, CE_CLEAN, Z_SMALL, S_SILENT,
2033     I_REPTILE, HT_AMPHIBIOUS, FL_NONE, 12, SWIM_ENERGY(6),
2034     MONUSE_NOTHING, MONEAT_NOTHING, SIZE_SMALL, MON_SHAPE_QUADRUPED
2035 },
2036
2037 {
2038     MONS_ALLIGATOR, 't', LIGHTBLUE, "alligator",
2039     M_COLD_BLOOD | M_SPELLCASTER | M_SUBMERGES | M_FAKE_SPELLS,
2040     MR_NO_FLAGS,
2041     850, 10, MONS_CROCODILE, MONS_ALLIGATOR, MH_NATURAL, -3,
2042     { {AT_BITE, AF_PLAIN, 30}, {AT_TAIL_SLAP, AF_PLAIN, 15}, AT_NO_ATK,
2043        AT_NO_ATK },
2044     { 12, 3, 6, 0 },
2045     5, 9, MST_ALLIGATOR, CE_CLEAN, Z_BIG, S_SILENT,
2046     I_REPTILE, HT_AMPHIBIOUS, FL_NONE, 10, {10, 6, 8, 8, 8, 8, 8, 80},
2047     MONUSE_NOTHING, MONEAT_NOTHING, SIZE_LARGE, MON_SHAPE_QUADRUPED
2048 },
2049
2050 {
2051     MONS_SNAPPING_TURTLE, 't', GREEN, "snapping turtle",
2052     M_COLD_BLOOD,
2053     MR_NO_FLAGS,
2054     600, 10, MONS_SNAPPING_TURTLE, MONS_SNAPPING_TURTLE, MH_NATURAL, -3,
2055     { {AT_BITE, AF_REACH, 30}, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
2056     { 10, 3, 6, 0 },
2057     16, 5, MST_NO_SPELLS, CE_CLEAN, Z_SMALL, S_HISS,
2058     I_REPTILE, HT_AMPHIBIOUS, FL_NONE, 8, {10, 6, 8, 8, 8, 8, 8, 80},
2059     MONUSE_NOTHING, MONEAT_NOTHING, SIZE_MEDIUM, MON_SHAPE_QUADRUPED_TAILLESS
2060 },
2061
2062 {
2063     MONS_ALLIGATOR_SNAPPING_TURTLE, 't', LIGHTGREEN, "alligator snapping turtle",
2064     M_COLD_BLOOD,
2065     MR_NO_FLAGS,
2066     1100, 10, MONS_SNAPPING_TURTLE, MONS_ALLIGATOR_SNAPPING_TURTLE,
2067         MH_NATURAL, -3,
2068     { {AT_BITE, AF_REACH, 50}, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
2069     { 16, 7, 4, 0 },
2070     19, 1, MST_NO_SPELLS, CE_CLEAN, Z_BIG, S_HISS,
2071     I_REPTILE, HT_AMPHIBIOUS, FL_NONE, 8, SWIM_ENERGY(6),
2072     MONUSE_NOTHING, MONEAT_NOTHING, SIZE_LARGE, MON_SHAPE_QUADRUPED_TAILLESS
2073 },
2074
2075 DUMMY(MONS_CRAB, 't', LIGHTGREY, "crab")
2076
2077 {
2078     MONS_FIRE_CRAB, 't', LIGHTRED, "fire crab",
2079     M_NO_SKELETON,
2080     MR_VUL_POISON | mrd(MR_RES_FIRE, 3),
2081     320, 25, MONS_CRAB, MONS_FIRE_CRAB, MH_NATURAL, -4,
2082     { {AT_BITE, AF_FIRE, 15}, {AT_CLAW, AF_FIRE, 15}, AT_NO_ATK, AT_NO_ATK },
2083     { 8, 4, 5, 0 },
2084     9, 6, MST_NO_SPELLS, CE_POISONOUS, Z_SMALL, S_SILENT,
2085     I_INSECT, HT_LAND, FL_NONE, 10, DEFAULT_ENERGY,
2086     MONUSE_NOTHING, MONEAT_NOTHING, SIZE_SMALL, MON_SHAPE_QUADRUPED // ??
2087 },
2088
2089 {
2090     MONS_GHOST_CRAB, 't', LIGHTGREY, "ghost crab",
2091     M_NO_SKELETON,
2092     MR_VUL_POISON | mrd(MR_RES_NEG, 3) | MR_RES_ROTTING,
2093     320, 25, MONS_CRAB, MONS_GHOST_CRAB, MH_NATURAL, -4,
2094     { {AT_BITE, AF_DRAIN_XP, 20}, {AT_CLAW, AF_DRAIN_XP, 15}, AT_NO_ATK, AT_NO_ATK },
2095     { 9, 4, 5, 0 },
2096     9, 6, MST_NO_SPELLS, CE_ROT, Z_SMALL, S_SILENT,
2097     I_INSECT, HT_AMPHIBIOUS, FL_NONE, 10, DEFAULT_ENERGY,
2098     MONUSE_NOTHING, MONEAT_NOTHING, SIZE_SMALL, MON_SHAPE_QUADRUPED
2099 },
2100
2101 {
2102     MONS_APOCALYPSE_CRAB, 't', WHITE, "apocalypse crab",
2103     M_NO_SKELETON | M_SEE_INVIS,
2104     MR_VUL_POISON | mrd(MR_RES_FIRE | MR_RES_COLD, 2),
2105     320, 13, MONS_CRAB, MONS_APOCALYPSE_CRAB, MH_DEMONIC, -5,
2106     { {AT_BITE, AF_CHAOS, 15}, {AT_CLAW, AF_CHAOS, 15}, AT_NO_ATK, AT_NO_ATK },
2107     { 8, 4, 5, 0 },
2108     11, 6, MST_NO_SPELLS, CE_MUTAGEN, Z_SMALL, S_SILENT,
2109     I_INSECT, HT_AMPHIBIOUS, FL_NONE, 10, DEFAULT_ENERGY,
2110     MONUSE_NOTHING, MONEAT_NOTHING, SIZE_SMALL, MON_SHAPE_QUADRUPED
2111 },
2112
2113 // ugly things ('u')
2114 // NOTE: ugly things are ghost demons and thus their stats vary treacherously
2115 // from those below. beware!
2116 {
2117     MONS_UGLY_THING, 'u', BLACK, "ugly thing",
2118     M_WARM_BLOOD | M_GLOWS_RADIATION | M_HERD | M_NO_GEN_DERIVED,
2119     MR_NO_FLAGS,
2120     600, 6, MONS_UGLY_THING, MONS_UGLY_THING, MH_NATURAL, -3,
2121     { {AT_HIT, AF_PLAIN, 17}, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
2122     { 12, 3, 5, 0 },
2123     4, 10, MST_NO_SPELLS, CE_MUTAGEN, Z_SMALL, S_GURGLE,
2124     I_ANIMAL, HT_LAND, FL_NONE, 10, MOVE_ENERGY(9),
2125     MONUSE_OPEN_DOORS, MONEAT_NOTHING, SIZE_MEDIUM, MON_SHAPE_MISC
2126 },
2127
2128 {
2129     MONS_VERY_UGLY_THING, 'u', BLACK, "very ugly thing",
2130     M_WARM_BLOOD | M_GLOWS_RADIATION | M_HERD | M_NO_GEN_DERIVED,
2131     MR_NO_FLAGS,
2132     830, 10, MONS_UGLY_THING, MONS_VERY_UGLY_THING, MH_NATURAL, -3,
2133     { {AT_HIT, AF_PLAIN, 27}, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
2134     { 18, 3, 5, 0 },
2135     6, 10, MST_NO_SPELLS, CE_MUTAGEN, Z_BIG, S_GURGLE,
2136     I_ANIMAL, HT_LAND, FL_NONE, 10, MOVE_ENERGY(9),
2137     MONUSE_OPEN_DOORS, MONEAT_NOTHING, SIZE_LARGE, MON_SHAPE_MISC
2138 },
2139
2140 // vortices ('v')
2141 {
2142     MONS_FIRE_VORTEX, 'v', RED, "fire vortex",
2143     M_CONFUSED | M_INSUBSTANTIAL | M_GLOWS_LIGHT,
2144     MR_RES_POISON | mrd(MR_RES_FIRE, 3) | MR_VUL_COLD | MR_RES_ELEC,
2145     0, 5, MONS_FIRE_VORTEX, MONS_FIRE_VORTEX, MH_NONLIVING, MAG_IMMUNE,
2146     { {AT_HIT, AF_PURE_FIRE, 0}, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
2147     { 10, 2, 2, 0 },
2148     0, 5, MST_NO_SPELLS, CE_NOCORPSE, Z_NOZOMBIE, S_SILENT,
2149     I_PLANT, HT_LAND, FL_LEVITATE, 15, DEFAULT_ENERGY,
2150     MONUSE_NOTHING, MONEAT_NOTHING, SIZE_LARGE, MON_SHAPE_MISC
2151 },
2152
2153 {
2154     MONS_SPATIAL_VORTEX, 'v', BLACK, "spatial vortex",
2155     M_CONFUSED | M_INSUBSTANTIAL | M_GLOWS_LIGHT,
2156     MR_RES_POISON | MR_RES_FIRE | MR_RES_COLD | MR_RES_ELEC,
2157     0, 5, MONS_FIRE_VORTEX, MONS_SPATIAL_VORTEX, MH_NONLIVING, MAG_IMMUNE,
2158     { {AT_HIT, AF_DISTORT, 30}, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
2159     { 6, 6, 6, 0 },
2160     0, 5, MST_NO_SPELLS, CE_NOCORPSE, Z_NOZOMBIE, S_SILENT,
2161     I_PLANT, HT_LAND, FL_LEVITATE, 15, DEFAULT_ENERGY,
2162     MONUSE_NOTHING, MONEAT_NOTHING, SIZE_LARGE, MON_SHAPE_MISC
2163 },
2164
2165 {
2166     MONS_SPATIAL_MAELSTROM, 'v', YELLOW, "spatial maelstrom",
2167     M_BATTY | M_INSUBSTANTIAL | M_GLOWS_LIGHT,
2168     MR_RES_POISON | mrd(MR_RES_FIRE, 2) | mrd(MR_RES_COLD, 2) | MR_RES_ELEC,
2169     0, 5, MONS_SPATIAL_MAELSTROM, MONS_SPATIAL_MAELSTROM,
2170         MH_NONLIVING, MAG_IMMUNE,
2171     { {AT_HIT, AF_DISTORT, 20}, {AT_HIT, AF_DISTORT, 20}, AT_NO_ATK,
2172        AT_NO_ATK },
2173     { 10, 6, 3, 0 },
2174     0, 5, MST_NO_SPELLS, CE_NOCORPSE, Z_NOZOMBIE, S_SILENT,
2175     I_PLANT, HT_LAND, FL_LEVITATE, 16, DEFAULT_ENERGY,
2176     MONUSE_NOTHING, MONEAT_NOTHING, SIZE_BIG, MON_SHAPE_MISC
2177 },
2178
2179 {
2180     MONS_INSUBSTANTIAL_WISP, 'v', LIGHTGREY, "insubstantial wisp",
2181     M_INSUBSTANTIAL | M_BLINKER,
2182     mrd(MR_RES_ELEC | MR_RES_POISON | MR_RES_FIRE | MR_RES_COLD, 2),
2183     0, 8, MONS_INSUBSTANTIAL_WISP, MONS_INSUBSTANTIAL_WISP,
2184         MH_NONLIVING, MAG_IMMUNE,
2185     { {AT_HIT, AF_BLINK, 12}, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
2186     { 6, 1, 2, 0 },
2187     5, 20, MST_NO_SPELLS, CE_NOCORPSE, Z_NOZOMBIE, S_MOAN,
2188     I_PLANT, HT_LAND, FL_LEVITATE, 10, DEFAULT_ENERGY,
2189     MONUSE_NOTHING, MONEAT_NOTHING, SIZE_TINY, MON_SHAPE_MISC
2190 },
2191
2192 { // miscast only
2193     MONS_TWISTER, 'v', ETC_AIR, "twister",
2194     M_CONFUSED | M_INSUBSTANTIAL | M_BATTY | M_NO_EXP_GAIN | M_NO_POLY_TO,
2195     MR_RES_POISON | MR_RES_FIRE | MR_RES_COLD | mrd(MR_RES_ELEC, 3),
2196     0, 5, MONS_FIRE_VORTEX, MONS_TWISTER, MH_NONLIVING, MAG_IMMUNE,
2197     { AT_NO_ATK, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
2198     { 12, 0, 0, 10000 },
2199     0, 5, MST_NO_SPELLS, CE_NOCORPSE, Z_NOZOMBIE, S_SILENT,
2200     I_PLANT, HT_LAND, FL_LEVITATE, 10, DEFAULT_ENERGY,
2201     MONUSE_NOTHING, MONEAT_NOTHING, SIZE_LARGE, MON_SHAPE_MISC
2202 },
2203
2204 // worms and slugs ('w')
2205 {
2206     MONS_WORM, 'w', LIGHTRED, "worm",
2207     M_NO_SKELETON,
2208     MR_NO_FLAGS,
2209     400, 3, MONS_WORM, MONS_WORM, MH_NATURAL, -2,
2210     { {AT_BITE, AF_PLAIN, 12}, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
2211     { 5, 3, 5, 0 },
2212     1, 5, MST_NO_SPELLS, CE_CLEAN, Z_SMALL, S_SILENT,
2213     I_INSECT, HT_LAND, FL_NONE, 6, DEFAULT_ENERGY,
2214     MONUSE_NOTHING, MONEAT_NOTHING, SIZE_SMALL, MON_SHAPE_SNAKE
2215 },
2216
2217 {
2218     MONS_BRAIN_WORM, 'w', LIGHTMAGENTA, "brain worm",
2219     M_NO_SKELETON | M_SPELLCASTER,
2220     MR_NO_FLAGS,
2221     280, 10, MONS_WORM, MONS_BRAIN_WORM, MH_NATURAL, -3,
2222     { {AT_BITE, AF_PLAIN, 6}, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
2223     { 5, 3, 3, 0 },
2224     1, 5, MST_BRAIN_WORM, CE_POISONOUS, Z_SMALL, S_SILENT,
2225     I_INSECT, HT_LAND, FL_NONE, 10, DEFAULT_ENERGY,
2226     MONUSE_NOTHING, MONEAT_NOTHING, SIZE_SMALL, MON_SHAPE_SNAKE
2227 },
2228
2229 {
2230     MONS_SWAMP_WORM, 'w', BROWN, "swamp worm",
2231     M_NO_SKELETON | M_SUBMERGES,
2232     MR_NO_FLAGS,
2233     450, 3, MONS_WORM, MONS_SWAMP_WORM, MH_NATURAL, -1,
2234     { {AT_BITE, AF_PLAIN, 26}, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
2235     { 10, 2, 3, 0 },
2236     3, 12, MST_NO_SPELLS, CE_CLEAN, Z_SMALL, S_SILENT,
2237     I_INSECT, HT_WATER, FL_NONE, 12, DEFAULT_ENERGY,
2238     MONUSE_NOTHING, MONEAT_NOTHING, SIZE_MEDIUM, MON_SHAPE_SNAKE
2239 },
2240
2241 {
2242     MONS_GIANT_LEECH, 'w', RED, "giant leech",
2243     M_NO_SKELETON | M_BLOOD_SCENT,
2244     MR_NO_FLAGS,
2245     1000, 8, MONS_GIANT_LEECH, MONS_GIANT_LEECH, MH_NATURAL, -2,
2246     { {AT_BITE, AF_VAMPIRIC, 35}, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
2247     { 12, 3, 4, 0 },
2248     5, 15, MST_NO_SPELLS, CE_CLEAN, Z_BIG, S_SILENT,
2249     I_INSECT, HT_AMPHIBIOUS, FL_NONE, 8, SWIM_ENERGY(6),
2250     MONUSE_NOTHING, MONEAT_NOTHING, SIZE_LARGE, MON_SHAPE_SNAKE
2251 },
2252
2253 {
2254     MONS_TORPOR_SNAIL, 'w', GREEN, "torpor snail",
2255     M_NO_SKELETON,
2256     MR_NO_FLAGS,
2257     1200, 20, MONS_ELEPHANT_SLUG, MONS_TORPOR_SNAIL, MH_NATURAL, -3,
2258     { {AT_BITE, AF_PLAIN, 25}, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
2259     { 10, 5, 2, 0 },
2260     8, 1, MST_NO_SPELLS, CE_POISONOUS, Z_BIG, S_SILENT,
2261     I_INSECT, HT_AMPHIBIOUS, FL_NONE, 7, DEFAULT_ENERGY,
2262     MONUSE_NOTHING, MONEAT_NOTHING, SIZE_LARGE, MON_SHAPE_SNAIL
2263 },
2264
2265 // dummy genus monster; not using DUMMY since it's also a dummy species
2266 {
2267     MONS_ELEPHANT_SLUG, 'w', WHITE, "elephant slug",
2268     M_NO_SKELETON | M_CANT_SPAWN,
2269     MR_VUL_POISON,
2270     1800, 2, MONS_ELEPHANT_SLUG, MONS_ELEPHANT_SLUG, MH_NATURAL, -3,
2271     { {AT_BITE, AF_PLAIN, 40}, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
2272     { 20, 5, 3, 0 },
2273     2, 1, MST_NO_SPELLS, CE_POISONOUS, Z_BIG, S_SILENT,
2274     I_INSECT, HT_LAND, FL_NONE, 4, DEFAULT_ENERGY,
2275     MONUSE_NOTHING, MONEAT_NOTHING, SIZE_BIG, MON_SHAPE_SNAIL
2276 },
2277
2278 // small abominations ('x')
2279 {
2280     MONS_UNSEEN_HORROR, 'x', MAGENTA, "unseen horror",
2281     M_SEE_INVIS | M_INVIS | M_BATTY,
2282     MR_NO_FLAGS,
2283     0, 12, MONS_UNSEEN_HORROR, MONS_UNSEEN_HORROR, MH_NATURAL, -3,
2284     { {AT_HIT, AF_PLAIN, 12}, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
2285     { 7, 3, 5, 0 },
2286     5, 10, MST_NO_SPELLS, CE_NOCORPSE, Z_NOZOMBIE, S_SILENT,
2287     I_ANIMAL, HT_LAND, FL_NONE, 30, DEFAULT_ENERGY,
2288     MONUSE_NOTHING, MONEAT_NOTHING, SIZE_MEDIUM, MON_SHAPE_MISC
2289 },
2290
2291 {
2292     // A demonically controlled mass of undead flesh theme-wise, this makes
2293     // them MH_DEMONIC|MH_UNDEAD, but this is mostly the same as just
2294     // MH_UNDEAD (save for some god interactions).
2295     MONS_ABOMINATION_SMALL, 'x', LIGHTRED, "small abomination",
2296     M_NO_REGEN,
2297     MR_NO_FLAGS,
2298     0, 10, MONS_ABOMINATION_SMALL, MONS_ABOMINATION_SMALL, MH_UNDEAD, -5,
2299     { {AT_HIT, AF_PLAIN, 23}, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
2300     { 6, 2, 5, 0 },
2301     0, 0, MST_NO_SPELLS, CE_NOCORPSE, Z_NOZOMBIE, S_SILENT,
2302     I_PLANT, HT_LAND, FL_NONE, 10, DEFAULT_ENERGY,
2303     MONUSE_NOTHING, MONEAT_NOTHING, SIZE_LARGE, MON_SHAPE_MISC
2304 },
2305
2306 {
2307     // See comment under MONS_ABOMINATION_SMALL regarding holiness.
2308     MONS_CRAWLING_CORPSE, 'x', BROWN, "crawling corpse",
2309     M_NO_EXP_GAIN | M_NO_REGEN,
2310     mrd(MR_RES_COLD, 2),
2311     0, 8, MONS_MACABRE_MASS, MONS_CRAWLING_CORPSE, MH_UNDEAD, MAG_IMMUNE,
2312     { AT_NO_ATK, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
2313     { 1, 1, 0, 0 },
2314     1, 0, MST_NO_SPELLS, CE_NOCORPSE, Z_NOZOMBIE, S_SILENT,
2315     I_PLANT, HT_LAND, FL_NONE, 8, DEFAULT_ENERGY,
2316     MONUSE_NOTHING, MONEAT_NOTHING, SIZE_TINY, MON_SHAPE_MISC
2317 },
2318
2319 {
2320     // See comment under MONS_ABOMINATION_SMALL regarding holiness.
2321     MONS_MACABRE_MASS, 'x', BROWN, "macabre mass",
2322     M_NO_EXP_GAIN | M_NO_REGEN,
2323     mrd(MR_RES_COLD, 2),
2324     0, 8, MONS_MACABRE_MASS, MONS_MACABRE_MASS, MH_UNDEAD, MAG_IMMUNE,
2325     { AT_NO_ATK, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
2326     { 1, 2, 2, 0 },
2327     1, 0, MST_NO_SPELLS, CE_NOCORPSE, Z_NOZOMBIE, S_SILENT,
2328     I_PLANT, HT_LAND, FL_NONE, 5, DEFAULT_ENERGY,
2329     MONUSE_NOTHING, MONEAT_NOTHING, SIZE_SMALL, MON_SHAPE_MISC
2330 },
2331
2332 {
2333     MONS_ANCIENT_ZYME, 'x', GREEN, "ancient zyme",
2334     M_SEE_INVIS,
2335     MR_RES_POISON,
2336     0, 8, MONS_ANCIENT_ZYME, MONS_ANCIENT_ZYME, MH_NONLIVING, -5,
2337     { {AT_HIT, AF_DRAIN_STR, 16}, {AT_HIT, AF_DRAIN_DEX, 16}, AT_NO_ATK,
2338        AT_NO_ATK },
2339     { 8, 4, 5, 0 },
2340     6, 6, MST_NO_SPELLS, CE_NOCORPSE, Z_NOZOMBIE, S_SILENT,
2341     I_ANIMAL, HT_LAND, FL_LEVITATE, 10, DEFAULT_ENERGY,
2342     MONUSE_NOTHING, MONEAT_NOTHING, SIZE_MEDIUM, MON_SHAPE_MISC
2343 },
2344
2345 {
2346     MONS_WORLDBINDER, 'x', CYAN, "worldbinder",
2347     M_SPELLCASTER | M_SENSE_INVIS,
2348     MR_RES_POISON,
2349     0, 13, MONS_WORLDBINDER, MONS_WORLDBINDER, MH_NONLIVING, -6,
2350     { {AT_HIT, AF_PLAIN, 8}, {AT_HIT, AF_PLAIN, 8},
2351        AT_NO_ATK, AT_NO_ATK },
2352     { 8, 3, 4, 0 },
2353     12, 4, MST_WORLDBINDER, CE_NOCORPSE, Z_NOZOMBIE, S_SILENT,
2354     I_ANIMAL, HT_LAND, FL_LEVITATE, 14, DEFAULT_ENERGY,
2355     MONUSE_OPEN_DOORS, MONEAT_NOTHING, SIZE_SMALL, MON_SHAPE_MISC
2356 },
2357
2358 // flying insects ('y')
2359 {
2360     MONS_KILLER_BEE, 'y', BROWN, "killer bee",
2361     M_NO_SKELETON,
2362     MR_VUL_POISON,
2363     150, 11, MONS_KILLER_BEE, MONS_KILLER_BEE, MH_NATURAL, -3,
2364     { {AT_STING, AF_POISON, 10}, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
2365     { 3, 3, 5, 0 },
2366     2, 18, MST_NO_SPELLS, CE_POISONOUS, Z_SMALL, S_BUZZ,
2367     I_INSECT, HT_LAND, FL_WINGED, 20, DEFAULT_ENERGY,
2368     MONUSE_NOTHING, MONEAT_NOTHING, SIZE_TINY, MON_SHAPE_INSECT_WINGED
2369 },
2370
2371 {
2372     MONS_QUEEN_BEE, 'y', LIGHTMAGENTA, "queen bee",
2373     M_NO_SKELETON,
2374     MR_VUL_POISON,
2375     300, 14, MONS_KILLER_BEE, MONS_QUEEN_BEE, MH_NATURAL, -3,
2376     { {AT_STING, AF_POISON, 20}, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
2377     { 7, 3, 5, 0 },
2378     10, 10, MST_NO_SPELLS, CE_POISONOUS, Z_SMALL, S_SILENT,
2379     I_INSECT, HT_LAND, FL_WINGED, 10, DEFAULT_ENERGY,
2380     MONUSE_NOTHING, MONEAT_NOTHING, SIZE_LITTLE, MON_SHAPE_INSECT_WINGED
2381 },
2382
2383 {
2384     MONS_YELLOW_WASP, 'y', YELLOW, "yellow wasp",
2385     M_NO_SKELETON,
2386     MR_VUL_POISON,
2387     170, 15, MONS_YELLOW_WASP, MONS_YELLOW_WASP, MH_NATURAL, -3,
2388     { {AT_STING, AF_PARALYSE, 13}, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
2389     { 4, 3, 5, 0 },
2390     5, 14, MST_NO_SPELLS, CE_POISONOUS, Z_SMALL, S_SILENT,
2391     I_INSECT, HT_LAND, FL_WINGED, 15, DEFAULT_ENERGY,
2392     MONUSE_NOTHING, MONEAT_NOTHING, SIZE_TINY, MON_SHAPE_INSECT_WINGED
2393 },
2394
2395 {
2396     MONS_VAMPIRE_MOSQUITO, 'y', GREEN, "vampire mosquito",
2397     M_NO_SKELETON | M_BLOOD_SCENT,
2398     MR_NO_FLAGS,
2399     200, 10, MONS_VAMPIRE_MOSQUITO, MONS_VAMPIRE_MOSQUITO, MH_UNDEAD, -3,
2400     { {AT_BITE, AF_VAMPIRIC, 13}, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
2401     { 5, 3, 5, 0 },
2402     2, 15, MST_NO_SPELLS, CE_ROT, Z_SMALL, S_BUZZ,
2403     I_INSECT, HT_LAND, FL_WINGED, 19, DEFAULT_ENERGY,
2404     MONUSE_NOTHING, MONEAT_NOTHING, SIZE_LITTLE, MON_SHAPE_INSECT_WINGED
2405 },
2406
2407 {
2408     MONS_RED_WASP, 'y', RED, "red wasp",
2409     M_NO_SKELETON,
2410     MR_VUL_POISON,
2411     180, 12, MONS_RED_WASP, MONS_RED_WASP, MH_NATURAL, -3,
2412     { {AT_STING, AF_PARALYSE, 23}, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
2413     { 8, 3, 5, 0 },
2414     7, 14, MST_NO_SPELLS, CE_POISONOUS, Z_SMALL, S_BUZZ,
2415     I_INSECT, HT_LAND, FL_WINGED, 15, DEFAULT_ENERGY,
2416     MONUSE_NOTHING, MONEAT_NOTHING, SIZE_TINY, MON_SHAPE_INSECT_WINGED
2417 },
2418
2419 DUMMY(MONS_MOTH, 'y', WHITE, "moth")
2420
2421 {
2422     MONS_GHOST_MOTH, 'y', MAGENTA, "ghost moth",
2423     M_NO_SKELETON | M_INVIS,
2424     MR_RES_POISON | MR_RES_COLD,
2425     600, 18, MONS_MOTH, MONS_GHOST_MOTH, MH_NATURAL, -6,
2426     { {AT_HIT, AF_DRAIN_STAT, 18}, {AT_HIT, AF_DRAIN_STAT, 18},
2427       {AT_STING, AF_POISON_STRONG, 12}, AT_NO_ATK },
2428     { 13, 3, 5, 0 },
2429     8, 10, MST_NO_SPELLS, CE_MUTAGEN, Z_BIG, S_SILENT,
2430     I_INSECT, HT_LAND, FL_WINGED, 12, DEFAULT_ENERGY,
2431     MONUSE_NOTHING, MONEAT_NOTHING, SIZE_LARGE, MON_SHAPE_INSECT_WINGED
2432 },
2433
2434 {
2435     MONS_MOTH_OF_WRATH, 'y', LIGHTRED, "moth of wrath",
2436     M_NO_SKELETON,
2437     MR_NO_FLAGS,
2438     300, 10, MONS_MOTH, MONS_MOTH_OF_WRATH, MH_NATURAL, -3,
2439     { {AT_BITE, AF_RAGE, 25}, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
2440     { 9, 3, 5, 0 },
2441     0, 10, MST_NO_SPELLS, CE_CLEAN, Z_SMALL, S_SILENT,
2442     I_INSECT, HT_LAND, FL_WINGED, 12, DEFAULT_ENERGY,
2443     MONUSE_NOTHING, MONEAT_NOTHING, SIZE_SMALL, MON_SHAPE_INSECT_WINGED
2444 },
2445
2446 // corporeal (semi-)humanoid undead ('z')
2447 {
2448     MONS_WIGHT, 'z', GREEN, "wight",
2449     M_NO_FLAGS,
2450     mrd(MR_RES_COLD, 2),
2451     0, 16, MONS_WIGHT, MONS_WIGHT, MH_UNDEAD, -4,
2452     { {AT_HIT, AF_DRAIN_XP, 8}, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
2453     { 3, 3, 5, 0 },
2454     4, 10, MST_NO_SPELLS, CE_NOCORPSE, Z_NOZOMBIE, S_SILENT,
2455     I_NORMAL, HT_LAND, FL_NONE, 10, DEFAULT_ENERGY,
2456     MONUSE_WEAPONS_ARMOUR, MONEAT_NOTHING, SIZE_MEDIUM, MON_SHAPE_HUMANOID
2457 },
2458
2459 {
2460     MONS_SKELETAL_WARRIOR, 'z', CYAN, "skeletal warrior",
2461     M_FIGHTER,
2462     MR_RES_COLD,
2463     0, 10, MONS_SKELETAL_WARRIOR, MONS_SKELETAL_WARRIOR, MH_UNDEAD, -7,
2464     { {AT_HIT, AF_PLAIN, 25}, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
2465     { 10, 5, 3, 0 },
2466     15, 10, MST_NO_SPELLS, CE_NOCORPSE, Z_NOZOMBIE, S_SILENT,
2467     I_NORMAL, HT_LAND, FL_NONE, 10, DEFAULT_ENERGY,
2468     MONUSE_WEAPONS_ARMOUR, MONEAT_NOTHING, SIZE_MEDIUM, MON_SHAPE_HUMANOID
2469 },
2470
2471 {
2472     MONS_ANCIENT_CHAMPION, 'z', LIGHTMAGENTA, "ancient champion",
2473     M_FIGHTER | M_SPELLCASTER | M_ACTUAL_SPELLS,
2474     MR_RES_COLD,
2475     0, 24, MONS_ANCIENT_CHAMPION, MONS_ANCIENT_CHAMPION, MH_UNDEAD, -7,
2476     { {AT_HIT, AF_PLAIN, 32}, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
2477     { 14, 4, 2, 0 },
2478     15, 10, MST_NO_SPELLS, CE_NOCORPSE, Z_NOZOMBIE, S_SILENT,
2479     I_NORMAL, HT_LAND, FL_NONE, 10, DEFAULT_ENERGY,
2480     MONUSE_WEAPONS_ARMOUR, MONEAT_NOTHING, SIZE_MEDIUM, MON_SHAPE_HUMANOID
2481 },
2482
2483 {
2484     MONS_FLYING_SKULL, 'z', WHITE, "flying skull",
2485     M_NO_FLAGS,
2486     MR_RES_FIRE | MR_RES_COLD | MR_RES_ELEC,
2487     0, 10, MONS_FLYING_SKULL, MONS_FLYING_SKULL, MH_UNDEAD, -3,
2488     { {AT_HIT, AF_PLAIN, 14}, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
2489     { 7, 2, 2, 0 },
2490     10, 17, MST_NO_SPELLS, CE_NOCORPSE, Z_NOZOMBIE, S_SCREAM,
2491     I_ANIMAL, HT_LAND, FL_LEVITATE, 15, DEFAULT_ENERGY,
2492     MONUSE_NOTHING, MONEAT_NOTHING, SIZE_TINY, MON_SHAPE_MISC
2493 },
2494
2495 // These nasties are never randomly generated, only sometimes specially
2496 // placed in the Crypt.
2497 {
2498     MONS_CURSE_SKULL, 'z', LIGHTCYAN, "curse skull",
2499     M_SPELLCASTER | M_SEE_INVIS | M_STATIONARY | M_SPEAKS | M_NOISY_SPELLS,
2500     mrd(MR_RES_ELEC | MR_RES_COLD, 2) | MR_RES_HELLFIRE,
2501     0, 20, MONS_CURSE_SKULL, MONS_CURSE_SKULL, MH_UNDEAD, MAG_IMMUNE,
2502     { AT_NO_ATK, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
2503     { 13, 0, 0, 66 },
2504     40, 3, MST_CURSE_SKULL, CE_NOCORPSE, Z_NOZOMBIE, S_MOAN,
2505     I_HIGH, HT_LAND, FL_LEVITATE, 10, DEFAULT_ENERGY,
2506     MONUSE_NOTHING, MONEAT_NOTHING, SIZE_TINY, MON_SHAPE_MISC
2507 },
2508
2509 {
2510     MONS_CURSE_TOE, 'z', YELLOW, "curse toe",
2511     M_SPELLCASTER | M_SEE_INVIS | M_SPEAKS,
2512     mrd(MR_RES_ELEC, 2) | MR_RES_HELLFIRE | MR_RES_COLD,
2513     0, 60, MONS_LICH, MONS_CURSE_TOE, MH_UNDEAD, MAG_IMMUNE,
2514     { AT_NO_ATK, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
2515     { 14, 0, 0, 100 },
2516     25, 1, MST_CURSE_TOE, CE_NOCORPSE, Z_NOZOMBIE, S_MOAN,
2517     I_HIGH, HT_LAND, FL_LEVITATE, 10, MOVE_ENERGY(14),
2518     MONUSE_NOTHING, MONEAT_NOTHING, SIZE_TINY, MON_SHAPE_MISC
2519 },
2520
2521 // angelic beings ('A')
2522 {
2523     MONS_ANGEL, 'A', WHITE, "angel",
2524     M_FIGHTER | M_SPELLCASTER | M_SEE_INVIS | M_SPEAKS | M_GLOWS_LIGHT,
2525     MR_RES_POISON | mrd(MR_RES_ELEC, 2),
2526     0, 10, MONS_ANGEL, MONS_ANGEL, MH_HOLY, -8,
2527     { {AT_HIT, AF_PLAIN, 25}, {AT_HIT, AF_PLAIN, 10}, AT_NO_ATK,
2528        AT_NO_ATK },
2529     { 12, 6, 5, 0 },
2530     10, 20, MST_ANGEL, CE_NOCORPSE, Z_NOZOMBIE, S_SHOUT,
2531     I_HIGH, HT_LAND, FL_WINGED, 15, DEFAULT_ENERGY,
2532     MONUSE_WEAPONS_ARMOUR, MONEAT_NOTHING, SIZE_MEDIUM,
2533         MON_SHAPE_HUMANOID_WINGED
2534 },
2535
2536 {
2537     MONS_CHERUB, 'A', LIGHTBLUE, "cherub",
2538     M_FIGHTER | M_SEE_INVIS | M_SPEAKS | M_GLOWS_LIGHT,
2539     MR_RES_POISON | MR_RES_ELEC | MR_RES_FIRE,
2540     0, 10, MONS_ANGEL, MONS_CHERUB, MH_HOLY, -8,
2541     { {AT_HIT, AF_PLAIN, 15}, {AT_CHERUB, AF_PLAIN, 8}, AT_NO_ATK,
2542        AT_NO_ATK },
2543     { 9, 6, 5, 0 },
2544     10, 20, MST_NO_SPELLS, CE_NOCORPSE, Z_NOZOMBIE, S_CHERUB,
2545     I_HIGH, HT_LAND, FL_WINGED, 10, DEFAULT_ENERGY,
2546     MONUSE_WEAPONS_ARMOUR, MONEAT_NOTHING, SIZE_MEDIUM,
2547         MON_SHAPE_HUMANOID_WINGED
2548 },
2549
2550 {
2551     MONS_SERAPH, 'A', LIGHTMAGENTA, "seraph",
2552     M_FIGHTER | M_SPELLCASTER | M_SEE_INVIS | M_SPEAKS | M_GLOWS_LIGHT,
2553     MR_RES_POISON | MR_RES_ELEC | mrd(MR_RES_FIRE, 3),
2554     0, 10, MONS_ANGEL, MONS_SERAPH, MH_HOLY, MAG_IMMUNE,
2555     { {AT_HIT, AF_PLAIN, 25}, {AT_HIT, AF_PLAIN, 10}, AT_NO_ATK,
2556        AT_NO_ATK },
2557     { 25, 6, 5, 0 },
2558     10, 20, MST_ANGEL, CE_NOCORPSE, Z_NOZOMBIE, S_SHOUT,
2559     I_HIGH, HT_LAND, FL_WINGED, 10, DEFAULT_ENERGY,
2560     MONUSE_WEAPONS_ARMOUR, MONEAT_NOTHING, SIZE_MEDIUM,
2561         MON_SHAPE_HUMANOID_WINGED
2562 },
2563
2564 {
2565     MONS_DAEVA, 'A', YELLOW, "daeva",
2566     M_FIGHTER | M_SPELLCASTER | M_SEE_INVIS | M_SPEAKS | M_GLOWS_LIGHT,
2567     MR_RES_POISON,
2568     0, 12, MONS_ANGEL, MONS_DAEVA, MH_HOLY, -8,
2569     { {AT_HIT, AF_PLAIN, 25}, {AT_HIT, AF_PLAIN, 10}, AT_NO_ATK,
2570        AT_NO_ATK },
2571     { 14, 6, 5, 0 },
2572     10, 13, MST_DAEVA, CE_NOCORPSE, Z_NOZOMBIE, S_SHOUT,
2573     I_HIGH, HT_LAND, FL_LEVITATE, 10, DEFAULT_ENERGY,
2574     MONUSE_WEAPONS_ARMOUR, MONEAT_NOTHING, SIZE_MEDIUM,
2575         MON_SHAPE_HUMANOID_WINGED
2576 },
2577
2578 {
2579     MONS_PROFANE_SERVITOR, 'A', RED, "profane servitor",
2580     M_FIGHTER | M_SPELLCASTER | M_PRIEST | M_SEE_INVIS | M_SPEAKS,
2581     MR_RES_COLD | mrd(MR_RES_ELEC, 2),
2582     0, 10, MONS_ANGEL, MONS_PROFANE_SERVITOR, MH_UNDEAD, -8,
2583     { {AT_HIT, AF_VAMPIRIC, 25}, {AT_HIT, AF_DRAIN_XP, 10}, AT_NO_ATK,
2584        AT_NO_ATK },
2585     { 18, 6, 5, 0 },
2586     10, 20, MST_NO_SPELLS, CE_NOCORPSE, Z_NOZOMBIE, S_SILENT,
2587     I_HIGH, HT_LAND, FL_WINGED, 15, DEFAULT_ENERGY,
2588     MONUSE_STARTING_EQUIPMENT, MONEAT_NOTHING, SIZE_MEDIUM,
2589         MON_SHAPE_HUMANOID_WINGED
2590 },
2591
2592 // beetles ('B')
2593 {
2594     MONS_GOLIATH_BEETLE, 'B', BLUE, "goliath beetle",
2595     M_NO_SKELETON,
2596     MR_VUL_POISON,
2597     800, 12, MONS_GOLIATH_BEETLE, MONS_GOLIATH_BEETLE, MH_NATURAL, -3,
2598     { {AT_BITE, AF_PLAIN, 30}, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
2599     { 5, 7, 6, 0 },
2600     10, 3, MST_NO_SPELLS, CE_POISONOUS, Z_SMALL, S_SILENT,
2601     I_INSECT, HT_LAND, FL_NONE, 5, DEFAULT_ENERGY,
2602     MONUSE_NOTHING, MONEAT_NOTHING, SIZE_MEDIUM, MON_SHAPE_INSECT
2603 },
2604
2605 {
2606     MONS_BOULDER_BEETLE, 'B', LIGHTGREY, "boulder beetle",
2607     M_NO_SKELETON,
2608     MR_VUL_POISON,
2609     2050, 14, MONS_GOLIATH_BEETLE, MONS_BOULDER_BEETLE, MH_NATURAL, -3,
2610     { {AT_BITE, AF_PLAIN, 45}, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
2611     { 9, 6, 5, 0 },
2612     20, 2, MST_NO_SPELLS, CE_POISONOUS, Z_BIG, S_SILENT,
2613     I_INSECT, HT_LAND, FL_NONE, 6, DEFAULT_ENERGY,
2614     MONUSE_NOTHING, MONEAT_NOTHING, SIZE_BIG, MON_SHAPE_INSECT
2615 },
2616
2617 {
2618     MONS_BORING_BEETLE, 'B', BROWN, "boring beetle",
2619     M_NO_SKELETON | M_BURROWS,
2620     MR_VUL_POISON,
2621     1300, 10, MONS_GOLIATH_BEETLE, MONS_BORING_BEETLE, MH_NATURAL, -3,
2622     { {AT_BITE, AF_PLAIN, 35}, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
2623     { 8, 3, 5, 0 },
2624     13, 4, MST_NO_SPELLS, CE_POISONOUS, Z_BIG, S_SILENT,
2625     I_INSECT, HT_LAND, FL_NONE, 6, DEFAULT_ENERGY,
2626     MONUSE_NOTHING, MONEAT_NOTHING, SIZE_LARGE, MON_SHAPE_INSECT
2627 },
2628
2629 // cyclopes and giants ('C')
2630 DUMMY(MONS_GIANT, 'C', LIGHTGREY, "giant")
2631
2632 {
2633     MONS_HILL_GIANT, 'C', LIGHTRED, "hill giant",
2634     M_WARM_BLOOD | M_SPEAKS,
2635     MR_NO_FLAGS,
2636     1700, 7, MONS_GIANT, MONS_HILL_GIANT, MH_NATURAL, -3,
2637     { {AT_HIT, AF_PLAIN, 30}, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
2638     { 11, 3, 5, 0 },
2639     3, 4, MST_NO_SPELLS, CE_CLEAN, Z_BIG, S_SHOUT,
2640     I_NORMAL, HT_LAND, FL_NONE, 10, DEFAULT_ENERGY,
2641     MONUSE_STARTING_EQUIPMENT, MONEAT_NOTHING, SIZE_GIANT, MON_SHAPE_HUMANOID
2642 },
2643
2644 {
2645     MONS_CYCLOPS, 'C', YELLOW, "cyclops",
2646     M_WARM_BLOOD | M_SPEAKS,
2647     MR_NO_FLAGS,
2648     2200, 14, MONS_GIANT, MONS_CYCLOPS, MH_NATURAL, -3,
2649     { {AT_HIT, AF_PLAIN, 35}, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
2650     { 9, 3, 5, 0 },
2651     5, 3, MST_NO_SPELLS, CE_CLEAN, Z_BIG, S_SHOUT,
2652     I_NORMAL, HT_LAND, FL_NONE, 7, DEFAULT_ENERGY,
2653     MONUSE_STARTING_EQUIPMENT, MONEAT_NOTHING, SIZE_GIANT, MON_SHAPE_HUMANOID
2654 },
2655
2656 {
2657     MONS_ETTIN, 'C', BROWN, "ettin",
2658     M_WARM_BLOOD | M_TWO_WEAPONS | M_SPEAKS,
2659     MR_NO_FLAGS,
2660     2500, 12, MONS_GIANT, MONS_ETTIN, MH_NATURAL, -3,
2661     { {AT_HIT, AF_PLAIN, 45}, {AT_HIT, AF_PLAIN, 45}, AT_NO_ATK, AT_NO_ATK },
2662     { 12, 3, 5, 0 },
2663     9, 4, MST_NO_SPELLS, CE_CLEAN, Z_BIG, S_SHOUT2,
2664     I_NORMAL, HT_LAND, FL_NONE, 10, DEFAULT_ENERGY,
2665     MONUSE_STARTING_EQUIPMENT, MONEAT_NOTHING, SIZE_GIANT, MON_SHAPE_HUMANOID
2666 },
2667
2668 {
2669     MONS_FIRE_GIANT, 'C', RED, "fire giant",
2670     M_FIGHTER | M_SPELLCASTER | M_WARM_BLOOD | M_SEE_INVIS | M_SPEAKS
2671         | M_ACTUAL_SPELLS,
2672     mrd(MR_RES_FIRE, 2),
2673     2000, 13, MONS_GIANT, MONS_FIRE_GIANT, MH_NATURAL, -4,
2674     { {AT_HIT, AF_PLAIN, 30}, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
2675     { 16, 3, 6, 0 },
2676     8, 4, MST_EFREET, CE_CLEAN, Z_BIG, S_SHOUT,
2677     I_NORMAL, HT_LAND, FL_NONE, 10, DEFAULT_ENERGY,
2678     MONUSE_WEAPONS_ARMOUR, MONEAT_NOTHING, SIZE_GIANT, MON_SHAPE_HUMANOID
2679 },
2680
2681 {
2682     MONS_FROST_GIANT, 'C', LIGHTBLUE, "frost giant",
2683     M_FIGHTER | M_SPELLCASTER | M_WARM_BLOOD | M_SEE_INVIS | M_SPEAKS
2684         | M_ACTUAL_SPELLS,
2685     mrd(MR_RES_COLD, 2),
2686     2100, 11, MONS_GIANT, MONS_FROST_GIANT, MH_NATURAL, -4,
2687     { {AT_HIT, AF_PLAIN, 35}, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
2688     { 16, 4, 5, 0 },
2689     9, 3, MST_FROST_GIANT, CE_CLEAN, Z_BIG, S_SHOUT,
2690     I_NORMAL, HT_LAND, FL_NONE, 10, DEFAULT_ENERGY,
2691     MONUSE_WEAPONS_ARMOUR, MONEAT_NOTHING, SIZE_GIANT, MON_SHAPE_HUMANOID
2692 },
2693
2694 {
2695     MONS_STONE_GIANT, 'C', LIGHTGREY, "stone giant",
2696     M_WARM_BLOOD | M_SPEAKS,
2697     MR_NO_FLAGS,
2698     2700, 9, MONS_GIANT, MONS_STONE_GIANT, MH_NATURAL, -4,
2699     { {AT_HIT, AF_PLAIN, 45}, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
2700     { 16, 3, 5, 0 },
2701     12, 2, MST_NO_SPELLS, CE_CLEAN, Z_BIG, S_SHOUT,
2702     I_NORMAL, HT_LAND, FL_NONE, 10, DEFAULT_ENERGY,
2703     MONUSE_STARTING_EQUIPMENT, MONEAT_NOTHING, SIZE_GIANT, MON_SHAPE_HUMANOID
2704 },
2705
2706 {
2707     MONS_TITAN, 'C', MAGENTA, "titan",
2708     M_FIGHTER | M_SPELLCASTER | M_WARM_BLOOD | M_SEE_INVIS | M_SPEAKS
2709         | M_ACTUAL_SPELLS,
2710     mrd(MR_RES_ELEC, 2),
2711     3200, 12, MONS_GIANT, MONS_TITAN, MH_NATURAL, -7,
2712     { {AT_HIT, AF_PLAIN, 55}, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
2713     { 20, 3, 5, 0 },
2714     10, 3, MST_TITAN, CE_CLEAN, Z_BIG, S_SHOUT,
2715     I_HIGH, HT_LAND, FL_NONE, 10, DEFAULT_ENERGY,
2716     MONUSE_OPEN_DOORS, MONEAT_NOTHING, SIZE_GIANT, MON_SHAPE_HUMANOID
2717 },
2718
2719 // dragons ('D')
2720 DUMMY(MONS_DRAGON, 'D', GREEN, "dragon")
2721
2722 {
2723     MONS_WYVERN, 'D', LIGHTRED, "wyvern",
2724     M_WARM_BLOOD,
2725     MR_NO_FLAGS,
2726     1200, 15, MONS_WYVERN, MONS_WYVERN, MH_NATURAL, -3,
2727     { {AT_BITE, AF_PLAIN, 20}, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
2728     { 5, 3, 5, 0 },
2729     5, 10, MST_NO_SPELLS, CE_CLEAN, Z_BIG, S_SILENT,
2730     I_ANIMAL, HT_LAND, FL_WINGED, 15, DEFAULT_ENERGY,
2731     MONUSE_NOTHING, MONEAT_NOTHING, SIZE_LARGE, MON_SHAPE_QUADRUPED_WINGED
2732 },
2733
2734 {
2735     MONS_FIRE_DRAGON, 'D', GREEN, "fire dragon",
2736     M_WARM_BLOOD,
2737     MR_RES_POISON | mrd(MR_RES_FIRE, 2) | MR_VUL_COLD,
2738     2400, 12, MONS_DRAGON, MONS_FIRE_DRAGON, MH_NATURAL, -4,
2739     { {AT_BITE, AF_PLAIN, 20}, {AT_CLAW, AF_PLAIN, 13},
2740       {AT_TRAMPLE, AF_PLAIN, 13}, AT_NO_ATK },
2741     { 12, 5, 5, 0 },
2742     10, 8, MST_NO_SPELLS, CE_CLEAN, Z_BIG, S_SILENT,
2743     I_ANIMAL, HT_LAND, FL_WINGED, 10, DEFAULT_ENERGY,
2744     MONUSE_NOTHING, MONEAT_NOTHING, SIZE_GIANT, MON_SHAPE_QUADRUPED_WINGED
2745 },
2746
2747 {
2748     MONS_HYDRA, 'D', LIGHTGREEN, "hydra",
2749     M_COLD_BLOOD | M_FAST_REGEN,
2750     MR_RES_POISON,
2751     1800, 11, MONS_HYDRA, MONS_HYDRA, MH_NATURAL, -3,
2752     { {AT_BITE, AF_PLAIN, 18}, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
2753     { 13, 3, 5, 0 },
2754     0, 5, MST_NO_SPELLS, CE_POISONOUS, Z_BIG, S_ROAR,
2755     I_REPTILE, HT_AMPHIBIOUS, FL_NONE, 10, SWIM_ENERGY(6),
2756     MONUSE_NOTHING, MONEAT_NOTHING, SIZE_BIG, MON_SHAPE_QUADRUPED
2757 },
2758
2759 {
2760     MONS_ICE_DRAGON, 'D', WHITE, "ice dragon",
2761     M_COLD_BLOOD,
2762     MR_RES_POISON | MR_VUL_FIRE | mrd(MR_RES_COLD, 2),
2763     2400, 10, MONS_DRAGON, MONS_ICE_DRAGON, MH_NATURAL, -3,
2764     { {AT_BITE, AF_PLAIN, 17}, {AT_CLAW, AF_PLAIN, 17},
2765       {AT_TRAMPLE, AF_PLAIN, 17}, AT_NO_ATK },
2766     { 12, 5, 5, 0 },
2767     10, 8, MST_NO_SPELLS, CE_CLEAN, Z_BIG, S_SILENT,
2768     I_ANIMAL, HT_LAND, FL_WINGED, 10, DEFAULT_ENERGY,
2769     MONUSE_NOTHING, MONEAT_NOTHING, SIZE_GIANT, MON_SHAPE_QUADRUPED_WINGED
2770 },
2771
2772 {
2773     MONS_STEAM_DRAGON, 'D', BLUE, "steam dragon",
2774     M_SPELLCASTER | M_WARM_BLOOD | M_FAKE_SPELLS,
2775     MR_RES_STEAM,
2776     1500, 29, MONS_DRAGON, MONS_STEAM_DRAGON, MH_NATURAL, -3,
2777     { {AT_BITE, AF_PLAIN, 12}, {AT_CLAW, AF_PLAIN, 6}, AT_NO_ATK, AT_NO_ATK },
2778     { 4, 5, 5, 0 },
2779     5, 10, MST_STEAM_DRAGON, CE_CLEAN, Z_BIG, S_SILENT,
2780     I_ANIMAL, HT_LAND, FL_WINGED, 10, DEFAULT_ENERGY,
2781     MONUSE_NOTHING, MONEAT_NOTHING, SIZE_BIG, MON_SHAPE_QUADRUPED_WINGED
2782 },
2783
2784 {
2785     MONS_SWAMP_DRAGON, 'D', BROWN, "swamp dragon",
2786     M_SPELLCASTER | M_WARM_BLOOD | M_FAKE_SPELLS,
2787     MR_RES_POISON,
2788     2200, 11, MONS_DRAGON, MONS_SWAMP_DRAGON, MH_NATURAL, -3,
2789     { {AT_BITE, AF_PLAIN, 20}, {AT_CLAW, AF_PLAIN, 11},
2790       {AT_TRAMPLE, AF_PLAIN, 11}, AT_NO_ATK },
2791     { 9, 5, 5, 0 },
2792     7, 7, MST_SWAMP_DRAGON, CE_POISONOUS, Z_BIG, S_ROAR,
2793     I_ANIMAL, HT_LAND, FL_WINGED, 10, DEFAULT_ENERGY,
2794     MONUSE_NOTHING, MONEAT_NOTHING, SIZE_GIANT, MON_SHAPE_QUADRUPED_WINGED
2795 },
2796
2797 {
2798     MONS_MOTTLED_DRAGON, 'D', LIGHTMAGENTA, "mottled dragon",
2799     M_SPELLCASTER | M_WARM_BLOOD | M_FAKE_SPELLS,
2800     MR_RES_POISON | MR_RES_FIRE | MR_RES_STICKY_FLAME,
2801     1300, 16, MONS_DRAGON, MONS_MOTTLED_DRAGON, MH_NATURAL, -3,
2802     { {AT_BITE, AF_PLAIN, 15}, {AT_CLAW, AF_PLAIN, 6}, AT_NO_ATK, AT_NO_ATK },
2803     { 5, 3, 5, 0 },
2804     5, 10, MST_MOTTLED_DRAGON, CE_POISONOUS, Z_BIG, S_SILENT,
2805     I_ANIMAL, HT_LAND, FL_WINGED, 10, DEFAULT_ENERGY,
2806     MONUSE_NOTHING, MONEAT_NOTHING, SIZE_BIG, MON_SHAPE_QUADRUPED_WINGED
2807 },
2808
2809 {
2810     MONS_QUICKSILVER_DRAGON, 'D', LIGHTCYAN, "quicksilver dragon",
2811     M_SPELLCASTER | M_SEE_INVIS | M_WARM_BLOOD | M_FAKE_SPELLS ,
2812     MR_NO_FLAGS,
2813     1900, 14, MONS_DRAGON, MONS_QUICKSILVER_DRAGON, MH_NATURAL, -7,
2814     { {AT_BITE, AF_PLAIN, 25}, {AT_CLAW, AF_PLAIN, 20}, AT_NO_ATK, AT_NO_ATK },
2815     { 16, 3, 5, 0 },
2816     10, 15, MST_QUICKSILVER_DRAGON, CE_CLEAN, Z_BIG, S_ROAR,
2817     I_ANIMAL, HT_LAND, FL_WINGED, 15, DEFAULT_ENERGY,
2818     MONUSE_NOTHING, MONEAT_NOTHING, SIZE_GIANT, MON_SHAPE_QUADRUPED_WINGED
2819 },
2820
2821 {
2822     MONS_IRON_DRAGON, 'D', CYAN, "iron dragon",
2823     M_SPELLCASTER | M_SEE_INVIS | M_WARM_BLOOD | M_FAKE_SPELLS
2824         | M_UNBREATHING,
2825     MR_RES_POISON | MR_RES_FIRE | MR_RES_COLD,
2826     2800, 14, MONS_DRAGON, MONS_IRON_DRAGON, MH_NATURAL, -7,
2827     { {AT_BITE, AF_PLAIN, 25}, {AT_CLAW, AF_PLAIN, 25},
2828       {AT_TRAMPLE, AF_PLAIN, 25}, AT_NO_ATK },
2829     { 18, 5, 3, 0 },
2830     20, 6, MST_IRON_DRAGON, CE_CLEAN, Z_BIG, S_ROAR,
2831     I_ANIMAL, HT_LAND, FL_NONE, 8, DEFAULT_ENERGY,
2832     MONUSE_NOTHING, MONEAT_NOTHING, SIZE_GIANT, MON_SHAPE_QUADRUPED
2833 },
2834
2835 {
2836     MONS_STORM_DRAGON, 'D', LIGHTBLUE, "storm dragon",
2837     M_SPELLCASTER | M_WARM_BLOOD | M_FAKE_SPELLS,
2838     mrd(MR_RES_ELEC, 3) | MR_RES_COLD,
2839     2700, 13, MONS_DRAGON, MONS_STORM_DRAGON, MH_NATURAL, -5,
2840     { {AT_BITE, AF_PLAIN, 25}, {AT_CLAW, AF_PLAIN, 15},
2841       {AT_TRAMPLE, AF_PLAIN, 15}, AT_NO_ATK },
2842     { 14, 5, 5, 0 },
2843     13, 10, MST_STORM_DRAGON, CE_CLEAN, Z_BIG, S_ROAR,
2844     I_ANIMAL, HT_LAND, FL_WINGED, 12, DEFAULT_ENERGY,
2845     MONUSE_NOTHING, MONEAT_NOTHING, SIZE_GIANT, MON_SHAPE_QUADRUPED_WINGED
2846 },
2847
2848 {
2849     MONS_GOLDEN_DRAGON, 'D', YELLOW, "golden dragon",
2850     M_SPELLCASTER | M_SEE_INVIS | M_WARM_BLOOD | M_FAKE_SPELLS,
2851     MR_RES_ELEC | MR_RES_POISON | MR_RES_FIRE | MR_RES_COLD,
2852     3000, 26, MONS_DRAGON, MONS_GOLDEN_DRAGON, MH_NATURAL, -8,
2853     { {AT_BITE, AF_PLAIN, 40}, {AT_CLAW, AF_PLAIN, 20},
2854       {AT_TRAMPLE, AF_PLAIN, 20}, AT_NO_ATK },
2855     { 18, 4, 4, 0 },
2856     15, 7, MST_GOLDEN_DRAGON, CE_POISONOUS, Z_BIG, S_ROAR,
2857     I_ANIMAL, HT_LAND, FL_WINGED, 10, DEFAULT_ENERGY,
2858     MONUSE_NOTHING, MONEAT_NOTHING, SIZE_GIANT, MON_SHAPE_QUADRUPED_WINGED
2859 },
2860
2861 {
2862     MONS_SHADOW_DRAGON, 'D', MAGENTA, "shadow dragon",
2863     M_SHADOW | M_SPELLCASTER | M_SEE_INVIS | M_COLD_BLOOD | M_FAKE_SPELLS,
2864     MR_RES_POISON | mrd(MR_RES_COLD, 2) | mrd(MR_RES_NEG, 3),
2865     1800, 12, MONS_DRAGON, MONS_SHADOW_DRAGON, MH_NATURAL, -5,
2866     { {AT_BITE, AF_DRAIN_XP, 20}, {AT_CLAW, AF_PLAIN, 15},
2867       {AT_CLAW, AF_PLAIN, 15}, AT_NO_ATK },
2868     { 17, 5, 5, 0 },
2869     15, 10, MST_SHADOW_DRAGON, CE_ROT, Z_BIG, S_ROAR,
2870     I_ANIMAL, HT_LAND, FL_WINGED, 10, DEFAULT_ENERGY,
2871     MONUSE_NOTHING, MONEAT_NOTHING, SIZE_GIANT, MON_SHAPE_QUADRUPED_WINGED
2872 },
2873
2874 {
2875     MONS_BONE_DRAGON, 'D', LIGHTGREY, "bone dragon",
2876     M_SENSE_INVIS,
2877     MR_RES_FIRE | MR_RES_COLD | MR_RES_ELEC,
2878     0, 12, MONS_DRAGON, MONS_BONE_DRAGON, MH_UNDEAD, -4,
2879     { {AT_BITE, AF_PLAIN, 30}, {AT_CLAW, AF_PLAIN, 20},
2880       {AT_TRAMPLE, AF_PLAIN, 20}, AT_NO_ATK },
2881     { 20, 6, 6, 0 },
2882     20, 4, MST_NO_SPELLS, CE_NOCORPSE, Z_NOZOMBIE, S_SILENT,
2883     I_ANIMAL, HT_LAND, FL_WINGED, 10, DEFAULT_ENERGY,
2884     MONUSE_NOTHING, MONEAT_NOTHING, SIZE_GIANT, MON_SHAPE_QUADRUPED_WINGED
2885 },
2886
2887 {
2888     MONS_PEARL_DRAGON, 'D', ETC_HOLY, "pearl dragon",
2889     M_SPELLCASTER | M_SEE_INVIS | M_WARM_BLOOD | M_GLOWS_LIGHT,
2890     MR_NO_FLAGS,
2891     1900, 16, MONS_DRAGON, MONS_PEARL_DRAGON, MH_HOLY, -7,
2892     { {AT_BITE, AF_HOLY, 35}, {AT_CLAW, AF_HOLY, 20}, AT_NO_ATK, AT_NO_ATK },
2893     { 18, 4, 5, 0 },
2894     10, 15, MST_PEARL_DRAGON, CE_CLEAN, Z_BIG, S_ROAR,
2895     I_ANIMAL, HT_LAND, FL_WINGED, 12, DEFAULT_ENERGY,
2896     MONUSE_NOTHING, MONEAT_NOTHING, SIZE_GIANT, MON_SHAPE_QUADRUPED_WINGED
2897 },
2898
2899 // elementals (E)
2900 DUMMY(MONS_ELEMENTAL, 'E', LIGHTGREY, "elemental")
2901
2902 {
2903     MONS_EARTH_ELEMENTAL, 'E', ETC_EARTH, "earth elemental",
2904     M_NO_FLAGS,
2905     mrd(MR_RES_POISON | MR_RES_FIRE | MR_RES_COLD | MR_RES_ELEC, 3),
2906     0, 13, MONS_ELEMENTAL, MONS_EARTH_ELEMENTAL, MH_NONLIVING, MAG_IMMUNE,
2907     { {AT_HIT, AF_PLAIN, 40}, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
2908     { 6, 5, 5, 0 },
2909     14, 4, MST_NO_SPELLS, CE_NOCORPSE, Z_NOZOMBIE, S_SILENT,
2910     I_PLANT, HT_LAND, FL_NONE, 6, DEFAULT_ENERGY,
2911     MONUSE_NOTHING, MONEAT_NOTHING, SIZE_BIG, MON_SHAPE_MISC
2912 },
2913
2914 {
2915     MONS_FIRE_ELEMENTAL, 'E', ETC_FIRE, "fire elemental",
2916     M_INSUBSTANTIAL | M_GLOWS_LIGHT,
2917     MR_RES_POISON | MR_RES_HELLFIRE | MR_VUL_COLD | MR_RES_ELEC | MR_VUL_WATER,
2918     0, 10, MONS_ELEMENTAL, MONS_FIRE_ELEMENTAL, MH_NONLIVING, MAG_IMMUNE,
2919     { {AT_HIT, AF_PURE_FIRE, 0}, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
2920     { 6, 3, 5, 0 },
2921     4, 12, MST_NO_SPELLS, CE_NOCORPSE, Z_NOZOMBIE, S_SILENT,
2922     I_PLANT, HT_LAND, FL_LEVITATE, 13, DEFAULT_ENERGY,
2923     MONUSE_NOTHING, MONEAT_NOTHING, SIZE_BIG, MON_SHAPE_MISC
2924 },
2925
2926 {
2927     MONS_WATER_ELEMENTAL, 'E', ETC_WATER, "water elemental",
2928     M_NO_FLAGS,
2929     MR_RES_POISON | MR_VUL_FIRE | MR_RES_ELEC,
2930     0, 12, MONS_ELEMENTAL, MONS_WATER_ELEMENTAL, MH_NONLIVING, MAG_IMMUNE,
2931     { {AT_HIT, AF_ENGULF, 22}, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
2932     { 6, 5, 4, 0 },
2933     4, 7, MST_NO_SPELLS, CE_NOCORPSE, Z_NOZOMBIE, S_SILENT,
2934     I_PLANT, HT_AMPHIBIOUS, FL_NONE, 10, SWIM_ENERGY(6),
2935     MONUSE_NOTHING, MONEAT_NOTHING, SIZE_BIG, MON_SHAPE_MISC
2936 },
2937
2938 {
2939     MONS_AIR_ELEMENTAL, 'E', ETC_AIR, "air elemental",
2940     M_SEE_INVIS | M_INSUBSTANTIAL | M_GLOWS_LIGHT,
2941     mrd(MR_RES_ELEC, 3) | MR_RES_POISON,
2942     0, 6, MONS_ELEMENTAL, MONS_AIR_ELEMENTAL, MH_NONLIVING, MAG_IMMUNE,
2943     { {AT_HIT, AF_PLAIN, 15}, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
2944     { 6, 3, 5, 0 },
2945     2, 18, MST_NO_SPELLS, CE_NOCORPSE, Z_NOZOMBIE, S_SILENT,
2946     I_PLANT, HT_LAND, FL_LEVITATE, 25, DEFAULT_ENERGY,
2947     MONUSE_NOTHING, MONEAT_NOTHING, SIZE_BIG, MON_SHAPE_MISC
2948 },
2949
2950 {
2951     MONS_IRON_ELEMENTAL, 'E', ETC_IRON, "iron elemental",
2952     M_SPELLCASTER,
2953     mrd(MR_RES_POISON | MR_RES_FIRE | MR_RES_COLD | MR_RES_ELEC, 3),
2954     0, 13, MONS_ELEMENTAL, MONS_IRON_ELEMENTAL, MH_NONLIVING, MAG_IMMUNE,
2955     { {AT_HIT, AF_PLAIN, 40}, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
2956     { 12, 6, 6, 0 },
2957     20, 2, MST_IRON_ELEMENTAL, CE_NOCORPSE, Z_NOZOMBIE, S_SILENT,
2958     I_PLANT, HT_LAND, FL_NONE, 6, DEFAULT_ENERGY,
2959     MONUSE_NOTHING, MONEAT_NOTHING, SIZE_BIG, MON_SHAPE_MISC
2960 },
2961
2962 // frogs ('F')
2963 {
2964     MONS_GIANT_FROG, 'F', GREEN, "giant frog",
2965     M_COLD_BLOOD,
2966     MR_NO_FLAGS,
2967     600, 10, MONS_GIANT_FROG, MONS_GIANT_FROG, MH_NATURAL, -3,
2968     { {AT_HIT, AF_PLAIN, 9}, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
2969     { 4, 3, 5, 0 },
2970     0, 12, MST_NO_SPELLS, CE_CLEAN, Z_SMALL, S_CROAK,
2971     I_REPTILE, HT_AMPHIBIOUS, FL_NONE, 15, SWIM_ENERGY(6),
2972     MONUSE_NOTHING, MONEAT_NOTHING, SIZE_MEDIUM, MON_SHAPE_QUADRUPED_TAILLESS
2973 },
2974
2975 {
2976     MONS_SPINY_FROG, 'F', YELLOW, "spiny frog",
2977     M_COLD_BLOOD,
2978     MR_RES_POISON,
2979     700, 16, MONS_GIANT_FROG, MONS_SPINY_FROG, MH_NATURAL, -3,
2980     { {AT_STING, AF_POISON, 26}, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
2981     { 7, 3, 5, 0 },
2982     6, 9, MST_NO_SPELLS, CE_POISONOUS, Z_SMALL, S_CROAK,
2983     I_REPTILE, HT_AMPHIBIOUS, FL_NONE, 12, SWIM_ENERGY(6),
2984     MONUSE_NOTHING, MONEAT_NOTHING, SIZE_MEDIUM, MON_SHAPE_QUADRUPED_TAILLESS
2985 },
2986
2987 {
2988     MONS_BLINK_FROG, 'F', LIGHTGREEN, "blink frog",
2989     M_COLD_BLOOD | M_PHASE_SHIFT | M_BLINKER,
2990     MR_NO_FLAGS,
2991     450, 13, MONS_BLINK_FROG, MONS_BLINK_FROG, MH_NATURAL, -5,
2992     { {AT_HIT, AF_BLINK, 20}, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
2993     { 6, 3, 5, 0 },
2994     0, 16, MST_NO_SPELLS, CE_CLEAN, Z_SMALL, S_CROAK,
2995     I_REPTILE, HT_AMPHIBIOUS, FL_NONE, 14, SWIM_ENERGY(6),
2996     MONUSE_NOTHING, MONEAT_NOTHING, SIZE_MEDIUM, MON_SHAPE_QUADRUPED_TAILLESS
2997 },
2998
2999 // eyes ('G')
3000 {
3001     MONS_GIANT_EYEBALL, 'G', WHITE, "giant eyeball",
3002     M_NO_FLAGS,
3003     MR_RES_ASPHYX,
3004     0, 10, MONS_GIANT_EYEBALL, MONS_GIANT_EYEBALL, MH_NATURAL, -3,
3005     { AT_NO_ATK, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
3006     { 3, 3, 5, 0 },
3007     0, 1, MST_NO_SPELLS, CE_CLEAN, Z_NOZOMBIE, S_SILENT,
3008     I_PLANT, HT_LAND, FL_LEVITATE, 3, DEFAULT_ENERGY,
3009     MONUSE_NOTHING, MONEAT_NOTHING, SIZE_MEDIUM, MON_SHAPE_ORB
3010 },
3011
3012 {
3013     MONS_EYE_OF_DRAINING, 'G', LIGHTGREY, "eye of draining",
3014     M_SEE_INVIS | M_GLOWS_LIGHT,
3015     MR_RES_ASPHYX,
3016     0, 10, MONS_GIANT_EYEBALL, MONS_EYE_OF_DRAINING, MH_NATURAL, MAG_IMMUNE,
3017     { AT_NO_ATK, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
3018     { 7, 3, 5, 0 },
3019     3, 1, MST_NO_SPELLS, CE_POISONOUS, Z_NOZOMBIE, S_SILENT,
3020     I_PLANT, HT_LAND, FL_LEVITATE, 5, DEFAULT_ENERGY,
3021     MONUSE_NOTHING, MONEAT_NOTHING, SIZE_MEDIUM, MON_SHAPE_ORB
3022 },
3023
3024 {
3025     MONS_GIANT_ORANGE_BRAIN, 'G', LIGHTRED, "giant orange brain",
3026     M_WARM_BLOOD | M_SPELLCASTER | M_SEE_INVIS,
3027     MR_RES_ASPHYX,
3028     0, 13, MONS_GIANT_ORANGE_BRAIN, MONS_GIANT_ORANGE_BRAIN, MH_NATURAL, -8,
3029     { AT_NO_ATK, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
3030     { 10, 3, 5, 0 },
3031     2, 4, MST_GIANT_ORANGE_BRAIN, CE_MUTAGEN, Z_NOZOMBIE, S_SILENT,
3032     I_HIGH, HT_LAND, FL_LEVITATE, 10, DEFAULT_ENERGY,
3033     MONUSE_OPEN_DOORS, MONEAT_NOTHING, SIZE_MEDIUM, MON_SHAPE_ORB
3034 },
3035
3036 {
3037     MONS_GREAT_ORB_OF_EYES, 'G', LIGHTGREEN, "great orb of eyes",
3038     M_SPELLCASTER | M_SEE_INVIS,
3039     MR_RES_POISON,
3040     0, 13, MONS_GIANT_EYEBALL, MONS_GREAT_ORB_OF_EYES, MH_NATURAL, MAG_IMMUNE,
3041     { {AT_BITE, AF_PLAIN, 20}, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
3042     { 12, 3, 5, 0 },
3043     10, 3, MST_GREAT_ORB_OF_EYES, CE_MUTAGEN, Z_NOZOMBIE, S_SILENT,
3044     I_HIGH, HT_LAND, FL_LEVITATE, 10, DEFAULT_ENERGY,
3045     MONUSE_NOTHING, MONEAT_NOTHING, SIZE_LARGE, MON_SHAPE_ORB
3046 },
3047
3048 {
3049     MONS_SHINING_EYE, 'G', LIGHTMAGENTA, "shining eye",
3050     M_SPELLCASTER | M_SEE_INVIS | M_GLOWS_RADIATION,
3051     MR_RES_ASPHYX,
3052     0, 14, MONS_GIANT_EYEBALL, MONS_SHINING_EYE, MH_NATURAL, MAG_IMMUNE,
3053     { AT_NO_ATK, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
3054     { 10, 3, 5, 0 },
3055     3, 1, MST_SHINING_EYE, CE_MUTAGEN, Z_NOZOMBIE, S_SILENT,
3056     I_PLANT, HT_LAND, FL_LEVITATE, 7, DEFAULT_ENERGY,
3057     MONUSE_NOTHING, MONEAT_NOTHING, SIZE_MEDIUM, MON_SHAPE_ORB
3058 },
3059
3060 {
3061     MONS_EYE_OF_DEVASTATION, 'G', YELLOW, "eye of devastation",
3062     M_SPELLCASTER | M_SEE_INVIS | M_GLOWS_LIGHT,
3063     MR_RES_ASPHYX,
3064     0, 11, MONS_GIANT_EYEBALL, MONS_EYE_OF_DEVASTATION,
3065         MH_NATURAL, MAG_IMMUNE,
3066     { AT_NO_ATK, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
3067     { 10, 3, 5, 0 },
3068     12, 1, MST_EYE_OF_DEVASTATION, CE_CLEAN, Z_NOZOMBIE, S_SILENT,
3069     I_PLANT, HT_LAND, FL_LEVITATE, 7, DEFAULT_ENERGY,
3070     MONUSE_NOTHING, MONEAT_NOTHING, SIZE_MEDIUM, MON_SHAPE_ORB
3071 },
3072
3073 {
3074     MONS_GOLDEN_EYE, 'G', ETC_GOLD, "golden eye",
3075     M_BATTY | M_GLOWS_LIGHT | M_BLINKER,
3076     MR_RES_ASPHYX,
3077     0, 17, MONS_GIANT_EYEBALL, MONS_GOLDEN_EYE, MH_NATURAL, MAG_IMMUNE,
3078     { AT_NO_ATK, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
3079     { 6, 1, 2, 0 },
3080     0, 20, MST_NO_SPELLS, CE_NOCORPSE, Z_NOZOMBIE, S_SILENT,
3081     I_PLANT, HT_LAND, FL_LEVITATE, 13, DEFAULT_ENERGY,
3082     MONUSE_NOTHING, MONEAT_NOTHING, SIZE_TINY, MON_SHAPE_ORB
3083 },
3084
3085 {
3086     MONS_OPHAN, 'G', RED, "ophan",
3087     M_SPELLCASTER | M_SEE_INVIS | M_GLOWS_LIGHT,
3088     MR_RES_ASPHYX,
3089     0, 14, MONS_ANGEL, MONS_OPHAN, MH_HOLY, MAG_IMMUNE,
3090     { AT_NO_ATK, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
3091     { 15, 4, 5, 0 },
3092     10, 10, MST_OPHAN, CE_NOCORPSE, Z_NOZOMBIE, S_SILENT,
3093     I_HIGH, HT_LAND, FL_LEVITATE, 10, DEFAULT_ENERGY,
3094     MONUSE_NOTHING, MONEAT_NOTHING, SIZE_MEDIUM, MON_SHAPE_ORB
3095 },
3096
3097 // hybrids ('H')
3098 {
3099     MONS_HIPPOGRIFF, 'H', BROWN, "hippogriff",
3100     M_WARM_BLOOD | M_HYBRID,
3101     MR_NO_FLAGS,
3102     1150, 8, MONS_HIPPOGRIFF, MONS_HIPPOGRIFF, MH_NATURAL, -3,
3103     { {AT_BITE, AF_PLAIN, 10}, {AT_PECK, AF_PLAIN, 8}, {AT_CLAW, AF_PLAIN, 8},
3104        AT_NO_ATK },
3105     { 7, 3, 5, 0 },
3106     2, 7, MST_NO_SPELLS, CE_CLEAN, Z_BIG, S_SCREECH,
3107     I_ANIMAL, HT_LAND, FL_WINGED, 10, DEFAULT_ENERGY,
3108     MONUSE_NOTHING, MONEAT_NOTHING, SIZE_LARGE, MON_SHAPE_QUADRUPED_WINGED
3109 },
3110
3111 {
3112     MONS_MANTICORE, 'H', RED, "manticore",
3113     M_WARM_BLOOD | M_HYBRID,
3114     MR_NO_FLAGS,
3115     1200, 10, MONS_MANTICORE, MONS_MANTICORE, MH_NATURAL, -3,
3116     { {AT_BITE, AF_PLAIN, 26}, {AT_CLAW, AF_PLAIN, 14}, {AT_CLAW, AF_PLAIN, 14},
3117        AT_NO_ATK },
3118     { 9, 3, 5, 0 },
3119     5, 7, MST_NO_SPELLS, CE_CLEAN, Z_BIG, S_SILENT,
3120     I_ANIMAL, HT_LAND, FL_WINGED, 10, DEFAULT_ENERGY,
3121     MONUSE_NOTHING, MONEAT_NOTHING, SIZE_LARGE, MON_SHAPE_QUADRUPED
3122 },
3123
3124 {
3125     MONS_MINOTAUR, 'H', LIGHTRED, "minotaur",
3126     M_FIGHTER | M_WARM_BLOOD | M_SPEAKS | M_HYBRID,
3127     MR_NO_FLAGS,
3128     900, 10, MONS_MINOTAUR, MONS_MINOTAUR, MH_NATURAL, -3,
3129     { {AT_HIT, AF_PLAIN, 35}, {AT_GORE, AF_PLAIN, 20}, AT_NO_ATK, AT_NO_ATK },
3130     { 13, 3, 5, 0 },
3131     5, 7, MST_NO_SPELLS, CE_CLEAN, Z_SMALL, S_BELLOW,
3132     I_NORMAL, HT_LAND, FL_NONE, 10, DEFAULT_ENERGY,
3133     MONUSE_WEAPONS_ARMOUR, MONEAT_NOTHING, SIZE_MEDIUM, MON_SHAPE_HUMANOID
3134 },
3135
3136 {
3137     MONS_GRIFFON, 'H', YELLOW, "griffon",
3138     M_WARM_BLOOD | M_HYBRID,
3139     MR_NO_FLAGS,
3140     1700, 5, MONS_GRIFFON, MONS_GRIFFON, MH_NATURAL, -3,
3141     { {AT_BITE, AF_PLAIN, 18}, {AT_PECK, AF_PLAIN, 10},
3142       {AT_CLAW, AF_PLAIN, 10}, AT_NO_ATK },
3143     { 12, 3, 5, 0 },
3144     4, 6, MST_NO_SPELLS, CE_CLEAN, Z_BIG, S_SCREECH,
3145     I_ANIMAL, HT_LAND, FL_WINGED, 10, DEFAULT_ENERGY,
3146     MONUSE_NOTHING, MONEAT_NOTHING, SIZE_BIG, MON_SHAPE_QUADRUPED_WINGED
3147 },
3148
3149 {
3150     MONS_SPHINX, 'H', LIGHTGREY, "sphinx",
3151     M_SEE_INVIS | M_SPELLCASTER | M_ACTUAL_SPELLS | M_WARM_BLOOD | M_SPEAKS
3152         | M_HYBRID,
3153     MR_NO_FLAGS,
3154     1800, 12, MONS_SPHINX, MONS_SPHINX, MH_NATURAL, -3,
3155     { {AT_HIT, AF_PLAIN, 25}, {AT_HIT, AF_PLAIN, 12}, {AT_HIT, AF_PLAIN, 12},
3156        AT_NO_ATK },
3157     { 16, 3, 5, 0 },
3158     5, 5, MST_SPHINX, CE_CLEAN, Z_BIG, S_SHOUT,
3159     I_HIGH, HT_LAND, FL_WINGED, 11, DEFAULT_ENERGY,
3160     MONUSE_OPEN_DOORS, MONEAT_NOTHING, SIZE_BIG, MON_SHAPE_QUADRUPED_WINGED
3161 },
3162
3163 {
3164     MONS_HARPY, 'H', GREEN, "harpy",
3165     M_WARM_BLOOD | M_BATTY | M_HYBRID,
3166     MR_RES_POISON,
3167     480, 9, MONS_HARPY, MONS_HARPY, MH_NATURAL, -3,
3168     { {AT_CLAW, AF_PLAIN, 19}, {AT_CLAW, AF_PLAIN, 14}, AT_NO_ATK,
3169        AT_NO_ATK },
3170     { 7, 3, 5, 0 },
3171     2, 10, MST_NO_SPELLS, CE_CLEAN, Z_SMALL, S_SCREECH,
3172     I_NORMAL, HT_LAND, FL_WINGED, 25, DEFAULT_ENERGY,
3173     MONUSE_NOTHING, MONEAT_NOTHING, SIZE_MEDIUM, MON_SHAPE_HUMANOID_WINGED
3174 },
3175
3176 // Chimera - composed of three other animals
3177 {
3178     MONS_CHIMERA, 'H', MAGENTA, "chimera",
3179     M_NO_POLY_TO | M_HYBRID,
3180     MR_NO_FLAGS,
3181     0, 11, MONS_CHIMERA, MONS_CHIMERA, MH_NATURAL, -3,
3182     { AT_NO_ATK, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
3183     { 8, 3, 5, 0 },
3184     8, 5, MST_NO_SPELLS, CE_NOCORPSE, Z_BIG, S_RANDOM,
3185     I_ANIMAL, HT_LAND, FL_NONE, 10, DEFAULT_ENERGY,
3186     MONUSE_NOTHING, MONEAT_NOTHING, SIZE_MEDIUM, MON_SHAPE_QUADRUPED
3187 },
3188
3189 // jellies ('J')
3190 {
3191     MONS_OOZE, 'J', LIGHTGREY, "ooze",
3192     M_SENSE_INVIS,
3193     MR_RES_POISON | MR_RES_ASPHYX | mrd(MR_RES_ACID, 3),
3194     0, 3, MONS_JELLY, MONS_OOZE, MH_NATURAL, -6,
3195     { {AT_HIT, AF_PLAIN, 5}, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
3196     { 3, 3, 5, 0 },
3197     1, 3, MST_NO_SPELLS, CE_NOCORPSE, Z_NOZOMBIE, S_SILENT,
3198     I_PLANT, HT_LAND, FL_NONE, 8, DEFAULT_ENERGY,
3199     MONUSE_NOTHING, MONEAT_NOTHING, SIZE_LITTLE, MON_SHAPE_BLOB
3200 },
3201
3202 {
3203     MONS_JELLY, 'J', LIGHTRED, "jelly",
3204     M_SEE_INVIS | M_SPLITS | M_ACID_SPLASH,
3205     MR_RES_POISON | MR_RES_ASPHYX | mrd(MR_RES_ACID, 3),
3206     0, 15, MONS_JELLY, MONS_JELLY, MH_NATURAL, -3,
3207     { {AT_HIT, AF_ACID, 3}, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
3208     { 3, 4, 3, 0 },
3209     0, 2, MST_NO_SPELLS, CE_NOCORPSE, Z_NOZOMBIE, S_SILENT,
3210     I_PLANT, HT_AMPHIBIOUS, FL_NONE, 10, DEFAULT_ENERGY,
3211     MONUSE_NOTHING, MONEAT_ITEMS, SIZE_SMALL, MON_SHAPE_BLOB
3212 },
3213
3214 {
3215     MONS_SLIME_CREATURE, 'J', GREEN, "slime creature",
3216     M_FAST_REGEN | M_HERD,
3217     MR_RES_POISON | MR_RES_ASPHYX,
3218     0, 3, MONS_JELLY, MONS_SLIME_CREATURE, MH_NATURAL, -3,
3219     { {AT_HIT, AF_PLAIN, 22}, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
3220     { 11, 3, 5, 0 },
3221     1, 4, MST_NO_SPELLS, CE_NOCORPSE, Z_NOZOMBIE, S_SILENT,
3222     I_PLANT, HT_AMPHIBIOUS, FL_NONE, 10, DEFAULT_ENERGY,
3223     MONUSE_NOTHING, MONEAT_NOTHING, SIZE_SMALL, MON_SHAPE_BLOB
3224 },
3225
3226 DUMMY(MONS_MERGED_SLIME_CREATURE, 'J', LIGHTGREEN, "merged slime creature")
3227
3228 {
3229     MONS_AZURE_JELLY, 'J', LIGHTBLUE, "azure jelly",
3230     M_SENSE_INVIS,
3231     MR_RES_POISON | MR_RES_ASPHYX | MR_RES_COLD | MR_VUL_FIRE | MR_RES_ELEC
3232         | mrd(MR_RES_ACID, 3),
3233     0, 14, MONS_JELLY, MONS_AZURE_JELLY, MH_NATURAL, -4,
3234     { {AT_HIT, AF_COLD, 12}, {AT_HIT, AF_COLD, 12}, {AT_HIT, AF_PLAIN, 12},
3235       {AT_HIT, AF_PLAIN, 12} },
3236     { 15, 3, 5, 0 },
3237     5, 10, MST_NO_SPELLS, CE_NOCORPSE, Z_NOZOMBIE, S_SILENT,
3238     I_PLANT, HT_LAND, FL_NONE, 12, DEFAULT_ENERGY,
3239     MONUSE_NOTHING, MONEAT_ITEMS, SIZE_SMALL, MON_SHAPE_BLOB
3240 },
3241
3242 {
3243     MONS_DEATH_OOZE, 'J', MAGENTA, "death ooze",
3244     M_SENSE_INVIS,
3245     MR_RES_COLD | mrd(MR_RES_ACID, 3),
3246     0, 15, MONS_JELLY, MONS_DEATH_OOZE, MH_UNDEAD, -8,
3247     { {AT_HIT, AF_ROT, 32}, {AT_HIT, AF_PLAIN, 32}, AT_NO_ATK, AT_NO_ATK },
3248     { 11, 3, 3, 0 },
3249     2, 4, MST_NO_SPELLS, CE_NOCORPSE, Z_NOZOMBIE, S_SILENT,
3250     I_PLANT, HT_LAND, FL_NONE, 12, DEFAULT_ENERGY,
3251     MONUSE_NOTHING, MONEAT_ITEMS, SIZE_LITTLE, MON_SHAPE_BLOB
3252 },
3253
3254 {
3255     MONS_ACID_BLOB, 'J', LIGHTCYAN, "acid blob",
3256     M_SENSE_INVIS | M_ACID_SPLASH,
3257     MR_RES_POISON | MR_RES_ASPHYX | mrd(MR_RES_ACID, 3),
3258     0, 12, MONS_JELLY, MONS_ACID_BLOB, MH_NATURAL, -7,
3259     { {AT_HIT, AF_ACID, 42}, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
3260     { 18, 3, 5, 0 },
3261     1, 3, MST_NO_SPELLS, CE_NOCORPSE, Z_NOZOMBIE, S_SILENT,
3262     I_PLANT, HT_LAND, FL_NONE, 12, DEFAULT_ENERGY,
3263     MONUSE_NOTHING, MONEAT_ITEMS, SIZE_SMALL, MON_SHAPE_BLOB
3264 },
3265
3266 // kobolds ('K')
3267 {
3268     MONS_KOBOLD, 'K', BROWN, "kobold",
3269     M_WARM_BLOOD | M_SPEAKS,
3270     MR_NO_FLAGS,
3271     400, 10, MONS_KOBOLD, MONS_KOBOLD, MH_NATURAL, -1,
3272     { {AT_HIT, AF_PLAIN, 4}, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
3273     { 1, 2, 3, 0 },
3274     2, 12, MST_NO_SPELLS, CE_POISONOUS, Z_SMALL, S_SHOUT,
3275     I_NORMAL, HT_LAND, FL_NONE, 10, DEFAULT_ENERGY,
3276     MONUSE_WEAPONS_ARMOUR, MONEAT_NOTHING, SIZE_SMALL, MON_SHAPE_HUMANOID
3277 },
3278
3279 {
3280     MONS_BIG_KOBOLD, 'K', YELLOW, "big kobold",
3281     M_WARM_BLOOD | M_SPEAKS,
3282     MR_NO_FLAGS,
3283     500, 7, MONS_KOBOLD, MONS_BIG_KOBOLD, MH_NATURAL, -3,
3284     { {AT_HIT, AF_PLAIN, 7}, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
3285     { 5, 3, 5, 0 },
3286     3, 12, MST_NO_SPELLS, CE_POISONOUS, Z_SMALL, S_SILENT,
3287     I_NORMAL, HT_LAND, FL_NONE, 10, DEFAULT_ENERGY,
3288     MONUSE_WEAPONS_ARMOUR, MONEAT_NOTHING, SIZE_MEDIUM, MON_SHAPE_HUMANOID
3289 },
3290
3291 {
3292     MONS_KOBOLD_DEMONOLOGIST, 'K', MAGENTA, "kobold demonologist",
3293     M_SPELLCASTER | M_ACTUAL_SPELLS | M_WARM_BLOOD | M_SPEAKS,
3294     MR_NO_FLAGS,
3295     400, 18, MONS_KOBOLD, MONS_KOBOLD, MH_NATURAL, -5,
3296     { {AT_HIT, AF_PLAIN, 4}, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
3297     { 6, 4, 5, 0 },
3298     2, 13, MST_KOBOLD_DEMONOLOGIST, CE_POISONOUS, Z_NOZOMBIE, S_SHOUT,
3299     I_HIGH, HT_LAND, FL_NONE, 10, DEFAULT_ENERGY,
3300     MONUSE_WEAPONS_ARMOUR, MONEAT_NOTHING, SIZE_SMALL, MON_SHAPE_HUMANOID
3301 },
3302
3303 // liches ('L')
3304 {
3305     MONS_LICH, 'L', LIGHTGREY, "lich",
3306     M_SPELLCASTER | M_ACTUAL_SPELLS | M_SEE_INVIS | M_SPEAKS,
3307     mrd(MR_RES_COLD, 2),
3308     0, 18, MONS_LICH, MONS_LICH, MH_UNDEAD, MAG_IMMUNE,
3309     { {AT_TOUCH, AF_DRAIN_XP, 15}, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
3310     { 20, 2, 4, 0 },
3311     10, 10, MST_NO_SPELLS, CE_NOCORPSE, Z_NOZOMBIE, S_SHOUT,
3312     I_HIGH, HT_LAND, FL_NONE, 10, DEFAULT_ENERGY,
3313     MONUSE_OPEN_DOORS, MONEAT_NOTHING, SIZE_MEDIUM, MON_SHAPE_HUMANOID
3314 },
3315
3316 {
3317     MONS_ANCIENT_LICH, 'L', WHITE, "ancient lich",
3318     M_SPELLCASTER | M_ACTUAL_SPELLS | M_SEE_INVIS | M_SPEAKS,
3319     mrd(MR_RES_COLD, 2) | MR_RES_FIRE | MR_RES_ELEC,
3320     0, 24, MONS_LICH, MONS_LICH, MH_UNDEAD, MAG_IMMUNE,
3321     { {AT_TOUCH, AF_DRAIN_XP, 20}, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
3322     { 27, 2, 4, 0 },
3323     20, 10, MST_NO_SPELLS, CE_NOCORPSE, Z_NOZOMBIE, S_SHOUT,
3324     I_HIGH, HT_LAND, FL_NONE, 10, DEFAULT_ENERGY,
3325     MONUSE_OPEN_DOORS, MONEAT_NOTHING, SIZE_MEDIUM, MON_SHAPE_HUMANOID
3326 },
3327
3328 {
3329     MONS_REVENANT, 'L', CYAN, "revenant",
3330     M_SPELLCASTER | M_ACTUAL_SPELLS | M_SEE_INVIS | M_SPEAKS,
3331     mrd(MR_RES_COLD, 2),
3332     0, 18, MONS_REVENANT, MONS_REVENANT, MH_UNDEAD, MAG_IMMUNE,
3333     { {AT_HIT, AF_PLAIN, 26}, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
3334     { 18, 3, 3, 0 },
3335     8, 12, MST_REVENANT, CE_NOCORPSE, Z_NOZOMBIE, S_SHOUT,
3336     I_HIGH, HT_LAND, FL_NONE, 10, DEFAULT_ENERGY,
3337     MONUSE_OPEN_DOORS, MONEAT_NOTHING, SIZE_MEDIUM, MON_SHAPE_HUMANOID
3338 },
3339
3340 {
3341     MONS_UNBORN, 'L', BROWN, "unborn",
3342     M_SPELLCASTER | M_ACTUAL_SPELLS | M_SPEAKS,
3343     MR_RES_COLD,
3344     0, 16, MONS_UNBORN, MONS_UNBORN, MH_UNDEAD, -8,
3345     { {AT_HIT, AF_PLAIN, 17}, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
3346     { 11, 5, 4, 0 },
3347     2, 10, MST_UNBORN, CE_NOCORPSE, Z_NOZOMBIE, S_SHOUT,
3348     I_HIGH, HT_LAND, FL_NONE, 10, DEFAULT_ENERGY,
3349     MONUSE_WEAPONS_ARMOUR, MONEAT_NOTHING, SIZE_MEDIUM, MON_SHAPE_HUMANOID
3350 },
3351
3352 // mummies ('M')
3353 {
3354     MONS_MUMMY, 'M', LIGHTGREY, "mummy",
3355     M_NO_FLAGS,
3356     MR_VUL_FIRE | MR_RES_COLD,
3357     0, 21, MONS_MUMMY, MONS_MUMMY, MH_UNDEAD, -5,
3358     { {AT_HIT, AF_PLAIN, 20}, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
3359     { 3, 5, 3, 0 },
3360     3, 6, MST_NO_SPELLS, CE_NOCORPSE, Z_NOZOMBIE, S_SILENT,
3361     I_NORMAL, HT_LAND, FL_NONE, 6, DEFAULT_ENERGY,
3362     MONUSE_OPEN_DOORS, MONEAT_NOTHING, SIZE_MEDIUM, MON_SHAPE_HUMANOID
3363 },
3364
3365 {
3366     MONS_GUARDIAN_MUMMY, 'M', YELLOW, "guardian mummy",
3367     M_FIGHTER | M_SEE_INVIS,
3368     MR_RES_COLD,
3369     0, 13, MONS_MUMMY, MONS_MUMMY, MH_UNDEAD, -5,
3370     { {AT_HIT, AF_PLAIN, 30}, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
3371     { 7, 5, 3, 0 },
3372     6, 9, MST_NO_SPELLS, CE_NOCORPSE, Z_NOZOMBIE, S_SILENT,
3373     I_NORMAL, HT_LAND, FL_NONE, 8, DEFAULT_ENERGY,
3374     MONUSE_WEAPONS_ARMOUR, MONEAT_NOTHING, SIZE_LARGE, MON_SHAPE_HUMANOID
3375 },
3376
3377 {
3378     MONS_GREATER_MUMMY, 'M', WHITE, "greater mummy",
3379     M_SPELLCASTER | M_ACTUAL_SPELLS | M_SEE_INVIS | M_SPEAKS,
3380     MR_RES_COLD | MR_RES_ELEC,
3381     0, 24, MONS_MUMMY, MONS_MUMMY, MH_UNDEAD, MAG_IMMUNE,
3382     { {AT_HIT, AF_PLAIN, 35}, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
3383     { 15, 5, 3, 100 },
3384     10, 6, MST_MUMMY, CE_NOCORPSE, Z_NOZOMBIE, S_SILENT,
3385     I_HIGH, HT_LAND, FL_NONE, 10, DEFAULT_ENERGY,
3386     MONUSE_WEAPONS_ARMOUR, MONEAT_NOTHING, SIZE_MEDIUM, MON_SHAPE_HUMANOID
3387 },
3388
3389 {
3390     MONS_MUMMY_PRIEST, 'M', RED, "mummy priest",
3391     M_SPELLCASTER | M_PRIEST | M_SEE_INVIS | M_SPEAKS,
3392     MR_RES_COLD | MR_RES_ELEC,
3393     0, 20, MONS_MUMMY, MONS_MUMMY, MH_UNDEAD, MAG_IMMUNE,
3394     { {AT_HIT, AF_PLAIN, 30}, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
3395     { 10, 5, 3, 0 },
3396     8, 7, MST_MUMMY, CE_NOCORPSE, Z_NOZOMBIE, S_SILENT,
3397     I_HIGH, HT_LAND, FL_NONE, 8, DEFAULT_ENERGY,
3398     MONUSE_WEAPONS_ARMOUR, MONEAT_NOTHING, SIZE_MEDIUM, MON_SHAPE_HUMANOID
3399 },
3400
3401 // nagas ('N')
3402 {
3403     MONS_NAGA, 'N', GREEN, "naga",
3404     M_SPELLCASTER | M_FAKE_SPELLS | M_SEE_INVIS | M_WARM_BLOOD | M_SPEAKS,
3405     MR_RES_POISON,
3406     1000, 13, MONS_NAGA, MONS_NAGA, MH_NATURAL, -6,
3407     { {AT_HIT, AF_PLAIN, 17}, {AT_CONSTRICT, AF_CRUSH, 3},
3408        AT_NO_ATK, AT_NO_ATK },
3409     { 5, 3, 5, 0 },
3410     6, 10, MST_NAGA, CE_POISONOUS, Z_BIG, S_SHOUT,
3411     I_NORMAL, HT_LAND, FL_NONE, 10, MOVE_ENERGY(14),
3412     MONUSE_WEAPONS_ARMOUR, MONEAT_NOTHING, SIZE_LARGE, MON_SHAPE_NAGA
3413 },
3414
3415 {
3416     MONS_NAGA_MAGE, 'N', MAGENTA, "naga mage",
3417     M_SPELLCASTER | M_ACTUAL_SPELLS | M_SEE_INVIS | M_WARM_BLOOD | M_SPEAKS,
3418     MR_RES_POISON,
3419     1000, 14, MONS_NAGA, MONS_NAGA, MH_NATURAL, -6,
3420     { {AT_HIT, AF_PLAIN, 17}, {AT_CONSTRICT, AF_CRUSH, 4},
3421        AT_NO_ATK, AT_NO_ATK },
3422     { 7, 3, 5, 0 },
3423     6, 10, MST_NAGA_MAGE, CE_POISONOUS, Z_NOZOMBIE, S_SHOUT,
3424     I_NORMAL, HT_LAND, FL_NONE, 10, MOVE_ENERGY(14),
3425     MONUSE_WEAPONS_ARMOUR, MONEAT_NOTHING, SIZE_LARGE, MON_SHAPE_NAGA
3426 },
3427
3428 {
3429     MONS_NAGA_SHARPSHOOTER, 'N', LIGHTGRAY, "naga sharpshooter",
3430     M_SPELLCASTER | M_ACTUAL_SPELLS | M_SEE_INVIS | M_WARM_BLOOD
3431         | M_ARCHER | M_SPEAKS,
3432     MR_RES_POISON,
3433     1000, 14, MONS_NAGA, MONS_NAGA, MH_NATURAL, -6,
3434     { {AT_HIT, AF_PLAIN, 17}, {AT_CONSTRICT, AF_CRUSH, 5}, AT_NO_ATK, AT_NO_ATK },
3435     { 9, 6, 4, 0 },
3436     6, 10, MST_NAGA_SNIPER, CE_POISONOUS, Z_NOZOMBIE, S_SHOUT,
3437     I_NORMAL, HT_LAND, FL_NONE, 10, MOVE_ENERGY(14),
3438     MONUSE_WEAPONS_ARMOUR, MONEAT_NOTHING, SIZE_LARGE, MON_SHAPE_NAGA
3439 },
3440
3441 {
3442     MONS_NAGA_RITUALIST, 'N', BROWN, "naga ritualist",
3443     M_SPELLCASTER | M_ACTUAL_SPELLS | M_SEE_INVIS | M_WARM_BLOOD | M_SPEAKS,
3444     MR_RES_POISON,
3445     1000, 14, MONS_NAGA, MONS_NAGA, MH_NATURAL, -6,
3446     { {AT_HIT, AF_PLAIN, 14}, {AT_CONSTRICT, AF_CRUSH, 4},
3447        AT_NO_ATK, AT_NO_ATK },
3448     { 8, 5, 5, 0 },
3449     6, 10, MST_NAGA_RITUALIST, CE_POISONOUS, Z_NOZOMBIE, S_SHOUT,
3450     I_NORMAL, HT_LAND, FL_NONE, 10, MOVE_ENERGY(14),
3451     MONUSE_WEAPONS_ARMOUR, MONEAT_NOTHING, SIZE_LARGE, MON_SHAPE_NAGA
3452 },
3453
3454 {
3455     MONS_NAGA_WARRIOR, 'N', BLUE, "naga warrior",
3456     M_FIGHTER | M_SPELLCASTER | M_FAKE_SPELLS | M_SEE_INVIS | M_WARM_BLOOD
3457         | M_SPEAKS,
3458     MR_RES_POISON,
3459     1000, 11, MONS_NAGA, MONS_NAGA, MH_NATURAL, -6,
3460     { {AT_HIT, AF_PLAIN, 28}, {AT_CONSTRICT, AF_CRUSH, 6},
3461        AT_NO_ATK, AT_NO_ATK },
3462     { 10, 9, 2, 0 },
3463     6, 10, MST_NAGA, CE_POISONOUS, Z_NOZOMBIE, S_SHOUT,
3464     I_NORMAL, HT_LAND, FL_NONE, 10, MOVE_ENERGY(14),
3465     MONUSE_WEAPONS_ARMOUR, MONEAT_NOTHING, SIZE_LARGE, MON_SHAPE_NAGA
3466 },
3467
3468 {
3469     MONS_GREATER_NAGA, 'N', LIGHTMAGENTA, "greater naga",
3470     M_FIGHTER | M_SPELLCASTER | M_ACTUAL_SPELLS | M_SEE_INVIS | M_WARM_BLOOD
3471         | M_SPEAKS,
3472     MR_RES_POISON,
3473     1000, 15, MONS_NAGA, MONS_NAGA, MH_NATURAL, MAG_IMMUNE,
3474     { {AT_HIT, AF_PLAIN, 27}, {AT_CONSTRICT, AF_CRUSH, 7},
3475        AT_NO_ATK, AT_NO_ATK },
3476     { 15, 3, 5, 0 },
3477     6, 10, MST_NAGA_MAGE, CE_POISONOUS, Z_NOZOMBIE, S_SHOUT,
3478     I_HIGH, HT_LAND, FL_NONE, 10, MOVE_ENERGY(14),
3479     MONUSE_WEAPONS_ARMOUR, MONEAT_NOTHING, SIZE_LARGE, MON_SHAPE_NAGA
3480 },
3481
3482 // ogres ('O')
3483 {
3484     MONS_OGRE, 'O', BROWN, "ogre",
3485     M_WARM_BLOOD | M_SPEAKS,
3486     MR_NO_FLAGS,
3487     1300, 9, MONS_OGRE, MONS_OGRE, MH_NATURAL, -3,
3488     { {AT_HIT, AF_PLAIN, 17}, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
3489     { 5, 3, 5, 0 },
3490     1, 6, MST_NO_SPELLS, CE_CLEAN, Z_BIG, S_SHOUT,
3491     I_NORMAL, HT_LAND, FL_NONE, 10, DEFAULT_ENERGY,
3492     MONUSE_STARTING_EQUIPMENT, MONEAT_NOTHING, SIZE_LARGE, MON_SHAPE_HUMANOID
3493 },
3494
3495 // These guys get understated because the experience code can't see
3496 // that they wield two weapons... I'm raising their xp modifier. - bwr
3497 {
3498     MONS_TWO_HEADED_OGRE, 'O', LIGHTRED, "two-headed ogre",
3499     M_WARM_BLOOD | M_TWO_WEAPONS | M_SPEAKS,
3500     MR_NO_FLAGS,
3501     1390, 15, MONS_OGRE, MONS_TWO_HEADED_OGRE, MH_NATURAL, -4,
3502     { {AT_HIT, AF_PLAIN, 17}, {AT_HIT, AF_PLAIN, 13}, AT_NO_ATK, AT_NO_ATK },
3503     { 6, 3, 5, 0 },
3504     1, 4, MST_NO_SPELLS, CE_CLEAN, Z_BIG, S_SHOUT2,
3505     I_NORMAL, HT_LAND, FL_NONE, 10, DEFAULT_ENERGY,
3506     MONUSE_STARTING_EQUIPMENT, MONEAT_NOTHING, SIZE_LARGE, MON_SHAPE_HUMANOID
3507 },
3508
3509 {
3510     MONS_OGRE_MAGE, 'O', MAGENTA, "ogre mage",
3511     M_SPELLCASTER | M_ACTUAL_SPELLS | M_SEE_INVIS | M_WARM_BLOOD | M_SPEAKS,
3512     MR_NO_FLAGS,
3513     1300, 16, MONS_OGRE, MONS_OGRE, MH_NATURAL, -6,
3514     { {AT_HIT, AF_PLAIN, 12}, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
3515     { 10, 3, 5, 0 },
3516     1, 7, MST_NO_SPELLS, CE_CLEAN, Z_NOZOMBIE, S_SHOUT,
3517     I_HIGH, HT_LAND, FL_NONE, 10, DEFAULT_ENERGY,
3518     MONUSE_WEAPONS_ARMOUR, MONEAT_NOTHING, SIZE_LARGE, MON_SHAPE_HUMANOID
3519 },
3520
3521 // immobile plants and fungi ('P')
3522 {
3523     MONS_PLANT, 'P', GREEN, "plant",
3524     M_STATIONARY | M_NO_EXP_GAIN,
3525     MR_RES_POISON,
3526     0, 10, MONS_PLANT, MONS_PLANT, MH_PLANT, MAG_IMMUNE,
3527     { AT_NO_ATK, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
3528     { 10, 3, 5, 0 },
3529     10, 0, MST_NO_SPELLS, CE_NOCORPSE, Z_NOZOMBIE, S_SILENT,
3530     I_PLANT, HT_LAND, FL_NONE, 0, DEFAULT_ENERGY,
3531     MONUSE_NOTHING, MONEAT_NOTHING, SIZE_SMALL, MON_SHAPE_PLANT
3532 },
3533
3534 {
3535     MONS_OKLOB_SAPLING, 'P', LIGHTCYAN, "oklob sapling",
3536     M_STATIONARY,
3537     MR_RES_POISON | mrd(MR_RES_ACID, 3),
3538     0, 10, MONS_PLANT, MONS_OKLOB_PLANT, MH_PLANT, -3,
3539     { AT_NO_ATK, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
3540     { 4, 3, 5, 0 },
3541     10, 0, MST_NO_SPELLS, CE_NOCORPSE, Z_NOZOMBIE, S_SILENT,
3542     I_PLANT, HT_LAND, FL_NONE, 10, DEFAULT_ENERGY,
3543     MONUSE_NOTHING, MONEAT_NOTHING, SIZE_SMALL, MON_SHAPE_PLANT
3544 },
3545
3546 {
3547     MONS_OKLOB_PLANT, 'P', LIGHTGREEN, "oklob plant",
3548     M_STATIONARY,
3549     MR_RES_POISON | mrd(MR_RES_ACID, 3),
3550     0, 10, MONS_PLANT, MONS_OKLOB_PLANT, MH_PLANT, -3,
3551     { AT_NO_ATK, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
3552     { 10, 3, 5, 0 },
3553     10, 0, MST_NO_SPELLS, CE_NOCORPSE, Z_NOZOMBIE, S_SILENT,
3554     I_PLANT, HT_LAND, FL_NONE, 10, DEFAULT_ENERGY,
3555     MONUSE_NOTHING, MONEAT_NOTHING, SIZE_SMALL, MON_SHAPE_PLANT
3556 },
3557
3558 {
3559     MONS_BUSH, 'P', BROWN, "bush",
3560     M_STATIONARY | M_NO_EXP_GAIN,
3561     MR_RES_POISON | MR_VUL_FIRE,
3562     0, 10, MONS_PLANT, MONS_BUSH, MH_PLANT, MAG_IMMUNE,
3563     { AT_NO_ATK, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
3564     { 20, 3, 5, 0 },
3565     15, 0, MST_NO_SPELLS, CE_NOCORPSE, Z_NOZOMBIE, S_SILENT,
3566     I_PLANT, HT_LAND, FL_NONE, 0, DEFAULT_ENERGY,
3567     MONUSE_NOTHING, MONEAT_NOTHING, SIZE_BIG, MON_SHAPE_PLANT
3568 },
3569
3570 {
3571     MONS_BURNING_BUSH, 'P', RED, "burning bush",
3572     M_STATIONARY | M_SEE_INVIS,
3573     MR_RES_POISON | MR_RES_FIRE,
3574     0, 10, MONS_PLANT, MONS_BUSH, MH_PLANT, MAG_IMMUNE,
3575     { AT_NO_ATK, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
3576     { 8, 3, 5, 0 },
3577     10, 0, MST_NO_SPELLS, CE_NOCORPSE, Z_NOZOMBIE, S_SILENT,
3578     I_PLANT, HT_LAND, FL_NONE, 10, DEFAULT_ENERGY,
3579     MONUSE_NOTHING, MONEAT_NOTHING, SIZE_BIG, MON_SHAPE_PLANT
3580 },
3581
3582 {
3583     MONS_TOADSTOOL, 'P', BLACK, "toadstool",
3584     M_NO_EXP_GAIN | M_STATIONARY,
3585     MR_RES_POISON,
3586     0, 10, MONS_FUNGUS, MONS_TOADSTOOL, MH_PLANT, MAG_IMMUNE,
3587     { AT_NO_ATK, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
3588     { 1, 2, 2, 0 },
3589     1, 0, MST_NO_SPELLS, CE_NOCORPSE, Z_NOZOMBIE, S_SILENT,
3590     I_PLANT, HT_LAND, FL_NONE, 0, DEFAULT_ENERGY,
3591     MONUSE_NOTHING, MONEAT_NOTHING, SIZE_TINY, MON_SHAPE_FUNGUS
3592 },
3593
3594 {
3595     MONS_FUNGUS, 'P', LIGHTGREY, "fungus",
3596     M_NO_EXP_GAIN | M_STATIONARY,
3597     MR_RES_POISON,
3598     0, 10, MONS_FUNGUS, MONS_FUNGUS, MH_PLANT, MAG_IMMUNE,
3599     { AT_NO_ATK, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
3600     { 8, 3, 5, 0 },
3601     1, 0, MST_NO_SPELLS, CE_NOCORPSE, Z_NOZOMBIE, S_SILENT,
3602     I_PLANT, HT_LAND, FL_NONE, 0, DEFAULT_ENERGY,
3603     MONUSE_NOTHING, MONEAT_NOTHING, SIZE_TINY, MON_SHAPE_FUNGUS
3604 },
3605
3606 {