Mercurial > hg > early-roguelike
comparison xrogue/mons_def.c @ 133:e6179860cb76
Import XRogue 8.0 from the Roguelike Restoration Project (r1490)
author | John "Elwin" Edwards |
---|---|
date | Tue, 21 Apr 2015 08:55:20 -0400 |
parents | |
children |
comparison
equal
deleted
inserted
replaced
124:d10fc4a065ac | 133:e6179860cb76 |
---|---|
1 /* | |
2 mons_def.c - monster data initializer | |
3 | |
4 XRogue: Expeditions into the Dungeons of Doom | |
5 Copyright (C) 1991 Robert Pietkivitch | |
6 All rights reserved. | |
7 | |
8 Based on "Advanced Rogue" | |
9 Copyright (C) 1984, 1985 Michael Morgan, Ken Dalka and AT&T | |
10 All rights reserved. | |
11 | |
12 Based on "Rogue: Exploring the Dungeons of Doom" | |
13 Copyright (C) 1980, 1981 Michael Toy, Ken Arnold and Glenn Wichman | |
14 All rights reserved. | |
15 | |
16 See the file LICENSE.TXT for full copyright and licensing information. | |
17 */ | |
18 | |
19 #include <ctype.h> | |
20 #include <curses.h> | |
21 #include "rogue.h" | |
22 | |
23 #define HPT(x) x | |
24 | |
25 struct monster monsters[NUMMONST+1] = { | |
26 /* {"Name", | |
27 CARRY, NORMAL, WANDER, APPEAR, INTEL, | |
28 {ATTRIBUTES}, | |
29 "SUMMONED_CREATURE", NUMBER_SUMMONED, | |
30 ADDED_EXPERIENCE/HIT_POINT, | |
31 {str dex, move, exp, level, "armor", hit_points, | |
32 "damage"}}, */ | |
33 {"unknown", | |
34 0, FALSE, FALSE, '\0', "", | |
35 {0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
36 "", 0, | |
37 0, | |
38 {0, 0, 0, 0, 0, 0, HPT(""), | |
39 ""}}, | |
40 {"giant rat", | |
41 0, TRUE, TRUE, 'R', "2-6", | |
42 {ISMEAN, CANDISEASE}, | |
43 "", 0, | |
44 0, | |
45 {10, 10, 6, 5, 1, 7, HPT("1d4"), | |
46 "1d3"}}, | |
47 {"kobold", | |
48 50, TRUE, TRUE, 'K', "8-12", | |
49 {ISMEAN, CANSHOOT, CARRYWEAPON}, | |
50 "", 0, | |
51 2, | |
52 {9, 9, 5, 8, 2, 7, HPT("1d4"), | |
53 "1d4"}}, | |
54 {"bat", | |
55 0, TRUE, TRUE, 'b', "2-6", | |
56 {ISMEAN, AREMANY, CANDISEASE, ISFLY}, | |
57 "", 0, | |
58 0, | |
59 {5, 5, 6, 5, 1, 10, HPT("1d2"), | |
60 "1d2"}}, | |
61 {"gnome", | |
62 50, TRUE, FALSE, 'G', "10-15", | |
63 {CANSHOOT, CARRYPOTION, CARRYWEAPON, NOSTAB}, | |
64 "", 0, | |
65 3, | |
66 {10, 10, 6, 8, 1, 5, HPT("1d6"), | |
67 "1d6"}}, | |
68 {"halfling", | |
69 50, TRUE, FALSE, 'H', "11-16", | |
70 {CANSHOOT, CARRYSCROLL, CARRYWEAPON, NOSTAB}, | |
71 "", 0, | |
72 3, | |
73 {8, 10, 6, 10, 1, 4, HPT("1d8"), | |
74 "1d6"}}, | |
75 {"xvart", | |
76 50, TRUE, TRUE, 'x', "4-14", | |
77 {ISMEAN, AREMANY, CARRYDAGGER, CANTELEPORT}, | |
78 "", 0, | |
79 1, | |
80 {8, 10, 7, 8, 1, 7, HPT("1d2"), | |
81 "1d3"}}, | |
82 {"manes", | |
83 0, TRUE, TRUE, 'M', "2-8", | |
84 {ISMEAN, ISUNDEAD, TURNABLE, CANDISEASE}, | |
85 "", 0, | |
86 0, | |
87 {5, 5, 5, 15, 2, 7, HPT("1d8"), | |
88 "1d2/1d2/1d4"}}, | |
89 {"rot grub", | |
90 0, TRUE, TRUE, 'r', "10", | |
91 {ISMEAN, CANDISEASE, CANINFEST, CANSMELL}, | |
92 "", 0, | |
93 0, | |
94 {10, 10, 8, 8, 1, 8, HPT("1d6"), | |
95 "1d6"}}, | |
96 {"giant ant", | |
97 0, TRUE, TRUE, 'A', "1", | |
98 {ISMEAN, CANPOISON}, | |
99 "", 0, | |
100 3, | |
101 {10, 10, 6, 30, 3, 3, HPT("2d8"), | |
102 "1d6/1d6"}}, | |
103 {"orc", | |
104 50, TRUE, TRUE, 'O', "8", | |
105 {ISMEAN, CANSHOOT, CARRYFOOD}, | |
106 "", 0, | |
107 2, | |
108 {12, 12, 5, 15, 4, 6, HPT("2d8"), | |
109 "1d8"}}, | |
110 {"dwarf", | |
111 50, TRUE, FALSE, 'D', "10-14", | |
112 {CARRYSCROLL, CARRYGOLD, CARRYDAGGER, NOSTAB}, | |
113 "", 0, | |
114 4, | |
115 {10, 10, 6, 20, 1, 4, HPT("2d8"), | |
116 "1d8"}}, | |
117 {"elf", | |
118 50, TRUE, FALSE, 'E', "10-14", | |
119 {CARRYPOTION, CARRYWEAPON, NOSTAB, CARRYFOOD}, | |
120 "", 0, | |
121 4, | |
122 {12, 10, 6, 20, 1, 4, HPT("2d8+2"), | |
123 "1d10"}}, | |
124 {"hobgoblin", | |
125 50, TRUE, TRUE, 'h', "8-10", | |
126 {ISMEAN, CANSHOOT, NOSLOW}, | |
127 "", 0, | |
128 3, | |
129 {14, 14, 4, 30, 4, 5, HPT("1d8"), | |
130 "1d8"}}, | |
131 {"urchin", | |
132 50, TRUE, TRUE, 'u', "6-15", | |
133 {ISMEAN, ISGREED, CARRYGOLD, CARRYRING}, | |
134 "", 0, | |
135 1, | |
136 {10, 10, 6, 25, 1, 3, HPT("2d8"), | |
137 "1d6"}}, | |
138 {"fire beetle", | |
139 0, TRUE, TRUE, 'B', "10", | |
140 {ISMEAN, HASFIRE}, | |
141 "", 0, | |
142 2, | |
143 {10, 10, 6, 20, 1, 4, HPT("1d8+2"), | |
144 "2d4"}}, | |
145 {"ear seeker", | |
146 0, TRUE, TRUE, 'e', "0", | |
147 {ISMEAN, AREMANY, CANINFEST, CANSURPRISE}, | |
148 "", 0, | |
149 0, | |
150 {10, 10, 5, 10, 1, 8, HPT("1d2"), | |
151 "1d1"}}, | |
152 {"shrieker", | |
153 0, TRUE, TRUE, 'S', "0", | |
154 {ISMEAN, CANSHRIEK, NOMOVE, NOSTAB}, | |
155 "", 0, | |
156 4, | |
157 {10, 10, 7, 20, 2, 7, HPT("3d8"), | |
158 "0d0"}}, | |
159 {"stirge", | |
160 0, TRUE, TRUE, 's', "1", | |
161 {ISMEAN, CANDRAW, ISFLY}, | |
162 "", 0, | |
163 2, | |
164 {10, 10, 4, 30, 1, 8, HPT("2d6"), | |
165 "1d3"}}, | |
166 {"troglodyte", | |
167 50, TRUE, TRUE, 'T', "5-15", | |
168 {ISMEAN, CANSMELL, CANSTINK, CANSHOOT, HASFIRE}, | |
169 "", 0, | |
170 3, | |
171 {10, 10, 6, 30, 5, 4, HPT("2d8"), | |
172 "1d6/2d6"}}, | |
173 {"zombie", | |
174 0, TRUE, TRUE, 'Z', "0", | |
175 {ISMEAN, ISUNDEAD, TURNABLE, CANSURPRISE, ISSHADOW, NOSLEEP}, | |
176 "", 0, | |
177 6, | |
178 {10, 10, 5, 60, 1, 0, HPT("2d8+5"), | |
179 "2d8"}}, | |
180 {"gas spore", | |
181 0, TRUE, TRUE, 'a', "0", | |
182 {ISMEAN, CANEXPLODE, CANINFEST, ISFLY}, | |
183 "", 0, | |
184 5, | |
185 {10, 10, 8, 30, 2, 5, HPT("2d8"), | |
186 "1d2/1d4"}}, | |
187 {"giant tick", | |
188 0, TRUE, TRUE, 't', "0", | |
189 {ISMEAN, CANPOISON, CANROT}, | |
190 "", 0, | |
191 1, | |
192 {10, 10, 7, 70, 2, 4, HPT("1d8"), | |
193 "1d4"}}, | |
194 {"lemure", | |
195 0, TRUE, TRUE, 'L', "5-10", | |
196 {ISMEAN, ISREGEN, CANSUMMON, NOBOLT}, | |
197 "bat", 5, | |
198 6, | |
199 {12, 12, 5, 45, 4, 2, HPT("3d8"), | |
200 "1d6"}}, | |
201 {"zoo spore", | |
202 0, TRUE, TRUE, 'z', "8-20", | |
203 {ISMEAN, CANDISEASE, CANEXPLODE, TURNABLE, ISUNDEAD, ISFLY}, | |
204 "", 0, | |
205 10, | |
206 {20, 20, 4, 80, 2, 0, HPT("2d8+6"), | |
207 "1d8"}}, | |
208 {"bugbear", | |
209 30, TRUE, TRUE, 'b', "5-12", | |
210 {ISMEAN, CANSHOOT, CANSURPRISE, ISGREED}, | |
211 "", 0, | |
212 3, | |
213 {16, 10, 6, 60, 2, 5, HPT("3d8+4"), | |
214 "2d4"}}, | |
215 {"gray ooze", | |
216 0, TRUE, TRUE, 'o', "1", | |
217 {ISMEAN, CANRUST, NOCOLD, NOFIRE, NOSTAB}, | |
218 "", 0, | |
219 1, | |
220 {10, 10, 9, 100, 2, 8, HPT("1d8"), | |
221 "1d8"}}, | |
222 {"lonchu", | |
223 50, TRUE, TRUE, 'l', "6", | |
224 {ISMEAN, CANTELEPORT, CARRYARMOR, NOBOLT}, | |
225 "", 0, | |
226 3, | |
227 {10, 10, 6, 120, 2, 3, HPT("3d8+4"), | |
228 "2d6"}}, | |
229 {"wererat", | |
230 50, TRUE, TRUE, 'r', "10-15", | |
231 {ISMEAN, CARRYPOTION, CANSUMMON, CANDRAW, NOSTAB}, | |
232 "giant rat", 3, | |
233 5, | |
234 {10, 10, 5, 70, 5, 4, HPT("3d8+6"), | |
235 "2d8"}}, | |
236 {"ghoul", | |
237 50, TRUE, TRUE, 'g', "12-15", | |
238 {ISMEAN, CARRYFOOD, CANPARALYZE, ISUNDEAD, TURNABLE, CANDRAW, | |
239 AREMANY}, | |
240 "", 0, | |
241 7, | |
242 {12, 12, 5, 75, 2, 2, HPT("4d4"), | |
243 "1d4/1d6"}}, | |
244 {"leprechaun", | |
245 75, TRUE, FALSE, 'l', "10-16", | |
246 {CARRYGOLD, STEALGOLD, ISGREED, CARRYSCROLL, CARRYPOTION, | |
247 NOSTAB}, | |
248 "", 0, | |
249 9, | |
250 {15, 15, 3, 100, 7, 0, HPT("3d8"), | |
251 "1d1/3d6"}}, | |
252 {"junk monster", | |
253 100, TRUE, TRUE, 'j', "10-14", | |
254 {ISMEAN, CANSTINK, CANSMELL, ISSCAVENGE, ISGREED, CANDRAW, | |
255 ISREGEN, CANSHOOT, CARRYSTICK}, | |
256 "", 0, | |
257 7, | |
258 {12, 12, 5, 100, 2, 4, HPT("3d8+3"), | |
259 "1d6/2d8"}}, | |
260 {"jacaranda", | |
261 40, TRUE, TRUE, 'j', "8-18", | |
262 {ISMEAN, ISUNIQUE, ISREGEN, CANSUMMON, NOCOLD, NOFIRE, NOBOLT, | |
263 CANDANCE, CARRYGOLD, CANTELEPORT, CANBLIND, ISSHADOW, NOSTAB, | |
264 ISGREED, STEALGOLD, CARRYFOOD}, | |
265 "zombie", 4, | |
266 20, | |
267 {18, 18, 2, 40000, 10, -15, HPT("6d8+40"), | |
268 "1d6/2d6/3d6"}}, | |
269 {"gnoll", | |
270 0, TRUE, TRUE, 'n', "10-16", | |
271 {ISMEAN, CANINFEST, CANROT, ISREGEN, TURNABLE}, | |
272 "", 0, | |
273 4, | |
274 {10, 10, 6, 140, 2, 4, HPT("6d8"), | |
275 "2d8"}}, | |
276 {"fire toad", | |
277 0, TRUE, TRUE, 'f', "5-7", | |
278 {ISMEAN, CANBFIRE, NOFIRE, NOBOLT}, | |
279 "", 0, | |
280 4, | |
281 {10, 10, 6, 200, 2, 5, HPT("5d8"), | |
282 "1d8"}}, | |
283 {"gelatinous cube", | |
284 50, TRUE, TRUE, 'c', "0", | |
285 {ISMEAN, CANPARALYZE, CARRYFOOD, NOCOLD}, | |
286 "", 0, | |
287 4, | |
288 {10, 10, 7, 160, 2, 1, HPT("4d8"), | |
289 "2d8"}}, | |
290 {"moon dog", | |
291 0, TRUE, TRUE, 'm', "10-12", | |
292 {ISMEAN, ISFLY, NOCOLD, NOFIRE, CANDRAW}, | |
293 "", 0, | |
294 6, | |
295 {12, 12, 4, 250, 2, 3, HPT("3d8+3"), | |
296 "2d10"}}, | |
297 {"violet fungi", | |
298 0, TRUE, TRUE, 'F', "0", | |
299 {ISMEAN, CANSHRIEK, CANSUMMON, CANHOLD, NOMOVE, CANROT}, | |
300 "violet fungi", 1, | |
301 5, | |
302 {10, 10, 5, 150, 9, 0, HPT("4d6+10"), | |
303 "1d8/2d8/3d8"}}, | |
304 {"ogre", | |
305 50, TRUE, TRUE, 'O', "7-12", | |
306 {ISMEAN, CARRYGOLD, CARRYDAGGER, NOBOLT}, | |
307 "", 0, | |
308 7, | |
309 {18, 10, 6, 170, 3, 3, HPT("4d8+8"), | |
310 "2d10"}}, | |
311 {"centaur", | |
312 50, TRUE, FALSE, 'C', "5-15", | |
313 {STEALGOLD, CARRYGOLD, CARRYRING, NOSLEEP, NOSTAB}, | |
314 "", 0, | |
315 9, | |
316 {10, 10, 4, 180, 2, 4, HPT("4d8+10"), | |
317 "1d8/2d6"}}, | |
318 {"nymph", | |
319 75, TRUE, FALSE, 'N', "10-16", | |
320 {STEALMAGIC, CARRYSCROLL, CARRYPOTION, CARRYSTICK, NOSTAB, | |
321 CARRYFOOD, NOSLOW}, | |
322 "", 0, | |
323 8, | |
324 {16, 16, 3, 190, 5, 3, HPT("3d8+10"), | |
325 "1d1"}}, | |
326 {"blindheim", | |
327 0, TRUE, TRUE, 'b', "10", | |
328 {ISMEAN, CANBLIND, NOSLOW}, | |
329 "", 0, | |
330 5, | |
331 {8, 8, 5, 260, 3, 1, HPT("4d8+6"), | |
332 "2d10"}}, | |
333 {"blink dog", | |
334 0, TRUE, TRUE, 'B', "8-10", | |
335 {ISMEAN, CANBLINK, CANSEE, CANINFEST}, | |
336 "", 0, | |
337 9, | |
338 {10, 10, 6, 220, 3, 5, HPT("4d8+4"), |