1 /* SCCS Id: @(#)role.c 3.4 2003/01/08 */
2 /* Copyright (c) Stichting Mathematisch Centrum, Amsterdam, 1985-1999. */
3 /* NetHack may be freely redistributed. See license for details. */
8 /*** Table of all roles ***/
9 /* According to AD&D, HD for some classes (ex. Wizard) should be smaller
10 * (4-sided for wizards). But this is not AD&D, and using the AD&D
11 * rule here produces an unplayable character. Thus I have used a minimum
12 * of an 10-sided hit die for everything. Another AD&D change: wizards get
13 * a minimum strength of 4 since without one you can't teleport or cast
16 * As the wizard has been updated (wizard patch 5 jun '96) their HD can be
17 * brought closer into line with AD&D. This forces wizards to use magic more
18 * and distance themselves from their attackers. --LSZ
20 * With the introduction of races, some hit points and energy
21 * has been reallocated for each race. The values assigned
22 * to the roles has been reduced by the amount allocated to
25 * God names use a leading underscore to flag goddesses.
28 /* thanks to CK for pointing out some stat distribution bugs --Amy */
30 /* IMPORTANT!!! do_wear.c has code for an artifact that turns the player into a Binder by index number. If any new roles
31 * are inserted above the Binder, please update the index number accordingly! --Amy */
33 const struct Role roles
[] = {
41 {"Hazardous Materials Specialist", 0},
42 {"Laboratory Science PhD", 0},
44 "The Lord of the Pit", "Goldblight of the Flame", "Warpfire Hellspawn", /* Special */
45 "Aci", "Slime Pit", "Electric Power Station",
46 PM_ACID_MAGE
, NON_PM
, PM_UNDEAD_ACID_MAGE
, NON_PM
, PM_ACID_HOUND_PUP
,
47 PM_ACIDSNORT
, PM_ATTENDANT
, PM_LIGHTNINGROD
, PM_DYNAMO
,
48 PM_DROW_MATRON
, PM_TITAN
, S_ANGEL
, S_GIANT
,
51 MH_HUMAN
|MH_ELF
|MH_DWARF
|MH_GNOME
|MH_HOBBIT
|MH_VAMPIRE
|MH_WERE
|MH_ORC
|
52 ROLE_MALE
|ROLE_FEMALE
|ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
53 /* Str Int Wis Dex Con Cha */ /* Direct copy from Wizard */
54 /*{ 7, 10, 7, 7, 7, 7 },*/
56 { 10, 30, 10, 20, 20, 10 },
57 /* new limit values for the six attributes by Amy */
58 { 16, 20, 16, 16, 15, 14 },
59 /* Init Lower Higher */
60 { 15, 0, 0, 8, 1, 0 }, /* Hit points */
61 { 15, 3, 0, 2, 0, 3 },12, /* Energy */
63 2, 10, A_INT
, SPE_ACID_STREAM
, -4, 100 /* From old role.c */
66 { {"Activistor", 0}, {
70 {"Worker on strike", 0},
72 {"Rebellious Individual", 0},
73 {"Involved Activist", 0},
74 {"Renegade Fighter", 0},
76 "Anti-War Movement", "Global Freedom Council", "Human Rights Progression", /* buzzwords used by activists */
77 "Act", "Activist Home", "Ghostly Halls",
78 PM_ACTIVISTOR
, NON_PM
, PM_UNDEAD_ACTIVISTOR
, NON_PM
, PM_ACTIVISTOR
,
79 PM_ACTIVIST_SPEAKER
, PM_ATTENDANT
, PM_IMELDA_S_GHOST
, PM_GHOST_OF_HEEL
,
80 PM_ANIMATED_WEDGE_SANDAL
, PM_ANIMATED_SEXY_LEATHER_PUMP
, S_GOLEM
, S_NEMESE
,
82 MH_HUMAN
|MH_ELF
|MH_DWARF
|MH_GNOME
|MH_HOBBIT
|MH_VAMPIRE
|MH_WERE
|MH_ORC
|
83 ROLE_MALE
|ROLE_FEMALE
| ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
84 /* Str Int Wis Dex Con Cha */
85 /*{ 13, 13, 13, 9, 13, 7 },*/
87 { 10, 25, 25, 10, 10, 20 },
88 /* new limit values for the six attributes by Amy */
89 { 18, 14, 14, 18, 16, 20 },
90 /* Init Lower Higher */
91 { 12, 0, 0, 3, 1, 0 }, /* Hit points */
92 { 20, 0, 0, 4, 0, 4 },12, /* Energy */
93 10, 9, 2, 1, 10, A_INT
, SPE_TELEPORT_AWAY
, -4, 50
97 { "Club Carrier", 0 },
98 { "Bola Thrower", 0 },
99 { "Range Applier", 0 },
100 { "Melee Detonator", 0 },
102 { "Sounding Clasher", 0 },
103 { "Two-Square Melee Master", 0 },
105 { "World Whacker", 0 } },
106 "_Sulis", "_Sequana", "_Damona", /* celtic */
107 "Akl", "Marital Arts Dodo", "Ghosterville",
108 PM_AKLYST
, NON_PM
, PM_UNDEAD_AKLYST
, NON_PM
, NON_PM
,
109 PM_THREE_POINT_SIX_DEV
, PM_APPRENTICE
, PM_GRIMACE_CASPAR
, PM_DOUR_LAUGHING_GHOST
,
110 PM_KRUSHE
, PM_TACKLE_JELLY
, S_GHOST
, S_JELLY
,
111 ART_NOBREAK
, /* aklys, +10 damage and +20 to-hit; instead of breaking, it loses enchantment */
112 MH_HUMAN
|MH_ELF
|MH_DWARF
|MH_GNOME
|MH_HOBBIT
|MH_VAMPIRE
|MH_WERE
|MH_ORC
|
113 ROLE_MALE
|ROLE_FEMALE
|ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
114 /* Str Int Wis Dex Con Cha */
115 { 3, 3, 3, 3, 3, 3 },
116 { 25, 10, 10, 25, 20, 10 },
117 /* new limit values for the six attributes by Amy */
118 { STR19(19), 17, 17, 19, 18, 16 },
119 /* Init Lower Higher */
120 { 12, 0, 0, 5, 4, 0 }, /* Hit points */
121 { 3, 3, 0, 3, 0, 3 },15, /* Energy */
123 6, 12, A_INT
, SPE_MAGICTORCH
, -4, 30
126 { { "Alltecher", 0 }, {
127 { "Technology Researcher", 0 },
128 { "Resourceful Explorer", 0 },
129 { "Versatile Allrounder", 0 },
130 { "Many-Sided Student", 0 },
131 { "Multifunction Organism", 0 },
132 { "Eclectic Expert", 0 },
133 { "Super-Generalist", 0 },
134 { "Special Technique Master", 0 },
135 { "Technical Chameleon", 0 } },
136 "Earnest Dejesus", "_Madelene Thursday Lo", "Gray Hayes", /* CDDA */
137 "All", "Techonology Park", "Climate HQ",
138 PM_ALLTECHER
, NON_PM
, PM_UNDEAD_ALLTECHER
, NON_PM
, NON_PM
,
139 PM_VAIN_PRINCIPAL
, PM_HUNTER
, PM_SASSY_LUISA
, PM_NEW_FARMER_HUSSY
,
140 PM_SAUCY_FEMMY
, PM_SASSY_LASSY
, S_RUSTMONST
, S_FLYFISH
,
141 ART_CORONA_OF_THE_ELEMENT
, /* ring of technicality */
142 MH_HUMAN
|MH_ELF
|MH_DWARF
|MH_GNOME
|MH_HOBBIT
|MH_VAMPIRE
|MH_WERE
|MH_ORC
|
143 ROLE_MALE
|ROLE_FEMALE
|ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
144 /* Str Int Wis Dex Con Cha */
145 { 3, 3, 3, 3, 3, 3 },
146 { 18, 16, 16, 16, 18, 16 },
147 /* new limit values for the six attributes by Amy */
148 { 6, 6, 6, 6, 6, 6 },
149 /* Init Lower Higher */
150 { 14, 0, 0, 0, 0, 0 }, /* Hit points */
151 { 2, 0, 0, 0, 0, 0 },10, /* Energy */
153 5, 14, A_INT
, SPE_TECH_BOOST
, -4, 25
157 {"Cantrip Caster", 0},
158 {"Stunted Magician", 0},
161 {"Mage Dominion", 0},
166 "_Eilistraee", "_Kiaransali", "_Lolth", /* Elven */
168 "Alt", "Summerset Isle", "Necrotic Caverns",
169 PM_ALTMER
, NON_PM
, PM_UNDEAD_ALTMER
, NON_PM
, PM_GOLD_GOLEM
,
170 PM_SINDERION
, PM_HIGHEST_ELF
, PM_MANNIMARCO
, PM_WORM_ANCHORITE
,
171 PM_NECROMANCER
, PM_DARK_SAGE
, S_HUMAN
, S_HUMAN
,
174 MH_HUMAN
|MH_ELF
|MH_DWARF
|MH_GNOME
|MH_HOBBIT
|MH_VAMPIRE
|MH_WERE
|MH_ORC
|
175 ROLE_MALE
|ROLE_FEMALE
| ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
176 /* Str Int Wis Dex Con Cha */
177 /*{ 13, 13, 13, 9, 13, 7 },*/
178 { 3, 3, 3, 3, 3, 3 },
179 { 10, 30, 30, 10, 10, 10 },
180 /* new limit values for the six attributes by Amy */
181 { 12, 25, 18, 15, 14, 16 },
182 /* Init Lower Higher */
183 { 10, 0, 0, 4, 2, 0 }, /* Hit points */
184 { 40, 0, 0, 12, 0, 15 },12, /* Energy */
185 10, 9, 2, 1, 10, A_INT
, SPE_FINGER_OF_DEATH
, -4, 250
190 {"Chosen for Reaping", 0},
193 {"Career Tribute", 0},
194 {"Master Hunter", 0},
195 {"Hunger Games Winner", 0},
197 {"Right Hand of Cato", 0} },
198 "_Suzanne Collins", "_Effie Trinket", "President Snow", /* hunger games */
199 "Ama", "Cornucopia Fresh Forest", "Hunger Games Battleground",
200 PM_AMAZON
, NON_PM
, PM_UNDEAD_AMAZON
, NON_PM
, PM_VALKYRIE
,
201 PM_CATO
, PM_HUNTER
, PM_PEETA
, PM_MAD_BUCKING_FASTARD
,
202 PM_TRIBUTE
, PM_TRACKER_JACKER
, S_HUMAN
, S_ANT
,
205 MH_HUMAN
|MH_ELF
|MH_DWARF
|MH_GNOME
|MH_HOBBIT
|MH_VAMPIRE
|MH_WERE
|MH_ORC
| ROLE_MALE
|ROLE_FEMALE
| ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
206 /* Str Int Wis Dex Con Cha */
207 /*{ 10, 8, 7, 10, 17, 6 },*/
208 { 3, 3, 3, 3, 3, 3 },
209 { 20, 15, 8, 25, 14, 18 },
210 /* new limit values for the six attributes by Amy */
211 { 18, 16, 15, 25, 17, 22 },
212 /* Init Lower Higher */
213 { 15, 0, 0, 5, 4, 0 }, /* Hit points */
214 { 10, 0, 0, 2, 0, 3 },11, /* Energy */
215 10, 10, 0, 0, 8, A_INT
, SPE_ENTRAPPING
, -4, 40
217 { {"Anachronist", 0}, {
223 {"Chrono Commandant", 0},
224 {"Anachrononononaut",0},
226 {"Hope of the Future", 0} },
227 0, 0, 0, /* chosen randomly from among the other roles */
228 "Ana", "the Last Redoubt", "Ground Zero",
229 PM_ANACHRONIST
, NON_PM
, PM_UNDEAD_ANACHRONIST
, NON_PM
, PM_JEDI
,
230 PM_SARA__THE_LAST_ORACLE
, PM_TROOPER
, PM_ELDER_BRAIN
, PM_LOWER_BRAIN
,
231 PM_DOPPELGANGER
, PM_MIND_FLAYER
, S_TRAPPER
, S_UMBER
,
233 MH_HUMAN
|MH_ELF
|MH_DWARF
|MH_GNOME
|MH_HOBBIT
|MH_VAMPIRE
|MH_WERE
|MH_ORC
| ROLE_MALE
|ROLE_FEMALE
| ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
234 /* Str Int Wis Dex Con Cha */
235 /* { 10, 10, 7, 10, 7, 7 }, */
236 { 3, 3, 3, 3, 3, 3 },
237 { 17, 18, 17, 13, 19, 16 },
238 /* new limit values for the six attributes by Amy */
239 { STR18(100), 14, 14, 18, 20, 12 },
240 /* Init Lower Higher */
241 { 11, 0, 0, 8, 1, 0 }, /* Hit points */
242 { 2, 0, 0, 2, 0, 2 },14, /* Energy */
243 10, 5, 0, 2, 10, A_INT
, SPE_SLOW_MONSTER
, -9, 20
246 { {"Anachronounbinder", 0}, {
248 {"Anachrononono-nononono", 0},
249 {"Vestige Vanquisher", 0},
250 {"Spirit Killer", 0},
255 {"Keeper of the Gate", 0} },
256 "Tariru", "FIQ", "Demo", /* dnethack players */
257 "Acu", "The Elder Pool", "The Far Reach",
258 PM_ANACHRONOUNBINDER
, NON_PM
, PM_UNDEAD_ANACHRONOUNBINDER
, NON_PM
, PM_BRAIN_GOLEM
,
259 PM_MASTER_ULITHARID
, PM_VERY_MINDLESS_THRALL
, /*PM_MENZOBERRANZAN*/PM_DNETHACK_MASTER_DEV
, PM_DNETHACK_PLAYER
,
260 PM_DOPPELGANGER
, PM_MIND_FLAYER
, S_TRAPPER
, S_UMBER
,
261 ART_ELDER_CEREBRAL_FLUID
,
262 MH_HUMAN
|MH_ELF
|MH_DWARF
|MH_GNOME
|MH_HOBBIT
|MH_VAMPIRE
|MH_WERE
|MH_ORC
| ROLE_MALE
|ROLE_FEMALE
| ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
263 /* Str Int Wis Dex Con Cha */
264 { 3, 3, 3, 3, 3, 3 },
265 { 17, 18, 17, 13, 19, 16 },
266 /* new limit values for the six attributes by Amy */
267 { STR18(100), 18, 18, 18, 18, 18 },
268 /* Init Lower Higher */
269 { 14, 0, 0, 4, 2, 0 }, /* Hit points */
270 { 4, 0, 0, 2, 0, 3 },12, /* Energy */
271 10, 5, 0, 2, 10, A_INT
, SPE_DETECT_MONSTERS
, -9, 20
274 { {"Archeologist", 0}, {
284 "Quetzalcoatl", "Camaxtli", "Huhetotl", /* Central American */
285 "Arc", "the College of Archeology", "the Tomb of the Toltec Kings",
286 PM_ARCHEOLOGIST
, NON_PM
, PM_UNDEAD_ARCHEOLOGIST
, NON_PM
, NON_PM
,
287 PM_LORD_CARNARVON
, PM_STUDENT
, PM_MINION_OF_HUHETOTL
, PM_MINION_OF_QUETZALCOATL
,
288 NON_PM
, PM_HUMAN_MUMMY
, S_SNAKE
, S_MUMMY
,
290 ART_WEREBANE
, ART_GRAYSWANDIR
,
292 ART_ORB_OF_DETECTION
,
293 MH_HUMAN
|MH_ELF
|MH_DWARF
|MH_GNOME
|MH_HOBBIT
|MH_VAMPIRE
|MH_WERE
|MH_ORC
|
294 ROLE_MALE
|ROLE_FEMALE
| ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
295 /* Str Int Wis Dex Con Cha */
296 /* { 7, 10, 10, 7, 7, 7 },*/
297 { 3, 3, 3, 3, 3, 3 },
298 { 20, 20, 20, 10, 20, 10 }, /* This must add up to 100 or it won't work right (attrib.c uses this code). Again, thanks to CK for pointing it out. --Amy */
299 /* new limit values for the six attributes by Amy */
300 { 18, 16, 17, 20, 16, 18 },
301 /* Init Lower Higher */
302 { 16, 0, 0, 8, 1, 0 }, /* Hit points */
303 { 10, 0, 0, 1, 0, 1 },14, /* Energy */
304 10, 5, 0, 2, 10, A_INT
, SPE_MAGIC_MAPPING
, -4, 40
308 {"Paint Splotcher", 0},
310 {"Color Cribber", 0},
312 {"Picture Designer", 0},
313 {"Successful Artist", 0},
315 {"Canvas Enchanter", 0},
316 {"Creator of Unique Paintings", 0}},
317 "Leonardo", "Picasso", "Dali", /* famous artists */
318 "Art", "Painting Studio", "Vandalized Plains",
319 PM_ARTIST
, NON_PM
, PM_UNDEAD_ARTIST
, NON_PM
, NON_PM
,
320 PM_PAINTMASTER
, PM_GUIDE
, PM_BRAGGING_VANDAL
, PM_FUCKED_UP_PERSON
,
321 PM_CRITIC
, PM_VANDAL
, S_HUMAN
, S_HUMAN
,
324 MH_HUMAN
|MH_ELF
|MH_DWARF
|MH_GNOME
|MH_HOBBIT
|MH_VAMPIRE
|MH_WERE
|MH_ORC
| ROLE_MALE
|ROLE_FEMALE
| ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
325 /* Str Int Wis Dex Con Cha */
326 /*{ 7, 10, 6, 7, 7, 10 },*/
327 { 3, 3, 3, 3, 3, 3 },
328 { 12, 20, 20, 20, 12, 16 },
329 /* new limit values for the six attributes by Amy */
330 { STR19(20), 15, 15, 20, 16, 19 },
331 /* Init Lower Higher */
332 { 16, 0, 0, 8, 0, 0 }, /* Hit points */
333 { 12, 0, 0, 1, 0, 1 },14, /* Energy */
334 0, 5, 1, 2, 10, A_INT
, SPE_INVISIBILITY
, -4, 70
339 {"Dark Brotherhood Initiate", 0},
342 {"Contract Killer", 0},
343 {"Silent Killer", 0},
344 {"Devious Cutthroat", 0},
345 {"Knife After Dark", 0},
347 {"Merciless Murderer", 0}},
348 "Ehud", "Ford", "Ivins", /* unknown origin */
349 "Ass", "the Assassins' Guild Hall", "the Thieves' Guild Hall",
350 PM_ASSASSIN
, NON_PM
, PM_UNDEAD_ASSASSIN
, NON_PM
, PM_HUMAN_THIEF
,
351 PM_MASTER_OF_ASSASSINS
, PM_THUG
, PM_MASTER_OF_THIEVES
, PM_MASTER_OF_DESASTER
, /* also tourist quest nemesis */
352 PM_SMIRKING_SNEAK_THIEF
, PM_ROGUE
, S_HUMAN
, S_HUMAN
,
355 MH_HUMAN
|MH_ELF
|MH_DWARF
|MH_GNOME
|MH_HOBBIT
|MH_VAMPIRE
|MH_WERE
|MH_ORC
| ROLE_MALE
|ROLE_FEMALE
|
356 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
357 /* Str Int Wis Dex Con Cha */
358 /*{ 7, 7, 7, 10, 7, 6 },*/
359 { 3, 3, 3, 3, 3, 3 },
360 { 30, 15, 5, 30, 15, 5 },
361 /* new limit values for the six attributes by Amy */
362 { STR18(50), 18, 14, 21, 16, 19 },
363 /* Init Lower Higher */
364 { 15, 0, 0, 8, 1, 0 }, /* Hit points */
365 { 3, 0, 0, 1, 0, 1 },11, /* Energy */
366 10, 8, 0, 1, 9, A_INT
, SPE_INVISIBILITY
, -4, 40
369 { {"Astronaut", 0}, {
370 {"Rocket Tester", 0},
371 {"Vostok Martyr", 0},
372 {"Deimos Stevedore", "Moon Walker"},
373 {"Leonov Engineer", 0},
374 {"Marauder Pilot", 0},
375 {"Von Braun Staff", 0},
376 {"LongShot Navigator", 0},
377 {"Tie Fighter Ace", 0},
378 {"Nostromo Survivor", 0} },
379 "Neil Armstrong", "_Sally Ride", "Yuri Gagarin", /* famous astronauts */
380 "Ast", "NAFA Headquarter", "Terrorist Underground",
381 PM_ASTRONAUT
, NON_PM
, PM_UNDEAD_ASTRONAUT
, NON_PM
, PM_UFO
,
382 PM_NAFA_BOSS
, PM_STARNOID
, PM_THE_MAN_IN_THE_MOON
, PM_DECIMATED_SPINNER
,
383 PM_NASTY_LIGHT
, PM_PSI_RAY
, S_LIGHT
, S_WORM_TAIL
,
385 ART_ROCKET_IMPULSE
, /* torso armor */
386 MH_HUMAN
|MH_ELF
|MH_DWARF
|MH_GNOME
|MH_HOBBIT
|MH_VAMPIRE
|MH_WERE
|MH_ORC
| ROLE_MALE
|ROLE_FEMALE
|
387 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
388 /* Str Int Wis Dex Con Cha */
389 /*{ 16, 7, 7, 15, 16, 6 },*/
390 { 3, 3, 3, 3, 3, 3 },
391 { 20, 14, 14, 12, 20, 20 },
392 /* new limit values for the six attributes by Amy */
393 { STR19(19), 19, 19, 20, 20, 19 },
394 /* Init Lower Higher */
395 { 19, 0, 0, 5, 4, 0 }, /* Hit points */
396 { 12, 0, 0, 3, 0, 2 }, 14, /* Energy */
397 10, 6, 0, 2, 10, A_INT
, SPE_TIME_STOP
, -4, 100
401 {"College Student", 0},
403 {"Fortune Teller", 0},
404 {"Seer Graduate", 0},
408 {"Psychic Visor", 0},
409 {"Hidden Depth Explorer", 0} },
410 "Dunlain", "Savos Aren", "_Hert the Vampire", /* Skyrim */
411 "Aug", "Icy Depths of Winterhold",
413 PM_AUGURER
, NON_PM
, PM_UNDEAD_AUGURER
, NON_PM
, PM_FLOATING_EYE
,
414 PM_UPPER_AUGURER
, PM_STUDENT
, PM_ESTORMO
, PM_ANCANO
,
415 PM_THALMOR
, PM_FAIRY_DRAGON
, S_DRAGON
, S_HUMAN
,
418 MH_HUMAN
|MH_ELF
|MH_DWARF
|MH_GNOME
|MH_HOBBIT
|MH_VAMPIRE
|MH_WERE
|MH_ORC
| ROLE_MALE
|ROLE_FEMALE
|
419 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
420 /* Str Int Wis Dex Con Cha */
421 /*{ 10, 7, 8, 8, 7, 7 },*/
422 { 3, 3, 3, 3, 3, 3 },
423 { 5, 30, 30, 5, 5, 25 },
424 /* new limit values for the six attributes by Amy */
425 { 10, 22, 25, 17, 13, 16 },
426 /* Init Lower Higher */
427 { 9, 0, 0, 0, 1, 0 }, /* Hit points */
428 { 18, 4, 0, 4, 0, 8 },10, /* Energy */
429 10, 8,-2, 2, 20, A_WIS
, SPE_PASSWALL
, -4, 200
432 { {"Barbarian", 0}, {
433 {"Plunderer", "Plunderess"},
440 {"Chieftain", "Chieftainess"},
441 {"Conqueror", "Conqueress"} },
442 "Mitra", "Crom", "Set", /* Hyborian */
443 "Bar", "the Camp of the Duali Tribe", "the Duali Oasis",
444 PM_BARBARIAN
, NON_PM
, PM_UNDEAD_BARBARIAN
, NON_PM
, NON_PM
,
445 PM_PELIAS
, PM_CHIEFTAIN
, PM_THOTH_AMON
, PM_THOTH_AMUN
,
446 PM_OGRE
, PM_TROLL
, S_OGRE
, S_TROLL
,
448 ART_CLEAVER
, ART_DEATHSWORD
,
450 ART_HEART_OF_AHRIMAN
,
451 MH_HUMAN
|MH_ELF
|MH_DWARF
|MH_GNOME
|MH_HOBBIT
|MH_VAMPIRE
|MH_WERE
|MH_ORC
| ROLE_MALE
|ROLE_FEMALE
|
452 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
453 /* Str Int Wis Dex Con Cha */
454 /*{ 16, 7, 7, 15, 16, 6 },*/
455 { 3, 3, 3, 3, 3, 3 },
456 { 30, 6, 7, 20, 30, 7 },
457 /* new limit values for the six attributes by Amy */
458 { STR19(22), 8, 8, 16, 20, 8 },
459 /* Init Lower Higher */
460 { 20, 0, 0,10, 2, 0 }, /* Hit points */
461 { 5, 0, 0, 1, 0, 1 },10, /* Energy */
462 10, 14, 0, 0, 8, A_INT
, SPE_HASTE_SELF
, -4, 15
473 {"Well-known Bard", 0},
474 {"Master Bard", 0} },
475 "Garl Glittergold", "Flandal Steelskin", "Urdlen",
476 "Brd", "the Conservatorium", "the Island of Anthemoessa",
477 PM_BARD
, NON_PM
, PM_UNDEAD_BARD
, NON_PM
, NON_PM
,
478 PM_PINDAR
, PM_RHYMER
, PM_AGLAOPE
, PM_SKYLLA
,
479 PM_SNAKE
, PM_WHITE_UNICORN
, S_SNAKE
, S_UNICORN
,
481 MH_HUMAN
|MH_ELF
|MH_DWARF
|MH_GNOME
|MH_HOBBIT
|MH_VAMPIRE
|MH_WERE
|MH_ORC
|
482 ROLE_MALE
|ROLE_FEMALE
|ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
483 /* Str Int Wis Dex Con Cha */
484 /*{ 7, 7, 7, 10, 6, 10 },*/
485 { 3, 3, 3, 3, 3, 3 },
486 { 10, 10, 15, 25, 10, 30 },
487 /* new limit values for the six attributes by Amy */
488 { 14, 18, 18, 18, 15, 22 },
489 /* Init Lower Higher */
490 { 11, 0, 0, 8, 1, 0 }, /* Hit points */
491 { 4, 3, 0, 1, 0, 2 },10, /* Energy */
492 10, 3,-3, 2, 9, A_INT
, SPE_SLEEP
, -4, 40
506 "Yaldabaoth", "the void", "_Sophia", /* Gnostic */
507 "Bin", "the lost library", "the Tower of Woe",
508 PM_BINDER
, NON_PM
, PM_UNDEAD_BINDER
, NON_PM
, NON_PM
,
509 PM_STRANGE_CORPSE
, NON_PM
, PM_ACERERAK
, PM_RECERARAK
,
510 PM_SKELETON
, PM_LICH
, S_HUMANOID
, S_LICH
,
512 MH_HUMAN
|MH_ELF
|MH_DWARF
|MH_GNOME
|MH_HOBBIT
|MH_VAMPIRE
|MH_WERE
|MH_ORC
| ROLE_MALE
|ROLE_FEMALE
|
513 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
514 /* Str Int Wis Dex Con Cha */
515 /*{ 6, 6, 6, 6, 6, 6 },*/
516 { 3, 3, 3, 3, 3, 3 },
517 { 16, 17, 17, 17, 16, 17 },
518 /* new limit values for the six attributes by Amy */
519 { STR18(100), 18, 18, 18, 18, 18 },
520 /* Init Lower Higher */
521 { 11, 0, 0, 10, 2, 0 }, /* Hit points */
522 { 5, 0, 1, 0, 1, 0 },15, /* Energy */
523 -5, 10, 5, 10, 25, A_INT
, SPE_SLEEP
, -14, 30
527 {"Leg-scratched Boy", "Leg-scratched Girl"},
528 {"Wounded Guy", "Wounded Gal"},
531 {"Red Lake Creator", 0},
533 {"Unlucky Individual", 0},
534 {"Diseased Sibling", 0},
535 {"Cursed King", "Cursed Queen"} },
536 "Glycocalyx", "Fibrinogen", "_Hemophilia", /* hereditary disease */
537 "Ble", "hemorrhagic hospital", "red-sprinkled battle area",
538 PM_BLEEDER
, NON_PM
, PM_UNDEAD_BLEEDER
, NON_PM
, PM_ANIMATED_WEDGE_SANDAL
,
539 PM_DISEASED_HEIR
, PM_UNFORTUNATE_VICTIM
, PM_BLOODY_BEAUTIES
, PM_SCRATCHING_MARIA
,
540 PM_BATTLE_GIRL
, PM_ANIMATED_SEXY_LEATHER_PUMP
, S_GOLEM
, S_HUMAN
,
542 MH_HUMAN
|MH_ELF
|MH_DWARF
|MH_GNOME
|MH_HOBBIT
|MH_VAMPIRE
|MH_WERE
|MH_ORC
| ROLE_MALE
|ROLE_FEMALE
|
543 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
544 /* Str Int Wis Dex Con Cha */
545 /*{ 6, 6, 6, 6, 6, 6 },*/
546 { 3, 3, 3, 3, 3, 3 },
547 { 12, 20, 24, 8, 10, 26 },
548 /* new limit values for the six attributes by Amy */
549 { STR18(100), 20, 20, 18, 20, 18 },
550 /* Init Lower Higher */
551 { 20, 0, 0, 16, 12, 0 }, /* Hit points */
552 { 8, 0, 4, 0, 4, 0 },15, /* Energy */
553 0, 10, 5, 10, 25, A_INT
, SPE_FULL_HEALING
, -4, 35
556 { {"Bloodseeker", 0}, {
557 {"Battlefield Newbie", 0},
558 {"Training Fighter", 0},
560 {"Battle Veteran", 0},
561 {"Honored Fighter", 0},
562 {"Cruel Warlord", 0},
566 "_Rhea Oro", "_Liebea Luna", "_Elenya Pure", /* taken from a fanfic */
567 "Blo", "Vlad's Second Tower", "deep in the depths of the dungeon",
568 PM_BLOODSEEKER
, NON_PM
, PM_UNDEAD_BLOODSEEKER
, NON_PM
, PM_VAMPIRE
,
569 PM_VLAD_THE_SKEWERER
, PM_CHIEFTAIN
, PM_MAILER_DAEMON
, PM_SPAM_MAIL_DEMON
,
570 PM_ANIMATED_ARMOR
, PM_PRINTER_DAEMON
, S_GOLEM
, S_DEMON
,
573 MH_HUMAN
|MH_ELF
|MH_DWARF
|MH_GNOME
|MH_HOBBIT
|MH_VAMPIRE
|MH_WERE
|MH_ORC
| ROLE_MALE
|ROLE_FEMALE
|
574 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
575 /* Str Int Wis Dex Con Cha */
576 /*{ 16, 7, 7, 15, 16, 6 },*/
577 { 3, 3, 3, 3, 3, 3 },
578 { 30, 6, 7, 20, 30, 7 },
579 /* new limit values for the six attributes by Amy */
580 { STR19(19), 12, 14, 18, 18, 12 },
581 /* Init Lower Higher */
582 { 20, 0, 0,10, 2, 0 }, /* Hit points */
583 { 5, 0, 0, 1, 0, 1 },10, /* Energy */
584 10, 14, 0, 0, 8, A_INT
, SPE_DRAIN_LIFE
, -4, 20
587 {"Treehut Dweller", 0},
588 {"Flora Watcher", 0},
590 {"Leafcloth Wearer", 0},
592 {"Jungle Hunter", 0},
593 {"Guerilla Bowman", 0},
595 {"Master Hunter", 0} },
596 "Eddergud", "Vhaeraun", "the black web", /* Elven */
598 "Bos", "Valenwood", "Fiery Pits of Despair",
599 PM_BOSMER
, NON_PM
, PM_UNDEAD_BOSMER
, NON_PM
, PM_DINGO_PUPPY
,
600 PM_GLARTHIR
, PM_HIGHEST_ELF
, PM_ELSE_GOD_HATER
, PM_MYTHICAL_DAWN_AGENT
,
601 PM_CHASME
, PM_FIRE_DEMON
, S_DEMON
, S_DEMON
,
604 MH_HUMAN
|MH_ELF
|MH_DWARF
|MH_GNOME
|MH_HOBBIT
|MH_VAMPIRE
|MH_WERE
|MH_ORC
|
605 ROLE_MALE
|ROLE_FEMALE
| ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
606 /* Str Int Wis Dex Con Cha */
607 /*{ 13, 13, 13, 9, 13, 7 },*/
608 { 3, 3, 3, 3, 3, 3 },
609 { 10, 15, 15, 30, 10, 20 },
610 /* new limit values for the six attributes by Amy */
611 { 18, 19, 20, 24, 13, 20 },
612 /* Init Lower Higher */
613 { 18, 0, 0, 6, 1, 0 }, /* Hit points */
614 { 8, 0, 0, 2, 0, 2 },12, /* Energy */
615 10, 9, 2, 1, 10, A_INT
, SPE_INVISIBILITY
, -4, 40
620 {"Small-time Bully", 0},
621 {"Little Mobber", 0},
624 {"Leather-clad Thief", 0},
625 {"Mean Mobbing Bully", 0},
626 {"Violent Bully", 0},
627 {"Weapon Toting Bully", 0}},
628 "_Everella Shrine", "Butch DeLoria", "Draco Malfoy", /* popular bullies */
629 "Bul", "your classroom", "greaseball's home",
630 PM_BULLY
, NON_PM
, PM_UNDEAD_BULLY
, NON_PM
, PM_CLEFAIRY
,
631 PM_PRINCIPAL_CLARK
, PM_THUG
, PM_JOE_THE_GREASER
, PM_WALLY_WITH_THE_BROLLY
,
632 PM_LECTURER
, PM_UNDEAD_OFFICER
, S_HUMAN
, S_HUMAN
,
633 ART_SHARPENED_TOOTHPICK
,
634 MH_HUMAN
|MH_ELF
|MH_DWARF
|MH_GNOME
|MH_HOBBIT
|MH_VAMPIRE
|MH_WERE
|MH_ORC
|
635 ROLE_MALE
|ROLE_FEMALE
|ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
636 /* Str Int Wis Dex Con Cha */
637 /*{ 10, 7, 7, 7, 13, 6 },*/
638 { 3, 3, 3, 3, 3, 3 },
639 { 30, 5, 15, 15, 30, 5 },
640 /* new limit values for the six attributes by Amy */
641 { STR18(100), 12, 10, 19, 18, 18 },
642 /* Init Lower Higher */
643 { 10, 0, 0, 5, 0, 0 }, /* Hit points */
644 { 1, 0, 0, 1, 0, 1 },10, /* Energy */
645 -10, 5, 0, 2, 10, A_INT
, SPE_FINGER
, -4, 30
648 { {"Butt Lover", 0}, {
649 {"Stroking Hands", 0},
651 {"Farting Gas Inhaler", 0},
652 {"Squeaking Noise Enjoyer", 0},
654 {"Graceful Body Admirer", 0},
655 {"Blissful Air Current", 0},
656 {"Sexiness Expert", 0},
657 {"Master Softhand", 0} },
658 "_Eveline", "_Elena", "_Marlen",
659 "But", "Farting Gas Chamber", "Stupid Law Factory",
660 PM_BUTT_LOVER
, NON_PM
, PM_UNDEAD_BUTT_LOVER
, NON_PM
, PM_JESSICA
,
661 PM_BEN_ARGIMUNT
, PM_MAIDEN
, PM_CATCALL_SELINA
, PM_ORGASMIC_BITCH
,
662 PM_FARTING_WOMAN
, PM_PRETTY_ASIAN_WOMAN
, S_HUMAN
, S_HUMAN
,
664 ART_GROPESTROKER
, /* gloves */
665 MH_HUMAN
|MH_ELF
|MH_DWARF
|MH_GNOME
|MH_HOBBIT
|MH_VAMPIRE
|MH_WERE
|MH_ORC
|
666 ROLE_MALE
|ROLE_FEMALE
|ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
667 /* Str Int Wis Dex Con Cha */ /* Direct copy from Wizard */
668 /*{ 7, 10, 7, 7, 7, 7 },*/
669 { 3, 3, 3, 3, 3, 3 },
670 { 20, 10, 20, 30, 10, 10 },
671 /* new limit values for the six attributes by Amy */
672 { 18, 12, 15, 20, 14, 12 },
673 /* Init Lower Higher */
674 { 10, 0, 0, 2, 3, 0 }, /* Hit points */
675 { 5, 1, 0, 1, 0, 0 }, 10, /* Energy */
677 4, 6, A_INT
, SPE_STINKING_CLOUD
, -4, 30 /* From old role.c */
680 { {"Camperstriker", 0}, {
682 {"Wallhack Exploiter", 0},
684 {"Asshole Player", 0},
687 {"Server Hacker", 0},
688 {"Godmode Cheater", 0},
689 {"Instawin Scriptkiddy", 0} },
690 "_the Bitches", "_the Hell Brides", "_the Sluts with Syphilis", /* taken from a fanfic --Amy */
691 "Cam", "Tiny Hamlet", "Inside Part",
692 PM_CAMPERSTRIKER
, NON_PM
, PM_UNDEAD_CAMPERSTRIKER
, NON_PM
, NON_PM
,
693 PM_MARC
, PM_ATTENDANT
, PM_ARABELLA
, PM_TUFTED_ASIAN_GIRL
,
694 PM_SMART_TRAPPER
, PM_TRAPPER_KING
, S_HUMAN
, S_HUMAN
,
696 MH_HUMAN
|MH_ELF
|MH_DWARF
|MH_GNOME
|MH_HOBBIT
|MH_VAMPIRE
|MH_WERE
|MH_ORC
| ROLE_MALE
|ROLE_FEMALE
| ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
697 /* Str Int Wis Dex Con Cha */
698 { 3, 3, 3, 3, 3, 3 },
699 { 17, 17, 16, 17, 17, 16 },
700 /* new limit values for the six attributes by Amy */
701 { STR18(100), 18, 18, 18, 18, 18 },
702 /* Init Lower Higher */
703 { 14, 0, 0, 4, 1, 0 }, /* Hit points */
704 { 7, 2, 0, 1, 0, 1 },10, /* Energy */
705 0, 12,-2, 0, 10, A_INT
, SPE_REMOVE_CURSE
, -4, 100
708 { { "Cartomancer", 0 }, {
714 { "Deck Stacker", 0 },
715 { "Card Collector", 0 },
716 { "Deck Stacker", 0 },
717 { "King of Games", "Queen of Games" } },
718 "Johnny", "Spike", "Timmy", /* Card player archetypes */
719 "Car", "the Card Training School", "the Great Card Arena",
720 PM_CARTOMANCER
, NON_PM
, PM_UNDEAD_CARTOMANCER
, NON_PM
, PM_LITTLE_DOG
,
721 PM_LORD_OF_THE_CARDS
, PM_STUDENT
, PM_DAL_ZETHIRE
, PM_MTG_OVERLORD
,
722 PM_COBRA
, PM_GUARDIAN_NAGA
, S_SNAKE
, S_NAGA
,
724 ART_HOLOGRAPHIC_VOID_LILY
,
725 MH_HUMAN
|MH_ELF
|MH_DWARF
|MH_GNOME
|MH_HOBBIT
|MH_VAMPIRE
|MH_WERE
|MH_ORC
|
726 ROLE_MALE
|ROLE_FEMALE
|ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
727 /* Str Int Wis Dex Con Cha */
728 { 3, 3, 3, 3, 3, 3 },
729 { 10, 30, 10, 20, 20, 10 },
730 /* new limit values for the six attributes by Amy */
731 { 18, 20, 18, 18, 16, 18 },
732 /* Init Lower Higher */
733 { 15, 0, 0, 8, 1, 0 }, /* Hit points */
734 { 15, 3, 0, 2, 0, 3 },12, /* Energy */
736 3, 10, A_INT
, SPE_CREATE_MONSTER
, -4, 50
739 { {"Caveman", "Cavewoman"}, {
749 "Anu", "_Ishtar", "Anshar", /* Babylonian */
750 "Cav", "the Caves of the Ancestors", "the Dragon's Lair",
751 PM_CAVEMAN
, PM_CAVEWOMAN
, PM_UNDEAD_CAVEMAN
, PM_UNDEAD_CAVEWOMAN
, PM_LITTLE_DOG
,
752 PM_SHAMAN_KARNOV
, PM_NEANDERTHAL
, PM_CHROMATIC_DRAGON
, PM_OCTARINE_DRAGON
,
753 PM_BUGBEAR
, PM_HILL_GIANT
, S_HUMANOID
, S_GIANT
,
755 ART_GIANTKILLER
, ART_SKULLCRUSHER
,
757 ART_SCEPTRE_OF_MIGHT
,
758 MH_HUMAN
|MH_ELF
|MH_DWARF
|MH_GNOME
|MH_HOBBIT
|MH_VAMPIRE
|MH_WERE
|MH_ORC
| ROLE_MALE
|ROLE_FEMALE
|
759 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
760 /* Str Int Wis Dex Con Cha */
761 /*{ 10, 7, 7, 7, 8, 6 },*/
762 { 3, 3, 3, 3, 3, 3 },
763 { 30, 6, 7, 20, 30, 7 },
764 /* new limit values for the six attributes by Amy */
765 { STR19(20), 8, 10, 17, 21, 6 },
766 /* Init Lower Higher */
767 { 19, 0, 0, 8, 2, 0 }, /* Hit points */
768 { 3, 0, 0, 1, 0, 1 },10, /* Energy */
769 0, 12, 0, 1, 8, A_INT
, SPE_DIG
, -4, 20
772 { {"Cellar Child", 0}, {
773 {"Isolated Modder", 0},
774 {"Autistic Programmer", 0},
775 {"Whiny Crybaby", 0},
776 {"Balance Analphabet", 0},
777 {"Dumplog Scanner", 0},
780 {"Repository Deleter", 0},
781 {"Self-Appointed Coding God", 0} },
782 "_Your Magical Roommate", "_Your Annoying Sister", "_Your Insufferable Mother-In-Law", /* special */
783 "Cel", "Lightless Crib", "Agoraphobia Avenue",
784 PM_CELLAR_CHILD
, NON_PM
, PM_UNDEAD_CELLAR_CHILD
, NON_PM
, PM_MONKEY
,
785 PM_KRIS_TIAN
, PM_ATTENDANT
, PM_GRANDMASTER_SVEN
, PM_WORLD_PWNZOR
,
786 PM_VOLCANO_GIANT
, PM_ALGROTH
, S_GIANT
, S_TROLL
,
788 ART_PEDIATRIC_GAWKING_GANGS
,
789 MH_HUMAN
|MH_ELF
|MH_DWARF
|MH_GNOME
|MH_HOBBIT
|MH_VAMPIRE
|MH_WERE
|MH_ORC
| ROLE_MALE
|ROLE_FEMALE
|
790 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
791 /* Str Int Wis Dex Con Cha */
792 /*{ 16, 7, 7, 15, 16, 6 },*/
793 { 3, 3, 3, 3, 3, 3 },
794 { 5, 5, 5, 75, 5, 5 },
795 /* new limit values for the six attributes by Amy */
796 { 12, 10, 15, 14, 12, 4 },
797 /* Init Lower Higher */
798 { 8, 0, 0, 1, 1, 0 }, /* Hit points */
799 { 12, 0, 0, 5, 0, 4 }, 9, /* Energy */
800 -20, 0, -6, 10, 20, A_INT
, SPE_TELEPORT_AWAY
, -4, 200
803 { {"Chaos Sorceror", 0}, {
804 {"Chaotic Dweller", 0},
805 {"Enemy of Order", 0},
806 {"Madman", "Madwoman"},
807 {"Vicious Diceroller", 0},
808 {"Russian Roulette Player", 0},
809 {"Spell Randomizer", 0},
810 {"Effect Warper", 0},
811 {"Cool Calculator", 0},
812 {"Master of Entropy", 0} },
813 "_Arle Nadja", "_Celine Jules", "_Miki Onimaru", /* anime */
814 "Cha", "Motherfucker's Den", "Robber's Crib",
815 PM_CHAOS_SORCEROR
, NON_PM
, PM_UNDEAD_CHAOS_SORCEROR
, NON_PM
, PM_CHAOS_POLYMORPHER
,
816 PM_H__THE_MOTHERFUCKER
, PM_ATTENDANT
, PM_CRISTI_THE_ROBBER
, PM_SIGMUND_FROM_DCSS
,
817 PM_CHANGING_LASER
, PM_RNG_LASER
, S_LIGHT
, S_EYE
,
818 ART_BLADE_OF_GOTHMOG
,
819 MH_HUMAN
|MH_ELF
|MH_DWARF
|MH_GNOME
|MH_HOBBIT
|MH_VAMPIRE
|MH_WERE
|MH_ORC
|
820 ROLE_MALE
|ROLE_FEMALE
|ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
821 /* Str Int Wis Dex Con Cha */
822 { 3, 3, 3, 3, 3, 3 },
823 { 20, 20, 15, 10, 25, 10 },
824 /* new limit values for the six attributes by Amy */
825 { 18, 20, 16, 14, 14, 13 },
826 /* Init Lower Higher */
827 { 12, 0, 0, 1, 10, 0 }, /* Hit points */
828 { 17, 4, 0, 6, 0, 1 }, 16, /* Energy */
830 3, 12, A_INT
, SPE_HELLISH_BOLT
, -4, 100 /* From old role.c */
833 { {"Chevalier", 0}, {
837 {"Religious One", 0},
842 {"Annihilator", 0} },
843 "Buddha", "Jahwe", "Allah", /* major real-world religions */
844 "Che", "Ancient Temple", "the World-Eater's domain",
845 PM_CHEVALIER
, NON_PM
, PM_UNDEAD_CHEVALIER
, NON_PM
, NON_PM
,
846 PM_EREC
, PM_ACOLYTE
, PM_ALDUIN
, PM_WALDUIN
,
847 PM_TROLL_ZOMBIE
, PM_MANTICORE
, S_DRAGON
, S_DRAGON
,
848 ART_MAGIC_MIRROR_OF_ARTHUBERT
,
849 MH_HUMAN
|MH_ELF
|MH_DWARF
|MH_GNOME
|MH_HOBBIT
|MH_VAMPIRE
|MH_WERE
|MH_ORC
| ROLE_MALE
|ROLE_FEMALE
|
850 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
851 /* Str Int Wis Dex Con Cha */
852 /*{ 7, 7, 10, 7, 7, 7 },*/
853 { 3, 3, 3, 3, 3, 3 },
854 { 20, 10, 30, 15, 20, 5 },
855 /* new limit values for the six attributes by Amy */
856 { STR18(50), 16, 18, 17, 17, 18 },
857 /* Init Lower Higher */
858 { 20, 0, 0, 9, 1, 0 }, /* Hit points */
859 { 17, 3, 0, 2, 0, 2 },10, /* Energy */
860 0, 3,-2, 2, 10, A_WIS
, SPE_REMOVE_CURSE
, -4, 70
863 { {"Climacterial", 0}, {
864 {"Body Juice Worshipper", 0},
870 {"Menopause Hesitator", 0},
871 {"Big Birthmother", 0},
872 {"Smegmatic Reacher", 0} },
873 "_Sophie Kinsella", "_Mavis Cheek", "_Charlotte Roche", /* authors */
874 "Cli", "Countryside Birthclinic", "The Temple of Xian",
875 PM_CLIMACTERIAL
, NON_PM
, PM_UNDEAD_CLIMACTERIAL
, NON_PM
, PM_ISABEL
,
876 PM_NURSE_CATHERINE
, PM_ATTENDANT
, PM_LARUS
, PM_MALE_VERSION_OF_LARA_CROFT
,
877 PM_BROWN_BEAR
, PM_HANGING_SEMEN_EJACULATOR
, S_QUADRUPED
, S_TURRET
,
878 ART_CLICKPASS
, /* soft chastity belt */
879 MH_HUMAN
|MH_ELF
|MH_DWARF
|MH_GNOME
|MH_HOBBIT
|MH_VAMPIRE
|MH_WERE
|MH_ORC
|
880 ROLE_MALE
|ROLE_FEMALE
| ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
881 /* Str Int Wis Dex Con Cha */
882 /*{ 13, 13, 13, 9, 13, 7 },*/
883 { 3, 3, 3, 3, 3, 3 },
884 { 10, 20, 10, 20, 15, 25 },
885 /* new limit values for the six attributes by Amy */
886 { 14, 19, 18, 22, 18, 22 },
887 /* Init Lower Higher */
888 { 20, 0, 0, 2, 1, 0 }, /* Hit points */
889 { 4, 0, 0, 2, 0, 7 },14, /* Energy */
890 10, 8, -5, 3, 6, A_INT
, SPE_BLOOD_STREAM
, -4, 50
893 { { "Combatant", 0 }, {
894 { "Fighter Lad", 0 },
896 { "Weaponless Adventurer", 0 },
897 { "Spell-Abstainer", 0 },
898 { "Trained Muscle", 0 },
899 { "Lack Compensator", 0 },
900 { "Specialized Minmaxer", 0 },
901 { "Almost Supreme Master", 0 },
902 { "Combat Boss", 0 } },
903 "Arev", "U.GUR", "Khaldi", /* armenian */
904 "Com", "Battlefist Grounds", "Ontology Stage",
905 PM_COMBATANT
, NON_PM
, PM_UNDEAD_COMBATANT
, NON_PM
, NON_PM
,
906 PM_MASTER_KENJI
, PM_STUDENT
, PM_RIVAL_OF_ENVY
, PM_DARK_HAIRED_BOSS
,
907 PM_APPARITION
, PM_SPLICESHEE
, S_WRAITH
, S_GOLEM
,
908 ART_MAJOR_PRESENCE
, /* gauntlets, +2 to-hit and damage */
909 MH_HUMAN
|MH_ELF
|MH_DWARF
|MH_GNOME
|MH_HOBBIT
|MH_VAMPIRE
|MH_WERE
|MH_ORC
|
910 ROLE_MALE
|ROLE_FEMALE
|ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
911 /* Str Int Wis Dex Con Cha */
912 { 3, 3, 3, 3, 3, 3 },
913 { 20, 14, 14, 20, 20, 12 },
914 /* new limit values for the six attributes by Amy */
915 { STR18(100), 16, 16, 18, 18, 18 },
916 /* Init Lower Higher */
917 { 16, 0, 0, 3, 2, 0 }, /* Hit points */
918 { 5, 3, 0, 2, 0, 2 },14, /* Energy */
920 5, 10, A_INT
, SPE_GAIN_SPACT
, -4, 40
933 "Ilmater", "Grumbar", "_Tymora", /* Faerunian */
934 "Con", "Castle Waterdeep Dungeon", "the Warden's Level",
935 PM_CONVICT
, NON_PM
, PM_UNDEAD_CONVICT
, NON_PM
, PM_SEWER_RAT
,
936 PM_ROBERT_THE_LIFER
, PM_INMATE
, PM_WARDEN_ARIANNA
, PM_WARDEN_BRIANNA
,
937 PM_GIANT_BEETLE
, PM_SOLDIER_ANT
, S_RODENT
, S_SPIDER
,
938 ART_IRON_BALL_OF_LIBERATION
,
939 MH_HUMAN
|MH_ELF
|MH_DWARF
|MH_GNOME
|MH_HOBBIT
|MH_VAMPIRE
|MH_WERE
|MH_ORC
|
940 ROLE_MALE
|ROLE_FEMALE
|ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
941 /* Str Int Wis Dex Con Cha */
942 /*{ 10, 7, 7, 7, 13, 6 },*/
943 { 3, 3, 3, 3, 3, 3 },
944 { 20, 20, 10, 20, 20, 10 },
945 /* new limit values for the six attributes by Amy */
946 { STR18(100), 12, 12, 20, 18, 18 },
947 /* Init Lower Higher */
948 { 12, 0, 0, 8, 0, 0 }, /* Hit points */
949 { 3, 0, 0, 1, 0, 1 },10, /* Energy */
950 -50, 5, 0, 2, 10, A_INT
, SPE_TELEPORT_AWAY
, -4, 20
954 {"one who forgot the salt", 0},
955 {"pepper-choker", 0},
956 {"second-class waiter", "second-class waitress"},
957 {"waiter", "waitress"},
960 {"five-star cook", 0},
961 {"national championship cook", 0},
962 {"world-championship cook", 0} },
963 "McDonalds", "Kentucky's Fried Chicken", "Burger King", /* fast food places */
964 "Coo", "Goose Cooking Quarters", "that stupid monkey's place",
965 PM_COOK
, NON_PM
, PM_UNDEAD_COOK
, NON_PM
, PM_LITTLE_DOG
,
966 PM_KING_K__ROOL
, PM_ATTENDANT
, PM_DONKEY_KONG
, PM_KIDDY_KONG
,
967 PM_CROCODILE
, PM_MASTODON
, S_QUADRUPED
, S_FELINE
,
970 MH_HUMAN
|MH_ELF
|MH_DWARF
|MH_GNOME
|MH_HOBBIT
|MH_VAMPIRE
|MH_WERE
|MH_ORC
| ROLE_MALE
|ROLE_FEMALE
|
971 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
972 /* Str Int Wis Dex Con Cha */
973 /*{ 7, 7, 7, 10, 7, 6 },*/
974 { 3, 3, 3, 3, 3, 3 },
975 { 20, 10, 10, 30, 20, 10 },
976 /* new limit values for the six attributes by Amy */
977 { STR18(10), 16, 14, 19, 16, 19 },
978 /* Init Lower Higher */
979 { 9, 0, 0, 3, 1, 0 }, /* Hit points */
980 { 3, 0, 0, 1, 0, 1 },11, /* Energy */
981 10, 8, 0, 1, 9, A_INT
, SPE_FIREBALL
, -4, 30
986 {"Vault Dweller", 0},
991 {"Capital Crime Queen", 0},
995 "President Kimball", "Mr. House", "Caesar", /* Fallout New Vegas */
996 "Cou", "in the middle of nowhere", "scum hideout",
997 PM_COURIER
, NON_PM
, PM_UNDEAD_COURIER
, NON_PM
, PM_LITTLE_DOG
,
998 PM_YES_MAN
, PM_ATTENDANT
, PM_SOME_RANDOM_GUY
, PM_CLONED_NEW_VEGAS_NPC
,
999 PM_JACKAL
, PM_CAZADOR
, S_DOG
, S_ANT
,
1000 ART_WITHERED_NINE_MILLIMETER
,
1001 MH_HUMAN
|MH_ELF
|MH_DWARF
|MH_GNOME
|MH_HOBBIT
|MH_VAMPIRE
|MH_WERE
|MH_ORC
|
1002 ROLE_MALE
|ROLE_FEMALE
|ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
1003 /* Str Int Wis Dex Con Cha */
1004 /*{ 10, 7, 7, 7, 13, 6 },*/
1005 { 3, 3, 3, 3, 3, 3 },
1006 { 20, 20, 10, 20, 20, 10 },
1007 /* new limit values for the six attributes by Amy */
1008 { STR18(20), 14, 10, 14, 16, 10 },
1009 /* Init Lower Higher */
1010 { 10, 0, 0, 5, 0, 0 }, /* Hit points */
1011 { 1, 0, 0, 1, 0, 1 },10, /* Energy */
1012 -10, 5, 0, 2, 10, A_INT
, SPE_ENDURE_HEAT
, -4, 20
1019 {"Script Kiddie", 0},
1025 "Wikileaks", "Guccifer 2.0", "Anonymous", /* h@cking */
1026 "Cra", "Darknet Gateway", "NSA Office",
1027 PM_CRACKER
, NON_PM
, PM_UNDEAD_CRACKER
, NON_PM
, PM_SOFTWARE_BUG
,
1028 PM_YHELOTHAR
, PM_HACKER
, PM_E_TYPE
, PM_W_TYPE
,
1029 PM_DEPHMAH_SEPHIRAH
, PM_RNGED_KOP
, S_KOP
, S_HUMAN
,
1031 ART_ROTATING_THROUGH
, /* better iron chain */
1032 MH_HUMAN
|MH_ELF
|MH_DWARF
|MH_GNOME
|MH_HOBBIT
|MH_VAMPIRE
|MH_WERE
|MH_ORC
| ROLE_MALE
|ROLE_FEMALE
|
1033 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
1034 /* Str Int Wis Dex Con Cha */
1035 /*{ 16, 7, 7, 15, 16, 6 },*/
1036 { 3, 3, 3, 3, 3, 3 },
1037 { 15, 25, 10, 20, 20, 10 },
1038 /* new limit values for the six attributes by Amy */
1039 { STR18(20), 20, 18, 18, 18, 16 },
1040 /* Init Lower Higher */
1041 { 15, 0, 0, 4, 3, 0 }, /* Hit points */
1042 { 12, 0, 0, 5, 0, 2 }, 12, /* Energy */
1043 -10, 6, 1, 4, 12, A_INT
, SPE_GAIN_SPACT
, -4, 100
1046 { {"Cruel Abuser", 0}, { /* too many role names starting with A, so I added that adjective --Amy */
1052 {"Riding Crop Lover", 0},
1053 {"BDSM Fetishist", 0},
1055 {"Grey wannabe", 0} },
1056 "Jacob Black", "_Bella Swan", "Edward Cullen", /* Twilight */
1057 "Abu", "Red Room of Death", "Little Miss Steele's Apartment",
1058 PM_CRUEL_ABUSER
, NON_PM
, PM_UNDEAD_CRUEL_ABUSER
, NON_PM
, PM_CRUEL_ABUSER
,
1059 PM_CHRISTIAN_GRAY
, PM_INMATE
, PM_ANASTASIA_STEELE
, PM_WHINY_MARY_SUE
,
1060 PM_OFFICER
, PM_KOP_KCHIEF
, S_KOP
, S_HUMAN
,
1062 MH_HUMAN
|MH_ELF
|MH_DWARF
|MH_GNOME
|MH_HOBBIT
|MH_VAMPIRE
|MH_WERE
|MH_ORC
|
1063 ROLE_MALE
|ROLE_FEMALE
|ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
1064 /* Str Int Wis Dex Con Cha */
1065 /*{ 10, 7, 7, 7, 13, 6 },*/
1066 { 3, 3, 3, 3, 3, 3 },
1067 { 20, 20, 10, 20, 20, 10 },
1068 /* new limit values for the six attributes by Amy */
1069 { STR18(100), 14, 8, 18, 19, 18 },
1070 /* Init Lower Higher */
1071 { 12, 0, 0, 8, 0, 0 }, /* Hit points */
1072 { 3, 0, 0, 1, 0, 1 },10, /* Energy */
1073 -10, 5, 0, 2, 10, A_INT
, SPE_FORCE_BOLT
, -4, 40
1076 { {"Cyberninja", 0}, { /* ZAPM ninja */
1077 {"Eavesdropper", 0},
1078 {"Looming Shadow", 0},
1082 {"Corporate Spy", 0},
1084 {"Cyber Assassin", 0},
1085 {"Unseen Master", 0} },
1086 "Diddy the Fail Master", "Bantor the Gay Voice", "Conker the Bad Fur Squirrel", /* Diddy Kong Failing :P */
1087 "Cyb", "Teki-Owned Castle", "Rice Plant Fields",
1088 PM_CYBERNINJA
, NON_PM
, PM_UNDEAD_CYBERNINJA
, NON_PM
, PM_DENRYU
,
1089 PM_PRINCE_SARTOR
, PM_ROSHI
, PM_FENG_SHAO
, PM_ONA_KENUGI
,
1090 PM_VARUNA
, PM_KILL_WING
, S_GREMLIN
, S_GREMLIN
,
1092 ART_GAYSECT
, /* 2h axe with bisection attack */
1093 MH_HUMAN
|MH_ELF
|MH_DWARF
|MH_GNOME
|MH_HOBBIT
|MH_VAMPIRE
|MH_WERE
|MH_ORC
| ROLE_MALE
|ROLE_FEMALE
|
1094 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
1095 /* Str Int Wis Dex Con Cha */
1096 /*{ 16, 7, 7, 15, 16, 6 },*/
1097 { 3, 3, 3, 3, 3, 3 },
1098 { 30, 10, 8, 30, 14, 8 },
1099 /* new limit values for the six attributes by Amy */
1100 { STR18(100), 17, 19, 20, 18, 19 },
1101 /* Init Lower Higher */
1102 { 19, 0, 0, 8, 1, 0 }, /* Hit points */
1103 { 7, 0, 0, 1, 0, 1 },11, /* Energy */
1104 10, 10, 0, 0, 8, A_INT
, SPE_DEFOG
, -4, 25
1108 {"Swing Student", 0},
1112 {"Dancehall Artist", 0},
1116 {"World-Class Dancer", 0} },
1117 "_the Archomentals", "Cryonax", "_the Elder Elemental",
1118 "Dan", "the Seasonal Festival Grounds", "the Elemental Confluence",
1119 PM_DANCER
, NON_PM
, PM_UNDEAD_DANCER
, NON_PM
, PM_LITTLE_DOG
,
1120 PM_TROUPE_LEADER
, PM_BACKUP_DANCER
, PM_BOSS_TIME_ELEMENTAL
, PM_FORGOTTEN_REALMS_VORTEX
,
1121 PM_THRIAE
, PM_GREMLIN
, S_GREMLIN
, S_ELEMENTAL
,
1123 ART_SOFTSTEP
, /* anastasia shoes */
1124 MH_HUMAN
|MH_ELF
|MH_DWARF
|MH_GNOME
|MH_HOBBIT
|MH_VAMPIRE
|MH_WERE
|MH_ORC
|
1125 ROLE_MALE
|ROLE_FEMALE
|ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
1126 /* Str Int Wis Dex Con Cha */
1127 { 3, 3, 3, 3, 3, 3 },
1128 { 20, 10, 15, 30, 10, 20 },
1129 /* new limit values for the six attributes by Amy */
1130 { 18, 18, 20, 25, 16, 25 },
1131 /* Init Lower Higher */
1132 { 10, 0, 0, 8, 1, 0 }, /* Hit points */
1133 { 2, 2, 0, 2, 0, 2 }, 8, /* Energy */
1135 2, 30, A_WIS
, SPE_SLOW_MONSTER
, -4, 50
1138 { {"Death Eater", 0}, {
1140 {"Creeping Maggot", 0},
1146 {"Deathbringer", 0},
1147 {"Dark Lord's Bodyguard", 0} },
1148 "Merlin", "Salazar Slytherin", "Lord Voldemort", /* Harry Potter */
1149 "Dea", "Malfoy Manor", "the Order of the Phoenix",
1150 PM_DEATH_EATER
, NON_PM
, PM_UNDEAD_DEATH_EATER
, NON_PM
, PM_SESSILICHEN
,
1151 PM_BELLATRIX_LESTRANGE
, PM_FELLOW_DEATH_EATER
, PM_HARRY_POTTER
, PM_PARRY_HOTTER
,
1152 PM_AUROR
, PM_ELVEN_MASTER_ROGUE
, S_ANGEL
, S_HUMAN
,
1154 MH_HUMAN
|MH_ELF
|MH_DWARF
|MH_GNOME
|MH_HOBBIT
|MH_VAMPIRE
|MH_WERE
|MH_ORC
| ROLE_MALE
|ROLE_FEMALE
|ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
1155 /* Str Int Wis Dex Con Cha */ /* Direct copy from Wizard */
1156 /*{ 7, 10, 7, 7, 7, 7 },*/
1157 { 3, 3, 3, 3, 3, 3 },
1158 { 10, 30, 10, 20, 20, 10 },
1159 /* new limit values for the six attributes by Amy */
1160 { 16, 20, 12, 16, 14, 8 },
1161 /* Init Lower Higher */
1162 { 17, 0, 0, 8, 1, 0 }, /* Hit points */
1163 { 15, 3, 0, 2, 0, 3 },12, /* Energy */
1165 2, 10, A_INT
, SPE_FINGER_OF_DEATH
, -4, 200
1168 { {"Demagogue", 0}, {
1169 {"Assumption Spreader", 0},
1171 {"Loud Agitator", 0},
1172 {"Tally Heretic", 0},
1173 {"Mass Rallier", 0},
1174 {"Mob Mobilizer", 0},
1175 {"Politic Revolutionizer", 0},
1176 {"State Usurper", 0},
1177 {"King of Fake News", 0} },
1178 "Heimskr", "_Suffragette", "Cromwell", /* annoying NPCs in certain video games */
1179 "Dem", "Fake News Office", "Recursion Office",
1180 PM_DEMAGOGUE
, NON_PM
, PM_UNDEAD_DEMAGOGUE
, NON_PM
, PM_THALMOR
,
1181 PM_SINISTER_PRESIDENT
, PM_PAGE
, PM_MISTER_NAYSAYER
, PM_SHROUDED_MIND
,
1182 PM_GREYLEVEL_KOP
, PM_BLACK_KOPETEER
, S_KOP
, S_ANGEL
,
1184 ART_MESSAGE_MEGAPHONE
,
1185 MH_HUMAN
|MH_ELF
|MH_DWARF
|MH_GNOME
|MH_HOBBIT
|MH_VAMPIRE
|MH_WERE
|MH_ORC
| ROLE_MALE
|ROLE_FEMALE
|
1186 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
1187 /* Str Int Wis Dex Con Cha */
1188 /*{ 16, 7, 7, 15, 16, 6 },*/
1189 { 3, 3, 3, 3, 3, 3 },
1190 { 20, 5, 5, 20, 30, 20 },
1191 /* new limit values for the six attributes by Amy */
1192 { STR19(20), 10, 10, 18, 19, 18 },
1193 /* Init Lower Higher */
1194 { 20, 0, 0, 8, 4, 0 }, /* Hit points */
1195 { 1, 0, 0, 1, 0, 1 }, 18, /* Energy */
1196 -50, 6, 4, 7, 15, A_INT
, SPE_MESSAGE
, -4, 30
1199 { {"Diablist", 0}, {
1200 {"Stocks That Hunter Inside Dweller", 0},
1201 {"Cemetery Plunderer", 0},
1202 {"Catacomb Evil-Fighter", 0},
1203 {"Desert Caravanist", 0},
1205 {"Jungle Stinger", 0},
1206 {"Temple Cleanser", 0},
1207 {"Heavenly Fortress Defender", 0},
1208 {"Diablobane", 0} },
1209 "Athulua", "Bul-Kathos", "Rathma", /* Diablo series */
1210 "Dia", "Pandemonium Fortress", "Chaos Sanctuary",
1211 PM_DIABLIST
, NON_PM
, PM_UNDEAD_DIABLIST
, NON_PM
, PM_ROGUE_HIRELING
,
1212 PM_TYRAEL
, PM_SUPER_WARRIOR
, PM_THE_THICKNESSES
, PM_DIPPEL
,
1213 PM_STYGIAN_HAG
, PM_STORM_CALLER
, S_DOG
, S_ELEMENTAL
,
1215 ART_HAMMER_OF_HELLFORGE
, /* mallet */
1216 MH_HUMAN
|MH_ELF
|MH_DWARF
|MH_GNOME
|MH_HOBBIT
|MH_VAMPIRE
|MH_WERE
|MH_ORC
|
1217 ROLE_MALE
|ROLE_FEMALE
|ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
1218 /* Str Int Wis Dex Con Cha */ /* Direct copy from Wizard */
1219 /*{ 7, 10, 7, 7, 7, 7 },*/
1220 { 3, 3, 3, 3, 3, 3 },
1221 { 17, 17, 16, 17, 17, 16 },
1222 /* new limit values for the six attributes by Amy */
1223 { STR18(100), 18, 18, 18, 18, 18 },
1224 /* Init Lower Higher */
1225 { 25, 0, 0, 1, 1, 0 }, /* Hit points */
1226 { 8, 1, 0, 1, 0, 1 }, 15, /* Energy */
1228 0, 0, A_INT
, SPE_FIRE_GOLEM
, -4, 100 /* From old role.c */
1231 { {"Dissident", 0}, {
1232 {"Mars Castaway", "Moon Base Staff"},
1233 {"Orbital Watch", 0},
1238 {"Planet Conqueror", 0},
1239 {"System Kingpin", 0},
1240 {"Sector Crimelord", 0} },
1241 "_Aung San Suu Kyi", "Ai Weiwei", "Vladimir Bukovsky", /* famous dissidents */
1242 "Dis", "Secret Underground", "Gavenmengte Location",
1243 PM_DISSIDENT
, NON_PM
, PM_UNDEAD_DISSIDENT
, NON_PM
, PM_CHRISTINE
,
1244 PM_DARKNET_GATER
, PM_EXTERMINATOR
, PM_SCHWING_JI
, PM_DICTATORIAL_PRESIDENT
,
1245 PM_KOPKEEPER
, PM_GOVERNMENT_FLUNKIE
, S_KOP
, S_ANGEL
,
1247 ART_VOICESHUTTER
, /* hammer */
1248 MH_HUMAN
|MH_ELF
|MH_DWARF
|MH_GNOME
|MH_HOBBIT
|MH_VAMPIRE
|MH_WERE
|MH_ORC
| ROLE_MALE
|ROLE_FEMALE
|
1249 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
1250 /* Str Int Wis Dex Con Cha */
1251 /*{ 16, 7, 7, 15, 16, 6 },*/
1252 { 3, 3, 3, 3, 3, 3 },
1253 { 20, 15, 15, 15, 20, 15 },
1254 /* new limit values for the six attributes by Amy */
1255 { STR18(100), 18, 18, 18, 19, 19 },
1256 /* Init Lower Higher */
1257 { 20, 0, 0, 4, 4, 0 }, /* Hit points */
1258 { 8, 0, 0, 2, 0, 3 }, 16, /* Energy */
1259 10, 9, -1, 3, 12, A_INT
, SPE_NEXUSPORT
, -4, 50
1272 "Tane", "Tangaroa", "Whiro", /* Polynesian */
1273 "Div", "Scuba Dock", "Melville's Sea of Doom",
1274 PM_DIVER
, NON_PM
, PM_UNDEAD_DIVER
, NON_PM
, NON_PM
,
1275 PM_JACQUES_COUSTEAU
, PM_ATTENDANT
, PM_MOBY_DICK
, PM_MOBY_DIGGER
,
1276 PM_BLUE_WHALE
, PM_TENTACRUEL
, S_EEL
, S_EEL
,
1277 ART_MAUI_S_FISHHOOK
,
1278 MH_HUMAN
|MH_ELF
|MH_DWARF
|MH_GNOME
|MH_HOBBIT
|MH_VAMPIRE
|MH_WERE
|MH_ORC
|
1279 ROLE_MALE
|ROLE_FEMALE
| ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
1280 /* Str Int Wis Dex Con Cha */
1281 /*{ 8, 7, 7, 8, 8, 7 },*/
1282 { 3, 3, 3, 3, 3, 3 },
1283 { 20, 15, 10, 20, 25, 10 },
1284 /* new limit values for the six attributes by Amy */
1285 { STR18(60), 18, 17, 19, 16, 19 },
1286 /* Init Lower Higher */
1287 { 10, 0, 0, 8, 1, 0 }, /* Hit points */
1288 { 1, 0, 0, 1, 0, 1 },12, /* Energy */
1289 10, 8, 0, 2, 9, A_INT
, SPE_DETECT_MONSTERS
, -4, 40
1292 { {"Doll Mistress", 0}, {
1293 {"Puppet Trainer", 0},
1294 {"Yin Seal Thrower", 0},
1295 {"Spell Capturer", 0},
1296 {"Magic Puppeteer", 0},
1297 {"Death Forest Survivor", 0},
1298 {"Mount Fucking Moon Hiker", 0},
1299 {"Gates of Hell Visitor", 0},
1300 {"Puppet League Participant", 0},
1301 {"Puppet League Champion", 0}},
1302 "_Sakuya", "_Reimu", "_Yukari Yakumo", /* Touhou */
1303 "Dol", "Touhou Pokemon Center", "Scarlet's Concentration Camp",
1304 PM_DOLL_MISTRESS
, NON_PM
, PM_UNDEAD_DOLL_MISTRESS
, NON_PM
, PM_GOODWIFE
,
1305 PM_TENSHI_AND_MEILING
, PM_ATTENDANT
, PM_FLANDRE_SCARLET
, PM_SCARLET_DEVIL
,
1306 PM_ASIAN_LADY
, PM_TUFTED_ASIAN_GIRL
, S_GOLEM
, S_GOLEM
,
1308 MH_HUMAN
|MH_ELF
|MH_DWARF
|MH_GNOME
|MH_HOBBIT
|MH_VAMPIRE
|MH_WERE
|MH_ORC
|
1309 ROLE_MALE
|ROLE_FEMALE
| ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
1310 /* Str Int Wis Dex Con Cha */
1311 /*{ 13, 13, 13, 9, 13, 7 },*/
1312 { 3, 3, 3, 3, 3, 3 },
1313 { 10, 20, 10, 30, 10, 20 },
1314 /* new limit values for the six attributes by Amy */
1315 { 18, 20, 18, 21, 16, 20 },
1316 /* Init Lower Higher */
1317 { 14, 0, 0, 6, 1, 0 }, /* Hit points */
1318 { 4, 0, 0, 1, 0, 1 },12, /* Energy */
1319 10, 9, 2, 1, 10, A_INT
, SPE_STONE_TO_FLESH
, -4, 50
1322 { {"Doom Marine", 0}, {
1324 {"Demon Blaster", 0},
1325 {"Gun-Toting Avenger", 0},
1326 {"Kalashnikov Gunner", 0},
1328 {"Spiderdemon Hunter", 0},
1329 {"Nether Realm Traveler", 0},
1330 {"Hell Gate Closer", 0},
1331 {"Cyberdemon's Bane", 0}},
1332 "Zombieman Brigade", "The Revenants", "Cyberdemon MkIII Deluxe", /* Doom 2 */
1333 "Mar", "Martian Base", "Icon of Sin",
1334 PM_DOOM_MARINE
, NON_PM
, PM_UNDEAD_DOOM_MARINE
, NON_PM
, PM_SOLDIER
,
1335 PM_LAST_SURVIVING_OTHER_HUMAN
, PM_SUPER_WARRIOR
, PM_JOHN_ROMERO
, PM_EYGOORTS_TOGAAL_JEZEHH
,
1336 PM_HERRER
, PM_ROCKET_FATGUY
, S_DEMON
, S_DEMON
,
1337 ART_BRUTAL_CHAINSAW
,
1338 MH_HUMAN
|MH_ELF
|MH_DWARF
|MH_GNOME
|MH_HOBBIT
|MH_VAMPIRE
|MH_WERE
|MH_ORC
|
1339 ROLE_MALE
|ROLE_FEMALE
|ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
1340 /* Str Int Wis Dex Con Cha */
1341 /*{ 10, 7, 7, 7, 13, 6 },*/
1342 { 3, 3, 3, 3, 3, 3 },
1343 { 30, 4, 3, 30, 30, 3 },
1344 /* new limit values for the six attributes by Amy */
1345 { STR19(19), 13, 12, 16, 20, 12 },
1346 /* Init Lower Higher */
1347 { 15, 0, 0, 10, 0, 0 }, /* Hit points */
1348 { 1, 0, 0, 1, 0, 1 },15, /* Energy */
1349 10, 10, -4, 6, 18, A_INT
, SPE_TELEPORT_AWAY
, -4, 10
1353 { {"DQ Slime", 0}, {
1359 {"Slime Knight", 0},
1361 {"King Slime", "Queen Slime"},
1362 {"Slime God", "Slime Goddess"} },
1363 "King Somnus", "_Rubiss", "Malroth", /* Dragon Warrior */
1364 "Sli", "The Slime Paradise", "The village of Humbleton",
1365 PM_DQ_SLIME
, NON_PM
, PM_UNDEAD_DQ_SLIME
, NON_PM
, NON_PM
,
1366 PM_SLIME_EMPEROR
, PM_GLOBULE
, PM_LEGENDARY_HERO
, PM_PURGATORY_DUDE
,
1367 PM_ROYAL_GUARDIAN
, PM_DWARF_KING
, S_HUMAN
, S_HUMANOID
,
1370 MH_HUMAN
|MH_ELF
|MH_DWARF
|MH_GNOME
|MH_HOBBIT
|MH_VAMPIRE
|MH_WERE
|MH_ORC
| ROLE_MALE
|ROLE_FEMALE
|
1371 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
1372 /* Str Int Wis Dex Con Cha */
1373 /*{ 7, 7, 7, 10, 7, 6 },*/
1374 { 3, 3, 3, 3, 3, 3 },
1375 { 20, 10, 10, 30, 20, 10 },
1376 /* new limit values for the six attributes by Amy */
1377 { STR18(100), 18, 20, 18, 16, 12 },
1378 /* Init Lower Higher */
1379 { 5, 0, 0, 2, 8, 0 }, /* Hit points */
1380 { 1, 0, 0, 2, 0, 8 },15, /* Energy */
1381 -20, 8, 0, 6, 14, A_INT
, SPE_ACID_STREAM
, -4, 60
1384 { { "Dragonmaster", 0 }, {
1385 { "Servant of Scales", 0 },
1386 { "Page of Wings", 0 },
1387 { "Page of Claws", 0 },
1388 { "Page of Scales", 0 },
1389 { "Knight of the Skies", 0 },
1390 { "Knight of Talons", 0 },
1391 { "Knight of Scales", 0 },
1392 { "Knight of Power", 0 },
1393 { "Knight of Breath", 0 } },
1394 "Enki", "Enlil", "_Ereshkigal", /* Sumerian */
1395 "Dra", "the Sacred Nesting Grounds", "the Draconic Boneyard",
1396 PM_DRAGONMASTER
, NON_PM
, PM_UNDEAD_DRAGONMASTER
, NON_PM
, PM_BABY_RED_DRAGON
,
1397 PM_DRAKEMOTHER
, PM_DRAKE
, PM_SLIPSCALE_THE_BETRAYER
, PM_ORDRAGON
,
1398 PM_VAMPIRE
, PM_WRAITH
, S_ZOMBIE
, S_VAMPIRE
,
1400 MH_HUMAN
|MH_ELF
|MH_DWARF
|MH_GNOME
|MH_HOBBIT
|MH_VAMPIRE
|MH_WERE
|MH_ORC
|
1401 ROLE_MALE
|ROLE_FEMALE
|ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
1402 /* Str Int Wis Dex Con Cha */
1403 { 3, 3, 3, 3, 3, 3 },
1404 { 30, 15, 15, 10, 20, 10 },
1405 /* new limit values for the six attributes by Amy */
1406 { STR18(100), 19, 18, 15, 17, 15 },
1407 /* Init Lower Higher */
1408 { 14, 0, 0, 8, 2, 0 }, /* Hit points */
1409 { 1, 4, 0, 1, 0, 2 },10, /* Energy */
1411 0, 9, A_INT
, SPE_FIREBALL
, -4, 30
1415 {"Fire Tower Caster", 0},
1417 {"Eruption Magician", 0},
1419 {"Tornado Chief", 0},
1420 {"Volcano Prince", 0},
1421 {"Causer of Hurricanes", 0},
1422 {"Armageddon Mage", 0},
1423 {"Thundering Earthshaker", 0} },
1424 "Tal Rascha", "_Blood Raven", "B-a-a-l", /* Diablo 2 */
1425 "Drd", "Scosglen Forests", "the place where everyone dies",
1426 PM_DRUID
, NON_PM
, PM_UNDEAD_DRUID
, NON_PM
, PM_RAVEN
,
1427 PM_HALBU
, PM_HUNTER
, PM_HEFFER
, PM_THE_SMITH
,
1428 PM_MOVED_SHAMAN
, PM_VOLCANIC_ELEMENTAL
, S_KOBOLD
, S_ELEMENTAL
,
1431 MH_HUMAN
|MH_ELF
|MH_DWARF
|MH_GNOME
|MH_HOBBIT
|MH_VAMPIRE
|MH_WERE
|MH_ORC
| ROLE_MALE
|ROLE_FEMALE
| ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
1432 /* Str Int Wis Dex Con Cha */
1433 /*{ 10, 8, 7, 10, 17, 6 },*/
1434 { 3, 3, 3, 3, 3, 3 },
1435 { 20, 15, 8, 25, 14, 18 },
1436 /* new limit values for the six attributes by Amy */
1437 { STR18(50), 18, 16, 14, 10, 16 },
1438 /* Init Lower Higher */
1439 { 8, 0, 0, 1, 1, 0 }, /* Hit points */
1440 { 12, 0, 0, 3, 0, 4 },11, /* Energy */
1441 10, 7, -3, 2, 9, A_INT
, SPE_CREATE_FAMILIAR
, -4, 90
1452 {"Beer King", "Beer Queen"},
1453 {"Ethanol Addict", 0} },
1454 "Apollo", "Dionysus", "Pan", /* Drunken */
1455 "Dru", "Brass Lantern Bar", "Moriarty's Saloon",
1456 PM_DRUNK
, NON_PM
, PM_UNDEAD_DRUNK
, NON_PM
, NON_PM
,
1457 PM_ANDY_STAHL
, PM_ATTENDANT
, PM_COLIN_MORIARTY
, PM_GREEDY_SCOTTISH_BARKEEPER
,
1458 PM_GNOME_WARRIOR
, PM_DWARF_KING
, S_HUMAN
, S_GNOME
,
1459 ART_CLOAK_OF_NEUTRALITY
,
1460 MH_HUMAN
|MH_ELF
|MH_DWARF
|MH_GNOME
|MH_HOBBIT
|MH_VAMPIRE
|MH_WERE
|MH_ORC
|
1461 ROLE_MALE
|ROLE_FEMALE
|ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
1462 /* Str Int Wis Dex Con Cha */
1463 /*{ 10, 7, 7, 7, 13, 6 },*/
1464 { 3, 3, 3, 3, 3, 3 },
1465 { 20, 20, 10, 20, 20, 10 },
1466 /* new limit values for the six attributes by Amy */
1467 { STR18(100), 14, 16, 15, 18, 12 },
1468 /* Init Lower Higher */
1469 { 12, 0, 0, 8, 0, 0 }, /* Hit points */
1470 { 3, 0, 0, 1, 0, 1 },10, /* Energy */
1471 0, 5, 0, 2, 10, A_INT
, SPE_DETECT_FOOD
, -4, 30
1476 {"one who doesn't like foreigners", 0},
1477 {"S'wit Remover", 0},
1478 {"N'wah Basher", 0},
1479 {"causer of suffering", 0},
1480 {"Merciless Assassin", 0},
1481 {"Morag Tong member", 0},
1482 {"Morag Tong leader", 0},
1483 {"Morag Tong Master Assassin", 0} },
1484 "Orome", "_Yavanna", "Tulkas", /* Elven */
1486 "Dun", "Gnisis", "Red Mountain",
1487 PM_DUNMER
, NON_PM
, PM_UNDEAD_DUNMER
, NON_PM
, PM_ZUBAT
,
1488 PM_VIVEC
, PM_HIGHEST_ELF
, PM_DAGOTH_UR
, PM_MEHRUNES_DAGON
,
1489 PM_OBLIVION_DAEDRA
, PM_ASH_CLANNFEAR
, S_NEMESE
, S_NEMESE
,
1492 MH_HUMAN
|MH_ELF
|MH_DWARF
|MH_GNOME
|MH_HOBBIT
|MH_VAMPIRE
|MH_WERE
|MH_ORC
|
1493 ROLE_MALE
|ROLE_FEMALE
| ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
1494 /* Str Int Wis Dex Con Cha */
1495 /*{ 13, 13, 13, 9, 13, 7 },*/
1496 { 3, 3, 3, 3, 3, 3 },
1497 { 25, 15, 15, 20, 20, 5 },
1498 /* new limit values for the six attributes by Amy */
1499 { STR18(50), 17, 14, 18, 16, 16 },
1500 /* Init Lower Higher */
1501 { 18, 0, 0, 6, 1, 0 }, /* Hit points */
1502 { 8, 0, 0, 2, 0, 2 },12, /* Energy */
1503 10, 9, 2, 1, 10, A_INT
, SPE_CANCELLATION
, -4, 40
1506 { {"Electric Mage", 0}, {
1513 {"Volt Technician", 0},
1515 {"Shock-Master", 0} },
1516 "Thomas Alva Edison", "Benjamin Franklin", "_Marilyn Monroe", /* associated with electricity */
1517 "Ele", "Bolttown", "Celebrity Graveyard",
1518 PM_ELECTRIC_MAGE
, NON_PM
, PM_UNDEAD_ELECTRIC_MAGE
, NON_PM
, PM_SHOCK_HOUND_PUP
,
1519 PM_GUITAR_HERO
, PM_SHOCKER
, PM_ELVIS_PRESLEY
, PM_ROCK_N_ROLL_KING
,
1520 PM_SHOGGOTH
, PM_BURBLING_BLOB
, S_PUDDING
, S_BLOB
,
1521 ART_THUNDER_WHISTLE
,
1522 MH_HUMAN
|MH_ELF
|MH_DWARF
|MH_GNOME
|MH_HOBBIT
|MH_VAMPIRE
|MH_WERE
|MH_ORC
|
1523 ROLE_MALE
|ROLE_FEMALE
|ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
1524 /* Str Int Wis Dex Con Cha */ /* Direct copy from Wizard */
1525 /*{ 7, 10, 7, 7, 7, 7 },*/
1526 { 3, 3, 3, 3, 3, 3 },
1527 { 10, 30, 10, 20, 20, 10 },
1528 /* new limit values for the six attributes by Amy */
1529 { 16, 20, 16, 16, 15, 14 },
1530 /* Init Lower Higher */
1531 { 15, 0, 0, 8, 1, 0 }, /* Hit points */
1532 { 15, 3, 0, 2, 0, 3 },12, /* Energy */
1534 2, 10, A_INT
, SPE_LIGHTNING
, -4, 100 /* From old role.c */
1537 { {"Elementalist", 0}, {
1538 {"Fire Fingers", 0},
1539 {"Icicle Hands", 0},
1540 {"Air Current Lover", 0},
1541 {"Earth Digger", 0},
1542 {"Inferno Strider", 0},
1543 {"Hurricane Center", 0},
1544 {"Glacial Avalanche", 0},
1545 {"Migmatite Carver", 0},
1546 {"Astral Controller", 0} },
1547 "Amon Ra", "Hersifon", "Mor Havoc", /* Age of Empires */
1548 "Elm", "Greenery Grove", "Astral Depths",
1549 PM_ELEMENTALIST
, NON_PM
, PM_UNDEAD_ELEMENTALIST
, NON_PM
, PM_FRY
,
1550 PM_LAURA_THE_ELEMENTAL_LADY
, PM_ATTENDANT
, PM_LAHIRA_THE_EVIL_ELEMENTALIST
, PM_WATER_CONTROL_GIRL
,
1551 PM_THEMATIC_ASTRAL_ELEMENTAL
, PM_LAURA_S_HUGGING_BOOT
, S_ELEMENTAL
, S_ELEMENTAL
,
1552 ART_BEAM_MULTIPLIER
,
1553 MH_HUMAN
|MH_ELF
|MH_DWARF
|MH_GNOME
|MH_HOBBIT
|MH_VAMPIRE
|MH_WERE
|MH_ORC
|
1554 ROLE_MALE
|ROLE_FEMALE
|ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
1555 /* Str Int Wis Dex Con Cha */ /* Direct copy from Wizard */
1556 /*{ 7, 10, 7, 7, 7, 7 },*/
1557 { 3, 3, 3, 3, 3, 3 },
1558 { 5, 25, 20, 25, 15, 10 },
1559 /* new limit values for the six attributes by Amy */
1560 { 18, 18, 18, 18, 16, 17 },
1561 /* Init Lower Higher */
1562 { 10, 0, 0, 4, 2, 0 }, /* Hit points */
1563 { 20, 5, 0, 3, 0, 1 },13, /* Energy */
1565 5, 20, A_INT
, SPE_CALL_THE_ELEMENTS
, -4, 100 /* From old role.c */
1569 {"Edhel", "Elleth"},
1570 {"Edhel", "Elleth"}, /* elf-maid */
1571 {"Ohtar", "Ohtie"}, /* warrior */
1572 {"Kano", /* commander (Q.) ['a] */
1573 "Kanie"}, /* educated guess, until further research- SAC */
1574 {"Arandur", /* king's servant, minister (Q.) - guess */
1575 "Aranduriel"}, /* educated guess */
1576 {"Hir", "Hiril"}, /* lord, lady (S.) ['ir] */
1577 {"Aredhel", "Arwen"}, /* noble elf, maiden (S.) */
1578 {"Ernil", "Elentariel"}, /* prince (S.), elf-maiden (Q.) */
1579 {"Elentar", "Elentari"} }, /* Star-king, -queen (Q.) */
1580 "Solonor Thelandira", "Aerdrie Faenya", "Erevan Ilesere", /* Elven */
1582 "Elp", "the great Circle of Elwing", "the Goblins' Cave",
1583 PM_ELPH
, NON_PM
, PM_UNDEAD_ELPH
, NON_PM
, PM_LITTLE_DOG
, /* Orion & canis major */
1584 PM_EARENDIL
, PM_HIGHEST_ELF
, PM_GOBLIN_KING
, PM_GOBLIN_SUB_KING
,
1585 PM_URUK_HAI
, PM_OGRE
, S_ORC
, S_OGRE
,
1587 ART_PALANTIR_OF_WESTERNESSE
,
1588 MH_HUMAN
|MH_ELF
|MH_DWARF
|MH_GNOME
|MH_HOBBIT
|MH_VAMPIRE
|MH_WERE
|MH_ORC
|
1589 ROLE_MALE
|ROLE_FEMALE
| ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
1590 /* Str Int Wis Dex Con Cha */
1591 /*{ 13, 13, 13, 9, 13, 7 },*/
1592 { 3, 3, 3, 3, 3, 3 },
1593 { 30, 10, 10, 20, 20, 10 },
1594 /* new limit values for the six attributes by Amy */
1595 { 18, 19, 19, 24, 16, 20 },
1596 /* Init Lower Higher */
1597 { 18, 0, 0, 6, 1, 0 }, /* Hit points */
1598 { 8, 0, 0, 2, 0, 2 },12, /* Energy */
1599 10, 9, 2, 1, 10, A_INT
, SPE_INVISIBILITY
, -4, 60
1604 { "Relationship Avoider", 0 },
1605 { "Me-Neither-Shouter", 0 },
1606 { "Privileged Potato", 0 },
1607 { "Butt Resoler", 0 },
1608 { "Terrible Dad", 0 },
1609 { "Projection Of All That Is Wrong", 0 },
1610 { "Militant Emera", 0 },
1611 { "Exshooter", 0 } },
1612 "Slim Jim", "Milwaukee Jon", "Bose Jefferson", /* Road Rash */
1613 "Eme", "Toxic HQ", "Feminist Center",
1614 PM_EMERA
, NON_PM
, PM_UNDEAD_EMERA
, NON_PM
, PM_EMERA
,
1615 PM_VERNON_DURSLEY
, PM_FELLOW_DEATH_EATER
, PM_SANITA_EKERENZE
, PM_FLOEY_STINT
,
1616 PM_HC_SEX_PRINCESS
, PM_FLAX_WOMAN
, S_ARCHFIEND
, S_ANGEL
,
1617 ART_MEANCANE
, /* walking stick */
1618 MH_HUMAN
|MH_ELF
|MH_DWARF
|MH_GNOME
|MH_HOBBIT
|MH_VAMPIRE
|MH_WERE
|MH_ORC
|
1619 ROLE_MALE
|ROLE_FEMALE
|ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
1620 /* Str Int Wis Dex Con Cha */
1621 { 3, 3, 3, 3, 3, 3 },
1622 { 30, 5, 5, 10, 45, 5 },
1623 /* new limit values for the six attributes by Amy */
1624 { STR19(20), 8, 6, 15, 20, 5 },
1625 /* Init Lower Higher */
1626 { 25, 0, 0, 10, 1, 0 }, /* Hit points */
1627 { 2, 1, 0, 1, 0, 1 },8, /* Energy */
1629 20, 20, A_INT
, SPE_SHINING_WAVE
, -4, 10
1633 {"Enlightened One", 0},
1635 {"Thought Catcher", 0},
1636 {"Subconscious Link", 0},
1637 {"Psionic Vein", 0},
1638 {"Brainwave Warper", 0},
1639 {"Neuroconductor", 0},
1640 {"Mind Overlord", 0},
1641 {"Fate Weaver", 0} },
1642 "_Grolla Seyfarth", "_Pamela & Carl Arwig", "_Iris Sepperin", /* erka_es, and the "Carl Arwig" is an inside joke */
1643 "Emp", "Magnetic Shield Cave", "Antenna Grounds",
1644 PM_EMPATH
, NON_PM
, PM_UNDEAD_EMPATH
, NON_PM
, PM_NURSE
,
1645 PM_HYACINTOR
, PM_INTERN
, PM_BRANTER_GUN
, PM_RELIGIOUS_HOUSE_NOTICER
,
1646 PM_MIND_FLAYER
, PM_SWAPPED_MASTER_MIND_FLAYER
, S_HUMANOID
, S_HUMANOID
,
1648 ART_CONTROLLER_HAT
, /* helm of telepathy, invoke for taming */
1649 MH_HUMAN
|MH_ELF
|MH_DWARF
|MH_GNOME
|MH_HOBBIT
|MH_VAMPIRE
|MH_WERE
|MH_ORC
| ROLE_MALE
|ROLE_FEMALE
|
1650 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
1651 /* Str Int Wis Dex Con Cha */
1652 /*{ 16, 7, 7, 15, 16, 6 },*/
1653 { 3, 3, 3, 3, 3, 3 },
1654 { 10, 30, 20, 20, 5, 15 },
1655 /* new limit values for the six attributes by Amy */
1656 { 18, 25, 20, 18, 16, 18 },
1657 /* Init Lower Higher */
1658 { 10, 0, 0, 3, 2, 0 }, /* Hit points */
1659 { 24, 0, 0, 5, 0, 3 }, 18, /* Energy */
1660 10, 6, -5, 3, 13, A_INT
, SPE_FULL_HEALING
, -4, 150
1664 {"Young Boy", "Young Girl"},
1665 {"Village Hero", 0},
1668 {"Country Hero", 0},
1669 {"Continent Hero", 0},
1673 0, 0, 0, /* special deities */
1674 "Erd", "Tantagel Castle", "Charlock Castle",
1675 PM_ERDRICK
, NON_PM
, PM_UNDEAD_ERDRICK
, NON_PM
, NON_PM
,
1676 PM_KING_LORIK
, PM_ROYAL_GUARD
, PM_DRAGONLORD
, PM_SUPER_OLD_PURPLE_DRAGON
,
1677 PM_SLIME
, PM_DRAKEE
, S_BLOB
, S_BAT
,
1680 MH_HUMAN
|MH_ELF
|MH_DWARF
|MH_GNOME
|MH_HOBBIT
|MH_VAMPIRE
|MH_WERE
|MH_ORC
| ROLE_MALE
|ROLE_FEMALE
|
1681 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
1682 /* Str Int Wis Dex Con Cha */
1683 /*{ 7, 7, 7, 10, 7, 6 },*/
1684 { 3, 3, 3, 3, 3, 3 },
1685 { 20, 10, 10, 30, 20, 10 },
1686 /* new limit values for the six attributes by Amy */
1687 { STR18(100), 16, 17, 17, 18, 16 },
1688 /* Init Lower Higher */
1689 { 7, 0, 0, 2, 1, 0 }, /* Hit points */
1690 { 2, 0, 0, 2, 0, 1 },16, /* Energy */
1691 0, 8, 0, 3, 11, A_INT
, SPE_LIGHTNING
, -4, 30
1694 { {"Failed Existence", 0}, {
1700 {"Walking Beer Bottle", 0},
1701 {"Limping Tramp", 0},
1702 {"Luckless Individual", 0},
1703 {"Choosy Beggar", 0} },
1704 0, 0, 0, /* special deities */
1705 "Fai", "Red Carpet", "Violet Carpet",
1706 PM_FAILED_EXISTENCE
, NON_PM
, PM_UNDEAD_FAILED_EXISTENCE
, NON_PM
, NON_PM
,
1707 PM_GRUFF_CO_WORKER
, PM_MODEL
, PM_IRINA
, PM_MODEL_MUMMY
,
1708 PM_UNDEAD_ACTIVISTOR
, PM_UNDEAD_FEAT_MASTER
, S_HUMAN
, S_HUMAN
,
1709 ART_UNOBTAINABLE_BEAUTIES
,
1710 MH_HUMAN
|MH_ELF
|MH_DWARF
|MH_GNOME
|MH_HOBBIT
|MH_VAMPIRE
|MH_WERE
|MH_ORC
|
1711 ROLE_MALE
|ROLE_FEMALE
| ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
1712 /* Str Int Wis Dex Con Cha */
1713 /*{ 13, 13, 13, 9, 13, 7 },*/
1714 { 3, 3, 3, 3, 3, 3 },
1715 { 10, 25, 15, 15, 10, 25 },
1716 /* new limit values for the six attributes by Amy */
1717 { 12, 16, 16, 21, 14, 25 },
1718 /* Init Lower Higher */
1719 { 12, 0, 0, 4, 2, 0 }, /* Hit points */
1720 { 8, 0, 0, 1, 0, 2 },12, /* Energy */
1721 10, 9, 2, 1, 10, A_INT
, SPE_FORBIDDEN_KNOWLEDGE
, -4, 90
1724 { {"Feat Master", 0}, { /* stunt master, but there were too many role names beginning with S */
1731 {"Implacable Protagonist", 0},
1732 {"Main Attraction", 0},
1734 "James Bond", "Chuck Norris", "Jackie Chan", /* movie heroes */
1735 "Stu", "Recording Studio", "Noob Studio",
1736 PM_FEAT_MASTER
, NON_PM
, PM_UNDEAD_FEAT_MASTER
, NON_PM
, PM_ANTIMATTER_VORTEX
,
1737 PM_STUNT_DOUBLE
, PM_PAGE
, PM_RON_WEASLEY
, PM_HERMIONE_GRANGER
,
1738 PM_FLYING_GUY
, PM_HERMIONE_GRANGER
, S_HUMAN
, S_NEMESE
,
1741 MH_HUMAN
|MH_ELF
|MH_DWARF
|MH_GNOME
|MH_HOBBIT
|MH_VAMPIRE
|MH_WERE
|MH_ORC
| ROLE_MALE
|ROLE_FEMALE
| ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
1742 /* Str Int Wis Dex Con Cha */
1743 /*{ 13, 7, 14, 8, 10, 17 },*/
1744 { 3, 3, 3, 3, 3, 3 },
1745 { 5, 5, 5, 60, 5, 20 },
1746 /* new limit values for the six attributes by Amy */
1747 { 17, 16, 12, 25, 16, 22 },
1748 /* Init Lower Higher */
1749 { 19, 0, 0, 8, 2, 0 }, /* Hit points */
1750 { 10, 4, 0, 1, 0, 2 },10, /* Energy */
1751 10, 8,-2, 0, 9, A_WIS
, SPE_JUMPING
, -4, 50
1754 { {"Feminist", 0}, {
1756 {"Wannabe Maneater", 0},
1757 {"Fingernail Scratcher", 0},
1758 {"Purple Dress Wearer", 0},
1759 {"Well-known SJW", 0},
1760 {"Safe Zone Defender", 0},
1762 {"Rolling Pin Swinger", 0},
1763 {"Bane of Men Worldwide", 0} },
1764 "_Tinanya", "_Helen", "_Rejda",
1765 "Fem", "Designated Safe Zone", "Men-Infested Caverns",
1766 PM_FEMINIST
, NON_PM
, PM_UNDEAD_FEMINIST
, NON_PM
, PM_BLOCK_HEELED_GIRL
,
1767 PM_FEMMY
, PM_NYMPHET
, PM_DR__FAUST__THE_PATRIARCH
, PM_WIFEBEATER_ASSHOLE
,
1768 PM_POWERFUL_IDIOT
, PM_PATRIARCH
, S_CENTAUR
, S_GIANT
,
1769 ART_GENDER_INSPECIFIC_WHIP
,
1770 MH_HUMAN
|MH_ELF
|MH_DWARF
|MH_GNOME
|MH_HOBBIT
|MH_VAMPIRE
|MH_WERE
|MH_ORC
|
1771 ROLE_MALE
|ROLE_FEMALE
| ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
1772 /* Str Int Wis Dex Con Cha */
1773 /*{ 13, 13, 13, 9, 13, 7 },*/
1774 { 3, 3, 3, 3, 3, 3 },
1775 { 20, 5, 5, 20, 20, 30 },
1776 /* new limit values for the six attributes by Amy */
1777 { STR18(50), 12, 14, 19, 18, 21 },
1778 /* Init Lower Higher */
1779 { 15, 0, 0, 4, 4, 0 }, /* Hit points */
1780 { 10, 0, 0, 7, 0, 0 }, 15, /* Energy */
1781 0, 6, -4, 2, 7, A_INT
, SPE_HORRIFY
, -4, 100
1794 "Sol", "_Terra", "_Luna",
1795 "Fen", "the Starry Rift", "Stella Maris",
1796 PM_FENCER
, NON_PM
, PM_UNDEAD_FENCER
, NON_PM
, PM_ORDINATOR
,
1797 PM_RIGIL
, PM_SUPER_WARRIOR
, PM_TOLIMAN
, PM_FLORELLA
,
1798 PM_AIR_ELEMENTAL
, PM_SNAKE
, S_SNAKE
, S_ZOMBIE
,
1800 MH_HUMAN
|MH_ELF
|MH_DWARF
|MH_GNOME
|MH_HOBBIT
|MH_VAMPIRE
|MH_WERE
|MH_ORC
|
1801 ROLE_MALE
|ROLE_FEMALE
|ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
1802 /* Str Int Wis Dex Con Cha */ /* Direct copy from Wizard */
1803 /*{ 7, 10, 7, 7, 7, 7 },*/
1804 { 3, 3, 3, 3, 3, 3 },
1805 { 20, 15, 10, 25, 20, 10 },
1806 /* new limit values for the six attributes by Amy */
1807 { STR19(20), 15, 16, 21, 18, 19 },
1808 /* Init Lower Higher */
1809 { 12, 0, 0, 9, 2, 0 }, /* Hit points */
1810 { 13, 2, 0, 2, 0, 2 },12, /* Energy */
1811 0, 3, -2, 2, 6, A_INT
, SPE_ENCHANT_WEAPON
, -4, 25
1824 "_Selene", "Helios", "_Eos",
1825 "Fig", "the Castle of Moon", "the Earth",
1826 PM_FIGHTER
, NON_PM
, PM_UNDEAD_FIGHTER
, NON_PM
, PM_KITTEN
,
1827 PM_PRINCESS_OF_MOON
, PM_PLANETARY_FIGHTER
, PM_JEDEITE
, PM_WEDI_KNIGHT
,
1828 PM_EARTH_ELEMENTAL
, PM_SNAKE
, S_SNAKE
, S_ZOMBIE
,
1830 MH_HUMAN
|MH_ELF
|MH_DWARF
|MH_GNOME
|MH_HOBBIT
|MH_VAMPIRE
|MH_WERE
|MH_ORC
|
1831 ROLE_MALE
|ROLE_FEMALE
|ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
1832 /* Str Int Wis Dex Con Cha */ /* Direct copy from Wizard */
1833 /*{ 7, 10, 7, 7, 7, 7 },*/
1834 { 3, 3, 3, 3, 3, 3 },
1835 { 25, 10, 10, 20, 25, 10 },
1836 /* new limit values for the six attributes by Amy */
1837 { STR19(19), 16, 21, 18, 19, 19 },
1838 /* Init Lower Higher */
1839 { 13, 0, 0, 10, 4, 0 }, /* Hit points */
1840 { 4, 0, 0, 1, 0, 1 },16, /* Energy */
1841 10, 5, -2, 4, 10, A_INT
, SPE_HASTE_SELF
, -4, 25
1844 { {"Firefighter", 0}, {
1845 {"Hazard Trainee", 0},
1846 {"Brigade Runner", 0},
1847 {"Watercannon User", 0},
1848 {"Extinguisher", 0},
1849 {"Forest Fire Specialist", 0},
1850 {"Anti-Flame Fighter", 0},
1852 {"Flash Fire Deleter", 0},
1853 {"Eternal Firefighter", 0} },
1854 "Prometheus", "Thor", "Arson", /* Fire */
1855 "Fir", "Fire-Brigade Base", "Smokey Forest",
1856 PM_FIREFIGHTER
, NON_PM
, PM_UNDEAD_FIREFIGHTER
, NON_PM
, PM_LITTLE_DOG
,
1857 PM_SMOKEY
, PM_ATTENDANT
, PM_EDDIE_THE_PYRO
, PM_TEAM_FORTRESS_PYRO
,
1858 PM_FIRE_ELEMENTAL
, PM_SALAMANDER
, S_ELEMENTAL
, S_LIZARD
,
1860 ART_FIRE_BRIGADE_REEL
,
1861 MH_HUMAN
|MH_ELF
|MH_DWARF
|MH_GNOME
|MH_HOBBIT
|MH_VAMPIRE
|MH_WERE
|MH_ORC
|
1862 ROLE_MALE
|ROLE_FEMALE
|ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
1863 /* Str Int Wis Dex Con Cha */ /* Direct copy from Wizard */
1864 /*{ 7, 10, 7, 7, 7, 7 },*/
1865 { 3, 3, 3, 3, 3, 3 },
1866 { 10, 30, 10, 20, 20, 10 },
1867 /* new limit values for the six attributes by Amy */
1868 { STR19(21), 17, 19, 18, 19, 20 },
1869 /* Init Lower Higher */
1870 { 15, 0, 0, 8, 1, 0 }, /* Hit points */
1871 { 15, 3, 0, 2, 0, 3 },12, /* Energy */
1873 2, 10, A_INT
, SPE_TELEPORT_AWAY
, -4, 30 /* From old role.c */
1876 { { "Fjorde", 0 }, {
1877 { "Fishtank Dipper", 0 },
1878 { "Nibble Arouser", 0 },
1879 { "Pondseeker", 0 },
1880 { "Submarine Crew", 0 },
1881 { "Flood Lover", 0 },
1882 { "Player's Competitor", 0 },
1883 { "Deep Biter", 0 },
1884 { "Monsterfish Fighter", 0 },
1885 { "First Place Challenger", 0 } },
1886 "Cheep Cheep", "Blubber", "Boss Bass", /* Super Mario */
1887 "Fjo", "Beginner's Aquarium", "The Self-Refilling Fishtank",
1888 PM_FJORDE
, NON_PM
, PM_UNDEAD_FJORDE
, NON_PM
, PM_FLYING_BLOODFISH
,
1889 PM_UNSEEN_RACE_LEADER
, PM_PREP
, PM_BUSSBITE__THE_GIANT_FISH
, PM_FJORDE_S_WET_DREAM
,
1890 PM_LEWD_KRAKEN
, PM_WHITE_WHALE
, S_EEL
, S_FLYFISH
,
1891 ART_SCOOBA_COOBA
, /* cloak of magic resistance that protects items from water and lets you swim in lava */
1892 MH_HUMAN
|MH_ELF
|MH_DWARF
|MH_GNOME
|MH_HOBBIT
|MH_VAMPIRE
|MH_WERE
|MH_ORC
|
1893 ROLE_MALE
|ROLE_FEMALE
|ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
1894 /* Str Int Wis Dex Con Cha */
1895 { 3, 3, 3, 3, 3, 3 },
1896 { 25, 20, 10, 20, 15, 10 },
1897 /* new limit values for the six attributes by Amy */
1898 { 18, 15, 16, 22, 20, 18 },
1899 /* Init Lower Higher */
1900 { 18, 0, 0, 5, 3, 0 }, /* Hit points */
1901 { 1, 1, 0, 1, 0, 1 },16, /* Energy */
1903 4, 8, A_INT
, SPE_SWIMMING
, -4, 40
1906 { {"Flame Mage", 0}, {
1907 {"Spark", 0}, /* WAC was Igniter */
1909 {"Broiler", 0}, /* WAC was Igniter */
1910 {"Combuster", 0}, /* WAC was Torcher */
1912 {"Scorcher", 0}, /* WAC was Torcher */
1914 {"Disintegrator", 0}, /* WAC was Incinerator */
1915 {"Flame-Master", 0} },
1916 "Earth", "Fire", "Ash", /* Special */
1917 "Fla", "the great Circle of Flame", "the Water Mage's Cave",
1918 PM_FLAME_MAGE
, NON_PM
, PM_UNDEAD_FLAME_MAGE
, NON_PM
, PM_HELL_HOUND_PUP
,
1919 PM_HIGH_FLAME_MAGE
, PM_IGNITER
, PM_WATER_MAGE
, PM_AIR_SPIRIT
,
1920 PM_WATER_ELEMENTAL
, PM_RUST_MONSTER
, S_ELEMENTAL
, S_RUSTMONST
,
1922 ART_FIREWALL
, ART_FIRE_BRAND
,
1924 ART_CANDLE_OF_ETERNAL_FLAME
,
1925 MH_HUMAN
|MH_ELF
|MH_DWARF
|MH_GNOME
|MH_HOBBIT
|MH_VAMPIRE
|MH_WERE
|MH_ORC
|
1926 ROLE_MALE
|ROLE_FEMALE
|ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
1927 /* Str Int Wis Dex Con Cha */ /* Direct copy from Wizard */
1928 /*{ 7, 10, 7, 7, 7, 7 },*/
1929 { 3, 3, 3, 3, 3, 3 },
1930 { 10, 30, 10, 20, 20, 10 },
1931 /* new limit values for the six attributes by Amy */
1932 { 15, 20, 18, 14, 14, 16 },
1933 /* Init Lower Higher */
1934 { 15, 0, 0, 8, 1, 0 }, /* Hit points */
1935 { 15, 3, 0, 2, 0, 3 },12, /* Energy */
1937 2, 10, A_INT
, SPE_FIREBALL
, -4, 100 /* From old role.c */
1940 { {"Form Changer", 0}, {
1941 {"Balanced Doppelganger", 0},
1942 {"Fluctuated Controller", 0},
1943 {"Restricted Polymorpher", 0},
1944 {"Armor Preserver", 0},
1945 {"Shuddering Vibrator", 0},
1946 {"Skillful Shifter", 0},
1947 {"Master of Transmogrifying", 0},
1948 {"Polyself Hero", 0},
1949 {"Reality Creator", 0} },
1950 "Polypiling", "Monster Polymorphing", "Self-Polymorph",
1951 "For", "Everchanging Automata", "Unmappable Level",
1952 PM_FORM_CHANGER
, NON_PM
, PM_UNDEAD_FORM_CHANGER
, NON_PM
, PM_CHAMELEON
,
1953 PM_JONADAB
, PM_SHIFTER
, PM_PINOBOT
, PM_THERESA_FLAUSCHEBUESCHEL_MAY
,
1954 PM_GENETIC_ENGINEER
, PM_NIGHTINGALE
, S_QUANTMECH
, S_LIZARD
,
1956 MH_HUMAN
|MH_ELF
|MH_DWARF
|MH_GNOME
|MH_HOBBIT
|MH_VAMPIRE
|MH_WERE
|MH_ORC
|
1957 ROLE_MALE
|ROLE_FEMALE
| ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
1958 /* Str Int Wis Dex Con Cha */
1959 /*{ 13, 13, 13, 9, 13, 7 },*/
1960 { 3, 3, 3, 3, 3, 3 },
1961 { 16, 16, 17, 17, 16, 16 },
1962 /* new limit values for the six attributes by Amy */
1963 { 18, 20, 16, 18, 16, 15 },
1964 /* Init Lower Higher */
1965 { 10, 0, 0, 2, 2, 0 }, /* Hit points */
1966 { 30, 0, 0, 10, 0, 5 }, 16, /* Energy */
1967 10, 8, 0, 5, 13, A_INT
, SPE_POLYMORPH
, -4, 100
1970 { {"Foxhound Agent", 0}, {
1979 {"Solid Snake", 0}},
1980 "Colonel Campbell", "Deepthroat", "The Patriots", /* probably some TV show or movie? */
1981 "Fox", "Special Agents Bureau", "Oberon HQ",
1982 PM_FOXHOUND_AGENT
, NON_PM
, PM_UNDEAD_FOXHOUND_AGENT
, NON_PM
, PM_SOLDIER
,
1983 PM_OTACON
, PM_SUPER_WARRIOR
, PM_OBERON_PRINCIPAL
, PM_OBERON_WORKER
,
1984 PM_BALLISTIC_TURRET
, PM_ANTI_ELBERETH_OPERATIVE
, S_TURRET
, S_RUBMONST
,
1987 MH_HUMAN
|MH_ELF
|MH_DWARF
|MH_GNOME
|MH_HOBBIT
|MH_VAMPIRE
|MH_WERE
|MH_ORC
| ROLE_MALE
|ROLE_FEMALE
| ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
1988 /* Str Int Wis Dex Con Cha */
1989 /*{ 10, 7, 7, 7, 12, 7 },*/
1990 { 3, 3, 3, 3, 3, 3 },
1991 { 22, 22, 15, 15, 22, 4 },
1992 /* new limit values for the six attributes by Amy */
1993 { STR18(100), 14, 16, 18, 18, 18 },
1994 /* Init Lower Higher */
1995 { 20, 0, 0, 8, 2, 0 }, /* Hit points */
1996 { 2, 0, 0, 1, 0, 1 },10, /* Energy */
1997 0, 10,-2, 0, 9, A_WIS
, SPE_RESTORE_ABILITY
, -4, 20
2000 {"Tetris Player", 0},
2001 {"Boulderdash Player", 0},
2002 {"Super Mario Addict", 0},
2003 {"FIFA Sports Gamer", 0},
2004 {"Need For Speed Racer", 0},
2005 {"owner of a dozen consoles", 0},
2006 {"Wii Champion", 0},
2007 {"RROD Defeater", 0},
2008 {"Playstation Master", 0}},
2009 "Nintendo", "Microsoft", "Sony", /* gaming console producers */
2010 "Gam", "Console Hall", "Bowser's Airship",
2011 PM_GAMER
, NON_PM
, PM_UNDEAD_GAMER
, NON_PM
, NON_PM
,
2012 PM_THE_ANGRY_VIDEO_GAME_NERD
, PM_HACKER
, PM_BOWSER
, PM_PRINCESS_KIDNAPPING_DRAGON
,
2013 PM_RED_DRAGON
, PM_GREEN_DRAGON
, S_DRAGON
, S_DRAGON
,
2016 MH_HUMAN
|MH_ELF
|MH_DWARF
|MH_GNOME
|MH_HOBBIT
|MH_VAMPIRE
|MH_WERE
|MH_ORC
| ROLE_MALE
|ROLE_FEMALE
|
2017 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
2018 /* Str Int Wis Dex Con Cha */
2019 /*{ 10, 10, 10, 8, 9, 7 },*/
2020 { 3, 3, 3, 3, 3, 3 },
2021 { 8, 20, 20, 40, 7, 5 },
2022 /* new limit values for the six attributes by Amy */
2023 { STR19(19), 17, 15, 22, 20, 19 },
2024 /* Init Lower Higher */
2025 { 18, 0, 0, 8, 1, 0 }, /* Hit points */
2026 { 20, 4, 0, 1, 0, 2 },20, /* Energy */
2027 10, 3,-3, 2, 10, A_WIS
, SPE_GODMODE
, -4, 75
2030 { {"Gang Scholar", 0}, {
2031 {"Bullying Victim", 0},
2032 {"Mobfer", 0}, /* german for "bullying victim" */
2033 {"Pupil Without Pocket Money", 0},
2034 {"Bang Gang's Punching Bag", 0},
2035 {"Hussy Club Doormat", 0},
2036 {"Teacher Friend", 0},
2037 {"Victim Turned Executioner", 0},
2038 {"Headhunter Spokesman", "Headhunter Spokeswoman"},
2039 {"One Who Will Defeat Anna", 0} },
2040 "Mr. Maradonna", "_Ms. Unfortunate Forest", "_Ms. Storm",
2041 "Sco", "Superschool HQ", "Hussy Club Branch Office",
2042 PM_GANG_SCHOLAR
, NON_PM
, PM_UNDEAD_GANG_SCHOLAR
, NON_PM
, PM_SUPERSCHOOL_SPEAKER
,
2043 PM_HANS_WALT
, PM_THUG
, PM_HUSSY_JILL
, PM_VELCRO_BITCH
,
2044 PM_POLINA
, PM_JES_SIKA
, S_JELLY
, S_KOBOLD
,
2046 MH_HUMAN
|MH_ELF
|MH_DWARF
|MH_GNOME
|MH_HOBBIT
|MH_VAMPIRE
|MH_WERE
|MH_ORC
|
2047 ROLE_MALE
|ROLE_FEMALE
| ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
2048 /* Str Int Wis Dex Con Cha */
2049 /*{ 13, 13, 13, 9, 13, 7 },*/
2050 { 3, 3, 3, 3, 3, 3 },
2051 { 15, 15, 15, 15, 25, 15 },
2052 /* new limit values for the six attributes by Amy */
2053 { STR18(100), 18, 18, 18, 18, 18 },
2054 /* Init Lower Higher */
2055 { 14, 0, 0, 5, 5, 0 }, /* Hit points */
2056 { 7, 0, 0, 3, 0, 3 }, 14, /* Energy */
2057 10, 6, -4, 4, 6, A_INT
, SPE_MANA_BOLT
, -4, 100
2060 { {"Gangster", 0}, {
2062 {"Pickpocketer", 0},
2063 {"Street Criminal",0},
2065 {"Wanted Criminal", 0},
2067 {"Mafia Member", 0},
2068 {"The Don's Right Hand", 0},
2070 "Claude Speed", "Carl CJ Johnson", "Tommy Vercetti", /* Grand Theft Auto */
2071 "Gan", "Gang Headquarters", "the enemy gang's hideout",
2072 PM_GANGSTER
, NON_PM
, PM_UNDEAD_GANGSTER
, NON_PM
, PM_PILE_OF_COPPER_COINS
,
2073 PM_DAVE
, PM_FELLOW_GANGSTER
, PM_AMY_BLUESCREENOFDEATH
, PM_AMY_BSOD
,
2074 PM_CUNTGUN_TROOPER
, PM_RIFLEMAN
, S_HUMAN
, S_HUMAN
,
2076 MH_HUMAN
|MH_ELF
|MH_DWARF
|MH_GNOME
|MH_HOBBIT
|MH_VAMPIRE
|MH_WERE
|MH_ORC
|
2077 ROLE_MALE
|ROLE_FEMALE
|ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
2078 /* Str Int Wis Dex Con Cha */
2079 /*{ 10, 7, 7, 7, 13, 6 },*/
2080 { 3, 3, 3, 3, 3, 3 },
2081 { 20, 20, 10, 20, 20, 10 },
2082 /* new limit values for the six attributes by Amy */
2083 { STR18(100), 14, 10, 18, 18, 18 },
2084 /* Init Lower Higher */
2085 { 12, 0, 0, 8, 0, 0 }, /* Hit points */
2086 { 3, 0, 0, 1, 0, 1 },10, /* Energy */
2087 -10, 5, 0, 2, 10, A_INT
, SPE_CONFUSE_MONSTER
, -4, 30
2092 {"BASIC Programmer", "BASIC Programmeress"},
2093 {"C Programmer", "C Programmeress"},
2094 {"Hacker", "Hackeress"},
2095 {"NetHacker", "NetHackeress"},
2096 {"Nethack Programmer", "Nethack Programmeress"},
2097 {"he who uses", "she who uses"},
2098 {"he who knows", "she who knows"},
2099 {"he who learns", "she who learns"} },
2100 "UNIX", "the PDP-7", "VMS", /* Computerian */
2101 "Gee", "the Development Team's location", "the Microsoft headquarter",
2102 PM_GEEK
, NON_PM
, PM_UNDEAD_GEEK
, NON_PM
, NON_PM
,
2103 PM_THE_DEV_TEAM
, PM_HACKER
, PM_BILL_GATES
, PM_GILL_BATES
,
2104 PM_BUG
, PM_PHANTOM
, S_XAN
, S_PUDDING
,
2106 ART_DELUDER
, ART_MIRRORBRIGHT
,
2108 ART_NETHACK_SOURCES
,
2109 MH_HUMAN
|MH_ELF
|MH_DWARF
|MH_GNOME
|MH_HOBBIT
|MH_VAMPIRE
|MH_WERE
|MH_ORC
| ROLE_MALE
|ROLE_FEMALE
|
2110 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
2111 /* Str Int Wis Dex Con Cha */
2112 /*{ 10, 10, 10, 8, 9, 7 },*/
2113 { 3, 3, 3, 3, 3, 3 },
2114 { 30, 15, 15, 10, 20, 10 },
2115 /* new limit values for the six attributes by Amy */
2116 { STR18(70), 19, 17, 19, 14, 16 },
2117 /* Init Lower Higher */
2118 { 18, 0, 0, 8, 1, 0 }, /* Hit points */
2119 { 20, 4, 0, 1, 0, 2 },20, /* Energy */
2120 10, 3,-3, 2, 10, A_WIS
, SPE_CURE_SICKNESS
, -4, 50
2123 { { "Genderstarist", 0 }, {
2124 { "Asterisk User", 0 },
2125 { "Language Faker", 0 },
2126 { "Speech Policer", 0 },
2127 { "Aggressive Advocate", 0 },
2129 { "Placation Striker", 0 },
2130 { "Inside Squeezer", 0 },
2131 { "Truth Minister", 0 },
2132 { "Inclusive Spacer", 0 } },
2133 "Buergerinnen und Buerger", "Buergerlnnen", "Buerger*innen", /* some weird language that pretends to be German; on some fonts "I" and "l" look the same, therefore the neutral god is spelled like that on purpose :P */
2134 "Gen", "Speech Police Headquarters", "Frisbitch Radio Station",
2135 PM_GENDERSTARIST
, NON_PM
, PM_UNDEAD_GENDERSTARIST
, NON_PM
, PM_GENDERSTARIST
,
2136 PM_XYZ___
, PM_VERY_MINDLESS_THRALL
, PM_SPEECH_ASSOCIATION_BOSS
, PM_STARCLEANER
,
2137 PM_EMERA
, PM_USENET_TROLL
, S_WALLMONST
, S_TURRET
,
2138 ART_FLAGELLATOR
, /* whip-class weapon, 1 in 5000 chance to polymorph you into a M2_NEUTER, doesn't drop upon poly */
2139 MH_HUMAN
|MH_ELF
|MH_DWARF
|MH_GNOME
|MH_HOBBIT
|MH_VAMPIRE
|MH_WERE
|MH_ORC
|
2140 ROLE_MALE
|ROLE_FEMALE
|ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
2141 /* Str Int Wis Dex Con Cha */
2142 { 3, 3, 3, 3, 3, 3 },
2143 { 10, 5, 5, 70, 5, 5 },
2144 /* new limit values for the six attributes by Amy */
2145 { 12, 6, 6, 15, 12, 4 },
2146 /* Init Lower Higher */
2147 { 5, 0, 0, 1, 1, 0 }, /* Hit points */
2148 { 8, 2, 0, 4, 0, 5 },8, /* Energy */
2150 0, 5, A_INT
, SPE_BERSERK
, -4, 50
2153 { {"Gladiator", 0}, {
2162 {"Centurion", 0} }, /* sorry Fyr, but Champion was just way too generic of a title. --Amy */
2163 "Sulla", "Cicero", "Catilina", /* Ancient Rome */
2164 "Gla", "Arena Bloodworks", "Colosseum",
2165 PM_GLADIATOR
, NON_PM
, PM_UNDEAD_GLADIATOR
, NON_PM
, NON_PM
,
2166 PM_TUTOR
, PM_ATTENDANT
, PM_THE_CHAMPION_OF_POMPEJI
, PM_EMPEROR_NERO
,
2167 PM_WEREPANTHER
, PM_MINOTAUR
, S_HUMAN
, S_QUADRUPED
,
2169 MH_HUMAN
|MH_ELF
|MH_DWARF
|MH_GNOME
|MH_HOBBIT
|MH_VAMPIRE
|MH_WERE
|MH_ORC
|
2170 ROLE_MALE
|ROLE_FEMALE
| ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
2171 /* Str Int Wis Dex Con Cha */
2172 /*{ 8, 7, 7, 8, 8, 7 },*/
2173 { 3, 3, 3, 3, 3, 3 },
2174 { 20, 15, 10, 20, 25, 10 },
2175 /* new limit values for the six attributes by Amy */
2176 { STR19(19), 16, 12, 18, 20, 17 },
2177 /* Init Lower Higher */
2178 { 12, 0, 0, 8, 4, 0 }, /* Hit points */
2179 { 1, 0, 0, 1, 0, 1 },12, /* Energy */
2180 10, 8, 0, 2, 9, A_INT
, SPE_CAUSE_FEAR
, -4, 20
2184 {"Fanfic Reader", 0},
2185 {"Saint Preps Academy Alumnus", "Saint Preps Academy Alumna"},
2186 {"Badfic Writer", 0},
2187 {"Emo Boy", "Emo Girl"},
2188 {"Blatant Troll", 0},
2189 {"Motherfucker", 0},
2190 {"Author Avatar", 0},
2192 {"Marty Stu", "Mary Sue"} },
2193 "_B'loody Mary", "_Ebony Dark'ness", "Darth Valer", /* taken from a fanfic */
2194 "Gof", "Hogwarts Castle", "the forbidden forest",
2195 PM_GOFF
, NON_PM
, PM_UNDEAD_GOFF
, NON_PM
, NON_PM
,
2196 PM_SNAP_AND_LOOPIN
, PM_PREP
, PM_TARA_GILESBIE
, PM_INADVERTENT_TROLL
,
2197 NON_PM
, NON_PM
, S_VAMPIRE
, S_ZOMBIE
,
2198 ART_GOFFIC_BACKPACK
,
2199 MH_HUMAN
|MH_ELF
|MH_DWARF
|MH_GNOME
|MH_HOBBIT
|MH_VAMPIRE
|MH_WERE
|MH_ORC
|
2200 ROLE_MALE
|ROLE_FEMALE
| ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
2201 /* Str Int Wis Dex Con Cha */
2202 /*{ 13, 13, 13, 9, 13, 7 },*/
2203 { 3, 3, 3, 3, 3, 3 },
2204 { 25, 5, 15, 25, 25, 5 },
2205 /* new limit values for the six attributes by Amy */
2206 { 14, 17, 12, 15, 8, 18 },
2207 /* Init Lower Higher */
2208 { 12, 0, 0, 4, 2, 0 }, /* Hit points */
2209 { 8, 0, 0, 1, 0, 2 },12, /* Energy */
2210 10, 9, 2, 1, 10, A_INT
, SPE_CURE_HALLUCINATION
, -4, 100
2213 { {"Goldminer", 0}, {
2214 {"Mining Slave", 0},
2216 {"Pick Wielder", 0},
2218 {"Shaft Climber", 0},
2220 {"Gemstone Hoarder", 0},
2221 {"Retired Goldrusher", 0},
2223 "Aurum", "Argentum", "Antimony",
2224 "Gol", "The Gnome King's Caverns", "Lareth's Cave",
2225 PM_GOLDMINER
, NON_PM
, PM_UNDEAD_GOLDMINER
, NON_PM
, NON_PM
,
2226 PM_UBER_RUGGO
, PM_ATTENDANT
, PM_LARETH
, PM_GLARETH
,
2227 PM_DROW
, PM_OGRE
, S_OGRE
, S_OGRE
,
2228 ART_PICK_OF_FLANDAL_STEELSKIN
,
2229 MH_HUMAN
|MH_ELF
|MH_DWARF
|MH_GNOME
|MH_HOBBIT
|MH_VAMPIRE
|MH_WERE
|MH_ORC
|
2230 ROLE_MALE
|ROLE_FEMALE
| ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
2231 /* Str Int Wis Dex Con Cha */
2232 /* { 7, 10, 10, 7, 7, 7 },*/
2233 { 3, 3, 3, 3, 3, 3 },
2234 { 20, 20, 20, 10, 20, 10 },
2235 /* new limit values for the six attributes by Amy */
2236 { 18, 20, 20, 18, 16, 14 },
2237 /* Init Lower Higher */
2238 { 14, 0, 0, 4, 1, 0 }, /* Hit points */
2239 { 6, 0, 0, 1, 0, 1 },14, /* Energy */
2240 10, 5, 0, 2, 10, A_INT
, SPE_DIG
, -4, 20
2243 { {"Graduate", 0}, {
2244 {"Junior Assistant", 0},
2245 {"Ass Assistant", 0},
2246 {"Mean Assistant", 0},
2247 {"College Graduate", 0},
2248 {"University Traveler", 0},
2249 {"Junior Professor", 0},
2250 {"Experimental Scientist", 0},
2252 {"Test Row Developer", 0} },
2253 "Jobs", "Wozniak", "Gates", /* geek */
2254 "Gra", "university campus", "development hell",
2255 PM_GRADUATE
, NON_PM
, PM_UNDEAD_GRADUATE
, NON_PM
, NON_PM
,
2256 PM_UPPER_GRADUATE
, PM_HACKER
, PM_STUDENT_LEADER
, PM_STUDENT_ON_STRIKE
,
2257 PM_STUDENT_ASSISTANT
, PM_GREEN_PROSTITUTE
, S_HUMAN
, S_HUMAN
,
2259 ART_MASTER_BOOT_DISK
,
2260 MH_HUMAN
|MH_ELF
|MH_DWARF
|MH_GNOME
|MH_HOBBIT
|MH_VAMPIRE
|MH_WERE
|MH_ORC
| ROLE_MALE
|ROLE_FEMALE
|
2261 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
2262 /* Str Int Wis Dex Con Cha */
2263 /*{ 10, 10, 10, 8, 9, 7 },*/
2264 { 3, 3, 3, 3, 3, 3 },
2265 { 30, 15, 15, 10, 20, 10 },
2266 /* new limit values for the six attributes by Amy */
2267 { STR18(70), 19, 17, 19, 14, 16 },
2268 /* Init Lower Higher */
2269 { 18, 0, 0, 8, 1, 0 }, /* Hit points */
2270 { 20, 4, 0, 1, 0, 2 },20, /* Energy */
2271 10, 3,-3, 2, 10, A_WIS
, SPE_CURE_HALLUCINATION
, -4, 50
2274 { {"Grenadonin", 0}, {
2276 {"Realism Lover", 0},
2277 {"Dark Day Worshipper", 0},
2278 {"Opinion Decrier", 0},
2279 {"Creative Name Inventor", 0},
2280 {"Good Godparent", 0},
2281 {"Bullying Enabler", 0},
2282 {"Cataclysm Squatter", 0},
2283 {"Meme Machine", 0} },
2284 "_Margaret", "_Anaconda", "Aerschie-Miesie", /* Amy's nicknames in Half-Life, AHL and Counter-Strike */
2285 "Gre", "Pregnancy Den", "Chaotic Message Board",
2286 PM_GRENADONIN
, NON_PM
, PM_UNDEAD_GRENADONIN
, NON_PM
, PM_FEMALE_SAMURAI
,
2287 PM_YOUR_FUCKING_COLOR
, PM_UNFORTUNATE_VICTIM
, PM_AR_EL_GEE_MASTER
, PM_SUN_TORCH
,
2288 PM_AMNESIA_GRUE
, PM_PILE_OF_DEATH_COINS
, S_PUDDING
, S_WORM_TAIL
,
2290 ART_TEAM_FORTRESS_GL
,
2291 MH_HUMAN
|MH_ELF
|MH_DWARF
|MH_GNOME
|MH_HOBBIT
|MH_VAMPIRE
|MH_WERE
|MH_ORC
| ROLE_MALE
|ROLE_FEMALE
|
2292 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
2293 /* Str Int Wis Dex Con Cha */
2294 /*{ 10, 8, 7, 10, 17, 6 },*/
2295 { 3, 3, 3, 3, 3, 3 },
2296 { 30, 10, 8, 30, 14, 8 },
2297 /* new limit values for the six attributes by Amy */
2298 { STR18(100), 16, 18, 17, 18, 18 },
2299 /* Init Lower Higher */
2300 { 19, 0, 0, 8, 1, 0 }, /* Hit points */
2301 { 7, 0, 0, 1, 0, 1 },11, /* Energy */
2302 10, 10, 0, 0, 8, A_INT
, SPE_CLAIRVOYANCE
, -4, 20
2307 {"Revolver User", 0},
2309 {"Shotgun User", 0},
2310 {"Assault Rifle User", 0},
2311 {"Machine-Gunner", 0},
2312 {"Heavy Machine-Gunner", 0},
2314 {"BFG 9000 Master", 0}},
2315 0, 0, 0, /* chosen randomly from among the other roles */
2316 "Gun", "Sniper Range", "Military Airfield",
2317 PM_GUNNER
, NON_PM
, PM_UNDEAD_GUNNER
, NON_PM
, PM_EVASIVE_SNIPER
,
2318 PM_TOP_GUNNER
, PM_SUPER_WARRIOR
, PM_YET_ANOTHER_GUN_NUT
, PM_HIGHWAY_SHARPSHOOTER
,
2319 PM_FEAROW
, PM_SPECTRE
, S_BAT
, S_GHOST
,
2320 ART_CARBON_NANOTUBE_SUIT
,
2321 MH_HUMAN
|MH_ELF
|MH_DWARF
|MH_GNOME
|MH_HOBBIT
|MH_VAMPIRE
|MH_WERE
|MH_ORC
|
2322 ROLE_MALE
|ROLE_FEMALE
|ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
2323 /* Str Int Wis Dex Con Cha */
2324 /*{ 10, 7, 7, 7, 13, 6 },*/
2325 { 3, 3, 3, 3, 3, 3 },
2326 { 20, 20, 10, 20, 20, 10 },
2327 /* new limit values for the six attributes by Amy */
2328 { STR19(20), 16, 12, 20, 18, 16 },
2329 /* Init Lower Higher */
2330 { 12, 0, 0, 8, 0, 0 }, /* Hit points */
2331 { 3, 0, 0, 1, 0, 1 },10, /* Energy */
2332 -10, 5, 0, 2, 10, A_INT
, SPE_ANTI_DISINTEGRATION
, -4, 10
2335 { {"Half Baked", 0}, {
2337 {"Bloody Novice", 0},
2339 {"Pupil of Gravel", 0},
2340 {"Pupil of Fluids", 0},
2341 {"Pupil of Trash", 0},
2342 {"Pupil of Blows", 0},
2343 {"Pupil of Heat", 0},
2344 {"Self-Appointed Master", 0} },
2345 "_Nuwa", "Pangu", "Fuxi", /* Chinese */
2346 "Hal", "the Monastery of Chan-Sune", "the Monastery of the Earth-Lord",
2347 PM_HALF_BAKED
, NON_PM
, PM_UNDEAD_HALF_BAKED
, NON_PM
, NON_PM
,
2348 PM_GRAND_MASTER
, PM_ABBOT
, PM_MASTER_KAEN
, PM_KASTER_MAEN
,
2349 PM_EARTH_ELEMENTAL
, PM_XORN
, S_ELEMENTAL
, S_XORN
,
2351 ART_GAUNTLETS_OF_DEFENSE
, ART_WHISPERFEET
,
2353 ART_EYES_OF_THE_HALF_BAKED_WOR
,
2354 MH_HUMAN
|MH_ELF
|MH_DWARF
|MH_GNOME
|MH_HOBBIT
|MH_VAMPIRE
|MH_WERE
|MH_ORC
| ROLE_MALE
|ROLE_FEMALE
|
2355 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
2356 /* Str Int Wis Dex Con Cha */
2357 /*{ 10, 7, 8, 8, 7, 7 },*/
2358 { 3, 3, 3, 3, 3, 3 },
2359 { 25, 10, 20, 20, 15, 10 },
2360 /* new limit values for the six attributes by Amy */
2361 { STR18(100), 14, 20, 18, 14, 18 },
2362 /* Init Lower Higher */
2363 { 17, 0, 0, 8, 1, 0 }, /* Hit points */
2364 { 8, 2, 0, 2, 0, 2 },10, /* Energy */
2365 10, 8,-2, 2, 20, A_WIS
, SPE_RESTORE_ABILITY
, -4, 50
2374 {"Medicus ossium", "Medica ossium"},
2376 {"Magister", "Magistra"},
2378 {"Chirurgeon", 0} },
2379 "_Athena", "Hermes", "Poseidon", /* Greek */
2380 "Hea", "the Temple of Epidaurus", "the Temple of Coeus",
2381 PM_HEALER
, NON_PM
, PM_UNDEAD_HEALER
, NON_PM
, NON_PM
,
2382 PM_HIPPOCRATES
, PM_ATTENDANT
, PM_CYCLOPS
, PM_PYLOPS
,
2383 PM_GIANT_RAT
, PM_SNAKE
, S_RODENT
, S_YETI
,
2385 ART_DELUDER
, ART_MIRRORBRIGHT
,
2387 ART_STAFF_OF_AESCULAPIUS
,
2388 MH_HUMAN
|MH_ELF
|MH_DWARF
|MH_GNOME
|MH_HOBBIT
|MH_VAMPIRE
|MH_WERE
|MH_ORC
| ROLE_MALE
|ROLE_FEMALE
|
2389 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
2390 /* Str Int Wis Dex Con Cha */
2391 /*{ 7, 7, 13, 7, 11, 16 },*/
2392 { 3, 3, 3, 3, 3, 3 },
2393 { 15, 20, 20, 15, 25, 5 },
2394 /* new limit values for the six attributes by Amy */
2395 { 12, 18, 21, 20, 14, 20 },
2396 /* Init Lower Higher */
2397 { 18, 0, 0, 8, 1, 0 }, /* Hit points */
2398 { 20, 4, 0, 1, 0, 2 },20, /* Energy */
2399 10, 3,-3, 2, 10, A_WIS
, SPE_CURE_SICKNESS
, -4, 50
2402 { {"Hedderjedi", 0}, {
2403 {"Lightsaber Youngling", 0},
2404 {"Inexperienced Padawan", 0},
2405 {"Experienced Padawan", 0},
2407 {"Skilled Jedi", 0},
2410 {"Grandmaster Jedi", 0},
2411 {"Supreme Master Jedi", 0} },
2412 "the Light Side", "the Force", "the Dark Side",
2413 "Hed", "the Jedi Temple", "the Outer Rim",
2414 PM_HEDDERJEDI
, NON_PM
, PM_UNDEAD_HEDDERJEDI
, NON_PM
, PM_LITTLE_DOG
,
2415 PM_THE_JEDI_MASTER
, PM_PADAWAN
, PM_LORD_SIDIOUS
, PM_LORD_INSIDIOUS
,
2416 PM_LASER_STORMTROOPER
, PM_STORMTROOPER
, S_HUMAN
, S_HUMAN
,
2417 ART_DEFINITE_LIGHTSABER
,
2418 MH_HUMAN
|MH_ELF
|MH_DWARF
|MH_GNOME
|MH_HOBBIT
|MH_VAMPIRE
|MH_WERE
|MH_ORC
|
2419 ROLE_MALE
|ROLE_FEMALE
|ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
2420 /* Str Int Wis Dex Con Cha */
2421 /*{ 10, 7, 14, 12, 10, 14 },*/
2422 { 3, 3, 3, 3, 3, 3 },
2423 { 30, 15, 15, 10, 20, 10 },
2424 /* new limit values for the six attributes by Amy */
2425 { STR18(100), 18, 20, 20, 18, 20 },
2426 /* Init Lower Higher */
2427 { 20, 4, 0, 8, 2, 4 }, /* Hit points */
2428 { 5, 4, 0, 1, 0, 4 },10, /* Energy */
2430 2, 10, A_INT
, SPE_CHARGING
, -4, 40
2434 {"Annoying Guy", "Annoying Girl",},
2435 {"Nasty Fucker", "Nasty Bitch",},
2436 {"Teaser Displeaser", 0},
2437 {"Perfume Bomb", 0},
2438 {"Stinking Socks Wearer", 0},
2439 {"Drum Stint Reluctant", 0},
2440 {"Odorous Uncle", "Odorous Aunt"},
2441 {"Clicker Money Thief", 0},
2442 {"Anna's Personal Bodyguard", 0} },
2443 "_Madeleine", "_Sofia", "_Wendy", /* hussy names from pager.c */
2444 "Hus", "Hussy Club Secret Office", "Walt's Crib",
2445 PM_HUSSY
, NON_PM
, PM_UNDEAD_HUSSY
, NON_PM
, PM_ARVOGENIC_TOPMODEL
,
2446 PM_HUSSY_LARISSA
, PM_MODEL
, PM_GREAT_CORNER_HARD
, PM_POLITICALLY_LEFT_GUENTER
,
2447 PM_SUPERSCHOOL_SPEAKER
, PM_TIE_FIGHTER
, S_HUMAN
, S_DEMON
,
2449 MH_HUMAN
|MH_ELF
|MH_DWARF
|MH_GNOME
|MH_HOBBIT
|MH_VAMPIRE
|MH_WERE
|MH_ORC
|
2450 ROLE_MALE
|ROLE_FEMALE
| ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
2451 /* Str Int Wis Dex Con Cha */
2452 /*{ 13, 13, 13, 9, 13, 7 },*/
2453 { 3, 3, 3, 3, 3, 3 },
2454 { 15, 15, 10, 15, 25, 20 },
2455 /* new limit values for the six attributes by Amy */
2456 { STR18(100), 18, 12, 20, 19, 22 },
2457 /* Init Lower Higher */
2458 { 10, 0, 0, 5, 4, 0 }, /* Hit points */
2459 { 6, 0, 0, 3, 0, 4 }, 12, /* Energy */
2460 0, 5, 4, 5, 8, A_INT
, SPE_DETECT_FOOT
, -4, 100
2463 { {"Ice Mage", 0}, {
2464 {"Cooler", 0}, /* WAC was Chiller */
2465 {"Condenser", 0}, /* WAC was Chiller */
2468 {"Permafroster", 0}, /* WAC was Froster */
2469 {"Icer", 0}, /* WAC was Froster */
2471 {"Sublimer", 0}, /* WAC was Freezer */
2472 {"Ice-Master", 0} },
2473 "Air", "Frost", "Smoke", /* Special */
2474 "Ice", "the great Ring of Ice", "the Earth Mage's Cave",
2475 PM_ICE_MAGE
, NON_PM
, PM_UNDEAD_ICE_MAGE
, NON_PM
, PM_WINTER_WOLF_CUB
,
2476 PM_HIGH_ICE_MAGE
, PM_FROSTER
, PM_EARTH_MAGE
, PM_DIGGING_MAGE
,
2477 PM_RUST_MONSTER
, PM_XORN
, S_RUSTMONST
, S_XORN
,
2479 ART_DEEP_FREEZE
, ART_FROST_BRAND
,
2482 MH_HUMAN
|MH_ELF
|MH_DWARF
|MH_GNOME
|MH_HOBBIT
|MH_VAMPIRE
|MH_WERE
|MH_ORC
|
2483 ROLE_MALE
|ROLE_FEMALE
|ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
2484 /* Str Int Wis Dex Con Cha */ /* Direct copy from Wizard */
2485 /*{ 7, 10, 7, 7, 7, 7 },*/
2486 { 3, 3, 3, 3, 3, 3 },
2487 { 10, 30, 10, 20, 20, 10 },
2488 /* new limit values for the six attributes by Amy */
2489 { 15, 20, 18, 14, 14, 16 },
2490 /* Init Lower Higher */
2491 { 15, 0, 0, 8, 1, 0 }, /* Hit points */
2492 { 15, 3, 0, 2, 0, 3 },12, /* Energy */
2494 2, 10, A_INT
, SPE_CONE_OF_COLD
, -4, 100 /* From old role.c */
2497 { {"Intel Scribe", 0}, { /* scribe, but there were too many role names beginning with S */
2502 {"Permanent Magic Marker", 0},
2503 {"Portable Ink Container", 0},
2504 {"Scientific Scribe", 0},
2505 {"Well-trained Scribe", 0},
2506 {"Highest Order Scribe", 0}},
2507 "Bowditch", "Peabody", "Rothchild", /* Fallout 3 */
2508 "Scr", "Peaceful Quarters", "thief lair",
2509 PM_INTEL_SCRIBE
, NON_PM
, PM_UNDEAD_INTEL_SCRIBE
, NON_PM
, PM_LITTLE_DOG
,
2510 PM_MASTER_LIBRARIAN
, PM_ATTENDANT
, PM_VENTOS_EFFIGIL
, PM_PSEUDO_ELF_THIEF
,
2511 PM_ELVEN_MAGE
, PM_ELVEN_PRIEST
, S_HUMAN
, S_HUMAN
,
2514 MH_HUMAN
|MH_ELF
|MH_DWARF
|MH_GNOME
|MH_HOBBIT
|MH_VAMPIRE
|MH_WERE
|MH_ORC
|
2515 ROLE_MALE
|ROLE_FEMALE
|ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
2516 /* Str Int Wis Dex Con Cha */ /* Direct copy from Wizard */
2517 /*{ 7, 10, 7, 7, 7, 7 },*/
2518 { 3, 3, 3, 3, 3, 3 },
2519 { 10, 30, 10, 20, 20, 10 },
2520 /* new limit values for the six attributes by Amy */
2521 { 17, 20, 22, 19, 15, 18 },
2522 /* Init Lower Higher */
2523 { 15, 0, 0, 8, 1, 0 }, /* Hit points */
2524 { 15, 3, 0, 2, 0, 3 },12, /* Energy */
2526 2, 10, A_INT
, SPE_CHARGING
, -4, 100 /* From old role.c */
2530 {"Toilet Scrubber", 0},
2534 {"Maintenance Man", 0},
2535 {"Sanitation Freak", 0},
2536 {"Superintendent", 0},
2537 {"Property Manager", 0},
2539 "Grime", "Dog Shit", "Fag Butt", /* various forms of garbage - the latter is an actual term for "cigarette", you can stop whining about political correctness */
2540 "Jan", "Waste Disposal Car Pool", "Smoky Mountain",
2541 PM_JANITOR
, NON_PM
, PM_UNDEAD_JANITOR
, NON_PM
, PM_ROOMBA
,
2542 PM_EVRA_THE_MOP_LADY
, PM_SERVANT
, PM_VOMITANT_BUM
, PM_CIGARETTE_FAGGOT
,
2543 PM_OLOG_HAI
, PM_HUDDLY_PUDDING
, S_TROLL
, S_PUDDING
,
2545 ART_SUPERCLEAN_AWAYWIPER
, /* broom */
2546 MH_HUMAN
|MH_ELF
|MH_DWARF
|MH_GNOME
|MH_HOBBIT
|MH_VAMPIRE
|MH_WERE
|MH_ORC
| ROLE_MALE
|ROLE_FEMALE
|
2547 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
2548 /* Str Int Wis Dex Con Cha */
2549 /*{ 16, 7, 7, 15, 16, 6 },*/
2550 { 3, 3, 3, 3, 3, 3 },
2551 { 15, 15, 15, 20, 20, 15 },
2552 /* new limit values for the six attributes by Amy */
2553 { STR18(50), 17, 17, 19, 18, 18 },
2554 /* Init Lower Higher */
2555 { 16, 0, 0, 8, 2, 0 }, /* Hit points */
2556 { 8, 0, 0, 2, 0, 3 }, 14, /* Energy */
2557 10, 8, -1, 3, 10, A_INT
, SPE_POLYMORPH
, -4, 75
2564 //{"Jedi Apprentice", 0},
2565 {"Jedi Apprentice", 0},
2566 //{"Jedi Knight", 0},
2569 {"Jedi Master", 0} },
2570 "the Light Side", "the Force", "the Dark Side",
2571 "Jed", "the Jedi Temple", "the Outer Rim",
2572 PM_JEDI
, NON_PM
, PM_UNDEAD_JEDI
, NON_PM
, PM_LITTLE_DOG
,
2573 PM_THE_JEDI_MASTER
, PM_PADAWAN
, PM_LORD_SIDIOUS
, PM_LORD_INSIDIOUS
,
2574 PM_STORMTROOPER
, PM_LASER_STORMTROOPER
, S_HUMAN
, S_HUMAN
,
2575 ART_LIGHTSABER_PROTOTYPE
,
2576 MH_HUMAN
|MH_ELF
|MH_DWARF
|MH_GNOME
|MH_HOBBIT
|MH_VAMPIRE
|MH_WERE
|MH_ORC
|
2577 ROLE_MALE
|ROLE_FEMALE
|ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
2578 /* Str Int Wis Dex Con Cha */
2579 /*{ 10, 7, 14, 12, 10, 14 },*/
2580 { 3, 3, 3, 3, 3, 3 },
2581 { 30, 15, 15, 10, 20, 10 },
2582 /* new limit values for the six attributes by Amy */
2583 { STR18(100), 18, 20, 20, 18, 20 },
2584 /* Init Lower Higher */
2585 { 20, 4, 0, 8, 2, 4 }, /* Hit points */
2586 { 5, 4, 0, 1, 0, 4 },10, /* Energy */
2588 2, 10, A_INT
, SPE_CHARM_MONSTER
, -4, 40
2595 {"Funny Dude", "Funny Gal"},
2596 {"Laughing Muscle", 0},
2597 {"Lollerskater", 0},
2600 {"King's Personal Jester", 0}},
2601 "Barnum", "Bailey", "Shaco", /* ??? */
2602 "Jes", "The King's Exile", "Deepwater Shipyard",
2603 PM_JESTER
, NON_PM
, PM_UNDEAD_JESTER
, NON_PM
, PM_PRIEST
,
2604 PM_KING_CHESTER
, PM_UNFORTUNATE_VICTIM
, PM_LADY_ELLY
, PM_GOD_FORSAKEN_BITCH
,
2605 PM_DOPPELGANGER
, PM_TIGER
, S_QUADRUPED
, S_EYE
,
2606 ART_KING_S_STOLEN_CROWN
,
2607 MH_HUMAN
|MH_ELF
|MH_DWARF
|MH_GNOME
|MH_HOBBIT
|MH_VAMPIRE
|MH_WERE
|MH_ORC
|
2608 ROLE_MALE
|ROLE_FEMALE
|ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
2609 /* Str Int Wis Dex Con Cha */
2610 /*{ 10, 7, 7, 7, 13, 6 },*/
2611 { 3, 3, 3, 3, 3, 3 },
2612 { 13, 20, 13, 14, 20, 20 },
2613 /* new limit values for the six attributes by Amy */
2614 { 18, 14, 12, 20, 16, 19 },
2615 /* Init Lower Higher */
2616 { 12, 0, 0, 8, 0, 0 }, /* Hit points */
2617 { 3, 0, 0, 1, 0, 1 },10, /* Energy */
2618 0, 5, 0, 2, 10, A_INT
, SPE_DETECT_UNSEEN
, -4, 40
2622 {"Riding Apprentice", 0},
2625 {"Rein Controller", 0},
2627 {"Classic Cowboy", 0},
2629 {"Mounted Thunder", 0},
2630 {"Sunset Horseman", 0} },
2631 "Bill Shoemaker", "Lester Piggott", "John Velazquez", /* famous jockeys */
2632 "Joc", "Riding School", "Jack's Farm",
2633 PM_JOCKEY
, NON_PM
, PM_UNDEAD_JOCKEY
, NON_PM
, PM_PEGASUS
,
2634 PM_MIKE_SMITH
, PM_STUDENT
, PM_SIX_SHOOTER_JACK
, PM_GUN_COWBOY
,
2635 PM_VIPER_ARCHER
, PM_UNMOUNT_VIPER
, S_SNAKE
, S_CENTAUR
,
2637 ART_WEREBANE
, ART_GRAYSWANDIR
,
2639 ART_PENUMBRAL_LASSO
,
2640 MH_HUMAN
|MH_ELF
|MH_DWARF
|MH_GNOME
|MH_HOBBIT
|MH_VAMPIRE
|MH_WERE
|MH_ORC
|
2641 ROLE_MALE
|ROLE_FEMALE
| ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
2642 /* Str Int Wis Dex Con Cha */
2643 /* { 7, 10, 10, 7, 7, 7 },*/
2644 { 3, 3, 3, 3, 3, 3 },
2645 { 15, 15, 15, 30, 10, 15 },
2646 /* new limit values for the six attributes by Amy */
2647 { STR18(80), 18, 18, 24, 16, 20 },
2648 /* Init Lower Higher */
2649 { 12, 0, 0, 3, 2, 0 }, /* Hit points */
2650 { 6, 0, 0, 1, 0, 1 }, 16, /* Energy */
2651 10, 9, -4, 4, 16, A_INT
, SPE_HORSE_HOP
, -4, 30
2654 { {"Justice Keeper", 0}, {
2657 {"Sonicblastman", 0},
2664 {"Ultimate Justice Keeper", 0}},
2665 "Lawful Good", "True Neutral", "Chaotic Evil", /* Dungeons and Dragons */
2666 "Jus", "Trial Court Hall", "Robot Facilities",
2667 PM_JUSTICE_KEEPER
, NON_PM
, PM_UNDEAD_JUSTICE_KEEPER
, NON_PM
, PM_MONKEY
,
2668 PM_BIRDMAN
, PM_STARNOID
, PM_EVIL_ROBOT
, PM_SECURITRON_MKII
,
2669 PM_GREMLIN
, PM_TIN_GOLEM
, S_GREMLIN
, S_GOLEM
,
2670 ART_SUPREME_JUSTICE_KEEPER
, /* two-handed sword */
2671 MH_HUMAN
|MH_ELF
|MH_DWARF
|MH_GNOME
|MH_HOBBIT
|MH_VAMPIRE
|MH_WERE
|MH_ORC
| ROLE_MALE
|ROLE_FEMALE
| ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
2672 /* Str Int Wis Dex Con Cha */
2673 /*{ 13, 7, 14, 8, 10, 17 },*/
2674 { 3, 3, 3, 3, 3, 3 },
2675 { 15, 15, 15, 15, 20, 20 },
2676 /* new limit values for the six attributes by Amy */
2677 { STR18(50), 16, 19, 18, 18, 17 },
2678 /* Init Lower Higher */
2679 { 10, 0, 0, 4, 4, 0 }, /* Hit points */
2680 { 7, 5, 0, 3, 0, 2 },18, /* Energy */
2681 10, 1, -4, 1, 7, A_WIS
, SPE_SOLAR_BEAM
, -4, 50
2691 {"Cavalier", "Cavaliere"},
2692 {"Seignieur", "Dame"},
2694 "Lugh", "_Brigit", "Manannan Mac Lir", /* Celtic */
2695 "Kni", "Camelot Castle", "the Isle of Glass",
2696 PM_KNIGHT
, NON_PM
, PM_UNDEAD_KNIGHT
, NON_PM
, PM_PONY
,
2697 PM_KING_ARTHUR
, PM_PAGE
, PM_IXOTH
, PM_XIXOT
,
2698 PM_QUASIT
, PM_OCHRE_JELLY
, S_IMP
, S_JELLY
,
2700 ART_DRAGONBANE
, ART_DEMONBANE
,
2702 ART_MAGIC_MIRROR_OF_MERLIN
,
2703 MH_HUMAN
|MH_ELF
|MH_DWARF
|MH_GNOME
|MH_HOBBIT
|MH_VAMPIRE
|MH_WERE
|MH_ORC
| ROLE_MALE
|ROLE_FEMALE
| ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
2704 /* Str Int Wis Dex Con Cha */
2705 /*{ 13, 7, 14, 8, 10, 17 },*/
2706 { 3, 3, 3, 3, 3, 3 },
2707 { 30, 15, 15, 10, 20, 10 },
2708 /* new limit values for the six attributes by Amy */
2709 { STR18(100), 15, 17, 16, 19, 19 },
2710 /* Init Lower Higher */
2711 { 19, 0, 0, 8, 2, 0 }, /* Hit points */
2712 { 10, 4, 0, 1, 0, 2 },10, /* Energy */
2713 10, 8,-2, 0, 9, A_WIS
, SPE_TURN_UNDEAD
, -4, 40
2721 {"Helmsman", "Helmswoman"},
2726 "Erzulie Freda", "Marassa Jumeaux", "Papa Legba", /* Haitian Vodou */
2727 "Kor", "Queen Anne's Revenge", "Grotto of Souls",
2728 PM_KORSAIR
, NON_PM
, PM_UNDEAD_KORSAIR
, NON_PM
, NON_PM
,
2729 PM_BLACKBEARD
, PM_PIRATE_BROTHER
, PM_SPEARATHAN
, PM_SPEARFISH_OF_SORROW
,
2730 PM_GIANT_EEL
, PM_DRAUGR_ZOMBIE
, S_EEL
, S_ZOMBIE
,
2731 ART_PEARL_OF_WISDOM
,
2732 MH_HUMAN
|MH_ELF
|MH_DWARF
|MH_GNOME
|MH_HOBBIT
|MH_VAMPIRE
|MH_WERE
|MH_ORC
|
2733 ROLE_MALE
|ROLE_FEMALE
| ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
2734 /* Str Int Wis Dex Con Cha */
2735 /*{ 8, 7, 7, 8, 8, 7 },*/
2736 { 3, 3, 3, 3, 3, 3 },
2737 { 20, 15, 10, 20, 25, 10 },
2738 /* new limit values for the six attributes by Amy */
2739 { STR18(100), 18, 16, 18, 19, 19 },
2740 /* Init Lower Higher */
2741 { 10, 0, 0, 8, 1, 0 }, /* Hit points */
2742 { 1, 0, 0, 1, 0, 1 },12, /* Energy */
2743 10, 8, 0, 2, 9, A_INT
, SPE_CAUSE_FEAR
, -4, 30
2747 {"Cheap Sex Slave", 0},
2748 {"Kidnapped Beauty", 0},
2749 {"Sex Market Commodity", 0},
2752 {"Many-Times-Fucked", 0},
2753 {"Orgasm Bomber", 0},
2754 {"Men's Wet Dream", 0},
2755 {"Highest-Selling Wench", 0} },
2756 "_Ewa", "Lorskel", "Kaczynski", /* Polish names */
2757 "Kur", "Hardcore-O-Mania Brothel", "Shadow Government realm",
2758 PM_KURWA
, NON_PM
, PM_UNDEAD_KURWA
, NON_PM
, PM_JENNIFER
,
2759 PM_BIG_D
, PM_ATTENDANT
, PM_CASH_GREEDY_FINANCE_MINISTER
, PM_TAX_A_DRIVER
,
2760 PM_GIANT_MUMAK
, PM_INVISIBLE_CC
, S_BAT
, S_QUADRUPED
,
2761 ART_LORSKEL_S_INTEGRITY
,
2762 MH_HUMAN
|MH_ELF
|MH_DWARF
|MH_GNOME
|MH_HOBBIT
|MH_VAMPIRE
|MH_WERE
|MH_ORC
|
2763 ROLE_MALE
|ROLE_FEMALE
| ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
2764 /* Str Int Wis Dex Con Cha */
2765 /*{ 13, 13, 13, 9, 13, 7 },*/
2766 { 3, 3, 3, 3, 3, 3 },
2767 { 20, 15, 5, 15, 20, 25 },
2768 /* new limit values for the six attributes by Amy */
2769 { STR18(100), 18, 18, 19, 18, 25 },
2770 /* Init Lower Higher */
2771 { 15, 0, 0, 3, 2, 0 }, /* Hit points */
2772 { 7, 0, 0, 2, 0, 2 },12, /* Energy */
2773 10, 5, -3, 2, 4, A_INT
, SPE_MAKE_VISIBLE
, -4, 100
2776 { {"Ladiesman", 0}, {
2778 {"Mirror Looker", 0},
2779 {"Self-admirer", 0},
2780 {"Beauty Contest Competitor", 0},
2781 {"Women's Hero", 0},
2782 {"Chick Magnet", 0},
2784 {"Male Topmodel", 0},
2785 {"Sexiest Man Alive", 0}},
2786 "Hugh Hefner", "G-boy", "Arsene Lupin", /* famous people, I guess? */
2787 "Lad", "The Clubhouse", "dirty neighborhood",
2788 PM_LADIESMAN
, NON_PM
, PM_UNDEAD_LADIESMAN
, NON_PM
, NON_PM
,
2789 PM_MADAM_TEQUILA_THE_CLUBHOUSE_OWNER
, PM_MODEL
, PM_MR__UNCOOL
, PM_DUDE_WHO_THINKS_HE_S_COOL
,
2790 PM_ADULT_GENTLEMAN
, PM_FLYING_GUY
, S_JELLY
, S_PIERCER
,
2792 MH_HUMAN
|MH_ELF
|MH_DWARF
|MH_GNOME
|MH_HOBBIT
|MH_VAMPIRE
|MH_WERE
|MH_ORC
|
2793 ROLE_MALE
|ROLE_FEMALE
| ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
2794 /* Str Int Wis Dex Con Cha */
2795 /*{ 13, 13, 13, 9, 13, 7 },*/
2796 { 3, 3, 3, 3, 3, 3 },
2797 { 12, 30, 4, 12, 12, 30 },
2798 /* new limit values for the six attributes by Amy */
2799 { 16, 16, 18, 18, 14, 25 },
2800 /* Init Lower Higher */
2801 { 12, 0, 0, 4, 2, 0 }, /* Hit points */
2802 { 8, 0, 0, 1, 0, 2 },12, /* Energy */
2803 10, 9, 2, 1, 10, A_INT
, SPE_CHARM_MONSTER
, -4, 40
2806 { {"Librarian", 0}, {
2807 {"Intellectual", 0},
2808 {"Bestseller Reader", 0},
2812 {"Keeper of Rare Books", 0},
2813 {"Keeper of Valuable Books", 0},
2814 {"Magna Charta Keeper", 0},
2815 {"Keeper of Unique Books", 0}},
2816 "Leo Tolstoi", "Stephen Hawking", "H. P. Lovecraft", /* famous writers */
2817 "Lib", "Great Library", "Demonic Fire Pits",
2818 PM_LIBRARIAN
, NON_PM
, PM_UNDEAD_LIBRARIAN
, NON_PM
, NON_PM
,
2819 PM_MASTER_BOOKKEEPER
, PM_SERVANT
, PM_CRABBE_AND_GOYLE
, PM_TEAM_BULLIES
,
2820 PM_RED_DRAGON
, PM_PYROLISK
, S_DRAGON
, S_COCKATRICE
,
2823 MH_HUMAN
|MH_ELF
|MH_DWARF
|MH_GNOME
|MH_HOBBIT
|MH_VAMPIRE
|MH_WERE
|MH_ORC
| ROLE_MALE
|ROLE_FEMALE
|
2824 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
2825 /* Str Int Wis Dex Con Cha */
2826 /*{ 10, 10, 10, 8, 9, 7 },*/
2827 { 3, 3, 3, 3, 3, 3 },
2828 { 10, 30, 30, 10, 10, 10 },
2829 /* new limit values for the six attributes by Amy */
2830 { STR18(50), 19, 20, 18, 16, 20 },
2831 /* Init Lower Higher */
2832 { 18, 0, 0, 8, 1, 0 }, /* Hit points */
2833 { 20, 4, 0, 1, 0, 2 },20, /* Energy */
2834 10, 3,-3, 2, 10, A_WIS
, SPE_CURE_HALLUCINATION
, -4, 200
2837 { {"Locksmith", 0}, {
2840 {"Lock Breaker", 0},
2841 {"Lock Trickster", 0},
2844 {"Emergency Key Carrier", 0},
2845 {"Door Safety Assistant", 0},
2846 {"Supreme Lockpicker", 0} },
2847 "Nuada", "Dagda", "Morrigan", /* Celtic */
2848 "Loc", "Emergency Base", "Locked Room",
2849 PM_LOCKSMITH
, NON_PM
, PM_UNDEAD_LOCKSMITH
, NON_PM
, NON_PM
,
2850 PM_MASTER_OF_LOCKS
, PM_THUG
, PM_BURGLAR_ED
, PM_CRIMINAL_SCUMBAG
,
2851 PM_ELVEN_MASTER_ROGUE
, PM_COMING_THIEF
, S_HUMAN
, S_HUMAN
,
2854 MH_HUMAN
|MH_ELF
|MH_DWARF
|MH_GNOME
|MH_HOBBIT
|MH_VAMPIRE
|MH_WERE
|MH_ORC
| ROLE_MALE
|ROLE_FEMALE
|
2855 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
2856 /* Str Int Wis Dex Con Cha */
2857 /*{ 7, 7, 7, 10, 7, 6 },*/
2858 { 3, 3, 3, 3, 3, 3 },
2859 { 20, 10, 10, 30, 20, 10 },
2860 /* new limit values for the six attributes by Amy */
2861 { STR18(100), 18, 18, 24, 18, 18 },
2862 /* Init Lower Higher */
2863 { 15, 0, 0, 8, 1, 0 }, /* Hit points */
2864 { 3, 0, 0, 1, 0, 1 },11, /* Energy */
2865 10, 8, 0, 1, 9, A_INT
, SPE_KNOCK
, -4, 40
2870 {"Crazy Person", 0},
2871 {"Moon Worshipper",0},
2873 {"Shapeshifter", 0},
2874 {"Warped Person", 0},
2876 {"Asylum Escapee", 0},
2877 {"Master Shapeshifter", 0} },
2878 "Eluvian", "Moon", "Lycanthus", /* from an old SLASH version without extended magic */
2879 "Lun", "Wolfhowl Castle", "Slayer Domain",
2880 PM_LUNATIC
, NON_PM
, PM_UNDEAD_LUNATIC
, NON_PM
, NON_PM
,
2881 PM_DRIUD_THE_DRUID
, PM_ATTENDANT
, PM_BUFFY_THE_VAMPIRE_SLAYER
, PM_SIMON_BELMONT
,
2882 PM_SOLDIER
, PM_CAPTAIN
, S_HUMAN
, S_HUMAN
,
2884 MH_HUMAN
|MH_ELF
|MH_DWARF
|MH_GNOME
|MH_HOBBIT
|MH_VAMPIRE
|MH_WERE
|MH_ORC
|
2885 ROLE_MALE
|ROLE_FEMALE
|ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
2886 /* Str Int Wis Dex Con Cha */
2887 /*{ 10, 7, 7, 7, 13, 6 },*/
2888 { 3, 3, 3, 3, 3, 3 },
2889 { 20, 20, 10, 20, 20, 10 },
2890 /* new limit values for the six attributes by Amy */
2891 { STR19(20), 16, 14, 18, 20, 14 },
2892 /* Init Lower Higher */
2893 { 18, 0, 0, 8, 6, 0 }, /* Hit points */
2894 { 5, 0, 0, 3, 0, 3 },10, /* Energy */
2895 -10, 5, 0, 2, 10, A_INT
, SPE_GODMODE
, -4, 30
2898 { {"Mahou Shoujo", 0}, {
2901 {"Preparing for Exams", 0},
2902 {"High School Graduate", 0},
2903 {"Final Year Student", 0},
2904 {"University Newbie", 0},
2905 {"Bachelor of Art and Craft", 0},
2906 {"Jesuitic Studies PhD", 0},
2907 {"Marriage Counseling Professor", 0}},
2908 "_Queen Serenity", "_Angel Aphrodite", "_Queen Beryl", /* perhaps an anime or manga? */
2909 "Mah", "Streets of Tokyo", "Demonic Principal Office",
2910 PM_MAHOU_SHOUJO
, NON_PM
, PM_UNDEAD_MAHOU_SHOUJO
, NON_PM
, PM_KICKBOXING_GIRL
,
2911 PM_CELESTE
, PM_MODEL
, PM_PETTLER
, PM_MARIJA_THE_WENCH
,
2912 PM_LEGION_DEVIL_SERGEANT
, PM_LEGION_DEVIL_CAPTAIN
, S_DEMON
, S_IMP
,
2913 ART_SAINT_SOMETHING_FOUR_CRYST
,
2914 MH_HUMAN
|MH_ELF
|MH_DWARF
|MH_GNOME
|MH_HOBBIT
|MH_VAMPIRE
|MH_WERE
|MH_ORC
|
2915 ROLE_MALE
|ROLE_FEMALE
| ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
2916 /* Str Int Wis Dex Con Cha */
2917 /*{ 13, 13, 13, 9, 13, 7 },*/
2918 { 3, 3, 3, 3, 3, 3 },
2919 { 12, 12, 30, 4, 12, 30 },
2920 /* new limit values for the six attributes by Amy */
2921 { STR18(30), 20, 16, 14, 12, 20 },
2922 /* Init Lower Higher */
2923 { 18, 0, 0, 6, 1, 0 }, /* Hit points */
2924 { 4, 0, 0, 1, 0, 1 },12, /* Energy */
2925 10, 9, 2, 1, 10, A_INT
, SPE_LEVITATION
, -4, 100
2930 {"Wall Construction Worker", 0},
2931 {"Granite Cementer", 0},
2932 {"Pavement Optimizer", 0},
2933 {"Housebuilding Apprentice", 0},
2934 {"Slate Slabber", 0},
2935 {"Clay Smelter", 0},
2936 {"Minecraft Master", 0},
2937 {"World Trade Center Architect", 0} },
2938 "The Battlehorse", "The Wild Boar", "The Dire Wolf", /* big mean animals */
2939 "Mas", "Sport-resounded", "Dangerous Ruin",
2940 PM_MASON
, NON_PM
, PM_UNDEAD_MASON
, NON_PM
, NON_PM
,
2941 PM_BLEDA_S_IRON_BOAR
, PM_ATTENDANT
, PM_DESTRUCTION_DOZER
, PM_SIEGE_CATERPILLAR
,
2942 PM_ARBORACHUCK
, PM_CHAOS_HULK
, S_RODENT
, S_UMBER
,
2944 MH_HUMAN
|MH_ELF
|MH_DWARF
|MH_GNOME
|MH_HOBBIT
|MH_VAMPIRE
|MH_WERE
|MH_ORC
|
2945 ROLE_MALE
|ROLE_FEMALE
| ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
2946 /* Str Int Wis Dex Con Cha */
2947 /*{ 13, 13, 13, 9, 13, 7 },*/
2948 { 3, 3, 3, 3, 3, 3 },
2949 { 30, 15, 15, 20, 15, 5 },
2950 /* new limit values for the six attributes by Amy */
2951 { STR19(21), 12, 14, 19, 20, 16 },
2952 /* Init Lower Higher */
2953 { 14, 0, 0, 6, 3, 0 }, /* Hit points */
2954 { 1, 0, 0, 2, 0, 2 }, 15, /* Energy */
2955 10, 12, 0, 10, 20, A_INT
, SPE_LOCKOUT
, -4, 25
2958 { {"Mastermind", 0}, {
2960 {"Space Brother", 0},
2962 {"First Contact", 0},
2963 {"Federation Envoy", 0},
2964 {"Galactic Senator", 0},
2967 {"Terraformer", 0} },
2968 "_Marie Curie", "Georg Simon Ohm", "Albert Einstein", /* famous scientists */
2969 "Mam", "Guessing Corner", "Retardation Center",
2970 PM_MASTERMIND
, NON_PM
, PM_UNDEAD_MASTERMIND
, NON_PM
, PM_ELVEN_MAGE
,
2971 PM_DEEP_BLUE__
, PM_GLOBULE
, PM_EDWARD_NYGMA
, PM_THE_RIDDLER
,
2972 PM_ISLAND_WARP_FUNGUS
, PM_MIST_IN_THE_AIR
, S_FUNGUS
, S_BAD_FOOD
,
2974 ART_RED_PIN
, /* probably paddle-class weapon */
2975 MH_HUMAN
|MH_ELF
|MH_DWARF
|MH_GNOME
|MH_HOBBIT
|MH_VAMPIRE
|MH_WERE
|MH_ORC
| ROLE_MALE
|ROLE_FEMALE
|
2976 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
2977 /* Str Int Wis Dex Con Cha */
2978 /*{ 16, 7, 7, 15, 16, 6 },*/
2979 { 3, 3, 3, 3, 3, 3 },
2980 { 10, 40, 30, 5, 10, 5 },
2981 /* new limit values for the six attributes by Amy */
2982 { 16, 25, 24, 18, 18, 18 },
2983 /* Init Lower Higher */
2984 { 12, 0, 0, 4, 6, 0 }, /* Hit points */
2985 { 20, 0, 0, 6, 0, 6 }, 20, /* Energy */
2986 10, 2, 0, 1, 3, A_INT
, SPE_ESP
, -4, 250
2990 /*adds male names [Sakusha]*/
2991 {"Pure Boy", "Pure Girl"},
2992 {"Jinme Boy", "Jinme Girl"},
2993 {"Mist Youth", "Mist Maiden"},
2994 {"Moon Youth", "Moon Maiden"},
2995 {"Prince Youth", "Princess Maiden"},
2996 {"Hanuman Youth", "Hanuman Maiden"},
2997 {"Ryujin Youth", "Ryujin Maiden"},
2999 {"Eternal Youth", "Eternal Maiden"} },
3000 "_Umbrellarina Madeline", "_Medium Deborah", "_Crueltrainer Cindy",
3001 "Med", "the Old Shrine", "the cave of fox-spirits",
3002 PM_MEDIUM
, NON_PM
, PM_UNDEAD_MEDIUM
, NON_PM
, PM_WHITE_UNICORN_FOAL
,
3003 PM_SHINTO_PRIEST
, PM_MAIDEN
, PM_NINE_TAILED_FOX
, PM_JUGEN
,
3004 PM_FOX_SPIRIT
, PM_HUMAN_ZOMBIE
, S_DOG
, S_ZOMBIE
,
3006 MH_HUMAN
|MH_ELF
|MH_DWARF
|MH_GNOME
|MH_HOBBIT
|MH_VAMPIRE
|MH_WERE
|MH_ORC
|
3007 ROLE_MALE
|ROLE_FEMALE
| ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
3008 /* Str Int Wis Dex Con Cha */
3009 /*{ 13, 13, 13, 9, 13, 7 },*/
3010 { 3, 3, 3, 3, 3, 3 },
3011 { 4, 28, 30, 4, 4, 30 },
3012 /* new limit values for the six attributes by Amy */
3013 { 17, 20, 25, 19, 16, 19 },
3014 /* Init Lower Higher */
3015 { 9, 0, 0, 4, 1, 0 }, /* Hit points */
3016 { 25, 4, 0, 5, 0, 7 }, 8, /* Energy */
3017 10, 0, -5, 1, 4, A_WIS
, SPE_MAP_LEVEL
, -4, 150
3021 {"Little Midget", 0},
3022 {"Small Person", 0},
3023 {"Middle-Earth Miner", 0},
3024 {"Cave Inhabitant", 0},
3026 {"Giant Midget", 0},
3027 {"Dwarven Master Smith", 0},
3028 {"Dwarvish Legend", 0},
3029 {"Biggest Midget Ever", 0} },
3030 "Moradin", "Dumathoin", "Abbathor",
3031 "Mid", "Midget Home", "Lonely Mountain",
3032 PM_MIDGET
, NON_PM
, PM_UNDEAD_MIDGET
, NON_PM
, NON_PM
,
3033 PM_THORIN
, PM_DWARF_WARRIOR
, PM_SMAUG
, PM_SMAUG_THE_ADOM_HURTHLING
,
3034 PM_ORC_CAPTAIN
, PM_WARG
, S_ORC
, S_DOG
,
3036 MH_HUMAN
|MH_ELF
|MH_DWARF
|MH_GNOME
|MH_HOBBIT
|MH_VAMPIRE
|MH_WERE
|MH_ORC
| ROLE_MALE
|ROLE_FEMALE
| ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
3037 /* Str Int Wis Dex Con Cha */
3038 /*{ 10, 7, 7, 7, 12, 7 },*/
3039 { 3, 3, 3, 3, 3, 3 },
3040 { 25, 9, 9, 20, 30, 7 },
3041 /* new limit values for the six attributes by Amy */
3042 { STR19(19), 16, 19, 16, 20, 13 },
3043 /* Init Lower Higher */
3044 { 16, 0, 0, 7, 2, 0 }, /* Hit points */
3045 { 2, 0, 0, 2, 0, 3 },10, /* Energy */
3046 0, 9, 0, 0, 6, A_INT
, SPE_DIG
, -4, 20
3049 { { "Mill Swallower", 0 }, {
3050 { "Trash Eater", 0 },
3051 { "Garbage Can Searcher", 0 },
3052 { "Waste Collector", 0 },
3053 { "Refuse Picker", 0 },
3054 { "True Grimer", 0 },
3055 { "Reusable Plastic Bag", 0 },
3056 { "Bottle Trader", 0 },
3057 { "Truckloader", 0 },
3058 { "Ocean Cleaner", 0 } },
3059 "Indra", "Soma", "Ishwara", /* rigvedic */
3060 "Mil", "Area Waste Deposit", "Litterhome",
3061 PM_MILL_SWALLOWER
, NON_PM
, PM_UNDEAD_MILL_SWALLOWER
, NON_PM
, PM_TASMANIAN_DEVIL
,
3062 PM_WASTE_DEPUTY
, PM_SERVANT
, PM_ENVIRONMENT_POLLUTION_OVERLORD
, PM_CAUSER_OF_CLIMATE_CHANGE
,
3063 PM_FUN_TROLL
, PM_CURSED_COLONY
, S_FUNGUS
, S_TROLL
,
3064 ART_FERTILIZATOR
, /* binning kit that creates random sling ammo whenever it trashes a corpse */
3065 MH_HUMAN
|MH_ELF
|MH_DWARF
|MH_GNOME
|MH_HOBBIT
|MH_VAMPIRE
|MH_WERE
|MH_ORC
|
3066 ROLE_MALE
|ROLE_FEMALE
|ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
3067 /* Str Int Wis Dex Con Cha */
3068 { 3, 3, 3, 3, 3, 3 },
3069 { 20, 15, 20, 20, 15, 10 },
3070 /* new limit values for the six attributes by Amy */
3071 { STR18(100), 17, 18, 18, 19, 16 },
3072 /* Init Lower Higher */
3073 { 20, 0, 0, 6, 4, 0 }, /* Hit points */
3074 { 4, 3, 0, 3, 0, 2 },15, /* Energy */
3076 8, 13, A_INT
, SPE_THRONE_GAMBLE
, -4, 50
3083 {"Student of Stones", 0},
3084 {"Student of Waters", 0},
3085 {"Student of Metals", 0},
3086 {"Student of Winds", 0},
3087 {"Student of Fire", 0},
3089 "Shan Lai Ching", "Chih Sung-tzu", "Huan Ti", /* Chinese */
3090 "Mon", "the Monastery of Chan-Sune",
3091 "the Monastery of the Earth-Lord",
3092 PM_MONK
, NON_PM
, PM_UNDEAD_MONK
, NON_PM
, NON_PM
,
3093 PM_GRAND_MASTER
, PM_ABBOT
, PM_MASTER_KAEN
, PM_KASTER_MAEN
,
3094 PM_EARTH_ELEMENTAL
, PM_XORN
, S_ELEMENTAL
, S_XORN
,
3096 ART_GAUNTLETS_OF_DEFENSE
, ART_WHISPERFEET
,
3098 ART_EYES_OF_THE_OVERWORLD
,
3099 MH_HUMAN
|MH_ELF
|MH_DWARF
|MH_GNOME
|MH_HOBBIT
|MH_VAMPIRE
|MH_WERE
|MH_ORC
| ROLE_MALE
|ROLE_FEMALE
|
3100 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
3101 /* Str Int Wis Dex Con Cha */
3102 /*{ 10, 7, 8, 8, 7, 7 },*/
3103 { 3, 3, 3, 3, 3, 3 },
3104 { 25, 10, 20, 20, 15, 10 },
3105 /* new limit values for the six attributes by Amy */
3106 { STR18(100), 14, 20, 18, 14, 18 },
3107 /* Init Lower Higher */
3108 { 17, 0, 0, 8, 1, 0 }, /* Hit points */
3109 { 8, 2, 0, 2, 0, 2 },10, /* Energy */
3110 10, 8,-2, 2, 20, A_WIS
, SPE_RESTORE_ABILITY
, -4, 50
3113 { {"Murderer", 0}, {
3114 {"Knife Killer", 0},
3115 {"Dangerous Criminal", 0},
3116 {"Mean Contract",0},
3117 {"Serial Killer",0},
3118 {"Cold-Blooded Gangster", 0},
3119 {"Silent Assassin", 0},
3120 {"Master Hitman", "Master Hitwoman"},
3121 {"Professional Cutter", 0},
3122 {"Bane of all innocent people", 0} },
3123 "Falis", "_Marfa", "Falaris", /* Record of Lodoss War */
3124 "Mur", "Secret Hiding Place", "Central Cop Station",
3125 PM_MURDERER
, NON_PM
, PM_UNDEAD_MURDERER
, NON_PM
, PM_SEWER_RAT
,
3126 PM_KILLED_BILL
, PM_INMATE
, PM_UPPER_BULL
, PM_ANTI_CRIME_SPECIAL_FORCES_OFFICER
,
3127 PM_KOP_KCHIEF
, PM_MACKH_SEPHIRAH
, S_KOP
, S_KOP
,
3129 MH_HUMAN
|MH_ELF
|MH_DWARF
|MH_GNOME
|MH_HOBBIT
|MH_VAMPIRE
|MH_WERE
|MH_ORC
|
3130 ROLE_MALE
|ROLE_FEMALE
|ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
3131 /* Str Int Wis Dex Con Cha */
3132 /*{ 10, 7, 7, 7, 13, 6 },*/
3133 { 3, 3, 3, 3, 3, 3 },
3134 { 20, 20, 10, 20, 20, 10 },
3135 /* new limit values for the six attributes by Amy */
3136 { STR18(100), 12, 12, 20, 18, 18 },
3137 /* Init Lower Higher */
3138 { 12, 0, 0, 8, 0, 0 }, /* Hit points */
3139 { 3, 0, 0, 1, 0, 1 },10, /* Energy */
3140 -50, 5, 0, 2, 10, A_INT
, SPE_DISSOLVE_FOOD
, -4, 20
3143 { {"Musician", 0}, {
3146 {"Flute Player", 0},
3148 {"Orchestrator", 0},
3151 {"Piano Master", 0},
3152 {"Godly Voice", 0} },
3153 "Donblas", "Grome", "Arioch", /* Melnibonean */
3155 "Mus", "Wild West Bar", "High Noon Plains",
3156 PM_MUSICIAN
, NON_PM
, PM_UNDEAD_MUSICIAN
, NON_PM
, PM_GREEN_ELF
,
3157 PM_HARRY_THE_COWBOY
, PM_HIGHEST_ELF
, PM_DRACO_THE_SHARPSHOOTER
, PM_WILDWEST_GUNMAN
,
3158 PM_ENEMY_TROOPER
, PM_OFFICER
, S_HUMAN
, S_HUMAN
,
3161 MH_HUMAN
|MH_ELF
|MH_DWARF
|MH_GNOME
|MH_HOBBIT
|MH_VAMPIRE
|MH_WERE
|MH_ORC
|
3162 ROLE_MALE
|ROLE_FEMALE
| ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
3163 /* Str Int Wis Dex Con Cha */
3164 /*{ 13, 13, 13, 9, 13, 7 },*/
3165 { 3, 3, 3, 3, 3, 3 },
3166 { 30, 10, 10, 20, 20, 10 },
3167 /* new limit values for the six attributes by Amy */
3168 { STR18(20), 18, 18, 20, 18, 19 },
3169 /* Init Lower Higher */
3170 { 18, 0, 0, 6, 1, 0 }, /* Hit points */
3171 { 8, 0, 0, 2, 0, 2 },12, /* Energy */
3172 10, 9, 2, 1, 10, A_INT
, SPE_CAUSE_FEAR
, -4, 40
3176 {"Insert rank title here", 0},
3177 {"Insert clever name here", 0},
3178 {"Insert witty saying here", 0},
3179 {"Insert random string here", 0},
3180 {"Insert cool stuff here", 0},
3181 {"Insert what you want here", 0},
3182 {"Insert appellation here", 0},
3183 {"Insert heroic deeds here", 0},
3184 {"Insert mysterious message here", 0}},
3185 0, 0, 0, /* chosen randomly from among the other roles */
3186 "Mys", "Lichen Land", "Newt Domain",
3187 PM_MYSTIC
, NON_PM
, PM_UNDEAD_MYSTIC
, NON_PM
, PM_GRIMER
,
3188 PM_FWAGGLEBRAPO
, PM_STUDENT
, PM_YELDUD_TWEN
, PM_DUDLEY_S_DUNGEON_TERMINATOR
,
3189 PM_CHARIZARD
, PM_CHAOS_LIZARD
, S_LIZARD
, S_LIZARD
,
3190 ART_MYSTERIOUS_SPIKES
,
3191 MH_HUMAN
|MH_ELF
|MH_DWARF
|MH_GNOME
|MH_HOBBIT
|MH_VAMPIRE
|MH_WERE
|MH_ORC
| ROLE_MALE
|ROLE_FEMALE
|
3192 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
3193 /* Str Int Wis Dex Con Cha */
3194 /*{ 6, 6, 6, 6, 6, 6 },*/
3195 { 3, 3, 3, 3, 3, 3 },
3196 { 16, 17, 17, 17, 16, 17 },
3197 /* new limit values for the six attributes by Amy */
3198 { STR18(100), 18, 18, 18, 18, 18 },
3199 /* Init Lower Higher */
3200 { 11, 0, 0, 10, 2, 0 }, /* Hit points */
3201 { 5, 0, 1, 0, 1, 0 },15, /* Energy */
3202 5, 10, 5, 10, 25, A_INT
, SPE_DETECT_FOOT
, -4, 50
3206 { {"Necromancer", 0}, {
3214 {"Undead Master", 0},
3216 "Nharlotep", "Zugguthobal", "Gothuulbe", /* Assorted slimy things */
3217 "Nec", "the Tower of the Dark Lord", "the Lair of Maugneshaagar",
3218 PM_NECROMANCER
, NON_PM
, PM_UNDEAD_NECROMANCER
, NON_PM
, PM_GHOUL
,
3219 PM_DARK_LORD
, PM_EMBALMER
, PM_MAUGNESHAAGAR
, PM_MAUGNESHNAAGAR
,
3220 PM_NUPPERIBO
, PM_MONGBAT
, S_BAT
, S_IMP
,
3222 ART_SERPENT_S_TONGUE
, ART_GRIMTOOTH
,
3224 ART_GREAT_DAGGER_OF_GLAURGNAA
,
3225 MH_HUMAN
|MH_ELF
|MH_DWARF
|MH_GNOME
|MH_HOBBIT
|MH_VAMPIRE
|MH_WERE
|MH_ORC
| ROLE_MALE
|ROLE_FEMALE
|ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
3226 /* Str Int Wis Dex Con Cha */ /* Direct copy from Wizard */
3227 /*{ 7, 10, 7, 7, 7, 7 },*/
3228 { 3, 3, 3, 3, 3, 3 },
3229 { 10, 30, 10, 20, 20, 10 },
3230 /* new limit values for the six attributes by Amy */
3231 { 14, 18, 17, 14, 12, 10 },
3232 /* Init Lower Higher */
3233 { 17, 0, 0, 8, 1, 0 }, /* Hit points */
3234 { 15, 3, 0, 2, 0, 3 },12, /* Energy */
3236 2, 10, A_INT
, SPE_SUMMON_UNDEAD
, -4, 100
3240 {"Sword Trainee", 0},
3241 {"Dual-wield wannabee", 0},
3244 {"Double-edge Sword", 0},
3245 {"Master Blade", 0},
3246 {"Katana Knight", 0},
3247 {"Sword Acrobat", 0},
3248 {"Shadowblade", 0} },
3249 "Votishal", "Raiden", "Rat God", /* Nehwon */
3250 "Nin", "Green Plains", "Demon Orb Lair",
3251 PM_NINJA
, NON_PM
, PM_UNDEAD_NINJA
, NON_PM
, PM_LITTLE_DOG
,
3252 PM_KEN_HAYABUSA
, PM_ROSHI
, PM_JAQUIO
, PM_UBERJAQUIO
,
3253 PM_CARNIVOROUS_APE
, PM_NIGHTGAUNT
, S_YETI
, S_BAT
,
3255 ART_DRAGONCLAN_SWORD
,
3256 MH_HUMAN
|MH_ELF
|MH_DWARF
|MH_GNOME
|MH_HOBBIT
|MH_VAMPIRE
|MH_WERE
|MH_ORC
| ROLE_MALE
|ROLE_FEMALE
| ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
3257 /* Str Int Wis Dex Con Cha */
3258 /*{ 10, 8, 7, 10, 17, 6 },*/
3259 { 3, 3, 3, 3, 3, 3 },
3260 { 30, 10, 8, 30, 14, 8 },
3261 /* new limit values for the six attributes by Amy */
3262 { STR18(100), 17, 19, 20, 18, 19 },
3263 /* Init Lower Higher */
3264 { 19, 0, 0, 8, 1, 0 }, /* Hit points */
3265 { 7, 0, 0, 1, 0, 1 },11, /* Energy */
3266 10, 10, 0, 0, 8, A_INT
, SPE_ENCHANT_WEAPON
, -4, 25
3269 { {"Nobleman", "Noblewoman"}, {
3279 "God the Father", "_Mother Earth", "the Satan", /* Romanian, sorta */
3280 "Nob", "your ancestral home",
3281 "the rebel village",
3282 PM_NOBLEMAN
, PM_NOBLEWOMAN
, PM_UNDEAD_NOBLEMAN
, PM_UNDEAD_NOBLEWOMAN
, PM_PONY
,
3283 PM_OLD_GYPSY_WOMAN
, PM_SERVANT
, PM_REBEL_RINGLEADER
, PM_REBEL_RINGFAILURE
,
3284 PM_SOLDIER
, PM_PEASANT
, S_HUMANOID
, S_HUMAN
,
3285 ART_MANTLE_OF_HEAVEN
,
3286 MH_HUMAN
|MH_ELF
|MH_DWARF
|MH_GNOME
|MH_HOBBIT
|MH_VAMPIRE
|MH_WERE
|MH_ORC
| ROLE_MALE
|ROLE_FEMALE
|ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
3287 /* Str Int Wis Dex Con Cha */
3288 /*{ 10,10, 7, 10, 7, 7 },*/
3289 { 3, 3, 3, 3, 3, 3 },
3290 { 20, 18, 10, 20, 15, 17 },
3291 /* new limit values for the six attributes by Amy */
3292 { STR18(50), 16, 19, 18, 17, 22 },
3293 /* Init Lower Higher */
3294 { 10, 0, 0, 8, 1, 0 }, /* Hit points */
3295 { 2, 2, 0, 2, 0, 2 },10, /* Energy */
3296 10, 4,-4, 4, 8, A_INT
, SPE_PROTECTION
, -24, 40
3299 { {"Noob Mode Barb", 0}, {
3300 {"Complete Scrub", 0},
3301 {"Skill Agnostic", 0},
3302 {"Whippersnapper", 0},
3304 {"Terrible Rookie", 0},
3306 {"Mindless Mower", 0},
3307 {"Filthy Cheater", 0},
3308 {"Biggest Noob Ever", 0} },
3309 "P-Point", "I Have To Reload", "Upper Failure Kornop",
3310 "Noo", "the Camp of the Duali Tribe", "the Duali Oasis",
3311 PM_NOOB_MODE_BARB
, NON_PM
, PM_UNDEAD_NOOB_MODE_BARB
, NON_PM
, NON_PM
,
3312 PM_PELIAS
, PM_CHIEFTAIN
, PM_THOTH_AMON
, PM_THOTH_AMUN
,
3313 PM_OGRE
, PM_TROLL
, S_OGRE
, S_TROLL
,
3314 ART_HEART_OF_OTHER_AHRIMAN
,
3315 MH_HUMAN
|MH_ELF
|MH_DWARF
|MH_GNOME
|MH_HOBBIT
|MH_VAMPIRE
|MH_WERE
|MH_ORC
| ROLE_MALE
|ROLE_FEMALE
|
3316 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
3317 /* Str Int Wis Dex Con Cha */
3318 /*{ 16, 7, 7, 15, 16, 6 },*/
3319 { 3, 3, 3, 3, 3, 3 },
3320 { 30, 6, 7, 20, 30, 7 },
3321 /* new limit values for the six attributes by Amy */
3322 { STR19(20), 6, 8, 6, 20, 6 },
3323 /* Init Lower Higher */
3324 { 80, 0, 0,20, 4, 0 }, /* Hit points */
3325 { 0, 0, 0, 0, 0, 0 },10, /* Energy */
3326 10, 50, 20, 20, 50, A_INT
, SPE_HASTE_SELF
, -4, 5
3329 { {"Nuclear Physicist", 0}, {
3330 {"Safety Officer", 0},
3331 {"Burning Stick Controller", 0},
3332 {"Uranium Handler", 0},
3333 {"Walking Geiger Counter", 0},
3334 {"Atomic Counselor", 0},
3335 {"Ordinance Observer", 0},
3336 {"HEV Suit Wearer", 0},
3337 {"Resonance Cascade Averter", 0},
3338 {"Gordon Freeman Clone", 0} },
3339 "_Gina", "Gordon Freeman", "G-Man", /* Half-Life */
3340 "Nuc", "Anomalous Materials Laboratory", "Sector E Propulsion Chamber",
3341 PM_NUCLEAR_PHYSICIST
, NON_PM
, PM_UNDEAD_NUCLEAR_PHYSICIST
, NON_PM
, PM_BRAIN_EATING_GHOUL
,
3342 PM_THESCI
, PM_ATTENDANT
, PM_INTERNATIONAL_ENERGY_COMMISSIONER
, PM_ATOMIC_TESTER
,
3343 PM_SKELETON
, PM_GREATER_UGOD
, S_UMBER
, S_GHOST
,
3345 MH_HUMAN
|MH_ELF
|MH_DWARF
|MH_GNOME
|MH_HOBBIT
|MH_VAMPIRE
|MH_WERE
|MH_ORC
|
3346 ROLE_MALE
|ROLE_FEMALE
| ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
3347 /* Str Int Wis Dex Con Cha */
3348 /*{ 13, 13, 13, 9, 13, 7 },*/
3349 { 3, 3, 3, 3, 3, 3 },
3350 { 10, 35, 20, 15, 15, 5 },
3351 /* new limit values for the six attributes by Amy */
3352 { STR18(50), 19, 18, 19, 14, 19 },
3353 /* Init Lower Higher */
3354 { 9, 0, 0, 4, 1, 0 }, /* Hit points */
3355 { 16, 0, 0, 5, 0, 3 }, 10, /* Energy */
3356 -10, 8, -1, 8, 20, A_INT
, SPE_ACIDSHIELD
, -4, 50
3359 { {"Occult Master", 0}, {
3360 {"Risky Apprentice", 0},
3361 {"Dark Magician", 0},
3362 {"Venture Caster", 0},
3364 {"Arcane Arts Student", 0},
3365 {"Promising Scholar", 0},
3366 {"Controller of Dark Arts", 0},
3367 {"Occult Library Owner", 0},
3368 {"Backlash Master", 0} },
3369 "_Kumiromi of Harvest", "Opatos of Earth", "_Ehekatl of Luck",
3370 "Occ", "Occultist Cave", "Spell Dungeons",
3371 PM_OCCULT_MASTER
, NON_PM
, PM_UNDEAD_OCCULT_MASTER
, NON_PM
, PM_DARK_NIGHTMARE
,
3372 PM_NADJA_THE_OCCULTIST
, PM_ATTENDANT
, PM_VILJA_THE_BITCH
, PM_IRON_GIRL
,
3373 PM_FLAMING_SKULL
, PM_OCTARINE_GRUE
, S_ZOMBIE
, S_GRUE
,
3374 ART_WHISTLE_OF_PROTECTION
,
3375 MH_HUMAN
|MH_ELF
|MH_DWARF
|MH_GNOME
|MH_HOBBIT
|MH_VAMPIRE
|MH_WERE
|MH_ORC
|
3376 ROLE_MALE
|ROLE_FEMALE
|ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
3377 /* Str Int Wis Dex Con Cha */
3378 { 3, 3, 3, 3, 3, 3 },
3379 { 10, 30, 30, 10, 10, 10 },
3380 /* new limit values for the six attributes by Amy */
3381 { STR18(10), 19, 15, 19, 17, 16 },
3382 /* Init Lower Higher */
3383 { 6, 0, 0, 2, 2, 0 }, /* Hit points */
3384 { 30, 5, 0, 6, 0, 8 }, 8, /* Energy */
3386 1, 6, A_INT
, SPE_GOOD_NIGHT
, -4, 100 /* From old role.c */
3391 {"Traffic Officer", 0},
3392 {"Patrolling Cop",0},
3394 {"Crime Scene Cop", 0},
3395 {"Junior Sheriff", 0},
3396 {"Deputy Sheriff", 0},
3397 {"Wild-West Sheriff", 0},
3399 "Magnum", "Smith", "Wesson", /* guns */
3400 "Off", "Central Cop Station", "Tank Breaker Hideout",
3401 PM_OFFICER
, NON_PM
, PM_UNDEAD_OFFICER
, NON_PM
, PM_OFFICER
,
3402 PM_COMMISSIONER_HUNTER
, PM_STUDENT
, PM_GRANDPA_TANK_BREAKER
, PM_OUT_OF_JAIL_CONVICT
,
3403 PM_TANK_BREAKER
, PM_KOP_KCHIEF
, S_HUMAN
, S_KOP
,
3405 MH_HUMAN
|MH_ELF
|MH_DWARF
|MH_GNOME
|MH_HOBBIT
|MH_VAMPIRE
|MH_WERE
|MH_ORC
|
3406 ROLE_MALE
|ROLE_FEMALE
|ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
3407 /* Str Int Wis Dex Con Cha */
3408 /*{ 10, 7, 7, 7, 13, 6 },*/
3409 { 3, 3, 3, 3, 3, 3 },
3410 { 20, 20, 10, 20, 20, 10 },
3411 /* new limit values for the six attributes by Amy */
3412 { STR18(100), 16, 14, 19, 19, 19 },
3413 /* Init Lower Higher */
3414 { 12, 0, 0, 8, 0, 0 }, /* Hit points */
3415 { 3, 0, 0, 1, 0, 1 },10, /* Energy */
3416 10, 5, 0, 2, 10, A_INT
, SPE_RESIST_PETRIFICATION
, -4, 40
3419 { {"Ordinator", 0}, {
3423 {"Battlemaster", 0},
3426 {"Three-handed Swordsman", 0},
3427 {"Walking Weapon Factory", 0},
3428 {"Fucking Hammer of Thor", 0} },
3429 "_Vaire", "_Varda Elentari", "_Nessa", /* Elven */
3431 "Ord", "Top Secret Base", "Evil Lair",
3432 PM_ORDINATOR
, NON_PM
, PM_UNDEAD_ORDINATOR
, NON_PM
, PM_DANCING_GIRL
,
3433 PM_SONTAIRE
, PM_HIGHEST_ELF
, PM_JYGGALAG
, PM_SHEOROGATH
,
3434 PM_LILLEND
, PM_NESSIAN_PIT_FIEND
, S_ANGEL
, S_DEMON
,
3437 MH_HUMAN
|MH_ELF
|MH_DWARF
|MH_GNOME
|MH_HOBBIT
|MH_VAMPIRE
|MH_WERE
|MH_ORC
|
3438 ROLE_MALE
|ROLE_FEMALE
| ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
3439 /* Str Int Wis Dex Con Cha */
3440 /*{ 13, 13, 13, 9, 13, 7 },*/
3441 { 3, 3, 3, 3, 3, 3 },
3442 { 50, 10, 10, 10, 10, 10 },
3443 /* new limit values for the six attributes by Amy */
3444 { STR19(25), 10, 10, 25, 25, 6 },
3445 /* Init Lower Higher */
3446 { 10, 0, 0, 5, 1, 0 }, /* Hit points */
3447 { 10, 0, 0, 2, 0, 2 },12, /* Energy */
3448 10, 9, 2, 1, 10, A_INT
, SPE_ENCHANT_WEAPON
, -4, 30
3454 {"Mr. Yu", "Ms. Yu"},
3458 {"Wintry, Poplar and Willow", 0},
3461 "Brahma", "Vishnu", "_Shiva", /* India? */
3462 "Ota", "Shambala Temple", "Trapped Treasure Room",
3463 PM_OTAKU
, NON_PM
, PM_UNDEAD_OTAKU
, NON_PM
, PM_VAMPIRE
,
3464 PM_SENIOR_OTAKU
, PM_ATTENDANT
, PM_DANA_DYNAMITE_BEAUTY_MISS
, PM_FLEECY_WHITNEY
,
3465 PM_UNDEAD_WIZARD
, PM_UNDEAD_UNDERTAKER
, S_GOLEM
, S_HUMAN
,
3468 MH_HUMAN
|MH_ELF
|MH_DWARF
|MH_GNOME
|MH_HOBBIT
|MH_VAMPIRE
|MH_WERE
|MH_ORC
|
3469 ROLE_MALE
|ROLE_FEMALE
|ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
3470 /* Str Int Wis Dex Con Cha */ /* Direct copy from Wizard */
3471 /*{ 7, 10, 7, 7, 7, 7 },*/
3472 { 3, 3, 3, 3, 3, 3 },
3473 { 10, 30, 10, 20, 20, 10 },
3474 /* new limit values for the six attributes by Amy */
3475 { 17, 17, 16, 19, 15, 18 },
3476 /* Init Lower Higher */
3477 { 15, 0, 0, 8, 1, 0 }, /* Hit points */
3478 { 15, 3, 0, 2, 0, 3 },12, /* Energy */
3480 2, 10, A_INT
, SPE_ENTRAPPING
, -4, 50 /* From old role.c */
3484 {"Fighter of Law", 0},
3485 {"Chivalrous Warrior", 0},
3486 {"Knightly Strider", 0},
3487 {"Courageous Battler", 0},
3488 {"Holy Warrior", 0},
3489 {"Celestial Warrior", 0},
3490 {"Peacebringing Knight", 0},
3491 {"Knight in shiny armor", 0},
3492 {"God-gifted Warrior", 0}},
3493 "Ariel", "Tyrael", "Gabriel", /* angels */
3494 "Pal", "Paladin Order", "Dark Ritual Cave",
3495 PM_PALADIN
, NON_PM
, PM_UNDEAD_PALADIN
, NON_PM
, NON_PM
,
3496 PM_PALADIN_COLVIN
, PM_ACOLYTE
, PM_MYSTERIOUS_NECROMANCER
, PM_RANDOM_BLACK_MAGE
,
3497 PM_NECROMANCER
, PM_UNDEAD_NECROMANCER
, S_HUMAN
, S_HUMAN
,
3498 ART_ORB_OF_RESISTANCE
,
3499 MH_HUMAN
|MH_ELF
|MH_DWARF
|MH_GNOME
|MH_HOBBIT
|MH_VAMPIRE
|MH_WERE
|MH_ORC
| ROLE_MALE
|ROLE_FEMALE
|
3500 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
3501 /* Str Int Wis Dex Con Cha */
3502 /*{ 7, 7, 10, 7, 7, 7 },*/
3503 { 3, 3, 3, 3, 3, 3 },
3504 { 5, 15, 20, 15, 25, 20 },
3505 /* new limit values for the six attributes by Amy */
3506 { STR18(50), 18, 19, 15, 17, 19 },
3507 /* Init Lower Higher */
3508 { 20, 0, 0, 9, 1, 0 }, /* Hit points */
3509 { 17, 3, 0, 2, 0, 2 },10, /* Energy */
3510 0, 3,-2, 2, 10, A_WIS
, SPE_REMOVE_CURSE
, -4, 50
3513 { {"Pickpocket", 0}, {
3514 {"Cash Stealer", 0},
3516 {"Tricky Hands", 0},
3517 {"Trained Fingers", 0},
3518 {"Trickster Thief", 0},
3519 {"Mean Stealer", 0},
3520 {"Expert Thief", 0},
3521 {"Moneybag Remover", 0},
3522 {"Money Van Kidnapper", 0}},
3523 "Danzai", "Milanor", "Daini", /* ??? */
3524 "Pic", "Black Market", "Thief Brigand Den",
3525 PM_PICKPOCKET
, NON_PM
, PM_UNDEAD_PICKPOCKET
, NON_PM
, NON_PM
,
3526 PM_SOME_GUY_CALLED_SHADE
, PM_THUG
, PM_DON_RIO_THE_MASTER_THIEF
, PM_GIACOMO_CASANOVA
,
3527 PM_ASSASSIN
, PM_UNDEAD_ASSASSIN
, S_NYMPH
, S_LEPRECHAUN
,
3529 ART_CUTTHROAT_BLADE
,
3530 MH_HUMAN
|MH_ELF
|MH_DWARF
|MH_GNOME
|MH_HOBBIT
|MH_VAMPIRE
|MH_WERE
|MH_ORC
| ROLE_MALE
|ROLE_FEMALE
|
3531 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
3532 /* Str Int Wis Dex Con Cha */
3533 /*{ 7, 7, 7, 10, 7, 6 },*/
3534 { 3, 3, 3, 3, 3, 3 },
3535 { 12, 12, 12, 30, 4, 30 },
3536 /* new limit values for the six attributes by Amy */
3537 { 18, 17, 16, 25, 16, 18 },
3538 /* Init Lower Higher */
3539 { 15, 0, 0, 8, 1, 0 }, /* Hit points */
3540 { 3, 0, 0, 1, 0, 1 },11, /* Energy */
3541 10, 8, 0, 1, 9, A_INT
, SPE_DETECT_TREASURE
, -4, 30
3554 {"Dread Pirate", 0} },
3555 "the Lord", "_the deep blue sea", "the Devil", /* Christian, sorta */
3556 "Pir", "Tortuga", "Shipwreck Island",
3557 PM_PIRATE
, NON_PM
, PM_UNDEAD_PIRATE
, NON_PM
, NON_PM
,
3558 PM_MAYOR_CUMMERBUND
, PM_PIRATE_BROTHER
, PM_BLACKBEARD_S_GHOST
, PM_WHITEBEARD_S_GHOST
,
3559 PM_SKELETAL_PIRATE
, PM_SOLDIER
, S_RODENT
, S_ELEMENTAL
, /* Ghost pirates, soldiers, rats in the food stores, and the occasional storm*/
3560 ART_TREASURY_OF_PROTEUS
,
3561 MH_HUMAN
|MH_ELF
|MH_DWARF
|MH_GNOME
|MH_HOBBIT
|MH_VAMPIRE
|MH_WERE
|MH_ORC
|
3562 ROLE_MALE
|ROLE_FEMALE
| ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
3563 /* Str Int Wis Dex Con Cha */
3564 /*{ 8, 7, 7, 8, 8, 7 },*/
3565 { 3, 3, 3, 3, 3, 3 },
3566 { 20, 15, 10, 20, 25, 10 },
3567 /* new limit values for the six attributes by Amy */
3568 { STR18(100), 18, 16, 18, 19, 19 },
3569 /* Init Lower Higher */
3570 { 10, 0, 0, 8, 1, 0 }, /* Hit points */
3571 { 1, 0, 0, 1, 0, 1 },12, /* Energy */
3572 10, 8, 0, 2, 9, A_INT
, SPE_CAUSE_FEAR
, -4, 30
3575 { {"Poison Mage", 0}, {
3576 {"Poison Mixer", 0},
3577 {"Venom Scatterer", 0},
3578 {"Green Poisoner", 0},
3579 {"Purple Poisoner", 0},
3580 {"Poison Exploder", 0},
3581 {"Contaminator", 0},
3582 {"Stinking Cloud Creator", 0},
3583 {"Gas Attacker", 0},
3584 {"Poison Bomber", 0} },
3585 "Seveso Toxin", "Fukoshima Radiation", "Mustard Gas", /* poison */
3586 "Poi", "Overrun Base", "Alien UFO",
3587 PM_POISON_MAGE
, NON_PM
, PM_UNDEAD_POISON_MAGE
, NON_PM
, PM_VENOM_FUNGUS
,
3588 PM_CREATOR_OF_POISON
, PM_ATTENDANT
, PM_GENEWORM
, PM_PITWORM
,
3589 PM_GANGRENOUS_WYRM
, PM_ALIENATED_UFO_PART
, S_WORM
, S_HUMAN
,
3591 MH_HUMAN
|MH_ELF
|MH_DWARF
|MH_GNOME
|MH_HOBBIT
|MH_VAMPIRE
|MH_WERE
|MH_ORC
|
3592 ROLE_MALE
|ROLE_FEMALE
|ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
3593 /* Str Int Wis Dex Con Cha */ /* Direct copy from Wizard */
3594 /*{ 7, 10, 7, 7, 7, 7 },*/
3595 { 3, 3, 3, 3, 3, 3 },
3596 { 10, 30, 10, 20, 20, 10 },
3597 /* new limit values for the six attributes by Amy */
3598 { 18, 18, 19, 18, 20, 19 },
3599 /* Init Lower Higher */
3600 { 15, 0, 0, 8, 1, 0 }, /* Hit points */
3601 { 15, 3, 0, 2, 0, 3 },12, /* Energy */
3603 2, 10, A_INT
, SPE_POISON_BLAST
, -4, 100 /* From old role.c */
3612 {"BANQ", 0}, /* One skilled at crossbows */
3616 "A'En", "Dr. Oujide", "Team Missile Bomb", /* Pokemon Vietnamese Crystal */
3617 "Pok", "ELF GRANDFATHER RESEARCH LAB", "JOIN-CAVE",
3618 PM_POKEMON
, NON_PM
, PM_UNDEAD_POKEMON
, NON_PM
, PM_EEVEE
,
3619 PM_DR__WUSIJI
, PM_POKEMON_TRAINER
, PM_HO_OH
, PM_PHIX
,
3620 PM_KOFFING
, PM_RHYHORN
, S_EYE
, S_QUADRUPED
,
3621 ART_GAUNTLETS_OF_ILLUSION
,
3622 MH_HUMAN
|MH_ELF
|MH_DWARF
|MH_GNOME
|MH_HOBBIT
|MH_VAMPIRE
|MH_WERE
|MH_ORC
|
3623 ROLE_MALE
|ROLE_FEMALE
| ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
3624 /* Str Int Wis Dex Con Cha */
3625 /*{ 13, 13, 13, 9, 13, 7 },*/
3626 { 3, 3, 3, 3, 3, 3 },
3627 { 30, 10, 10, 20, 20, 10 },
3628 /* new limit values for the six attributes by Amy */
3629 { STR18(100), 19, 19, 19, 19, 20 },
3630 /* Init Lower Higher */
3631 { 18, 0, 0, 6, 1, 0 }, /* Hit points */
3632 { 4, 0, 0, 1, 0, 1 },12, /* Energy */
3633 10, 9, 2, 1, 10, A_INT
, SPE_INVISIBILITY
, -4, 120
3636 { {"Politician", 0}, {
3639 {"District Councillor",0},
3642 {"Secretary of State", 0},
3644 {"Home Secretary", 0},
3645 {"Prime Minister", 0} },
3646 "Democracy", "Communism", "Despotism", /* political structures */
3647 "Pol", "Houses of Parliament", "Lair of Anarchy",
3648 PM_POLITICIAN
, NON_PM
, PM_UNDEAD_POLITICIAN
, NON_PM
, PM_SOLDIER
,
3649 PM_THE_QUEEN
, PM_YEOMAN_WARDER
, PM_BNP_LEADER
, PM_APEC_WORKER
,
3650 PM_GNOLL_GANGSTER
, PM_CHAOS_BROTHER
, S_GNOME
, S_CENTAUR
,
3652 ART_PRIME_MINISTER_S_TUXEDO
,
3653 MH_HUMAN
|MH_ELF
|MH_DWARF
|MH_GNOME
|MH_HOBBIT
|MH_VAMPIRE
|MH_WERE
|MH_ORC
| ROLE_MALE
|ROLE_FEMALE
| ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
3654 /* Str Int Wis Dex Con Cha */
3655 /*{ 7, 10, 6, 7, 7, 10 },*/
3656 { 3, 3, 3, 3, 3, 3 },
3657 { 15, 10, 10, 5, 10, 50 },
3658 /* new limit values for the six attributes by Amy */
3659 { 16, 16, 18, 16, 16, 20 },
3660 /* Init Lower Higher */
3661 { 12, 0, 0, 6, 0, 0 }, /* Hit points */
3662 { 10, 0, 0, 1, 0, 1 },14, /* Energy */
3663 0, 5, 1, 2, 10, A_INT
, SPE_CHARM_MONSTER
, -4, 100
3666 { { "Practicant", 0 }, {
3667 { "Oppressed Lab Worker", 0 },
3668 { "Will-less Slave", 0 },
3669 { "One Who Fears Assistants", 0 },
3670 { "Beach Drama Experiencer", 0 },
3671 { "Despotism Endurer", 0 },
3672 { "Annoyed Ramming Support", 0 },
3673 { "Rebel Leader", 0 },
3674 { "System Overthrower", 0 },
3675 { "Accomplished Diploma Student", 0 } },
3676 "Divert", "Oat Camper", "_Jeannine", /* assistants */
3677 "Pra", "Joy Mountain Hall", "Assistant's Office",
3678 PM_PRACTICANT
, NON_PM
, PM_UNDEAD_PRACTICANT
, NON_PM
, PM_OXYGEN_GOLEM
, /* 50% chance of a sulfur golem instead */
3679 PM_LITTLE_BIA
, PM_STUDENT
, PM_ASSISTANT_NOROELA
, PM_CRUEL_FEMALE_DICTATOR
,
3680 PM_STUDENT_ASSISTANT
, PM_UNDEAD_GRADUATE
, S_SNAKE
, S_UMBER
,
3681 ART_TOO_LATE_PRIZE
, /* chemistry set, invoke for summon water elemental and does nothing else */
3682 MH_HUMAN
|MH_ELF
|MH_DWARF
|MH_GNOME
|MH_HOBBIT
|MH_VAMPIRE
|MH_WERE
|MH_ORC
|
3683 ROLE_MALE
|ROLE_FEMALE
|ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
3684 /* Str Int Wis Dex Con Cha */
3685 { 3, 3, 3, 3, 3, 3 },
3686 { 15, 20, 20, 20, 10, 15 },
3687 /* new limit values for the six attributes by Amy */
3688 { 18, 20, 20, 22, 12, 18 },
3689 /* Init Lower Higher */
3690 { 12, 0, 0, 4, 1, 0 }, /* Hit points */
3691 { 8, 4, 0, 6, 0, 4 },12, /* Energy */
3693 6, 12, A_INT
, SPE_BATTERING_RAM
, -4, 70
3696 { {"Preversioner", 0}, {
3698 {"Green Cross Delver", 0},
3699 {"Moneyless Adventurer", 0},
3700 {"Balance Grumbler", 0},
3701 {"Crash Bug Encounterer", 0},
3702 {"Bad Game Design Bitcher", 0},
3703 {"Fook-Yoo-Sayer", 0},
3705 {"Ascension Run Skipper", 0} },
3706 "0.54A", "Level Change UAE", "Reset Button Without A Confirmation", /* still salty about the latter... :-P --Amy */
3707 "Pre", "Northeast Quadrant", "Some Nondescript Dungeon Level",
3708 PM_PREVERSIONER
, NON_PM
, PM_UNDEAD_PREVERSIONER
, NON_PM
, NON_PM
,
3709 PM_POLGARA
, PM_HACKER
, PM_EXTREMELY_ANCIENT_RED_DRAGON
, PM_YET_ANOTHER_RED_KITE
,
3710 PM_OLD_RED_DRAGON
, PM_VERY_OLD_BLUE_DRAGON
, S_DRAGON
, S_DEMON
,
3712 ART_DOWNSIZE_GLASS
, /* mirror that cuts boss monsters' health in half, but only for preversioner role */
3713 MH_HUMAN
|MH_ELF
|MH_DWARF
|MH_GNOME
|MH_HOBBIT
|MH_VAMPIRE
|MH_WERE
|MH_ORC
|
3714 ROLE_MALE
|ROLE_FEMALE
|ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
3715 /* Str Int Wis Dex Con Cha */ /* Direct copy from Wizard */
3716 /*{ 7, 10, 7, 7, 7, 7 },*/
3717 { 3, 3, 3, 3, 3, 3 },
3718 { 20, 20, 10, 20, 20, 10 },
3719 /* new limit values for the six attributes by Amy */
3720 { STR18(100), 18, 18, 18, 18, 18 },
3721 /* Init Lower Higher */
3722 { 14, 0, 0, 2, 2, 0 }, /* Hit points */
3723 { 7, 1, 0, 1, 0, 1 }, 14, /* Energy */
3725 2, 3, A_INT
, SPE_ACIDSHIELD
, -4, 100 /* From old role.c */
3728 { {"Priest", "Priestess"}, {
3732 {"Priest", "Priestess"},
3734 {"Canon", "Canoness"},
3736 {"Patriarch", "Matriarch"},
3737 {"High Priest", "High Priestess"} },
3738 0, 0, 0, /* chosen randomly from among the other roles */
3739 "Pri", "the Great Temple", "the Temple of Nalzok",
3740 PM_PRIEST
, PM_PRIESTESS
, PM_UNDEAD_PRIEST
, PM_UNDEAD_PRIESTESS
, NON_PM
,
3741 PM_ARCH_PRIEST
, PM_ACOLYTE
, PM_NALZOK
, PM_ZALNOK
,
3742 PM_HUMAN_ZOMBIE
, PM_WRAITH
, S_ZOMBIE
, S_WRAITH
,
3744 ART_DISRUPTER
, ART_SUNSWORD
,
3746 ART_MITRE_OF_HOLINESS
,
3747 MH_HUMAN
|MH_ELF
|MH_DWARF
|MH_GNOME
|MH_HOBBIT
|MH_VAMPIRE
|MH_WERE
|MH_ORC
| ROLE_MALE
|ROLE_FEMALE
|
3748 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
3749 /* Str Int Wis Dex Con Cha */
3750 /*{ 7, 7, 10, 7, 7, 7 },*/
3751 { 3, 3, 3, 3, 3, 3 },
3752 { 15, 10, 30, 15, 20, 10 },
3753 /* new limit values for the six attributes by Amy */
3754 { 17, 18, 22, 14, 15, 19 },
3755 /* Init Lower Higher */
3756 { 18, 0, 0, 8, 1, 0 }, /* Hit points */
3757 { 17, 3, 0, 2, 0, 2 },10, /* Energy */
3758 0, 3,-2, 2, 10, A_WIS
, SPE_REMOVE_CURSE
, -4, 75
3761 { {"Prostitute", 0}, {
3763 {"Attractive Hooker", 0},
3764 {"Sexy Butt Cheeks", 0},
3766 {"Noble Prostitute", 0},
3767 {"Beautiful Harlot", 0},
3769 {"Top-Class Working Girl", 0},
3770 {"King's Secret Love", 0} },
3771 "_Mercedes", "_Misty", "_Kendl", /* Grand Theft Auto */
3772 "Pro", "Luigi's Sex Club", "Center of Human Hate",
3773 PM_PROSTITUTE
, NON_PM
, PM_UNDEAD_PROSTITUTE
, NON_PM
, PM_ELIF
,
3774 PM_LUIGI
, PM_ATTENDANT
, PM_FOAMING_WHITE_KNIGHT
, PM_SOCIAL_JUSTICE_IDIOT
,
3775 PM_MUMAK
, PM_CARRION_BIRD
, S_BAT
, S_QUADRUPED
,
3776 ART_HIGHEST_FEELING
,
3777 MH_HUMAN
|MH_ELF
|MH_DWARF
|MH_GNOME
|MH_HOBBIT
|MH_VAMPIRE
|MH_WERE
|MH_ORC
|
3778 ROLE_MALE
|ROLE_FEMALE
| ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
3779 /* Str Int Wis Dex Con Cha */
3780 /*{ 13, 13, 13, 9, 13, 7 },*/
3781 { 3, 3, 3, 3, 3, 3 },
3782 { 20, 15, 5, 15, 20, 25 },
3783 /* new limit values for the six attributes by Amy */
3784 { STR18(100), 18, 18, 19, 18, 25 },
3785 /* Init Lower Higher */
3786 { 15, 0, 0, 3, 2, 0 }, /* Hit points */
3787 { 7, 0, 0, 2, 0, 2 },12, /* Energy */
3788 10, 5, -3, 2, 4, A_INT
, SPE_TAKE_SELFIE
, -4, 100
3800 {"Master Psion", 0} },
3801 "Bickney", "Corridor", "Lockney", /* Egyptian */
3802 "Psi", "the Monastery of Psionics",
3803 "the Monastery of the Swamp",
3804 PM_PSION
, NON_PM
, PM_UNDEAD_PSION
, NON_PM
, NON_PM
,
3805 PM_PSI_MASTER
, PM_ABBOT
, PM_MASTER_SABRINA
, PM_SABRAIN
,
3806 PM_DOPPELGANGER
, PM_MULTICOLOR_GRUE
, S_GRUE
, S_HUMAN
,
3808 ART_GAUNTLETS_OF_DEFENSE
, ART_WHISPERFEET
,
3810 ART_GAUNTLETS_OF_OFFENSE
,
3811 MH_HUMAN
|MH_ELF
|MH_DWARF
|MH_GNOME
|MH_HOBBIT
|MH_VAMPIRE
|MH_WERE
|MH_ORC
| ROLE_MALE
|ROLE_FEMALE
|
3812 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
3813 /* Str Int Wis Dex Con Cha */
3814 /*{ 10, 7, 8, 8, 7, 7 },*/
3815 { 3, 3, 3, 3, 3, 3 },
3816 { 5, 30, 30, 5, 5, 25 },
3817 /* new limit values for the six attributes by Amy */
3818 { 14, 20, 25, 18, 12, 18 },
3819 /* Init Lower Higher */
3820 { 5, 0, 0, 0, 0, 0 }, /* Hit points */
3821 { 20, 4, 0, 4, 0, 8 },10, /* Energy */
3822 10, 8,-2, 2, 20, A_WIS
, SPE_WIZARD_LOCK
, -4, 200
3825 { {"Psyker", 0}, { /* ZAPM psion */
3829 {"Spoon Bender", 0},
3833 {"Master Psyker", 0},
3835 "Bill Rizer", "Lance Bean", "Haggle Man", /* classic NES games */
3836 "Psy", "Psionic Domain", "Unbalanced Waste",
3837 PM_PSYKER
, NON_PM
, PM_UNDEAD_PSYKER
, NON_PM
, PM_QUADRENNIAL_SODDEN_RATCHET
,
3838 PM_THE_DUNGEON_MASTER
, PM_VERY_MINDLESS_THRALL
, PM_ROCKFALL_GRIEFER
, PM_NONBEHAVING_PLAYER
,
3839 PM_SYNDICATE_GODSEND_READILY
, PM_STEEL_MISSINGNO
, S_BAD_FOOD
, S_WORM_TAIL
,
3841 ART_PSIGUN
, /* kalashnikov with psi res */
3842 MH_HUMAN
|MH_ELF
|MH_DWARF
|MH_GNOME
|MH_HOBBIT
|MH_VAMPIRE
|MH_WERE
|MH_ORC
| ROLE_MALE
|ROLE_FEMALE
|
3843 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
3844 /* Str Int Wis Dex Con Cha */
3845 /*{ 16, 7, 7, 15, 16, 6 },*/
3846 { 3, 3, 3, 3, 3, 3 },
3847 { 5, 25, 40, 20, 5, 5 },
3848 /* new limit values for the six attributes by Amy */
3849 { 15, 25, 25, 21, 12, 15 },
3850 /* Init Lower Higher */
3851 { 8, 0, 0, 2, 2, 0 }, /* Hit points */
3852 { 30, 0, 0, 10, 0, 9 }, 12, /* Energy */
3853 10, 4, -2, 1, 6, A_INT
, SPE_PSYBEAM
, -4, 200
3856 { {"Quarterback", 0}, {
3858 {"Bench Warmer", 0},
3862 {"Team Captain", 0},
3865 {"Hall Of Famer", 0} },
3866 "Roger Staubach", "Peyton Manning", "Tom Brady", /* famous quarterbacks */
3867 "Qua", "National Training Camp", "No-Rules Playing Field",
3868 PM_QUARTERBACK
, NON_PM
, PM_UNDEAD_QUARTERBACK
, NON_PM
, PM_MISTER_HEAD
,
3869 PM_BASEBALL_LEGEND
, PM_HUNTER
, PM_RUGBY_FOULER
, PM_BONEBREAKER
,
3870 PM_COUNTER_ACE
, PM_M__TO_M___
, S_TROLL
, S_ZOMBIE
,
3872 ART_WORLD_LEAGUE_HITTER
, /* baseball bat */
3873 MH_HUMAN
|MH_ELF
|MH_DWARF
|MH_GNOME
|MH_HOBBIT
|MH_VAMPIRE
|MH_WERE
|MH_ORC
| ROLE_MALE
|ROLE_FEMALE
|
3874 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
3875 /* Str Int Wis Dex Con Cha */
3876 /*{ 16, 7, 7, 15, 16, 6 },*/
3877 { 3, 3, 3, 3, 3, 3 },
3878 { 15, 10, 5, 15, 50, 5 },
3879 /* new limit values for the six attributes by Amy */
3880 { STR18(100), 16, 14, 20, 25, 18 },
3881 /* Init Lower Higher */
3882 { 25, 0, 0, 10, 5, 0 }, /* Hit points */
3883 { 1, 0, 0, 1, 0, 1 }, 16, /* Energy */
3884 10, 8, 0, 2, 12, A_INT
, SPE_SHUFFLE_MONSTER
, -4, 40
3887 /* Note: Rogue precedes Ranger so that use of `-R' on the command line
3888 retains its traditional meaning. */
3889 /* Amy edit - we enabled a new sorting system so this is moot. */
3892 #if 0 /* OBSOLETE */
3893 {"Edhel", "Elleth"},
3894 {"Edhel", "Elleth"}, /* elf-maid */
3895 {"Ohtar", "Ohtie"}, /* warrior */
3896 {"Kano", /* commander (Q.) ['a] */
3897 "Kanie"}, /* educated guess, until further research- SAC */
3898 {"Arandur", /* king's servant, minister (Q.) - guess */
3899 "Aranduriel"}, /* educated guess */
3900 {"Hir", "Hiril"}, /* lord, lady (S.) ['ir] */
3901 {"Aredhel", "Arwen"}, /* noble elf, maiden (S.) */
3902 {"Ernil", "Elentariel"}, /* prince (S.), elf-maiden (Q.) */
3903 {"Elentar", "Elentari"}, /* Star-king, -queen (Q.) */
3904 "Solonor Thelandira", "Aerdrie Faenya", "Lolth", /* Elven */
3909 {"Reconnoiterer", "Reconnoiteress"},
3911 {"Arbalester", 0}, /* One skilled at crossbows */
3913 {"Sharpshooter", 0},
3914 {"Marksman", "Markswoman"} },
3915 "Mercury", "_Venus", "Mars", /* Roman/planets */
3916 "Ran", "Orion's camp", "the cave of the wumpus",
3917 PM_RANGER
, NON_PM
, PM_UNDEAD_RANGER
, NON_PM
, PM_LITTLE_DOG
/* Orion & canis major */,
3918 PM_ORION
, PM_HUNTER
, PM_SCORPIUS
, PM_CRABBIUS
,
3919 PM_FOREST_CENTAUR
, PM_SCORPION
, S_CENTAUR
, S_SPIDER
,
3923 ART_LONGBOW_OF_DIANA
,
3924 MH_HUMAN
|MH_ELF
|MH_DWARF
|MH_GNOME
|MH_HOBBIT
|MH_VAMPIRE
|MH_WERE
|MH_ORC
|
3925 ROLE_MALE
|ROLE_FEMALE
| ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
3926 /* Str Int Wis Dex Con Cha */
3927 /*{ 13, 13, 13, 9, 13, 7 },*/
3928 { 3, 3, 3, 3, 3, 3 },
3929 { 30, 10, 10, 20, 20, 10 },
3930 /* new limit values for the six attributes by Amy */
3931 { STR18(50), 18, 16, 25, 16, 19 },
3932 /* Init Lower Higher */
3933 { 18, 0, 0, 6, 1, 0 }, /* Hit points */
3934 { 4, 0, 0, 1, 0, 1 },12, /* Energy */
3935 10, 9, 2, 1, 10, A_INT
, SPE_INVISIBILITY
, -4, 40
3938 { {"Ringseeker", 0}, {
3939 {"Hobbit Townie", 0},
3940 {"Drunken Hobbit", 0},
3941 {"Celebrating Hobbit", 0},
3943 {"Fellow of the Ring", 0},
3944 {"Moria Survivor", 0},
3945 {"Blarog Basher", 0},
3946 {"Mount Doom Hiker", 0},
3947 {"Hero who defeated Sauron", 0} },
3948 "Lurtz", "Saruman", "Morgoth",
3949 "Rin", "Bree", "Misty Mountains",
3950 PM_RINGSEEKER
, NON_PM
, PM_UNDEAD_RINGSEEKER
, NON_PM
, NON_PM
,
3951 PM_BILBO_BAGGINS
, PM_PROUDFOOT
, PM_GOLLUM
, PM_PSEUDO_GOLLUM
,
3952 PM_SWAMP_KOBOLD
, PM_URUK_HAI
, S_KOBOLD
, S_ORC
,
3954 MH_HUMAN
|MH_ELF
|MH_DWARF
|MH_GNOME
|MH_HOBBIT
|MH_VAMPIRE
|MH_WERE
|MH_ORC
| ROLE_MALE
|ROLE_FEMALE
|
3955 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
3956 /* Str Int Wis Dex Con Cha */
3957 /*{ 7, 10, 7, 7, 7, 7 },*/
3958 { 3, 3, 3, 3, 3, 3 },
3959 { 10, 30, 10, 20, 10, 20 },
3960 /* new limit values for the six attributes by Amy */
3961 { 16, 20, 20, 20, 14, 16 },
3962 /* Init Lower Higher */
3963 { 10, 0, 0, 6, 1, 0 }, /* Hit points */
3964 { 15, 4, 0, 2, 0, 2 },12, /* Energy */
3965 0, 0, -2, 4, 12, A_INT
, SPE_INVISIBILITY
, -4, 30
3969 {"Whistleblower", 0},
3975 {"Percussionist", 0},
3977 {"Synthesizer", 0} },
3978 "Classic Rock", "Symphonic Metal", "Hardcore Punk", /* music styles */
3979 "Roc", "Bigband Studio", "Black Metal Den",
3980 PM_ROCKER
, NON_PM
, PM_UNDEAD_ROCKER
, NON_PM
, PM_SPEEDHORSE
,
3981 PM_ROCKIN_ROLLER
, PM_ATTENDANT
, PM_DEATH_METAL_ORCHESTRA_LEADER
, PM_GOD_OF_SPEED_METAL
,
3982 PM_DEATH_METAL_FREAK
, PM_DEATH_METAL_DRUMMER
, S_HUMAN
, S_UNICORN
,
3984 MH_HUMAN
|MH_ELF
|MH_DWARF
|MH_GNOME
|MH_HOBBIT
|MH_VAMPIRE
|MH_WERE
|MH_ORC
|
3985 ROLE_MALE
|ROLE_FEMALE
|ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
3986 /* Str Int Wis Dex Con Cha */
3987 /*{ 10, 7, 7, 7, 13, 6 },*/
3988 { 3, 3, 3, 3, 3, 3 },
3989 { 20, 20, 10, 20, 20, 10 },
3990 /* new limit values for the six attributes by Amy */
3991 { STR19(19), 14, 17, 18, 19, 19 },
3992 /* Init Lower Higher */
3993 { 12, 0, 0, 8, 0, 0 }, /* Hit points */
3994 { 3, 0, 0, 1, 0, 1 },10, /* Energy */
3995 -10, 5, 0, 2, 10, A_INT
, SPE_FORCE_BOLT
, -4, 30
4006 {"Magsman", "Magswoman"},
4008 "Issek", "Mog", "Kos", /* Nehwon */
4009 "Rog", "the Thieves' Guild Hall", "the Assassins' Guild Hall",
4010 PM_ROGUE
, NON_PM
, PM_UNDEAD_ROGUE
, NON_PM
, NON_PM
,
4011 PM_MASTER_OF_THIEVES
, PM_THUG
, PM_MASTER_ASSASSIN
, PM_DEMIMASTER_ASSASSIN
,
4012 PM_LEPRECHAUN
, PM_GUARDIAN_NAGA
, S_NYMPH
, S_NAGA
,
4014 ART_DOOMBLADE
, ART_BAT_FROM_HELL
,
4016 ART_MASTER_KEY_OF_THIEVERY
,
4017 MH_HUMAN
|MH_ELF
|MH_DWARF
|MH_GNOME
|MH_HOBBIT
|MH_VAMPIRE
|MH_WERE
|MH_ORC
| ROLE_MALE
|ROLE_FEMALE
|
4018 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
4019 /* Str Int Wis Dex Con Cha */
4020 /*{ 7, 7, 7, 10, 7, 6 },*/
4021 { 3, 3, 3, 3, 3, 3 },
4022 { 20, 10, 10, 30, 20, 10 },
4023 /* new limit values for the six attributes by Amy */
4024 { STR18(50), 18, 15, 25, 17, 20 },
4025 /* Init Lower Higher */
4026 { 15, 0, 0, 8, 1, 0 }, /* Hit points */
4027 { 3, 0, 0, 1, 0, 1 },11, /* Energy */
4028 10, 8, 0, 1, 9, A_INT
, SPE_DETECT_TREASURE
, -4, 30
4034 {"Secret Keeper", 0},
4036 {"Witchcrafter", 0},
4039 {"Astral Caster", 0},
4040 {"Master Of All Spells", 0}},
4041 "_Cassandra", "Menelaos", "_Helen of Troy", /* Greek history */
4042 "Sag", "Ancient Sage College", "The Trojan Horse",
4043 PM_SAGE
, NON_PM
, PM_UNDEAD_SAGE
, NON_PM
, PM_KITTEN
,
4044 PM_ANCIENT_SAGE
, PM_APPRENTICE
, PM_RODNEY_S_TWIN
, PM_RODNEY_S_SISTER
,
4045 PM_AIR_SPIRIT
, PM_RODNEY_S_SISTER
, S_NEMESE
, S_NEMESE
,
4048 MH_HUMAN
|MH_ELF
|MH_DWARF
|MH_GNOME
|MH_HOBBIT
|MH_VAMPIRE
|MH_WERE
|MH_ORC
| ROLE_MALE
|ROLE_FEMALE
|
4049 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
4050 /* Str Int Wis Dex Con Cha */
4051 /*{ 7, 10, 7, 7, 7, 7 },*/
4052 { 3, 3, 3, 3, 3, 3 },
4053 { 10, 30, 30, 10, 10, 10 },
4054 /* new limit values for the six attributes by Amy */
4055 { 13, 22, 25, 17, 13, 19 },
4056 /* Init Lower Higher */
4057 { 15, 0, 0, 8, 1, 0 }, /* Hit points */
4058 { 25, 3, 0, 2, 0, 3 },12, /* Energy */
4059 0, 1, 0, 3, 10, A_INT
, SPE_CREATE_FAMILIAR
, -4, 200
4063 {"Little Wannabe Fighter", 0},
4064 {"Saiyan Amateur", 0},
4065 {"Saiyan Apprentice", 0},
4069 {"Saiyan Prince", 0},
4070 {"Saiyan General", 0},
4071 {"Saiyan Grandmaster", 0} },
4072 "Moori", "King Kai", "Vegeta", /* Dragonball series */
4073 "Sai", "Kame House", "Goku's arrival ship",
4074 PM_SAIYAN
, NON_PM
, PM_UNDEAD_SAIYAN
, NON_PM
, PM_DRAGONBALL_KID
,
4075 PM_MASTER_ROSHI
, PM_ROSHI
, PM_DARK_GOKU
, PM_FRIEZA
,
4076 PM_KAMEHAMEHA_FIGHTER
, PM_SUPER_SAIYAN
, S_HUMAN
, S_DEMON
,
4078 ART_MODIFIED_Z_SWORD
,
4079 MH_HUMAN
|MH_ELF
|MH_DWARF
|MH_GNOME
|MH_HOBBIT
|MH_VAMPIRE
|MH_WERE
|MH_ORC
| ROLE_MALE
|ROLE_FEMALE
|
4080 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
4081 /* Str Int Wis Dex Con Cha */
4082 /*{ 10, 7, 8, 8, 7, 7 },*/
4083 { 3, 3, 3, 3, 3, 3 },
4084 { 25, 10, 20, 20, 15, 10 },
4085 /* new limit values for the six attributes by Amy */
4086 { STR19(19), 17, 18, 19, 18, 16 },
4087 /* Init Lower Higher */
4088 { 17, 0, 0, 8, 1, 0 }, /* Hit points */
4089 { 8, 2, 0, 2, 0, 2 },10, /* Energy */
4090 10, 8,-2, 2, 20, A_WIS
, SPE_FINGER_OF_DEATH
, -4, 40
4095 {"Hatamoto", 0}, /* Banner Knight */
4096 {"Ronin", 0}, /* no allegiance */
4097 {"Ninja Gaiden", "Kunoichi"}, /* secret society */
4098 {"Joshu", 0}, /* heads a castle */
4099 {"Ryoshu", 0}, /* has a territory */
4100 {"Kokushu", 0}, /* heads a province */
4101 {"Daimyo", 0}, /* a samurai lord */
4102 {"Kuge", 0}, /* Noble of the Court */
4103 {"Shogun", 0} },/* supreme commander, warlord */
4104 "_Amaterasu Omikami", "Raijin", "Susanowo", /* Japanese */
4105 "Sam", "the Castle of the Taro Clan", "the Shogun's Castle",
4106 PM_SAMURAI
, NON_PM
, PM_UNDEAD_SAMURAI
, NON_PM
, PM_LITTLE_DOG
,
4107 PM_LORD_SATO
, PM_ROSHI
, PM_ASHIKAGA_TAKAUJI
, PM_OSAYO_NARAKAMI
,
4108 PM_WOLF
, PM_STALKER
, S_DOG
, S_ELEMENTAL
,
4110 ART_SNICKERSNEE
, ART_DRAGONBANE
,
4112 ART_TSURUGI_OF_MURAMASA
,
4113 MH_HUMAN
|MH_ELF
|MH_DWARF
|MH_GNOME
|MH_HOBBIT
|MH_VAMPIRE
|MH_WERE
|MH_ORC
| ROLE_MALE
|ROLE_FEMALE
| ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
4114 /* Str Int Wis Dex Con Cha */
4115 /*{ 10, 8, 7, 10, 17, 6 },*/
4116 { 3, 3, 3, 3, 3, 3 },
4117 { 30, 10, 8, 30, 14, 8 },
4118 /* new limit values for the six attributes by Amy */
4119 { STR18(100), 16, 18, 17, 18, 18 },
4120 /* Init Lower Higher */
4121 { 19, 0, 0, 8, 1, 0 }, /* Hit points */
4122 { 7, 0, 0, 1, 0, 1 },11, /* Energy */
4123 10, 10, 0, 0, 8, A_INT
, SPE_CLAIRVOYANCE
, -4, 20
4126 { {"Scientist", 0}, {
4129 {"Advanced Practician", 0},
4130 {"Experimentator", 0},
4132 {"Graduate Scientist", 0},
4133 {"Simpleton with a PhD",0},
4134 {"Rocket Scientist",0},
4135 {"Nobel-Prized Scientist",0} },
4136 "Nikola Tesla", "Erwin Schroedinger", "Wernher von Braun", /* famous scientists */
4137 "Sci", "Black Mesa Research Facility", "Xen",
4138 PM_SCIENTIST
, NON_PM
, PM_UNDEAD_SCIENTIST
, NON_PM
, NON_PM
,
4139 PM_GORDON_FREEMAN
, PM_HACKER
, PM_NIHILANTH
, PM_BIG_FLYING_BABY
,
4140 PM_INFANTRYMAN
, PM_GI_TROOPER
, S_GOLEM
, S_WALLMONST
,
4142 ART_OPERATIONAL_SCALPEL
,
4143 MH_HUMAN
|MH_ELF
|MH_DWARF
|MH_GNOME
|MH_HOBBIT
|MH_VAMPIRE
|MH_WERE
|MH_ORC
| ROLE_MALE
|ROLE_FEMALE
|
4144 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
4145 /* Str Int Wis Dex Con Cha */
4146 /*{ 10, 10, 10, 8, 9, 7 },*/
4147 { 3, 3, 3, 3, 3, 3 },
4148 { 20, 20, 20, 10, 20, 10 },
4149 /* new limit values for the six attributes by Amy */
4150 { STR18(50), 19, 18, 19, 14, 19 },
4151 /* Init Lower Higher */
4152 { 12, 0, 0, 3, 1, 0 }, /* Hit points */
4153 { 20, 5, 0, 1, 0, 2 },20, /* Energy */
4154 10, 3,-3, 2, 10, A_WIS
, SPE_IDENTIFY
, -4, 35
4157 { {"Secret Advice Member", 0}, {
4158 {"Hidden Operative", 0},
4160 {"Underground Agitator", 0},
4161 {"Secret Schemer", 0},
4163 {"Shady Executive", 0},
4164 {"Banishment Wielder", 0},
4165 {"Top-Secret Advice Member", 0},
4166 {"Boss of the Secret Advice", 0} },
4167 "_Katrin", "Len-kind", "Coffin Nail",
4168 "Sec", "Secret Advice Hiding Place", "Revoluzzer Force HQ",
4169 PM_SECRET_ADVICE_MEMBER
, NON_PM
, PM_UNDEAD_SECRET_ADVICE_MEMBER
, NON_PM
, PM_BUST_SUPERSECRET_ADVICE_RIFLING_UNVERIFIED_BOSOMING
,
4170 PM_CHAIRMAN_LEON
, PM_TROOPER
, PM_REVOLUTINO_MARI
, PM_ASS_GAS_SPREADER
,
4171 PM_BODYBUILDER_LICH
, PM_BACKFIRING_LICH
, S_ZOMBIE
, S_LICH
,
4174 MH_HUMAN
|MH_ELF
|MH_DWARF
|MH_GNOME
|MH_HOBBIT
|MH_VAMPIRE
|MH_WERE
|MH_ORC
|
4175 ROLE_MALE
|ROLE_FEMALE
|ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
4176 /* Str Int Wis Dex Con Cha */ /* Direct copy from Wizard */
4177 /*{ 7, 10, 7, 7, 7, 7 },*/
4178 { 3, 3, 3, 3, 3, 3 },
4179 { 15, 20, 15, 20, 15, 15 },
4180 /* new limit values for the six attributes by Amy */
4181 { STR19(20), 20, 20, 20, 20, 20 },
4182 /* Init Lower Higher */
4183 { 20, 0, 0, 4, 5, 0 }, /* Hit points */
4184 { 10, 2, 0, 2, 0, 3 }, 17, /* Energy */
4186 4, 5, A_WIS
, SPE_TELEPORT_AWAY
, -4, 100 /* From old role.c */
4189 { {"Shadow Jedi", 0}, {
4190 {"Dark Lighter", 0},
4192 {"Lightsaber Form Trainer", 0},
4193 {"Style Changer", 0},
4195 {"Jedi Without Jedi Powers", 0},
4196 {"Chargeless Power", 0},
4197 {"Fizzle-Fizzer", 0},
4198 {"Blacklight Master", 0} },
4199 "the Light Side", "the Force", "the Dark Side",
4200 "Sdw", "the Jedi Temple", "the Outer Rim",
4201 PM_SHADOW_JEDI
, NON_PM
, PM_UNDEAD_SHADOW_JEDI
, NON_PM
, PM_LITTLE_DOG
,
4202 PM_THE_JEDI_MASTER
, PM_PADAWAN
, PM_LORD_SIDIOUS
, PM_LORD_INSIDIOUS
,
4203 PM_SHOTGUN_STORMTROOPER
, PM_LASER_STORMTROOPER
, S_HUMAN
, S_HUMAN
,
4205 MH_HUMAN
|MH_ELF
|MH_DWARF
|MH_GNOME
|MH_HOBBIT
|MH_VAMPIRE
|MH_WERE
|MH_ORC
|
4206 ROLE_MALE
|ROLE_FEMALE
|ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
4207 /* Str Int Wis Dex Con Cha */
4208 /*{ 10, 7, 14, 12, 10, 14 },*/
4209 { 3, 3, 3, 3, 3, 3 },
4210 { 30, 15, 15, 10, 20, 10 },
4211 /* new limit values for the six attributes by Amy */
4212 { STR18(100), 18, 20, 20, 18, 20 },
4213 /* Init Lower Higher */
4214 { 20, 4, 0, 8, 2, 4 }, /* Hit points */
4215 { 5, 4, 0, 1, 0, 4 },10, /* Energy */
4217 2, 10, A_INT
, SPE_CHARM_MONSTER
, -4, 40
4220 { {"Shapeshifter", 0}, {
4221 {"Polymorph Trainee", 0},
4223 {"Polymorphitis Hero", 0},
4224 {"Wild Changer", 0},
4226 {"Human Chameleon", 0},
4227 {"Master Shapechanger", 0},
4228 {"Grandmaster Shapechanger", 0},
4229 {"Ultimate Shapechanger", 0} },
4230 0, 0, 0, /* chosen randomly from among the other roles */
4231 "Sha", "Transformer College", "Mutation Cave",
4232 PM_SHAPESHIFTER
, NON_PM
, PM_UNDEAD_SHAPESHIFTER
, NON_PM
, PM_CHAMELEON
,
4233 PM_MASTER_SHIFTER
, PM_SHIFTER
, PM_TRANSMUTER
, PM_TRANSFORMATOR
,
4234 PM_CHAMELEON
, PM_GUARDIAN_NAGA
, S_LIZARD
, S_NAGA
,
4235 ART_MEDALLION_OF_SHIFTERS
,
4236 MH_HUMAN
|MH_ELF
|MH_DWARF
|MH_GNOME
|MH_HOBBIT
|MH_VAMPIRE
|MH_WERE
|MH_ORC
|
4237 ROLE_MALE
|ROLE_FEMALE
| ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
4238 /* Str Int Wis Dex Con Cha */
4239 /*{ 13, 13, 13, 9, 13, 7 },*/
4240 { 3, 3, 3, 3, 3, 3 },
4241 { 10, 25, 25, 10, 10, 20 },
4242 /* new limit values for the six attributes by Amy */
4243 { 16, 17, 15, 14, 10, 12 },
4244 /* Init Lower Higher */
4245 { 12, 0, 0, 3, 1, 0 }, /* Hit points */
4246 { 20, 0, 0, 4, 0, 4 },12, /* Energy */
4247 10, 9, 2, 1, 10, A_INT
, SPE_POLYMORPH
, -4, 30
4250 { {"Shoe Fetishist", 0}, {
4252 {"Combat Boot Slave", 0},
4253 {"Shin-Smashed Sneaker", 0},
4254 {"Bathtub Despairer", 0},
4255 {"Dogshit Challenger", 0},
4256 {"Final Dancer", 0},
4257 {"Fall-From-Grace", 0},
4258 {"Toilet Puzzler", 0},
4259 {"Winner At Last", 0} },
4260 "Birkenstock", "Tamaris", "Peter Kaiser", /* German shoe brands */
4261 "Sho", "Heel Hall", "Underway Simulation",
4262 PM_SHOE_FETISHIST
, NON_PM
, PM_UNDEAD_SHOE_FETISHIST
, NON_PM
, PM_KATI_S_STRIPED_SNEAKER
,
4263 PM_SIMULATION_LEADER
, PM_MODEL
, PM_ARABELLA
, PM_TUFTED_ASIAN_GIRL
, /* make sure Arabella doesn't get the wand! */
4264 PM_ANTJE_S_BLOCK_HEELED_BOOT
, PM_HENRIETTA_S_THICK_BLOCK_HEELED_BOOT
, S_RODENT
, S_SPIDER
,
4266 ART_KATHARINA_S_LOVELINESS
, /* platform boots */
4267 MH_HUMAN
|MH_ELF
|MH_DWARF
|MH_GNOME
|MH_HOBBIT
|MH_VAMPIRE
|MH_WERE
|MH_ORC
|
4268 ROLE_MALE
|ROLE_FEMALE
|ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
4269 /* Str Int Wis Dex Con Cha */ /* Direct copy from Wizard */
4270 /*{ 7, 10, 7, 7, 7, 7 },*/
4271 { 3, 3, 3, 3, 3, 3 },
4272 { 10, 20, 15, 15, 10, 30 },
4273 /* new limit values for the six attributes by Amy */
4274 { 16, 18, 18, 18, 14, 18 },
4275 /* Init Lower Higher */
4276 { 9, 0, 0, 1, 1, 0 }, /* Hit points */
4277 { 0, 0, 0, 1, 0, 1 }, 14, /* Energy */
4279 12, 10, A_INT
, SPE_HOLD_AIR
, -4, 30 /* From old role.c */
4282 { {"Singslave", 0}, {
4283 {"Imprisoned Fool", 0},
4285 {"Shocked Cleaner", 0},
4286 {"Dogshit Remover", 0},
4287 {"Mastercurser", 0},
4288 {"Hard-Working Slave", 0},
4289 {"Re-Imprisoned", 0},
4290 {"Work Refuser", 0},
4291 {"Escaped Ex-Slave", 0} },
4292 "_Blue-Heeled Ute", "_Red-Heeled Nancy", "_Ski-Heeled Brigitte",
4293 "Sin", "Tinbrook Shop", "Shoe Torture Chamber",
4294 PM_SINGSLAVE
, NON_PM
, PM_UNDEAD_SINGSLAVE
, NON_PM
, PM_SLAVE
,
4295 PM_TUFTRIKE
, PM_SERVANT
, PM_PROFILE_KATI
, PM_BROWN_BOOT_BITCH
,
4296 PM_NEREID
, PM_LILLDESEAM
, S_NYMPH
, S_ANGEL
,
4298 ART_SABRINA_S_RESCUE
, /* platform boot */
4299 MH_HUMAN
|MH_ELF
|MH_DWARF
|MH_GNOME
|MH_HOBBIT
|MH_VAMPIRE
|MH_WERE
|MH_ORC
|
4300 ROLE_MALE
|ROLE_FEMALE
|ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
4301 /* Str Int Wis Dex Con Cha */ /* Direct copy from Wizard */
4302 /*{ 7, 10, 7, 7, 7, 7 },*/
4303 { 3, 3, 3, 3, 3, 3 },
4304 { 20, 15, 15, 20, 20, 10 },
4305 /* new limit values for the six attributes by Amy */
4306 { STR18(50), 17, 16, 15, 18, 15 },
4307 /* Init Lower Higher */
4308 { 12, 0, 0, 3, 2, 0 }, /* Hit points */
4309 { 2, 1, 0, 1, 0, 0 },11, /* Energy */
4311 4, 12, A_INT
, SPE_REPAIR_ARMOR
, -4, 20 /* From old role.c */
4315 { {"Slave Master", 0}, {
4316 {"Slave Trader", 0},
4317 {"People Seller", 0},
4318 {"Human Abducter", 0},
4319 {"Professional Slaver", 0},
4323 {"Master Slaver", 0},
4324 {"King of Slavers", "Queen of Slavers"}},
4325 "Airyaman", "Gandarewa", "Daevas", /* Persian */
4326 "Sla", "Prassia", "Ankh-Morpork",
4327 PM_SLAVE_MASTER
, NON_PM
, PM_UNDEAD_SLAVE_MASTER
, NON_PM
, PM_BIG_DOG
,
4328 PM_SLAVE_EMPEROR
, PM_STUDENT
, PM_RINCEWIND
, PM_FAILED_SORCEROR
,
4329 PM_FROST_MONSTER
, PM_AQUA_MUNCHER
, S_JABBERWOCK
, S_RUSTMONST
,
4332 MH_HUMAN
|MH_ELF
|MH_DWARF
|MH_GNOME
|MH_HOBBIT
|MH_VAMPIRE
|MH_WERE
|MH_ORC
|
4333 ROLE_MALE
|ROLE_FEMALE
| ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
4334 /* Str Int Wis Dex Con Cha */
4335 /* { 7, 10, 10, 7, 7, 7 },*/
4336 { 3, 3, 3, 3, 3, 3 },
4337 { 15, 5, 15, 30, 30, 5 },
4338 /* new limit values for the six attributes by Amy */
4339 { STR19(20), 16, 8, 19, 20, 19 },
4340 /* Init Lower Higher */
4341 { 16, 0, 0, 8, 1, 0 }, /* Hit points */
4342 { 10, 0, 0, 1, 0, 1 },14, /* Energy */
4343 10, 5, 0, 2, 10, A_INT
, SPE_COMMAND_UNDEAD
, -4, 40
4346 { {"Social Justice Warrior", 0}, {
4347 {"Safe Zone Kid", 0},
4348 {"Low Gatekeeper", 0},
4349 {"Cesspool Dweller", 0},
4350 {"Intolerant Fanatic", 0},
4351 {"Echo Chamber Sounder", 0},
4352 {"Banhammer Wielder", 0},
4353 {"Party Line Ensurer", 0},
4355 {"Major Minoritist", 0} },
4356 "_Zoe Quinn", "_Brianna Wu", "_Anita Sarkeesian", /* feminists */
4357 "Soc", "Secluded Forum", "Evil Wide World",
4358 PM_SOCIAL_JUSTICE_WARRIOR
, NON_PM
, PM_UNDEAD_SOCIAL_JUSTICE_WARRIOR
, NON_PM
, PM_OFFICER_JENNY
,
4359 PM_ZEALOUS_MODERATOR
, PM_THUG
, PM_FAT_GROPER
, PM_STROKE_FEEL_UPPER
,
4360 PM_CLONED_NEW_VEGAS_NPC
, PM_ULTRA_DESTRUCTIVE_MONSTER
, S_ZOMBIE
, S_GOLEM
,
4362 ART_MARKER_OF_SAFE_SPEECH
,
4363 MH_HUMAN
|MH_ELF
|MH_DWARF
|MH_GNOME
|MH_HOBBIT
|MH_VAMPIRE
|MH_WERE
|MH_ORC
| ROLE_MALE
|ROLE_FEMALE
|
4364 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
4365 /* Str Int Wis Dex Con Cha */
4366 /*{ 16, 7, 7, 15, 16, 6 },*/
4367 { 3, 3, 3, 3, 3, 3 },
4368 { 15, 10, 10, 20, 20, 25 },
4369 /* new limit values for the six attributes by Amy */
4370 { STR18(50), 15, 16, 19, 20, 18 },
4371 /* Init Lower Higher */
4372 { 14, 0, 0, 7, 1, 0 }, /* Hit points */
4373 { 7, 0, 0, 1, 0, 6 }, 15, /* Energy */
4374 0, 4, -2, 6, 12, A_WIS
, SPE_PROTECTION
, -4, 70
4377 { {"Software Engineer", 0}, {
4378 {"Summer Intern", 0},
4380 {"Web Designer", 0},
4381 {"Help Desk Jockey", 0},
4382 {"Junior Programmer", 0},
4384 {"Lead Programmer", 0},
4385 {"VP Engineering", 0},
4386 {"High Programmer", 0} },
4387 "Linus Torvalds", "Bjarne Stroustrup", "Mark Zuckerberg", /* famous software engineers */
4388 "Sof", "Devteam Codebase", "H@cker Central",
4389 PM_SOFTWARE_ENGINEER
, NON_PM
, PM_UNDEAD_SOFTWARE_ENGINEER
, NON_PM
, PM_GEEK
,
4390 PM_THE_DEV_TEAM
, PM_HACKER
, PM_ANONYMOUS_LEADER
, PM__CHAN_POSTER
,
4391 PM_WINDOWS_____
, PM_WINDOWS____SMARTPHONE_EDITION_
, S_XAN
, S_XAN
,
4394 MH_HUMAN
|MH_ELF
|MH_DWARF
|MH_GNOME
|MH_HOBBIT
|MH_VAMPIRE
|MH_WERE
|MH_ORC
| ROLE_MALE
|ROLE_FEMALE
|
4395 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
4396 /* Str Int Wis Dex Con Cha */
4397 /*{ 16, 7, 7, 15, 16, 6 },*/
4398 { 3, 3, 3, 3, 3, 3 },
4399 { 10, 30, 20, 20, 10, 10 },
4400 /* new limit values for the six attributes by Amy */
4401 { 16, 24, 20, 18, 15, 16 },
4402 /* Init Lower Higher */
4403 { 10, 0, 0, 6, 2, 0 }, /* Hit points */
4404 { 12, 0, 0, 6, 0, 4 }, 14, /* Energy */
4405 10, 5, 0, 1, 5, A_INT
, SPE_CODE_EDITING
, -4, 200
4408 { {"Space Marine", 0}, {
4411 {"Space Sergeant", 0},
4413 {"Space Lieutenant", 0},
4414 {"Space Captain", 0},
4416 {"Space Colonel", 0},
4417 {"Space General", 0} },
4418 "Krog", "Winston", "Cyrus", /* Clan EIT; Cyrus is also the ZAPM lead dev */
4419 "Sma", "Ye Olde Space Base", "Delta Caves",
4420 PM_SPACE_MARINE
, NON_PM
, PM_UNDEAD_SPACE_MARINE
, NON_PM
, PM_CUNTGUN_TROOPER
,
4421 PM_EITBO
, PM_TROOPER
, PM_THE_SPIDER_MASTERMIND
, PM_SPIDERDEMON_CLONE
,
4422 PM_KLINGON_CAPTAIN
, PM_SPACE_ORC_BOSS
, S_ORC
, S_HUMAN
,
4424 ART_PIN_RACKET
, /* some sort of melee weapon */
4425 MH_HUMAN
|MH_ELF
|MH_DWARF
|MH_GNOME
|MH_HOBBIT
|MH_VAMPIRE
|MH_WERE
|MH_ORC
| ROLE_MALE
|ROLE_FEMALE
|
4426 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
4427 /* Str Int Wis Dex Con Cha */
4428 /*{ 16, 7, 7, 15, 16, 6 },*/
4429 { 3, 3, 3, 3, 3, 3 },
4430 { 30, 5, 5, 20, 30, 10 },
4431 /* new limit values for the six attributes by Amy */
4432 { STR19(25), 15, 15, 18, 22, 18 },
4433 /* Init Lower Higher */
4434 { 24, 0, 0, 10, 5, 0 }, /* Hit points */
4435 { 1, 0, 0, 1, 0, 1 }, 15, /* Energy */
4436 10, 16, 4, 6, 20, A_WIS
, SPE_SHINING_WAVE
, -4, 30
4439 { {"Spacewars Fighter", 0}, {
4440 {"Roguelike Beginner", 0},
4441 {"Dungeon Explorer", 0},
4442 {"Sword Swinger", 0},
4443 {"Burly Combatant", 0},
4448 {"King's True Heir", 0} },
4449 "_Lady Ariane", "Lord Stahngnir", "Sven Fanara", /* from a certain book --Amy */
4450 "Spa", "Tiny Hamlet", "Inside Part",
4451 PM_SPACEWARS_FIGHTER
, NON_PM
, PM_UNDEAD_SPACEWARS_FIGHTER
, NON_PM
, NON_PM
,
4452 PM_MARC
, PM_ATTENDANT
, PM_ARABELLA
, PM_TUFTED_ASIAN_GIRL
,
4453 PM_WIZARD
, PM_MANTICORE
, S_HUMAN
, S_DRAGON
,
4455 MH_HUMAN
|MH_ELF
|MH_DWARF
|MH_GNOME
|MH_HOBBIT
|MH_VAMPIRE
|MH_WERE
|MH_ORC
| ROLE_MALE
|ROLE_FEMALE
| ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
4456 /* Str Int Wis Dex Con Cha */
4457 { 3, 3, 3, 3, 3, 3 },
4458 { 17, 17, 16, 17, 17, 16 },
4459 /* new limit values for the six attributes by Amy */
4460 { STR18(100), 18, 18, 18, 18, 18 },
4461 /* Init Lower Higher */
4462 { 19, 0, 0, 8, 2, 0 }, /* Hit points */
4463 { 10, 4, 0, 1, 0, 2 },10, /* Energy */
4464 10, 8,-2, 0, 9, A_INT
, SPE_DETECT_MONSTERS
, -4, 100
4467 { {"Spellmaster", 0}, {
4468 {"Apprentice Caster", 0},
4469 {"Spell Retainer", 0},
4470 {"Magicspammer", 0},
4471 {"Continuous Caster", 0},
4473 {"Master of Magic", 0},
4474 {"Grandmaster of Magic", 0},
4475 {"Spellmaster of the Universe", 0},
4476 {"Walking Book Of All Spells", 0} },
4477 "_The Sexy Maidens", "_The Sassy Girls", "_The Indomitable Women", /* Amy original: "equality world" */
4478 "Spe", "Spellmastery Base", "Weaponlord Base",
4479 PM_SPELLMASTER
, NON_PM
, PM_SPELLMASTER
, NON_PM
, NON_PM
,
4480 PM_SUPREME_SPELLCASTER
, PM_ATTENDANT
, PM_INTENDONER
, PM_INTENTIONALER
,
4481 PM_REMEMBERED_UFO_PART
, PM_SPELLZAP_TURRET
, S_GIANT
, S_TURRET
,
4483 ART_HUUUUUGE_POWER
, /* amulet of power */
4484 MH_HUMAN
|MH_ELF
|MH_DWARF
|MH_GNOME
|MH_HOBBIT
|MH_VAMPIRE
|MH_WERE
|MH_ORC
|
4485 ROLE_MALE
|ROLE_FEMALE
|ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
4486 /* Str Int Wis Dex Con Cha */ /* Direct copy from Wizard */
4487 /*{ 7, 10, 7, 7, 7, 7 },*/
4488 { 3, 3, 3, 3, 3, 3 },
4489 { 5, 35, 35, 10, 5, 10 },
4490 /* new limit values for the six attributes by Amy */
4491 { 4, 18, 18, 4, 4, 4 },
4492 /* Init Lower Higher */
4493 { 9, 0, 0, 0, 0, 0 }, /* Hit points */
4494 { 40, 10, 0, 10, 0, 10},16, /* Energy */
4496 0, 3, A_INT
, SPE_RAGNAROK
, -4, 500 /* From old role.c */
4499 { {"Stormboy", 0}, {
4501 {"Cannon Fodder", 0},
4509 "Cortege", "Tache", "Pillory", /* from Pokemon Vietnamese Crystal */
4510 "Sto", "Stormy Mountain", "Deepsea Plane",
4511 PM_STORMBOY
, NON_PM
, PM_UNDEAD_STORMBOY
, NON_PM
, PM_DRATINI
,
4512 PM_STINKBUG_UNBLEMISHED
, PM_FELLOW_DEATH_EATER
, PM_PRESAGE_OCTUPLE_GULPING
, PM_POSTERN_BREW
,
4513 PM_GREATER_WATER_ELEMENTAL
, PM_RUST_VORTEX
, S_ELEMENTAL
, S_VORTEX
,
4515 ART_THUNDERSTRIKE
, /* melee weapon with shock damage */
4516 MH_HUMAN
|MH_ELF
|MH_DWARF
|MH_GNOME
|MH_HOBBIT
|MH_VAMPIRE
|MH_WERE
|MH_ORC
| ROLE_MALE
|ROLE_FEMALE
|
4517 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
4518 /* Str Int Wis Dex Con Cha */
4519 /*{ 16, 7, 7, 15, 16, 6 },*/
4520 { 3, 3, 3, 3, 3, 3 },
4521 { 25, 10, 5, 20, 30, 10 },
4522 /* new limit values for the six attributes by Amy */
4523 { STR18(100), 18, 15, 19, 21, 16 },
4524 /* Init Lower Higher */
4525 { 18, 0, 0, 7, 4, 0 }, /* Hit points */
4526 { 2, 0, 0, 2, 0, 3 }, 12, /* Energy */
4527 0, 12, 0, 4, 15, A_INT
, SPE_THUNDER
, -4, 20
4530 { {"Supermarket Cashier", 0}, {
4532 {"Shift Worker", 0},
4533 {"Accord Worker", 0},
4534 {"Bored Cashier", 0},
4535 {"Shoplifter Detector", 0},
4536 {"Detective disguised as Cashier", 0},
4537 {"Gun-toting Shopkeeper", 0},
4538 {"Thief's Bane", 0},
4540 "the Homies", "the Robbers", "the Motherfuckers", /* taken from a fanfic */
4541 "Sup", "the local Wal-Mart", "those filthy spying inspectors' office",
4542 PM_SUPERMARKET_CASHIER
, NON_PM
, PM_UNDEAD_SUPERMARKET_CASHIER
, NON_PM
, PM_WOLF
,
4543 PM_MUSTACHED_NIGHTSHIFT_SUPERMARKET_MANAGER
, PM_GUIDE
, PM_THE_LOCAL_HEALTH_INSPECTOR
, PM_INCAPABLE_MALE_NURSE
,
4544 PM_STORECLERK
, PM_WERERAT
, S_HUMAN
, S_RODENT
,
4547 MH_HUMAN
|MH_ELF
|MH_DWARF
|MH_GNOME
|MH_HOBBIT
|MH_VAMPIRE
|MH_WERE
|MH_ORC
| ROLE_MALE
|ROLE_FEMALE
| ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
4548 /* Str Int Wis Dex Con Cha */
4549 /*{ 7, 10, 6, 7, 7, 10 },*/
4550 { 3, 3, 3, 3, 3, 3 },
4551 { 5, 5, 15, 15, 30, 30 },
4552 /* new limit values for the six attributes by Amy */
4553 { STR18(100), 18, 18, 19, 16, 19 },
4554 /* Init Lower Higher */
4555 { 16, 0, 0, 8, 0, 0 }, /* Hit points */
4556 { 12, 0, 0, 1, 0, 1 },14, /* Energy */
4557 0, 5, 1, 2, 10, A_INT
, SPE_TELEPORT_AWAY
, -4, 40
4560 { { "Symbiant", 0 }, {
4562 { "Piggybacker", 0 },
4563 { "Stationary Seeker", 0 },
4564 { "Symbiote Powerer", 0 },
4565 { "Master of Greater Powers", 0 },
4566 { "Sym-Breather", 0 },
4567 { "Elite Symbiant", 0 },
4568 { "Master Jelly Farmer", 0 },
4569 { "Supreme Symbiosis Teacher", 0 } },
4570 "Erotic Air Current Noises", "Wonderful Rubbing Noises", "Sexy Licking Noises", /* Amyism :D */
4571 "Sym", "Lothlorien Forest", "The Princess's Another Castle",
4572 PM_SYMBIANT
, NON_PM
, PM_UNDEAD_SYMBIANT
, NON_PM
, PM_SPIKE_MOLD
,
4573 PM_TURGON
, PM_HIGHEST_ELF
, PM_ILLUSORY_REFLECTOR_GOLEM
, PM_PSEUDO_CASTLE_BOSS
,
4574 PM_TRIP_GRUE
, PM_HUGE_PILE_OF_KILLER_COINS
, S_GRUE
, S_BAD_COINS
,
4575 ART_HUNGERHEALER
, /* H2G2, passively increases hunger and heals symbiote while it's in your inventory */
4576 MH_HUMAN
|MH_ELF
|MH_DWARF
|MH_GNOME
|MH_HOBBIT
|MH_VAMPIRE
|MH_WERE
|MH_ORC
|
4577 ROLE_MALE
|ROLE_FEMALE
|ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
4578 /* Str Int Wis Dex Con Cha */
4579 { 3, 3, 3, 3, 3, 3 },
4580 { 10, 20, 30, 15, 10, 15 },
4581 /* new limit values for the six attributes by Amy */
4582 { 16, 18, 20, 18, 16, 18 },
4583 /* Init Lower Higher */
4584 { 9, 0, 0, 1, 1, 0 }, /* Hit points */
4585 { 8, 4, 0, 6, 0, 4 },15, /* Energy */
4587 5, 10, A_WIS
, SPE_SYMHEAL
, -4, 75
4591 {"Concordate Agent", 0},
4592 {"Whitegold Ambassador", 0},
4593 {"Heretic Hunter", 0},
4594 {"enemy of Talos", 0},
4595 {"Hunter of Blades", 0},
4596 {"Elven Secret Agent", 0},
4597 {"Aldmeri Dominion", 0},
4599 {"Summerset Dictator", 0} },
4600 "Manwe Sulimo", "Mandos", "Lorien", /* Elven */
4602 "Tha", "Thalmor Embassy", "Cloud Ruler Temple",
4603 PM_THALMOR
, NON_PM
, PM_UNDEAD_THALMOR
, NON_PM
, PM_THALMOR
,
4604 PM_ELENWEN
, PM_HIGHEST_ELF
, PM_ESBERN
, PM_JAUFFRE
,
4605 PM_HEDROW_BLADEMASTER
, PM_BLACKBELT
, S_HUMAN
, S_HUMAN
,
4608 MH_HUMAN
|MH_ELF
|MH_DWARF
|MH_GNOME
|MH_HOBBIT
|MH_VAMPIRE
|MH_WERE
|MH_ORC
|
4609 ROLE_MALE
|ROLE_FEMALE
| ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
4610 /* Str Int Wis Dex Con Cha */
4611 /*{ 13, 13, 13, 9, 13, 7 },*/
4612 { 3, 3, 3, 3, 3, 3 },
4613 { 17, 17, 17, 17, 16, 16 },
4614 /* new limit values for the six attributes by Amy */
4615 { STR18(50), 19, 16, 18, 17, 20 },
4616 /* Init Lower Higher */
4617 { 15, 0, 0, 4, 4, 0 }, /* Hit points */
4618 { 10, 0, 0, 4, 0, 4 },12, /* Energy */
4619 10, 9, 2, 1, 10, A_INT
, SPE_FULL_HEALING
, -4, 50
4622 { {"Topmodel", 0}, {
4624 {"Catwalk Tester", 0},
4625 {"Curved Woman", 0},
4626 {"Playboy Bunny", 0},
4628 {"Lovely Chick", 0},
4630 {"ANTM Semi-Finalist", 0},
4631 {"ANTM Finalist", 0} },
4632 "Speedy Gonzales", "Dan Naginati", "_Kylie Lum", /* taken from a fanfic */
4633 "Top", "Red Carpet", "Violet Carpet", /* transvestite enemies like purple and violet */
4634 PM_TOPMODEL
, NON_PM
, PM_UNDEAD_TOPMODEL
, NON_PM
, NON_PM
,
4635 PM_CAMP_PORTER
, PM_MODEL
, PM_ACTIVIST_LEADER
, PM_FEMEN_WARLORD
,
4636 PM_TRANSVESTITE
, PM_ACTIVIST
, S_HUMAN
, S_HUMAN
,
4637 ART_GOLDEN_HIGH_HEELS
,
4638 MH_HUMAN
|MH_ELF
|MH_DWARF
|MH_GNOME
|MH_HOBBIT
|MH_VAMPIRE
|MH_WERE
|MH_ORC
|
4639 ROLE_MALE
|ROLE_FEMALE
| ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
4640 /* Str Int Wis Dex Con Cha */
4641 /*{ 13, 13, 13, 9, 13, 7 },*/
4642 { 3, 3, 3, 3, 3, 3 },
4643 { 10, 25, 15, 15, 10, 25 },
4644 /* new limit values for the six attributes by Amy */
4645 { 12, 16, 16, 21, 14, 25 },
4646 /* Init Lower Higher */
4647 { 12, 0, 0, 4, 2, 0 }, /* Hit points */
4648 { 8, 0, 0, 1, 0, 2 },12, /* Energy */
4649 10, 9, 2, 1, 10, A_INT
, SPE_CHARM_MONSTER
, -4, 90
4652 { { "Tosser", 0 }, {
4653 { "Javazon Wannabe", 0 },
4655 { "Graystabber", 0 },
4656 { "Stack Increaser", 0 },
4657 { "Uncommon Flinger", 0 },
4658 { "Wood Chooser", 0 },
4659 { "Javelin Forger", 0 },
4660 { "Bigstacker", 0 },
4661 { "Torpedo Launcher", 0 } },
4662 "Arihant", "Siddha", "Acharya", /* Jain */
4663 "Tos", "Measurer Spear Base", "Sierra Madre Vault",
4664 PM_TOSSER
, NON_PM
, PM_UNDEAD_TOSSER
, NON_PM
, NON_PM
,
4665 PM_MUTE_CHRISTINE
, PM_HUNTER
, PM_FATHER_ELIJAH
, PM_TRAITORIOUS_ELDER
,
4666 PM_FETTER_GHOST
, PM_MUTANT_NINJA_TURTLE
, S_GHOST
, S_UMBER
,
4667 ART_CLEAN_MAULER
, /* some kind of spear, always hits as a +4 weapon and +20 damage, +10 to-hit but dulls quickly like ceramic */
4668 MH_HUMAN
|MH_ELF
|MH_DWARF
|MH_GNOME
|MH_HOBBIT
|MH_VAMPIRE
|MH_WERE
|MH_ORC
|
4669 ROLE_MALE
|ROLE_FEMALE
|ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
4670 /* Str Int Wis Dex Con Cha */
4671 { 3, 3, 3, 3, 3, 3 },
4672 { 20, 15, 15, 20, 15, 15 },
4673 /* new limit values for the six attributes by Amy */
4674 { STR18(100), 18, 18, 21, 18, 18 },
4675 /* Init Lower Higher */
4676 { 12, 0, 0, 4, 3, 0 }, /* Hit points */
4677 { 4, 2, 0, 2, 0, 2 },14, /* Energy */
4679 4, 12, A_INT
, SPE_STEALTH
, -4, 40
4686 {"Peregrinator","Peregrinatrix"},
4691 {"Adventurer", 0} },
4692 "Blind Io", "_The Lady", "Offler", /* Discworld */
4693 "Tou", "Ankh-Morpork", "the Thieves' Guild Hall",
4694 PM_TOURIST
, NON_PM
, PM_UNDEAD_TOURIST
, NON_PM
, NON_PM
,
4695 PM_TWOFLOWER
, PM_GUIDE
, PM_MASTER_OF_THIEVES
, PM_MASTER_OF_DESASTER
,
4696 PM_GIANT_SPIDER
, PM_FOREST_CENTAUR
, S_SPIDER
, S_CENTAUR
,
4698 ART_WHISPERFEET
, ART_LUCKBLADE
,
4700 ART_YENDORIAN_EXPRESS_CARD
,
4701 MH_HUMAN
|MH_ELF
|MH_DWARF
|MH_GNOME
|MH_HOBBIT
|MH_VAMPIRE
|MH_WERE
|MH_ORC
| ROLE_MALE
|ROLE_FEMALE
| ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
4702 /* Str Int Wis Dex Con Cha */
4703 /*{ 7, 10, 6, 7, 7, 10 },*/
4704 { 3, 3, 3, 3, 3, 3 },
4705 { 15, 10, 10, 15, 30, 20 },
4706 /* new limit values for the six attributes by Amy */
4707 { STR18(20), 16, 15, 18, 14, 22 },
4708 /* Init Lower Higher */
4709 { 16, 0, 0, 8, 0, 0 }, /* Hit points */
4710 { 12, 0, 0, 1, 0, 1 },14, /* Energy */
4711 0, 5, 1, 2, 10, A_INT
, SPE_CHARM_MONSTER
, -4, 40
4715 {"Cursed Beginner", 0},
4717 {"Would-Be Creator", 0},
4718 {"Fated Grumbler", 0},
4720 {"Sent Manipulator", 0},
4721 {"Evasive Switcher", 0},
4722 {"Random Ascension Kit Wearer", 0},
4723 {"Nastiness Survivor", 0} },
4724 "Fate", "Unlimited Blade Works", "Heaven's Feel",
4725 "Trc", "Game Alike Hall", "Trapped Corridor",
4726 PM_TRACER
, NON_PM
, PM_UNDEAD_TRACER
, NON_PM
, PM_ROTHE
,
4727 PM_STEREOTYPICAL_QUEST_GIVER
, PM_STARNOID
, PM_EVIL_PATCH_PERPETRATOR
, PM_FIGMENT_OF_NASTINESS
,
4728 PM_BAOBHAN_SITH
, PM_SNAKEMAN_BRUTE
, S_HUMANOID
, S_QUANTMECH
,
4729 ART_SWORD_OF_GILGAMESH
,
4730 MH_HUMAN
|MH_ELF
|MH_DWARF
|MH_GNOME
|MH_HOBBIT
|MH_VAMPIRE
|MH_WERE
|MH_ORC
|
4731 ROLE_MALE
|ROLE_FEMALE
| ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
4732 /* Str Int Wis Dex Con Cha */
4733 /*{ 13, 13, 13, 9, 13, 7 },*/
4734 { 3, 3, 3, 3, 3, 3 },
4735 { 15, 15, 5, 30, 10, 25 },
4736 /* new limit values for the six attributes by Amy */
4737 { STR18(40), 18, 16, 19, 15, 18 },
4738 /* Init Lower Higher */
4739 { 8, 0, 0, 1, 7, 0 }, /* Hit points */
4740 { 35, 0, 0, 1, 0, 1 }, 20, /* Energy */
4741 0, 12, -6, 2, 4, A_INT
, SPE_POLYFORM
, -4, 50
4744 { {"Transsylvanian", 0}, {
4746 {"Stiletto Lover", 0},
4747 {"Khmer-Speaking Transvestite", 0},
4748 {"Dragshow Attendant", 0},
4749 {"Sexy Malemodel", 0},
4750 {"Hippie Rocker", 0},
4751 {"High-Heel-Loving Guy", 0},
4752 {"Androgynous Beauty", 0},
4753 {"Fleecy Sex Symbol", 0} },
4754 0, 0, 0, /* special deities */
4755 "Trs", "Topmodel Boot Camp", "Secret Activist Base",
4756 PM_TRANSSYLVANIAN
, NON_PM
, PM_UNDEAD_TRANSSYLVANIAN
, NON_PM
, NON_PM
,
4757 PM_G_CHEATER
, PM_ATTENDANT
, PM_HELEN_THE_ACTIVIST_LEADER
, PM_SUPREME_FEMEN_WARCHIEF
,
4758 PM_ACTIVIST
, PM_SLUT_WITH_SYPHILIS
, S_HUMAN
, S_NYMPH
,
4760 MH_HUMAN
|MH_ELF
|MH_DWARF
|MH_GNOME
|MH_HOBBIT
|MH_VAMPIRE
|MH_WERE
|MH_ORC
|
4761 ROLE_MALE
|ROLE_FEMALE
| ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
4762 /* Str Int Wis Dex Con Cha */
4763 /*{ 13, 13, 13, 9, 13, 7 },*/
4764 { 3, 3, 3, 3, 3, 3 },
4765 { 20, 10, 10, 20, 20, 20 },
4766 /* new limit values for the six attributes by Amy */
4767 { STR18(100), 16, 14, 19, 16, 22 },
4768 /* Init Lower Higher */
4769 { 14, 0, 0, 6, 1, 0 }, /* Hit points */
4770 { 4, 0, 0, 1, 0, 1 },12, /* Energy */
4771 10, 9, 2, 1, 10, A_INT
, SPE_LEVELPORT
, -4, 50
4775 { {"Transvestite", 0}, {
4778 {"Pseudo Model", 0},
4782 {"Crossdresser", 0},
4784 {"Drag Queen", 0} },
4785 "_Olivia", "Peyman", "_Lady Gaga", /* weird fashion sense */
4786 "Tra", "Topmodel Boot Camp", "World 3 Airship",
4787 PM_TRANSVESTITE
, NON_PM
, PM_UNDEAD_TRANSVESTITE
, NON_PM
, NON_PM
,
4788 PM_CROWNED_DRAG_QUEEN
, PM_ATTENDANT
, PM_WENDY
, PM_DENWY
,
4789 PM_ADULT_LADY
, PM_ADULT_GENTLEMAN
, S_HUMAN
, S_HUMAN
,
4790 ART_LOVELY_PINK_PUMPS
,
4791 MH_HUMAN
|MH_ELF
|MH_DWARF
|MH_GNOME
|MH_HOBBIT
|MH_VAMPIRE
|MH_WERE
|MH_ORC
|
4792 ROLE_MALE
|ROLE_FEMALE
| ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
4793 /* Str Int Wis Dex Con Cha */
4794 /*{ 13, 13, 13, 9, 13, 7 },*/
4795 { 3, 3, 3, 3, 3, 3 },
4796 { 20, 10, 10, 20, 20, 20 },
4797 /* new limit values for the six attributes by Amy */
4798 { STR18(100), 16, 14, 19, 16, 22 },
4799 /* Init Lower Higher */
4800 { 14, 0, 0, 6, 1, 0 }, /* Hit points */
4801 { 4, 0, 0, 1, 0, 1 },12, /* Energy */
4802 10, 9, 2, 1, 10, A_INT
, SPE_INVISIBILITY
, -4, 50
4806 {"Twedhel", "Twelleth"},
4807 {"Twedhel", "Twelleth"}, /* elf-maid */
4808 {"Twohtar", "Twohtie"}, /* warrior */
4809 {"Twekano", /* commander (Q.) ['a] */
4810 "Twekanie"}, /* educated guess, until further research- SAC */
4811 {"Twarandur", /* king's servant, minister (Q.) - guess */
4812 "Twaranduriel"}, /* educated guess */
4813 {"Twehir", "Twehiril"}, /* lord, lady (S.) ['ir] */
4814 {"Twaredhel", "Twarwen"}, /* noble elf, maiden (S.) */
4815 {"Twernil", "Twelentariel"}, /* prince (S.), elf-maiden (Q.) */
4816 {"Twelentar", "Twelentari"} }, /* Star-king, -queen (Q.) */
4817 "Legolas", "_Eowyn", "Eol", /* Elven */
4819 "Twe", "the great Circle of Lolth", "the Light Elves' Cave",
4820 PM_TWELPH
, NON_PM
, PM_UNDEAD_TWELPH
, NON_PM
, PM_DROW
,
4821 PM_LOLTH
, PM_HIGHEST_ELF
, PM_TWEARENDIL
, PM_MEAN_ELVEN_BASTARD
,
4822 PM_GREY_ELF
, PM_ELVENKING
, S_HUMAN
, S_HUMAN
,
4825 MH_HUMAN
|MH_ELF
|MH_DWARF
|MH_GNOME
|MH_HOBBIT
|MH_VAMPIRE
|MH_WERE
|MH_ORC
|
4826 ROLE_MALE
|ROLE_FEMALE
| ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
4827 /* Str Int Wis Dex Con Cha */
4828 /*{ 13, 13, 13, 9, 13, 7 },*/
4829 { 3, 3, 3, 3, 3, 3 },
4830 { 10, 30, 20, 20, 10, 10 },
4831 /* new limit values for the six attributes by Amy */
4832 { 17, 19, 19, 23, 15, 19 },
4833 /* Init Lower Higher */
4834 { 16, 0, 0, 4, 1, 0 }, /* Hit points */
4835 { 12, 0, 0, 4, 0, 3 },12, /* Energy */
4836 10, 0, 0, 4, 25, A_INT
, SPE_DRAIN_LIFE
, -4, 30
4839 { {"Unbeliever", 0}, {
4849 "No God", "No God", "No God", /* Unbeliever does not believe in gods! */
4850 "Unb", "Bree", "Khazad-Doom",
4851 PM_UNBELIEVER
, NON_PM
, PM_UNDEAD_UNBELIEVER
, NON_PM
, PM_MARTTI_IHRASAARI
,
4852 PM_MELINDA_PROUDFOOT
, PM_SUPER_WARRIOR
, PM_MORGOTH
, PM_MELKOR
,
4853 PM_MASTER_LICH
, PM_BALOR
, S_DEMON
, S_LICH
,
4854 ART_TOME_DARK_SWORD
,
4855 MH_HUMAN
|MH_ELF
|MH_DWARF
|MH_GNOME
|MH_HOBBIT
|MH_VAMPIRE
|MH_WERE
|MH_ORC
| ROLE_MALE
|ROLE_FEMALE
|
4856 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
4857 /* Str Int Wis Dex Con Cha */
4858 /*{ 16, 7, 7, 15, 16, 6 },*/
4859 { 3, 3, 3, 3, 3, 3 },
4860 { 30, 5, 5, 25, 30, 5 },
4861 /* new limit values for the six attributes by Amy */
4862 { STR19(20), 19, 19, 17, 20, 18 },
4863 /* Init Lower Higher */
4864 { 24, 0, 0,12, 4, 0 }, /* Hit points */
4865 { 0, 0, 0, 0, 0, 0 },10, /* Energy */
4866 10, 30, 0, 10, 20, A_INT
, SPE_BLANK_PAPER
, -4, 5
4869 { {"Undead Slayer", 0}, {
4873 {"Exterminator", 0},
4874 {"Exterminator", 0},
4878 {"Undead Slayer", 0} },
4879 "Seeker", "_Osiris", "Seth", /* Egyptian */
4880 "Und", "the Temple of Light", "the Crypt of Dracula",
4881 PM_UNDEAD_SLAYER
, NON_PM
, PM_NON_UNDEAD_SLAYER
, NON_PM
, NON_PM
,
4882 PM_VAN_HELSING
, PM_EXTERMINATOR
, PM_COUNT_DRACULA
, PM_COUNT_URCULA
,
4883 PM_HUMAN_MUMMY
, PM_VAMPIRE
, S_MUMMY
, S_VAMPIRE
,
4885 ART_HOLY_SPEAR_OF_LIGHT
, ART_SUNSWORD
,
4887 ART_STAKE_OF_VAN_HELSING
,
4888 MH_HUMAN
|MH_ELF
|MH_DWARF
|MH_GNOME
|MH_HOBBIT
|MH_VAMPIRE
|MH_WERE
|MH_ORC
|
4889 ROLE_MALE
|ROLE_FEMALE
| ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
4890 /* Str Int Wis Dex Con Cha */ /* Modified from Knight */
4891 /*{ 13, 7, 14, 8, 10, 10 },*/
4892 { 3, 3, 3, 3, 3, 3 },
4893 { 20, 15, 15, 20, 20, 10 },
4894 /* new limit values for the six attributes by Amy */
4895 { STR19(19), 15, 17, 14, 18, 16 },
4896 /* Init Lower Higher */
4897 { 22, 0, 0, 8, 2, 0 }, /* Hit points */
4898 { 16, 4, 0, 1, 0, 2 },10, /* Energy */
4899 10, 8,-2, 0, 9, A_WIS
, SPE_TURN_UNDEAD
, -4, 20
4902 { {"Undertaker", 0}, {
4903 {"Hearse Driver", 0},
4905 {"Grave Creator", 0},
4906 {"Open Casketeer", 0},
4907 {"Closed Casketeer", 0},
4911 {"Corpse Burner", 0} },
4912 "_Hel", "Pluto", "Orcus", /* Death */
4913 "Unt", "New Graveyard", "Underground Demon Lair",
4914 PM_UNDERTAKER
, NON_PM
, PM_UNDEAD_UNDERTAKER
, NON_PM
, PM_DEATH_DOG
,
4915 PM_AJELA
, PM_EXTERMINATOR
, PM_SEDUCER_SAINT
, PM_OBLIVION_DAEDRA
,
4916 PM_NALFESHNEE
, PM_SHAYATEEN
, S_DEMON
, S_DEMON
,
4919 MH_HUMAN
|MH_ELF
|MH_DWARF
|MH_GNOME
|MH_HOBBIT
|MH_VAMPIRE
|MH_WERE
|MH_ORC
|
4920 ROLE_MALE
|ROLE_FEMALE
| ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
4921 /* Str Int Wis Dex Con Cha */ /* Modified from Knight */
4922 /*{ 13, 7, 14, 8, 10, 10 },*/
4923 { 3, 3, 3, 3, 3, 3 },
4924 { 20, 15, 15, 20, 20, 10 },
4925 /* new limit values for the six attributes by Amy */
4926 { STR18(100), 16, 17, 18, 17, 17 },
4927 /* Init Lower Higher */
4928 { 22, 0, 0, 8, 2, 0 }, /* Hit points */
4929 { 16, 4, 0, 1, 0, 2 },10, /* Energy */
4930 10, 8,-2, 0, 9, A_WIS
, SPE_TURN_UNDEAD
, -4, 25
4933 { {"User of Stand", 0}, {
4934 /*from Silly JNetHack*/
4935 /*and arrange [Sakusha]*/
4936 {"Arrow Pierced", 0},
4944 {"Adventurer", 0} },
4945 "Jonathan Joestar", "Hirohiko Araki", "Cars", /* Jojo */
4946 "Use", "the House of Kujyou", "the Palace of Dio",
4947 PM_STAND_USER
, NON_PM
, PM_UNDEAD_STAND_USER
, NON_PM
, PM_BARD
,
4948 PM_MESSENGER_OF_SPW
, PM_GUIDE
, PM_DIO
, PM_UNO
,
4949 PM_VAMPIRE
, PM_HUMAN_ZOMBIE
, S_ZOMBIE
, S_ZOMBIE
,
4950 ART_RED_STONE_OF_EIGIA
,
4951 MH_HUMAN
|MH_ELF
|MH_DWARF
|MH_GNOME
|MH_HOBBIT
|MH_VAMPIRE
|MH_WERE
|MH_ORC
|
4952 ROLE_MALE
|ROLE_FEMALE
| ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
4953 /* Str Int Wis Dex Con Cha */ /* Modified from Knight */
4954 /*{ 13, 7, 14, 8, 10, 10 },*/
4955 { 3, 3, 3, 3, 3, 3 },
4956 { 20, 15, 15, 20, 20, 10 },
4957 /* new limit values for the six attributes by Amy */
4958 { 18, 19, 18, 19, 17, 18 },
4959 /* Init Lower Higher */
4960 { 11, 0, 0, 4, 1, 0 }, /* Hit points */
4961 { 8, 2, 0, 0, 0, 1 },10, /* Energy */
4962 10, 4,-2, 0, 9, A_INT
, SPE_AGGRAVATE_MONSTER
, -4, 200
4965 { {"Valkyrie", 0}, {
4969 {"Man-at-arms", "Woman-at-arms"},
4970 {"Great Warrior", 0},
4972 {"Hero", "Heroine"},
4975 "Tyr", "Odin", "Loki", /* Norse */
4976 "Val", "the Shrine of Destiny", "the cave of Surtur",
4977 PM_VALKYRIE
, NON_PM
, PM_UNDEAD_VALKYRIE
, NON_PM
, NON_PM
/*PM_WINTER_WOLF_CUB*/,
4978 PM_NORN
, PM_SUPER_WARRIOR
, PM_LORD_SURTUR
, PM_LORD_SULTUR
,
4979 PM_FIRE_ANT
, PM_FIRE_GIANT
, S_ANT
, S_GIANT
,
4981 ART_MJOLLNIR
, ART_FROST_BRAND
,
4984 MH_HUMAN
|MH_ELF
|MH_DWARF
|MH_GNOME
|MH_HOBBIT
|MH_VAMPIRE
|MH_WERE
|MH_ORC
| ROLE_MALE
|ROLE_FEMALE
| ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
4985 /* Str Int Wis Dex Con Cha */
4986 /*{ 10, 7, 7, 7, 12, 7 },*/
4987 { 3, 3, 3, 3, 3, 3 },
4988 { 30, 6, 7, 20, 30, 7 },
4989 /* new limit values for the six attributes by Amy */
4990 { STR19(25), 15, 15, 18, 18, 18 },
4991 /* Init Lower Higher */
4992 { 20, 0, 0, 8, 2, 0 }, /* Hit points */
4993 { 2, 0, 0, 1, 0, 1 },10, /* Energy */
4994 0, 10,-2, 0, 9, A_WIS
, SPE_LIGHTNING
, -4, 20
4997 { {"Vanilla Valk", 0}, {
4998 {"Stripped Girl", 0},
4999 {"Carnage Woman", 0},
5001 {"Armsbearing Lady", 0},
5002 {"Vanilla Warrior", 0},
5003 {"Protecter-Shielder",0},
5004 {"Female Heroine", 0},
5005 {"Fanatic Champ", 0},
5006 {"Battlefield Chief", 0} },
5007 "Tyr", "Odin", "Loki", /* Norse */
5008 "Van", "the Shrine of Destiny", "the cave of Surtur",
5009 PM_VANILLA_VALK
, NON_PM
, PM_UNDEAD_VANILLA_VALK
, NON_PM
, NON_PM
/*PM_WINTER_WOLF_CUB*/,
5010 PM_NORN
, PM_SUPER_WARRIOR
, PM_LORD_SURTUR
, PM_LORD_SULTUR
,
5011 PM_FIRE_ANT
, PM_FIRE_GIANT
, S_ANT
, S_GIANT
,
5013 MH_HUMAN
|MH_ELF
|MH_DWARF
|MH_GNOME
|MH_HOBBIT
|MH_VAMPIRE
|MH_WERE
|MH_ORC
| ROLE_MALE
|ROLE_FEMALE
| ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
5014 /* Str Int Wis Dex Con Cha */
5015 /*{ 10, 7, 7, 7, 12, 7 },*/
5016 { 3, 3, 3, 3, 3, 3 },
5017 { 30, 6, 7, 20, 30, 7 },
5018 /* new limit values for the six attributes by Amy */
5019 { STR19(25), 15, 15, 18, 18, 18 },
5020 /* Init Lower Higher */
5021 { 14, 0, 0, 8, 2, 0 }, /* Hit points */
5022 { 1, 0, 0, 1, 0, 1 },10, /* Energy */
5023 0, 10,-2, 0, 9, A_WIS
, SPE_CONE_OF_COLD
, -4, 20
5026 { {"Walscholar", 0}, {
5027 {"Alpha Mission Team", 0},
5028 {"Sector Beta Sweeper", 0},
5029 {"Order Acceptor", 0},
5030 {"Diamond Waller", 0},
5031 {"Distress Disposer", 0},
5032 {"Teacher's Favorite", 0},
5033 {"Treebark Protector", 0},
5034 {"Superior Hider", 0},
5035 {"Bane of Robbers", 0} },
5036 "Speaker Walt", "Great Corner-Hard", "Left Guenter", /* superschool people */
5037 "Wal", "7c space", "Hussy Main Office",
5038 PM_WALSCHOLAR
, NON_PM
, PM_UNDEAD_WALSCHOLAR
, NON_PM
, PM_SUPERSCHOOL_SPEAKER
,
5039 PM_GAUNT_ELKE
, PM_THUG
, PM_HUSSY_KATRIN
, PM_EVIL_PURPLE_GIRL
,
5040 PM_ARVOGENE
, PM_KEWITRIN
, S_LIGHT
, S_WORM_TAIL
,
5042 ART_STAHNGNIR_S_GIANT_CRUSHER
,
5043 MH_HUMAN
|MH_ELF
|MH_DWARF
|MH_GNOME
|MH_HOBBIT
|MH_VAMPIRE
|MH_WERE
|MH_ORC
| ROLE_MALE
|ROLE_FEMALE
|
5044 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
5045 /* Str Int Wis Dex Con Cha */
5046 { 3, 3, 3, 3, 3, 3 },
5047 { 17, 17, 16, 17, 17, 16 },
5048 /* new limit values for the six attributes by Amy */
5049 { STR18(100), 18, 18, 18, 18, 18 },
5050 /* Init Lower Higher */
5051 { 14, 0, 0, 4, 1, 0 }, /* Hit points */
5052 { 7, 2, 0, 1, 0, 1 },10, /* Energy */
5053 0, 12,-2, 0, 10, A_INT
, SPE_GRAVE
, -4, 100
5056 { {"Wandkeeper", 0}, {
5058 {"Wand Carrier", 0},
5059 {"Magic Shooter", 0},
5062 {"Charge Master", 0},
5064 {"Senior Wandmaker", 0},
5065 {"Wishing Wand Creator", 0}},
5066 "Larry Koopa", "Roy Koopa", "Morton Koopa Jr.", /* Super Mario Bros */
5067 "Wan", "Caster Temple", "Blaster Crypts",
5068 PM_WANDKEEPER
, NON_PM
, PM_UNDEAD_WANDKEEPER
, NON_PM
, PM_DARK_GRUE
,
5069 PM_MASTER_CASTER
, PM_EXTERMINATOR
, PM_PLASTER_BLASTER
, PM_CRASHBUG_CAUSER
,
5070 PM_DAUGHTER_LILY
, PM_MARIJA_THE_WENCH
, S_ARCHFIEND
, S_NEMESE
,
5072 ART_CHARGED_USB_STICK
,
5073 MH_HUMAN
|MH_ELF
|MH_DWARF
|MH_GNOME
|MH_HOBBIT
|MH_VAMPIRE
|MH_WERE
|MH_ORC
|
5074 ROLE_MALE
|ROLE_FEMALE
| ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
5075 /* Str Int Wis Dex Con Cha */ /* Modified from Knight */
5076 /*{ 13, 7, 14, 8, 10, 10 },*/
5077 { 3, 3, 3, 3, 3, 3 },
5078 { 15, 19, 19, 19, 13, 15 },
5079 /* new limit values for the six attributes by Amy */
5080 { STR18(30), 16, 18, 16, 15, 19 },
5081 /* Init Lower Higher */
5082 { 20, 0, 0, 6, 2, 0 }, /* Hit points */
5083 { 10, 4, 0, 2, 0, 3 },10, /* Energy */
5084 5, 2,-2, 10, 9, A_WIS
, SPE_POLYMORPH
, -4, 75
5088 {"Longswordsman", 0},
5089 {"Two-Handed Swordsman", 0},
5092 {"Baron", "Baroness"},
5093 {"Count", "Countess"},
5094 {"Duke", "Duchess"},
5095 {"Patriarch", "Matriarch"} },
5096 "Talos", "_Meridia", "Clavicus Vile", /* The Elder Scrolls */
5097 "War", "Acro Castle", "the Isle of the Damned",
5098 PM_WARRIOR
, NON_PM
, PM_UNDEAD_WARRIOR
, NON_PM
, PM_GREEN_NIGHTMARE
,
5099 PM_SIR_LANCELOT
, PM_PAGE
, PM_ARCHNEMESIS
, PM_ETERNAL_EVIL
,
5100 PM_LOCUST
, PM_WOOD_NYMPH
, S_ANT
, S_NYMPH
,
5102 ART_DRAGONBANE
, ART_DEMONBANE
,
5104 ART_MAGIC_MIRROR_OF_JASON
,
5105 MH_HUMAN
|MH_ELF
|MH_DWARF
|MH_GNOME
|MH_HOBBIT
|MH_VAMPIRE
|MH_WERE
|MH_ORC
| ROLE_MALE
|ROLE_FEMALE
| ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
5106 /* Str Int Wis Dex Con Cha */
5107 /*{ 18, 7, 11, 10, 12, 14 },*/
5108 { 3, 3, 3, 3, 3, 3 },
5109 { 35, 10, 14, 13, 22, 6 },
5110 /* new limit values for the six attributes by Amy */
5111 { STR19(19), 14, 14, 18, 18, 16 },
5112 /* Init Lower Higher */
5113 { 19, 0, 0, 15, 5, 0 }, /* Hit points */
5114 { 10, 0, 0, 1, 0, 1 },10, /* Energy */
5115 10, 8,-2, 0, 9, A_WIS
, SPE_TURN_UNDEAD
, -4, 20
5118 { {"Weirdboy", 0}, {
5120 {"Very Mad Orc", 0},
5122 {"Humming Head", 0},
5123 {"Brain Warper", 0},
5124 {"Walking Psi Bomb", 0},
5125 {"One Orc Storm", 0},
5127 {"Warp Unleasher", 0} },
5128 "Tax Evasion", "Murder and Arson", "Prison Outbreak", /* crimes, listed in order of severity from minor to major :P */
5129 "Wei", "Lunatic Asylum", "Sanity Clinic",
5130 PM_WEIRDBOY
, NON_PM
, PM_UNDEAD_WEIRDBOY
, NON_PM
, PM_SCHINDA
,
5131 PM_EXPLODING_BRAIN
, PM_VERY_MINDLESS_THRALL
, PM_WELL_PAID_DOCTOR
, PM_DEGREE_SIMPLETON
,
5132 PM_EXTREMELY_CONTAMINATED_BUG
, PM_IT
, S_XAN
, S_GRUE
,
5134 ART_BUS_ERROR
, /* segfault venom */
5135 MH_HUMAN
|MH_ELF
|MH_DWARF
|MH_GNOME
|MH_HOBBIT
|MH_VAMPIRE
|MH_WERE
|MH_ORC
| ROLE_MALE
|ROLE_FEMALE
|
5136 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
5137 /* Str Int Wis Dex Con Cha */
5138 /*{ 16, 7, 7, 15, 16, 6 },*/
5139 { 3, 3, 3, 3, 3, 3 },
5140 { 15, 10, 20, 40, 10, 5 },
5141 /* new limit values for the six attributes by Amy */
5142 { 16, 18, 12, 22, 14, 17 },
5143 /* Init Lower Higher */
5144 { 6, 0, 0, 10, 0, 0 }, /* Hit points */
5145 { 17, 0, 0, 0, 0, 3 }, 11, /* Energy */
5146 0, 17, -6, 1, 1, A_INT
, SPE_GIANT_FOOT
, -4, 80
5149 { {"Wild Talent", 0}, {
5150 {"Poschengband Noob", 0},
5151 {"Camelot Explorer", 0},
5152 {"Ambush Avoider", 0},
5153 {"Morivant Merchant", 0},
5154 {"Angband Diver", 0},
5155 {"Ocean Traveler", 0},
5157 {"555 Survivor", 0},
5158 {"One Who Killed The Serpent", 0}},
5159 0, 0, 0, /* chosen randomly from among the other roles */
5160 "Wil", "Source Code Base", "Closed Source Quarters",
5161 PM_WILD_TALENT
, NON_PM
, PM_UNDEAD_WILD_TALENT
, NON_PM
, PM_CHAMELEON
,
5162 PM_ELLI_PSEUDO
, PM_STUDENT
, PM_CHRIS_CHENG
, PM_POS_RECURSIVE
,
5163 PM_RANDOM_HORROR
, PM_GAZER_HORROR
, S_UMBER
, S_BAD_COINS
,
5164 ART_ELLI_S_PSEUDOBAND_OF_POS
,
5165 MH_HUMAN
|MH_ELF
|MH_DWARF
|MH_GNOME
|MH_HOBBIT
|MH_VAMPIRE
|MH_WERE
|MH_ORC
| ROLE_MALE
|ROLE_FEMALE
|
5166 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
5167 /* Str Int Wis Dex Con Cha */
5168 /*{ 6, 6, 6, 6, 6, 6 },*/
5169 { 3, 3, 3, 3, 3, 3 },
5170 { 16, 17, 17, 17, 16, 17 },
5171 /* new limit values for the six attributes by Amy */
5172 { STR18(100), 18, 18, 18, 18, 18 },
5173 /* Init Lower Higher */
5174 { 8, 0, 0, 4, 4, 0 }, /* Hit points */
5175 { 8, 0, 4, 0, 4, 0 }, 12, /* Energy */
5176 5, 8, 0, 5, 10, A_WIS
, SPE_RUSSIAN_ROULETTE
, -4, 80
5184 {"Warlock", "Witch"},
5185 {"Enchanter", "Enchantress"},
5186 {"Sorcerer", "Sorceress"},
5189 "Ptah", "Thoth", "Anhur", /* Egyptian */
5190 "Wiz", "the Lonely Tower", "the Tower of Darkness",
5191 PM_WIZARD
, NON_PM
, PM_UNDEAD_WIZARD
, NON_PM
, PM_KITTEN
,
5192 PM_NEFERET_THE_GREEN
, PM_APPRENTICE
, PM_DARK_ONE
, PM_LIGHT_ONE
,
5193 PM_VAMPIRE_BAT
, PM_XORN
, S_BAT
, S_WRAITH
,
5195 ART_MAGICBANE
, ART_DELUDER
,
5197 ART_EYE_OF_THE_AETHIOPICA
,
5198 MH_HUMAN
|MH_ELF
|MH_DWARF
|MH_GNOME
|MH_HOBBIT
|MH_VAMPIRE
|MH_WERE
|MH_ORC
| ROLE_MALE
|ROLE_FEMALE
|
5199 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
5200 /* Str Int Wis Dex Con Cha */
5201 /*{ 7, 10, 7, 7, 7, 7 },*/
5202 { 3, 3, 3, 3, 3, 3 },
5203 { 10, 30, 10, 20, 20, 10 },
5204 /* new limit values for the six attributes by Amy */
5205 { 12, 22, 19, 16, 14, 16 },
5206 /* Init Lower Higher */
5207 { 15, 0, 0, 8, 1, 0 }, /* Hit points */
5208 { 25, 3, 0, 2, 0, 3 },12, /* Energy */
5209 0, 1, 0, 3, 10, A_INT
, SPE_MAGIC_MISSILE
, -4, 200
5212 { {"Womanizer", 0}, {
5213 {"Cheekstroker", 0},
5214 {"Curve Adorer", 0},
5215 {"Sweetheart Lover", 0},
5216 {"Turn-On-Jockey", 0},
5217 {"Speech Charmer", 0},
5218 {"Promise Keeper", 0},
5220 {"Married Luck Mushroom", 0},
5221 {"Happiness Enjoyer", 0} },
5222 "Charlie Sheen", "Tiger Woods", "George Clooney", /* famous womanizers */
5223 "Wom", "Neverending Party Hall", "Socjus Brigade Center",
5224 PM_WOMANIZER
, NON_PM
, PM_UNDEAD_WOMANIZER
, NON_PM
, PM_EROTICLOUDY
,
5225 PM_HUGE_HEFNER
, PM_MODEL
, PM_BERBAL
, PM_NUTCRUNCHER_BITCH
,
5226 PM_SOCIAL_JUSTICE_WARRIOR
, PM_ANGRY_PROSTITUTE
, S_HUMAN
, S_DOG
,
5227 ART_SPECTRUM_PLING
, /* covelline or whatever that gem's name was, reflection and stuff */
5228 MH_HUMAN
|MH_ELF
|MH_DWARF
|MH_GNOME
|MH_HOBBIT
|MH_VAMPIRE
|MH_WERE
|MH_ORC
|
5229 ROLE_MALE
|ROLE_FEMALE
| ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
5230 /* Str Int Wis Dex Con Cha */
5231 /*{ 13, 13, 13, 9, 13, 7 },*/
5232 { 3, 3, 3, 3, 3, 3 },
5233 { 15, 10, 15, 15, 25, 20 },
5234 /* new limit values for the six attributes by Amy */
5235 { 18, 17, 17, 18, 19, 17 },
5236 /* Init Lower Higher */
5237 { 12, 0, 0, 4, 4, 0 }, /* Hit points */
5238 { 6, 0, 0, 3, 0, 2 }, 16, /* Energy */
5239 0, 12, 0, 5, 14, A_INT
, SPE_TAKE_SELFIE
, -4, 20
5243 {"Outworlder", "Void Explorer"},
5244 {"Genesis Witness", 0},
5245 {"Chaos Shaper", 0},
5246 {"Nebulae Catcher", 0},
5247 {"Star Assembler", 0},
5248 {"Planet Shifter", 0},
5249 {"Galaxy Designer", 0},
5250 {"DNA Programmer", 0},
5251 {"Species Creator", 0} },
5252 "Jim Raynor", "Hierarch Artanis", "_Sarah Kerrigan", /* starcraft */
5253 "Xel", "Terra Base", "Brooding Chaos",
5254 PM_XELNAGA
, NON_PM
, PM_UNDEAD_XELNAGA
, NON_PM
, PM_BIRSEN
,
5255 PM_SHADURIEL
, PM_STARNOID
, PM_INSECT_HIVEMIND
, PM_VERY_LARGE_BUG
,
5256 PM_LAG_DEFENSE_TOWER
, PM_PUTJANA
, S_WALLMONST
, S_TURRET
,
5258 ART_SNAKELASH
, /* whip */
5259 MH_HUMAN
|MH_ELF
|MH_DWARF
|MH_GNOME
|MH_HOBBIT
|MH_VAMPIRE
|MH_WERE
|MH_ORC
| ROLE_MALE
|ROLE_FEMALE
|
5260 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
5261 /* Str Int Wis Dex Con Cha */
5262 /*{ 16, 7, 7, 15, 16, 6 },*/
5263 { 3, 3, 3, 3, 3, 3 },
5264 { 25, 15, 10, 15, 30, 5 },
5265 /* new limit values for the six attributes by Amy */
5266 { STR19(19), 16, 14, 18, 19, 10 },
5267 /* Init Lower Higher */
5268 { 18, 0, 0, 8, 3, 0 }, /* Hit points */
5269 { 2, 0, 0, 2, 0, 2 },14, /* Energy */
5270 -20, 8, -1, 4, 14, A_INT
, SPE_ACIDSHIELD
, -4, 40
5277 {"Master Hunter", 0},
5282 {"Adjudicator", 0} },
5283 "Macbeth", "Zoness", "_Titania", /* Star Fox 64 */
5284 "Yau", "Asteroid Field", "Barren Toxic Waste",
5285 PM_YAUTJA
, NON_PM
, PM_UNDEAD_YAUTJA
, NON_PM
, PM_ROBOT
,
5286 PM_THE_OUTERSPACE_OCTOPUS
, PM_STARNOID
, PM_LUKE_SKYWALKER
, PM_HAN_SOLO
,
5287 PM_TOXIC_FUNGUS
, PM_COLOSSAL_SLIME
, S_FUNGUS
, S_PUDDING
,
5289 ART_EYEHANDER
, /* blindfold */
5290 MH_HUMAN
|MH_ELF
|MH_DWARF
|MH_GNOME
|MH_HOBBIT
|MH_VAMPIRE
|MH_WERE
|MH_ORC
| ROLE_MALE
|ROLE_FEMALE
|
5291 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
5292 /* Str Int Wis Dex Con Cha */
5293 /*{ 16, 7, 7, 15, 16, 6 },*/
5294 { 3, 3, 3, 3, 3, 3 },
5295 { 25, 10, 10, 25, 25, 5 },
5296 /* new limit values for the six attributes by Amy */
5297 { STR19(25), 16, 16, 20, 20, 8 },
5298 /* Init Lower Higher */
5299 { 20, 0, 0, 7, 7, 0 }, /* Hit points */
5300 { 6, 0, 0, 3, 0, 2 }, 15, /* Energy */
5301 -10, 10, 0, 2, 7, A_INT
, SPE_SLUDGE
, -4, 25
5305 /* Landowner titles, naval ranks and positions */
5306 /* We intentionally avoid Lieutenant and Captain */
5308 {"Steward", "Stewardess"},
5311 {"Master Steward", "Master Stewardess"},
5316 "His Majesty", "His Holiness", "The Commons", /* The three estates */
5317 "Yeo", "London", "the inner ward",
5318 PM_YEOMAN
, NON_PM
, PM_UNDEAD_YEOMAN
, NON_PM
, PM_PONY
,
5319 PM_CHIEF_YEOMAN_WARDER
, PM_YEOMAN_WARDER
, PM_COLONEL_BLOOD
, PM_COLONEL_B__ASTARD
,
5320 PM_RAVEN
, PM_WEREWOLF
, S_RODENT
, S_DOG
,
5322 ART_REAPER
, ART_SWORD_OF_JUSTICE
,
5324 ART_CROWN_OF_SAINT_EDWARD
,
5325 MH_HUMAN
|MH_ELF
|MH_DWARF
|MH_GNOME
|MH_HOBBIT
|MH_VAMPIRE
|MH_WERE
|MH_ORC
| ROLE_MALE
|ROLE_FEMALE
|ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
5326 /* Str Int Wis Dex Con Cha */
5327 /*{ 12, 7, 10, 12, 12, 7 },*/
5328 { 3, 3, 3, 3, 3, 3 },
5329 { 20, 15, 15, 20, 20, 10 },
5330 /* new limit values for the six attributes by Amy */
5331 { STR18(100), 14, 16, 16, 19, 18 },
5332 /* Init Lower Higher */
5333 { 19, 0, 0, 8, 2, 0 }, /* Hit points */
5334 { 3, 4, 0, 1, 0, 2 },10, /* Energy */
5335 10, 8,-2, 0, 9, A_WIS
, SPE_KNOCK
, -4, 20
5338 { {"YSexymate", 0}, {
5339 /*from Silly JNetHack*/
5343 {"Fitness Strider", 0},
5345 {"Knee Supporter", 0},
5346 {"Beard Mantlet", 0},
5347 {"Global Pertner", 0},
5348 {"Sexy King", "Sexy Queen"} },
5349 "Yoroshiku", "Ma Shin", "Sexy Sai", /* Chinese */
5350 "Sex", "Mistranslated Entrance", "Japanese Quest Goal Area",
5351 PM_SEXYMATE
, NON_PM
, PM_UNDEAD_SEXYMATE
, NON_PM
, PM_SEXY_GIRL
,
5352 PM_JUDO_CAPTAIN
, PM_STUDENT
, PM_GIGOCK
, PM_GIGOLO
,
5353 PM_SILLY_NYMPH
, PM_HIGE_MESO
, S_TROLL
, S_MIMIC
,
5355 MH_HUMAN
|MH_ELF
|MH_DWARF
|MH_GNOME
|MH_HOBBIT
|MH_VAMPIRE
|MH_WERE
|MH_ORC
|
5356 ROLE_MALE
|ROLE_FEMALE
| ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
5357 /* Str Int Wis Dex Con Cha */
5358 /*{ 13, 13, 13, 9, 13, 7 },*/
5359 { 3, 3, 3, 3, 3, 3 },
5360 { 12, 30, 4, 12, 12, 30 },
5361 /* new limit values for the six attributes by Amy */
5362 { 16, 18, 18, 20, 16, 25 },
5363 /* Init Lower Higher */
5364 { 12, 0, 0, 4, 2, 0 }, /* Hit points */
5365 { 8, 0, 0, 1, 0, 2 },12, /* Energy */
5366 10, 9, 2, 1, 10, A_INT
, SPE_REPAIR_ARMOR
, -4, 30
5369 { {"Zookeeper", 0}, {
5374 {"Mastodon Feeder", 0},
5375 {"Dragon Tamer", 0},
5376 {"Tyrannosaurus Feeder",0},
5377 {"Kangaroo Tamer", 0},
5378 {"Zouthern Petkeeper", 0} },
5379 "Balder", "_Edda", "Hagen", /* Norse mythology */
5380 "Zoo", "Yellowstone Park", "Jurassic Park",
5381 PM_ZOOKEEPER
, NON_PM
, PM_UNDEAD_ZOOKEEPER
, NON_PM
, PM_PLATYPUS
,
5382 PM_MASTER_ZOOKEEPER
, PM_STUDENT
, PM_FEARFUL_TRICERATOPS
, PM_ASH_CLANNFEAR
,
5383 PM_TYRANNOSAUR
, PM_UNDEAD_KANGAROO
, S_LIZARD
, S_ZOUTHERN
,
5386 MH_HUMAN
|MH_ELF
|MH_DWARF
|MH_GNOME
|MH_HOBBIT
|MH_VAMPIRE
|MH_WERE
|MH_ORC
|
5387 ROLE_MALE
|ROLE_FEMALE
| ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
5388 /* Str Int Wis Dex Con Cha */
5389 /* { 7, 10, 10, 7, 7, 7 },*/
5390 { 3, 3, 3, 3, 3, 3 },
5391 { 20, 20, 20, 10, 20, 10 },
5392 /* new limit values for the six attributes by Amy */
5393 { STR18(30), 16, 17, 18, 17, 15 },
5394 /* Init Lower Higher */
5395 { 16, 0, 0, 8, 1, 0 }, /* Hit points */
5396 { 10, 0, 0, 1, 0, 1 },14, /* Energy */
5397 10, 5, 0, 2, 10, A_INT
, SPE_CHARM_MONSTER
, -4, 40
5402 {"Artificial Stupidity", 0},
5403 {"Metal Man", "Metal Woman"},
5407 {"Advanced Robot", 0},
5408 {"Artificial Intelligence", 0},
5409 {"Synthetic Man", "Synthetic Woman"} },
5410 "Andromorph", "Technix", "Mechatron", /* made-up names by Amy */
5411 "Zyb", "Tech Facility", "Chaos Factors",
5412 PM_ZYBORG
, NON_PM
, PM_UNDEAD_ZYBORG
, NON_PM
, NON_PM
,
5413 PM_MISTER_MULBERRY
, PM_ATTENDANT
, PM_MASTER_BRAIN
, PM_IDIOT_BRAIN
,
5414 PM_UNDEAD_DRAGON
, PM_GRIFFIN_ROGUE
, S_WALLMONST
, S_GRUE
,
5416 MH_HUMAN
|MH_ELF
|MH_DWARF
|MH_GNOME
|MH_HOBBIT
|MH_VAMPIRE
|MH_WERE
|MH_ORC
|
5417 ROLE_MALE
|ROLE_FEMALE
|ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
5418 /* Str Int Wis Dex Con Cha */
5419 /*{ 10, 7, 7, 7, 13, 6 },*/
5420 { 3, 3, 3, 3, 3, 3 },
5421 { 18, 18, 18, 18, 18, 10 },
5422 /* new limit values for the six attributes by Amy */
5423 { STR18(100), 18, 18, 18, 18, 18 },
5424 /* Init Lower Higher */
5425 { 20, 0, 0, 5, 2, 0 }, /* Hit points */
5426 { 4, 2, 0, 4, 0, 4 },10, /* Energy */
5427 0, 5, 0, 2, 10, A_INT
, SPE_SOLAR_BEAM
, -4, 75
5430 /* Array terminator */
5435 /* The player's role, created at runtime from initial
5436 * choices. This may be munged in role_init().
5439 { {"Undefined", 0}, { {0, 0}, {0, 0}, {0, 0},
5440 {0, 0}, {0, 0}, {0, 0}, {0, 0}, {0, 0}, {0, 0} },
5441 "L", "N", "C", "Xxx", "home", "locate",
5442 NON_PM
, NON_PM
, NON_PM
, NON_PM
, NON_PM
, NON_PM
, NON_PM
, NON_PM
, NON_PM
,
5443 NON_PM
, NON_PM
, 0, 0,
5448 /* Str Int Wis Dex Con Cha */
5449 { 7, 7, 7, 7, 7, 7 },
5450 { 20, 15, 15, 20, 20, 10 },
5451 /* new limit values for the six attributes by Amy */
5452 { STR19(25), 25, 25, 25, 25, 25 },
5453 /* Init Lower Higher */
5454 { 10, 0, 0, 8, 1, 0 }, /* Hit points */
5455 { 2, 0, 0, 2, 0, 3 },14, /* Energy */
5456 0, 10, 0, 0, 4, A_INT
, 0, -3
5459 struct Role ustartrole
=
5460 { {"Undefined", 0}, { {0, 0}, {0, 0}, {0, 0},
5461 {0, 0}, {0, 0}, {0, 0}, {0, 0}, {0, 0}, {0, 0} },
5462 "L", "N", "C", "Xxx", "home", "locate",
5463 NON_PM
, NON_PM
, NON_PM
, NON_PM
, NON_PM
, NON_PM
, NON_PM
, NON_PM
, NON_PM
,
5464 NON_PM
, NON_PM
, 0, 0,
5469 /* Str Int Wis Dex Con Cha */
5470 { 7, 7, 7, 7, 7, 7 },
5471 { 20, 15, 15, 20, 20, 10 },
5472 /* new limit values for the six attributes by Amy */
5473 { STR19(25), 25, 25, 25, 25, 25 },
5474 /* Init Lower Higher */
5475 { 10, 0, 0, 8, 1, 0 }, /* Hit points */
5476 { 2, 0, 0, 2, 0, 3 },14, /* Energy */
5477 0, 10, 0, 0, 4, A_INT
, 0, -3
5480 /* Table of all races */
5481 const struct Race races
[] = {
5482 { "addict", "addicted", "addiction", "Add",
5484 PM_ADDICT
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
5485 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
5486 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
5487 MH_HUMAN
, 0, MH_GNOME
|MH_ORC
,
5488 /* Str Int Wis Dex Con Cha */
5489 { 3, 3, 3, 3, 3, 3 },
5490 { STR19(25), 125, 125, 125, 125, 125 },
5491 /* new limit values for the six attributes by Amy */
5492 { STR19(25), 25, 25, 25, 25, 25 },
5493 /* Init Lower Higher */
5494 { 2, 0, 0, 2, 1, 0 }, /* Hit points */
5495 { 1, 0, 2, 0, 2, 0 } /* Energy */
5497 { "aggravator", "aggravator", "aggravation", "Agg",
5499 PM_AGGRAVATOR
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
5500 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
5501 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
5502 MH_HUMAN
, 0, MH_GNOME
|MH_ORC
,
5503 /* Str Int Wis Dex Con Cha */
5504 { 3, 3, 3, 3, 3, 3 },
5505 { STR19(25), 125, 125, 125, 125, 125 },
5506 /* new limit values for the six attributes by Amy */
5507 { STR18(100), 18, 18, 18, 20, 18 },
5508 /* Init Lower Higher */
5509 { 2, 0, 0, 2, 1, 0 }, /* Hit points */
5510 { 1, 0, 2, 0, 2, 0 } /* Energy */
5512 { "ak Thief is dead!", "ak Thief is dead!", "vailable, exit anyway?", "Akt", /* garbled strings --Amy */
5514 PM_AK_THIEF_IS_DEAD_
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
5515 MH_WERE
| ROLE_MALE
|ROLE_FEMALE
| ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
5516 MH_WERE
, 0, MH_ELF
|MH_GNOME
|MH_DWARF
,
5517 /* Str Int Wis Dex Con Cha */
5518 { 3, 3, 3, 3, 3, 3 },
5519 { STR19(25), 125, 125, 125, 125, 125 },
5520 /* new limit values for the six attributes by Amy */
5521 { STR19(20), 18, 18, 19, 22, 14 },
5522 /* Init Lower Higher */
5523 { 4, 0, 0, 2, 2, 0 }, /* Hit points */
5524 { 5, 0, 4, 0, 4, 0 } /* Energy */
5526 { "albae", "albae", "albaehood", "Alb",
5528 PM_ALBAE
, NON_PM
, PM_ELF_MUMMY
, PM_ELF_ZOMBIE
,
5529 MH_ELF
| ROLE_MALE
|ROLE_FEMALE
|
5530 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
5531 MH_HUMAN
, 0, MH_GNOME
|MH_ORC
|MH_ELF
|MH_HUMAN
|MH_DWARF
|MH_HOBBIT
|MH_WERE
|MH_VAMPIRE
,
5532 /* Str Int Wis Dex Con Cha */
5533 { 3, 3, 3, 3, 3, 3 },
5534 { STR19(25), 125, 125, 125, 125, 125 },
5535 /* new limit values for the six attributes by Amy */
5536 { STR19(20), 20, 14, 20, 12, 25 },
5537 /* Init Lower Higher */
5538 { 8, 0, 0, 6, 4, 0 }, /* Hit points */
5539 { 8, 0, 6, 0, 4, 0 } /* Energy */
5541 { "alchemist", "alchemist", "alchemy", "Alc",
5543 PM_ALCHEMIST
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
5544 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
5545 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
5546 MH_HUMAN
, 0, MH_GNOME
|MH_ORC
,
5547 /* Str Int Wis Dex Con Cha */
5548 { 3, 3, 3, 3, 3, 3 },
5549 { STR19(25), 125, 125, 125, 125, 125 },
5550 /* new limit values for the six attributes by Amy */
5551 { STR18(50), 18, 16, 18, 12, 10 },
5552 /* Init Lower Higher */
5553 { 1, 0, 0, 1, 1, 0 }, /* Hit points */
5554 { 1, 0, 1, 0, 1, 0 } /* Energy */
5556 { "alien", "alien", "alienhood", "Ali",
5558 PM_ALIEN
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
5559 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
5560 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
5561 MH_HUMAN
, 0, MH_GNOME
|MH_ORC
,
5562 /* Str Int Wis Dex Con Cha */
5563 { 3, 3, 3, 3, 3, 3 },
5564 { STR19(25), 125, 125, 125, 125, 125 },
5565 /* new limit values for the six attributes by Amy */
5566 { STR18(60), 16, 16, 16, 16, 12 },
5567 /* Init Lower Higher */
5568 { 1, 0, 0, 1, 1, 0 }, /* Hit points */
5569 { 1, 0, 1, 0, 1, 0 } /* Energy */
5571 { "american", "american", "patriotism", "Ame",
5573 PM_AMERICAN
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
5574 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
5575 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
5576 MH_HUMAN
, MH_ELF
, MH_ORC
,
5577 /* Str Int Wis Dex Con Cha */
5578 { 3, 3, 3, 3, 3, 3 },
5579 { STR19(25), 125, 125, 125, 125, 125 },
5580 /* new limit values for the six attributes by Amy */
5581 { STR18(100), 18, 18, 18, 20, 16 },
5582 /* Init Lower Higher */
5583 { 3, 0, 0, 3, 3, 0 }, /* Hit points */
5584 { 3, 0, 3, 0, 3, 0 } /* Energy */
5586 { "amnesiac", "amnesiac", "Alzheimer's", "Amn",
5588 PM_AMNESIAC
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
5589 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
5590 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
5591 MH_HUMAN
, 0, MH_GNOME
|MH_ORC
,
5592 /* Str Int Wis Dex Con Cha */
5593 { 3, 3, 3, 3, 3, 3 },
5594 { STR19(25), 125, 125, 125, 125, 125 },
5595 /* new limit values for the six attributes by Amy */
5596 { STR18(100), 20, 20, 18, 18, 19 },
5597 /* Init Lower Higher */
5598 { 3, 0, 0, 3, 2, 0 }, /* Hit points */
5599 { 2, 0, 3, 0, 3, 0 } /* Energy */
5601 { "ancient", "ancient", "ancienty", "Anc",
5603 PM_ANCIENT
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
5604 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
5605 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
5606 MH_HUMAN
, 0, MH_GNOME
|MH_ORC
,
5607 /* Str Int Wis Dex Con Cha */
5608 { 3, 3, 3, 3, 3, 3 },
5609 { STR19(25), 125, 125, 125, 125, 125 },
5610 /* new limit values for the six attributes by Amy */
5611 { STR18(100), 19, 20, 18, 18, 18 },
5612 /* Init Lower Higher */
5613 { 3, 0, 0, 3, 2, 0 }, /* Hit points */
5614 { 2, 0, 3, 0, 3, 0 } /* Energy */
5616 { "ancipital", "ancipital", "ancipitalism", "Acp",
5618 PM_ANCIPITAL
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
5619 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
5620 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
5621 MH_HUMAN
, 0, MH_GNOME
|MH_ORC
,
5622 /* Str Int Wis Dex Con Cha */
5623 { 3, 3, 3, 3, 3, 3 },
5624 { STR19(25), 125, 125, 125, 125, 125 },
5625 /* new limit values for the six attributes by Amy */
5626 { STR18(100), 18, 18, 18, 20, 15 },
5627 /* Init Lower Higher */
5628 { 1, 0, 0, 1, 1, 0 }, /* Hit points */
5629 { 2, 0, 3, 0, 4, 0 } /* Energy */
5631 { "android", "android", "android-kind", "And",
5633 PM_PLAYER_ANDROID
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
5634 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
5635 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
5636 MH_HUMAN
, 0, MH_GNOME
|MH_ORC
,
5637 /* Str Int Wis Dex Con Cha */
5638 { 3, 3, 3, 3, 3, 3 },
5639 { STR19(25), 125, 125, 125, 125, 125 },
5640 /* new limit values for the six attributes by Amy */
5641 { STR19(20), 18, 16, 22, 22, 18 },
5642 /* Init Lower Higher */
5643 { 2, 0, 0, 3, 1, 0 }, /* Hit points */
5644 { 1, 0, 1, 0, 1, 0 }, /* Energy */
5646 { "angbander", "angbander", "angband followship", "Agb",
5648 PM_ANGBANDER
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
5649 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
5650 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
5651 MH_HUMAN
, MH_ELF
, MH_ORC
,
5652 /* Str Int Wis Dex Con Cha */
5653 { 3, 3, 3, 3, 3, 3 },
5654 { STR19(25), 125, 125, 125, 125, 125 },
5655 /* new limit values for the six attributes by Amy */
5656 { STR19(20), 20, 20, 20, 20, 20 },
5657 /* Init Lower Higher */
5658 { 3, 0, 0, 3, 3, 0 }, /* Hit points */
5659 { 3, 0, 3, 0, 3, 0 } /* Energy */
5661 { "angel", "angelic", "angelhood", "Ang",
5663 PM_HUMANOID_ANGEL
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
5664 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
5665 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
5666 MH_HUMAN
, 0, MH_GNOME
|MH_ORC
,
5667 /* Str Int Wis Dex Con Cha */
5668 { 3, 3, 3, 3, 3, 3 },
5669 { STR19(25), 125, 125, 125, 125, 125 },
5670 /* new limit values for the six attributes by Amy */
5671 { STR18(50), 18, 18, 18, 14, 25 },
5672 /* Init Lower Higher */
5673 { 4, 0, 0, 4, 2, 0 }, /* Hit points */
5674 { 2, 0, 4, 0, 4, 0 } /* Energy */
5676 { "aquarian", "aquarian", "aquarianship", "Aqu",
5678 PM_AQUATIC_MONSTER
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
5679 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
5680 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
5681 MH_HUMAN
, 0, MH_GNOME
|MH_ORC
,
5682 /* Str Int Wis Dex Con Cha */
5683 { 3, 3, 3, 3, 3, 3 },
5684 { STR19(25), 125, 125, 125, 125, 125 },
5685 /* new limit values for the six attributes by Amy */
5686 { STR18(100), 18, 18, 18, 18, 20 },
5687 /* Init Lower Higher */
5688 { 1, 0, 0, 1, 1, 0 }, /* Hit points */
5689 { 1, 0, 1, 0, 1, 0 } /* Energy */
5691 { "argonian", "argonian", "argohood", "Arg",
5693 PM_ARGONIAN
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
5694 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
5695 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
5697 /* Str Int Wis Dex Con Cha */
5698 { 3, 3, 3, 3, 3, 3 },
5699 { STR19(25), 125, 125, 125, 125, 125 },
5700 /* new limit values for the six attributes by Amy */
5701 { STR19(19), 18, 16, 20, 18, 10 },
5702 /* Init Lower Higher */
5703 { 2, 0, 0, 2, 2, 0 }, /* Hit points */
5704 { 2, 0, 3, 0, 3, 0 } /* Energy */
5706 { "asgardian", "asgardish", "asgardhood", "Asg",
5708 PM_ASGARDIAN
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
5709 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
5710 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
5711 MH_HUMAN
, 0, MH_GNOME
|MH_ORC
,
5712 /* Str Int Wis Dex Con Cha */
5713 { 3, 3, 3, 3, 3, 3 },
5714 { STR19(25), 125, 125, 125, 125, 125 },
5715 /* new limit values for the six attributes by Amy */
5716 { STR18(100), 18, 18, 18, 18, 18 },
5717 /* Init Lower Higher */
5718 { 4, 0, 0, 4, 4, 0 }, /* Hit points */
5719 { 4, 0, 4, 0, 4, 0 } /* Energy */
5721 { "asura", "asura", "hindu mythology", "Asu",
5723 PM_PLAYER_ASURA
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
5724 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
5725 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
5726 MH_HUMAN
, 0, MH_GNOME
|MH_ORC
,
5727 /* Str Int Wis Dex Con Cha */
5728 { 3, 3, 3, 3, 3, 3 },
5729 { STR19(25), 125, 125, 125, 125, 125 },
5730 /* new limit values for the six attributes by Amy */
5731 { STR19(20), 16, 16, 19, 18, 18 },
5732 /* Init Lower Higher */
5733 { 3, 0, 0, 3, 2, 0 }, /* Hit points */
5734 { 1, 0, 1, 0, 1, 0 } /* Energy */
5736 { "atlantean", "atlantean", "atlantis", "Atl",
5738 PM_PLAYER_ATLANTEAN
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
5739 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
5740 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
5741 MH_HUMAN
, 0, MH_GNOME
|MH_ORC
,
5742 /* Str Int Wis Dex Con Cha */
5743 { 3, 3, 3, 3, 3, 3 },
5744 { STR19(25), 125, 125, 125, 125, 125 },
5745 /* new limit values for the six attributes by Amy */
5746 { STR18(100), 18, 19, 18, 18, 18 },
5747 /* Init Lower Higher */
5748 { 2, 0, 0, 2, 1, 0 }, /* Hit points */
5749 { 1, 0, 2, 0, 2, 0 } /* Energy */
5751 { "aztpok", "aztpok", "aztpokland", "Azt",
5753 PM_AZTPOK
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
5754 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
5755 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
5756 MH_HUMAN
, 0, MH_GNOME
|MH_ORC
,
5757 /* Str Int Wis Dex Con Cha */
5758 { 3, 3, 3, 3, 3, 3 },
5759 { STR19(25), 125, 125, 125, 125, 125 },
5760 /* new limit values for the six attributes by Amy */
5761 { STR19(19), 18, 18, 18, 18, 18 },
5762 /* Init Lower Higher */
5763 { 2, 0, 0, 2, 1, 0 }, /* Hit points */
5764 { 1, 0, 2, 0, 2, 0 } /* Energy */
5766 { "babylonian", "babylonian", "babylon", "Bab",
5768 PM_BABYLONIAN
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
5769 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
5770 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
5771 MH_HUMAN
, 0, MH_GNOME
|MH_ORC
,
5772 /* Str Int Wis Dex Con Cha */
5773 { 3, 3, 3, 3, 3, 3 },
5774 { STR19(25), 125, 125, 125, 125, 125 },
5775 /* new limit values for the six attributes by Amy */
5776 { 18, 18, 18, 17, 21, 16 },
5777 /* Init Lower Higher */
5778 { 6, 0, 0, 6, 8, 0 }, /* Hit points */
5779 { 0, 0, 1, 0, 0, 0 } /* Energy */
5781 { "bacteria", "bacteria", "meshella", "Bac",
5783 PM_BACTERIA
, NON_PM
, PM_ELF_MUMMY
, PM_ELF_ZOMBIE
,
5784 MH_ELF
| ROLE_MALE
|ROLE_FEMALE
|
5785 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
5786 MH_HUMAN
, 0, MH_GNOME
|MH_ORC
|MH_ELF
|MH_HUMAN
|MH_DWARF
|MH_HOBBIT
|MH_WERE
|MH_VAMPIRE
,
5787 /* Str Int Wis Dex Con Cha */
5788 { 3, 3, 3, 3, 3, 3 },
5789 { STR19(25), 125, 125, 125, 125, 125 },
5790 /* new limit values for the six attributes by Amy */
5791 { STR19(20), 18, 18, 16, 25, 18 },
5792 /* Init Lower Higher */
5793 { 10, 0, 0, 10, 10, 0 }, /* Hit points */
5794 { 8, 0, 12, 0, 15, 0 } /* Energy */
5796 { "badstatter", "badstatter", "bad stats", "Bad",
5798 PM_BADSTATTER
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
5799 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
5800 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
5801 MH_HUMAN
, 0, MH_GNOME
|MH_ORC
,
5802 /* Str Int Wis Dex Con Cha */
5803 { 3, 3, 3, 3, 3, 3 },
5804 { STR19(25), 125, 125, 125, 125, 125 },
5805 /* new limit values for the six attributes by Amy */
5806 { STR18(100), 19, 19, 19, 19, 19 },
5807 /* Init Lower Higher */
5808 { 1, 0, 0, 0, 1, 0 }, /* Hit points */
5809 { 1, 0, 0, 0, 1, 0 } /* Energy */
5811 { "bastard", "bastard", "bastardry", "Bas",
5813 PM_BASTARD
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
5814 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
5815 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
5816 MH_HUMAN
, 0, MH_GNOME
|MH_ORC
,
5817 /* Str Int Wis Dex Con Cha */
5818 { 3, 3, 3, 3, 3, 3 },
5819 { STR19(25), 125, 125, 125, 125, 125 },
5820 /* new limit values for the six attributes by Amy */
5821 { STR18(100), 18, 18, 18, 18, 18 },
5822 /* Init Lower Higher */
5823 { 0, 0, 0, 0, 0, 0 }, /* Hit points */
5824 { 0, 0, 0, 0, 0, 0 } /* Energy */
5826 { "batman", "bat", "bathood", "Bat",
5828 PM_BATMAN
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
5829 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
5830 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
5832 /* Str Int Wis Dex Con Cha */
5833 { 3, 3, 3, 3, 3, 3 },
5834 { STR19(25), 125, 125, 125, 125, 125 },
5835 /* new limit values for the six attributes by Amy */
5836 { STR19(20), 18, 18, 22, 18, 20 },
5837 /* Init Lower Higher */
5838 { 8, 0, 0, 3, 1, 0 }, /* Hit points */
5839 { 1, 0, 2, 0, 3, 0 } /* Energy */
5841 { "beacher", "beacher", "beach drama", "Bea",
5843 PM_BEACHER
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
5844 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
5845 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
5846 MH_HUMAN
, 0, MH_GNOME
|MH_ORC
,
5847 /* Str Int Wis Dex Con Cha */
5848 { 3, 3, 3, 3, 3, 3 },
5849 { STR19(25), 125, 125, 125, 125, 125 },
5850 /* new limit values for the six attributes by Amy */
5851 { STR18(100), 18, 18, 18, 18, 18 },
5852 /* Init Lower Higher */
5853 { 2, 0, 0, 2, 1, 0 }, /* Hit points */
5854 { 1, 0, 2, 0, 2, 0 } /* Energy */
5856 { "blait", "blait", "black and white", "Bla",
5858 PM_BLAIT
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
5859 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
5860 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
5861 MH_HUMAN
, 0, MH_GNOME
|MH_ORC
,
5862 /* Str Int Wis Dex Con Cha */
5863 { 3, 3, 3, 3, 3, 3 },
5864 { STR19(25), 125, 125, 125, 125, 125 },
5865 /* new limit values for the six attributes by Amy */
5866 { STR18(100), 18, 18, 18, 18, 18 },
5867 /* Init Lower Higher */
5868 { 2, 0, 0, 2, 1, 0 }, /* Hit points */
5869 { 1, 0, 2, 0, 2, 0 } /* Energy */
5871 { "bodymorpher", "bodymorpher", "morphing bodies", "Bod",
5873 PM_BODYMORPHER
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
5874 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
5875 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
5876 MH_HUMAN
, 0, MH_GNOME
|MH_ORC
,
5877 /* Str Int Wis Dex Con Cha */
5878 { 3, 3, 3, 3, 3, 3 },
5879 { STR19(25), 125, 125, 125, 125, 125 },
5880 /* new limit values for the six attributes by Amy */
5881 { STR18(100), 18, 18, 18, 18, 18 },
5882 /* Init Lower Higher */
5883 { 2, 0, 0, 2, 1, 0 }, /* Hit points */
5884 { 1, 0, 2, 0, 2, 0 } /* Energy */
5886 { "borg", "borg", "borgship", "Bor",
5888 PM_BORG
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
5889 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
5890 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
5891 MH_HUMAN
, 0, MH_GNOME
|MH_ORC
,
5892 /* Str Int Wis Dex Con Cha */
5893 { 3, 3, 3, 3, 3, 3 },
5894 { STR19(25), 125, 125, 125, 125, 125 },
5895 /* new limit values for the six attributes by Amy */
5896 { STR18(100), 14, 14, 15, 18, 12 },
5897 /* Init Lower Higher */
5898 { 1, 0, 0, 0, 1, 0 }, /* Hit points */
5899 { 1, 0, 0, 0, 1, 0 } /* Energy */
5901 { "bossrusher", "bossrusher", "boss rush", "Bos",
5903 PM_BOSSRUSHER
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
5904 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
5905 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
5906 MH_HUMAN
, 0, MH_GNOME
|MH_ORC
,
5907 /* Str Int Wis Dex Con Cha */
5908 { 3, 3, 3, 3, 3, 3 },
5909 { STR19(25), 125, 125, 125, 125, 125 },
5910 /* new limit values for the six attributes by Amy */
5911 { STR18(100), 18, 18, 18, 18, 18 },
5912 /* Init Lower Higher */
5913 { 2, 0, 0, 2, 1, 0 }, /* Hit points */
5914 { 1, 0, 2, 0, 2, 0 } /* Energy */
5916 { "bover", "bover", "bovinedia", "Bov",
5918 PM_BOVER
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
5919 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
5920 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
5921 MH_HUMAN
, 0, MH_GNOME
|MH_ORC
|MH_ELF
|MH_HOBBIT
,
5922 /* Str Int Wis Dex Con Cha */
5923 { 3, 3, 3, 3, 3, 3 },
5924 { STR19(25), 125, 125, 125, 125, 125 },
5925 /* new limit values for the six attributes by Amy */
5926 { STR18(100), 18, 18, 18, 22, 18 },
5927 /* Init Lower Higher */
5928 { 6, 0, 0, 4, 3, 0 }, /* Hit points */
5929 { 1, 0, 2, 0, 1, 0 } /* Energy */
5931 { "breton", "bretonian", "bretonhood", "Bre",
5933 PM_BRETON
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
5934 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
5935 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
5937 /* Str Int Wis Dex Con Cha */
5938 { 3, 3, 3, 3, 3, 3 },
5939 { STR19(25), 125, 125, 125, 125, 125 },
5940 /* new limit values for the six attributes by Amy */
5941 { 18, 25, 25, 18, 12, 18 },
5942 /* Init Lower Higher */
5943 { 1, 0, 0, 1, 1, 0 }, /* Hit points */
5944 { 5, 0, 4, 0, 4, 0 } /* Energy */
5946 { "buldozgar", "buldozgar", "bulborderland", "Bul",
5948 PM_BULDOZGAR
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
5949 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
5950 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
5951 MH_HUMAN
, 0, MH_GNOME
|MH_ORC
|MH_DWARF
|MH_ELF
,
5952 /* Str Int Wis Dex Con Cha */
5953 { 3, 3, 3, 3, 3, 3 },
5954 { STR19(25), 125, 125, 125, 125, 125 },
5955 /* new limit values for the six attributes by Amy */
5956 { STR18(100), 18, 18, 18, 22, 20 },
5957 /* Init Lower Higher */
5958 { 4, 0, 0, 5, 4, 0 }, /* Hit points */
5959 { 0, 0, 0, 0, 0, 0 } /* Energy */
5961 { "burninator", "burning", "burning forest", "Bur",
5963 PM_BURNINATOR
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
5964 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
5965 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
5966 MH_HUMAN
, 0, MH_GNOME
|MH_ORC
,
5967 /* Str Int Wis Dex Con Cha */
5968 { 3, 3, 3, 3, 3, 3 },
5969 { STR19(25), 125, 125, 125, 125, 125 },
5970 /* new limit values for the six attributes by Amy */
5971 { STR19(25), 16, 16, 15, 22, 15 },
5972 /* Init Lower Higher */
5973 { 2, 0, 0, 2, 1, 0 }, /* Hit points */
5974 { 1, 0, 2, 0, 2, 0 } /* Energy */
5976 { "carthage", "carthage", "carthago", "Car",
5978 PM_CARTHAGE
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
5979 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
5980 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
5981 MH_HUMAN
, 0, MH_GNOME
|MH_ORC
|MH_WERE
|MH_VAMPIRE
,
5982 /* Str Int Wis Dex Con Cha */
5983 { 3, 3, 3, 3, 3, 3 },
5984 { STR19(25), 125, 125, 125, 125, 125 },
5985 /* new limit values for the six attributes by Amy */
5986 { 16, 16, 16, 16, 16, 16 },
5987 /* Init Lower Higher */
5988 { 2, 0, 0, 10, 10, 0 }, /* Hit points */
5989 { 2, 0, 1, 0, 1, 0 } /* Energy */
5991 { "celtic", "celtic", "celtic empire", "Cel",
5993 PM_CELTIC
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
5994 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
5995 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
5996 MH_HUMAN
, 0, MH_GNOME
|MH_ORC
,
5997 /* Str Int Wis Dex Con Cha */
5998 { 3, 3, 3, 3, 3, 3 },
5999 { STR19(25), 125, 125, 125, 125, 125 },
6000 /* new limit values for the six attributes by Amy */
6001 { STR19(25), 16, 15, 19, 21, 18 },
6002 /* Init Lower Higher */
6003 { 3, 0, 0, 3, 2, 0 }, /* Hit points */
6004 { 1, 0, 1, 0, 1, 0 } /* Energy */
6006 { "centaur", "centaur", "centaurhood", "Cen",
6008 PM_HUMANOID_CENTAUR
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
6009 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
6010 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
6012 /* Str Int Wis Dex Con Cha */
6013 { 3, 3, 3, 3, 3, 3 },
6014 { STR19(25), 125, 125, 125, 125, 125 },
6015 /* new limit values for the six attributes by Amy */
6016 { STR19(21), 16, 18, 20, 18, 16 },
6017 /* Init Lower Higher */
6018 { 4, 0, 0, 4, 4, 0 }, /* Hit points */
6019 { 2, 0, 2, 0, 3, 0 } /* Energy */
6021 { "cerberus", "cerberus", "tartarus", "Cer",
6023 PM_PLAYER_CERBERUS
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
6024 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
6025 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
6026 MH_HUMAN
, 0, MH_GNOME
|MH_ORC
|MH_ELF
|MH_HUMAN
|MH_DWARF
|MH_HOBBIT
|MH_WERE
|MH_VAMPIRE
,
6027 /* Str Int Wis Dex Con Cha */
6028 { 3, 3, 3, 3, 3, 3 },
6029 { STR19(25), 125, 125, 125, 125, 125 },
6030 /* new limit values for the six attributes by Amy */
6031 { STR19(25), 18, 18, 20, 24, 12 },
6032 /* Init Lower Higher */
6033 { 8, 0, 0, 6, 7, 0 }, /* Hit points */
6034 { 2, 0, 3, 0, 3, 0 } /* Energy */
6036 { "challenger", "challenger", "challenge", "Cha",
6038 PM_CHALLENGER
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
6039 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
6040 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
6041 MH_HUMAN
, 0, MH_GNOME
|MH_ORC
,
6042 /* Str Int Wis Dex Con Cha */
6043 { 3, 3, 3, 3, 3, 3 },
6044 { STR19(25), 125, 125, 125, 125, 125 },
6045 /* new limit values for the six attributes by Amy */
6046 { STR18(100), 18, 18, 18, 18, 18 },
6047 /* Init Lower Higher */
6048 { 2, 0, 0, 2, 1, 0 }, /* Hit points */
6049 { 1, 0, 2, 0, 2, 0 } /* Energy */
6051 { "changeling", "changeling", "chhangelinger", "Chg",
6053 PM_PLAYER_CHANGELING
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
6054 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
6055 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
6056 MH_HUMAN
, 0, MH_GNOME
|MH_ORC
,
6057 /* Str Int Wis Dex Con Cha */
6058 { 3, 3, 3, 3, 3, 3 },
6059 { STR19(25), 125, 125, 125, 125, 125 },
6060 /* new limit values for the six attributes by Amy */
6061 { STR18(100), 18, 18, 18, 18, 18 },
6062 /* Init Lower Higher */
6063 { 2, 0, 0, 1, 1, 0 }, /* Hit points */
6064 { 1, 0, 2, 0, 2, 0 } /* Energy */
6066 { "chiquai", "chiquai", "chiquai gavenmengte", "Chu",
6068 PM_CHIQUAI
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
6069 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
6070 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
6071 MH_HUMAN
, 0, MH_GNOME
|MH_ORC
,
6072 /* Str Int Wis Dex Con Cha */
6073 { 3, 3, 3, 3, 3, 3 },
6074 { STR19(25), 125, 125, 125, 125, 125 },
6075 /* new limit values for the six attributes by Amy */
6076 { STR18(100), 18, 18, 18, 18, 18 },
6077 /* Init Lower Higher */
6078 { 2, 0, 0, 2, 1, 0 }, /* Hit points */
6079 { 1, 0, 2, 0, 2, 0 } /* Energy */
6081 { "chiropteran", "chiropteric", "chiropteran-hood", "Chi",
6083 PM_CHIROPTERAN
, NON_PM
, PM_CHIROPTERAN_MUMMY
, PM_CHIROPTERAN_ZOMBIE
,
6084 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
| ROLE_LAWFUL
|ROLE_CHAOTIC
|ROLE_NEUTRAL
,
6085 MH_HUMAN
, 0, MH_GNOME
|MH_DWARF
,
6086 /* Str Int Wis Dex Con Cha */
6087 { 3, 3, 3, 3, 3, 3 },
6088 { STR19(25), 125, 125, 125, 125, 125 },
6089 /* new limit values for the six attributes by Amy */
6090 { STR19(20), 16, 16, 20, 14, 16 },
6091 /* Init Lower Higher */
6092 { 2, 0, 1, 0, 0, 1 }, /* Hit points */
6093 { 0, 0, 0, 0, 0, 0 } /* Energy */
6095 { "clockwork automaton", "automatic", "clockwork-kind", "Clk",
6097 PM_CLOCKWORK_AUTOMATON
, NON_PM
, NON_PM
, NON_PM
,
6098 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
| ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
6099 MH_HUMAN
, MH_DWARF
, MH_GNOME
,
6100 /* Str Int Wis Dex Con Cha */
6101 { 3, 3, 3, 3, 3, 3 },
6102 { STR19(25), 125, 125, 125, 125, 125 },
6103 /* new limit values for the six attributes by Amy */
6104 { STR18(100), 18, 18, 18, 18, 18 },
6105 /* Init Lower Higher */
6106 { 3, 0, 3, 0, 3, 0 }, /* Hit points */
6107 { 3, 0, 3, 0, 3, 0 }, /* Energy */
6109 { "cockatrice", "cockatrice", "rubberchickenhood", "Coc",
6111 PM_ARMED_COCKATRICE
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
6112 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
6113 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
6115 /* Str Int Wis Dex Con Cha */
6116 { 3, 3, 3, 3, 3, 3 },
6117 { STR19(25), 125, 125, 125, 125, 125 },
6118 /* new limit values for the six attributes by Amy */
6119 { 18, 18, 18, 18, 16, 10 },
6120 /* Init Lower Higher */
6121 { 2, 0, 0, 2, 2, 0 }, /* Hit points */
6122 { 2, 0, 3, 0, 3, 0 } /* Energy */
6124 { "colorator", "colorator", "fleecy colors <3", "Col",
6126 PM_COLORATOR
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
6127 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
6128 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
6129 MH_HUMAN
, 0, MH_GNOME
|MH_ORC
,
6130 /* Str Int Wis Dex Con Cha */
6131 { 3, 3, 3, 3, 3, 3 },
6132 { STR19(25), 125, 125, 125, 125, 125 },
6133 /* new limit values for the six attributes by Amy */
6134 { STR18(100), 18, 18, 18, 18, 18 },
6135 /* Init Lower Higher */
6136 { 2, 0, 0, 2, 1, 0 }, /* Hit points */
6137 { 1, 0, 2, 0, 2, 0 } /* Energy */
6139 { "cortex", "cortex", "cortexhood", "Cor",
6141 PM_CORTEX
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
6142 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
6143 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
6144 MH_HUMAN
, 0, MH_GNOME
|MH_ORC
,
6145 /* Str Int Wis Dex Con Cha */
6146 { 3, 3, 3, 3, 3, 3 },
6147 { STR19(25), 125, 125, 125, 125, 125 },
6148 /* new limit values for the six attributes by Amy */
6149 { STR18(50), 18, 18, 18, 18, 12 },
6150 /* Init Lower Higher */
6151 { 3, 0, 0, 3, 3, 0 }, /* Hit points */
6152 { 3, 0, 3, 0, 4, 0 } /* Energy */
6154 { "cupid", "cupid", "cupidity", "Cup",
6156 PM_CUPID
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
6157 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
6158 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
6159 MH_HUMAN
, 0, MH_ORC
,
6160 /* Str Int Wis Dex Con Cha */
6161 { 3, 3, 3, 3, 3, 3 },
6162 { STR19(25), 125, 125, 125, 125, 125 },
6163 /* new limit values for the six attributes by Amy */
6164 { 12, 12, 12, 21, 12, 25 },
6165 /* Init Lower Higher */
6166 { 1, 0, 0, 1, 1, 0 }, /* Hit points */
6167 { 2, 0, 2, 0, 2, 0 } /* Energy */
6169 { "curser", "curser", "curserhood", "Cur",
6171 PM_CURSER
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
6172 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
6173 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
6174 MH_HUMAN
, 0, MH_GNOME
|MH_ORC
,
6175 /* Str Int Wis Dex Con Cha */
6176 { 3, 3, 3, 3, 3, 3 },
6177 { STR19(25), 125, 125, 125, 125, 125 },
6178 /* new limit values for the six attributes by Amy */
6179 { STR18(100), 19, 18, 18, 18, 18 },
6180 /* Init Lower Higher */
6181 { 1, 0, 0, 1, 1, 0 }, /* Hit points */
6182 { 1, 0, 1, 0, 1, 0 } /* Energy */
6184 { "dark seducer", "mazke", "mazken", "Sed",
6186 PM_MAZKE
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
6187 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
6188 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
6189 MH_HUMAN
, 0, MH_GNOME
|MH_ORC
,
6190 /* Str Int Wis Dex Con Cha */
6191 { 3, 3, 3, 3, 3, 3 },
6192 { STR19(25), 125, 125, 125, 125, 125 },
6193 /* new limit values for the six attributes by Amy */
6194 { STR18(100), 20, 20, 18, 16, 20 },
6195 /* Init Lower Higher */
6196 { 0, 0, 0, 0, 0, 0 }, /* Hit points */
6197 { 0, 0, 0, 0, 0, 0 } /* Energy */
6199 { "deathmold", "deathmold", "deathmoldhood", "Dea",
6201 PM_DEATHMOLD
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
6202 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
| ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
6203 MH_HUMAN
, 0, MH_ELF
|MH_GNOME
|MH_HOBBIT
|MH_DWARF
|MH_ORC
,
6204 /* Str Int Wis Dex Con Cha */
6205 { 3, 3, 3, 3, 3, 3 },
6206 { STR19(25), 125, 125, 125, 125, 125 },
6207 /* new limit values for the six attributes by Amy */
6208 { STR19(25), 19, 14, 18, 18, 3 },
6209 /* Init Lower Higher */
6210 { 2, 0, 0, 2, 2, 0 }, /* Hit points */
6211 { 4, 0, 4, 0, 4, 0 } /* Energy */
6213 { "de-energiser", "de-energised", "free switching", "Den",
6215 PM_DE_ENERGISER
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
6216 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
6217 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
6218 MH_HUMAN
, 0, MH_GNOME
|MH_ORC
,
6219 /* Str Int Wis Dex Con Cha */
6220 { 3, 3, 3, 3, 3, 3 },
6221 { STR19(25), 125, 125, 125, 125, 125 },
6222 /* new limit values for the six attributes by Amy */
6223 { STR18(100), 18, 18, 18, 18, 18 },
6224 /* Init Lower Higher */
6225 { 1, 0, 0, 1, 1, 0 }, /* Hit points */
6226 { 1, 0, 1, 0, 1, 0 } /* Energy */
6228 { "deep elf", "deep elven", "deep elvenkind", "Dee",
6230 PM_DEEP_ELF
, NON_PM
, PM_ELF_MUMMY
, PM_ELF_ZOMBIE
,
6231 MH_ELF
| ROLE_MALE
|ROLE_FEMALE
| ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
6232 MH_ELF
, MH_ELF
, MH_ORC
,
6233 /* Str Int Wis Dex Con Cha */
6234 { 3, 3, 3, 3, 3, 3 },
6235 { STR19(25), 125, 125, 125, 125, 125 },
6236 /* new limit values for the six attributes by Amy */
6237 { 18, 20, 20, 18, 16, 18 },
6238 /* Init Lower Higher */
6239 { 1, 0, 0, 1, 0, 0 }, /* Hit points */
6240 { 7, 0, 3, 0, 3, 0 } /* Energy */
6242 { "destabilizer", "destabilizer", "destabilization", "Des",
6244 PM_DESTABILIZER
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
6245 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
| ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
6246 MH_HUMAN
, 0, MH_ELF
|MH_GNOME
|MH_HOBBIT
|MH_DWARF
|MH_ORC
,
6247 /* Str Int Wis Dex Con Cha */
6248 { 3, 3, 3, 3, 3, 3 },
6249 { STR19(25), 125, 125, 125, 125, 125 },
6250 /* new limit values for the six attributes by Amy */
6251 { STR19(21), 18, 18, 18, 20, 14 },
6252 /* Init Lower Higher */
6253 { 2, 0, 0, 2, 2, 0 }, /* Hit points */
6254 { 4, 0, 4, 0, 4, 0 } /* Energy */
6256 { "developer", "developer", "DevTeam", "Dvp",
6258 PM_DEVELOPER
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
6259 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
6260 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
6261 MH_HUMAN
, 0, MH_GNOME
|MH_ORC
|MH_ELF
|MH_HUMAN
|MH_DWARF
|MH_HOBBIT
|MH_WERE
|MH_VAMPIRE
,
6262 /* Str Int Wis Dex Con Cha */
6263 { 3, 3, 3, 3, 3, 3 },
6264 { STR19(25), 125, 125, 125, 125, 125 },
6265 /* new limit values for the six attributes by Amy */
6266 { STR19(25), 25, 25, 25, 25, 25 },
6267 /* Init Lower Higher */
6268 { 6, 0, 0, 8, 12, 0 }, /* Hit points */
6269 { 5, 0, 9, 0, 13, 0 } /* Energy */
6271 { "devil", "devilish", "devilhood", "Dev",
6273 PM_HUMANOID_DEVIL
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
6274 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
6275 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
6276 MH_HUMAN
, 0, MH_GNOME
|MH_ORC
,
6277 /* Str Int Wis Dex Con Cha */
6278 { 3, 3, 3, 3, 3, 3 },
6279 { STR19(25), 125, 125, 125, 125, 125 },
6280 /* new limit values for the six attributes by Amy */
6281 { STR19(22), 18, 20, 20, 21, 16 },
6282 /* Init Lower Higher */
6283 { 5, 0, 0, 5, 3, 0 }, /* Hit points */
6284 { 3, 0, 5, 0, 5, 0 } /* Energy */
6286 { "dictionary attack", "dictionary attack", "lauren epsom delirium", "Dic",
6288 PM_DICTIONARY_ATTACK
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
6289 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
6290 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
6291 MH_HUMAN
, 0, MH_GNOME
|MH_ORC
,
6292 /* Str Int Wis Dex Con Cha */
6293 { 3, 3, 3, 3, 3, 3 },
6294 { STR19(25), 125, 125, 125, 125, 125 },
6295 /* new limit values for the six attributes by Amy */
6296 { STR18(100), 18, 18, 18, 18, 18 },
6297 /* Init Lower Higher */
6298 { 2, 0, 0, 2, 1, 0 }, /* Hit points */
6299 { 1, 0, 2, 0, 2, 0 } /* Energy */
6301 { "dinosaur", "dinosaur", "jurassic park", "Din",
6303 PM_WEAPONIZED_DINOSAUR
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
6304 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
6305 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
6306 MH_HUMAN
, 0, MH_GNOME
|MH_ORC
,
6307 /* Str Int Wis Dex Con Cha */
6308 { 3, 3, 3, 3, 3, 3 },
6309 { STR19(25), 125, 125, 125, 125, 125 },
6310 /* new limit values for the six attributes by Amy */
6311 { STR19(25), 14, 14, 15, 25, 12 },
6312 /* Init Lower Higher */
6313 { 10, 0, 0, 10, 10, 0 }, /* Hit points */
6314 { 0, 0, 0, 0, 0, 0 } /* Energy */
6316 { "dolgsman", "dolgsman", "dolgskind", "Dol",
6318 PM_PLAYER_DOLGSMAN
, NON_PM
, NON_PM
, NON_PM
,
6319 MH_HOBBIT
| ROLE_MALE
|ROLE_FEMALE
| ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
6320 MH_HOBBIT
, MH_HOBBIT
, MH_GNOME
|MH_ORC
,
6321 /* Str Int Wis Dex Con Cha */
6322 { 3, 3, 3, 3, 3, 3 },
6323 { STR19(25), 125, 125, 125, 125, 125 },
6324 /* new limit values for the six attributes by Amy */
6325 { STR18(100), 20, 20, 18, 8, 14 },
6326 /* Init Lower Higher */
6327 { 1, 0, 0, 1, 1, 0 }, /* Hit points */
6328 { 4, 0, 2, 1, 2, 0 } /* Energy */
6330 { "doppelganger", "doppelganger", "doppelganger-kind", "Dop",
6332 PM_DOPPELGANGER
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
6333 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
| ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
6334 MH_HUMAN
, MH_WERE
, MH_ELF
|MH_GNOME
|MH_DWARF
,
6335 /* Str Int Wis Dex Con Cha */
6336 { 3, 3, 3, 3, 3, 3 },
6337 { STR19(25), 125, 125, 125, 125, 125 },
6338 /* new limit values for the six attributes by Amy */
6339 { STR18(100), 20, 20, 20, 20, 15 },
6340 /* Init Lower Higher */
6341 { 0, 0, 0, 1, 1, 0 }, /* Hit points */
6342 { 7, 0, 5, 0, 5, 0 } /* Energy */
6344 { "dorian", "dorian", "explora-dora", "Dor",
6346 PM_DORIAN
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
6347 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
6348 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
6349 MH_HUMAN
, 0, MH_GNOME
|MH_ORC
,
6350 /* Str Int Wis Dex Con Cha */
6351 { 3, 3, 3, 3, 3, 3 },
6352 { STR19(25), 125, 125, 125, 125, 125 },
6353 /* new limit values for the six attributes by Amy */
6354 { STR18(100), 18, 18, 18, 18, 18 },
6355 /* Init Lower Higher */
6356 { 2, 0, 0, 2, 1, 0 }, /* Hit points */
6357 { 1, 0, 2, 0, 2, 0 } /* Energy */
6359 { "dragon", "draconian", "dragonhood", "Dra",
6361 PM_HUMANLIKE_DRAGON
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
6362 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
6363 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
6365 /* Str Int Wis Dex Con Cha */
6366 { 3, 3, 3, 3, 3, 3 },
6367 { STR19(25), 125, 125, 125, 125, 125 },
6368 /* new limit values for the six attributes by Amy */
6369 { STR19(23), 18, 20, 16, 22, 18 },
6370 /* Init Lower Higher */
6371 { 6, 0, 0, 6, 2, 0 }, /* Hit points */
6372 { 3, 0, 3, 0, 2, 0 } /* Energy */
6374 { "droughter", "droughter", "drought", "Dgh",
6376 PM_DROUGHTER
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
6377 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
6378 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
6379 MH_HUMAN
, 0, MH_GNOME
|MH_ORC
,
6380 /* Str Int Wis Dex Con Cha */
6381 { 3, 3, 3, 3, 3, 3 },
6382 { STR19(25), 125, 125, 125, 125, 125 },
6383 /* new limit values for the six attributes by Amy */
6384 { STR18(100), 18, 18, 18, 18, 18 },
6385 /* Init Lower Higher */
6386 { 2, 0, 0, 2, 1, 0 }, /* Hit points */
6387 { 1, 0, 2, 0, 2, 0 } /* Energy */
6389 { "drow", "droven", "drovenkind", "Dro",
6391 PM_DROW
, NON_PM
, PM_DROW_MUMMY
, PM_DROW_ZOMBIE
,
6392 MH_ELF
| ROLE_MALE
|ROLE_FEMALE
| ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
6393 MH_ELF
, MH_ELF
, MH_ORC
,
6394 /* Str Int Wis Dex Con Cha */
6395 { 3, 3, 3, 3, 3, 3 },
6396 { STR19(25), 125, 125, 125, 125, 125 },
6397 /* new limit values for the six attributes by Amy */
6398 { 18, 20, 20, 18, 16, 18 },
6399 /* Init Lower Higher */
6400 { 1, 0, 0, 1, 1, 0 }, /* Hit points */
6401 { 7, 0, 3, 0, 3, 0 } /* Energy */
6403 { "dryad", "dryad", "dryadhood", "Dry",
6405 PM_HUMANOID_DRYAD
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
6406 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
6407 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
6408 MH_HUMAN
, 0, MH_GNOME
|MH_ORC
,
6409 /* Str Int Wis Dex Con Cha */
6410 { 3, 3, 3, 3, 3, 3 },
6411 { STR19(25), 125, 125, 125, 125, 125 },
6412 /* new limit values for the six attributes by Amy */
6413 { 16, 18, 18, 22, 14, 18 },
6414 /* Init Lower Higher */
6415 { 1, 0, 0, 1, 1, 0 }, /* Hit points */
6416 { 1, 0, 1, 0, 1, 0 } /* Energy */
6418 { "dufflepud", "dufflepud", "duffling", "Duf",
6420 PM_DUFFLEPUD
, NON_PM
, PM_DWARF_MUMMY
, PM_DWARF_ZOMBIE
,
6421 MH_DWARF
| ROLE_MALE
|ROLE_FEMALE
| ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
6422 MH_DWARF
, 0, MH_ORC
,
6423 /* Str Int Wis Dex Con Cha */
6424 { 3, 3, 3, 3, 3, 3 },
6425 { STR19(25), 125, 125, 125, 125, 125 },
6426 /* new limit values for the six attributes by Amy */
6427 { STR18(100), 18, 18, 10, 18, 13 },
6428 /* Init Lower Higher */
6429 { 4, 0, 0, 3, 2, 0 }, /* Hit points */
6430 { 0, 0, 0, 0, 0, 0 } /* Energy */
6432 { "dunadan", "dunadan", "dunedain", "Dun",
6434 PM_DUNADAN
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
6435 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
6436 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
6437 MH_HUMAN
, 0, MH_GNOME
|MH_ORC
,
6438 /* Str Int Wis Dex Con Cha */
6439 { 3, 3, 3, 3, 3, 3 },
6440 { STR19(25), 125, 125, 125, 125, 125 },
6441 /* new limit values for the six attributes by Amy */
6442 { STR18(100), 18, 18, 18, 18, 18 },
6443 /* Init Lower Higher */
6444 { 4, 0, 0, 4, 3, 0 }, /* Hit points */
6445 { 3, 0, 4, 0, 4, 0 } /* Energy */
6447 { "duthol", "duthol", "dutholland", "Dut",
6449 PM_DUTHOL
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
6450 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
6451 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
6452 MH_HUMAN
, 0, MH_GNOME
|MH_ORC
,
6453 /* Str Int Wis Dex Con Cha */
6454 { 3, 3, 3, 3, 3, 3 },
6455 { STR19(25), 125, 125, 125, 125, 125 },
6456 /* new limit values for the six attributes by Amy */
6457 { STR18(100), 18, 18, 18, 18, 18 },
6458 /* Init Lower Higher */
6459 { 2, 0, 0, 3, 1, 0 }, /* Hit points */
6460 { 1, 0, 2, 0, 2, 0 } /* Energy */
6462 { "dwarf", "dwarven", "dwarvenkind", "Dwa",
6464 PM_DWARF
, NON_PM
, PM_DWARF_MUMMY
, PM_DWARF_ZOMBIE
,
6465 MH_DWARF
| ROLE_MALE
|ROLE_FEMALE
| ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
6466 MH_DWARF
, MH_DWARF
|MH_GNOME
, MH_ORC
,
6467 /* Str Int Wis Dex Con Cha */
6468 { 3, 3, 3, 3, 3, 3 },
6469 { STR19(25), 125, 125, 125, 125, 125 },
6470 /* new limit values for the six attributes by Amy */
6471 { STR18(100), 16, 16, 20, 20, 16 },
6472 /* Init Lower Higher */
6473 { 4, 0, 0, 3, 2, 0 }, /* Hit points */
6474 { 0, 0, 0, 0, 0, 0 } /* Energy */
6476 { "dynamo", "dynamo", "dynamo headquarters", "Dyn",
6478 PM_PLAYER_DYNAMO
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
6479 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
6480 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
6481 MH_HUMAN
, 0, MH_GNOME
|MH_ORC
|MH_ELF
|MH_HUMAN
|MH_DWARF
|MH_HOBBIT
|MH_WERE
|MH_VAMPIRE
,
6482 /* Str Int Wis Dex Con Cha */
6483 { 3, 3, 3, 3, 3, 3 },
6484 { STR19(25), 125, 125, 125, 125, 125 },
6485 /* new limit values for the six attributes by Amy */
6486 { STR18(100), 18, 18, 18, 18, 18 },
6487 /* Init Lower Higher */
6488 { 3, 0, 0, 3, 3, 0 }, /* Hit points */
6489 { 1, 0, 2, 0, 2, 0 } /* Energy */
6491 { "egymid", "egymid", "egymides", "Egy",
6493 PM_EGYMID
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
6494 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
6495 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
6496 MH_HUMAN
, 0, MH_GNOME
|MH_ORC
,
6497 /* Str Int Wis Dex Con Cha */
6498 { 3, 3, 3, 3, 3, 3 },
6499 { STR19(25), 125, 125, 125, 125, 125 },
6500 /* new limit values for the six attributes by Amy */
6501 { STR18(20), 21, 21, 16, 12, 18 },
6502 /* Init Lower Higher */
6503 { 1, 0, 0, 1, 1, 0 }, /* Hit points */
6504 { 3, 0, 3, 0, 4, 0 } /* Energy */
6506 { "elemental", "elemental", "elementalhood", "Ele",
6508 PM_ELEMENTAL
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
6509 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
6510 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
6511 MH_HUMAN
, 0, MH_GNOME
|MH_DWARF
|MH_HUMAN
|MH_ELF
|MH_HOBBIT
,
6512 /* Str Int Wis Dex Con Cha */
6513 { 3, 3, 3, 3, 3, 3 },
6514 { STR19(25), 125, 125, 125, 125, 125 },
6515 /* new limit values for the six attributes by Amy */
6516 { STR18(100), 18, 18, 18, 18, 15 },
6517 /* Init Lower Higher */
6518 { 3, 0, 0, 3, 3, 0 }, /* Hit points */
6519 { 3, 0, 3, 0, 3, 0 } /* Energy */
6521 { "elf", "elven", "elvenkind", "Elf",
6523 PM_ELF
, NON_PM
, PM_ELF_MUMMY
, PM_ELF_ZOMBIE
,
6524 MH_ELF
| ROLE_MALE
|ROLE_FEMALE
| ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
6525 MH_ELF
, MH_ELF
, MH_ORC
,
6526 /* Str Int Wis Dex Con Cha */
6527 { 3, 3, 3, 3, 3, 3 },
6528 { STR19(25), 125, 125, 125, 125, 125 },
6529 /* new limit values for the six attributes by Amy */
6530 { 18, 20, 20, 18, 16, 18 },
6531 /* Init Lower Higher */
6532 { 1, 0, 0, 1, 1, 0 }, /* Hit points */
6533 { 8, 0, 3, 0, 3, 0 } /* Energy */
6535 { "engchip", "engchip", "eng country", "Eng",
6537 PM_ENGCHIP
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
6538 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
6539 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
6540 MH_HUMAN
, 0, MH_GNOME
|MH_ORC
,
6541 /* Str Int Wis Dex Con Cha */
6542 { 3, 3, 3, 3, 3, 3 },
6543 { STR19(25), 125, 125, 125, 125, 125 },
6544 /* new limit values for the six attributes by Amy */
6545 { STR18(100), 18, 18, 16, 18, 18 },
6546 /* Init Lower Higher */
6547 { 2, 0, 0, 2, 1, 0 }, /* Hit points */
6548 { 1, 0, 2, 0, 2, 0 } /* Energy */
6550 { "ent", "ent", "enthood", "Ent",
6552 PM_LOWER_ENT
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
6553 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
6554 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
6556 /* Str Int Wis Dex Con Cha */
6557 { 3, 3, 3, 3, 3, 3 },
6558 { STR19(25), 125, 125, 125, 125, 125 },
6559 /* new limit values for the six attributes by Amy */
6560 { STR19(25), 16, 18, 14, 24, 6 },
6561 /* Init Lower Higher */
6562 { 3, 0, 0, 4, 5, 0 }, /* Hit points */
6563 { 2, 0, 3, 0, 4, 0 } /* Energy */
6565 { "erosator", "erosator", "erosion system", "Ero",
6567 PM_EROSATOR
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
6568 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
6569 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
6570 MH_HUMAN
, 0, MH_GNOME
|MH_ORC
,
6571 /* Str Int Wis Dex Con Cha */
6572 { 3, 3, 3, 3, 3, 3 },
6573 { STR19(25), 125, 125, 125, 125, 125 },
6574 /* new limit values for the six attributes by Amy */
6575 { STR18(100), 18, 18, 18, 18, 25 },
6576 /* Init Lower Higher */
6577 { 2, 0, 0, 2, 1, 0 }, /* Hit points */
6578 { 1, 0, 2, 0, 2, 0 } /* Energy */
6580 { "etherealoid", "etherealoidic", "etherealoid-kind", "Eth",
6582 PM_ETHEREALOID
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
6583 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
6584 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
6585 MH_HUMAN
, 0, MH_GNOME
|MH_ORC
|MH_ELF
|MH_HUMAN
|MH_DWARF
|MH_HOBBIT
|MH_WERE
|MH_VAMPIRE
,
6586 /* Str Int Wis Dex Con Cha */
6587 { 3, 3, 3, 3, 3, 3 },
6588 { STR19(25), 125, 125, 125, 125, 125 },
6589 /* new limit values for the six attributes by Amy */
6590 { 18, 18, 18, 18, 18, 18 },
6591 /* Init Lower Higher */
6592 { 2, 0, 3, 0, 3, 0 }, /* Hit points */
6593 { 2, 0, 2, 0, 2, 0 } /* Energy */
6595 { "evilvariant", "evilvariant", "Evil Variant", "Evi",
6597 PM_EVILVARIANT
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
6598 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
6599 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
6600 MH_HUMAN
, 0, MH_GNOME
|MH_ORC
,
6601 /* Str Int Wis Dex Con Cha */
6602 { 3, 3, 3, 3, 3, 3 },
6603 { STR19(25), 125, 125, 125, 125, 125 },
6604 /* new limit values for the six attributes by Amy */
6605 { STR18(100), 18, 18, 18, 18, 18 },
6606 /* Init Lower Higher */
6607 { 2, 0, 0, 2, 1, 0 }, /* Hit points */
6608 { 1, 0, 2, 0, 2, 0 } /* Energy */
6610 { "expert", "expert", "expertise", "Exp",
6612 PM_EXPERT
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
6613 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
6614 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
6615 MH_HUMAN
, 0, MH_GNOME
|MH_ORC
,
6616 /* Str Int Wis Dex Con Cha */
6617 { 3, 3, 3, 3, 3, 3 },
6618 { STR19(25), 125, 125, 125, 125, 125 },
6619 /* new limit values for the six attributes by Amy */
6620 { STR18(100), 18, 18, 18, 18, 18 },
6621 /* Init Lower Higher */
6622 { 2, 0, 0, 2, 1, 0 }, /* Hit points */
6623 { 1, 0, 2, 0, 2, 0 } /* Energy */
6625 { "extravator", "extravator", "extra aggravation", "Ext",
6627 PM_EXTRAVATOR
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
6628 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
6629 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
6630 MH_HUMAN
, 0, MH_GNOME
|MH_ORC
,
6631 /* Str Int Wis Dex Con Cha */
6632 { 3, 3, 3, 3, 3, 3 },
6633 { STR19(25), 125, 125, 125, 125, 125 },
6634 /* new limit values for the six attributes by Amy */
6635 { STR18(100), 18, 18, 18, 20, 18 },
6636 /* Init Lower Higher */
6637 { 2, 0, 0, 2, 1, 0 }, /* Hit points */
6638 { 1, 0, 2, 0, 2, 0 } /* Energy */
6640 { "fairy", "fairy", "fairy castle", "Fai",
6642 PM_PLAYER_FAIRY
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
6643 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
6644 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
6645 MH_HUMAN
, 0, MH_GNOME
|MH_ORC
,
6646 /* Str Int Wis Dex Con Cha */
6647 { 3, 3, 3, 3, 3, 3 },
6648 { STR19(25), 125, 125, 125, 125, 125 },
6649 /* new limit values for the six attributes by Amy */
6650 { 16, 22, 22, 20, 6, 22 },
6651 /* Init Lower Higher */
6652 { 1, 0, 0, 1, 1, 0 }, /* Hit points */
6653 { 4, 0, 6, 0, 5, 0 } /* Energy */
6655 { "fawn", "fawn", "fawning", "Faw",
6657 PM_FAWN
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
6658 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
6659 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
6660 MH_HUMAN
, 0, MH_GNOME
|MH_ORC
,
6661 /* Str Int Wis Dex Con Cha */
6662 { 3, 3, 3, 3, 3, 3 },
6663 { STR19(25), 125, 125, 125, 125, 125 },
6664 /* new limit values for the six attributes by Amy */
6665 { STR18(20), 20, 20, 24, 12, 22 },
6666 /* Init Lower Higher */
6667 { 2, 0, 0, 2, 1, 0 }, /* Hit points */
6668 { 4, 0, 4, 0, 4, 0 } /* Energy */
6670 { "felid", "felid", "felinity", "Fel",
6672 PM_FELID
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
6673 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
6674 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
6676 /* Str Int Wis Dex Con Cha */
6677 { 3, 3, 3, 3, 3, 3 },
6678 { STR19(25), 125, 125, 125, 125, 125 },
6679 /* new limit values for the six attributes by Amy */
6680 { STR18(50), 18, 16, 25, 18, 16 },
6681 /* Init Lower Higher */
6682 { 1, 0, 0, 1, 1, 0 }, /* Hit points */
6683 { 2, 0, 1, 0, 0, 0 } /* Energy */
6685 { "feminizer", "feminizer", "feminism", "Fem",
6687 PM_FEMINIZER
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
6688 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
6689 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
6690 MH_HUMAN
, 0, MH_GNOME
|MH_ORC
,
6691 /* Str Int Wis Dex Con Cha */
6692 { 3, 3, 3, 3, 3, 3 },
6693 { STR19(25), 125, 125, 125, 125, 125 },
6694 /* new limit values for the six attributes by Amy */
6695 { STR18(100), 18, 18, 18, 18, 18 },
6696 /* Init Lower Higher */
6697 { 1, 0, 0, 1, 1, 0 }, /* Hit points */
6698 { 1, 0, 1, 0, 1, 0 } /* Energy */
6700 { "fenek", "fenek", "fenekhood", "Fen",
6702 PM_FENEK
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
6703 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
6704 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
6706 /* Str Int Wis Dex Con Cha */
6707 { 3, 3, 3, 3, 3, 3 },
6708 { STR19(25), 125, 125, 125, 125, 125 },
6709 /* new limit values for the six attributes by Amy */
6710 { STR18(60), 18, 18, 19, 18, 15 },
6711 /* Init Lower Higher */
6712 { 2, 0, 0, 4, 4, 0 }, /* Hit points */
6713 { 2, 0, 1, 0, 1, 0 } /* Energy */
6715 { "fiend", "fiendish", "fiendly", "Fie",
6717 PM_SUCKING_FIEND
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
6718 MH_VAMPIRE
| ROLE_MALE
|ROLE_FEMALE
| ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
6719 MH_VAMPIRE
, 0, MH_ELF
|MH_GNOME
|MH_HOBBIT
|MH_DWARF
|MH_ORC
,
6720 /* Str Int Wis Dex Con Cha */
6721 { 3, 3, 3, 3, 3, 3 },
6722 { STR19(25), 125, 125, 125, 125, 125 },
6723 /* new limit values for the six attributes by Amy */
6724 { STR18(50), 18, 18, 18, 16, 10 },
6725 /* Init Lower Higher */
6726 { 3, 0, 0, 3, 2, 0 }, /* Hit points */
6727 { 4, 0, 4, 0, 3, 0 } /* Energy */
6729 { "fixer", "fixer", "fixing techniques", "Fix",
6731 PM_FIXER
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
6732 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
6733 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
6734 MH_HUMAN
, 0, MH_GNOME
|MH_ORC
,
6735 /* Str Int Wis Dex Con Cha */
6736 { 3, 3, 3, 3, 3, 3 },
6737 { STR19(25), 125, 125, 125, 125, 125 },
6738 /* new limit values for the six attributes by Amy */
6739 { STR18(100), 18, 18, 18, 18, 18 },
6740 /* Init Lower Higher */
6741 { 2, 0, 0, 2, 1, 0 }, /* Hit points */
6742 { 1, 0, 2, 0, 2, 0 } /* Energy */
6744 { "frendian", "frendian", "frendia", "Fre",
6746 PM_FRENDIAN
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
6747 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
6748 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
6749 MH_HUMAN
, 0, MH_GNOME
|MH_ORC
,
6750 /* Str Int Wis Dex Con Cha */
6751 { 3, 3, 3, 3, 3, 3 },
6752 { STR19(25), 125, 125, 125, 125, 125 },
6753 /* new limit values for the six attributes by Amy */
6754 { STR18(100), 18, 18, 18, 18, 18 },
6755 /* Init Lower Higher */
6756 { 2, 0, 0, 2, 1, 0 }, /* Hit points */
6757 { 1, 0, 2, 0, 2, 0 } /* Energy */
6759 { "fro", "fro", "froos", "Fro",
6761 PM_FRO
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
6762 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
6763 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
6764 MH_HUMAN
, 0, MH_GNOME
|MH_ORC
,
6765 /* Str Int Wis Dex Con Cha */
6766 { 3, 3, 3, 3, 3, 3 },
6767 { STR19(25), 125, 125, 125, 125, 125 },
6768 /* new limit values for the six attributes by Amy */
6769 { STR18(100), 18, 18, 18, 18, 18 },
6770 /* Init Lower Higher */
6771 { 2, 0, 0, 2, 1, 0 }, /* Hit points */
6772 { 1, 0, 2, 0, 2, 0 } /* Energy */
6774 { "gastly", "ghast", "ghasthood", "Gha",
6776 PM_GASTLY
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
6777 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
6778 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
6780 /* Str Int Wis Dex Con Cha */
6781 { 3, 3, 3, 3, 3, 3 },
6782 { STR19(25), 125, 125, 125, 125, 125 },
6783 /* new limit values for the six attributes by Amy */
6784 { STR19(19), 16, 18, 18, 18, 12 },
6785 /* Init Lower Higher */
6786 { 2, 0, 0, 2, 1, 0 }, /* Hit points */
6787 { 1, 0, 2, 0, 2, 0 } /* Energy */
6789 { "gavil", "gavilish", "devil's gate", "Gav",
6791 PM_GAVIL
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
6792 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
6793 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
6794 MH_HUMAN
, 0, MH_GNOME
|MH_ORC
,
6795 /* Str Int Wis Dex Con Cha */
6796 { 3, 3, 3, 3, 3, 3 },
6797 { STR19(25), 125, 125, 125, 125, 125 },
6798 /* new limit values for the six attributes by Amy */
6799 { STR19(22), 18, 20, 20, 21, 16 },
6800 /* Init Lower Higher */
6801 { 5, 0, 0, 5, 3, 0 }, /* Hit points */
6802 { 3, 0, 5, 0, 5, 0 } /* Energy */
6804 { "gelatinous cube", "gelatinous", "cubic gelatine", "Gel",
6806 PM_WEAPON_CUBE
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
6807 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
| ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
6808 MH_HUMAN
, 0, MH_ELF
|MH_GNOME
|MH_HOBBIT
|MH_DWARF
|MH_ORC
,
6809 /* Str Int Wis Dex Con Cha */
6810 { 3, 3, 3, 3, 3, 3 },
6811 { STR19(25), 125, 125, 125, 125, 125 },
6812 /* new limit values for the six attributes by Amy */
6813 { STR18(100), 18, 18, 18, 18, 6 },
6814 /* Init Lower Higher */
6815 { 2, 0, 0, 4, 8, 0 }, /* Hit points */
6816 { 5, 0, 5, 0, 5, 0 } /* Energy */
6818 { "gerteut", "gerteut", "teumany", "Teu",
6820 PM_GERTEUT
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
6821 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
6822 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
6823 MH_HUMAN
, 0, MH_GNOME
|MH_ORC
,
6824 /* Str Int Wis Dex Con Cha */
6825 { 3, 3, 3, 3, 3, 3 },
6826 { STR19(25), 125, 125, 125, 125, 125 },
6827 /* new limit values for the six attributes by Amy */
6828 { STR18(100), 18, 18, 18, 18, 18 },
6829 /* Init Lower Higher */
6830 { 2, 0, 0, 2, 1, 0 }, /* Hit points */
6831 { 1, 0, 2, 0, 2, 0 } /* Energy */
6833 { "giant", "gigantic", "giganthood", "Gig",
6835 PM_GIGANT
, NON_PM
, PM_GIANT_MUMMY
, PM_GIANT_ZOMBIE
,
6836 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
6837 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
6839 /* Str Int Wis Dex Con Cha */
6840 { 3, 3, 3, 3, 3, 3 },
6841 { STR19(25), 125, 125, 125, 125, 125 },
6842 /* new limit values for the six attributes by Amy */
6843 { STR19(25), 15, 15, 14, 24, 18 },
6844 /* Init Lower Higher */
6845 { 5, 0, 0, 4, 4, 0 }, /* Hit points */
6846 { 1, 0, 1, 0, 1, 0 } /* Energy */
6848 { "glorkum", "glorkum", "glorkum 0 0 0's", "Glo",
6850 PM_PLAYER_GLORKUM
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
6851 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
| ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
6852 MH_HUMAN
, 0, MH_ELF
|MH_GNOME
|MH_HOBBIT
|MH_DWARF
|MH_ORC
,
6853 /* Str Int Wis Dex Con Cha */
6854 { 3, 3, 3, 3, 3, 3 },
6855 { STR19(25), 125, 125, 125, 125, 125 },
6856 /* new limit values for the six attributes by Amy */
6857 { 15, 23, 8, 19, 4, 17 },
6858 /* Init Lower Higher */
6859 { 4, 0, 0, 12, 0, 0 }, /* Hit points */
6860 { 29, 0, 1, 0, 7, 0 } /* Energy */
6862 { "gnome", "gnomish", "gnomehood", "Gno",
6864 PM_GNOME
, NON_PM
, PM_GNOME_MUMMY
, PM_GNOME_ZOMBIE
,
6865 MH_GNOME
| ROLE_MALE
|ROLE_FEMALE
| ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
6866 MH_GNOME
, MH_DWARF
|MH_GNOME
, MH_HUMAN
|MH_HOBBIT
,
6867 /* Str Int Wis Dex Con Cha */
6868 { 3, 3, 3, 3, 3, 3 },
6869 { STR19(25), 125, 125, 125, 125, 125 },
6870 /* new limit values for the six attributes by Amy */
6871 { STR18(50),19, 18, 18, 18, 18 },
6872 /* Init Lower Higher */
6873 { 1, 0, 0, 1, 0, 0 }, /* Hit points */
6874 { 2, 0, 2, 0, 2, 0 } /* Energy */
6876 { "goauld", "goauld", "stargate symbiosis", "Goa", /* by Demo, who illogically didn't call it by its proper name :P */
6878 PM_GOAULD
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
6879 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
6880 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
6881 MH_HUMAN
, 0, MH_GNOME
|MH_DWARF
,
6882 /* Str Int Wis Dex Con Cha */
6883 { 3, 3, 3, 3, 3, 3 },
6884 { STR19(25), 125, 125, 125, 125, 125 },
6885 /* new limit values for the six attributes by Amy */
6886 { 12, 25, 25, 25, 12, 15 },
6887 /* Init Lower Higher */
6888 { 2, 0, 1, 0, 0, 1 }, /* Hit points */
6889 { 0, 0, 0, 0, 0, 0 }, /* Energy */
6891 { "golden saint", "aureal", "aureale", "Aur",
6893 PM_AUREAL
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
6894 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
6895 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
6896 MH_HUMAN
, 0, MH_GNOME
|MH_ORC
,
6897 /* Str Int Wis Dex Con Cha */
6898 { 3, 3, 3, 3, 3, 3 },
6899 { STR19(25), 125, 125, 125, 125, 125 },
6900 /* new limit values for the six attributes by Amy */
6901 { STR18(100), 20, 20, 18, 16, 20 },
6902 /* Init Lower Higher */
6903 { 0, 0, 0, 0, 0, 0 }, /* Hit points */
6904 { 0, 0, 0, 0, 0, 0 } /* Energy */
6906 { "golem", "golem", "golemity", "Gol",
6908 PM_PLAYER_GOLEM
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
6909 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
6910 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
6911 MH_HUMAN
, 0, MH_GNOME
|MH_ORC
,
6912 /* Str Int Wis Dex Con Cha */
6913 { 3, 3, 3, 3, 3, 3 },
6914 { STR19(25), 125, 125, 125, 125, 125 },
6915 /* new limit values for the six attributes by Amy */
6916 { STR18(100), 14, 14, 18, 20, 16 },
6917 /* Init Lower Higher */
6918 { 3, 0, 0, 3, 3, 0 }, /* Hit points */
6919 { 1, 0, 2, 0, 2, 0 } /* Energy */
6921 { "green slime", "slimy", "slimehood", "Sli",
6923 PM_PLAYER_SLIME
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
6924 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
| ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
6925 MH_HUMAN
, 0, MH_ELF
|MH_GNOME
|MH_HOBBIT
|MH_DWARF
|MH_ORC
,
6926 /* Str Int Wis Dex Con Cha */
6927 { 3, 3, 3, 3, 3, 3 },
6928 { STR19(25), 125, 125, 125, 125, 125 },
6929 /* new limit values for the six attributes by Amy */
6930 { 18, 16, 12, 18, 15, 5 },
6931 /* Init Lower Higher */
6932 { 3, 0, 0, 3, 3, 0 }, /* Hit points */
6933 { 5, 0, 4, 0, 3, 0 } /* Energy */
6935 { "gremlin", "gremlin", "grem county", "Gre",
6937 PM_PLAYER_GREMLIN
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
6938 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
6939 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
6940 MH_HUMAN
, 0, MH_GNOME
|MH_ORC
,
6941 /* Str Int Wis Dex Con Cha */
6942 { 3, 3, 3, 3, 3, 3 },
6943 { STR19(25), 125, 125, 125, 125, 125 },
6944 /* new limit values for the six attributes by Amy */
6945 { STR18(100), 20, 18, 20, 18, 16 },
6946 /* Init Lower Higher */
6947 { 1, 0, 0, 1, 1, 0 }, /* Hit points */
6948 { 2, 0, 2, 0, 3, 0 } /* Energy */
6950 { "greuro", "greuro", "greuro zone", "Gru",
6952 PM_GREURO
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
6953 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
6954 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
6955 MH_HUMAN
, 0, MH_GNOME
|MH_ORC
,
6956 /* Str Int Wis Dex Con Cha */
6957 { 3, 3, 3, 3, 3, 3 },
6958 { STR19(25), 125, 125, 125, 125, 125 },
6959 /* new limit values for the six attributes by Amy */
6960 { STR18(100), 18, 18, 18, 18, 18 },
6961 /* Init Lower Higher */
6962 { 2, 0, 0, 2, 1, 0 }, /* Hit points */
6963 { 1, 0, 2, 0, 2, 0 } /* Energy */
6965 { "grid bug", "gridbug", "gridbughood", "Grd",
6967 PM_WEAPON_BUG
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
6968 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
6969 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
6970 MH_HUMAN
, 0, MH_GNOME
|MH_DWARF
|MH_HUMAN
|MH_ELF
|MH_HOBBIT
,
6971 /* Str Int Wis Dex Con Cha */
6972 { 3, 3, 3, 3, 3, 3 },
6973 { STR19(25), 125, 125, 125, 125, 125 },
6974 /* new limit values for the six attributes by Amy */
6975 { STR18(100), 18, 18, 18, 18, 18 },
6976 /* Init Lower Higher */
6977 { 5, 0, 0, 7, 9, 0 }, /* Hit points */
6978 { 5, 0, 7, 0, 9, 0 } /* Energy */
6980 { "grouper", "grouper", "group spawn", "Gro",
6982 PM_GROUPER
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
6983 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
6984 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
6985 MH_HUMAN
, 0, MH_GNOME
|MH_ORC
,
6986 /* Str Int Wis Dex Con Cha */
6987 { 3, 3, 3, 3, 3, 3 },
6988 { STR19(25), 125, 125, 125, 125, 125 },
6989 /* new limit values for the six attributes by Amy */
6990 { STR18(100), 18, 18, 18, 18, 18 },
6991 /* Init Lower Higher */
6992 { 2, 0, 0, 2, 1, 0 }, /* Hit points */
6993 { 1, 0, 2, 0, 2, 0 } /* Energy */
6995 { "hallucinator", "hallucinator", "acid trip", "Hal",
6997 PM_HALLUCINATOR
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
6998 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
6999 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
7000 MH_HUMAN
, 0, MH_GNOME
|MH_ORC
,
7001 /* Str Int Wis Dex Con Cha */
7002 { 3, 3, 3, 3, 3, 3 },
7003 { STR19(25), 125, 125, 125, 125, 125 },
7004 /* new limit values for the six attributes by Amy */
7005 { STR18(100), 18, 18, 18, 18, 18 },
7006 /* Init Lower Higher */
7007 { 2, 0, 0, 2, 1, 0 }, /* Hit points */
7008 { 1, 0, 2, 0, 2, 0 } /* Energy */
7010 { "hand", "hand", "hands", "Han",
7012 PM_HAND
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
7013 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
7014 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
7015 MH_HUMAN
, 0, MH_GNOME
|MH_ORC
,
7016 /* Str Int Wis Dex Con Cha */
7017 { 3, 3, 3, 3, 3, 3 },
7018 { STR19(25), 125, 125, 125, 125, 125 },
7019 /* new limit values for the six attributes by Amy */
7020 { STR18(80), 14, 15, 18, 22, 10 },
7021 /* Init Lower Higher */
7022 { 5, 0, 0, 6, 4, 0 }, /* Hit points */
7023 { 1, 0, 1, 0, 1, 0 } /* Energy */
7025 { "hardmoder", "hardmoder", "hard mode", "Har",
7027 PM_HARDMODER
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
7028 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
7029 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
7030 MH_HUMAN
, 0, MH_GNOME
|MH_ORC
,
7031 /* Str Int Wis Dex Con Cha */
7032 { 3, 3, 3, 3, 3, 3 },
7033 { STR19(25), 125, 125, 125, 125, 125 },
7034 /* new limit values for the six attributes by Amy */
7035 { STR18(100), 18, 18, 18, 18, 18 },
7036 /* Init Lower Higher */
7037 { 2, 0, 0, 2, 1, 0 }, /* Hit points */
7038 { 1, 0, 2, 0, 2, 0 } /* Energy */
7040 { "haxor", "haxorish", "haxorhood", "Hax",
7042 PM_HAXOR
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
7043 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
7044 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
7045 MH_HUMAN
, 0, MH_GNOME
|MH_ORC
,
7046 /* Str Int Wis Dex Con Cha */
7047 { 3, 3, 3, 3, 3, 3 },
7048 { STR19(25), 125, 125, 125, 125, 125 },
7049 /* new limit values for the six attributes by Amy */
7050 { STR18(100), 18, 18, 18, 18, 18 },
7051 /* Init Lower Higher */
7052 { 4, 0, 0, 4, 4, 0 }, /* Hit points */
7053 { 4, 0, 4, 0, 4, 0 } /* Energy */
7055 { "HC alien", "HC alien", "hardcore planet", "Hca",
7057 PM_HC_ALIEN
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
7058 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
7059 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
7060 MH_HUMAN
, 0, MH_GNOME
|MH_ORC
,
7061 /* Str Int Wis Dex Con Cha */
7062 { 3, 3, 3, 3, 3, 3 },
7063 { STR19(25), 125, 125, 125, 125, 125 },
7064 /* new limit values for the six attributes by Amy */
7065 { STR18(100), 20, 25, 18, 18, 3 },
7066 /* Init Lower Higher */
7067 { 3, 0, 0, 3, 3, 0 }, /* Hit points */
7068 { 2, 0, 2, 0, 5, 0 } /* Energy */
7070 { "hemi-doppelganger", "hemi-doppelganger", "hemi-doppelganger-kind", "Hem",
7072 PM_HEMI_DOPPELGANGER
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
7073 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
| ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
7074 MH_HUMAN
, MH_WERE
, MH_ELF
|MH_GNOME
|MH_DWARF
,
7075 /* Str Int Wis Dex Con Cha */
7076 { 3, 3, 3, 3, 3, 3 },
7077 { STR19(25), 125, 125, 125, 125, 125 },
7078 /* new limit values for the six attributes by Amy */
7079 { STR18(100), 19, 19, 19, 19, 16 },
7080 /* Init Lower Higher */
7081 { 0, 0, 0, 1, 1, 0 }, /* Hit points */
7082 { 7, 0, 5, 0, 5, 0 } /* Energy */
7084 { "hemophage", "hemophage", "hemophagehood", "Hep",
7086 PM_HEMOPHAGE
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
7087 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
7088 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
7089 MH_HUMAN
, 0, MH_GNOME
|MH_ORC
,
7090 /* Str Int Wis Dex Con Cha */
7091 { 3, 3, 3, 3, 3, 3 },
7092 { STR19(25), 125, 125, 125, 125, 125 },
7093 /* new limit values for the six attributes by Amy */
7094 { STR18(100), 18, 18, 18, 20, 20 },
7095 /* Init Lower Higher */
7096 { 3, 0, 0, 3, 3, 0 }, /* Hit points */
7097 { 2, 0, 3, 0, 4, 0 } /* Energy */
7099 { "herald", "herald", "heraldicdom", "Hrl",
7101 PM_HERALD
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
7102 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
7103 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
7105 /* Str Int Wis Dex Con Cha */
7106 { 3, 3, 3, 3, 3, 3 },
7107 { STR19(25), 125, 125, 125, 125, 125 },
7108 /* new limit values for the six attributes by Amy */
7109 { STR19(20), 16, 16, 16, 20, 16 },
7110 /* Init Lower Higher */
7111 { 2, 0, 0, 2, 2, 0 }, /* Hit points */
7112 { 1, 0, 2, 0, 2, 0 } /* Energy */
7114 { "herbalist", "herbalist", "herbalism", "Hrb",
7116 PM_HERBALIST
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
7117 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
7118 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
7119 MH_HUMAN
, 0, MH_GNOME
|MH_ORC
,
7120 /* Str Int Wis Dex Con Cha */
7121 { 3, 3, 3, 3, 3, 3 },
7122 { STR19(25), 125, 125, 125, 125, 125 },
7123 /* new limit values for the six attributes by Amy */
7124 { 15, 18, 18, 18, 14, 18 },
7125 /* Init Lower Higher */
7126 { 1, 0, 0, 1, 1, 0 }, /* Hit points */
7127 { 1, 0, 1, 0, 1, 0 } /* Energy */
7129 { "heretic", "heretic", "hereticism", "Her",
7131 PM_HERETIC
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
7132 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
7133 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
7135 /* Str Int Wis Dex Con Cha */
7136 { 3, 3, 3, 3, 3, 3 },
7137 { STR19(25), 125, 125, 125, 125, 125 },
7138 /* new limit values for the six attributes by Amy */
7139 { STR18(100), 18, 18, 18, 18, 17 },
7140 /* Init Lower Higher */
7141 { 3, 0, 0, 3, 5, 0 }, /* Hit points */
7142 { 3, 0, 3, 0, 5, 0 } /* Energy */
7144 { "hobbit", "hobbit", "hobbit-kind", "Hob",
7146 PM_HOBBIT
, NON_PM
, NON_PM
, NON_PM
,
7147 MH_HOBBIT
| ROLE_MALE
|ROLE_FEMALE
| ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
7148 MH_HOBBIT
, MH_HOBBIT
, MH_GNOME
|MH_ORC
,
7149 /* Str Int Wis Dex Con Cha */
7150 { 3, 3, 3, 3, 3, 3 },
7151 { STR19(25), 125, 125, 125, 125, 125 },
7152 /* new limit values for the six attributes by Amy */
7153 { 18, 16, 18, 18, 20, 20 },
7154 /* Init Lower Higher */
7155 { 2, 0, 0, 2, 1, 0 }, /* Hit points */
7156 { 4, 0, 2, 1, 2, 0 } /* Energy */
7158 { "homicider", "homicidal", "homiciderhood", "Hom",
7160 PM_HOMICIDER
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
7161 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
7162 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
7163 MH_HUMAN
, 0, MH_GNOME
|MH_ORC
,
7164 /* Str Int Wis Dex Con Cha */
7165 { 3, 3, 3, 3, 3, 3 },
7166 { STR19(25), 125, 125, 125, 125, 125 },
7167 /* new limit values for the six attributes by Amy */
7168 { STR18(100), 18, 18, 20, 20, 18 },
7169 /* Init Lower Higher */
7170 { 1, 0, 0, 1, 1, 0 }, /* Hit points */
7171 { 1, 0, 1, 0, 1, 0 } /* Energy */
7173 { "hound", "hound", "zephyr hounds", "Hou",
7175 PM_PLAYER_HOUND
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
7176 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
7177 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
7178 MH_HUMAN
, 0, MH_HUMAN
,
7179 /* Str Int Wis Dex Con Cha */
7180 { 3, 3, 3, 3, 3, 3 },
7181 { STR19(25), 125, 125, 125, 125, 125 },
7182 /* new limit values for the six attributes by Amy */
7183 { STR18(100), 18, 18, 18, 19, 17 },
7184 /* Init Lower Higher */
7185 { 3, 0, 0, 3, 4, 0 }, /* Hit points */
7186 { 1, 0, 1, 0, 1, 0 } /* Energy */
7188 { "hidden elf", "hidden elven", "hidden elvenkind", "Hid",
7190 PM_HIDDEN_ELF
, NON_PM
, PM_ELF_MUMMY
, PM_ELF_ZOMBIE
,
7191 MH_ELF
| ROLE_MALE
|ROLE_FEMALE
| ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
7192 MH_ELF
, MH_ELF
, MH_ORC
,
7193 /* Str Int Wis Dex Con Cha */
7194 { 3, 3, 3, 3, 3, 3 },
7195 { STR19(25), 125, 125, 125, 125, 125 },
7196 /* new limit values for the six attributes by Amy */
7197 { 18, 20, 20, 20, 15, 18 },
7198 /* Init Lower Higher */
7199 { 1, 0, 0, 1, 1, 0 }, /* Hit points */
7200 { 8, 0, 3, 0, 3, 0 } /* Energy */
7202 { "human", "human", "humanity", "Hum",
7204 PM_HUMAN
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
7205 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
7206 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
7207 MH_HUMAN
, 0, MH_GNOME
|MH_ORC
,
7208 /* Str Int Wis Dex Con Cha */
7209 { 3, 3, 3, 3, 3, 3 },
7210 { STR19(25), 125, 125, 125, 125, 125 },
7211 /* new limit values for the six attributes by Amy */
7212 { STR18(100), 18, 18, 18, 18, 18 },
7213 /* Init Lower Higher */
7214 { 2, 0, 0, 2, 1, 0 }, /* Hit points */
7215 { 1, 0, 2, 0, 2, 0 } /* Energy */
7217 { "hunkajunk", "hunkajunk", "Hunk of Junk", "Hun", /* by Demo */
7219 PM_HUNKAJUNK
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
7220 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
7221 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
7222 MH_HUMAN
, 0, MH_GNOME
|MH_ORC
,
7223 /* Str Int Wis Dex Con Cha */
7224 { 3, 3, 3, 3, 3, 3 },
7225 { STR19(25), 125, 125, 125, 125, 125 },
7226 /* new limit values for the six attributes by Amy */
7227 { STR18(100), 18, 18, 18, 18, 18 },
7228 /* Init Lower Higher */
7229 { 2, 0, 0, 2, 1, 0 }, /* Hit points */
7230 { 1, 0, 2, 0, 2, 0 } /* Energy */
7232 { "hybridragon", "half-dragon", "bastard dragons", "Hyb",
7234 PM_HYBRIDRAGON
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
7235 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
7236 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
7238 /* Str Int Wis Dex Con Cha */
7239 { 3, 3, 3, 3, 3, 3 },
7240 { STR19(25), 125, 125, 125, 125, 125 },
7241 /* new limit values for the six attributes by Amy */
7242 { STR19(20), 18, 19, 17, 20, 18 },
7243 /* Init Lower Higher */
7244 { 3, 0, 0, 3, 1, 0 }, /* Hit points */
7245 { 2, 0, 2, 0, 1, 0 } /* Energy */
7247 { "hypothermic", "hypothermic", "hypothermia", "Hyp",
7249 PM_HYPOTHERMIC
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
7250 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
7251 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
7252 MH_HUMAN
, 0, MH_GNOME
|MH_ORC
,
7253 /* Str Int Wis Dex Con Cha */
7254 { 3, 3, 3, 3, 3, 3 },
7255 { STR19(25), 125, 125, 125, 125, 125 },
7256 /* new limit values for the six attributes by Amy */
7257 { STR18(100), 18, 18, 18, 19, 18 },
7258 /* Init Lower Higher */
7259 { 2, 0, 0, 2, 1, 0 }, /* Hit points */
7260 { 1, 0, 2, 0, 2, 0 } /* Energy */
7262 { "illithid", "illithid", "mindflayerhood", "Ill",
7264 PM_ILLITHID
, NON_PM
, PM_DWARF_MUMMY
, PM_DWARF_ZOMBIE
,
7265 MH_DWARF
| ROLE_MALE
|ROLE_FEMALE
|
7266 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
7267 MH_DWARF
, MH_DWARF
, 0,
7268 /* Str Int Wis Dex Con Cha */
7269 { 3, 3, 3, 3, 3, 3 },
7270 { STR19(25), 125, 125, 125, 125, 125 },
7271 /* new limit values for the six attributes by Amy */
7272 { STR18(100), 25, 20, 18, 18, 18 },
7273 /* Init Lower Higher */
7274 { 1, 0, 0, 2, 2, 0 }, /* Hit points */
7275 { 2, 0, 2, 0, 2, 0 } /* Energy */
7277 { "immunizer", "immunizer", "immunizing", "Imm",
7279 PM_IMMUNIZER
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
7280 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
7281 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
7282 MH_HUMAN
, 0, MH_GNOME
|MH_ORC
,
7283 /* Str Int Wis Dex Con Cha */
7284 { 3, 3, 3, 3, 3, 3 },
7285 { STR19(25), 125, 125, 125, 125, 125 },
7286 /* new limit values for the six attributes by Amy */
7287 { STR18(80), 15, 15, 18, 20, 16 },
7288 /* Init Lower Higher */
7289 { 1, 0, 0, 1, 1, 0 }, /* Hit points */
7290 { 1, 0, 1, 0, 1, 0 } /* Energy */
7292 { "imp", "impish", "imphood", "Wim", /* "weapon imp" because there's already the imperial race --Amy */
7294 PM_WEAPON_IMP
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
7295 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
7296 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
7297 MH_HUMAN
, 0, MH_GNOME
|MH_ORC
,
7298 /* Str Int Wis Dex Con Cha */
7299 { 3, 3, 3, 3, 3, 3 },
7300 { STR19(25), 125, 125, 125, 125, 125 },
7301 /* new limit values for the six attributes by Amy */
7302 { 16, 16, 16, 18, 12, 14 },
7303 /* Init Lower Higher */
7304 { 1, 0, 0, 1, 1, 0 }, /* Hit points */
7305 { 1, 0, 1, 0, 1, 0 } /* Energy */
7307 { "imperial", "imperial", "imperialism", "Imp",
7309 PM_IMPERIAL
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
7310 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
7311 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
7313 /* Str Int Wis Dex Con Cha */
7314 { 3, 3, 3, 3, 3, 3 },
7315 { STR19(25), 125, 125, 125, 125, 125 },
7316 /* new limit values for the six attributes by Amy */
7317 { STR18(90), 18, 18, 18, 17, 20 },
7318 /* Init Lower Higher */
7319 { 3, 0, 0, 3, 5, 0 }, /* Hit points */
7320 { 3, 0, 3, 0, 5, 0 } /* Energy */
7322 { "incantifier", "incantifier", "wanterkind", "Inc",
7324 PM_INCANTIFIER
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
7325 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
7326 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
7327 MH_HUMAN
, 0, MH_GNOME
|MH_ORC
,
7328 /* Str Int Wis Dex Con Cha */
7329 { 3, 3, 3, 3, 3, 3 },
7330 { STR19(25), 125, 125, 125, 125, 125 },
7331 /* new limit values for the six attributes by Amy */
7332 { STR18(100), 18, 18, 18, 18, 18 },
7333 /* Init Lower Higher */
7334 { 2, 0, 0, 2, 0, 2 }, /* Hit points */
7335 { 0, 0, 10, 0, 10, 0 }, /* Energy */
7337 { "incorporealoid", "incorporealoidic", "incorporealoid-kind", "Ico",
7339 PM_INCORPOREALOID
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
7340 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
7341 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
7342 MH_HUMAN
, 0, MH_GNOME
|MH_ORC
|MH_ELF
|MH_HUMAN
|MH_DWARF
|MH_HOBBIT
|MH_WERE
|MH_VAMPIRE
,
7343 /* Str Int Wis Dex Con Cha */
7344 { 3, 3, 3, 3, 3, 3 },
7345 { STR19(25), 125, 125, 125, 125, 125 },
7346 /* new limit values for the six attributes by Amy */
7347 { 18, 18, 18, 18, 18, 18 },
7348 /* Init Lower Higher */
7349 { 2, 0, 3, 0, 3, 0 }, /* Hit points */
7350 { 2, 0, 2, 0, 2, 0 } /* Energy */
7352 { "indraenian", "indraenian", "indraenia", "Ind",
7354 PM_INDRAENIAN
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
7355 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
7356 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
7357 MH_HUMAN
, 0, MH_GNOME
|MH_ORC
,
7358 /* Str Int Wis Dex Con Cha */
7359 { 3, 3, 3, 3, 3, 3 },
7360 { STR19(25), 125, 125, 125, 125, 125 },
7361 /* new limit values for the six attributes by Amy */
7362 { STR18(100), 18, 18, 18, 18, 18 },
7363 /* Init Lower Higher */
7364 { 2, 0, 0, 2, 1, 0 }, /* Hit points */
7365 { 1, 0, 2, 0, 2, 0 } /* Energy */
7367 { "inheritor", "inheritor", "heritage", "Inh",
7369 PM_INHERITOR
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
7370 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
7371 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
7372 MH_HUMAN
, 0, MH_GNOME
|MH_ORC
,
7373 /* Str Int Wis Dex Con Cha */
7374 { 3, 3, 3, 3, 3, 3 },
7375 { STR19(25), 125, 125, 125, 125, 125 },
7376 /* new limit values for the six attributes by Amy */
7377 { STR18(100), 18, 18, 18, 18, 18 },
7378 /* Init Lower Higher */
7379 { 2, 0, 0, 2, 1, 0 }, /* Hit points */
7380 { 1, 0, 2, 0, 2, 0 } /* Energy */
7382 { "inka", "inka", "inka civilization", "Ink",
7384 PM_INKA
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
7385 MH_ELF
| ROLE_MALE
|ROLE_FEMALE
| ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
7387 /* Str Int Wis Dex Con Cha */
7388 { 3, 3, 3, 3, 3, 3 },
7389 { STR19(25), 125, 125, 125, 125, 125 },
7390 /* new limit values for the six attributes by Amy */
7391 { STR18(100), 20, 22, 18, 20, 24 },
7392 /* Init Lower Higher */
7393 { 3, 0, 0, 2, 3, 0 }, /* Hit points */
7394 { 4, 0, 2, 0, 2, 0 } /* Energy */
7396 { "insectoid", "insectoid", "insecthood", "Ins",
7398 PM_INSECTOID
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
7399 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
7400 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
7402 /* Str Int Wis Dex Con Cha */
7403 { 3, 3, 3, 3, 3, 3 },
7404 { STR19(25), 125, 125, 125, 125, 125 },
7405 /* new limit values for the six attributes by Amy */
7406 { STR18(100), 18, 18, 20, 16, 18 },
7407 /* Init Lower Higher */
7408 { 2, 0, 0, 2, 2, 0 }, /* Hit points */
7409 { 2, 0, 2, 0, 2, 0 } /* Energy */
7411 { "iraha", "iraha", "ira-hate", "Ira",
7413 PM_IRAHA
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
7414 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
7415 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
7416 MH_HUMAN
, 0, MH_GNOME
|MH_ORC
|MH_ELF
|MH_HUMAN
|MH_DWARF
|MH_HOBBIT
|MH_WERE
|MH_VAMPIRE
,
7417 /* Str Int Wis Dex Con Cha */
7418 { 3, 3, 3, 3, 3, 3 },
7419 { STR19(25), 125, 125, 125, 125, 125 },
7420 /* new limit values for the six attributes by Amy */
7421 { STR18(100), 15, 15, 19, 18, 16 },
7422 /* Init Lower Higher */
7423 { 2, 0, 0, 2, 1, 0 }, /* Hit points */
7424 { 1, 0, 2, 0, 2, 0 } /* Energy */
7426 { "ironman", "ironman", "ironman event", "Iro",
7428 PM_IRONMAN
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
7429 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
7430 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
7431 MH_HUMAN
, 0, MH_GNOME
|MH_ORC
,
7432 /* Str Int Wis Dex Con Cha */
7433 { 3, 3, 3, 3, 3, 3 },
7434 { STR19(25), 125, 125, 125, 125, 125 },
7435 /* new limit values for the six attributes by Amy */
7436 { STR18(100), 18, 18, 18, 20, 19 },
7437 /* Init Lower Higher */
7438 { 4, 0, 0, 5, 5, 0 }, /* Hit points */
7439 { 1, 0, 2, 0, 2, 0 } /* Energy */
7441 { "irritator", "irritator", "irritation", "Irr",
7443 PM_IRRITATOR
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
7444 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
7445 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
7446 MH_HUMAN
, 0, MH_GNOME
|MH_ORC
,
7447 /* Str Int Wis Dex Con Cha */
7448 { 3, 3, 3, 3, 3, 3 },
7449 { STR19(25), 125, 125, 125, 125, 125 },
7450 /* new limit values for the six attributes by Amy */
7451 { STR18(100), 18, 18, 20, 18, 17 },
7452 /* Init Lower Higher */
7453 { 2, 0, 0, 2, 1, 0 }, /* Hit points */
7454 { 1, 0, 2, 0, 2, 0 } /* Energy */
7456 { "itaque", "itaque", "itaquely", "Ita",
7458 PM_ITAQUE
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
7459 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
7460 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
7461 MH_HUMAN
, 0, MH_GNOME
|MH_ORC
,
7462 /* Str Int Wis Dex Con Cha */
7463 { 3, 3, 3, 3, 3, 3 },
7464 { STR19(25), 125, 125, 125, 125, 125 },
7465 /* new limit values for the six attributes by Amy */
7466 { STR18(100), 18, 18, 18, 25, 18 },
7467 /* Init Lower Higher */
7468 { 5, 0, 0, 5, 5, 0 }, /* Hit points */
7469 { 1, 0, 2, 0, 2, 0 } /* Energy */
7471 { "jabberwock", "jabberwock", "jabberwock poem", "Jab",
7473 PM_PLAYER_JABBERWOCK
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
7474 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
7475 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
7476 MH_HUMAN
, 0, MH_GNOME
|MH_ORC
|MH_ELF
,
7477 /* Str Int Wis Dex Con Cha */
7478 { 3, 3, 3, 3, 3, 3 },
7479 { STR19(25), 125, 125, 125, 125, 125 },
7480 /* new limit values for the six attributes by Amy */
7481 { STR19(24), 16, 18, 19, 24, 16 },
7482 /* Init Lower Higher */
7483 { 8, 0, 0, 8, 7, 0 }, /* Hit points */
7484 { 2, 0, 2, 0, 3, 0 } /* Energy */
7486 { "japura", "japura", "japuray", "Jap",
7488 PM_JAPURA
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
7489 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
7490 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
7491 MH_HUMAN
, 0, MH_GNOME
|MH_ORC
,
7492 /* Str Int Wis Dex Con Cha */
7493 { 3, 3, 3, 3, 3, 3 },
7494 { STR19(25), 125, 125, 125, 125, 125 },
7495 /* new limit values for the six attributes by Amy */
7496 { STR18(100), 18, 18, 18, 18, 18 },
7497 /* Init Lower Higher */
7498 { 2, 0, 0, 2, 1, 0 }, /* Hit points */
7499 { 1, 0, 2, 0, 2, 0 } /* Energy */
7501 { "java", "java", "javaland", "Jav",
7503 PM_JAVA
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
7504 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
7505 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
7506 MH_HUMAN
, 0, MH_GNOME
|MH_ORC
,
7507 /* Str Int Wis Dex Con Cha */
7508 { 3, 3, 3, 3, 3, 3 },
7509 { STR19(25), 125, 125, 125, 125, 125 },
7510 /* new limit values for the six attributes by Amy */
7511 { STR18(100), 18, 18, 18, 18, 18 },
7512 /* Init Lower Higher */
7513 { 2, 0, 0, 2, 1, 0 }, /* Hit points */
7514 { 1, 0, 2, 0, 2, 0 } /* Energy */
7516 { "jelly", "jelly", "jellyhood", "Jel",
7518 PM_JELLY
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
7519 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
| ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
7520 MH_HUMAN
, 0, MH_ELF
|MH_GNOME
|MH_HOBBIT
|MH_DWARF
|MH_ORC
,
7521 /* Str Int Wis Dex Con Cha */
7522 { 3, 3, 3, 3, 3, 3 },
7523 { STR19(25), 125, 125, 125, 125, 125 },
7524 /* new limit values for the six attributes by Amy */
7525 { 18, 20, 21, 18, 16, 12 },
7526 /* Init Lower Higher */
7527 { 2, 0, 0, 4, 8, 0 }, /* Hit points */
7528 { 5, 0, 5, 0, 5, 0 } /* Energy */
7530 { "khajiit", "khajiit", "cathood", "Kha",
7532 PM_KHAJIIT
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
7533 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
7534 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
7536 /* Str Int Wis Dex Con Cha */
7537 { 3, 3, 3, 3, 3, 3 },
7538 { STR19(25), 125, 125, 125, 125, 125 },
7539 /* new limit values for the six attributes by Amy */
7540 { STR18(100), 18, 18, 22, 18, 17 },
7541 /* Init Lower Higher */
7542 { 2, 0, 0, 3, 3, 0 }, /* Hit points */
7543 { 2, 0, 2, 0, 2, 0 } /* Energy */
7545 { "killfiller", "killfiller", "killer room filling", "Kil",
7547 PM_KILLFILLER
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
7548 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
7549 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
7550 MH_HUMAN
, 0, MH_GNOME
|MH_ORC
,
7551 /* Str Int Wis Dex Con Cha */
7552 { 3, 3, 3, 3, 3, 3 },
7553 { STR19(25), 125, 125, 125, 125, 125 },
7554 /* new limit values for the six attributes by Amy */
7555 { STR18(100), 18, 18, 18, 18, 18 },
7556 /* Init Lower Higher */
7557 { 2, 0, 0, 2, 1, 0 }, /* Hit points */
7558 { 1, 0, 2, 0, 2, 0 } /* Energy */
7560 { "klackon", "klackon", "klackchengband", "Kla",
7562 PM_KLACKON
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
7563 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
7564 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
7566 /* Str Int Wis Dex Con Cha */
7567 { 3, 3, 3, 3, 3, 3 },
7568 { STR19(25), 125, 125, 125, 125, 125 },
7569 /* new limit values for the six attributes by Amy */
7570 { STR19(20), 6, 6, 25, 20, 6 },
7571 /* Init Lower Higher */
7572 { 2, 0, 0, 3, 2, 0 }, /* Hit points */
7573 { 0, 0, 0, 0, 0, 0 } /* Energy */
7575 { "knowledgable", "knowledgable", "fountain of knowledge", "Kno",
7577 PM_KNOWLEDGABLE
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
7578 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
7579 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
7580 MH_HUMAN
, 0, MH_GNOME
|MH_ORC
,
7581 /* Str Int Wis Dex Con Cha */
7582 { 3, 3, 3, 3, 3, 3 },
7583 { STR19(25), 125, 125, 125, 125, 125 },
7584 /* new limit values for the six attributes by Amy */
7585 { 12, 18, 18, 18, 18, 18 },
7586 /* Init Lower Higher */
7587 { 2, 0, 0, 2, 1, 0 }, /* Hit points */
7588 { 1, 0, 2, 0, 2, 0 } /* Energy */
7590 { "kobold", "koboldic", "kobolthood", "Kob",
7592 PM_KOBOLT
, NON_PM
, PM_KOBOLD_MUMMY
, PM_KOBOLD_ZOMBIE
,
7593 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
7594 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
7596 /* Str Int Wis Dex Con Cha */
7597 { 3, 3, 3, 3, 3, 3 },
7598 { STR19(25), 125, 125, 125, 125, 125 },
7599 /* new limit values for the six attributes by Amy */
7600 { STR18(100), 17, 17, 18, 19, 16 },
7601 /* Init Lower Higher */
7602 { 3, 0, 0, 2, 2, 0 }, /* Hit points */
7603 { 3, 0, 2, 0, 1, 0 } /* Energy */
7605 { "kop", "kop", "kophood", "Kop",
7607 PM_KOP
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
7608 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
7609 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
7610 MH_HUMAN
, 0, MH_GNOME
|MH_ORC
,
7611 /* Str Int Wis Dex Con Cha */
7612 { 3, 3, 3, 3, 3, 3 },
7613 { STR19(25), 125, 125, 125, 125, 125 },
7614 /* new limit values for the six attributes by Amy */
7615 { STR18(100), 18, 18, 19, 20, 18 },
7616 /* Init Lower Higher */
7617 { 1, 0, 0, 1, 1, 0 }, /* Hit points */
7618 { 1, 0, 1, 0, 1, 0 } /* Energy */
7620 { "koronst", "koronst", "koronster cave", "Kor",
7622 PM_KORONST
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
7623 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
7624 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
7625 MH_HUMAN
, 0, MH_GNOME
|MH_ORC
,
7626 /* Str Int Wis Dex Con Cha */
7627 { 3, 3, 3, 3, 3, 3 },
7628 { STR19(25), 125, 125, 125, 125, 125 },
7629 /* new limit values for the six attributes by Amy */
7630 { STR18(100), 18, 18, 18, 18, 18 },
7631 /* Init Lower Higher */
7632 { 2, 0, 0, 2, 1, 0 }, /* Hit points */
7633 { 1, 0, 2, 0, 2, 0 } /* Energy */
7635 { "kutar", "kutar", "emotionless expressions", "Kut",
7637 PM_KUTAR
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
7638 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
7639 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
7641 /* Str Int Wis Dex Con Cha */
7642 { 3, 3, 3, 3, 3, 3 },
7643 { STR19(25), 125, 125, 125, 125, 125 },
7644 /* new limit values for the six attributes by Amy */
7645 { STR18(60), 17, 17, 17, 17, 23 },
7646 /* Init Lower Higher */
7647 { 2, 0, 0, 1, 1, 0 }, /* Hit points */
7648 { 2, 0, 1, 0, 1, 0 } /* Energy */
7650 { "leprechaun", "leprechaun", "leprechaunism", "Lep",
7652 PM_HUMANOID_LEPRECHAUN
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
7653 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
7654 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
7655 MH_HUMAN
, 0, MH_GNOME
|MH_ORC
,
7656 /* Str Int Wis Dex Con Cha */
7657 { 3, 3, 3, 3, 3, 3 },
7658 { STR19(25), 125, 125, 125, 125, 125 },
7659 /* new limit values for the six attributes by Amy */
7660 { 18, 18, 18, 25, 16, 18 },
7661 /* Init Lower Higher */
7662 { 2, 0, 0, 1, 1, 0 }, /* Hit points */
7663 { 3, 0, 3, 0, 3, 0 } /* Energy */
7665 { "levelscaler", "levelscaler", "scaling system", "Lvl",
7667 PM_LEVELSCALER
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
7668 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
7669 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
7670 MH_HUMAN
, 0, MH_GNOME
|MH_ORC
,
7671 /* Str Int Wis Dex Con Cha */
7672 { 3, 3, 3, 3, 3, 3 },
7673 { STR19(25), 125, 125, 125, 125, 125 },
7674 /* new limit values for the six attributes by Amy */
7675 { STR18(100), 18, 18, 18, 18, 18 },
7676 /* Init Lower Higher */
7677 { 2, 0, 0, 2, 1, 0 }, /* Hit points */
7678 { 1, 0, 2, 0, 2, 0 } /* Energy */
7680 { "levitator", "levitating", "levitatorship", "Lev",
7682 PM_LEVITATOR
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
7683 MH_ELF
| ROLE_MALE
|ROLE_FEMALE
|
7684 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
7686 /* Str Int Wis Dex Con Cha */
7687 { 3, 3, 3, 3, 3, 3 },
7688 { STR19(25), 125, 125, 125, 125, 125 },
7689 /* new limit values for the six attributes by Amy */
7690 { STR19(25), 20, 20, 24, 18, 20 },
7691 /* Init Lower Higher */
7692 { 8, 0, 0, 6, 4, 0 }, /* Hit points */
7693 { 8, 0, 6, 0, 4, 0 } /* Energy */
7695 { "lich", "lich", "lichhood", "Lic",
7697 PM_LICH_WARRIOR
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
7698 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
7699 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
7700 MH_HUMAN
, 0, MH_GNOME
|MH_ORC
,
7701 /* Str Int Wis Dex Con Cha */
7702 { 3, 3, 3, 3, 3, 3 },
7703 { STR19(25), 125, 125, 125, 125, 125 },
7704 /* new limit values for the six attributes by Amy */
7705 { STR19(22), 20, 20, 14, 18, 10 },
7706 /* Init Lower Higher */
7707 { 1, 0, 0, 1, 1, 0 }, /* Hit points */
7708 { 1, 0, 1, 0, 1, 0 } /* Energy */
7710 { "listener", "listener", "listening outpost", "Lis",
7712 PM_LISTENER
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
7713 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
7714 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
7715 MH_HUMAN
, 0, MH_GNOME
|MH_ORC
,
7716 /* Str Int Wis Dex Con Cha */
7717 { 3, 3, 3, 3, 3, 3 },
7718 { STR19(25), 125, 125, 125, 125, 125 },
7719 /* new limit values for the six attributes by Amy */
7720 { STR18(100), 18, 19, 18, 18, 18 },
7721 /* Init Lower Higher */
7722 { 2, 0, 0, 2, 1, 0 }, /* Hit points */
7723 { 1, 0, 2, 0, 2, 0 } /* Energy */
7725 { "lizardman", "lizard", "lizardhood", "Liz",
7727 PM_LIZARDMAN
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
7728 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
7729 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
7730 MH_HUMAN
, 0, MH_GNOME
|MH_ORC
,
7731 /* Str Int Wis Dex Con Cha */
7732 { 3, 3, 3, 3, 3, 3 },
7733 { STR19(25), 125, 125, 125, 125, 125 },
7734 /* new limit values for the six attributes by Amy */
7735 { STR19(20), 18, 18, 19, 20, 16 },
7736 /* Init Lower Higher */
7737 { 1, 0, 0, 2, 3, 0 }, /* Hit points */
7738 { 1, 0, 1, 0, 2, 0 } /* Energy */
7740 { "loli", "loli", "loli culture", "Lol",
7742 PM_LOLI
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
7743 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
7744 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
7745 MH_HUMAN
, 0, MH_GNOME
|MH_ORC
,
7746 /* Str Int Wis Dex Con Cha */
7747 { 3, 3, 3, 3, 3, 3 },
7748 { STR19(25), 125, 125, 125, 125, 125 },
7749 /* new limit values for the six attributes by Amy */
7750 { STR18(50), 18, 18, 18, 14, 22 },
7751 /* Init Lower Higher */
7752 { 2, 0, 0, 2, 1, 0 }, /* Hit points */
7753 { 1, 0, 2, 0, 2, 0 } /* Energy */
7755 { "lycanthrope", "lycanthropic", "lycanthropehood", "Lyc",
7757 PM_HUMAN_WEREWOLF
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
7758 MH_WERE
| ROLE_MALE
|ROLE_FEMALE
| ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
7759 MH_WERE
, 0, MH_ELF
|MH_GNOME
|MH_DWARF
,
7760 /* Str Int Wis Dex Con Cha */
7761 { 3, 3, 3, 3, 3, 3 },
7762 { STR19(25), 125, 125, 125, 125, 125 },
7763 /* new limit values for the six attributes by Amy */
7764 { STR19(19), 15, 15, 20, 19, 15 },
7765 /* Init Lower Higher */
7766 { 4, 0, 0, 2, 2, 0 }, /* Hit points */
7767 { 5, 0, 4, 0, 4, 0 } /* Energy */
7769 { "mactheist", "mactheist", "atheistonia", "Mac",
7771 PM_MACTHEIST
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
7772 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
7773 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
7774 MH_HUMAN
, 0, MH_GNOME
|MH_ORC
,
7775 /* Str Int Wis Dex Con Cha */
7776 { 3, 3, 3, 3, 3, 3 },
7777 { STR19(25), 125, 125, 125, 125, 125 },
7778 /* new limit values for the six attributes by Amy */
7779 { STR18(100), 18, 18, 18, 18, 18 },
7780 /* Init Lower Higher */
7781 { 2, 0, 0, 2, 1, 0 }, /* Hit points */
7782 { 1, 0, 2, 0, 2, 0 } /* Energy */
7784 { "magyar", "magyar", "non gladly", "Mag",
7786 PM_MAGYAR
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
7787 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
7788 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
7789 MH_HUMAN
, 0, MH_GNOME
|MH_ORC
,
7790 /* Str Int Wis Dex Con Cha */
7791 { 3, 3, 3, 3, 3, 3 },
7792 { STR19(25), 125, 125, 125, 125, 125 },
7793 /* new limit values for the six attributes by Amy */
7794 { STR18(100), 18, 18, 18, 18, 18 },
7795 /* Init Lower Higher */
7796 { 2, 0, 0, 2, 1, 0 }, /* Hit points */
7797 { 1, 0, 2, 0, 2, 0 } /* Energy */
7799 { "maia", "maian", "maiahood", "Mai",
7801 PM_MAIA
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
7802 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
7803 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
7804 MH_HUMAN
, 0, MH_GNOME
|MH_ORC
,
7805 /* Str Int Wis Dex Con Cha */
7806 { 3, 3, 3, 3, 3, 3 },
7807 { STR19(25), 125, 125, 125, 125, 125 },
7808 /* new limit values for the six attributes by Amy */
7809 { STR18(100), 20, 19, 18, 20, 18 },
7810 /* Init Lower Higher */
7811 { 1, 0, 0, 1, 1, 0 }, /* Hit points */
7812 { 4, 0, 4, 0, 4, 0 } /* Energy */
7814 { "matrayser", "matrayser", "material raise", "Mat",
7816 PM_MATRAYSER
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
7817 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
7818 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
7819 MH_HUMAN
, 0, MH_GNOME
|MH_ORC
,
7820 /* Str Int Wis Dex Con Cha */
7821 { 3, 3, 3, 3, 3, 3 },
7822 { STR19(25), 125, 125, 125, 125, 125 },
7823 /* new limit values for the six attributes by Amy */
7824 { STR18(100), 18, 18, 18, 18, 18 },
7825 /* Init Lower Higher */
7826 { 2, 0, 0, 2, 1, 0 }, /* Hit points */
7827 { 1, 0, 2, 0, 2, 0 } /* Energy */
7829 { "matrixer", "matrixer", "The Matrix", "Max",
7831 PM_MATRIXER
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
7832 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
7833 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
7834 MH_HUMAN
, 0, MH_GNOME
|MH_ORC
,
7835 /* Str Int Wis Dex Con Cha */
7836 { 3, 3, 3, 3, 3, 3 },
7837 { STR19(25), 125, 125, 125, 125, 125 },
7838 /* new limit values for the six attributes by Amy */
7839 { STR18(100), 18, 18, 18, 18, 18 },
7840 /* Init Lower Higher */
7841 { 2, 0, 0, 2, 1, 0 }, /* Hit points */
7842 { 1, 0, 2, 0, 2, 0 } /* Energy */
7844 { "maymes", "maymes", "maymestry", "May",
7846 PM_MAYMES
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
7847 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
7848 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
7849 MH_HUMAN
, 0, MH_GNOME
|MH_ORC
,
7850 /* Str Int Wis Dex Con Cha */
7851 { 3, 3, 3, 3, 3, 3 },
7852 { STR19(25), 125, 125, 125, 125, 125 },
7853 /* new limit values for the six attributes by Amy */
7854 { STR18(100), 19, 18, 18, 18, 18 },
7855 /* Init Lower Higher */
7856 { 2, 0, 0, 2, 1, 0 }, /* Hit points */
7857 { 1, 0, 2, 0, 2, 0 } /* Energy */
7859 { "mazewalker", "mazewalking", "mazemastership", "Maz",
7861 PM_MAZEWALKER
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
7862 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
7863 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
7864 MH_HUMAN
, 0, MH_GNOME
|MH_ORC
,
7865 /* Str Int Wis Dex Con Cha */
7866 { 3, 3, 3, 3, 3, 3 },
7867 { STR19(25), 125, 125, 125, 125, 125 },
7868 /* new limit values for the six attributes by Amy */
7869 { STR18(100), 20, 18, 18, 18, 18 },
7870 /* Init Lower Higher */
7871 { 1, 0, 0, 1, 1, 0 }, /* Hit points */
7872 { 1, 0, 1, 0, 1, 0 } /* Energy */
7874 { "mazin", "mazin", "magic enhancement", "Mzi",
7876 PM_MAZIN
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
7877 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
7878 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
7879 MH_HUMAN
, 0, MH_GNOME
|MH_ORC
,
7880 /* Str Int Wis Dex Con Cha */
7881 { 3, 3, 3, 3, 3, 3 },
7882 { STR19(25), 125, 125, 125, 125, 125 },
7883 /* new limit values for the six attributes by Amy */
7884 { STR18(100), 25, 22, 18, 17, 18 },
7885 /* Init Lower Higher */
7886 { 2, 0, 0, 1, 1, 0 }, /* Hit points */
7887 { 3, 0, 3, 0, 3, 0 } /* Energy */
7889 { "metal", "metal", "heavy metal", "Met",
7891 PM_METAL
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
7892 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
7893 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
7894 MH_HUMAN
, 0, MH_GNOME
|MH_ORC
,
7895 /* Str Int Wis Dex Con Cha */
7896 { 3, 3, 3, 3, 3, 3 },
7897 { STR19(25), 125, 125, 125, 125, 125 },
7898 /* new limit values for the six attributes by Amy */
7899 { 18, 16, 18, 16, 16, 25 },
7900 /* Init Lower Higher */
7901 { 2, 0, 0, 2, 2, 0 }, /* Hit points */
7902 { 2, 0, 2, 0, 2, 0 } /* Energy */
7904 { "mimic", "mimic", "mimicry", "Mim",
7906 PM_PLAYER_MIMIC
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
7907 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
7908 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
7910 /* Str Int Wis Dex Con Cha */
7911 { 3, 3, 3, 3, 3, 3 },
7912 { STR19(25), 125, 125, 125, 125, 125 },
7913 /* new limit values for the six attributes by Amy */
7914 { STR18(50), 18, 18, 20, 14, 16 },
7915 /* Init Lower Higher */
7916 { 3, 0, 0, 4, 5, 0 }, /* Hit points */
7917 { 3, 0, 4, 0, 5, 0 } /* Energy */
7919 { "minimalist", "minimalist", "minus world", "Min",
7921 PM_MINIMALIST
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
7922 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
7923 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
7924 MH_HUMAN
, MH_ELF
, MH_ORC
,
7925 /* Str Int Wis Dex Con Cha */
7926 { 3, 3, 3, 3, 3, 3 },
7927 { STR19(25), 125, 125, 125, 125, 125 },
7928 /* new limit values for the six attributes by Amy */
7929 { STR18(100), 18, 18, 18, 20, 18 },
7930 /* Init Lower Higher */
7931 { 3, 0, 0, 3, 3, 0 }, /* Hit points */
7932 { 3, 0, 3, 0, 3, 0 } /* Energy */
7934 { "missingno", "missing", "missing faction", "Mis",
7936 PM_MISSINGNO
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
7937 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
| ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
7938 MH_HUMAN
, 0, MH_ELF
|MH_GNOME
|MH_HOBBIT
|MH_DWARF
|MH_ORC
,
7939 /* Str Int Wis Dex Con Cha */
7940 { 3, 3, 3, 3, 3, 3 },
7941 { STR19(25), 125, 125, 125, 125, 125 },
7942 /* new limit values for the six attributes by Amy */
7943 { STR19(23), 17, 23, 9, 11, 4 },
7944 /* Init Lower Higher */
7945 { 8, 0, 0, 6, 7, 0 }, /* Hit points */
7946 { 6, 0, 6, 0, 6, 0 } /* Energy */
7948 { "mongung", "mongung", "mongoss", "Mog",
7950 PM_MONGUNG
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
7951 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
7952 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
7953 MH_HUMAN
, 0, MH_GNOME
|MH_ORC
,
7954 /* Str Int Wis Dex Con Cha */
7955 { 3, 3, 3, 3, 3, 3 },
7956 { STR19(25), 125, 125, 125, 125, 125 },
7957 /* new limit values for the six attributes by Amy */
7958 { STR18(100), 6, 6, 18, 18, 18 },
7959 /* Init Lower Higher */
7960 { 2, 0, 0, 2, 1, 0 }, /* Hit points */
7961 { 1, 0, 2, 0, 2, 0 } /* Energy */
7963 { "monkey", "monkey", "monkeydom", "Mon",
7965 PM_HUMAN_MONKEY
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
7966 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
7967 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
7968 MH_HUMAN
, 0, MH_GNOME
|MH_ORC
|MH_ELF
,
7969 /* Str Int Wis Dex Con Cha */
7970 { 3, 3, 3, 3, 3, 3 },
7971 { STR19(25), 125, 125, 125, 125, 125 },
7972 /* new limit values for the six attributes by Amy */
7973 { STR19(19), 10, 10, 20, 19, 13 },
7974 /* Init Lower Higher */
7975 { 3, 0, 0, 2, 2, 0 }, /* Hit points */
7976 { 1, 0, 1, 0, 1, 0 } /* Energy */
7978 { "monster", "monster", "monster generator", "Mns",
7980 PM_MANSTER
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
7981 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
7982 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
7984 /* Str Int Wis Dex Con Cha */
7985 { 3, 3, 3, 3, 3, 3 },
7986 { STR19(25), 125, 125, 125, 125, 125 },
7987 /* new limit values for the six attributes by Amy */
7988 { STR19(20), 16, 16, 16, 20, 16 },
7989 /* Init Lower Higher */
7990 { 2, 0, 0, 2, 2, 0 }, /* Hit points */
7991 { 1, 0, 2, 0, 2, 0 } /* Energy */
7993 { "moon elf", "moonelven", "moonelvenkind", "Moo",
7995 PM_MOON_ELF
, NON_PM
, PM_ELF_MUMMY
, PM_ELF_ZOMBIE
,
7996 MH_ELF
| ROLE_MALE
|ROLE_FEMALE
| ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
7997 MH_ELF
, MH_ELF
, MH_ORC
,
7998 /* Str Int Wis Dex Con Cha */
7999 { 3, 3, 3, 3, 3, 3 },
8000 { STR19(25), 125, 125, 125, 125, 125 },
8001 /* new limit values for the six attributes by Amy */
8002 { 17, 21, 21, 19, 14, 19 },
8003 /* Init Lower Higher */
8004 { 1, 0, 0, 1, 1, 0 }, /* Hit points */
8005 { 6, 0, 2, 0, 1, 0 } /* Energy */
8007 { "mould", "mouldic", "mouldhood", "Mou",
8009 PM_MOULD
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
8010 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
| ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
8011 MH_HUMAN
, 0, MH_ELF
|MH_GNOME
|MH_HOBBIT
|MH_DWARF
|MH_ORC
,
8012 /* Str Int Wis Dex Con Cha */
8013 { 3, 3, 3, 3, 3, 3 },
8014 { STR19(25), 125, 125, 125, 125, 125 },
8015 /* new limit values for the six attributes by Amy */
8016 { STR18(100), 18, 18, 16, 16, 12 },
8017 /* Init Lower Higher */
8018 { 2, 0, 0, 2, 2, 0 }, /* Hit points */
8019 { 4, 0, 4, 0, 4, 0 } /* Energy */
8021 { "mummy", "mummified", "mummyhood", "Mum",
8023 PM_MUMMY
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
8024 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
8025 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
8027 /* Str Int Wis Dex Con Cha */
8028 { 3, 3, 3, 3, 3, 3 },
8029 { STR19(25), 125, 125, 125, 125, 125 },
8030 /* new limit values for the six attributes by Amy */
8031 { STR18(100), 16, 16, 18, 18, 11 },
8032 /* Init Lower Higher */
8033 { 2, 0, 0, 2, 1, 0 }, /* Hit points */
8034 { 1, 0, 2, 0, 2, 0 } /* Energy */
8036 { "mushroom", "mushroom", "mushroom kingdom", "Mus",
8038 PM_PLAYER_MUSHROOM
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
8039 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
8040 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
8041 MH_HUMAN
, 0, MH_GNOME
|MH_ORC
,
8042 /* Str Int Wis Dex Con Cha */
8043 { 3, 3, 3, 3, 3, 3 },
8044 { STR19(25), 125, 125, 125, 125, 125 },
8045 /* new limit values for the six attributes by Amy */
8046 { STR18(100), 18, 18, 18, 6, 18 },
8047 /* Init Lower Higher */
8048 { 1, 0, 0, 0, 0, 0 }, /* Hit points */
8049 { 2, 0, 3, 0, 5, 0 } /* Energy */
8051 { "myrkalfr", "myrkalfar", "myrkalfrkind", "Myr",
8053 PM_PLAYER_MYRKALFR
, NON_PM
, PM_ELF_MUMMY
, PM_ELF_ZOMBIE
,
8054 MH_ELF
| ROLE_MALE
|ROLE_FEMALE
| ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
8055 MH_ELF
, MH_ELF
, MH_ORC
,
8056 /* Str Int Wis Dex Con Cha */
8057 { 3, 3, 3, 3, 3, 3 },
8058 { STR19(25), 125, 125, 125, 125, 125 },
8059 /* new limit values for the six attributes by Amy */
8060 { 18, 20, 20, 18, 16, 18 },
8061 /* Init Lower Higher */
8062 { 1, 0, 0, 1, 1, 0 }, /* Hit points */
8063 { 2, 0, 3, 0, 3, 0 }, /* Energy */
8065 { "naga", "naga", "nagahood", "Nag",
8067 PM_HUMANLIKE_NAGA
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
8068 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
8069 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
8071 /* Str Int Wis Dex Con Cha */
8072 { 3, 3, 3, 3, 3, 3 },
8073 { STR19(25), 125, 125, 125, 125, 125 },
8074 /* new limit values for the six attributes by Amy */
8075 { STR19(19), 20, 20, 19, 20, 14 },
8076 /* Init Lower Higher */
8077 { 3, 0, 0, 3, 1, 0 }, /* Hit points */
8078 { 2, 0, 2, 0, 3, 0 } /* Energy */
8080 { "nastinator", "nastinator", "nastiness", "Nas",
8082 PM_NASTINATOR
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
8083 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
8084 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
8086 /* Str Int Wis Dex Con Cha */
8087 { 3, 3, 3, 3, 3, 3 },
8088 { STR19(25), 125, 125, 125, 125, 125 },
8089 /* new limit values for the six attributes by Amy */
8090 { STR18(100), 18, 18, 18, 18, 18 },
8091 /* Init Lower Higher */
8092 { 4, 0, 0, 4, 4, 0 }, /* Hit points */
8093 { 4, 0, 4, 0, 4, 0 } /* Energy */
8095 { "navi", "navi", "navihood", "Nav",
8097 PM_NAVI
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
8098 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
8099 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
8100 MH_HUMAN
, 0, MH_GNOME
|MH_ORC
,
8101 /* Str Int Wis Dex Con Cha */
8102 { 3, 3, 3, 3, 3, 3 },
8103 { STR19(25), 125, 125, 125, 125, 125 },
8104 /* new limit values for the six attributes by Amy */
8105 { STR18(100), 18, 18, 22, 18, 20 },
8106 /* Init Lower Higher */
8107 { 1, 0, 0, 2, 1, 0 }, /* Hit points */
8108 { 1, 0, 4, 0, 4, 0 } /* Energy */
8110 { "neanderthal", "neanderthal", "many years ago", "Nea",
8112 PM_PLAYABLE_NEANDERTHAL
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
8113 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
8114 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
8115 MH_HUMAN
, 0, MH_GNOME
|MH_ORC
,
8116 /* Str Int Wis Dex Con Cha */
8117 { 3, 3, 3, 3, 3, 3 },
8118 { STR19(25), 125, 125, 125, 125, 125 },
8119 /* new limit values for the six attributes by Amy */
8120 { STR19(20), 8, 10, 17, 21, 6 },
8121 /* Init Lower Higher */
8122 { 3, 0, 0, 3, 2, 0 }, /* Hit points */
8123 { 0, 0, 0, 0, 0, 0 } /* Energy */
8125 { "nemesis", "nemesis", "quest nemesis land", "Nem",
8127 PM_NEMESIS
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
8128 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
8129 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
8130 MH_HUMAN
, 0, MH_GNOME
|MH_ORC
|MH_ELF
|MH_HUMAN
|MH_DWARF
|MH_HOBBIT
|MH_WERE
|MH_VAMPIRE
,
8131 /* Str Int Wis Dex Con Cha */
8132 { 3, 3, 3, 3, 3, 3 },
8133 { STR19(25), 125, 125, 125, 125, 125 },
8134 /* new limit values for the six attributes by Amy */
8135 { STR18(100), 18, 18, 18, 18, 18 },
8136 /* Init Lower Higher */
8137 { 7, 0, 0, 7, 7, 0 }, /* Hit points */
8138 { 7, 0, 7, 0, 7, 0 } /* Energy */
8140 { "nibelung", "nibelung", "nibelung lieo", "Nib",
8142 PM_PLAYER_NIBELUNG
, NON_PM
, PM_DWARF_MUMMY
, PM_DWARF_ZOMBIE
,
8143 MH_DWARF
| ROLE_MALE
|ROLE_FEMALE
| ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
8144 MH_DWARF
, 0, MH_DWARF
,
8145 /* Str Int Wis Dex Con Cha */
8146 { 3, 3, 3, 3, 3, 3 },
8147 { STR19(25), 125, 125, 125, 125, 125 },
8148 /* new limit values for the six attributes by Amy */
8149 { STR18(100), 16, 16, 20, 20, 16 },
8150 /* Init Lower Higher */
8151 { 4, 0, 0, 3, 2, 0 }, /* Hit points */
8152 { 0, 0, 0, 0, 0, 0 } /* Energy */
8154 { "nord", "nordish", "nordhood", "Nor",
8156 PM_NORD
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
8157 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
8158 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
8159 MH_HUMAN
, 0, MH_ORC
,
8160 /* Str Int Wis Dex Con Cha */
8161 { 3, 3, 3, 3, 3, 3 },
8162 { STR19(25), 125, 125, 125, 125, 125 },
8163 /* new limit values for the six attributes by Amy */
8164 { STR19(19), 17, 17, 17, 19, 17 },
8165 /* Init Lower Higher */
8166 { 4, 0, 0, 3, 2, 0 }, /* Hit points */
8167 { 3, 0, 2, 0, 1, 0 } /* Energy */
8169 { "null", "null", "null", "Nul",
8171 PM_NULL
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
8172 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
8173 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
8175 /* Str Int Wis Dex Con Cha */
8176 { 3, 3, 3, 3, 3, 3 },
8177 { STR19(25), 125, 125, 125, 125, 125 },
8178 /* new limit values for the six attributes by Amy */
8179 { STR18(100), 18, 18, 18, 18, 18 },
8180 /* Init Lower Higher */
8181 { 0, 0, 0, 0, 0, 0 }, /* Hit points */
8182 { 0, 0, 0, 0, 0, 0 } /* Energy */
8184 { "nymph", "nymphian", "nymphhood", "Nym", /* suggestion by BellisColdwine */
8186 PM_NYMPH
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
8187 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
8188 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
8189 MH_HUMAN
, 0, MH_GNOME
|MH_ORC
,
8190 /* Str Int Wis Dex Con Cha */
8191 { 3, 3, 3, 3, 3, 3 },
8192 { STR19(25), 125, 125, 125, 125, 125 },
8193 /* new limit values for the six attributes by Amy */
8194 { STR18(100), 18, 18, 25, 14, 25 },
8195 /* Init Lower Higher */
8196 { 2, 0, 0, 1, 1, 0 }, /* Hit points */
8197 { 3, 0, 3, 0, 3, 0 } /* Energy */
8199 { "octopode", "octopode", "octopussy", "Oct",
8201 PM_OCTOPODE
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
8202 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
8203 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
8204 MH_HUMAN
, 0, MH_GNOME
|MH_ORC
|MH_ELF
|MH_HUMAN
|MH_DWARF
|MH_HOBBIT
|MH_WERE
|MH_VAMPIRE
,
8205 /* Str Int Wis Dex Con Cha */
8206 { 3, 3, 3, 3, 3, 3 },
8207 { STR19(25), 125, 125, 125, 125, 125 },
8208 /* new limit values for the six attributes by Amy */
8209 { STR18(100), 18, 18, 20, 14, 10 },
8210 /* Init Lower Higher */
8211 { 1, 0, 0, 1, 1, 0 }, /* Hit points */
8212 { 1, 0, 1, 0, 1, 0 } /* Energy */
8214 { "ogre", "ogrotic", "ogrohood", "Ogr",
8216 PM_OGRO
, NON_PM
, PM_OGRE_MUMMY
, PM_OGRE_ZOMBIE
,
8217 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
8218 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
8220 /* Str Int Wis Dex Con Cha */
8221 { 3, 3, 3, 3, 3, 3 },
8222 { STR19(25), 125, 125, 125, 125, 125 },
8223 /* new limit values for the six attributes by Amy */
8224 { STR19(20), 12, 12, 16, 24, 8 },
8225 /* Init Lower Higher */
8226 { 4, 0, 0, 3, 3, 0 }, /* Hit points */
8227 { 3, 0, 1, 0, 1, 0 } /* Energy */
8229 { "orc", "orcish", "orcdom", "Orc",
8231 PM_ORC
, NON_PM
, PM_ORC_MUMMY
, PM_ORC_ZOMBIE
,
8232 MH_ORC
| ROLE_MALE
|ROLE_FEMALE
| ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
8233 MH_ORC
, 0, MH_HUMAN
|MH_ELF
|MH_DWARF
|MH_HOBBIT
,
8234 /* Str Int Wis Dex Con Cha */
8235 { 3, 3, 3, 3, 3, 3 },
8236 { STR19(25), 125, 125, 125, 125, 125 },
8237 /* new limit values for the six attributes by Amy */
8238 { STR18(50),16, 16, 18, 18, 16 },
8239 /* Init Lower Higher */
8240 { 1, 0, 0, 1, 0, 0 }, /* Hit points */
8241 { 1, 0, 1, 0, 1, 0 } /* Energy */
8243 { "outsider", "outsider", "far planets", "Out",
8245 PM_OUTSIDER
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
8246 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
8247 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
8248 MH_HUMAN
, 0, MH_GNOME
|MH_ORC
|MH_ELF
|MH_HUMAN
|MH_DWARF
|MH_HOBBIT
|MH_WERE
|MH_VAMPIRE
,
8249 /* Str Int Wis Dex Con Cha */
8250 { 3, 3, 3, 3, 3, 3 },
8251 { STR19(25), 125, 125, 125, 125, 125 },
8252 /* new limit values for the six attributes by Amy */
8253 { STR19(20), 20, 20, 20, 20, 20 },
8254 /* Init Lower Higher */
8255 { 4, 0, 0, 4, 4, 0 }, /* Hit points */
8256 { 4, 0, 4, 0, 4, 0 } /* Energy */
8258 { "peacemaker", "peacemaker", "activism", "Pea",
8260 PM_PEACEMAKER
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
8261 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
| ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
8263 /* Str Int Wis Dex Con Cha */
8264 { 3, 3, 3, 3, 3, 3 },
8265 { STR19(25), 125, 125, 125, 125, 125 },
8266 /* new limit values for the six attributes by Amy */
8267 { STR18(100), 18, 18, 18, 12, 18 },
8268 /* Init Lower Higher */
8269 { 1, 0, 0, 1, 0, 0 }, /* Hit points */
8270 { 1, 0, 1, 0, 1, 0 } /* Energy */
8272 { "pervert", "pervert", "perversion", "Per",
8274 PM_PERVERT
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
8275 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
8276 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
8277 MH_HUMAN
, 0, MH_GNOME
|MH_ORC
,
8278 /* Str Int Wis Dex Con Cha */
8279 { 3, 3, 3, 3, 3, 3 },
8280 { STR19(25), 125, 125, 125, 125, 125 },
8281 /* new limit values for the six attributes by Amy */
8282 { STR18(100), 18, 18, 18, 18, 18 },
8283 /* Init Lower Higher */
8284 { 2, 0, 0, 2, 1, 0 }, /* Hit points */
8285 { 1, 0, 2, 0, 2, 0 } /* Energy */
8287 { "phantom", "phantom", "phantomhood", "Pha",
8289 PM_PHANTOM_GHOST
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
8290 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
8291 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
8292 MH_HUMAN
, 0, MH_GNOME
|MH_ORC
|MH_ELF
|MH_HUMAN
|MH_DWARF
|MH_HOBBIT
|MH_WERE
|MH_VAMPIRE
,
8293 /* Str Int Wis Dex Con Cha */
8294 { 3, 3, 3, 3, 3, 3 },
8295 { STR19(25), 125, 125, 125, 125, 125 },
8296 /* new limit values for the six attributes by Amy */
8297 { STR18(100), 18, 18, 18, 18, 14 },
8298 /* Init Lower Higher */
8299 { 2, 0, 0, 2, 1, 0 }, /* Hit points */
8300 { 1, 0, 2, 0, 2, 0 } /* Energy */
8302 { "piece", "piece", "chess pieces", "Pic",
8304 PM_PIECE
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
8305 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
8306 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
8307 MH_HUMAN
, 0, MH_GNOME
|MH_ORC
,
8308 /* Str Int Wis Dex Con Cha */
8309 { 3, 3, 3, 3, 3, 3 },
8310 { STR19(25), 125, 125, 125, 125, 125 },
8311 /* new limit values for the six attributes by Amy */
8312 { STR18(100), 17, 17, 18, 20, 16 },
8313 /* Init Lower Higher */
8314 { 2, 0, 0, 2, 2, 0 }, /* Hit points */
8315 { 1, 0, 1, 0, 1, 0 } /* Energy */
8317 { "piercer", "piercer", "piercing studio", "Pie",
8319 PM_PIERCER
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
8320 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
8321 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
8322 MH_HUMAN
, 0, MH_GNOME
|MH_ORC
,
8323 /* Str Int Wis Dex Con Cha */
8324 { 3, 3, 3, 3, 3, 3 },
8325 { STR19(25), 125, 125, 125, 125, 125 },
8326 /* new limit values for the six attributes by Amy */
8327 { STR18(100), 20, 22, 19, 20, 14 },
8328 /* Init Lower Higher */
8329 { 5, 0, 0, 2, 1, 0 }, /* Hit points */
8330 { 2, 0, 3, 0, 2, 0 } /* Energy */
8332 { "poisoner", "poisoner", "poisoning", "Poi",
8334 PM_POISONER
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
8335 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
8336 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
8337 MH_HUMAN
, 0, MH_GNOME
|MH_ORC
,
8338 /* Str Int Wis Dex Con Cha */
8339 { 3, 3, 3, 3, 3, 3 },
8340 { STR19(25), 125, 125, 125, 125, 125 },
8341 /* new limit values for the six attributes by Amy */
8342 { STR18(100), 18, 18, 18, 20, 16 },
8343 /* Init Lower Higher */
8344 { 1, 0, 0, 1, 1, 0 }, /* Hit points */
8345 { 1, 0, 1, 0, 1, 0 } /* Energy */
8347 { "polyinitor", "polyinitor", "polymorph initialization", "Pol",
8349 PM_POLYINITOR
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
8350 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
| ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
8351 MH_HUMAN
, 0, MH_ELF
|MH_GNOME
|MH_HOBBIT
|MH_DWARF
|MH_ORC
,
8352 /* Str Int Wis Dex Con Cha */
8353 { 3, 3, 3, 3, 3, 3 },
8354 { STR19(25), 125, 125, 125, 125, 125 },
8355 /* new limit values for the six attributes by Amy */
8356 { STR19(21), 19, 19, 19, 21, 14 },
8357 /* Init Lower Higher */
8358 { 2, 0, 0, 2, 2, 0 }, /* Hit points */
8359 { 4, 0, 4, 0, 4, 0 } /* Energy */
8361 { "problematic", "problematic", "problems", "Pro",
8363 PM_PROBLEMATIC
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
8364 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
8365 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
8366 MH_HUMAN
, 0, MH_GNOME
|MH_ORC
,
8367 /* Str Int Wis Dex Con Cha */
8368 { 3, 3, 3, 3, 3, 3 },
8369 { STR19(25), 125, 125, 125, 125, 125 },
8370 /* new limit values for the six attributes by Amy */
8371 { STR18(100), 18, 18, 18, 18, 18 },
8372 /* Init Lower Higher */
8373 { 2, 0, 0, 2, 1, 0 }, /* Hit points */
8374 { 1, 0, 2, 0, 2, 0 } /* Energy */
8376 { "quantum mechanic", "quantum mechanic", "quants", "Qua",
8378 PM_PLAYER_MECHANIC
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
8379 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
8380 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
8381 MH_HUMAN
, 0, MH_GNOME
|MH_ORC
,
8382 /* Str Int Wis Dex Con Cha */
8383 { 3, 3, 3, 3, 3, 3 },
8384 { STR19(25), 125, 125, 125, 125, 125 },
8385 /* new limit values for the six attributes by Amy */
8386 { STR18(70), 19, 17, 17, 17, 15 },
8387 /* Init Lower Higher */
8388 { 2, 0, 0, 3, 0, 0 }, /* Hit points */
8389 { 1, 0, 3, 0, 1, 0 } /* Energy */
8391 { "race that doesn't exist", "nonexistant", "pork realm", "Nex",
8393 PM_RACE_THAT_DOESN_T_EXIST
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
8394 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
8395 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
8396 MH_HUMAN
, 0, MH_GNOME
|MH_ORC
|MH_ELF
|MH_HUMAN
|MH_DWARF
|MH_HOBBIT
|MH_WERE
|MH_VAMPIRE
,
8397 /* Str Int Wis Dex Con Cha */
8398 { 3, 3, 3, 3, 3, 3 },
8399 { STR19(25), 125, 125, 125, 125, 125 },
8400 /* new limit values for the six attributes by Amy */
8401 { 18, 18, 18, 18, 18, 18 },
8402 /* Init Lower Higher */
8403 { 0, 0, 0, 0, 0, 0 }, /* Hit points */
8404 { 0, 0, 0, 0, 0, 0 } /* Energy */
8406 { "race X", "x-race", "x-race", "Xra",
8408 PM_RACE_X
, NON_PM
, PM_ELF_MUMMY
, PM_ELF_ZOMBIE
,
8409 MH_ELF
| ROLE_MALE
|ROLE_FEMALE
|
8410 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
8411 MH_HUMAN
, 0, MH_GNOME
|MH_ORC
|MH_ELF
|MH_HUMAN
|MH_DWARF
|MH_HOBBIT
|MH_WERE
|MH_VAMPIRE
,
8412 /* Str Int Wis Dex Con Cha */
8413 { 3, 3, 3, 3, 3, 3 },
8414 { STR19(25), 125, 125, 125, 125, 125 },
8415 /* new limit values for the six attributes by Amy */
8416 { STR19(20), 16, 18, 16, 21, 14 },
8417 /* Init Lower Higher */
8418 { 4, 0, 0, 4, 4, 0 }, /* Hit points */
8419 { 8, 0, 1, 0, 1, 0 } /* Energy */
8421 { "randomizer", "randomized", "rng worship", "Ran",
8423 PM_RANDOMIZER
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
8424 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
8425 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
8427 /* Str Int Wis Dex Con Cha */
8428 { 3, 3, 3, 3, 3, 3 },
8429 { STR19(25), 125, 125, 125, 125, 125 },
8430 /* new limit values for the six attributes by Amy */
8431 { STR18(100), 18, 18, 18, 18, 18 },
8432 /* Init Lower Higher */
8433 { 3, 0, 0, 3, 3, 0 }, /* Hit points */
8434 { 3, 0, 3, 0, 3, 0 } /* Energy */
8436 { "redditor", "redditor", "reddit community", "Rdt",
8438 PM_REDDITOR
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
8439 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
8440 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
8441 MH_HUMAN
, 0, MH_GNOME
|MH_ORC
,
8442 /* Str Int Wis Dex Con Cha */
8443 { 3, 3, 3, 3, 3, 3 },
8444 { STR19(25), 125, 125, 125, 125, 125 },
8445 /* new limit values for the six attributes by Amy */
8446 { STR18(100), 18, 18, 20, 18, 18 },
8447 /* Init Lower Higher */
8448 { 0, 0, 0, 0, 0, 0 }, /* Hit points */
8449 { 1, 0, 2, 0, 2, 0 } /* Energy */
8451 { "redguard", "redguardian", "redguardhood", "Red",
8453 PM_REDGUARD
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
8454 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
8455 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
8457 /* Str Int Wis Dex Con Cha */
8458 { 3, 3, 3, 3, 3, 3 },
8459 { STR19(25), 125, 125, 125, 125, 125 },
8460 /* new limit values for the six attributes by Amy */
8461 { STR18(100), 14, 12, 18, 22, 18 },
8462 /* Init Lower Higher */
8463 { 10, 0, 0, 6, 4, 0 }, /* Hit points */
8464 { 0, 0, 0, 0, 0, 0 } /* Energy */
8466 { "releasier", "releasier", "Super Releasio 64", "Rel",
8468 PM_RELEASIER
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
8469 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
8470 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
8472 /* Str Int Wis Dex Con Cha */
8473 { 3, 3, 3, 3, 3, 3 },
8474 { STR19(25), 125, 125, 125, 125, 125 },
8475 /* new limit values for the six attributes by Amy */
8476 { STR18(40), 18, 18, 14, 18, 16 },
8477 /* Init Lower Higher */
8478 { 2, 0, 0, 1, 1, 0 }, /* Hit points */
8479 { 2, 0, 1, 0, 1, 0 } /* Energy */
8481 { "reticulan", "reticulan", "ZAPM planet", "Ret",
8483 PM_RETICULAN
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
8484 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
8485 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
8487 /* Str Int Wis Dex Con Cha */
8488 { 3, 3, 3, 3, 3, 3 },
8489 { STR19(25), 125, 125, 125, 125, 125 },
8490 /* new limit values for the six attributes by Amy */
8491 { STR18(100), 24, 24, 18, 20, 10 },
8492 /* Init Lower Higher */
8493 { 1, 0, 0, 1, 1, 0 }, /* Hit points */
8494 { 10, 0, 8, 0, 12, 0} /* Energy */
8496 { "rodneyan", "rodneyan", "rodneyhood", "Rod",
8498 PM_RODNEYAN
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
8499 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
| ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
8500 MH_HUMAN
, 0, MH_ELF
|MH_GNOME
|MH_HOBBIT
|MH_DWARF
|MH_ORC
,
8501 /* Str Int Wis Dex Con Cha */
8502 { 3, 3, 3, 3, 3, 3 },
8503 { STR19(25), 125, 125, 125, 125, 125 },
8504 /* new limit values for the six attributes by Amy */
8505 { STR19(21), 25, 20, 18, 16, 18 },
8506 /* Init Lower Higher */
8507 { 4, 0, 0, 4, 4, 0 }, /* Hit points */
8508 { 7, 0, 7, 0, 7, 0 } /* Energy */
8510 { "rohirrim", "rohirrim", "rohan", "Roh",
8512 PM_ROHIRRIM
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
8513 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
8514 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
8515 MH_HUMAN
, 0, MH_GNOME
|MH_ORC
,
8516 /* Str Int Wis Dex Con Cha */
8517 { 3, 3, 3, 3, 3, 3 },
8518 { STR19(25), 125, 125, 125, 125, 125 },
8519 /* new limit values for the six attributes by Amy */
8520 { STR18(100), 16, 16, 18, 20, 19 },
8521 /* Init Lower Higher */
8522 { 2, 0, 0, 2, 1, 0 }, /* Hit points */
8523 { 1, 0, 2, 0, 2, 0 } /* Energy */
8525 { "roommate", "roommate", "room sharing", "Roo",
8527 PM_ROOMMATE
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
8528 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
8529 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
8530 MH_HUMAN
, 0, MH_GNOME
|MH_ORC
,
8531 /* Str Int Wis Dex Con Cha */
8532 { 3, 3, 3, 3, 3, 3 },
8533 { STR19(25), 125, 125, 125, 125, 125 },
8534 /* new limit values for the six attributes by Amy */
8535 { STR18(100), 18, 18, 18, 18, 20 },
8536 /* Init Lower Higher */
8537 { 2, 0, 0, 2, 1, 0 }, /* Hit points */
8538 { 1, 0, 2, 0, 2, 0 } /* Energy */
8540 { "rougelike", "rougelike", "angles of satin", "Rog",
8542 PM_ROUGELIKE
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
8543 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
8544 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
8545 MH_HUMAN
, 0, MH_GNOME
|MH_ORC
,
8546 /* Str Int Wis Dex Con Cha */
8547 { 3, 3, 3, 3, 3, 3 },
8548 { STR19(25), 125, 125, 125, 125, 125 },
8549 /* new limit values for the six attributes by Amy */
8550 { STR18(100), 18, 18, 20, 17, 18 },
8551 /* Init Lower Higher */
8552 { 2, 0, 0, 2, 1, 0 }, /* Hit points */
8553 { 1, 0, 2, 0, 2, 0 } /* Energy */
8555 { "rusmot", "rusmot", "motherus", "Rus",
8557 PM_RUSMOT
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
8558 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
8559 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
8560 MH_HUMAN
, 0, MH_GNOME
|MH_ORC
,
8561 /* Str Int Wis Dex Con Cha */
8562 { 3, 3, 3, 3, 3, 3 },
8563 { STR19(25), 125, 125, 125, 125, 125 },
8564 /* new limit values for the six attributes by Amy */
8565 { STR18(100), 18, 18, 18, 18, 18 },
8566 /* Init Lower Higher */
8567 { 2, 0, 0, 2, 1, 0 }, /* Hit points */
8568 { 1, 0, 2, 0, 2, 0 } /* Energy */
8570 { "salamander", "salamander", "salamanderhood", "Sal",
8572 PM_PLAYER_SALAMANDER
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
8573 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
8574 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
8575 MH_HUMAN
, 0, MH_GNOME
|MH_ORC
,
8576 /* Str Int Wis Dex Con Cha */
8577 { 3, 3, 3, 3, 3, 3 },
8578 { STR19(25), 125, 125, 125, 125, 125 },
8579 /* new limit values for the six attributes by Amy */
8580 { STR19(20), 18, 18, 16, 19, 16 },
8581 /* Init Lower Higher */
8582 { 2, 0, 0, 3, 4, 0 }, /* Hit points */
8583 { 1, 0, 1, 0, 1, 0 } /* Energy */
8585 { "samedi", "samedi", "sons of samedi", "Sam",
8587 PM_SAMEDI
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
8588 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
8589 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
8590 MH_HUMAN
, 0, MH_GNOME
|MH_ORC
,
8591 /* Str Int Wis Dex Con Cha */
8592 { 3, 3, 3, 3, 3, 3 },
8593 { STR19(25), 125, 125, 125, 125, 125 },
8594 /* new limit values for the six attributes by Amy */
8595 { STR19(19), 14, 18, 18, 19, 18 },
8596 /* Init Lower Higher */
8597 { 4, 0, 0, 2, 1, 0 }, /* Hit points */
8598 { 1, 0, 2, 0, 1, 0 } /* Energy */
8600 { "satre", "satre", "satredom", "Sat",
8602 PM_SATRE
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
8603 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
8604 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
8605 MH_HUMAN
, 0, MH_GNOME
|MH_ORC
,
8606 /* Str Int Wis Dex Con Cha */
8607 { 3, 3, 3, 3, 3, 3 },
8608 { STR19(25), 125, 125, 125, 125, 125 },
8609 /* new limit values for the six attributes by Amy */
8610 { STR18(20), 22, 22, 25, 12, 25 },
8611 /* Init Lower Higher */
8612 { 4, 0, 0, 4, 6, 0 }, /* Hit points */
8613 { 4, 0, 6, 0, 9, 0 } /* Energy */
8615 { "scriptor", "scriptor", "jonadab's perlscript", "Scr",
8617 PM_SCRIPTOR
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
8618 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
8619 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
8620 MH_HUMAN
, 0, MH_GNOME
|MH_ORC
,
8621 /* Str Int Wis Dex Con Cha */
8622 { 3, 3, 3, 3, 3, 3 },
8623 { STR19(25), 125, 125, 125, 125, 125 },
8624 /* new limit values for the six attributes by Amy */
8625 { STR18(100), 18, 18, 18, 18, 18 },
8626 /* Init Lower Higher */
8627 { 2, 0, 0, 2, 1, 0 }, /* Hit points */
8628 { 1, 0, 2, 0, 2, 0 } /* Energy */
8630 { "scurrier", "scurrier", "scurriership", "Scu", /* by jonadab */
8632 PM_SCURRIER
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
8633 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
| ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
8634 MH_HUMAN
, 0, MH_ELF
|MH_GNOME
|MH_HOBBIT
|MH_DWARF
|MH_ORC
,
8635 /* Str Int Wis Dex Con Cha */
8636 { 3, 3, 3, 3, 3, 3 },
8637 { STR19(25), 125, 125, 125, 125, 125 },
8638 /* new limit values for the six attributes by Amy */
8639 { 15, 18, 18, 20, 14, 18 },
8640 /* Init Lower Higher */
8641 { 1, 0, 0, 1, 1, 0 }, /* Hit points */
8642 { 1, 0, 2, 0, 2, 0 } /* Energy */
8644 { "sea elf", "sea elven", "sea elvenkind", "Sea",
8646 PM_SEA_ELF
, NON_PM
, PM_ELF_MUMMY
, PM_ELF_ZOMBIE
,
8647 MH_ELF
| ROLE_MALE
|ROLE_FEMALE
| ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
8648 MH_ELF
, MH_ELF
, MH_ORC
,
8649 /* Str Int Wis Dex Con Cha */
8650 { 3, 3, 3, 3, 3, 3 },
8651 { STR19(25), 125, 125, 125, 125, 125 },
8652 /* new limit values for the six attributes by Amy */
8653 { 18, 20, 20, 18, 16, 18 },
8654 /* Init Lower Higher */
8655 { 1, 0, 0, 1, 1, 0 }, /* Hit points */
8656 { 6, 0, 3, 0, 3, 0 } /* Energy */
8658 { "segfaulter", "segfaulting", "SIGSEGV", "Seg",
8660 PM_SEGFAULTER
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
8661 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
8662 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
8663 MH_HUMAN
, 0, MH_GNOME
|MH_ORC
,
8664 /* Str Int Wis Dex Con Cha */
8665 { 3, 3, 3, 3, 3, 3 },
8666 { STR19(25), 125, 125, 125, 125, 125 },
8667 /* new limit values for the six attributes by Amy */
8668 { STR18(100), 18, 18, 18, 18, 18 },
8669 /* Init Lower Higher */
8670 { 2, 0, 0, 2, 1, 0 }, /* Hit points */
8671 { 1, 0, 2, 0, 2, 0 } /* Energy */
8673 { "senser", "senser", "senserhood", "Sen",
8675 PM_SENSER
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
8676 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
8677 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
8678 MH_HUMAN
, 0, MH_GNOME
|MH_ORC
,
8679 /* Str Int Wis Dex Con Cha */
8680 { 3, 3, 3, 3, 3, 3 },
8681 { STR19(25), 125, 125, 125, 125, 125 },
8682 /* new limit values for the six attributes by Amy */
8683 { STR18(100), 18, 18, 19, 18, 18 },
8684 /* Init Lower Higher */
8685 { 1, 0, 0, 1, 1, 0 }, /* Hit points */
8686 { 1, 0, 1, 0, 1, 0 } /* Energy */
8688 { "serb", "serb", "sergro", "Ser",
8690 PM_SERB
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
8691 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
8692 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
8693 MH_HUMAN
, 0, MH_GNOME
|MH_ORC
,
8694 /* Str Int Wis Dex Con Cha */
8695 { 3, 3, 3, 3, 3, 3 },
8696 { STR19(25), 125, 125, 125, 125, 125 },
8697 /* new limit values for the six attributes by Amy */
8698 { STR18(100), 18, 18, 18, 18, 18 },
8699 /* Init Lower Higher */
8700 { 2, 0, 0, 2, 1, 0 }, /* Hit points */
8701 { 1, 0, 2, 0, 2, 0 } /* Energy */
8703 { "sheep", "sheep", "sheepishness", "Shp",
8705 PM_PLAYER_SHEEP
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
8706 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
8707 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
8709 /* Str Int Wis Dex Con Cha */
8710 { 3, 3, 3, 3, 3, 3 },
8711 { STR19(25), 125, 125, 125, 125, 125 },
8712 /* new limit values for the six attributes by Amy */
8713 { STR18(80), 15, 16, 16, 18, 16 },
8714 /* Init Lower Higher */
8715 { 4, 0, 0, 2, 2, 0 }, /* Hit points */
8716 { 1, 0, 1, 0, 4, 0 } /* Energy */
8718 { "shell", "shell", "shelldom", "She",
8720 PM_SHELL
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
8721 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
8722 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
8723 MH_HUMAN
, 0, MH_GNOME
|MH_ORC
,
8724 /* Str Int Wis Dex Con Cha */
8725 { 3, 3, 3, 3, 3, 3 },
8726 { STR19(25), 125, 125, 125, 125, 125 },
8727 /* new limit values for the six attributes by Amy */
8728 { STR18(100), 18, 19, 18, 24, 16 },
8729 /* Init Lower Higher */
8730 { 5, 0, 0, 5, 5, 0 }, /* Hit points */
8731 { 2, 0, 2, 0, 2, 0 } /* Energy */
8733 { "shoe", "shoe", "wonderful lady shoes", "Sho",
8735 PM_SHOE
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
8736 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
8737 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
8738 MH_HUMAN
, 0, MH_GNOME
|MH_ORC
,
8739 /* Str Int Wis Dex Con Cha */
8740 { 3, 3, 3, 3, 3, 3 },
8741 { STR19(25), 125, 125, 125, 125, 125 },
8742 /* new limit values for the six attributes by Amy */
8743 { STR19(20), 18, 18, 19, 18, 25 },
8744 /* Init Lower Higher */
8745 { 4, 0, 0, 5, 6, 0 }, /* Hit points */
8746 { 3, 0, 4, 0, 7, 0 } /* Energy */
8748 { "sinner", "sinful", "sinnerhood", "Sin",
8750 PM_SINNER
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
8751 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
8752 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
8753 MH_HUMAN
, 0, MH_GNOME
|MH_ORC
,
8754 /* Str Int Wis Dex Con Cha */
8755 { 3, 3, 3, 3, 3, 3 },
8756 { STR19(25), 125, 125, 125, 125, 125 },
8757 /* new limit values for the six attributes by Amy */
8758 { STR18(100), 18, 24, 18, 18, 18 },
8759 /* Init Lower Higher */
8760 { 2, 0, 0, 2, 1, 0 }, /* Hit points */
8761 { 1, 0, 2, 0, 2, 0 } /* Energy */
8763 { "skeleton", "skeleton", "skeletal remains", "Ske",
8765 PM_PLAYER_SKELETON
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
8766 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
8767 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
8769 /* Str Int Wis Dex Con Cha */
8770 { 3, 3, 3, 3, 3, 3 },
8771 { STR19(25), 125, 125, 125, 125, 125 },
8772 /* new limit values for the six attributes by Amy */
8773 { STR19(20), 16, 16, 18, 21, 10 },
8774 /* Init Lower Higher */
8775 { 3, 0, 0, 2, 1, 0 }, /* Hit points */
8776 { 1, 0, 2, 0, 2, 0 } /* Energy */
8778 { "skillor", "skillor", "pure skill", "Ski",
8780 PM_SKILLOR
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
8781 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
8782 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
8783 MH_HUMAN
, 0, MH_GNOME
|MH_ORC
,
8784 /* Str Int Wis Dex Con Cha */
8785 { 3, 3, 3, 3, 3, 3 },
8786 { STR19(25), 125, 125, 125, 125, 125 },
8787 /* new limit values for the six attributes by Amy */
8788 { STR18(100), 18, 18, 18, 18, 18 },
8789 /* Init Lower Higher */
8790 { 0, 0, 0, 0, 0, 0 }, /* Hit points */
8791 { 0, 0, 0, 0, 0, 0 } /* Energy */
8793 { "slyer alien", "slyer alien", "slyered people", "Sly",
8795 PM_SLYER_ALIEN
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
8796 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
8797 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
8798 MH_HUMAN
, 0, MH_GNOME
|MH_ORC
,
8799 /* Str Int Wis Dex Con Cha */
8800 { 3, 3, 3, 3, 3, 3 },
8801 { STR19(25), 125, 125, 125, 125, 125 },
8802 /* new limit values for the six attributes by Amy */
8803 { STR18(100), 20, 25, 18, 18, 3 },
8804 /* Init Lower Higher */
8805 { 3, 0, 0, 3, 3, 0 }, /* Hit points */
8806 { 2, 0, 2, 0, 5, 0 } /* Energy */
8808 { "snail", "snail", "snailing", "Snl",
8810 PM_ELONA_SNAIL
, NON_PM
, PM_ELF_MUMMY
, PM_ELF_ZOMBIE
,
8811 MH_ELF
| ROLE_MALE
|ROLE_FEMALE
|
8812 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
8813 MH_HUMAN
, 0, MH_GNOME
|MH_ORC
|MH_ELF
|MH_HUMAN
|MH_DWARF
|MH_HOBBIT
|MH_WERE
|MH_VAMPIRE
,
8814 /* Str Int Wis Dex Con Cha */
8815 { 3, 3, 3, 3, 3, 3 },
8816 { STR19(25), 125, 125, 125, 125, 125 },
8817 /* new limit values for the six attributes by Amy */
8818 { 18, 18, 18, 18, 20, 18 },
8819 /* Init Lower Higher */
8820 { 8, 0, 0, 4, 0, 0 }, /* Hit points */
8821 { 8, 0, 4, 0, 0, 0 } /* Energy */
8823 { "snakeman", "snakey", "snakehood", "Sna",
8825 PM_SNAKEMAN
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
8826 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
8827 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
8829 /* Str Int Wis Dex Con Cha */
8830 { 3, 3, 3, 3, 3, 3 },
8831 { STR19(25), 125, 125, 125, 125, 125 },
8832 /* new limit values for the six attributes by Amy */
8833 { STR19(19), 18, 18, 20, 18, 14 },
8834 /* Init Lower Higher */
8835 { 3, 0, 0, 2, 2, 0 }, /* Hit points */
8836 { 2, 0, 1, 0, 1, 0 } /* Energy */
8838 { "sokosolver", "sokosolver", "sokoban league", "Sok",
8840 PM_SOKOSOLVER
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
8841 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
8842 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
8843 MH_HUMAN
, 0, MH_GNOME
|MH_ORC
,
8844 /* Str Int Wis Dex Con Cha */
8845 { 3, 3, 3, 3, 3, 3 },
8846 { STR19(25), 125, 125, 125, 125, 125 },
8847 /* new limit values for the six attributes by Amy */
8848 { STR18(100), 18, 18, 18, 19, 18 },
8849 /* Init Lower Higher */
8850 { 1, 0, 0, 1, 1, 0 }, /* Hit points */
8851 { 1, 0, 1, 0, 1, 0 } /* Energy */
8853 { "soviet", "soviet", "soviet union", "Sov",
8855 PM_SOVIET
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
8856 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
8857 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
8858 MH_HUMAN
, 0, MH_GNOME
|MH_ORC
|MH_ELF
|MH_HUMAN
|MH_DWARF
|MH_HOBBIT
|MH_WERE
|MH_VAMPIRE
,
8859 /* Str Int Wis Dex Con Cha */
8860 { 3, 3, 3, 3, 3, 3 },
8861 { 16, 16, 16, 16, 16, 16 }, /* in Soviet Russia, races don't automatically have a max of 25 for every attribute */
8862 /* new limit values for the six attributes by Amy */
8863 { 15, 15, 15, 15, 15, 15 }, /* intentionally sucky :P */
8864 /* Init Lower Higher */
8865 { 0, 0, 0, 0, 0, 0 }, /* Hit points */
8866 { 0, 0, 0, 0, 0, 0 } /* Energy */
8868 { "spammer", "spammer", "spam mail folder", "Spm",
8870 PM_SPAMMER
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
8871 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
8872 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
8873 MH_HUMAN
, 0, MH_GNOME
|MH_ORC
,
8874 /* Str Int Wis Dex Con Cha */
8875 { 3, 3, 3, 3, 3, 3 },
8876 { STR19(25), 125, 125, 125, 125, 125 },
8877 /* new limit values for the six attributes by Amy */
8878 { STR18(100), 18, 18, 18, 18, 18 },
8879 /* Init Lower Higher */
8880 { 2, 0, 0, 2, 1, 0 }, /* Hit points */
8881 { 1, 0, 2, 0, 2, 0 } /* Energy */
8883 { "spard", "spard", "spardin", "Spa",
8885 PM_SPARD
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
8886 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
8887 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
8888 MH_HUMAN
, 0, MH_GNOME
|MH_ORC
,
8889 /* Str Int Wis Dex Con Cha */
8890 { 3, 3, 3, 3, 3, 3 },
8891 { STR19(25), 125, 125, 125, 125, 125 },
8892 /* new limit values for the six attributes by Amy */
8893 { STR18(100), 18, 18, 18, 18, 18 },
8894 /* Init Lower Higher */
8895 { 2, 0, 0, 2, 1, 0 }, /* Hit points */
8896 { 1, 0, 2, 0, 2, 0 } /* Energy */
8898 { "specialist", "specialist", "speciality", "Spe",
8900 PM_SPECIALIST
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
8901 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
8902 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
8903 MH_HUMAN
, 0, MH_GNOME
|MH_ORC
,
8904 /* Str Int Wis Dex Con Cha */
8905 { 3, 3, 3, 3, 3, 3 },
8906 { STR19(25), 125, 125, 125, 125, 125 },
8907 /* new limit values for the six attributes by Amy */
8908 { STR18(100), 18, 18, 18, 18, 18 },
8909 /* Init Lower Higher */
8910 { 1, 0, 0, 1, 1, 0 }, /* Hit points */
8911 { 1, 0, 1, 0, 1, 0 } /* Energy */
8913 { "spiderman", "spider", "spiderhood", "Spi",
8915 PM_SPIDERMAN
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
8916 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
8917 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
8919 /* Str Int Wis Dex Con Cha */
8920 { 3, 3, 3, 3, 3, 3 },
8921 { STR19(25), 125, 125, 125, 125, 125 },
8922 /* new limit values for the six attributes by Amy */
8923 { STR18(100), 18, 18, 20, 16, 19 },
8924 /* Init Lower Higher */
8925 { 4, 0, 0, 2, 3, 0 }, /* Hit points */
8926 { 1, 0, 1, 0, 1, 0 } /* Energy */
8928 { "spirit", "spiritual", "spirithood", "Esp", /* "spi" = spider, so I'm abbreviating "esprit" instead --Amy */
8930 PM_SPIRIT
, NON_PM
, NON_PM
, NON_PM
,
8931 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
8932 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
8933 MH_HUMAN
, 0, MH_GNOME
|MH_ORC
,
8934 /* Str Int Wis Dex Con Cha */
8935 { 3, 3, 3, 3, 3, 3 },
8936 { STR19(25), 125, 125, 125, 125, 125 },
8937 /* new limit values for the six attributes by Amy */
8938 { STR18(30), 18, 18, 18, 12, 16 },
8939 /* Init Lower Higher */
8940 { 1, 0, 0, 1, 1, 0 }, /* Hit points */
8941 { 1, 0, 1, 0, 1, 0 } /* Energy */
8943 { "spriggan", "spriggan", "sprigganship", "Spr",
8945 PM_SPRIGGAN
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
8946 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
8947 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
8949 /* Str Int Wis Dex Con Cha */
8950 { 3, 3, 3, 3, 3, 3 },
8951 { STR19(25), 125, 125, 125, 125, 125 },
8952 /* new limit values for the six attributes by Amy */
8953 { 18, 18, 20, 20, 12, 19 },
8954 /* Init Lower Higher */
8955 { 0, 0, 0, 0, 0, 0 }, /* Hit points */
8956 { 4, 0, 5, 0, 5, 0 } /* Energy */
8958 { "stabilisator", "stabilisator", "stability", "Stb",
8960 PM_STABILISATOR
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
8961 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
8962 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
8963 MH_HUMAN
, 0, MH_GNOME
|MH_ORC
,
8964 /* Str Int Wis Dex Con Cha */
8965 { 3, 3, 3, 3, 3, 3 },
8966 { STR19(25), 125, 125, 125, 125, 125 },
8967 /* new limit values for the six attributes by Amy */
8968 { STR18(100), 18, 18, 18, 18, 18 },
8969 /* Init Lower Higher */
8970 { 2, 0, 0, 2, 1, 0 }, /* Hit points */
8971 { 1, 0, 2, 0, 2, 0 } /* Energy */
8973 { "stairseeker", "stairseeker", "search for the stairs", "Sta",
8975 PM_STAIRSEEKER
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
8976 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
8977 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
8978 MH_HUMAN
, 0, MH_GNOME
|MH_ORC
,
8979 /* Str Int Wis Dex Con Cha */
8980 { 3, 3, 3, 3, 3, 3 },
8981 { STR19(25), 125, 125, 125, 125, 125 },
8982 /* new limit values for the six attributes by Amy */
8983 { STR18(100), 18, 18, 18, 18, 18 },
8984 /* Init Lower Higher */
8985 { 2, 0, 0, 2, 1, 0 }, /* Hit points */
8986 { 1, 0, 2, 0, 2, 0 } /* Energy */
8988 { "startscummer", "startscummer", "start scumming", "Ssc",
8990 PM_STARTSCUMMER
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
8991 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
8992 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
8993 MH_HUMAN
, 0, MH_GNOME
|MH_ORC
,
8994 /* Str Int Wis Dex Con Cha */
8995 { 3, 3, 3, 3, 3, 3 },
8996 { STR19(25), 125, 125, 125, 125, 125 },
8997 /* new limit values for the six attributes by Amy */
8998 { 10, 10, 10, 10, 10, 10 },
8999 /* Init Lower Higher */
9000 { 0, 0, 0, 0, 0, 0 }, /* Hit points */
9001 { 0, 0, 0, 0, 0, 0 } /* Energy */
9003 { "sticker", "sticky", "stickiness", "Sti",
9005 PM_STICKER
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
9006 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
9007 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
9008 MH_HUMAN
, 0, MH_GNOME
|MH_ORC
,
9009 /* Str Int Wis Dex Con Cha */
9010 { 3, 3, 3, 3, 3, 3 },
9011 { STR19(25), 125, 125, 125, 125, 125 },
9012 /* new limit values for the six attributes by Amy */
9013 { STR18(100), 18, 19, 19, 18, 18 },
9014 /* Init Lower Higher */
9015 { 2, 0, 0, 2, 1, 0 }, /* Hit points */
9016 { 1, 0, 2, 0, 2, 0 } /* Energy */
9018 { "stunned-like-a-fish", "stunned-like-a-fish", "stunning paralysis", "Stu",
9020 PM_STUNNED_LIKE_A_FISH
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
9021 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
9022 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
9023 MH_HUMAN
, 0, MH_GNOME
|MH_ORC
,
9024 /* Str Int Wis Dex Con Cha */
9025 { 3, 3, 3, 3, 3, 3 },
9026 { STR19(25), 125, 125, 125, 125, 125 },
9027 /* new limit values for the six attributes by Amy */
9028 { STR18(100), 18, 18, 18, 18, 18 },
9029 /* Init Lower Higher */
9030 { 2, 0, 0, 2, 1, 0 }, /* Hit points */
9031 { 1, 0, 2, 0, 2, 0 } /* Energy */
9033 { "sustainer", "sustainer", "sustainability", "Sus",
9035 PM_SUSTAINER
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
9036 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
9037 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
9038 MH_HUMAN
, 0, MH_GNOME
|MH_ORC
,
9039 /* Str Int Wis Dex Con Cha */
9040 { 3, 3, 3, 3, 3, 3 },
9041 { STR19(25), 125, 125, 125, 125, 125 },
9042 /* new limit values for the six attributes by Amy */
9043 { STR19(25), 25, 25, 25, 25, 25 },
9044 /* Init Lower Higher */
9045 { 2, 0, 0, 2, 1, 0 }, /* Hit points */
9046 { 1, 0, 2, 0, 2, 0 } /* Energy */
9048 { "suxxor", "suxxor", "suxxorhood", "Sux",
9050 PM_SUXXOR
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
9051 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
9052 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
9053 MH_HUMAN
, 0, MH_GNOME
|MH_ORC
,
9054 /* Str Int Wis Dex Con Cha */
9055 { 3, 3, 3, 3, 3, 3 },
9056 { STR19(25), 125, 125, 125, 125, 125 },
9057 /* new limit values for the six attributes by Amy */
9058 { STR18(100), 18, 18, 18, 18, 18 },
9059 /* Init Lower Higher */
9060 { 6, 0, 0, 6, 6, 0 }, /* Hit points */
9061 { 6, 0, 6, 0, 6, 0 } /* Energy */
9063 { "swikni", "swikni", "swikzerni", "Swi",
9065 PM_SWIKNI
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
9066 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
9067 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
9068 MH_HUMAN
, 0, MH_GNOME
|MH_ORC
,
9069 /* Str Int Wis Dex Con Cha */
9070 { 3, 3, 3, 3, 3, 3 },
9071 { STR19(25), 125, 125, 125, 125, 125 },
9072 /* new limit values for the six attributes by Amy */
9073 { STR19(20), 19, 19, 24, 20, 17 },
9074 /* Init Lower Higher */
9075 { 2, 0, 0, 3, 2, 0 }, /* Hit points */
9076 { 2, 0, 1, 0, 1, 0 } /* Energy */
9078 { "sylph", "sylph", "sylphood", "Syl",
9080 PM_SYLPH
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
9081 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
9082 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
9084 /* Str Int Wis Dex Con Cha */
9085 { 3, 3, 3, 3, 3, 3},
9086 { STR19(25), 125, 125, 125, 125, 125 },
9087 /* new limit values for the six attributes by Amy */
9088 { STR18(100), 20, 20, 20, 18, 24 },
9089 /* Init Lower Higher */
9090 {2, 0, 1, 1, 1, 1}, /* Hit points */
9091 {2, 0, 3, 0, 2, 2} /* Energy */
9093 { "tayiin", "tayiin", "tayiind", "Tay",
9095 PM_TAYIIN
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
9096 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
9097 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
9098 MH_HUMAN
, 0, MH_GNOME
|MH_ORC
,
9099 /* Str Int Wis Dex Con Cha */
9100 { 3, 3, 3, 3, 3, 3 },
9101 { STR19(25), 125, 125, 125, 125, 125 },
9102 /* new limit values for the six attributes by Amy */
9103 { STR18(100), 18, 18, 19, 10, 19 },
9104 /* Init Lower Higher */
9105 { 1, 0, 0, 1, 0, 0 }, /* Hit points */
9106 { 1, 0, 2, 0, 2, 0 } /* Energy */
9108 { "techless", "techless", "techlessness", "Tec",
9110 PM_TECHLESS
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
9111 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
9112 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
9113 MH_HUMAN
, 0, MH_GNOME
|MH_ORC
,
9114 /* Str Int Wis Dex Con Cha */
9115 { 3, 3, 3, 3, 3, 3 },
9116 { STR19(25), 125, 125, 125, 125, 125 },
9117 /* new limit values for the six attributes by Amy */
9118 { STR18(100), 18, 18, 18, 18, 18 },
9119 /* Init Lower Higher */
9120 { 2, 0, 0, 2, 1, 0 }, /* Hit points */
9121 { 1, 0, 2, 0, 2, 0 } /* Energy */
9123 { "thrall", "thrallish", "thrall fort", "Thr",
9125 PM_THRALL
, NON_PM
, PM_DWARF_MUMMY
, PM_DWARF_ZOMBIE
,
9126 MH_DWARF
| ROLE_MALE
|ROLE_FEMALE
| ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
9127 MH_DWARF
, MH_DWARF
, MH_HUMAN
,
9128 /* Str Int Wis Dex Con Cha */
9129 { 3, 3, 3, 3, 3, 3 },
9130 { STR19(25), 125, 125, 125, 125, 125 },
9131 /* new limit values for the six attributes by Amy */
9132 { 18, 17, 17, 19, 16, 12 },
9133 /* Init Lower Higher */
9134 { 1, 0, 0, 1, 0, 0 }, /* Hit points */
9135 { 1, 0, 2, 0, 3, 0 } /* Energy */
9137 { "thunderlord", "thunderlord", "pern", "Thu",
9139 PM_THUNDERLORD
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
9140 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
9141 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
9142 MH_HUMAN
, 0, MH_GNOME
|MH_ORC
,
9143 /* Str Int Wis Dex Con Cha */
9144 { 3, 3, 3, 3, 3, 3 },
9145 { STR19(25), 125, 125, 125, 125, 125 },
9146 /* new limit values for the six attributes by Amy */
9147 { STR18(100), 19, 19, 18, 20, 18 },
9148 /* Init Lower Higher */
9149 { 2, 0, 0, 2, 3, 0 }, /* Hit points */
9150 { 2, 0, 2, 0, 2, 0 } /* Energy */
9152 { "tonberry", "tonberry", "poschengband's mascot", "Ton",
9154 PM_TONBERRY
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
9155 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
9156 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
9157 MH_HUMAN
, 0, MH_GNOME
|MH_ORC
,
9158 /* Str Int Wis Dex Con Cha */
9159 { 3, 3, 3, 3, 3, 3 },
9160 { STR19(25), 125, 125, 125, 125, 125 },
9161 /* new limit values for the six attributes by Amy */
9162 { STR19(23), 18, 16, 16, 16, 16 },
9163 /* Init Lower Higher */
9164 { 1, 0, 0, 2, 2, 0 }, /* Hit points */
9165 { 2, 0, 2, 0, 2, 0 } /* Energy */
9167 { "trainer", "trainer", "training", "Trn",
9169 PM_TRAINER
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
9170 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
9171 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
9172 MH_HUMAN
, 0, MH_GNOME
|MH_ORC
,
9173 /* Str Int Wis Dex Con Cha */
9174 { 3, 3, 3, 3, 3, 3 },
9175 { STR19(25), 125, 125, 125, 125, 125 },
9176 /* new limit values for the six attributes by Amy */
9177 { STR19(19), 18, 18, 18, 19, 18 },
9178 /* Init Lower Higher */
9179 { 2, 0, 0, 2, 1, 0 }, /* Hit points */
9180 { 1, 0, 2, 0, 2, 0 } /* Energy */
9182 { "transformer", "transformer", "transferhood", "Tra",
9184 PM_TRANSFORMER
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
9185 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
| ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
9186 MH_HUMAN
, 0, MH_ELF
|MH_GNOME
|MH_HOBBIT
|MH_DWARF
|MH_ORC
,
9187 /* Str Int Wis Dex Con Cha */
9188 { 3, 3, 3, 3, 3, 3 },
9189 { STR19(25), 125, 125, 125, 125, 125 },
9190 /* new limit values for the six attributes by Amy */
9191 { STR18(100), 18, 18, 20, 17, 18 },
9192 /* Init Lower Higher */
9193 { 2, 0, 0, 2, 2, 0 }, /* Hit points */
9194 { 4, 0, 4, 0, 4, 0 } /* Energy */
9196 { "trapper", "trapper", "trapperhood", "Trp",
9198 PM_WEAPON_TRAPPER
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
9199 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
9200 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
9201 MH_HUMAN
, 0, MH_GNOME
|MH_ORC
,
9202 /* Str Int Wis Dex Con Cha */
9203 { 3, 3, 3, 3, 3, 3 },
9204 { STR19(25), 125, 125, 125, 125, 125 },
9205 /* new limit values for the six attributes by Amy */
9206 { STR18(100), 18, 18, 22, 18, 18 },
9207 /* Init Lower Higher */
9208 { 8, 0, 0, 8, 10, 0 }, /* Hit points */
9209 { 10, 0, 8, 0, 8, 0 } /* Energy */
9211 { "troll", "troll", "trollhood", "Tro",
9213 PM_TROLLOR
, NON_PM
, PM_TROLL_MUMMY
, PM_TROLL_ZOMBIE
,
9214 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
9215 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
9217 /* Str Int Wis Dex Con Cha */
9218 { 3, 3, 3, 3, 3, 3 },
9219 { STR19(25), 125, 125, 125, 125, 125 },
9220 /* new limit values for the six attributes by Amy */
9221 { STR19(22), 12, 12, 15, 24, 8 },
9222 /* Init Lower Higher */
9223 { 0, 0, 0, 0, 0, 0 }, /* Hit points */
9224 { 0, 0, 0, 0, 0, 0 } /* Energy */
9226 { "tumblrer", "tumblrer", "tumblr ownz joo", "Tum", /* idea by kerio */
9228 PM_TUMBLRER
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
9229 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
9230 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
9231 MH_HUMAN
, 0, MH_GNOME
|MH_ORC
,
9232 /* Str Int Wis Dex Con Cha */
9233 { 3, 3, 3, 3, 3, 3 },
9234 { STR19(25), 125, 125, 125, 125, 125 },
9235 /* new limit values for the six attributes by Amy */
9236 { STR18(100), 18, 18, 18, 18, 18 },
9237 /* Init Lower Higher */
9238 { 2, 0, 0, 2, 1, 0 }, /* Hit points */
9239 { 1, 0, 2, 0, 2, 0 } /* Energy */
9241 { "turmene", "turmene", "turmeney", "Tme",
9243 PM_TURMENE
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
9244 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
9245 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
9246 MH_HUMAN
, 0, MH_GNOME
|MH_ORC
,
9247 /* Str Int Wis Dex Con Cha */
9248 { 3, 3, 3, 3, 3, 3 },
9249 { STR19(25), 125, 125, 125, 125, 125 },
9250 /* new limit values for the six attributes by Amy */
9251 { STR18(100), 18, 17, 18, 18, 18 },
9252 /* Init Lower Higher */
9253 { 2, 0, 0, 2, 1, 0 }, /* Hit points */
9254 { 1, 0, 2, 0, 2, 0 } /* Energy */
9256 { "turtle", "turtle", "turtleship", "Tur", /* Khor wants to be a ninja turtle, now he can. :) --Amy */
9258 PM_TURTLE
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
9259 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
9260 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
9262 /* Str Int Wis Dex Con Cha */
9263 { 3, 3, 3, 3, 3, 3 },
9264 { STR19(25), 125, 125, 125, 125, 125 },
9265 /* new limit values for the six attributes by Amy */
9266 { STR18(100), 18, 18, 18, 25, 18 },
9267 /* Init Lower Higher */
9268 { 3, 0, 0, 4, 5, 0 }, /* Hit points */
9269 { 2, 0, 3, 0, 4, 0 } /* Energy */
9271 { "umber hulk", "umber", "uber empire", "Umb",
9273 PM_PLAYER_HULK
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
9274 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
9275 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
9276 MH_HUMAN
, 0, MH_GNOME
|MH_ORC
,
9277 /* Str Int Wis Dex Con Cha */
9278 { 3, 3, 3, 3, 3, 3 },
9279 { STR19(25), 125, 125, 125, 125, 125 },
9280 /* new limit values for the six attributes by Amy */
9281 { STR18(100), 18, 18, 18, 20, 16 },
9282 /* Init Lower Higher */
9283 { 3, 0, 0, 3, 2, 0 }, /* Hit points */
9284 { 1, 0, 2, 0, 2, 0 } /* Energy */
9286 { "unalignment thing", "unaligned", "unalignmenthood", "Una",
9288 PM_UNALIGNMENT_THING
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
9289 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
| ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
9290 MH_HUMAN
, 0, MH_ELF
|MH_GNOME
|MH_HOBBIT
|MH_DWARF
|MH_ORC
,
9291 /* Str Int Wis Dex Con Cha */
9292 { 3, 3, 3, 3, 3, 3 },
9293 { STR19(25), 125, 125, 125, 125, 125 },
9294 /* new limit values for the six attributes by Amy */
9295 { STR18(100), 20, 20, 18, 20, 14 },
9296 /* Init Lower Higher */
9297 { 4, 0, 0, 4, 4, 0 }, /* Hit points */
9298 { 7, 0, 7, 0, 7, 0 } /* Energy */
9300 { "unbalancor", "unbalancor", "unbalanced game", "Unb",
9302 PM_UNBALANCOR
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
9303 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
9304 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
9305 MH_HUMAN
, 0, MH_GNOME
|MH_ORC
,
9306 /* Str Int Wis Dex Con Cha */
9307 { 3, 3, 3, 3, 3, 3 },
9308 { STR19(25), 125, 125, 125, 125, 125 },
9309 /* new limit values for the six attributes by Amy */
9310 { STR18(100), 18, 18, 18, 18, 18 },
9311 /* Init Lower Higher */
9312 { 2, 0, 0, 2, 1, 0 }, /* Hit points */
9313 { 1, 0, 2, 0, 2, 0 } /* Energy */
9315 { "undefined", "undefined", "undefinement", "Und",
9317 PM_UNDEFINED_CREATURE
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
9318 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
9319 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
9320 MH_HUMAN
, 0, MH_GNOME
|MH_ORC
,
9321 /* Str Int Wis Dex Con Cha */
9322 { 3, 3, 3, 3, 3, 3 },
9323 { STR19(25), 125, 125, 125, 125, 125 },
9324 /* new limit values for the six attributes by Amy */
9325 { STR18(100), 18, 18, 18, 18, 18 },
9326 /* Init Lower Higher */
9327 { 1, 0, 0, 1, 1, 0 }, /* Hit points */
9328 { 1, 0, 1, 0, 1, 0 } /* Energy */
9330 { "ungenomold", "ungenomoldic", "ungenomoldhood", "Ung",
9332 PM_UNGENOMOLD
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
9333 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
| ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
9334 MH_HUMAN
, 0, MH_ELF
|MH_GNOME
|MH_HOBBIT
|MH_DWARF
|MH_ORC
,
9335 /* Str Int Wis Dex Con Cha */
9336 { 3, 3, 3, 3, 3, 3 },
9337 { STR19(25), 125, 125, 125, 125, 125 },
9338 /* new limit values for the six attributes by Amy */
9339 { STR19(20), 18, 18, 18, 20, 13 },
9340 /* Init Lower Higher */
9341 { 4, 0, 0, 4, 4, 0 }, /* Hit points */
9342 { 7, 0, 7, 0, 7, 0 } /* Energy */
9344 { "unicorn", "unicorn", "unihorning", "Uni",
9346 PM_PLAYER_UNICORN
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
9347 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
9348 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
9349 MH_HUMAN
, 0, MH_GNOME
|MH_ORC
,
9350 /* Str Int Wis Dex Con Cha */
9351 { 3, 3, 3, 3, 3, 3 },
9352 { STR19(25), 125, 125, 125, 125, 125 },
9353 /* new limit values for the six attributes by Amy */
9354 { STR18(50), 16, 16, 20, 15, 24 },
9355 /* Init Lower Higher */
9356 { 1, 0, 0, 1, 1, 0 }, /* Hit points */
9357 { 1, 0, 1, 0, 1, 0 } /* Energy */
9359 { "unmagic", "unmagic", "magic void", "Unm",
9361 PM_UNMAGIC_FISH
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
9362 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
9363 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
9364 MH_HUMAN
, 0, MH_GNOME
|MH_ORC
,
9365 /* Str Int Wis Dex Con Cha */
9366 { 3, 3, 3, 3, 3, 3 },
9367 { STR19(25), 125, 125, 125, 125, 125 },
9368 /* new limit values for the six attributes by Amy */
9369 { STR18(100), 16, 16, 18, 18, 18 },
9370 /* Init Lower Higher */
9371 { 1, 0, 0, 1, 1, 0 }, /* Hit points */
9372 { 1, 0, 1, 0, 1, 0 } /* Energy */
9374 { "urian", "urian", "uria", "Uri",
9376 PM_URIAN
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
9377 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
9378 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
9379 MH_HUMAN
, 0, MH_GNOME
|MH_ORC
,
9380 /* Str Int Wis Dex Con Cha */
9381 { 3, 3, 3, 3, 3, 3 },
9382 { STR19(25), 125, 125, 125, 125, 125 },
9383 /* new limit values for the six attributes by Amy */
9384 { STR18(100), 18, 18, 18, 18, 18 },
9385 /* Init Lower Higher */
9386 { 2, 0, 0, 2, 1, 0 }, /* Hit points */
9387 { 1, 0, 2, 0, 2, 0 } /* Energy */
9389 { "urgoth", "urgoth", "demigoth heaven", "Urg",
9391 PM_URGOTH
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
9392 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
9393 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
9394 MH_HUMAN
, 0, MH_GNOME
|MH_HUMAN
,
9395 /* Str Int Wis Dex Con Cha */
9396 { 3, 3, 3, 3, 3, 3 },
9397 { STR19(25), 125, 125, 125, 125, 125 },
9398 /* new limit values for the six attributes by Amy */
9399 { STR19(25), 8, 8, 16, 25, 6 },
9400 /* Init Lower Higher */
9401 { 5, 0, 0, 8, 8, 0 }, /* Hit points */
9402 { 0, 0, 0, 0, 0, 0 } /* Energy */
9404 { "vamgoyle", "vamgoyle", "vamgoylehood", "Vgo",
9406 PM_VAMGOYLE
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
9407 MH_VAMPIRE
| ROLE_MALE
|ROLE_FEMALE
| ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
9408 MH_VAMPIRE
, 0, MH_ELF
|MH_GNOME
|MH_HOBBIT
|MH_DWARF
|MH_ORC
,
9409 /* Str Int Wis Dex Con Cha */
9410 { 3, 3, 3, 3, 3, 3 },
9411 { STR19(25), 125, 125, 125, 125, 125 },
9412 /* new limit values for the six attributes by Amy */
9413 { STR18(100), 18, 18, 18, 18, 16 },
9414 /* Init Lower Higher */
9415 { 3, 0, 0, 2, 2, 0 }, /* Hit points */
9416 { 3, 0, 3, 0, 3, 0 } /* Energy */
9418 { "vampire", "vampiric", "vampirehood", "Vam",
9420 PM_VAMPIRE
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
9421 MH_VAMPIRE
| ROLE_MALE
|ROLE_FEMALE
| ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
9422 MH_VAMPIRE
, 0, MH_ELF
|MH_GNOME
|MH_HOBBIT
|MH_DWARF
|MH_ORC
,
9423 /* Str Int Wis Dex Con Cha */
9424 { 3, 3, 3, 3, 3, 3 },
9425 { STR19(25), 125, 125, 125, 125, 125 },
9426 /* new limit values for the six attributes by Amy */
9427 { STR19(19), 18, 18, 20, 20, 20 },
9428 /* Init Lower Higher */
9429 { 3, 0, 0, 3, 2, 0 }, /* Hit points */
9430 { 5, 0, 4, 0, 4, 0 } /* Energy */
9432 { "vanillaoid", "vanillaoid", "vanilla-like", "Van",
9434 PM_VANILLAOID
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
9435 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
9436 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
9437 MH_HUMAN
, 0, MH_GNOME
|MH_ORC
,
9438 /* Str Int Wis Dex Con Cha */
9439 { 3, 3, 3, 3, 3, 3 },
9440 { STR19(25), 125, 125, 125, 125, 125 },
9441 /* new limit values for the six attributes by Amy */
9442 { STR18(100), 18, 18, 18, 18, 18 },
9443 /* Init Lower Higher */
9444 { 2, 0, 0, 2, 1, 0 }, /* Hit points */
9445 { 1, 0, 2, 0, 2, 0 } /* Energy */
9447 { "veela", "veela", "veelahood", "Vee",
9449 PM_VEELA
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
9450 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
9451 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
9452 MH_HUMAN
, 0, MH_GNOME
|MH_ORC
,
9453 /* Str Int Wis Dex Con Cha */
9454 { 3, 3, 3, 3, 3, 3 },
9455 { STR19(25), 125, 125, 125, 125, 125 },
9456 /* new limit values for the six attributes by Amy */
9457 { STR18(100), 19, 16, 19, 18, 24 },
9458 /* Init Lower Higher */
9459 { 1, 0, 0, 1, 1, 0 }, /* Hit points */
9460 { 1, 0, 1, 0, 1, 0 } /* Energy */
9462 { "venture capitalist", "venturean", "capitalism", "Ven",
9464 PM_VENTURE_CAPITALIST
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
9465 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
9466 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
9467 MH_HUMAN
, 0, MH_GNOME
|MH_ORC
|MH_ELF
|MH_HOBBIT
|MH_DWARF
|MH_HUMAN
,
9468 /* Str Int Wis Dex Con Cha */
9469 { 3, 3, 3, 3, 3, 3 },
9470 { STR19(25), 125, 125, 125, 125, 125 },
9471 /* new limit values for the six attributes by Amy */
9472 { STR18(100), 18, 18, 18, 18, 25 },
9473 /* Init Lower Higher */
9474 { 2, 0, 0, 2, 1, 0 }, /* Hit points */
9475 { 1, 0, 2, 0, 2, 0 } /* Energy */
9477 { "vietis", "vietis", "vietem", "Vie",
9479 PM_VIETIS
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
9480 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
9481 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
9482 MH_HUMAN
, 0, MH_GNOME
|MH_ORC
,
9483 /* Str Int Wis Dex Con Cha */
9484 { 3, 3, 3, 3, 3, 3 },
9485 { STR19(25), 125, 125, 125, 125, 125 },
9486 /* new limit values for the six attributes by Amy */
9487 { STR18(100), 18, 18, 18, 18, 18 },
9488 /* Init Lower Higher */
9489 { 3, 0, 0, 3, 1, 0 }, /* Hit points */
9490 { 1, 0, 2, 0, 3, 0 } /* Energy */
9492 { "viking", "viking", "greenland", "Vik",
9494 PM_VIKING
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
9495 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
9496 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
9497 MH_HUMAN
, 0, MH_GNOME
|MH_ORC
,
9498 /* Str Int Wis Dex Con Cha */
9499 { 3, 3, 3, 3, 3, 3 },
9500 { STR19(25), 125, 125, 125, 125, 125 },
9501 /* new limit values for the six attributes by Amy */
9502 { STR19(20), 17, 17, 18, 20, 16 },
9503 /* Init Lower Higher */
9504 { 3, 0, 0, 3, 3, 0 }, /* Hit points */
9505 { 1, 0, 1, 0, 1, 0 } /* Energy */
9507 { "vortex", "vortex", "vortexhood", "Vor",
9509 PM_VORTEX
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
9510 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
9511 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
9512 MH_HUMAN
, 0, MH_GNOME
|MH_ORC
,
9513 /* Str Int Wis Dex Con Cha */
9514 { 3, 3, 3, 3, 3, 3 },
9515 { STR19(25), 125, 125, 125, 125, 125 },
9516 /* new limit values for the six attributes by Amy */
9517 { STR18(100), 18, 18, 19, 19, 17 },
9518 /* Init Lower Higher */
9519 { 4, 0, 0, 3, 4, 0 }, /* Hit points */
9520 { 4, 0, 3, 0, 4, 0 } /* Energy */
9522 { "warper", "warping", "warpzone", "War",
9524 PM_WARPER
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
9525 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
| ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
9526 MH_HUMAN
, 0, MH_ELF
|MH_GNOME
|MH_HOBBIT
|MH_DWARF
|MH_ORC
,
9527 /* Str Int Wis Dex Con Cha */
9528 { 3, 3, 3, 3, 3, 3 },
9529 { STR19(25), 125, 125, 125, 125, 125 },
9530 /* new limit values for the six attributes by Amy */
9531 { STR18(100), 18, 18, 18, 18, 18 },
9532 /* Init Lower Higher */
9533 { 2, 0, 0, 2, 2, 0 }, /* Hit points */
9534 { 4, 0, 4, 0, 4, 0 } /* Energy */
9536 { "wind inhabitant", "wind", "windy well", "Win",
9538 PM_WIND_INHABITANT
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
9539 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
9540 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
9541 MH_HUMAN
, 0, MH_GNOME
|MH_ORC
,
9542 /* Str Int Wis Dex Con Cha */
9543 { 3, 3, 3, 3, 3, 3 },
9544 { STR19(25), 125, 125, 125, 125, 125 },
9545 /* new limit values for the six attributes by Amy */
9546 { STR18(100), 18, 18, 18, 18, 18 },
9547 /* Init Lower Higher */
9548 { 2, 0, 0, 2, 1, 0 }, /* Hit points */
9549 { 1, 0, 2, 0, 2, 0 } /* Energy */
9551 { "wisp", "wisp", "wisp kingdom", "Wis",
9553 PM_WISP
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
9554 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
9555 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
9556 MH_HUMAN
, 0, MH_GNOME
|MH_ORC
,
9557 /* Str Int Wis Dex Con Cha */
9558 { 3, 3, 3, 3, 3, 3 },
9559 { STR19(25), 125, 125, 125, 125, 125 },
9560 /* new limit values for the six attributes by Amy */
9561 { STR18(50), 20, 20, 18, 16, 15 },
9562 /* Init Lower Higher */
9563 { 0, 0, 0, 0, 0, 0 }, /* Hit points */
9564 { 8, 0, 8, 0, 8, 0 } /* Energy */
9566 { "wookie", "wookie", "bedside carpet station", "Woo",
9568 PM_WOOKIE
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
9569 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
9570 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
9571 MH_HUMAN
, 0, MH_GNOME
|MH_ORC
,
9572 /* Str Int Wis Dex Con Cha */
9573 { 3, 3, 3, 3, 3, 3 },
9574 { STR19(25), 125, 125, 125, 125, 125 },
9575 /* new limit values for the six attributes by Amy */
9576 { 16, 9, 9, 12, 15, 5 },
9577 /* Init Lower Higher */
9578 { 1, 0, 0, 0, 1, 0 }, /* Hit points */
9579 { 1, 0, 0, 0, 1, 0 } /* Energy */
9581 { "worm that walks", "worm", "wormhood", "Wor",
9583 PM_WORM_THAT_WALKS
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
9584 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
| ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
9585 MH_HUMAN
, 0, MH_ELF
|MH_GNOME
|MH_HOBBIT
|MH_DWARF
|MH_ORC
,
9586 /* Str Int Wis Dex Con Cha */
9587 { 3, 3, 3, 3, 3, 3 },
9588 { STR19(25), 125, 125, 125, 125, 125 },
9589 /* new limit values for the six attributes by Amy */
9590 { STR19(20), 18, 18, 18, 18, 12 },
9591 /* Init Lower Higher */
9592 { 2, 0, 0, 2, 2, 0 }, /* Hit points */
9593 { 4, 0, 4, 0, 4, 0 } /* Energy */
9595 { "wraith", "wraith", "wraithhood", "Wra",
9597 PM_HUMAN_WRAITH
, NON_PM
, NON_PM
, NON_PM
,
9598 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
9599 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
9600 MH_HUMAN
, 0, MH_GNOME
|MH_ORC
,
9601 /* Str Int Wis Dex Con Cha */
9602 { 3, 3, 3, 3, 3, 3 },
9603 { STR19(25), 125, 125, 125, 125, 125 },
9604 /* new limit values for the six attributes by Amy */
9605 { STR19(20), 20, 20, 18, 20, 18 },
9606 /* Init Lower Higher */
9607 { 1, 0, 0, 1, 1, 0 }, /* Hit points */
9608 { 1, 0, 1, 0, 1, 0 } /* Energy */
9610 { "wylvan", "wylvan", "wylvan forest", "Wyl",
9612 PM_WYLVAN
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
9613 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
9614 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
9615 MH_HUMAN
, 0, MH_GNOME
|MH_HUMAN
,
9616 /* Str Int Wis Dex Con Cha */
9617 { 3, 3, 3, 3, 3, 3 },
9618 { STR19(25), 125, 125, 125, 125, 125 },
9619 /* new limit values for the six attributes by Amy */
9620 { STR18(40), 20, 20, 25, 16, 17 },
9621 /* Init Lower Higher */
9622 { 1, 0, 0, 1, 0, 0 }, /* Hit points */
9623 { 3, 0, 4, 0, 4, 0 } /* Energy */
9625 { "xorn", "xorn", "xorndom", "Xor",
9627 PM_WEAPON_XORN
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
9628 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
9629 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
9630 MH_HUMAN
, 0, MH_GNOME
|MH_ORC
,
9631 /* Str Int Wis Dex Con Cha */
9632 { 3, 3, 3, 3, 3, 3 },
9633 { STR19(25), 125, 125, 125, 125, 125 },
9634 /* new limit values for the six attributes by Amy */
9635 { STR19(19), 17, 17, 17, 19, 18 },
9636 /* Init Lower Higher */
9637 { 2, 0, 0, 2, 2, 0 }, /* Hit points */
9638 { 2, 0, 2, 0, 2, 0 } /* Energy */
9640 { "yeek", "yeek", "yeekdom", "Yee",
9642 PM_YEEK
, NON_PM
, PM_ORC_MUMMY
, PM_ORC_ZOMBIE
,
9643 MH_ORC
| ROLE_MALE
|ROLE_FEMALE
| ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
9644 MH_ORC
, 0, MH_HUMAN
|MH_ELF
|MH_DWARF
|MH_HOBBIT
,
9645 /* Str Int Wis Dex Con Cha */
9646 { 3, 3, 3, 3, 3, 3 },
9647 { STR19(25), 125, 125, 125, 125, 125 },
9648 /* new limit values for the six attributes by Amy */
9649 { 16, 16, 16, 16, 16, 14 },
9650 /* Init Lower Higher */
9651 { 1, 0, 0, 1, 0, 0 }, /* Hit points */
9652 { 1, 0, 1, 0, 1, 0 } /* Energy */
9654 { "yokuda", "yokuda", "yokudahood", "Yok",
9656 PM_YOKUDA
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
9657 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
9658 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
9660 /* Str Int Wis Dex Con Cha */
9661 { 3, 3, 3, 3, 3, 3 },
9662 { STR19(25), 125, 125, 125, 125, 125 },
9663 /* new limit values for the six attributes by Amy */
9664 { STR18(100), 15, 14, 18, 20, 18 },
9665 /* Init Lower Higher */
9666 { 8, 0, 0, 4, 3, 0 }, /* Hit points */
9667 { 0, 0, 0, 0, 0, 0 } /* Energy */
9669 { "yugger", "yugger", "yugavia", "Yug",
9671 PM_YUGGER
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
9672 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
9673 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
9674 MH_HUMAN
, 0, MH_GNOME
|MH_ORC
,
9675 /* Str Int Wis Dex Con Cha */
9676 { 3, 3, 3, 3, 3, 3 },
9677 { 18, 18, 18, 18, 18, 18 }, /* hard cap! */
9678 /* new limit values for the six attributes by Amy */
9679 { STR18(100), 18, 18, 18, 18, 18 },
9680 /* Init Lower Higher */
9681 { 2, 0, 0, 2, 1, 0 }, /* Hit points */
9682 { 1, 0, 2, 0, 2, 0 } /* Energy */
9684 { "yuki-onna", "yuki-onnic", "feyhood", "Yuk",
9686 PM_YUKI_PLAYA
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
9687 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
9688 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
9689 MH_HUMAN
, 0, MH_ELF
,
9690 /* Str Int Wis Dex Con Cha */
9691 { 3, 3, 3, 3, 3, 3 },
9692 { STR19(25), 125, 125, 125, 125, 125 },
9693 /* new limit values for the six attributes by Amy */
9694 { 16, 18, 18, 20, 14, 20 },
9695 /* Init Lower Higher */
9696 { 0, 0, 0, 0, 0, 0 }, /* Hit points */
9697 { 2, 0, 3, 0, 3, 0 } /* Energy */
9699 { "zaur", "zaur", "zauren swamp", "Zau",
9701 PM_ZAUR
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
9702 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
9703 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
9704 MH_HUMAN
, 0, MH_GNOME
|MH_HUMAN
,
9705 /* Str Int Wis Dex Con Cha */
9706 { 3, 3, 3, 3, 3, 3 },
9707 { STR19(25), 125, 125, 125, 125, 125 },
9708 /* new limit values for the six attributes by Amy */
9709 { STR18(100), 15, 16, 18, 19, 16 },
9710 /* Init Lower Higher */
9711 { 3, 0, 0, 2, 3, 0 }, /* Hit points */
9712 { 1, 0, 1, 0, 1, 0 } /* Energy */
9714 { "zruty", "zruty", "save the zruties", "Zru",
9716 PM_PLAYER_ZRUTY
, NON_PM
, PM_HUMAN_MUMMY
, PM_HUMAN_ZOMBIE
,
9717 MH_HUMAN
| ROLE_MALE
|ROLE_FEMALE
|
9718 ROLE_LAWFUL
|ROLE_NEUTRAL
|ROLE_CHAOTIC
,
9719 MH_HUMAN
, 0, MH_GNOME
|MH_ORC
|MH_ELF
,
9720 /* Str Int Wis Dex Con Cha */
9721 { 3, 3, 3, 3, 3, 3 },
9722 { STR19(25), 125, 125, 125, 125, 125 },
9723 /* new limit values for the six attributes by Amy */
9724 { STR19(22), 12, 15, 17, 20, 14 },
9725 /* Init Lower Higher */
9726 { 4, 0, 0, 6, 5, 0 }, /* Hit points */
9727 { 1, 0, 1, 0, 1, 0 } /* Energy */
9729 /* Array terminator */
9733 /* The player's race, created at runtime from initial
9734 * choices. This may be munged in role_init().
9737 { "something", "undefined", "something", "Xxx",
9739 NON_PM
, NON_PM
, NON_PM
, NON_PM
,
9741 /* Str Int Wis Dex Con Cha */
9742 { 3, 3, 3, 3, 3, 3 },
9743 { STR18(100), 18, 18, 18, 18, 18 },
9744 /* new limit values for the six attributes by Amy */
9745 { STR19(25), 25, 25, 25, 25, 25 },
9746 /* Init Lower Higher */
9747 { 2, 0, 0, 2, 1, 0 }, /* Hit points */
9748 { 1, 0, 2, 0, 2, 0 } /* Energy */
9750 struct Race ustartrace
=
9751 { "something", "undefined", "something", "Xxx",
9753 NON_PM
, NON_PM
, NON_PM
, NON_PM
,
9755 /* Str Int Wis Dex Con Cha */
9756 { 3, 3, 3, 3, 3, 3 },
9757 { STR18(100), 18, 18, 18, 18, 18 },
9758 /* new limit values for the six attributes by Amy */
9759 { STR19(25), 25, 25, 25, 25, 25 },
9760 /* Init Lower Higher */
9761 { 2, 0, 0, 2, 1, 0 }, /* Hit points */
9762 { 1, 0, 2, 0, 2, 0 } /* Energy */
9765 /* Table of all genders */
9766 const struct Gender genders
[] = {
9767 {"male", "he", "him", "his", "Mal", ROLE_MALE
},
9768 {"female", "she", "her", "her", "Fem", ROLE_FEMALE
},
9769 {"neuter", "it", "it", "its", "Ntr", ROLE_NEUTER
}
9773 const size_t maxGender
= sizeof genders
/sizeof genders
[0];
9774 #endif /* MAC_MPW */
9776 /* Table of all alignments */
9777 const struct Align aligns
[] = {
9778 {"law", "lawful", "Law", ROLE_LAWFUL
, A_LAWFUL
},
9779 {"balance", "neutral", "Neu", ROLE_NEUTRAL
, A_NEUTRAL
},
9780 {"chaos", "chaotic", "Cha", ROLE_CHAOTIC
, A_CHAOTIC
},
9781 {"evil", "unaligned", "Una", 0, A_NONE
}
9784 STATIC_DCL
char * promptsep(char *, int);
9785 STATIC_DCL
int role_gendercount(int);
9786 STATIC_DCL
int race_alignmentcount(int);
9788 /* used by str2XXX() */
9789 static char NEARDATA randomstr
[] = "random";
9792 const size_t maxAlign
= sizeof aligns
/sizeof aligns
[0];
9793 #endif /* MAC_MPW */
9799 return (rolenum
>= 0 && rolenum
< SIZE(roles
)-1);
9806 return (rn2(SIZE(roles
)-1));
9812 int rivalrolenum
= randrole();
9813 flags
.rivalsavenum
= rivalrolenum
;
9815 u
.rivalcode
= roles
[rivalrolenum
].filecode
;
9816 u
.rivalneminum
= roles
[rivalrolenum
].neminum
;
9817 u
.rivalenemy1num
= roles
[rivalrolenum
].enemy1num
;
9818 u
.rivalenemy2num
= roles
[rivalrolenum
].enemy2num
;
9819 u
.rivalenemy1sym
= roles
[rivalrolenum
].enemy1sym
;
9820 u
.rivalenemy2sym
= roles
[rivalrolenum
].enemy2sym
;
9826 int rivalrolenum
= flags
.rivalsavenum
;
9828 u
.rivalcode
= roles
[rivalrolenum
].filecode
;
9829 u
.rivalneminum
= roles
[rivalrolenum
].neminum
;
9830 u
.rivalenemy1num
= roles
[rivalrolenum
].enemy1num
;
9831 u
.rivalenemy2num
= roles
[rivalrolenum
].enemy2num
;
9832 u
.rivalenemy1sym
= roles
[rivalrolenum
].enemy1sym
;
9833 u
.rivalenemy2sym
= roles
[rivalrolenum
].enemy2sym
;
9843 if (!str
|| !str
[0])
9846 /* Match as much of str as is provided */
9848 for (i
= 0; roles
[i
].name
.m
; i
++) {
9849 /* Does it match the male name? */
9850 if (!strncmpi(str
, roles
[i
].name
.m
, len
))
9852 /* Or the female name? */
9853 if (roles
[i
].name
.f
&& !strncmpi(str
, roles
[i
].name
.f
, len
))
9855 /* Or the filecode? */
9856 if (!strcmpi(str
, roles
[i
].filecode
))
9860 if ((len
== 1 && (*str
== '*' || *str
== '@')) ||
9861 !strncmpi(str
, randomstr
, len
))
9864 /* Couldn't find anything appropriate */
9870 validrace(rolenum
, racenum
)
9871 int rolenum
, racenum
;
9873 /* Assumes validrole */
9874 /* WAC -- checks ROLE_GENDMASK and ROLE_ALIGNMASK as well (otherwise, there
9875 * might not be an allowed gender or alignment for that role
9877 return (racenum
>= 0 && racenum
< SIZE(races
)-1 &&
9878 (roles
[rolenum
].allow
& races
[racenum
].allow
& ROLE_RACEMASK
) &&
9879 (roles
[rolenum
].allow
& races
[racenum
].allow
& ROLE_GENDMASK
) &&
9880 (roles
[rolenum
].allow
& races
[racenum
].allow
& ROLE_ALIGNMASK
));
9890 /* Count the number of valid races */
9891 for (i
= 0; races
[i
].noun
; i
++)
9892 /* if (roles[rolenum].allow & races[i].allow & ROLE_RACEMASK)*/
9893 if (validrace(rolenum
,i
))
9896 /* Pick a random race */
9897 /* Use a factor of 100 in case of bad random number generators */
9898 if (n
) n
= rn2(n
*100)/100;
9899 for (i
= 0; races
[i
].noun
; i
++)
9900 /* if (roles[rolenum].allow & races[i].allow & ROLE_RACEMASK) {*/
9901 if (validrace(rolenum
,i
)) {
9906 /* This role has no permitted races? */
9907 return (rn2(SIZE(races
)-1));
9911 * [ALI] Find the player equivalent race for a monster from its M2 flags.
9920 /* Look for a race with the correct selfmask */
9921 for (i
= 0; races
[i
].noun
; i
++)
9922 if (mflags2
& races
[i
].selfmask
) {
9923 /* Where more than one player race has the same monster race,
9924 * return the base race.
9926 if (mflags2
& MH_HUMAN
&& races
[i
].malenum
!= PM_HUMAN
)
9928 if (mflags2
& MH_ELF
&& races
[i
].malenum
!= PM_ELF
)
9942 if (!str
|| !str
[0])
9945 /* Match as much of str as is provided */
9947 for (i
= 0; races
[i
].noun
; i
++) {
9948 /* Does it match the noun? */
9949 if (!strncmpi(str
, races
[i
].noun
, len
))
9951 /* Or the filecode? */
9952 if (!strcmpi(str
, races
[i
].filecode
))
9956 if ((len
== 1 && (*str
== '*' || *str
== '@')) ||
9957 !strncmpi(str
, randomstr
, len
))
9960 /* Couldn't find anything appropriate */
9966 validgend(rolenum
, racenum
, gendnum
)
9967 int rolenum
, racenum
, gendnum
;
9969 /* Assumes validrole and validrace */
9970 return (gendnum
>= 0 && gendnum
< ROLE_GENDERS
&&
9971 (roles
[rolenum
].allow
& races
[racenum
].allow
&
9972 genders
[gendnum
].allow
& ROLE_GENDMASK
));
9977 randgend(rolenum
, racenum
)
9978 int rolenum
, racenum
;
9982 /* Count the number of valid genders */
9983 for (i
= 0; i
< ROLE_GENDERS
; i
++)
9984 /* if (roles[rolenum].allow & races[racenum].allow &
9985 genders[i].allow & ROLE_GENDMASK) */
9986 if (validgend(rolenum
, racenum
, i
))
9989 /* Pick a random gender */
9991 for (i
= 0; i
< ROLE_GENDERS
; i
++)
9992 /* if (roles[rolenum].allow & races[racenum].allow &
9993 genders[i].allow & ROLE_GENDMASK) {*/
9994 if (validgend(rolenum
, racenum
, i
)) {
9999 /* This role/race has no permitted genders? */
10000 return (rn2(ROLE_GENDERS
));
10010 /* Is str valid? */
10011 if (!str
|| !str
[0])
10014 /* Match as much of str as is provided */
10016 for (i
= 0; i
< ROLE_GENDERS
; i
++) {
10017 /* Does it match the adjective? */
10018 if (!strncmpi(str
, genders
[i
].adj
, len
))
10020 /* Or the filecode? */
10021 if (!strcmpi(str
, genders
[i
].filecode
))
10024 if ((len
== 1 && (*str
== '*' || *str
== '@')) ||
10025 !strncmpi(str
, randomstr
, len
))
10026 return ROLE_RANDOM
;
10028 /* Couldn't find anything appropriate */
10034 validalign(rolenum
, racenum
, alignnum
)
10035 int rolenum
, racenum
, alignnum
;
10037 /* Assumes validrole and validrace */
10038 return (alignnum
>= 0 && alignnum
< ROLE_ALIGNS
&&
10039 (roles
[rolenum
].allow
& races
[racenum
].allow
&
10040 aligns
[alignnum
].allow
& ROLE_ALIGNMASK
));
10045 randalign(rolenum
, racenum
)
10046 int rolenum
, racenum
;
10050 /* Count the number of valid alignments */
10051 for (i
= 0; i
< ROLE_ALIGNS
; i
++)
10052 if (roles
[rolenum
].allow
& races
[racenum
].allow
&
10053 aligns
[i
].allow
& ROLE_ALIGNMASK
)
10056 /* Pick a random alignment */
10058 for (i
= 0; i
< ROLE_ALIGNS
; i
++)
10059 if (roles
[rolenum
].allow
& races
[racenum
].allow
&
10060 aligns
[i
].allow
& ROLE_ALIGNMASK
) {
10065 /* This role/race has no permitted alignments? */
10066 return (rn2(ROLE_ALIGNS
));
10076 /* Is str valid? */
10077 if (!str
|| !str
[0])
10080 /* Match as much of str as is provided */
10082 for (i
= 0; i
< ROLE_ALIGNS
; i
++) {
10083 /* Does it match the adjective? */
10084 if (!strncmpi(str
, aligns
[i
].adj
, len
))
10086 /* Or the filecode? */
10087 if (!strcmpi(str
, aligns
[i
].filecode
))
10090 if ((len
== 1 && (*str
== '*' || *str
== '@')) ||
10091 !strncmpi(str
, randomstr
, len
))
10092 return ROLE_RANDOM
;
10094 /* Couldn't find anything appropriate */
10098 /* is rolenum compatible with any racenum/gendnum/alignnum constraints? */
10100 ok_role(rolenum
, racenum
, gendnum
, alignnum
)
10101 int rolenum
, racenum
, gendnum
, alignnum
;
10106 if (rolenum
>= 0 && rolenum
< SIZE(roles
)-1) {
10107 allow
= roles
[rolenum
].allow
;
10109 if (racenum
>= 0 && racenum
< SIZE(races
)-1)
10110 allow
&= races
[racenum
].allow
;
10111 if (gendnum
>= 0 && gendnum
< ROLE_GENDERS
&&
10112 !(allow
& genders
[gendnum
].allow
& ROLE_GENDMASK
))
10114 if (alignnum
>= 0 && alignnum
< ROLE_ALIGNS
&&
10115 !(allow
& aligns
[alignnum
].allow
& ROLE_ALIGNMASK
))
10118 if (!(allow
& ROLE_RACEMASK
) || !(allow
& ROLE_GENDMASK
) ||
10119 !(allow
& ROLE_ALIGNMASK
))
10123 for (i
= 0; i
< SIZE(roles
)-1; i
++) {
10124 allow
= roles
[i
].allow
;
10125 if (racenum
>= 0 && racenum
< SIZE(races
)-1)
10126 allow
&= races
[racenum
].allow
;
10127 if (gendnum
>= 0 && gendnum
< ROLE_GENDERS
&&
10128 !(allow
& genders
[gendnum
].allow
& ROLE_GENDMASK
))
10130 if (alignnum
>= 0 && alignnum
< ROLE_ALIGNS
&&
10131 !(allow
& aligns
[alignnum
].allow
& ROLE_ALIGNMASK
))
10133 if (!(allow
& ROLE_RACEMASK
) || !(allow
& ROLE_GENDMASK
) ||
10134 !(allow
& ROLE_ALIGNMASK
))
10142 /* pick a random role subject to any racenum/gendnum/alignnum constraints */
10143 /* If pickhow == PICK_RIGID a role is returned only if there is */
10144 /* a single possibility */
10146 pick_role(racenum
, gendnum
, alignnum
, pickhow
)
10147 int racenum
, gendnum
, alignnum
, pickhow
;
10152 for (i
= 0; i
< SIZE(roles
)-1; i
++) {
10153 if (ok_role(i
, racenum
, gendnum
, alignnum
))
10156 if (roles_ok
== 0 || (roles_ok
> 1 && pickhow
== PICK_RIGID
))
10158 roles_ok
= rn2(roles_ok
);
10159 for (i
= 0; i
< SIZE(roles
)-1; i
++) {
10160 if (ok_role(i
, racenum
, gendnum
, alignnum
)) {
10170 /* is racenum compatible with any rolenum/gendnum/alignnum constraints? */
10172 ok_race(rolenum
, racenum
, gendnum
, alignnum
)
10173 int rolenum
, racenum
, gendnum
, alignnum
;
10178 if (racenum
>= 0 && racenum
< SIZE(races
)-1) {
10179 allow
= races
[racenum
].allow
;
10181 if (rolenum
>= 0 && rolenum
< SIZE(roles
)-1)
10182 allow
&= roles
[rolenum
].allow
;
10183 if (gendnum
>= 0 && gendnum
< ROLE_GENDERS
&&
10184 !(allow
& genders
[gendnum
].allow
& ROLE_GENDMASK
))
10186 if (alignnum
>= 0 && alignnum
< ROLE_ALIGNS
&&
10187 !(allow
& aligns
[alignnum
].allow
& ROLE_ALIGNMASK
))
10190 if (!(allow
& ROLE_RACEMASK
) || !(allow
& ROLE_GENDMASK
) ||
10191 !(allow
& ROLE_ALIGNMASK
))
10195 for (i
= 0; i
< SIZE(races
)-1; i
++) {
10196 allow
= races
[i
].allow
;
10197 if (rolenum
>= 0 && rolenum
< SIZE(roles
)-1)
10198 allow
&= roles
[rolenum
].allow
;
10199 if (gendnum
>= 0 && gendnum
< ROLE_GENDERS
&&
10200 !(allow
& genders
[gendnum
].allow
& ROLE_GENDMASK
))
10202 if (alignnum
>= 0 && alignnum
< ROLE_ALIGNS
&&
10203 !(allow
& aligns
[alignnum
].allow
& ROLE_ALIGNMASK
))
10205 if (!(allow
& ROLE_RACEMASK
) || !(allow
& ROLE_GENDMASK
) ||
10206 !(allow
& ROLE_ALIGNMASK
))
10214 /* pick a random race subject to any rolenum/gendnum/alignnum constraints */
10215 /* If pickhow == PICK_RIGID a race is returned only if there is */
10216 /* a single possibility */
10218 pick_race(rolenum
, gendnum
, alignnum
, pickhow
)
10219 int rolenum
, gendnum
, alignnum
, pickhow
;
10225 for (i
= 0; i
< SIZE(races
)-1; i
++) {
10226 if (ok_race(rolenum
, i
, gendnum
, alignnum
))
10229 if (races_ok
== 0 || (races_ok
> 1 && pickhow
== PICK_RIGID
))
10231 races_ok
= rn2(races_ok
);
10232 for (i
= 0; i
< SIZE(races
)-1; i
++) {
10233 if (ok_race(rolenum
, i
, gendnum
, alignnum
)) {
10234 if (races_ok
== 0) {
10236 if (!rn2(10) && !flags
.hybridcancel
&& flags
.randomhybrids
) { /* hybrid races --Amy */
10238 flags
.hybridization
++;
10242 flags
.hybridangbander
= 1; break;
10244 flags
.hybridaquarian
= 1; break;
10246 flags
.hybridcurser
= 1; break;
10248 flags
.hybridhaxor
= 1; break;
10250 flags
.hybridhomicider
= 1; break;
10252 flags
.hybridsuxxor
= 1; break;
10254 flags
.hybridwarper
= 1; break;
10256 flags
.hybridrandomizer
= 1; break;
10258 flags
.hybridnullrace
= 1; break;
10260 flags
.hybridmazewalker
= 1; break;
10262 flags
.hybridsoviet
= 1; break;
10264 flags
.hybridxrace
= 1; break;
10266 flags
.hybridheretic
= 1; break;
10268 flags
.hybridsokosolver
= 1; break;
10270 flags
.hybridspecialist
= 1; break;
10272 flags
.hybridamerican
= 1; break;
10274 flags
.hybridminimalist
= 1; break;
10276 flags
.hybridnastinator
= 1; break;
10278 flags
.hybridrougelike
= 1; break;
10280 flags
.hybridsegfaulter
= 1; break;
10282 flags
.hybridironman
= 1; break;
10284 flags
.hybridamnesiac
= 1; break;
10286 flags
.hybridproblematic
= 1; break;
10288 flags
.hybridwindinhabitant
= 1; break;
10290 flags
.hybridaggravator
= 1; break;
10292 flags
.hybridevilvariant
= 1; break;
10294 flags
.hybridlevelscaler
= 1; break;
10296 flags
.hybriderosator
= 1; break;
10298 flags
.hybridroommate
= 1; break;
10300 flags
.hybridextravator
= 1; break;
10302 flags
.hybridhallucinator
= 1; break;
10304 flags
.hybridbossrusher
= 1; break;
10306 flags
.hybriddorian
= 1; break;
10308 flags
.hybridtechless
= 1; break;
10310 flags
.hybridblait
= 1; break;
10312 flags
.hybridgrouper
= 1; break;
10314 flags
.hybridscriptor
= 1; break;
10316 flags
.hybridunbalancor
= 1; break;
10318 flags
.hybridbeacher
= 1; break;
10320 flags
.hybridstairseeker
= 1; break;
10322 flags
.hybridmatrayser
= 1; break;
10324 flags
.hybridfeminizer
= 1; break;
10326 flags
.hybridchallenger
= 1; break;
10328 flags
.hybridhardmoder
= 1; break;
10330 flags
.hybridstunfish
= 1; break;
10332 flags
.hybridkillfiller
= 1; break;
10334 flags
.hybridbadstatter
= 1; break;
10336 flags
.hybriddroughter
= 1; break;
10338 flags
.hybridvanillaoid
= 1; break;
10342 while (((rnd(7)) < 3) && (tryct
< 100) ) {
10349 if (!(flags
.hybridangbander
)) {flags
.hybridangbander
= 1; flags
.hybridization
++; break;
10352 if (!(flags
.hybridaquarian
)) {flags
.hybridaquarian
= 1; flags
.hybridization
++; break;
10355 if (!(flags
.hybridcurser
)) {flags
.hybridcurser
= 1; flags
.hybridization
++; break;
10358 if (!(flags
.hybridhaxor
)) {flags
.hybridhaxor
= 1; flags
.hybridization
++; break;
10361 if (!(flags
.hybridhomicider
)) {flags
.hybridhomicider
= 1; flags
.hybridization
++; break;
10364 if (!(flags
.hybridsuxxor
)) {flags
.hybridsuxxor
= 1; flags
.hybridization
++; break;
10367 if (!(flags
.hybridwarper
)) {flags
.hybridwarper
= 1; flags
.hybridization
++; break;
10370 if (!(flags
.hybridrandomizer
)) {flags
.hybridrandomizer
= 1; flags
.hybridization
++; break;
10373 if (!(flags
.hybridnullrace
)) {flags
.hybridnullrace
= 1; flags
.hybridization
++; break;
10376 if (!(flags
.hybridmazewalker
)) {flags
.hybridmazewalker
= 1; flags
.hybridization
++; break;
10379 if (!(flags
.hybridsoviet
)) {flags
.hybridsoviet
= 1; flags
.hybridization
++; break;
10382 if (!(flags
.hybridxrace
)) {flags
.hybridxrace
= 1; flags
.hybridization
++; break;
10385 if (!(flags
.hybridheretic
)) {flags
.hybridheretic
= 1; flags
.hybridization
++; break;
10388 if (!(flags
.hybridsokosolver
)) {flags
.hybridsokosolver
= 1; flags
.hybridization
++; break;
10391 if (!(flags
.hybridspecialist
)) {flags
.hybridspecialist
= 1; flags
.hybridization
++; break;
10394 if (!(flags
.hybridamerican
)) {flags
.hybridamerican
= 1; flags
.hybridization
++; break;
10397 if (!(flags
.hybridminimalist
)) {flags
.hybridminimalist
= 1; flags
.hybridization
++; break;
10400 if (!(flags
.hybridnastinator
)) {flags
.hybridnastinator
= 1; flags
.hybridization
++; break;
10403 if (!(flags
.hybridrougelike
)) {flags
.hybridrougelike
= 1; flags
.hybridization
++; break;
10406 if (!(flags
.hybridsegfaulter
)) {flags
.hybridsegfaulter
= 1; flags
.hybridization
++; break;
10409 if (!(flags
.hybridironman
)) {flags
.hybridironman
= 1; flags
.hybridization
++; break;
10412 if (!(flags
.hybridamnesiac
)) {flags
.hybridamnesiac
= 1; flags
.hybridization
++; break;
10415 if (!(flags
.hybridproblematic
)) {flags
.hybridproblematic
= 1; flags
.hybridization
++; break;
10418 if (!(flags
.hybridwindinhabitant
)) {flags
.hybridwindinhabitant
= 1; flags
.hybridization
++; break;
10421 if (!(flags
.hybridaggravator
)) {flags
.hybridaggravator
= 1; flags
.hybridization
++; break;
10424 if (!(flags
.hybridevilvariant
)) {flags
.hybridevilvariant
= 1; flags
.hybridization
++; break;
10427 if (!(flags
.hybridlevelscaler
)) {flags
.hybridlevelscaler
= 1; flags
.hybridization
++; break;
10430 if (!(flags
.hybriderosator
)) {flags
.hybriderosator
= 1; flags
.hybridization
++; break;
10433 if (!(flags
.hybridroommate
)) {flags
.hybridroommate
= 1; flags
.hybridization
++; break;
10436 if (!(flags
.hybridextravator
)) {flags
.hybridextravator
= 1; flags
.hybridization
++; break;
10439 if (!(flags
.hybridhallucinator
)) {flags
.hybridhallucinator
= 1; flags
.hybridization
++; break;
10442 if (!(flags
.hybridbossrusher
)) {flags
.hybridbossrusher
= 1; flags
.hybridization
++; break;
10445 if (!(flags
.hybriddorian
)) {flags
.hybriddorian
= 1; flags
.hybridization
++; break;
10448 if (!(flags
.hybridtechless
)) {flags
.hybridtechless
= 1; flags
.hybridization
++; break;
10451 if (!(flags
.hybridblait
)) {flags
.hybridblait
= 1; flags
.hybridization
++; break;
10454 if (!(flags
.hybridgrouper
)) {flags
.hybridgrouper
= 1; flags
.hybridization
++; break;
10457 if (!(flags
.hybridscriptor
)) {flags
.hybridscriptor
= 1; flags
.hybridization
++; break;
10460 if (!(flags
.hybridunbalancor
)) {flags
.hybridunbalancor
= 1; flags
.hybridization
++; break;
10463 if (!(flags
.hybridbeacher
)) {flags
.hybridbeacher
= 1; flags
.hybridization
++; break;
10466 if (!(flags
.hybridstairseeker
)) {flags
.hybridstairseeker
= 1; flags
.hybridization
++; break;
10469 if (!(flags
.hybridmatrayser
)) {flags
.hybridmatrayser
= 1; flags
.hybridization
++; break;
10472 if (!(flags
.hybridfeminizer
)) {flags
.hybridfeminizer
= 1; flags
.hybridization
++; break;
10475 if (!(flags
.hybridchallenger
)) {flags
.hybridchallenger
= 1; flags
.hybridization
++; break;
10478 if (!(flags
.hybridhardmoder
)) {flags
.hybridhardmoder
= 1; flags
.hybridization
++; break;
10481 if (!(flags
.hybridstunfish
)) {flags
.hybridstunfish
= 1; flags
.hybridization
++; break;
10484 if (!(flags
.hybridkillfiller
)) {flags
.hybridkillfiller
= 1; flags
.hybridization
++; break;
10487 if (!(flags
.hybridbadstatter
)) {flags
.hybridbadstatter
= 1; flags
.hybridization
++; break;
10490 if (!(flags
.hybriddroughter
)) {flags
.hybriddroughter
= 1; flags
.hybridization
++; break;
10493 if (!(flags
.hybridvanillaoid
)) {flags
.hybridvanillaoid
= 1; flags
.hybridization
++; break;
10512 /* is gendnum compatible with any rolenum/racenum/alignnum constraints? */
10513 /* gender and alignment are not comparable (and also not constrainable) */
10515 ok_gend(rolenum
, racenum
, gendnum
, alignnum
)
10516 int rolenum
, racenum
, gendnum
, alignnum
;
10521 if (gendnum
>= 0 && gendnum
< ROLE_GENDERS
) {
10522 allow
= genders
[gendnum
].allow
;
10524 if (rolenum
>= 0 && rolenum
< SIZE(roles
)-1)
10525 allow
&= roles
[rolenum
].allow
;
10526 if (racenum
>= 0 && racenum
< SIZE(races
)-1)
10527 allow
&= races
[racenum
].allow
;
10529 if (!(allow
& ROLE_GENDMASK
))
10533 for (i
= 0; i
< ROLE_GENDERS
; i
++) {
10534 allow
= genders
[i
].allow
;
10535 if (rolenum
>= 0 && rolenum
< SIZE(roles
)-1)
10536 allow
&= roles
[rolenum
].allow
;
10537 if (racenum
>= 0 && racenum
< SIZE(races
)-1)
10538 allow
&= races
[racenum
].allow
;
10539 if (allow
& ROLE_GENDMASK
)
10546 /* pick a random gender subject to any rolenum/racenum/alignnum constraints */
10547 /* gender and alignment are not comparable (and also not constrainable) */
10548 /* If pickhow == PICK_RIGID a gender is returned only if there is */
10549 /* a single possibility */
10551 pick_gend(rolenum
, racenum
, alignnum
, pickhow
)
10552 int rolenum
, racenum
, alignnum
, pickhow
;
10557 for (i
= 0; i
< ROLE_GENDERS
; i
++) {
10558 if (ok_gend(rolenum
, racenum
, i
, alignnum
))
10561 if (gends_ok
== 0 || (gends_ok
> 1 && pickhow
== PICK_RIGID
))
10563 gends_ok
= rn2(gends_ok
);
10564 for (i
= 0; i
< ROLE_GENDERS
; i
++) {
10565 if (ok_gend(rolenum
, racenum
, i
, alignnum
)) {
10575 /* is alignnum compatible with any rolenum/racenum/gendnum constraints? */
10576 /* alignment and gender are not comparable (and also not constrainable) */
10578 ok_align(rolenum
, racenum
, gendnum
, alignnum
)
10579 int rolenum
, racenum
, gendnum
, alignnum
;
10584 if (alignnum
>= 0 && alignnum
< ROLE_ALIGNS
) {
10585 allow
= aligns
[alignnum
].allow
;
10587 if (rolenum
>= 0 && rolenum
< SIZE(roles
)-1)
10588 allow
&= roles
[rolenum
].allow
;
10589 if (racenum
>= 0 && racenum
< SIZE(races
)-1)
10590 allow
&= races
[racenum
].allow
;
10592 if (!(allow
& ROLE_ALIGNMASK
))
10596 for (i
= 0; i
< ROLE_ALIGNS
; i
++) {
10597 allow
= races
[i
].allow
;
10598 if (rolenum
>= 0 && rolenum
< SIZE(roles
)-1)
10599 allow
&= roles
[rolenum
].allow
;
10600 if (racenum
>= 0 && racenum
< SIZE(races
)-1)
10601 allow
&= races
[racenum
].allow
;
10602 if (allow
& ROLE_ALIGNMASK
)
10609 /* pick a random alignment subject to any rolenum/racenum/gendnum constraints */
10610 /* alignment and gender are not comparable (and also not constrainable) */
10611 /* If pickhow == PICK_RIGID an alignment is returned only if there is */
10612 /* a single possibility */
10614 pick_align(rolenum
, racenum
, gendnum
, pickhow
)
10615 int rolenum
, racenum
, gendnum
, pickhow
;
10620 for (i
= 0; i
< ROLE_ALIGNS
; i
++) {
10621 if (ok_align(rolenum
, racenum
, gendnum
, i
))
10624 if (aligns_ok
== 0 || (aligns_ok
> 1 && pickhow
== PICK_RIGID
))
10626 aligns_ok
= rn2(aligns_ok
);
10627 for (i
= 0; i
< ROLE_ALIGNS
; i
++) {
10628 if (ok_align(rolenum
, racenum
, gendnum
, i
)) {
10629 if (aligns_ok
== 0)
10638 /* change player's hybridization: 0 = random, 1 = always remove, 2 = always give one --Amy
10639 * special case: if you have none and it's type 0, you always get one. The other extreme, where you have all the
10640 * hybridizations, is so rare that I decide to not specialcase it :P */
10642 changehybridization(type
)
10647 if (type
== 1 || (type
== 0 && rn2(2) && flags
.hybridization
) ) {
10649 while (tryct
++ < 1000) {
10654 if (flags
.hybridangbander
) {
10656 flags
.hybridangbander
= FALSE
;
10657 flags
.hybridization
--;
10658 pline("You no longer have the angbander hybrid race.");
10662 if (flags
.hybridaquarian
) {
10664 flags
.hybridaquarian
= FALSE
;
10665 flags
.hybridization
--;
10666 pline("You no longer have the aquarian hybrid race.");
10670 if (flags
.hybridcurser
) {
10672 flags
.hybridcurser
= FALSE
;
10673 flags
.hybridization
--;
10674 pline("You no longer have the curser hybrid race.");
10678 if (flags
.hybridhaxor
) {
10680 flags
.hybridhaxor
= FALSE
;
10681 flags
.hybridization
--;
10682 pline("You no longer have the haxor hybrid race.");
10686 if (flags
.hybridhomicider
) {
10688 flags
.hybridhomicider
= FALSE
;
10689 flags
.hybridization
--;
10690 pline("You no longer have the homicider hybrid race.");
10694 if (flags
.hybridsuxxor
) {
10696 flags
.hybridsuxxor
= FALSE
;
10697 flags
.hybridization
--;
10698 pline("You no longer have the suxxor hybrid race.");
10702 if (flags
.hybridwarper
) {
10704 flags
.hybridwarper
= FALSE
;
10705 flags
.hybridization
--;
10706 pline("You no longer have the warper hybrid race.");
10710 if (flags
.hybridrandomizer
) {
10712 flags
.hybridrandomizer
= FALSE
;
10713 flags
.hybridization
--;
10714 pline("You no longer have the randomizer hybrid race.");
10718 if (flags
.hybridnullrace
) {
10720 flags
.hybridnullrace
= FALSE
;
10721 flags
.hybridization
--;
10722 pline("You no longer have the null hybrid race.");
10726 if (flags
.hybridmazewalker
) {
10728 flags
.hybridmazewalker
= FALSE
;
10729 flags
.hybridization
--;
10730 pline("You no longer have the mazewalker hybrid race.");
10734 if (flags
.hybridsoviet
) {
10736 flags
.hybridsoviet
= FALSE
;
10737 flags
.hybridization
--;
10738 pline("You no longer have the soviet hybrid race.");
10742 if (flags
.hybridxrace
) {
10744 flags
.hybridxrace
= FALSE
;
10745 flags
.hybridization
--;
10746 pline("You no longer have the x-race hybrid race.");
10750 if (flags
.hybridheretic
) {
10752 flags
.hybridheretic
= FALSE
;
10753 flags
.hybridization
--;
10754 pline("You no longer have the heretic hybrid race.");
10758 if (flags
.hybridsokosolver
) {
10760 flags
.hybridsokosolver
= FALSE
;
10761 flags
.hybridization
--;
10762 pline("You no longer have the sokosolver hybrid race.");
10766 if (flags
.hybridspecialist
) {
10768 flags
.hybridspecialist
= FALSE
;
10769 flags
.hybridization
--;
10770 pline("You no longer have the specialist hybrid race.");
10774 if (flags
.hybridamerican
) {
10776 flags
.hybridamerican
= FALSE
;
10777 flags
.hybridization
--;
10778 pline("You no longer have the american hybrid race.");
10782 if (flags
.hybridminimalist
) {
10784 flags
.hybridminimalist
= FALSE
;
10785 flags
.hybridization
--;
10786 pline("You no longer have the minimalist hybrid race.");
10790 if (flags
.hybridnastinator
) {
10792 flags
.hybridnastinator
= FALSE
;
10793 flags
.hybridization
--;
10794 pline("You no longer have the nastinator hybrid race.");
10798 if (flags
.hybridrougelike
) {
10800 flags
.hybridrougelike
= FALSE
;
10801 flags
.hybridization
--;
10802 pline("You no longer have the rougelike hybrid race.");
10806 if (flags
.hybridsegfaulter
) {
10808 flags
.hybridsegfaulter
= FALSE
;
10809 flags
.hybridization
--;
10810 pline("You no longer have the segfaulter hybrid race. Yay. No more crashes!");
10814 if (flags
.hybridironman
) {
10816 flags
.hybridironman
= FALSE
;
10817 flags
.hybridization
--;
10818 pline("You no longer have the ironman hybrid race.");
10822 if (flags
.hybridamnesiac
) {
10824 flags
.hybridamnesiac
= FALSE
;
10825 flags
.hybridization
--;
10826 pline("You no longer have the amnesiac hybrid race.");
10830 if (flags
.hybridproblematic
) {
10832 flags
.hybridproblematic
= FALSE
;
10833 flags
.hybridization
--;
10834 pline("You no longer have the problematic hybrid race.");
10838 if (flags
.hybridwindinhabitant
) {
10840 flags
.hybridwindinhabitant
= FALSE
;
10841 flags
.hybridization
--;
10842 pline("You no longer have the wind inhabitant hybrid race.");
10846 if (flags
.hybridaggravator
) {
10848 flags
.hybridaggravator
= FALSE
;
10849 flags
.hybridization
--;
10850 pline("You no longer have the aggravator hybrid race.");
10854 if (flags
.hybridevilvariant
) {
10856 flags
.hybridevilvariant
= FALSE
;
10857 flags
.hybridization
--;
10858 pline("You no longer have the evilvariant hybrid race.");
10862 if (flags
.hybridlevelscaler
) {
10864 flags
.hybridlevelscaler
= FALSE
;
10865 flags
.hybridization
--;
10866 pline("You no longer have the levelscaler hybrid race.");
10870 if (flags
.hybriderosator
) {
10872 flags
.hybriderosator
= FALSE
;
10873 flags
.hybridization
--;
10874 pline("You no longer have the erosator hybrid race.");
10878 if (flags
.hybridroommate
) {
10880 flags
.hybridroommate
= FALSE
;
10881 flags
.hybridization
--;
10882 pline("You no longer have the roommate hybrid race.");
10886 if (flags
.hybridextravator
) {
10888 flags
.hybridextravator
= FALSE
;
10889 flags
.hybridization
--;
10890 pline("You no longer have the extravator hybrid race.");
10894 if (flags
.hybridhallucinator
) {
10896 flags
.hybridhallucinator
= FALSE
;
10897 flags
.hybridization
--;
10898 pline("You no longer have the hallucinator hybrid race.");
10902 if (flags
.hybridbossrusher
) {
10904 flags
.hybridbossrusher
= FALSE
;
10905 flags
.hybridization
--;
10906 pline("You no longer have the bossrusher hybrid race.");
10910 if (flags
.hybriddorian
) {
10912 flags
.hybriddorian
= FALSE
;
10913 flags
.hybridization
--;
10914 pline("You no longer have the dorian hybrid race.");
10918 if (flags
.hybridtechless
) {
10920 flags
.hybridtechless
= FALSE
;
10921 flags
.hybridization
--;
10922 pline("You no longer have the techless hybrid race.");
10926 if (flags
.hybridblait
) {
10928 flags
.hybridblait
= FALSE
;
10929 flags
.hybridization
--;
10930 pline("You no longer have the blait hybrid race.");
10934 if (flags
.hybridgrouper
) {
10936 flags
.hybridgrouper
= FALSE
;
10937 flags
.hybridization
--;
10938 pline("You no longer have the grouper hybrid race.");
10942 if (flags
.hybridscriptor
) {
10944 flags
.hybridscriptor
= FALSE
;
10945 flags
.hybridization
--;
10946 pline("You no longer have the scriptor hybrid race.");
10950 if (flags
.hybridunbalancor
) {
10952 flags
.hybridunbalancor
= FALSE
;
10953 flags
.hybridization
--;
10954 pline("You no longer have the unbalancor hybrid race.");
10958 if (flags
.hybridbeacher
) {
10960 flags
.hybridbeacher
= FALSE
;
10961 flags
.hybridization
--;
10962 pline("You no longer have the beacher hybrid race.");
10966 if (flags
.hybridstairseeker
) {
10968 flags
.hybridstairseeker
= FALSE
;
10969 flags
.hybridization
--;
10970 pline("You no longer have the stairseeker hybrid race.");
10974 if (flags
.hybridmatrayser
) {
10976 flags
.hybridmatrayser
= FALSE
;
10977 flags
.hybridization
--;
10978 pline("You no longer have the matrayser hybrid race.");
10982 if (flags
.hybridfeminizer
) {
10984 flags
.hybridfeminizer
= FALSE
;
10985 flags
.hybridization
--;
10986 pline("You no longer have the feminizer hybrid race.");
10990 if (flags
.hybridchallenger
) {
10992 flags
.hybridchallenger
= FALSE
;
10993 flags
.hybridization
--;
10994 pline("You no longer have the challenger hybrid race.");
10998 if (flags
.hybridhardmoder
) {
11000 flags
.hybridhardmoder
= FALSE
;
11001 flags
.hybridization
--;
11002 pline("You no longer have the hardmoder hybrid race.");
11006 if (flags
.hybridstunfish
) {
11008 flags
.hybridstunfish
= FALSE
;
11009 flags
.hybridization
--;
11010 pline("You no longer have the stunned-like-a-fish hybrid race.");
11014 if (flags
.hybridkillfiller
) {
11016 flags
.hybridkillfiller
= FALSE
;
11017 flags
.hybridization
--;
11018 pline("You no longer have the killfiller hybrid race.");
11022 if (flags
.hybridbadstatter
) {
11024 flags
.hybridbadstatter
= FALSE
;
11025 flags
.hybridization
--;
11026 pline("You no longer have the badstatter hybrid race.");
11030 if (flags
.hybriddroughter
) {
11032 flags
.hybriddroughter
= FALSE
;
11033 flags
.hybridization
--;
11034 pline("You no longer have the droughter hybrid race.");
11038 if (flags
.hybridvanillaoid
) {
11040 flags
.hybridvanillaoid
= FALSE
;
11041 flags
.hybridization
--;
11042 pline("You no longer have the vanillaoid hybrid race.");
11046 } /* end switch case */
11051 while (tryct
++ < 1000) {
11056 if (!flags
.hybridangbander
) {
11058 flags
.hybridangbander
= TRUE
;
11059 flags
.hybridization
++;
11060 pline("You now have the angbander hybrid race.");
11064 if (!flags
.hybridaquarian
) {
11066 flags
.hybridaquarian
= TRUE
;
11067 flags
.hybridization
++;
11068 pline("You now have the aquarian hybrid race.");
11072 if (!flags
.hybridcurser
) {
11074 flags
.hybridcurser
= TRUE
;
11075 flags
.hybridization
++;
11076 pline("You now have the curser hybrid race.");
11080 if (!flags
.hybridhaxor
) {
11082 flags
.hybridhaxor
= TRUE
;
11083 flags
.hybridization
++;
11084 pline("You now have the haxor hybrid race.");
11088 if (!flags
.hybridhomicider
) {
11090 flags
.hybridhomicider
= TRUE
;
11091 flags
.hybridization
++;
11092 pline("You now have the homicider hybrid race.");
11096 if (!flags
.hybridsuxxor
) {
11098 flags
.hybridsuxxor
= TRUE
;
11099 flags
.hybridization
++;
11100 pline("You now have the suxxor hybrid race.");
11104 if (!flags
.hybridwarper
) {
11106 flags
.hybridwarper
= TRUE
;
11107 flags
.hybridization
++;
11108 pline("You now have the warper hybrid race.");
11112 if (!flags
.hybridrandomizer
) {
11114 flags
.hybridrandomizer
= TRUE
;
11115 flags
.hybridization
++;
11116 pline("You now have the randomizer hybrid race.");
11120 if (!flags
.hybridnullrace
) {
11122 flags
.hybridnullrace
= TRUE
;
11123 flags
.hybridization
++;
11124 pline("You now have the null hybrid race.");
11128 if (!flags
.hybridmazewalker
) {
11130 flags
.hybridmazewalker
= TRUE
;
11131 flags
.hybridization
++;
11132 pline("You now have the mazewalker hybrid race.");
11136 if (!flags
.hybridsoviet
) {
11138 flags
.hybridsoviet
= TRUE
;
11139 flags
.hybridization
++;
11140 pline("You now have the soviet hybrid race.");
11144 if (!flags
.hybridxrace
) {
11146 flags
.hybridxrace
= TRUE
;
11147 flags
.hybridization
++;
11148 pline("You now have the x-race hybrid race.");
11152 if (!flags
.hybridheretic
) {
11154 flags
.hybridheretic
= TRUE
;
11155 flags
.hybridization
++;
11156 pline("You now have the heretic hybrid race.");
11160 if (!flags
.hybridsokosolver
) {
11162 flags
.hybridsokosolver
= TRUE
;
11163 flags
.hybridization
++;
11164 pline("You now have the sokosolver hybrid race.");
11168 if (!flags
.hybridspecialist
) {
11170 flags
.hybridspecialist
= TRUE
;
11171 flags
.hybridization
++;
11172 pline("You now have the specialist hybrid race.");
11176 if (!flags
.hybridamerican
) {
11178 flags
.hybridamerican
= TRUE
;
11179 flags
.hybridization
++;
11180 pline("You now have the american hybrid race.");
11184 if (!flags
.hybridminimalist
) {
11186 flags
.hybridminimalist
= TRUE
;
11187 flags
.hybridization
++;
11188 pline("You now have the minimalist hybrid race.");
11192 if (!flags
.hybridnastinator
) {
11194 flags
.hybridnastinator
= TRUE
;
11195 flags
.hybridization
++;
11196 pline("You now have the nastinator hybrid race.");
11200 if (!flags
.hybridrougelike
) {
11202 flags
.hybridrougelike
= TRUE
;
11203 flags
.hybridization
++;
11204 pline("You now have the rougelike hybrid race.");
11208 if (!flags
.hybridsegfaulter
) {
11210 flags
.hybridsegfaulter
= TRUE
;
11211 flags
.hybridization
++;
11212 pline("You now have the segfaulter hybrid race. Oh no, the game's gonna crash!");
11216 if (!flags
.hybridironman
) {
11218 flags
.hybridironman
= TRUE
;
11219 flags
.hybridization
++;
11220 pline("You now have the ironman hybrid race.");
11224 if (!flags
.hybridamnesiac
) {
11226 flags
.hybridamnesiac
= TRUE
;
11227 flags
.hybridization
++;
11228 pline("You now have the amnesiac hybrid race.");
11232 if (!flags
.hybridproblematic
) {
11234 flags
.hybridproblematic
= TRUE
;
11235 flags
.hybridization
++;
11236 pline("You now have the problematic hybrid race.");
11240 if (!flags
.hybridwindinhabitant
) {
11242 flags
.hybridwindinhabitant
= TRUE
;
11243 flags
.hybridization
++;
11244 pline("You now have the wind inhabitant hybrid race.");
11248 if (!flags
.hybridaggravator
) {
11250 flags
.hybridaggravator
= TRUE
;
11251 flags
.hybridization
++;
11252 pline("You now have the aggravator hybrid race.");
11256 if (!flags
.hybridevilvariant
) {
11258 flags
.hybridevilvariant
= TRUE
;
11259 flags
.hybridization
++;
11260 pline("You now have the evilvariant hybrid race.");
11264 if (!flags
.hybridlevelscaler
) {
11266 flags
.hybridlevelscaler
= TRUE
;
11267 flags
.hybridization
++;
11268 pline("You now have the levelscaler hybrid race.");
11272 if (!flags
.hybriderosator
) {
11274 flags
.hybriderosator
= TRUE
;
11275 flags
.hybridization
++;
11276 pline("You now have the erosator hybrid race.");
11280 if (!flags
.hybridroommate
) {
11282 flags
.hybridroommate
= TRUE
;
11283 flags
.hybridization
++;
11284 pline("You now have the roommate hybrid race.");
11288 if (!flags
.hybridextravator
) {
11290 flags
.hybridextravator
= TRUE
;
11291 flags
.hybridization
++;
11292 pline("You now have the extravator hybrid race.");
11296 if (!flags
.hybridhallucinator
) {
11298 flags
.hybridhallucinator
= TRUE
;
11299 flags
.hybridization
++;
11300 pline("You now have the hallucinator hybrid race.");
11304 if (!flags
.hybridbossrusher
) {
11306 flags
.hybridbossrusher
= TRUE
;
11307 flags
.hybridization
++;
11308 pline("You now have the bossrusher hybrid race.");
11312 if (!flags
.hybriddorian
) {
11314 flags
.hybriddorian
= TRUE
;
11315 flags
.hybridization
++;
11316 pline("You now have the dorian hybrid race.");
11320 if (!flags
.hybridtechless
) {
11322 flags
.hybridtechless
= TRUE
;
11323 flags
.hybridization
++;
11324 pline("You now have the techless hybrid race.");
11328 if (!flags
.hybridblait
) {
11330 flags
.hybridblait
= TRUE
;
11331 flags
.hybridization
++;
11332 pline("You now have the blait hybrid race.");
11336 if (!flags
.hybridgrouper
) {
11338 flags
.hybridgrouper
= TRUE
;
11339 flags
.hybridization
++;
11340 pline("You now have the grouper hybrid race.");
11344 if (!flags
.hybridscriptor
) {
11346 flags
.hybridscriptor
= TRUE
;
11347 flags
.hybridization
++;
11348 pline("You now have the scriptor hybrid race.");
11352 if (!flags
.hybridunbalancor
) {
11354 flags
.hybridunbalancor
= TRUE
;
11355 flags
.hybridization
++;
11356 pline("You now have the unbalancor hybrid race.");
11360 if (!flags
.hybridbeacher
) {
11362 flags
.hybridbeacher
= TRUE
;
11363 flags
.hybridization
++;
11364 pline("You now have the beacher hybrid race.");
11368 if (!flags
.hybridstairseeker
) {
11370 flags
.hybridstairseeker
= TRUE
;
11371 flags
.hybridization
++;
11372 pline("You now have the stairseeker hybrid race.");
11376 if (!flags
.hybridmatrayser
) {
11378 flags
.hybridmatrayser
= TRUE
;
11379 flags
.hybridization
++;
11380 pline("You now have the matrayser hybrid race.");
11384 if (!flags
.hybridfeminizer
) {
11386 flags
.hybridfeminizer
= TRUE
;
11387 flags
.hybridization
++;
11388 pline("You now have the feminizer hybrid race.");
11392 if (!flags
.hybridchallenger
) {
11394 flags
.hybridchallenger
= TRUE
;
11395 flags
.hybridization
++;
11396 pline("You now have the challenger hybrid race.");
11400 if (!flags
.hybridhardmoder
) {
11402 flags
.hybridhardmoder
= TRUE
;
11403 flags
.hybridization
++;
11404 pline("You now have the hardmoder hybrid race.");
11408 if (!flags
.hybridstunfish
) {
11410 flags
.hybridstunfish
= TRUE
;
11411 flags
.hybridization
++;
11412 pline("You now have the stunned-like-a-fish hybrid race.");
11416 if (!flags
.hybridkillfiller
) {
11418 flags
.hybridkillfiller
= TRUE
;
11419 flags
.hybridization
++;
11420 pline("You now have the killfiller hybrid race.");
11424 if (!flags
.hybridbadstatter
) {
11426 flags
.hybridbadstatter
= TRUE
;
11427 flags
.hybridization
++;
11428 pline("You now have the badstatter hybrid race.");
11432 if (!flags
.hybriddroughter
) {
11434 flags
.hybriddroughter
= TRUE
;
11435 flags
.hybridization
++;
11436 pline("You now have the droughter hybrid race.");
11440 if (!flags
.hybridvanillaoid
) {
11442 flags
.hybridvanillaoid
= TRUE
;
11443 flags
.hybridization
++;
11444 pline("You now have the vanillaoid hybrid race.");
11448 } /* end switch case */
11460 u
.temprecursion
= 0;
11461 u
.temprecursiontime
= 0;
11462 u
.demagoguerecursion
= 0;
11463 u
.demagoguerecursiontime
= 0;
11464 u
.oldrecursionrole
= -1;
11465 u
.oldrecursionrace
= -1;
11467 boolean waspolyd
= Upolyd
;
11468 int polymonnum
= u
.umonnum
;
11472 flags
.initrole
= randrole();
11473 flags
.initrace
= randrace(flags
.initrole
);
11474 urole
= roles
[flags
.initrole
];
11475 urace
= races
[flags
.initrace
];
11477 pline("You suddenly feel like a completely different person!");
11478 pline("You're a %s %s now!", urace
.noun
, (flags
.female
&& urole
.name
.f
) ? urole
.name
.f
: urole
.name
.m
);
11480 } else if (!rn2(2)) {
11482 flags
.initrole
= randrole();
11483 urole
= roles
[flags
.initrole
];
11485 pline("You suddenly feel like you have a different profession!");
11486 pline("You're a %s now!", (flags
.female
&& urole
.name
.f
) ? urole
.name
.f
: urole
.name
.m
);
11490 flags
.initrace
= randrace(flags
.initrole
);
11491 urace
= races
[flags
.initrace
];
11493 pline("You suddenly feel like your genes got exchanged!");
11494 pline("You're a %s now!", urace
.noun
);
11498 /* set it all up properly... this is such a pain in the butt --Amy */
11500 u
.umonnum
= u
.umonster
= (flags
.female
&& urole
.femalenum
!= NON_PM
) ? urole
.femalenum
: urole
.malenum
;
11505 u
.umonnum
= polymonnum
;
11509 if (Race_if(PM_UNGENOMOLD
) && !Upolyd
) polyself(FALSE
);
11515 rolerecursioneffect()
11517 u
.temprecursion
= 0;
11518 u
.temprecursiontime
= 0;
11519 u
.demagoguerecursion
= 0;
11520 u
.demagoguerecursiontime
= 0;
11521 u
.oldrecursionrole
= -1;
11522 u
.oldrecursionrace
= -1;
11524 flags
.initrole
= randrole();
11525 urole
= roles
[flags
.initrole
];
11533 greenslimetransformation()
11535 u
.temprecursion
= 0;
11536 u
.temprecursiontime
= 0;
11537 u
.demagoguerecursion
= 0;
11538 u
.demagoguerecursiontime
= 0;
11539 u
.oldrecursionrole
= -1;
11540 u
.oldrecursionrace
= -1;
11542 flags
.initrace
= str2race("Sli");
11543 urace
= races
[flags
.initrace
];
11551 bindertransformation()
11553 u
.temprecursion
= 0;
11554 u
.temprecursiontime
= 0;
11555 u
.demagoguerecursion
= 0;
11556 u
.demagoguerecursiontime
= 0;
11557 u
.oldrecursionrole
= -1;
11558 u
.oldrecursionrace
= -1;
11560 flags
.initrole
= str2role("Bin");
11561 urole
= roles
[flags
.initrole
];
11569 feministtransformation()
11571 u
.temprecursion
= 0;
11572 u
.temprecursiontime
= 0;
11573 u
.demagoguerecursion
= 0;
11574 u
.demagoguerecursiontime
= 0;
11575 u
.oldrecursionrole
= -1;
11576 u
.oldrecursionrace
= -1;
11578 flags
.initrole
= str2role("Fem");
11579 urole
= roles
[flags
.initrole
];
11587 temprecursioneffect()
11589 u
.temprecursiontime
= rnz(2500 + rnd(5000));
11590 u
.temprecursion
= 1;
11591 u
.demagoguerecursion
= 0;
11592 u
.demagoguerecursiontime
= 0;
11596 u
.oldrecursionrole
= flags
.initrole
;
11597 u
.oldrecursionrace
= flags
.initrace
;
11598 flags
.initrole
= randrole();
11599 flags
.initrace
= randrace(flags
.initrole
);
11600 urole
= roles
[flags
.initrole
];
11601 urace
= races
[flags
.initrace
];
11603 pline("You temporarily feel like someone else!");
11604 pline("You're temporarily a %s %s now!", urace
.noun
, (flags
.female
&& urole
.name
.f
) ? urole
.name
.f
: urole
.name
.m
);
11606 } else if (!rn2(2)) {
11608 u
.oldrecursionrole
= flags
.initrole
;
11609 u
.oldrecursionrace
= -1;
11610 flags
.initrole
= randrole();
11611 urole
= roles
[flags
.initrole
];
11613 pline("You suddenly feel like trying another profession for a while!");
11614 pline("You're temporarily a %s now!", (flags
.female
&& urole
.name
.f
) ? urole
.name
.f
: urole
.name
.m
);
11618 u
.oldrecursionrace
= flags
.initrace
;
11619 u
.oldrecursionrole
= -1;
11620 flags
.initrace
= randrace(flags
.initrole
);
11621 urace
= races
[flags
.initrace
];
11623 pline("You suddenly feel a genetic injection!");
11624 pline("You're temporarily a %s now!", urace
.noun
);
11630 if (Race_if(PM_UNGENOMOLD
) && !Upolyd
) polyself(FALSE
);
11636 climrecursioneffect()
11638 if (u
.temprecursion
) return;
11639 u
.demagoguerecursion
= 0;
11640 u
.demagoguerecursiontime
= 0;
11642 u
.temprecursiontime
= 1000;
11643 u
.temprecursion
= 1;
11645 u
.oldrecursionrace
= flags
.initrace
;
11646 u
.oldrecursionrole
= -1;
11647 flags
.initrace
= randrace(flags
.initrole
);
11648 urace
= races
[flags
.initrace
];
11649 pline("You suddenly feel a genetic injection!");
11650 pline("You're temporarily a %s now!", urace
.noun
);
11654 if (Race_if(PM_UNGENOMOLD
) && !Upolyd
) polyself(FALSE
);
11660 demagoguerecursioneffect()
11662 u
.demagoguerecursiontime
= rnz(250);
11663 u
.demagoguerecursion
= 1;
11665 u
.oldrecursionrole
= flags
.initrole
;
11666 u
.oldrecursionrace
= -1;
11667 flags
.initrole
= randrole();
11668 urole
= roles
[flags
.initrole
];
11670 pline("You turn into a %s!", (flags
.female
&& urole
.name
.f
) ? urole
.name
.f
: urole
.name
.m
);
11674 if (Race_if(PM_UNGENOMOLD
) && !Upolyd
) polyself(FALSE
);
11680 rigid_role_checks()
11682 /* Some roles are limited to a single race, alignment, or gender and
11683 * calling this routine prior to XXX_player_selection() will help
11684 * prevent an extraneous prompt that actually doesn't allow
11685 * you to choose anything further. Note the use of PICK_RIGID which
11686 * causes the pick_XX() routine to return a value only if there is one
11687 * single possible selection, otherwise it returns ROLE_NONE.
11690 if (flags
.initrole
== ROLE_RANDOM
) {
11691 /* If the role was explicitly specified as ROLE_RANDOM
11692 * via -uXXXX-@ then choose the role in here to narrow down
11693 * later choices. Pick a random role in this case.
11695 flags
.initrole
= pick_role(flags
.initrace
, flags
.initgend
,
11696 flags
.initalign
, PICK_RANDOM
);
11697 if (flags
.initrole
< 0)
11698 flags
.initrole
= randrole();
11700 if (flags
.initrole
!= ROLE_NONE
) {
11701 if (flags
.initrace
== ROLE_NONE
)
11702 flags
.initrace
= pick_race(flags
.initrole
, flags
.initgend
,
11703 flags
.initalign
, PICK_RIGID
);
11704 if (flags
.initalign
== ROLE_NONE
)
11705 flags
.initalign
= pick_align(flags
.initrole
, flags
.initrace
,
11706 flags
.initgend
, PICK_RIGID
);
11707 if (flags
.initgend
== ROLE_NONE
)
11708 flags
.initgend
= pick_gend(flags
.initrole
, flags
.initrace
,
11709 flags
.initalign
, PICK_RIGID
);
11719 STATIC_VAR
char pa
[NUM_BP
], post_attribs
;
11722 promptsep(buf
, num_post_attribs
)
11724 int num_post_attribs
;
11726 const char *conj
= "and ";
11727 if (num_post_attribs
> 1
11728 && post_attribs
< num_post_attribs
&& post_attribs
> 1)
11732 if (!post_attribs
&& num_post_attribs
> 1) strcat(buf
, conj
);
11737 role_gendercount(rolenum
)
11741 if (validrole(rolenum
)) {
11742 if (roles
[rolenum
].allow
& ROLE_MALE
) ++gendcount
;
11743 if (roles
[rolenum
].allow
& ROLE_FEMALE
) ++gendcount
;
11744 if (roles
[rolenum
].allow
& ROLE_NEUTER
) ++gendcount
;
11750 race_alignmentcount(racenum
)
11753 int aligncount
= 0;
11754 if (racenum
!= ROLE_NONE
&& racenum
!= ROLE_RANDOM
) {
11755 if (races
[racenum
].allow
& ROLE_CHAOTIC
) ++aligncount
;
11756 if (races
[racenum
].allow
& ROLE_LAWFUL
) ++aligncount
;
11757 if (races
[racenum
].allow
& ROLE_NEUTRAL
) ++aligncount
;
11763 root_plselection_prompt(suppliedbuf
, buflen
, rolenum
, racenum
, gendnum
, alignnum
)
11765 int buflen
, rolenum
, racenum
, gendnum
, alignnum
;
11767 int k
, gendercount
= 0, aligncount
= 0;
11769 static char err_ret
[] = " character's";
11770 boolean donefirst
= FALSE
;
11772 if (!suppliedbuf
|| buflen
< 1) return err_ret
;
11774 /* initialize these static variables each time this is called */
11776 for (k
=0; k
< NUM_BP
; ++k
)
11779 *suppliedbuf
= '\0';
11781 /* How many alignments are allowed for the desired race? */
11782 if (racenum
!= ROLE_NONE
&& racenum
!= ROLE_RANDOM
)
11783 aligncount
= race_alignmentcount(racenum
);
11785 if (alignnum
!= ROLE_NONE
&& alignnum
!= ROLE_RANDOM
) {
11786 /* if race specified, and multiple choice of alignments for it */
11787 if ((racenum
>= 0) && (aligncount
> 1)) {
11788 if (donefirst
) strcat(buf
, " ");
11789 strcat(buf
, aligns
[alignnum
].adj
);
11792 if (donefirst
) strcat(buf
, " ");
11793 strcat(buf
, aligns
[alignnum
].adj
);
11797 /* if alignment not specified, but race is specified
11798 and only one choice of alignment for that race then
11799 don't include it in the later list */
11800 if ((((racenum
!= ROLE_NONE
&& racenum
!= ROLE_RANDOM
) &&
11801 ok_race(rolenum
, racenum
, gendnum
, alignnum
))
11802 && (aligncount
> 1))
11803 || (racenum
== ROLE_NONE
|| racenum
== ROLE_RANDOM
)) {
11808 /* <your lawful> */
11810 /* How many genders are allowed for the desired role? */
11811 if (validrole(rolenum
))
11812 gendercount
= role_gendercount(rolenum
);
11814 if (gendnum
!= ROLE_NONE
&& gendnum
!= ROLE_RANDOM
) {
11815 if (validrole(rolenum
)) {
11816 /* if role specified, and multiple choice of genders for it,
11817 and name of role itself does not distinguish gender */
11818 if ((rolenum
!= ROLE_NONE
) && (gendercount
> 1)
11819 && !roles
[rolenum
].name
.f
) {
11820 if (donefirst
) strcat(buf
, " ");
11821 strcat(buf
, genders
[gendnum
].adj
);
11825 if (donefirst
) strcat(buf
, " ");
11826 strcat(buf
, genders
[gendnum
].adj
);
11830 /* if gender not specified, but role is specified
11831 and only one choice of gender then
11832 don't include it in the later list */
11833 if ((validrole(rolenum
) && (gendercount
> 1)) || !validrole(rolenum
)) {
11838 /* <your lawful female> */
11840 if (racenum
!= ROLE_NONE
&& racenum
!= ROLE_RANDOM
) {
11841 if (validrole(rolenum
) && ok_race(rolenum
, racenum
, gendnum
, alignnum
)) {
11842 if (donefirst
) strcat(buf
, " ");
11843 strcat(buf
, (rolenum
== ROLE_NONE
) ?
11844 races
[racenum
].noun
:
11845 races
[racenum
].adj
);
11847 } else if (!validrole(rolenum
)) {
11848 if (donefirst
) strcat(buf
, " ");
11849 strcat(buf
, races
[racenum
].noun
);
11859 /* <your lawful female gnomish> || <your lawful female gnome> */
11861 if (validrole(rolenum
)) {
11862 if (donefirst
) strcat(buf
, " ");
11863 if (gendnum
!= ROLE_NONE
) {
11864 if (gendnum
== 1 && roles
[rolenum
].name
.f
)
11865 strcat(buf
, roles
[rolenum
].name
.f
);
11867 strcat(buf
, roles
[rolenum
].name
.m
);
11869 if (roles
[rolenum
].name
.f
) {
11870 strcat(buf
, roles
[rolenum
].name
.m
);
11872 strcat(buf
, roles
[rolenum
].name
.f
);
11874 strcat(buf
, roles
[rolenum
].name
.m
);
11877 } else if (rolenum
== ROLE_NONE
) {
11882 if ((racenum
== ROLE_NONE
|| racenum
== ROLE_RANDOM
) && !validrole(rolenum
)) {
11883 if (donefirst
) strcat(buf
, " ");
11884 strcat(buf
, "character");
11887 /* <your lawful female gnomish cavewoman> || <your lawful female gnome>
11888 * || <your lawful female character>
11890 if (buflen
> (int) (strlen(buf
) + 1)) {
11891 strcpy(suppliedbuf
, buf
);
11892 return suppliedbuf
;
11898 build_plselection_prompt(buf
, buflen
, rolenum
, racenum
, gendnum
, alignnum
)
11900 int buflen
, rolenum
, racenum
, gendnum
, alignnum
;
11902 const char *defprompt
= "Shall I pick a character for you? [ynq] ";
11903 int num_post_attribs
= 0;
11904 char tmpbuf
[BUFSZ
];
11906 if (buflen
< QBUFSZ
)
11907 return (char *)defprompt
;
11909 strcpy(tmpbuf
, "Shall I pick ");
11910 if (racenum
!= ROLE_NONE
|| validrole(rolenum
))
11911 strcat(tmpbuf
, "your ");
11913 strcat(tmpbuf
, "a ");
11917 (void) root_plselection_prompt(eos(tmpbuf
), buflen
- strlen(tmpbuf
),
11918 rolenum
, racenum
, gendnum
, alignnum
);
11919 sprintf(buf
, "%s", s_suffix(tmpbuf
));
11921 /* buf should now be:
11922 * < your lawful female gnomish cavewoman's> || <your lawful female gnome's>
11923 * || <your lawful female character's>
11925 * Now append the post attributes to it
11928 num_post_attribs
= post_attribs
;
11929 if (post_attribs
) {
11931 (void) promptsep(eos(buf
), num_post_attribs
);
11932 strcat(buf
, "race");
11935 (void) promptsep(eos(buf
), num_post_attribs
);
11936 strcat(buf
, "role");
11939 (void) promptsep(eos(buf
), num_post_attribs
);
11940 strcat(buf
, "gender");
11942 if (pa
[BP_ALIGN
]) {
11943 (void) promptsep(eos(buf
), num_post_attribs
);
11944 strcat(buf
, "alignment");
11947 strcat(buf
, " for you? [ynq] ");
11963 /* Look for tokens delimited by '-' */
11964 if ((eptr
= index(plname
, '-')) != (char *) 0)
11967 /* Isolate the next token */
11969 if ((eptr
= index(sptr
, '-')) != (char *)0)
11972 /* Try to match it to something */
11973 if ((i
= str2role(sptr
)) != ROLE_NONE
)
11974 flags
.initrole
= i
;
11975 else if ((i
= str2race(sptr
)) != ROLE_NONE
)
11976 flags
.initrace
= i
;
11977 else if ((i
= str2gend(sptr
)) != ROLE_NONE
)
11978 flags
.initgend
= i
;
11979 else if ((i
= str2align(sptr
)) != ROLE_NONE
)
11980 flags
.initalign
= i
;
11987 /* commas in the plname confuse the record file, convert to spaces */
11988 for (sptr
= plname
; *sptr
; sptr
++) {
11989 if (*sptr
== ',') *sptr
= ' ';
11994 * Special setup modifications here:
11996 * Unfortunately, this is going to have to be done
11997 * on each newgame or restore, because you lose the permonst mods
11998 * across a save/restore. :-)
12000 * 1 - The Rogue Leader is the Tourist Nemesis.
12001 * 2 - Priests start with a random alignment - convert the leader and
12003 * 3 - Elves can have one of two different leaders, but can't work it
12004 * out here because it requires hacking the level file data (see
12007 * This code also replaces quest_init().
12014 /* Strip the role letter out of the player name.
12015 * This is included for backwards compatibility.
12019 /* Check for a valid role. Try flags.initrole first. */
12020 if (!validrole(flags
.initrole
)) {
12021 /* Try the player letter second */
12022 if ((flags
.initrole
= str2role(pl_character
)) < 0)
12023 /* None specified; pick a random role */
12024 flags
.initrole
= randrole();
12027 /* We now have a valid role index. Copy the role name back. */
12028 /* This should become OBSOLETE */
12029 strcpy(pl_character
, roles
[flags
.initrole
].name
.m
);
12030 pl_character
[PL_CSIZ
-1] = '\0';
12032 /* Check for a valid race */
12033 if (!validrace(flags
.initrole
, flags
.initrace
))
12034 flags
.initrace
= randrace(flags
.initrole
);
12036 /* Check for a valid gender. If new game, check both initgend
12037 * and female. On restore, assume flags.female is correct. */
12038 if (flags
.pantheon
== -1) { /* new game */
12039 if (!validgend(flags
.initrole
, flags
.initrace
, flags
.female
))
12040 flags
.female
= !flags
.female
;
12042 if (!validgend(flags
.initrole
, flags
.initrace
, flags
.initgend
))
12043 /* Note that there is no way to check for an unspecified gender. */
12044 flags
.initgend
= flags
.female
;
12046 /* Check for a valid alignment */
12047 if (!validalign(flags
.initrole
, flags
.initrace
, flags
.initalign
))
12048 /* Pick a random alignment */
12049 flags
.initalign
= randalign(flags
.initrole
, flags
.initrace
);
12050 alignmnt
= aligns
[flags
.initalign
].value
;
12052 /* Initialize urole and urace */
12053 urole
= roles
[flags
.initrole
];
12054 urace
= races
[flags
.initrace
];
12055 ustartrole
= roles
[flags
.startingrole
];
12056 ustartrace
= races
[flags
.startingrace
];
12058 /* Fix up the quest leader */
12059 if (urole
.ldrnum
!= NON_PM
) {
12060 mons
[urole
.ldrnum
].msound
= MS_LEADER
;
12061 mons
[urole
.ldrnum
].mflags2
|= (M2_PEACEFUL
);
12062 mons
[urole
.ldrnum
].mflags3
|= M3_CLOSE
;
12063 mons
[urole
.ldrnum
].maligntyp
= alignmnt
* 3;
12066 /* Fix up the quest guardians */
12067 if (urole
.guardnum
!= NON_PM
) {
12068 mons
[urole
.guardnum
].mflags2
|= (M2_PEACEFUL
);
12069 mons
[urole
.guardnum
].maligntyp
= alignmnt
* 3;
12072 /* Fix up the quest nemesis */
12073 if (urole
.neminum
!= NON_PM
) {
12074 mons
[urole
.neminum
].msound
= MS_NEMESIS
;
12075 mons
[urole
.neminum
].mflags2
&= ~(M2_PEACEFUL
);
12076 mons
[urole
.neminum
].mflags2
|= (M2_NASTY
|M2_STALK
|M2_HOSTILE
);
12077 mons
[urole
.neminum
].mflags3
|= M3_WANTSARTI
| M3_WAITFORU
;
12080 /* Fix up the god names */
12081 if (flags
.pantheon
== -1) { /* new game */
12083 flags
.pantheon
= flags
.initrole
; /* use own gods */
12084 while (!roles
[flags
.pantheon
].lgod
) /* unless they're missing */
12085 flags
.pantheon
= randrole();
12087 if (!urole
.lgod
&& !isheretic
) {
12088 urole
.lgod
= roles
[flags
.pantheon
].lgod
;
12089 urole
.ngod
= roles
[flags
.pantheon
].ngod
;
12090 urole
.cgod
= roles
[flags
.pantheon
].cgod
;
12092 /*if (Race_if(PM_HERETIC) ) {
12093 urole.lgod = roles[u.uhereticgodlawful].lgod;
12094 urole.ngod = roles[u.uhereticgodneutral].ngod;
12095 urole.cgod = roles[u.uhereticgodchaotic].cgod;
12097 u.uhereticlawfulnew = u.uhereticneutralnew = u.uhereticchaoticnew = 0;
12099 if (!rn2(3)) { urole.lgod = hereticgods[rn2(SIZE(hereticgods))]; u.uhereticlawfulnew = 1; }
12100 if (!rn2(3)) { urole.ngod = hereticgods[rn2(SIZE(hereticgods))]; u.uhereticneutralnew = 1; }
12101 if (!rn2(3)) { urole.cgod = hereticgods[rn2(SIZE(hereticgods))]; u.uhereticchaoticnew = 1; }
12104 #if 0 /* Now in polyself.c, init_uasmon() */
12105 /* Fix up infravision */
12106 if (mons
[urace
.malenum
].mflags3
& M3_INFRAVISION
) {
12107 /* although an infravision intrinsic is possible, infravision
12108 * is purely a property of the physical race. This means that we
12109 * must put the infravision flag in the player's current race
12110 * (either that or have separate permonst entries for
12111 * elven/non-elven members of each class). The side effect is that
12112 * all NPCs of that class will have (probably bogus) infravision,
12113 * but since infravision has no effect for NPCs anyway we can
12116 mons
[urole
.malenum
].mflags3
|= M3_INFRAVISION
;
12117 if (urole
.femalenum
!= NON_PM
)
12118 mons
[urole
.femalenum
].mflags3
|= M3_INFRAVISION
;
12122 /* Artifacts are fixed in hack_artifacts() */
12130 struct monst
*mtmp
;
12132 if (isevilvariant
) return("Palim-Palim"); /* idea by bhaak */
12134 if (issoviet
|| (youmonst
.data
->msound
== MS_SOVIET
)) {
12135 if (mtmp
&& mtmp
->data
== &mons
[PM_SHOPKEEPER
]) return("O, kakoy slabak");
12136 else return("Smekh novichok");
12138 if (youmonst
.data
->msound
== MS_JAPANESE
) {
12139 if (mtmp
&& mtmp
->data
== &mons
[PM_SHOPKEEPER
]) return("Irasshaimase");
12140 else return("Konnichi wa");
12143 switch (Role_switch
) {
12147 return ("Salutations"); /* Olde English */
12151 return (mtmp
&& mtmp
->data
== &mons
[PM_SHOPKEEPER
] ?
12152 "Irasshaimase" : "Konnichi wa"); /* Japanese */
12157 return ("Aloha"); /* Hawaiian */
12159 case PM_VANILLA_VALK
:
12162 mtmp
&& mtmp
->data
== &mons
[PM_MAIL_DAEMON
] ? "Hallo" :
12164 "Velkommen"); /* Norse */
12173 if (isevilvariant
) return("Buh-Bye");
12175 if (issoviet
|| (youmonst
.data
->msound
== MS_SOVIET
)) {
12176 return("Proshchay, neudachnik");
12178 if (youmonst
.data
->msound
== MS_JAPANESE
) {
12179 return("Sayonara");
12182 switch (Role_switch
) {
12186 return ("Fare thee well"); /* Olde English */
12190 return ("Sayonara"); /* Japanese */
12192 return ("Aloha"); /* Hawaiian */
12194 case PM_VANILLA_VALK
:
12195 return ("Farvel"); /* Norse */
12197 return ("Goodbye");