#if defined(macintosh)
#include <types.h>
#else
#include <sys/types.h>
#endif
#include <stdio.h>
#include <time.h>
#include "merc.h"
#include "magic.h"
#include "interp.h"
/*
* LSA: Level-spell-all: when you can get all spells & skills
*
* Adjusted to make it easier to change levels through simple editing
* of MAX_LEVEL/LEVEL_IMMORTAL in merc.h.
* --Jouster
*/
#define LSA LEVEL_IMMORTAL
/*
* Attribute bonus tables.
*/
const struct str_app_type str_app [26] =
{
{ -5, -4, 0, 0 }, /* 0 */
{ -5, -4, 3, 1 }, /* 1 */
{ -3, -2, 3, 2 },
{ -3, -1, 10, 3 }, /* 3 */
{ -2, -1, 25, 4 },
{ -2, -1, 55, 5 }, /* 5 */
{ -1, 0, 80, 6 },
{ -1, 0, 90, 7 },
{ 0, 0, 100, 8 },
{ 0, 0, 100, 9 },
{ 0, 0, 115, 10 }, /* 10 */
{ 0, 0, 115, 11 },
{ 0, 0, 130, 12 },
{ 0, 0, 130, 13 }, /* 13 */
{ 0, 1, 140, 14 },
{ 1, 1, 150, 15 }, /* 15 */
{ 1, 2, 165, 16 },
{ 2, 3, 180, 22 },
{ 2, 3, 200, 25 }, /* 18 */
{ 3, 4, 225, 30 },
{ 3, 5, 250, 35 }, /* 20 */
{ 4, 6, 300, 40 },
{ 4, 6, 350, 45 },
{ 5, 7, 400, 50 },
{ 5, 8, 450, 55 },
{ 6, 9, 500, 60 } /* 25 */
};
const struct int_app_type int_app [26] =
{
{ 3 }, /* 0 */
{ 5 }, /* 1 */
{ 7 },
{ 8 }, /* 3 */
{ 9 },
{ 10 }, /* 5 */
{ 11 },
{ 12 },
{ 13 },
{ 15 },
{ 17 }, /* 10 */
{ 19 },
{ 22 },
{ 25 },
{ 28 },
{ 31 }, /* 15 */
{ 34 },
{ 37 },
{ 40 }, /* 18 */
{ 44 },
{ 49 }, /* 20 */
{ 55 },
{ 60 },
{ 70 },
{ 80 },
{ 85 } /* 25 */
};
const struct wis_app_type wis_app [26] =
{
{ 0 }, /* 0 */
{ 0 }, /* 1 */
{ 0 },
{ 0 }, /* 3 */
{ 0 },
{ 1 }, /* 5 */
{ 1 },
{ 1 },
{ 1 },
{ 1 },
{ 1 }, /* 10 */
{ 1 },
{ 1 },
{ 1 },
{ 1 },
{ 2 }, /* 15 */
{ 2 },
{ 2 },
{ 3 }, /* 18 */
{ 3 },
{ 3 }, /* 20 */
{ 4 },
{ 4 },
{ 5 },
{ 5 },
{ 6 } /* 25 */
};
const struct dex_app_type dex_app [26] =
{
{ 60 }, /* 0 */
{ 50 }, /* 1 */
{ 50 },
{ 40 },
{ 30 },
{ 20 }, /* 5 */
{ 10 },
{ 0 },
{ 0 },
{ 0 },
{ 0 }, /* 10 */
{ 0 },
{ -10 },
{ -20 },
{ -50 },
{ - 110 }, /* 15 */
{ - 115 },
{ - 120 },
{ - 130 },
{ - 140 },
{ - 150 }, /* 20 */
{ - 160 },
{ - 175 },
{ - 190 },
{ -255 },
{ -280 } /* 25 */
};
const struct con_app_type con_app [26] =
{
{ -4, 20 }, /* 0 */
{ -3, 25 }, /* 1 */
{ -2, 30 },
{ -2, 35 }, /* 3 */
{ -1, 40 },
{ -1, 45 }, /* 5 */
{ -1, 50 },
{ 0, 55 },
{ 0, 60 },
{ 0, 65 },
{ 0, 70 }, /* 10 */
{ 0, 75 },
{ 0, 80 },
{ 0, 85 },
{ 0, 88 },
{ 1, 90 }, /* 15 */
{ 2, 95 },
{ 2, 97 },
{ 3, 99 }, /* 18 */
{ 3, 99 },
{ 5, 99 }, /* 20 */
{ 7, 99 },
{ 9, 99 },
{ 11, 99 },
{ 13, 99 },
{ 15, 99 } /* 25 */
};
/*
* Liquid properties.
* Used in world.obj.
* Be sure MAX_LIQUID in merc.h matches
* the number of entries below.
*/
const struct liq_type liq_table [] =
{
/* name color proof, full, thirst, food, ssize */
{ "water", "clear", { 0, 1, 10, 0, 16 } },
{ "beer", "amber", { 12, 1, 8, 1, 12 } },
{ "red wine", "burgundy", { 30, 1, 8, 1, 5 } },
{ "ale", "brown", { 15, 1, 8, 1, 12 } },
{ "dark ale", "dark", { 16, 1, 8, 1, 12 } },
{ "whisky", "golden", { 120, 1, 5, 0, 2 } },
{ "lemonade", "pink", { 0, 1, 9, 2, 12 } },
{ "firebreather", "boiling", { 190, 0, 4, 0, 2 } },
{ "local specialty", "clear", { 151, 1, 3, 0, 2 } },
{ "slime mold juice", "green", { 0, 2, -8, 1, 2 } },
{ "milk", "white", { 0, 2, 9, 3, 12 } },
{ "tea", "tan", { 0, 1, 8, 0, 6 } },
{ "coffee", "black", { 0, 1, 8, 0, 6 } },
{ "blood", "red", { 0, 2, -1, 2, 6 } },
{ "salt water", "clear", { 0, 1, -2, 0, 1 } },
{ "coke", "brown", { 0, 2, 9, 2, 12 } },
{ "root beer", "brown", { 0, 2, 9, 2, 12 } },
{ "elvish wine", "green", { 35, 2, 8, 1, 5 } },
{ "white wine", "golden", { 28, 1, 8, 1, 5 } },
{ "champagne", "golden", { 32, 1, 8, 1, 5 } },
{ "mead", "honey-colored",{ 34, 2, 8, 2, 12 } },
{ "rose wine", "pink", { 26, 1, 8, 1, 5 } },
{ "benedictine wine", "burgundy", { 40, 1, 8, 1, 5 } },
{ "vodka", "clear", { 130, 1, 5, 0, 2 } },
{ "cranberry juice", "red", { 0, 1, 9, 2, 12 } },
{ "orange juice", "orange", { 0, 2, 9, 3, 12 } },
{ "absinthe", "green", { 200, 1, 4, 0, 2 } },
{ "brandy", "golden", { 80, 1, 5, 0, 4 } },
{ "aquavit", "clear", { 140, 1, 5, 0, 2 } },
{ "schnapps", "clear", { 90, 1, 5, 0, 2 } },
{ "icewine", "purple", { 50, 2, 6, 1, 5 } },
{ "amontillado", "burgundy", { 35, 2, 8, 1, 5 } },
{ "sherry", "red", { 38, 2, 7, 1, 5 } },
{ "framboise", "red", { 50, 1, 7, 1, 5 } },
{ "rum", "amber", { 151, 1, 4, 0, 2 } },
{ "cordial", "clear", { 100, 1, 5, 0, 2 } },
{ "dr pepper", "brown", { 0, 2, 9, 2, 12 } },
{ NULL, NULL, { 0, 0, 0, 0, 0 } }
};
/*
* The skill and spell table.
* Slot numbers must never be changed as they appear in #OBJECTS sections.
*/
#define SLOT(n) n
const struct skill_type skill_table [MAX_SKILL] =
{
/*
* Magic spells.
*/
/*
{
"NAME",
{ SKILL_LEVELS 1st TIER,
SKILL_LEVELS 2nd TIER },
{ DIFFICULTY 1st TIER,
DIFFICULTY 2nd TIER },
SPELL_FUN, TARGET, MIN_POSITION,
GSN, SOCKET, SLOT(#), MIN_MANA, BEATS,
"DAMAGE NOUN", "OFF MESSAGE", "OFF MESSAGE (OBJ)"
}
NAME Name of Spell/Skill
SKILL_LEVELS Levels to obtain spell/skill per class
DIFFICULTY Spells: multiplier for base mana
Skills: charge for gaining skill
SPELL_FUN Routine to call for spells
TARGET Legal targets
MIN_POSTITION Position for caster/user
GSN gsn for skills and some spells
SOCKET Can spell be cast on person from same socket
(to limit multiplaying)
SLOT(#) A unique slot number for spells
MIN_MANA Base mana for spells (multiplied by DIFFICULTY)
BEATS Waiting time after use
DAMAGE NOUN Damage Message
OFF MESSAGE Wear off message
OFF MESSAGE (OBJ) Wear off message for objects
*/
{
"reserved",
{ MAX_LEVEL + 1, MAX_LEVEL + 1, MAX_LEVEL + 1,
MAX_LEVEL + 1, MAX_LEVEL + 1, MAX_LEVEL + 1,
MAX_LEVEL + 1, MAX_LEVEL + 1, MAX_LEVEL + 1,
MAX_LEVEL + 1, MAX_LEVEL + 1, MAX_LEVEL + 1,
MAX_LEVEL + 1, MAX_LEVEL + 1, MAX_LEVEL + 1,
MAX_LEVEL + 1, MAX_LEVEL + 1, MAX_LEVEL + 1 },
{ 99, 99, 99, 99, 99, 99, 99, 99,
99, 99, 99, 99, 99, 99, 99, 99 },
0, TAR_IGNORE, POS_STANDING,
NULL, TRUE, SLOT( 0), 0, 0,
"", "", ""
},
{
"acid blast",
{ 52, LSA, LSA, LSA, LSA, LSA, LSA, LSA, LSA,
45, LSA, LSA, LSA, LSA, LSA, 95, LSA, LSA},
{ 1, 1, 2, 2, 2, 1, 1, 2, 1,
1, 1, 2, 2, 2, 1, 1, 2, 1 },
spell_acid_blast, TAR_CHAR_OFFENSIVE, POS_FIGHTING,
NULL, TRUE, SLOT(70), 20, 12,
"acid blast", "!Acid Blast!", ""
},
{
"animate",
{ LSA, LSA, LSA, LSA, LSA, LSA, 45, LSA, LSA,
LSA, LSA, LSA, LSA, LSA, LSA, 35, LSA, LSA },
{ 1, 1, 2, 2, 2, 1, 1, 2, 1,
1, 1, 2, 2, 2, 1, 1, 2, 1 },
spell_animate, TAR_OBJ_INV, POS_STANDING,
NULL, TRUE, SLOT(239), 20, 12,
"", "!Animate!", ""
},
{
"armor",
{ 13, 2, LSA, LSA, LSA, 23, LSA, LSA, LSA,
3, 1, LSA, LSA, LSA, 13, LSA, LSA, LSA },
{ 1, 1, 2, 2, 2, 1, 2, 2, 1,
1, 1, 2, 2, 2, 1, 2, 2, 1 },
spell_armor, TAR_CHAR_DEFENSIVE, POS_STANDING,
NULL, FALSE, SLOT( 1), 5, 12,
"", "You feel less armored.", ""
},
{
"blast of water",
{ LSA, LSA, LSA, LSA, LSA, 61, LSA, LSA, LSA,
LSA, LSA, LSA, LSA, LSA, 51, LSA, LSA, LSA },
{ 1, 1, 2, 2, 2, 1, 1, 2, 1,
1, 1, 2, 2, 2, 1, 1, 2, 1 },
spell_blast_of_water, TAR_CHAR_OFFENSIVE, POS_FIGHTING,
NULL, TRUE, SLOT(306), 20, 12,
"blast of water", "!Blast of Water!", ""
},
{
"bless",
{ LSA, 13, LSA, LSA, LSA, LSA, LSA, LSA, LSA,
LSA, 3, LSA, LSA, 55, LSA, LSA, 26, LSA },
{ 1, 1, 2, 2, 2, 1, 2, 2, 1,
1, 1, 2, 2, 2, 1, 2, 2, 1 },
spell_bless, TAR_OBJ_CHAR_DEF, POS_STANDING,
NULL, FALSE, SLOT( 3), 5, 12,
"", "You feel less righteous.",
"$p's holy aura fades."
},
{
"blindness",
{ 24, 15, LSA, LSA, 65, 14, 34, LSA, LSA,
14, 5, LSA, LSA, 55, 4, 24, LSA, LSA },
{ 1, 1, 2, 2, 2, 1, 1, 2, 1,
1, 1, 2, 2, 2, 1, 1, 2, 1 },
spell_blindness, TAR_CHAR_OFFENSIVE, POS_FIGHTING,
&gsn_blindness, TRUE, SLOT( 4), 5, 12,
"", "You can see again.", ""
},
{
"burning hands",
{ 13, LSA, LSA, LSA, LSA, 23, 49, LSA, LSA,
3, LSA, LSA, LSA, 63, 13, 39, LSA, LSA },
{ 1, 1, 2, 2, 2, 1, 1, 2, 1,
1, 1, 2, 2, 2, 1, 1, 2, 1 },
spell_burning_hands, TAR_CHAR_OFFENSIVE, POS_FIGHTING,
NULL, TRUE, SLOT( 5), 15, 12,
"burning hands", "!Burning Hands!", ""
},
{
"call lightning",
{ LSA, LSA, LSA, LSA, 48, 30, LSA, LSA, LSA,
56, LSA, LSA, LSA, 38, 20, LSA, LSA, LSA },
{ 1, 1, 2, 2, 1, 1, 1, 2, 1,
1, 1, 2, 2, 1, 1, 1, 2, 1 },
spell_call_lightning, TAR_IGNORE, POS_FIGHTING,
NULL, TRUE, SLOT( 6), 15, 12,
"lightning bolt", "!Call Lightning!", ""
},
{
"calm",
{ LSA, 32, LSA, LSA, LSA, 68, LSA, LSA, LSA,
LSA, 22, LSA, LSA, LSA, 58, LSA, 46, LSA },
{ 1, 1, 2, 2, 2, 1, 2, 2, 1,
1, 1, 2, 2, 2, 1, 2, 2, 1 },
spell_calm, TAR_IGNORE, POS_FIGHTING,
NULL, TRUE, SLOT(509), 30, 12,
"", "You have lost your peace of mind.", ""
},
{
"cancellation",
{ 51, 51, LSA, LSA, LSA, LSA, LSA, LSA, LSA,
41, 41, LSA, LSA, LSA, 36, LSA, LSA, LSA },
{ 1, 1, 2, 2, 2, 1, 2, 2, 1,
1, 1, 2, 2, 2, 1, 2, 2, 1 },
spell_cancellation, TAR_CHAR_DEFENSIVE, POS_FIGHTING,
NULL, FALSE, SLOT(507), 20, 12,
"" "!cancellation!", ""
},
{
"cause critical",
{ LSA, 45, LSA, LSA, LSA, 87, LSA, LSA, LSA,
LSA, 35, LSA, LSA, LSA, 77, LSA, LSA, LSA },
{ 1, 1, 2, 2, 2, 1, 1, 2, 1,
1, 1, 2, 2, 2, 1, 1, 2, 1 },
spell_cause_critical, TAR_CHAR_OFFENSIVE, POS_FIGHTING,
NULL, TRUE, SLOT(63), 20, 12,
"spell", "!Cause Critical!", ""
},
{
"cause light",
{ LSA, 1, LSA, LSA, LSA, 36, LSA, LSA, LSA,
LSA, 1, LSA, LSA, LSA, 26, LSA, LSA, LSA },
{ 1, 1, 2, 2, 2, 1, 1, 2, 1,
1, 1, 2, 2, 2, 1, 1, 2, 1 },
spell_cause_light, TAR_CHAR_OFFENSIVE, POS_FIGHTING,
NULL, TRUE, SLOT(62), 15, 12,
"spell", "!Cause Light!", ""
},
{
"cause serious",
{ LSA, 23, LSA, LSA, LSA, 59, LSA, LSA, LSA,
LSA, 13, LSA, LSA, LSA, 49, LSA, LSA, LSA },
{ 1, 1, 2, 2, 2, 1, 1, 2, 1,
1, 1, 2, 2, 2, 1, 1, 2, 1 },
spell_cause_serious, TAR_CHAR_OFFENSIVE, POS_FIGHTING,
NULL, TRUE, SLOT(64), 17, 12,
"spell", "!Cause Serious!", ""
},
{
"chain lightning",
{ 66, LSA, LSA, LSA, LSA, LSA, LSA, LSA, LSA,
55, LSA, LSA, LSA, LSA, 50, LSA, LSA, LSA },
{ 1, 1, 2, 2, 2, 1, 1, 2, 1,
1, 1, 2, 2, 2, 1, 1, 2, 1 },
spell_chain_lightning, TAR_CHAR_OFFENSIVE, POS_FIGHTING,
NULL, TRUE, SLOT(500), 25, 12,
"lightning", "!Chain Lightning!", ""
},
{
"change sex",
{ LSA, LSA, LSA, LSA, LSA, LSA, LSA, LSA, LSA,
LSA, LSA, LSA, LSA, LSA, LSA, LSA, LSA, LSA },
{ 1, 1, 2, 2, 2, 1, 1, 2, 1,
1, 1, 2, 2, 2, 1, 1, 2, 1 },
spell_change_sex, TAR_CHAR_DEFENSIVE, POS_FIGHTING,
NULL, TRUE, SLOT(82), 15, 12,
"", "Your body feels familiar again.", ""
},
{
"charm person",
{ 64, LSA, 44, LSA, LSA, 50, 43, LSA, LSA,
54, LSA, 34, LSA, 90, 40, 33, LSA, LSA },
{ 1, 1, 2, 2, 2, 1, 1, 2, 1,
1, 1, 2, 2, 2, 1, 1, 2, 1 },
spell_charm_person, TAR_CHAR_OFFENSIVE, POS_STANDING,
&gsn_charm_person, TRUE, SLOT( 7), 5, 12,
"", "You feel more self-confident.", ""
},
{
"chill touch",
{ 12, LSA, LSA, LSA, LSA, 22, 34, LSA, LSA,
2, LSA, LSA, LSA, 32, 12, 24, LSA, LSA },
{ 1, 1, 2, 2, 2, 1, 1, 2, 1,
1, 1, 2, 2, 2, 1, 1, 2, 1 },
spell_chill_touch, TAR_CHAR_OFFENSIVE, POS_FIGHTING,
NULL, TRUE, SLOT( 8), 15, 12,
"chilling touch", "You feel less cold.", ""
},
{
"colour spray",
{ 32, LSA, LSA, LSA, LSA, LSA, LSA, LSA, LSA,
22, LSA, LSA, LSA, LSA, LSA, 57, LSA, LSA },
{ 1, 1, 2, 2, 2, 1, 1, 2, 1,
1, 1, 2, 2, 2, 1, 1, 2, 1 },
spell_colour_spray, TAR_CHAR_OFFENSIVE, POS_FIGHTING,
NULL, TRUE, SLOT(10), 15, 12,
"colour spray", "!Colour Spray!", ""
},
{
"complete healing",
{ LSA, LSA, LSA, LSA, LSA, LSA, LSA, LSA, LSA,
LSA, 80, LSA, LSA, LSA, LSA, LSA, LSA, LSA },
{ 1, 1, 2, 2, 2, 1, 2, 1, 1,
1, 1, 2, 2, 2, 1, 2, 1, 1 },
spell_complete_healing, TAR_CHAR_DEFENSIVE, POS_STANDING,
NULL, FALSE, SLOT(310), 40, 12,
"", "!Complete Healing!", ""
},
{
"cone of cold",
{ LSA, LSA, LSA, LSA, LSA, 89, LSA, LSA, LSA,
LSA, LSA, LSA, LSA, LSA, 79, LSA, LSA, LSA },
{ 1, 1, 2, 2, 2, 1, 1, 2, 1,
1, 1, 2, 2, 2, 1, 1, 2, 1 },
spell_cone_of_cold, TAR_CHAR_OFFENSIVE, POS_FIGHTING,
NULL, TRUE, SLOT(308), 20, 12,
"cone of cold", "!Cone of Cold!", ""
},
{
"conjure",
{ 85, LSA, LSA, LSA, LSA, LSA, LSA, LSA, LSA,
59, LSA, LSA, LSA, LSA, LSA, LSA, LSA, LSA },
{ 1, 1, 1, 1, 1, 1, 1, 2, 1,
1, 1, 1, 1, 1, 1, 1, 2, 1 },
spell_conjure, TAR_IGNORE, POS_STANDING,
NULL, TRUE, SLOT(280), 100, 12,
"", "!Conjure!", ""
},
{
"continual light",
{ 11, 8, LSA, LSA, 7, 5, LSA, LSA, LSA,
1, 7, LSA, LSA, 1, 4, LSA, LSA, LSA },
{ 1, 1, 2, 2, 1, 1, 2, 2, 1,
1, 1, 2, 2, 1, 1, 2, 2, 1 },
spell_continual_light, TAR_IGNORE, POS_STANDING,
NULL, TRUE, SLOT(57), 7, 12,
"", "!Continual Light!", ""
},
{
"control weather",
{ LSA, LSA, LSA, LSA, LSA, 20, LSA, LSA, LSA,
LSA, LSA, LSA, LSA, LSA, 10, LSA, LSA, LSA },
{ 1, 1, 2, 2, 1, 1, 2, 2, 1,
1, 1, 2, 2, 1, 1, 2, 2, 1 },
spell_control_weather, TAR_IGNORE, POS_STANDING,
NULL, TRUE, SLOT(11), 25, 12,
"", "!Control Weather!", ""
},
{
"create food",
{ 19, 10, LSA, LSA, 6, 7, LSA, LSA, LSA,
9, 1, LSA, LSA, 1, 6, LSA, LSA, LSA },
{ 1, 1, 2, 2, 1, 1, 2, 2, 1,
1, 1, 2, 2, 1, 1, 2, 2, 1 },
spell_create_food, TAR_IGNORE, POS_STANDING,
NULL, TRUE, SLOT(12), 5, 12,
"", "!Create Food!", ""
},
{
"create rose",
{ 32, 21, LSA, LSA, 16, 11, LSA, LSA, LSA,
22, 11, LSA, LSA, 6, 1, LSA, LSA, LSA },
{ 1, 1, 2, 2, 1, 1, 2, 2, 1,
1, 1, 2, 2, 1, 1, 2, 2, 1 },
spell_create_rose, TAR_IGNORE, POS_STANDING,
NULL, TRUE, SLOT(511), 30, 12,
"", "!Create Rose!", ""
},
{
"create spring",
{ 28, 34, LSA, LSA, 26, 24, LSA, LSA, LSA,
18, 24, LSA, LSA, 16, 14, LSA, LSA, LSA },
{ 1, 1, 2, 2, 1, 1, 2, 2, 1,
1, 1, 2, 2, 1, 1, 2, 2, 1 },
spell_create_spring, TAR_IGNORE, POS_STANDING,
NULL, TRUE, SLOT(80), 20, 12,
"", "!Create Spring!", ""
},
{
"create water",
{ 15, 5, LSA, LSA, 2, 3, LSA, LSA, LSA,
5, 1, LSA, LSA, 1, 2, LSA, LSA, LSA },
{ 1, 1, 2, 2, 1, 1, 2, 2, 1,
1, 1, 2, 2, 1, 1, 2, 2, 1 },
spell_create_water, TAR_OBJ_INV, POS_STANDING,
NULL, TRUE, SLOT(13), 5, 12,
"", "!Create Water!", ""
},
{
"cure blindness",
{ LSA, 11, LSA, LSA, LSA, 16, LSA, LSA, LSA,
LSA, 1, LSA, LSA, LSA, 6, LSA, 31, LSA },
{ 1, 1, 2, 2, 2, 1, 2, 2, 1,
1, 1, 2, 2, 2, 1, 2, 2, 1 },
spell_cure_blindness, TAR_CHAR_DEFENSIVE, POS_FIGHTING,
NULL, FALSE, SLOT(14), 5, 12,
"", "!Cure Blindness!", ""
},
{
"cure critical",
{ LSA, 25, LSA, LSA, LSA, 37, LSA, LSA, LSA,
LSA, 15, LSA, LSA, 57, 27, LSA, 25, LSA },
{ 1, 1, 2, 2, 2, 1, 2, 1, 1,
1, 1, 2, 2, 2, 1, 2, 1, 1 },
spell_cure_critical, TAR_CHAR_DEFENSIVE, POS_FIGHTING,
NULL, FALSE, SLOT(15), 20, 12,
"", "!Cure Critical!", ""
},
{
"cure disease",
{ LSA, 26, LSA, LSA, LSA, 32, LSA, LSA, LSA,
LSA, 16, LSA, LSA, LSA, 22, LSA, 46, LSA },
{ 1, 1, 2, 2, 2, 1, 2, 2, 1,
1, 1, 2, 2, 2, 1, 2, 2, 1 },
spell_cure_disease, TAR_CHAR_DEFENSIVE, POS_STANDING,
NULL, FALSE, SLOT(501), 20, 12,
"", "!Cure Disease!", ""
},
{
"cure light",
{ LSA, 1, LSA, LSA, LSA, 8, LSA, LSA, LSA,
LSA, 1, LSA, LSA, 28, 1, LSA, 11, LSA },
{ 1, 1, 2, 2, 2, 1, 2, 1, 1,
1, 1, 2, 2, 2, 1, 2, 1, 1 },
spell_cure_light, TAR_CHAR_DEFENSIVE, POS_FIGHTING,
NULL, FALSE, SLOT(16), 10, 12,
"", "!Cure Light!", ""
},
{
"cure poison",
{ LSA, 28, LSA, LSA, LSA, 33, LSA, LSA, LSA,
LSA, 18, LSA, LSA, LSA, 23, LSA, 48, LSA },
{ 1, 1, 2, 2, 2, 1, 2, 2, 1,
1, 1, 2, 2, 2, 1, 2, 2, 1 },
spell_cure_poison, TAR_CHAR_DEFENSIVE, POS_STANDING,
NULL, FALSE, SLOT(43), 5, 12,
"", "!Cure Poison!", ""
},
{
"cure serious",
{ LSA, 14, LSA, LSA, LSA, 24, LSA, LSA, LSA,
LSA, 4, LSA, LSA, 44, 24, LSA, 14, LSA },
{ 1, 1, 2, 2, 2, 1, 2, 1, 1,
1, 1, 2, 2, 2, 1, 2, 1, 1 },
spell_cure_serious, TAR_CHAR_DEFENSIVE, POS_FIGHTING,
NULL, FALSE, SLOT(61), 15, 12,
"", "!Cure Serious!", ""
},
{
"curse",
{ 35, 35, LSA, LSA, LSA, LSA, 45, LSA, LSA,
25, 25, LSA, LSA, LSA, 28, 35, LSA, LSA },
{ 1, 1, 2, 2, 2, 1, 1, 2, 1,
1, 1, 2, 2, 2, 1, 1, 2, 1 },
spell_curse, TAR_OBJ_CHAR_OFF, POS_FIGHTING,
&gsn_curse, TRUE, SLOT(17), 20, 12,
"curse", "The curse wears off.",
"$p is no longer impure."
},
{
"demonfire",
{ LSA, 68, LSA, LSA, LSA, LSA, LSA, LSA, LSA,
LSA, 58, LSA, LSA, LSA, LSA, LSA, LSA, LSA },
{ 1, 1, 2, 2, 2, 1, 1, 1, 1,
1, 1, 2, 2, 2, 1, 1, 1, 1 },
spell_demonfire, TAR_CHAR_OFFENSIVE, POS_FIGHTING,
NULL, TRUE, SLOT(505), 20, 12,
"torments", "!Demonfire!", ""
},
{
"detect evil",
{ 22, 22, 24, LSA, 32, 22, 25, LSA, LSA,
12, 12, LSA, LSA, 22, 12, LSA, LSA, LSA },
{ 1, 1, 2, 2, 1, 1, 1, 1, 1,
1, 1, 2, 2, 1, 1, 1, 1, 1 },
spell_detect_evil, TAR_CHAR_SELF, POS_STANDING,
NULL, FALSE, SLOT(18), 5, 12,
"", "The red in your vision disappears.", ""
},
{
"detect good",
{ 23, 22, 25, LSA, 33, 23, 26, LSA, LSA,
13, 12, LSA, LSA, 23, 13, LSA, LSA, LSA },
{ 1, 1, 2, 2, 1, 1, 1, 1, 1,
1, 1, 2, 2, 1, 1, 1, 1, 1 },
spell_detect_good, TAR_CHAR_SELF, POS_STANDING,
NULL, FALSE, SLOT(513), 5, 12,
"", "The gold in your vision disappears.", ""
},
{
"detect hidden",
{ 24, 22, 20, LSA, 36, 26, 24, LSA, LSA,
14, 12, LSA, LSA, 26, 16, LSA, LSA, LSA },
{ 1, 1, 2, 2, 1, 1, 1, 1, 1,
1, 1, 2, 2, 1, 1, 1, 1, 1 },
spell_detect_hidden, TAR_CHAR_SELF, POS_STANDING,
NULL, FALSE, SLOT(44), 5, 12,
"", "You feel less aware of your surroundings.",
""
},
{
"detect invis",
{ 25, 16, 11, LSA, 25, 25, 4, LSA, LSA,
15, 6, 9, LSA, 15, 15, 3, LSA, LSA },
{ 1, 1, 2, 2, 1, 1, 1, 1, 1,
1, 1, 2, 2, 1, 1, 1, 1, 1 },
spell_detect_invis, TAR_CHAR_SELF, POS_STANDING,
NULL, FALSE, SLOT(19), 5, 12,
"", "You no longer see invisible objects.",
""
},
{
"detect magic",
{ 26, 11, 8, LSA, 24, 21, 3, LSA, LSA,
16, 1, 7, LSA, 14, 11, 2, LSA, LSA },
{ 1, 1, 2, 2, 1, 1, 1, 1, 1,
1, 1, 2, 2, 1, 1, 1, 1, 1 },
spell_detect_magic, TAR_CHAR_SELF, POS_STANDING,
NULL, FALSE, SLOT(20), 5, 12,
"", "The detect magic wears off.", ""
},
{
"detect poison",
{ 27, 14, 18, LSA, 14, 11, 11, LSA, LSA,
17, 4, 8, LSA, 4, 1, 1, LSA, LSA },
{ 1, 1, 2, 2, 1, 1, 1, 1, 1,
1, 1, 2, 2, 1, 1, 1, 1, 1 },
spell_detect_poison, TAR_OBJ_INV, POS_STANDING,
NULL, TRUE, SLOT(21), 5, 12,
"", "!Detect Poison!", ""
},
{
"dispel evil",
{ LSA, 30, LSA, LSA, LSA, LSA, LSA, LSA, LSA,
LSA, 20, LSA, LSA, LSA, LSA, LSA, LSA, LSA },
{ 1, 1, 2, 2, 2, 1, 2, 1, 1,
1, 1, 2, 2, 2, 1, 2, 1, 1 },
spell_dispel_evil, TAR_CHAR_OFFENSIVE, POS_FIGHTING,
NULL, TRUE, SLOT(22), 15, 12,
"dispel evil", "!Dispel Evil!", ""
},
{
"dispel good",
{ LSA, 30, LSA, LSA, LSA, LSA, LSA, LSA, LSA,
LSA, 20, LSA, LSA, LSA, LSA, LSA, LSA, LSA },
{ 1, 1, 2, 2, 2, 1, 2, 1, 1,
1, 1, 2, 2, 2, 1, 2, 1, 1 },
spell_dispel_good, TAR_CHAR_OFFENSIVE, POS_FIGHTING,
NULL, TRUE, SLOT(512), 15, 12,
"dispel good", "!Dispel Good!", ""
},
{
"dispel magic",
{ 48, 48, LSA, LSA, LSA, LSA, LSA, LSA, LSA,
38, 38, LSA, LSA, LSA, 43, LSA, LSA, LSA },
{ 1, 1, 2, 2, 2, 1, 2, 1, 1,
1, 1, 2, 2, 2, 1, 2, 1, 1 },
spell_dispel_magic, TAR_CHAR_OFFENSIVE, POS_FIGHTING,
NULL, TRUE, SLOT(59), 15, 12,
"", "!Dispel Magic!", ""
},
{
"divine fury",
{ LSA, 85, LSA, LSA, LSA, LSA, LSA, LSA, LSA,
LSA, 75, LSA, LSA, LSA, LSA, LSA, LSA, LSA },
{ 1, 1, 2, 2, 2, 1, 1, 2, 1,
1, 1, 2, 2, 2, 1, 1, 2, 1 },
spell_divine_fury, TAR_CHAR_OFFENSIVE, POS_FIGHTING,
NULL, TRUE, SLOT(303), 20, 12,
"divine fury", "!Divine Fury!", ""
},
{
"earthquake",
{ LSA, LSA, LSA, LSA, 43, 6, LSA, LSA, LSA,
LSA, LSA, LSA, LSA, 33, 1, LSA, LSA, LSA },
{ 1, 1, 2, 2, 2, 1, 1, 1, 1,
1, 1, 2, 2, 2, 1, 1, 1, 1 },
spell_earthquake, TAR_IGNORE, POS_FIGHTING,
NULL, TRUE, SLOT(23), 15, 12,
"earthquake", "!Earthquake!", ""
},
{
"empower",
{ 36, 40, LSA, LSA, LSA, 42, LSA, LSA, LSA,
26, 30, LSA, LSA, LSA, 32, LSA, LSA, LSA },
{ 1, 1, 2, 2, 2, 1, 1, 1, 1,
1, 1, 2, 2, 2, 1, 1, 1, 1 },
spell_empower, TAR_IGNORE, POS_RESTING,
NULL, TRUE, SLOT(234), 40, 12,
"", "!Empower!", ""
},
{
"enchant armor",
{ 31, LSA, LSA, LSA, LSA, LSA, LSA, LSA, LSA,
21, LSA, LSA, LSA, LSA, 60, LSA, LSA, LSA },
{ 2, 2, 4, 4, 4, 2, 4, 1, 1,
2, 2, 4, 4, 4, 2, 4, 1, 1 },
spell_enchant_armor, TAR_OBJ_INV, POS_STANDING,
NULL, TRUE, SLOT(510), 100, 24,
"", "!Enchant Armor!", ""
},
{
"enchant weapon",
{ 32, LSA, LSA, LSA, LSA, LSA, LSA, LSA, LSA,
22, LSA, LSA, LSA, LSA, 61, LSA, LSA, LSA },
{ 2, 2, 4, 4, 4, 2, 4, 1, 1,
2, 2, 4, 4, 4, 2, 4, 1, 1 },
spell_enchant_weapon, TAR_OBJ_INV, POS_STANDING,
NULL, TRUE, SLOT(24), 100, 24,
"", "!Enchant Weapon!", ""
},
{
"energy drain",
{ 38, 44, LSA, LSA, LSA, 40, 10, LSA, LSA,
28, 34, LSA, LSA, LSA, 30, 1, LSA, LSA },
{ 1, 1, 2, 2, 2, 1, 1, 1, 1,
1, 1, 2, 2, 2, 1, 1, 1, 1 },
spell_energy_drain, TAR_CHAR_OFFENSIVE, POS_FIGHTING,
NULL, TRUE, SLOT(25), 35, 12,
"energy drain", "!Energy Drain!", ""
},
{
"faerie fire",
{ LSA, LSA, LSA, LSA, 17, 2, LSA, LSA, LSA,
2, LSA, LSA, LSA, 7, 1, LSA, LSA, LSA },
{ 1, 1, 2, 2, 1, 1, 2, 1, 1,
1, 1, 2, 2, 1, 1, 2, 1, 1 },
spell_faerie_fire, TAR_CHAR_OFFENSIVE, POS_FIGHTING,
NULL, TRUE, SLOT(72), 5, 12,
"faerie fire", "The pink aura around you fades away.",
""
},
{
"faerie fog",
{ LSA, LSA, LSA, LSA, 35, 18, LSA, LSA, LSA,
18, LSA, LSA, LSA, 25, 8, LSA, LSA, LSA },
{ 1, 1, 2, 2, 1, 1, 2, 1, 1,
1, 1, 2, 2, 1, 1, 2, 1, 1 },
spell_faerie_fog, TAR_IGNORE, POS_STANDING,
NULL, TRUE, SLOT(73), 12, 12,
"faerie fog", "!Faerie Fog!", ""
},
{
"farsight",
{ 4, 8, 15, LSA, 16, 9, 6, LSA, LSA,
3, 7, 5, LSA, 6, 8, 5, LSA, LSA },
{ 1, 1, 2, 2, 1, 1, 1, 1, 1,
1, 1, 2, 2, 1, 1, 1, 1, 1 },
spell_farsight, TAR_CHAR_DEFENSIVE, POS_STANDING,
NULL, FALSE, SLOT(521), 5, 12,
"", "The green in your vision disappears.",
""
},
{
"fireball",
{ 44, LSA, LSA, LSA, 76, 53, 81, LSA, LSA,
34, LSA, LSA, LSA, 66, 43, 71, LSA, LSA },
{ 1, 1, 2, 2, 2, 1, 1, 1, 1,
1, 1, 2, 2, 2, 1, 1, 1, 1 },
spell_fireball, TAR_CHAR_OFFENSIVE, POS_FIGHTING,
NULL, TRUE, SLOT(26), 15, 12,
"fireball", "!Fireball!", ""
},
{
"fireproof",
{ 25, 24, LSA, LSA, LSA, 22, LSA, LSA, LSA,
15, 14, LSA, LSA, LSA, 11, LSA, LSA, LSA },
{ 1, 1, 2, 2, 2, 1, 2, 1, 1,
1, 1, 2, 2, 2, 1, 2, 1, 1 },
spell_fireproof, TAR_OBJ_INV, POS_STANDING,
NULL, TRUE, SLOT(523), 10, 12,
"", "", "$p's protective aura fades."
},
{
"fireshield",
{ 50, 60, LSA, LSA, LSA, 55, LSA, LSA, LSA,
40, 50, LSA, LSA, LSA, 45, LSA, LSA, LSA },
{ 3, 3, 5, 5, 5, 3, 5, 1, 1,
3, 3, 5, 5, 5, 3, 5, 1, 1 },
spell_fireshield, TAR_CHAR_SELF, POS_STANDING,
NULL, FALSE, SLOT(411), 75, 12,
"fireball", "Your firey shield gutters out.",
""
},
{
"flamestrike",
{ LSA, LSA, LSA, LSA, 52, 27, LSA, LSA, LSA,
LSA, LSA, LSA, LSA, 42, 17, LSA, LSA, LSA },
{ 1, 1, 2, 2, 2, 1, 1, 1, 1,
1, 1, 2, 2, 2, 1, 1, 1, 1 },
spell_flamestrike, TAR_CHAR_OFFENSIVE, POS_FIGHTING,
NULL, TRUE, SLOT(65), 20, 12,
"flamestrike", "!Flamestrike!", ""
},
{
"floating disc",
{ 7, 19, LSA, LSA, 45, 15, LSA, LSA, LSA,
6, 9, LSA, LSA, 35, 5, LSA, LSA, LSA },
{ 1, 1, 2, 2, 1, 1, 2, 1,
1, 1, 2, 2, 1, 1, 2, 1 },
spell_floating_disc, TAR_IGNORE, POS_STANDING,
NULL, TRUE, SLOT(522), 40, 24,
"", "!Floating disc!", ""
},
{
"fly",
{ 19, 36, LSA, LSA, LSA, 56, 33, LSA, LSA,
9, 26, LSA, LSA, 50, 46, 23, LSA, LSA },
{ 1, 1, 2, 2, 2, 1, 1, 1,
1, 1, 2, 2, 2, 1, 1, 1 },
spell_fly, TAR_CHAR_DEFENSIVE, POS_STANDING,
NULL, FALSE, SLOT(56), 10, 18,
"", "You slowly float to the ground.", ""
},
{
"frenzy",
{ LSA, 48, LSA, LSA, LSA, LSA, LSA, LSA, LSA,
LSA, 38, LSA, LSA, LSA, 48, LSA, 61, LSA },
{ 1, 1, 2, 2, 2, 1, 2, 1,
1, 1, 2, 2, 2, 1, 2, 1 },
spell_frenzy, TAR_CHAR_DEFENSIVE, POS_STANDING,
NULL, FALSE, SLOT(504), 30, 24,
"", "Your rage ebbs.", ""
},
{
"frost dart",
{ LSA, LSA, LSA, LSA, 43, LSA, LSA, LSA, LSA,
LSA, LSA, LSA, LSA, 33, 62, LSA, LSA, LSA },
{ 1, 1, 2, 2, 2, 1, 1, 1,
1, 1, 2, 2, 2, 1, 1, 1 },
spell_frost_dart, TAR_CHAR_OFFENSIVE, POS_FIGHTING,
NULL, TRUE, SLOT(305), 15, 12,
"frost dart", "!Frost Dart!", ""
},
{
"gate",
{ 54, 34, LSA, LSA, LSA, 71, 56, LSA, LSA,
44, 24, 80, LSA, 90, 61, 46, LSA, LSA },
{ 1, 1, 2, 2, 2, 1, 1, 1, 1,
1, 1, 2, 2, 2, 1, 1, 1, 1 },
spell_gate, TAR_IGNORE, POS_FIGHTING,
NULL, FALSE, SLOT(83), 80, 12,
"", "!Gate!", ""
},
{
"giant strength",
{ 41, LSA, LSA, LSA, 31, 37, LSA, LSA,
31, LSA, LSA, 49, 21, 27, LSA, LSA },
{ 1, 1, 2, 2, 2, 1, 2, 1, 1,
1, 1, 2, 2, 2, 1, 2, 1, 1 },
spell_giant_strength, TAR_CHAR_DEFENSIVE, POS_STANDING,
NULL, FALSE, SLOT(39), 20, 12,
"", "You feel weaker.", ""
},
{
"godheal",
{ LSA, 80, LSA, LSA, LSA, LSA, LSA, LSA, LSA,
LSA, 50, LSA, LSA, LSA, LSA, LSA, LSA, LSA },
{ 1, 1, 2, 2, 2, 1, 2, 1, 1,
1, 1, 2, 2, 2, 1, 2, 1, 1 },
spell_godheal, TAR_CHAR_DEFENSIVE, POS_FIGHTING,
NULL, FALSE, SLOT(309), 150, 12,
"", "!GodHeal!", ""
},
{
"harm",
{ LSA, 46, LSA, LSA, LSA, LSA, LSA, LSA, LSA,
LSA, 36, LSA, LSA, LSA, 87, LSA, LSA, LSA },
{ 1, 1, 2, 2, 2, 1, 1, 1,
1, 1, 2, 2, 2, 1, 1, 1 },
spell_harm, TAR_CHAR_OFFENSIVE, POS_FIGHTING,
NULL, TRUE, SLOT(27), 35, 12,
"harm spell", "!Harm!, """
},
{
"haste",
{ 42, LSA, LSA, LSA, LSA, 26, 52, LSA, LSA,
32, LSA, LSA, LSA, 63, 16, 42, LSA, LSA },
{ 1, 1, 2, 2, 2, 1, 1, 1,
1, 1, 2, 2, 2, 1, 1, 1 },
spell_haste, TAR_CHAR_DEFENSIVE, POS_FIGHTING,
NULL, FALSE, SLOT(502), 30, 12,
"", "You feel yourself slow down.", ""
},
{
"heal",
{ LSA, 32, LSA, LSA, LSA, 55, LSA, LSA, LSA,
LSA, 22, LSA, LSA, LSA, 45, LSA, LSA, LSA },
{ 1, 1, 2, 2, 2, 1, 2, 1,
1, 1, 2, 2, 2, 1, 2, 1 },
spell_heal, TAR_CHAR_DEFENSIVE, POS_FIGHTING,
NULL, FALSE, SLOT(28), 50, 12,
"", "!Heal!", ""
},
{
"heat metal",
{ LSA, 42, LSA, LSA, LSA, 22, LSA, LSA, LSA,
LSA, 32, LSA, LSA, LSA, 12, LSA, LSA, LSA },
{ 1, 1, 2, 2, 2, 1, 1, 1,
1, 1, 2, 2, 2, 1, 1, 1 },
spell_heat_metal, TAR_CHAR_OFFENSIVE, POS_FIGHTING,
NULL, TRUE, SLOT(516), 25, 18,
"spell", "!Heat Metal!", ""
},
{
"holy word",
{ LSA, 71, LSA, LSA, LSA, LSA, LSA, LSA, LSA,
LSA, 61, LSA, LSA, LSA, LSA, LSA, LSA, LSA },
{ 2, 2, 4, 4, 4, 2, 4, 1, 1,
2, 2, 4, 4, 4, 2, 4, 1, 1 },
spell_holy_word, TAR_IGNORE, POS_FIGHTING,
NULL, TRUE, SLOT(506), 200, 24,
"divine wrath", "!Holy Word!", ""
},
{
"iceshield",
{ 30, 30, LSA, LSA, LSA, 35, LSA, LSA, LSA,
20, 20, LSA, LSA, LSA, 25, LSA, LSA, LSA },
{ 3, 3, 5, 5, 5, 3, 5, 1, 1,
3, 3, 5, 5, 5, 3, 5, 1, 1 },
spell_iceshield, TAR_CHAR_SELF, POS_STANDING,
NULL, FALSE, SLOT(410), 75, 12,
"chilling touch", "Your icy shield slowly melts away.",
""
},
{
"identify",
{ 30, 32, 35, LSA, 100, 42, LSA, LSA, LSA,
20, 22, 25, LSA, 85, 32, 29, LSA, LSA },
{ 1, 1, 2, 2, 1, 1, 1, 1, 1,
1, 1, 2, 2, 1, 1, 1, 1, 1 },
spell_identify, TAR_OBJ_INV, POS_STANDING,
NULL, TRUE, SLOT(53), 12, 24,
"", "!Identify!", ""
},
{
"infravision",
{ 18, LSA, LSA, LSA, LSA, 18, 12, LSA, LSA,
8, LSA, LSA, LSA, LSA, 8, 2, LSA, LSA },
{ 1, 1, 2, 2, 2, 1, 2, 1, 1,
1, 1, 2, 2, 2, 1, 2, 1, 1 },
spell_infravision, TAR_CHAR_DEFENSIVE, POS_STANDING,
NULL, FALSE, SLOT(77), 5, 18,
"", "You no longer see in the dark.", ""
},
{
"invisibility",
{ 9, LSA, 17, LSA, 12, LSA, 13, LSA, LSA,
8, LSA, 7, LSA, 2, LSA, 3, LSA, LSA },
{ 1, 1, 2, 2, 2, 1, 1, 1, 1,
1, 1, 2, 2, 2, 1, 1, 1, 1 },
spell_invis, TAR_OBJ_CHAR_DEF, POS_STANDING,
&gsn_invis, FALSE, SLOT(29), 5, 12,
"", "You are no longer invisible.",
"$p fades into view."
},
{
"know alignment",
{ LSA, 17, LSA, LSA, LSA, LSA, LSA, LSA, LSA,
LSA, 7, LSA, LSA, LSA, LSA, LSA, LSA, LSA },
{ 1, 1, 2, 2, 1, 1, 1, 1, 1,
1, 1, 2, 2, 1, 1, 1, 1, 1 },
spell_know_alignment, TAR_CHAR_DEFENSIVE, POS_FIGHTING,
NULL, FALSE, SLOT(58), 9, 12,
"", "!Know Alignment!", ""
},
{
"lightning bolt",
{ 25, LSA, LSA, LSA, 52, 38, 59, LSA, LSA,
15, LSA, LSA, LSA, 42, 28, 49, LSA, LSA },
{ 1, 1, 2, 2, 1, 1, 1, 1, 1,
1, 1, 2, 2, 1, 1, 1, 1, 1 },
spell_lightning_bolt, TAR_CHAR_OFFENSIVE, POS_FIGHTING,
NULL, TRUE, SLOT(30), 15, 12,
"lightning bolt", "!Lightning Bolt!", ""
},
{
"locate object",
{ 17, 30, LSA, LSA, LSA, 35, LSA, LSA, LSA,
7, 20, LSA, LSA, LSA, 25, LSA, LSA, LSA },
{ 1, 1, 2, 2, 1, 1, 1, 1, 1,
1, 1, 2, 2, 1, 1, 1, 1, 1 },
spell_locate_object, TAR_IGNORE, POS_STANDING,
NULL, TRUE, SLOT(31), 20, 18,
"", "!Locate Object!", ""
},
{
"magic missile",
{ 1, LSA, LSA, LSA, LSA, LSA, 25, LSA, LSA,
1, LSA, LSA, LSA, LSA, LSA, 15, LSA, LSA },
{ 1, 1, 2, 2, 2, 1, 1, 1, 1,
1, 1, 2, 2, 2, 1, 1, 1, 1 },
spell_magic_missile, TAR_CHAR_OFFENSIVE, POS_FIGHTING,
NULL, TRUE, SLOT(32), 15, 12,
"magic missile", "!Magic Missile!", ""
},
{
"mass healing",
{ LSA, 75, LSA, LSA, LSA, LSA, LSA, LSA, LSA,
LSA, 65, LSA, LSA, LSA, LSA, LSA, LSA, LSA },
{ 2, 2, 4, 4, 2, 2, 2, 1, 1,
2, 2, 4, 4, 2, 2, 2, 1, 1 },
spell_mass_healing, TAR_IGNORE, POS_STANDING,
NULL, FALSE, SLOT(508), 100, 36,
"", "!Mass Healing!", ""
},
{
"mass invis",
{ 43, LSA, 55, LSA, 59, LSA, 54, LSA, LSA,
33, LSA, 45, LSA, 49, LSA, 44, LSA, LSA },
{ 1, 1, 2, 2, 2, 1, 2, 1, 1,
1, 1, 2, 2, 2, 1, 2, 1, 1 },
spell_mass_invis, TAR_IGNORE, POS_STANDING,
&gsn_mass_invis, FALSE, SLOT(69), 20, 24,
"", "You are no longer invisible.", ""
},
{
"nexus",
{ 79, 69, LSA, LSA, LSA, 80, LSA, LSA, LSA,
69, 59, LSA, LSA, LSA, 70, LSA, LSA, LSA },
{ 2, 2, 4, 4, 4, 2, 4, 1, 1,
2, 2, 4, 4, 4, 2, 4, 1, 1 },
spell_nexus, TAR_IGNORE, POS_STANDING,
NULL, FALSE, SLOT(520), 150, 36,
"", "!Nexus!", ""
},
{
"pass door",
{ 48, 63, LSA, LSA, LSA, 60, 42, LSA, LSA,
38, 53,70, LSA, 95, 50, 32, LSA, LSA },
{ 1, 1, 2, 2, 2, 1, 1, 1, 1,
1, 1, 2, 2, 2, 1, 1, 1, 1 },
spell_pass_door, TAR_CHAR_SELF, POS_STANDING,
NULL, FALSE, SLOT(74), 20, 12,
"", "You feel solid again.", ""
},
{
"plague",
{ 46, 34, LSA, LSA, 59, 39, 65, LSA, LSA,
36, 24, LSA, LSA, 49, 29, 55, LSA, LSA },
{ 1, 1, 2, 2, 2, 1, 1, 1, 1,
1, 1, 2, 2, 2, 1, 1, 1, 1 },
spell_plague, TAR_CHAR_OFFENSIVE, POS_FIGHTING,
&gsn_plague, TRUE, SLOT(503), 20, 12,
"sickness", "Your sores vanish.", ""
},
{
"poison",
{ 33, 24, LSA, LSA, 49, 27, 22, LSA, LSA,
23, 14, LSA, LSA, 39, 17, 12, LSA, LSA },
{ 1, 1, 2, 2, 2, 1, 1, 1, 1,
1, 1, 2, 2, 2, 1, 1, 1, 1 },
spell_poison, TAR_OBJ_CHAR_OFF, POS_FIGHTING,
&gsn_poison, TRUE, SLOT(33), 10, 12,
"poison", "You feel less sick.",
"The poison on $p dries up."
},
{
"portal",
{ 70, 59, LSA, LSA, LSA, 73, 82, LSA, LSA,
60, 49, LSA, LSA, LSA, 63, 72, LSA, LSA },
{ 2, 2, 4, 4, 4, 2, 4, 1, 1,
2, 2, 4, 4, 4, 2, 4, 1, 1 },
spell_portal, TAR_IGNORE, POS_STANDING,
NULL, FALSE, SLOT(519), 100, 24,
"", "!Portal!", ""
},
{
"protection evil",
{ LSA, 18, LSA, LSA, LSA, LSA, LSA, LSA, LSA,
LSA, 8, LSA, LSA, LSA, LSA, LSA, 28, LSA },
{ 1, 1, 2, 2, 2, 1, 2, 1, 1,
1, 1, 2, 2, 2, 1, 2, 1, 1 },
spell_protection_evil, TAR_CHAR_SELF, POS_STANDING,
NULL, FALSE, SLOT(34), 5, 12,
"", "You feel less protected.", ""
},
{
"protection good",
{ LSA, 18, LSA, LSA, LSA, LSA, LSA, LSA, LSA,
LSA, 8, LSA, LSA, LSA, LSA, LSA, 28, LSA },
{ 1, 1, 2, 2, 2, 1, 2, 1, 1,
1, 1, 2, 2, 2, 1, 2, 1, 1 },
spell_protection_good, TAR_CHAR_SELF, POS_STANDING,
NULL, FALSE, SLOT(514), 5, 12,
"", "You feel less protected.", ""
},
{
"protection voodoo",
{ LSA, LSA, LSA, LSA, LSA, LSA, LSA, LSA, LSA,
LSA, LSA, LSA, LSA, LSA, LSA, LSA, LSA, LSA },
{ 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1 },
spell_protection_voodoo, TAR_CHAR_SELF, POS_STANDING,
NULL, FALSE, SLOT(345), 5, 12,
"", "", ""
},
{
"quest pill",
{ MAX_LEVEL, MAX_LEVEL, MAX_LEVEL,
MAX_LEVEL, MAX_LEVEL, MAX_LEVEL,
MAX_LEVEL, MAX_LEVEL, MAX_LEVEL,
MAX_LEVEL, MAX_LEVEL, MAX_LEVEL,
MAX_LEVEL, MAX_LEVEL, MAX_LEVEL,
MAX_LEVEL, MAX_LEVEL, MAX_LEVEL },
{ 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1 },
spell_quest_pill, TAR_CHAR_SELF, POS_STANDING,
NULL, TRUE, SLOT(530), 5, 18,
"", "!Quest Pill!", ""
},
{
"ray of truth",
{ LSA, 69, LSA, LSA, LSA, LSA, LSA, LSA, LSA,
LSA, 59, LSA, LSA, LSA, LSA, LSA, LSA, LSA },
{ 1, 1, 2, 2, 2, 1, 2, 1, 1,
1, 1, 2, 2, 2, 1, 2, 1, 1 },
spell_ray_of_truth, TAR_CHAR_OFFENSIVE, POS_FIGHTING,
NULL, TRUE, SLOT(518), 20, 12,
"ray of truth", "!Ray of Truth!", ""
},
{
"recharge",
{ 18, LSA, LSA, LSA, LSA, LSA, LSA, LSA, LSA,
8, LSA, LSA, LSA, LSA, 42, LSA, LSA, LSA, },
{ 1, 1, 2, 2, 2, 1, 2, 1, 1,
1, 1, 2, 2, 2, 1, 2, 1, 1 },
spell_recharge, TAR_OBJ_INV, POS_STANDING,
NULL, TRUE, SLOT(517), 60, 24,
"", "!Recharge!", ""
},
{
"refresh",
{ 16, LSA, LSA, LSA, LSA, 10, 16, LSA, LSA,
6, LSA, LSA, LSA, 8, 1, 6, LSA, LSA },
{ 1, 1, 2, 2, 2, 1, 2, 1,
1, 1, 2, 2, 2, 1, 2, 1 },
spell_refresh, TAR_CHAR_DEFENSIVE, POS_STANDING,
NULL, FALSE, SLOT(81), 12, 18,
"refresh", "!Refresh!", ""
},
{
"remove curse",
{ LSA, 35, LSA, LSA, LSA, LSA, LSA, LSA, LSA,
LSA, 25, LSA, LSA, 63, 39, LSA, LSA, LSA },
{ 1, 1, 2, 2, 2, 1, 2, 1,
1, 1, 2, 2, 2, 1, 2, 1 },
spell_remove_curse, TAR_OBJ_CHAR_DEF, POS_STANDING,
NULL, FALSE, SLOT(35), 5, 12,
"", "!Remove Curse!", ""
},
{
"restore mana",
{ LSA, LSA, LSA, LSA, LSA, LSA, LSA, LSA, LSA,
LSA, LSA, LSA, LSA, LSA, LSA, LSA, LSA, LSA },
{ 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1 },
spell_restore_mana, TAR_CHAR_DEFENSIVE, POS_STANDING,
NULL, FALSE, SLOT(251), 1, 18,
"restore mana", "!Restore Mana!", ""
},
{
"resurrect",
{ LSA, LSA, LSA, LSA, LSA, LSA, 28, LSA, LSA,
LSA, LSA, LSA, LSA, LSA, LSA, 18, LSA, LSA },
{ 1, 1, 2, 2, 2, 1, 1, 1, 1,
1, 1, 2, 2, 2, 1, 1, 1, 1 },
spell_resurrect, TAR_IGNORE, POS_STANDING,
NULL, TRUE, SLOT(235), 35, 12,
"", "!Resurrect!", ""
},
{
"sanctuary",
{ LSA, 39, LSA, LSA, LSA, LSA, LSA, LSA, LSA,
LSA, 29, LSA, LSA, LSA, 30, LSA, LSA, LSA },
{ 1, 1, 2, 2, 2, 1, 2, 1, 1,
1, 1, 2, 2, 2, 1, 2, 1, 1 },
spell_sanctuary, TAR_CHAR_DEFENSIVE, POS_STANDING,
&gsn_sanctuary, FALSE, SLOT(36), 75, 12,
"", "The white aura around your body fades.",
""
},
{
"sanction",
{ 101, LSA, LSA, LSA, LSA, LSA, LSA, LSA, LSA,
50, LSA, LSA, LSA, LSA, LSA, LSA, LSA, LSA },
{ 4, 1, 2, 2, 1, 1, 2, 1, 1,
3, 1, 2, 2, 1, 1, 2, 1, 1 },
spell_sanction, TAR_CHAR_OFFENSIVE, POS_FIGHTING,
NULL, TRUE, SLOT(302), 75, 12,
"sanction", "The black aura around you fades away.",
""
},
{
"shield",
{ 40, 70, LSA, LSA, LSA, 80, LSA, LSA, LSA,
30, 60, LSA, LSA, LSA, 70, LSA, LSA, LSA },
{ 1, 1, 2, 2, 2, 1, 2, 1, 1,
1, 1, 2, 2, 2, 1, 2, 1, 1 },
spell_shield, TAR_CHAR_DEFENSIVE, POS_STANDING,
NULL, FALSE, SLOT(67), 12, 18,
"", "Your force shield shimmers then fades away.",
""
},
{
"shocking grasp",
{ 20, LSA, LSA, LSA, LSA, LSA, 59, LSA, LSA,
10, LSA, LSA, LSA, LSA, LSA, 49, LSA, LSA },
{ 1, 1, 2, 2, 2, 1, 1, 1, 1,
1, 1, 2, 2, 2, 1, 1, 1, 1 },
spell_shocking_grasp, TAR_CHAR_OFFENSIVE, POS_FIGHTING,
NULL, TRUE, SLOT(53), 15, 12,
"shocking grasp", "!Shocking Grasp!", ""
},
{
"shockshield",
{ 60, 40, LSA, LSA, LSA, 90, LSA, LSA, LSA,
50, 30, LSA, LSA, LSA, 80, LSA, LSA, LSA },
{ 3, 3, 5, 5, 5, 3, 5, 1, 1,
3, 3, 5, 5, 5, 3, 5, 1, 1 },
spell_shockshield, TAR_CHAR_SELF, POS_STANDING,
NULL, FALSE, SLOT(412), 75, 12,
"lightning bolt", "Your crackling shield sizzles and fades.",
""
},
{
"sleep",
{ 31, LSA, 15, LSA, LSA, 21, 15, LSA, LSA,
21, LSA, 5, LSA, 60, 11, 5, LSA, LSA },
{ 1, 1, 2, 2, 2, 1, 1, 1, 1,
1, 1, 2, 2, 2, 1, 1, 1, 1 },
spell_sleep, TAR_CHAR_OFFENSIVE, POS_STANDING,
&gsn_sleep, TRUE, SLOT(38), 15, 12,
"", "You feel less tired.", ""
},
{
"slow",
{ 45, 40, LSA, LSA, LSA, 66, LSA, LSA, LSA,
35, 30, LSA, LSA, 50, 56, LSA, LSA, LSA },
{ 1, 1, 2, 2, 2, 1, 1, 1, 1,
1, 1, 2, 2, 2, 1, 1, 1, 1},
spell_slow, TAR_CHAR_OFFENSIVE, POS_FIGHTING,
NULL, TRUE, SLOT(515), 30, 12,
"", "You feel yourself speed up.", ""
},
{
"stone rain",
{ LSA, LSA, LSA, LSA, LSA, 78, LSA, LSA, LSA,
LSA, LSA, LSA, LSA, LSA, 68, LSA, LSA, LSA },
{ 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1 },
spell_stone_rain, TAR_IGNORE, POS_FIGHTING,
NULL, TRUE, SLOT(307), 150, 24,
"falling rocks", "!Stone Rain!", ""
},
{
"stone skin",
{ 70, 90, LSA, LSA, 100, 49, LSA, LSA, LSA,
60, 80, LSA, LSA, LSA, 39, LSA, LSA, LSA },
{ 1, 1, 2, 2, 2, 1, 2, 1, 1,
1, 1, 2, 2, 2, 1, 2, 1, 1 },
spell_stone_skin, TAR_CHAR_SELF, POS_STANDING,
NULL, FALSE, SLOT(66), 12, 18,
"", "Your skin feels soft again.", ""
},
{
"summon",
{ 48, 23, LSA, LSA, LSA, 33, 51, LSA, LSA,
38, 13, 60, LSA, 85, 23, 41, LSA, LSA },
{ 1, 1, 2, 2, 2, 1, 1, 1, 1,
1, 1, 2, 2, 2, 1, 1, 1, 1 },
spell_summon, TAR_IGNORE, POS_STANDING,
NULL, FALSE, SLOT(40), 50, 12,
"", "!Summon!", ""
},
{
"teleport",
{ 24, 44, LSA, LSA, LSA, 59, 59, LSA, LSA,
14, 34, LSA, LSA, LSA, 49, 49, LSA, LSA },
{ 1, 1, 2, 2, 2, 1, 1, 1, 1,
1, 1, 2, 2, 2, 1, 1, 1, 1 },
spell_teleport, TAR_CHAR_SELF, POS_FIGHTING,
NULL, TRUE, SLOT( 2), 35, 12,
"", "!Teleport!", ""
},
{
"transport",
{ 25, 46, LSA, LSA, LSA, 53, 51, LSA, LSA,
15, 36, LSA, LSA, LSA, 43, 41, LSA, LSA },
{ 1, 1, 2, 2, 2, 1, 1, 1, 1,
1, 1, 2, 2, 2, 1, 1, 1, 1 },
spell_transport, TAR_OBJ_TRAN, POS_STANDING,
NULL, FALSE, SLOT(524), 30, 12,
"", "!Transport!", ""
},
{
"true sight",
{ LSA, LSA, LSA, LSA, LSA, LSA, LSA, LSA, LSA,
LSA, LSA, 24, LSA, LSA, LSA, 21, LSA, LSA },
{ 1, 1, 2, 2, 2, 1, 2, 1, 1,
1, 1, 1, 2, 2, 1, 1, 1, 1 },
spell_true_sight, TAR_CHAR_DEFENSIVE, POS_STANDING,
NULL, FALSE, SLOT(301), 33, 12,
"", "Your sight is no longer quite so enhanced.", ""
},
{
"ventriloquate",
{ 1, LSA, 2, LSA, 5, LSA, 4, LSA, LSA,
1, LSA, 1, LSA, 1, LSA, 3, LSA, LSA },
{ 1, 1, 2, 2, 2, 1, 1, 1, 1,
1, 1, 2, 2, 2, 1, 1, 1, 1 },
spell_ventriloquate, TAR_IGNORE, POS_STANDING,
NULL, TRUE, SLOT(41), 5, 12,
"", "!Ventriloquate!", ""
},
{
"voodoo",
{ 45, LSA, LSA, LSA, LSA, LSA, LSA, LSA, LSA,
35, LSA, LSA, LSA, LSA, LSA, 45, LSA, LSA },
{ 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1 },
spell_voodoo, TAR_IGNORE, POS_STANDING,
NULL, TRUE, SLOT(286), 80, 12,
"", "!Voodoo!", ""
},
{
"weaken",
{ 21, 28, LSA, LSA, 40, 31, 25, LSA, LSA,
11, 18, LSA, LSA, 30, 21, 15, LSA, LSA },
{ 1, 1, 2, 2, 2, 1, 1, 1, 1,
1, 1, 2, 2, 2, 1, 1, 1, 1 },
spell_weaken, TAR_CHAR_OFFENSIVE, POS_FIGHTING,
NULL, TRUE, SLOT(68), 20, 12,
"spell", "You feel stronger.", ""
},
{
"word of recall",
{ 63, 56, LSA, LSA, LSA, 47, 73, LSA, LSA,
53, 46, LSA, LSA, LSA, 37, 63, LSA, LSA },
{ 1, 1, 2, 2, 2, 1, 1, 1, 1,
1, 1, 2, 2, 2, 1, 1, 1, 1 },
spell_word_of_recall, TAR_CHAR_SELF, POS_RESTING,
NULL, TRUE, SLOT(42), 5, 12,
"", "!Word of Recall!", ""
},
/*
* Dragon breath
*/
{
"acid breath",
{ 62, LSA, LSA, LSA, LSA, LSA, LSA, LSA, LSA,
52, LSA, LSA, LSA, LSA, LSA, 82, LSA, LSA },
{ 1, 1, 2, 2, 2, 1, 1, 1, 1,
1, 1, 2, 2, 2, 1, 1, 1, 1 },
spell_acid_breath, TAR_CHAR_OFFENSIVE, POS_FIGHTING,
NULL, TRUE, SLOT(200), 100, 12,
"blast of acid", "!Acid Breath!", ""
},
{
"fire breath",
{ 80, 90, LSA, LSA, LSA, LSA, LSA, LSA, LSA,
70, 80, LSA, LSA, LSA, LSA, LSA, LSA, LSA },
{ 1, 1, 2, 2, 2, 1, 1, 1, 1,
1, 1, 2, 2, 2, 1, 1, 1, 1 },
spell_fire_breath, TAR_CHAR_OFFENSIVE, POS_FIGHTING,
&gsn_fire_breath, TRUE, SLOT(201), 100, 12,
"blast of flame", "The smoke leaves your eyes.", ""
},
{
"frost breath",
{ 67, LSA, LSA, LSA, LSA, LSA, LSA, LSA, LSA,
57, LSA, LSA, LSA, LSA, LSA, 87, LSA, LSA },
{ 1, 1, 2, 2, 2, 1, 1, 1, 1,
1, 1, 2, 2, 2, 1, 1, 1, 1 },
spell_frost_breath, TAR_CHAR_OFFENSIVE, POS_FIGHTING,
NULL, TRUE, SLOT(202), 125, 12,
"blast of frost", "!Frost Breath!", ""
},
{
"gas breath",
{ 77, LSA, LSA, LSA, LSA, LSA, LSA, LSA, LSA,
67, LSA, LSA, LSA, LSA, LSA, 97, LSA, LSA },
{ 1, 1, 2, 2, 2, 1, 1, 1, 1,
1, 1, 2, 2, 2, 1, 1, 1, 1 },
spell_gas_breath, TAR_IGNORE, POS_FIGHTING,
NULL, TRUE, SLOT(203), 125, 12,
"blast of gas", "!Gas Breath!", ""
},
{
"lightning breath",
{ 74, LSA, LSA, LSA, LSA, LSA, LSA, LSA, LSA,
64, LSA, LSA, LSA, LSA, LSA, LSA, LSA, LSA },
{ 1, 1, 2, 2, 2, 1, 1, 1, 1,
1, 1, 2, 2, 2, 1, 1, 1, 1 },
spell_lightning_breath, TAR_CHAR_OFFENSIVE, POS_FIGHTING,
NULL, TRUE, SLOT(204), 120, 12,
"blast of lightning", "!Lightning Breath!", ""
},
/*
* Spells for mega1.are from Glop/Erkenbrand.
*/
{
"general purpose",
{ MAX_LEVEL, MAX_LEVEL, MAX_LEVEL,
MAX_LEVEL, MAX_LEVEL, MAX_LEVEL,
MAX_LEVEL, MAX_LEVEL, MAX_LEVEL,
MAX_LEVEL, MAX_LEVEL, MAX_LEVEL,
MAX_LEVEL, MAX_LEVEL, MAX_LEVEL,
MAX_LEVEL, MAX_LEVEL, MAX_LEVEL },
{ 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0 },
spell_general_purpose, TAR_CHAR_OFFENSIVE, POS_FIGHTING,
NULL, TRUE, SLOT(401), 0, 12,
"general purpose ammo", "!General Purpose Ammo!", ""
},
{
"high explosive",
{ LSA, LSA, LSA, LSA, LSA, LSA, LSA, LSA, LSA,
LSA, LSA, LSA, LSA, LSA, LSA, LSA, LSA, LSA },
{ 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0 },
spell_high_explosive, TAR_CHAR_OFFENSIVE, POS_FIGHTING,
NULL, TRUE, SLOT(402), 0, 12,
"high explosive ammo", "!High Explosive Ammo!", ""
},
/* combat and weapons skills */
{
"axe",
{ 1, 2, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1 },
{ 0, 0, 0, 3, 4, 0, 0, 3, 0,
0, 0, 0, 2, 3, 0, 0, 2, 0 },
spell_null, TAR_IGNORE, POS_FIGHTING,
&gsn_axe, TRUE, SLOT( 0), 0, 0,
"", "!Axe!", ""
},
{
"dagger",
{ 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1 },
{ 2, 3, 2, 1, 2, 3, 1, 2, 0,
2, 2, 1, 1, 1, 2, 1, 1, 0 },
spell_null, TAR_IGNORE, POS_FIGHTING,
&gsn_dagger, TRUE, SLOT( 0), 0, 0,
"", "!Dagger!", ""
},
{
"flail",
{ 1, 2, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1 },
{ 0, 3, 0, 3, 4, 3, 0, 2, 0,
0, 2, 0, 2, 3, 2, 0, 1, 0 },
spell_null, TAR_IGNORE, POS_FIGHTING,
&gsn_flail, TRUE, SLOT( 0), 0, 0,
"", "!Flail!", ""
},
{
"mace",
{ 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1 },
{ 0, 1, 0, 2, 3, 2, 0, 1, 0,
0, 1, 0, 1, 2, 1, 0, 1, 0 },
spell_null, TAR_IGNORE, POS_FIGHTING,
&gsn_mace, TRUE, SLOT( 0), 0, 0,
"", "!Mace!", ""
},
{
"polearm",
{ 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1 },
{ 0, 0, 0, 3, 3, 2, 0, 3, 0,
0, 0, 0, 2, 2, 1, 0, 2, 0 },
spell_null, TAR_IGNORE, POS_FIGHTING,
&gsn_polearm, TRUE, SLOT( 0), 0, 0,
"", "!Polearm!", ""
},
{
"shield block",
{ 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1 },
{ 6, 4, 6, 1, 2, 4, 3, 1, 0,
5, 3, 5, 1, 1, 3, 2, 1, 0 },
spell_null, TAR_IGNORE, POS_FIGHTING,
&gsn_shield_block, TRUE, SLOT(0), 0, 0,
"", "!Shield!", ""
},
{
"spear",
{ 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1 },
{ 0, 0, 0, 2, 1, 0, 0, 2, 0,
0, 0, 0, 1, 1, 0, 0, 1, 0 },
spell_null, TAR_IGNORE, POS_FIGHTING,
&gsn_spear, TRUE, SLOT( 0), 0, 0,
"", "!Spear!", ""
},
{
"sword",
{ 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1 },
{ 0, 0, 3, 1, 2, 0, 0, 1, 0,
0, 0, 2, 1, 1, 0, 0, 1, 0 },
spell_null, TAR_IGNORE, POS_FIGHTING,
&gsn_sword, TRUE, SLOT( 0), 0, 0,
"", "!sword!", ""
},
{
"whip",
{ 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1 },
{ 6, 0, 0, 3, 3, 0, 0, 3, 0,
5, 0, 0, 3, 2, 0, 0, 3, 0 },
spell_null, TAR_IGNORE, POS_FIGHTING,
&gsn_whip, TRUE, SLOT( 0), 0, 0,
"", "!Whip!", ""
},
{
"backstab",
{ LSA, LSA, 1, LSA, LSA, LSA, 7, LSA, LSA,
LSA, LSA, 1, LSA, LSA, LSA, 6, LSA, LSA },
{ 0, 0, 2, 0, 0, 0, 2, 0, 0,
0, 0, 2, 0, 0, 0, 1, 0, 0 },
spell_null, TAR_IGNORE, POS_STANDING,
&gsn_backstab, TRUE, SLOT( 0), 0, 18,
"backstab", "!Backstab!", ""
},
{
"bash",
{ LSA, LSA, LSA, 1, LSA, LSA, LSA, 1, LSA,
LSA, LSA, LSA, 1, LSA, LSA, LSA, 1, LSA },
{ 0, 0, 0, 2, 0, 0, 0, 2, 0,
0, 0, 0, 1, 0, 0, 0, 1, 0 },
spell_null, TAR_IGNORE, POS_FIGHTING,
&gsn_bash, TRUE, SLOT( 0), 0, 24,
"bash", "!Bash!", ""
},
{
"berserk",
{ LSA, LSA, LSA, 27, LSA, LSA, LSA, 35, LSA,
LSA, LSA, LSA, 17, LSA, LSA, LSA, 25, LSA },
{ 0, 0, 0, 2, 0, 0, 0, 2, 0,
0, 0, 0, 1, 0, 0, 0, 1, 0 },
spell_null, TAR_IGNORE, POS_FIGHTING,
&gsn_berserk, TRUE, SLOT( 0), 0, 24,
"", "You feel your pulse slow down.", ""
},
{
"circle",
{ LSA, LSA, 25, LSA, LSA, LSA, 98, LSA, LSA,
LSA, LSA, 15, LSA, LSA, LSA, 85, LSA, LSA },
{ 0, 0, 4, 0, 0, 0, 5, 0, 0,
0, 0, 3, 0, 0, 0, 4, 0, 0 },
spell_null, TAR_IGNORE, POS_FIGHTING,
&gsn_circle, TRUE, SLOT( 0), 0, 16,
"circle", "!Circle!", ""
},
{
"dirt kicking",
{ LSA, LSA, 4, 4, 1, LSA, 3, LSA, 12,
LSA, LSA, 1, 1, 1, LSA, 2, LSA, 8 },
{ 0, 0, 4, 4, 4, 0, 2, 0, 4,
0, 0, 3, 3, 3, 0, 1, 0, 3 },
spell_null, TAR_IGNORE, POS_FIGHTING,
&gsn_dirt, TRUE, SLOT( 0), 0, 24,
"kicked dirt", "You rub the dirt out of your eyes.", ""
},
{
"disarm",
{ LSA, LSA, 18, 18, 32, LSA, 20, 22, LSA,
LSA, LSA, 8, 8, 22, LSA, 10, 12, LSA },
{ 0, 0, 6, 3, 5, 0, 3, 3, 0,
0, 0, 5, 2, 4, 0, 2, 2, 0 },
spell_null, TAR_IGNORE, POS_FIGHTING,
&gsn_disarm, TRUE, SLOT( 0), 0, 24,
"", "!Disarm!", ""
},
{
"dodge",
{ LSA, LSA, 1, 19, 10, LSA, 10, 20, 1,
LSA, LSA, 1, 9, 1, LSA, 1, 11, 1 },
{ 0, 0, 4, 6, 5, 0, 2, 6, 4,
0, 0, 3, 5, 4, 0, 1, 5, 3 },
spell_null, TAR_IGNORE, POS_FIGHTING,
&gsn_dodge, TRUE, SLOT( 0), 0, 0,
"", "!Dodge!", ""
},
{
"dual wield",
{ LSA, LSA, 35, 3, 29, LSA, LSA, LSA, LSA,
LSA, LSA, 8, 1, 15, LSA, LSA, 10, LSA },
{ 0, 0, 3, 2, 3, 0, 0, 0, 0,
0, 0, 2, 1, 3, 0, 0, 2, 0 },
spell_null, TAR_IGNORE, POS_FIGHTING,
&gsn_dual_wield, TRUE, SLOT( 0), 0, 0,
"", "!Dual Wield!", ""
},
{
"enhanced damage",
{ LSA, LSA, 36, 1, 30, LSA, 33, 2, 22,
100, LSA, 26, 1, 20, LSA, 32, 1, 15 },
{ 0, 0, 5, 3, 6, 0, 7, 3, 5,
0, 0, 4, 2, 5, 0, 6, 2, 4 },
spell_null, TAR_IGNORE, POS_FIGHTING,
&gsn_enhanced_damage, TRUE, SLOT( 0), 0, 0,
"", "!Enhanced Damage!", ""
},
{
"envenom",
{ LSA, LSA, 15, 90, 19, LSA, LSA, LSA, LSA,
LSA, LSA, 5, 80, 9, LSA, LSA, LSA, LSA },
{ 0, 0, 4, 0, 1, 0, 0, 0, 0,
0, 0, 3, 0, 1, 0, 0, 0, 0 },
spell_null, TAR_IGNORE, POS_RESTING,
&gsn_envenom, TRUE, SLOT(0), 0, 36,
"", "!Envenom!", ""
},
{
"feed",
{ LSA, LSA, LSA, LSA, LSA, LSA, 29, LSA, LSA,
LSA, LSA, LSA, LSA, LSA, LSA, 11, LSA, LSA },
{ 0, 0, 0, 0, 0, 0, 2, 0, 0,
0, 0, 0, 0, 0, 0, 1, 0, 0 },
spell_null, TAR_IGNORE, POS_FIGHTING,
&gsn_feed, TRUE, SLOT( 0), 0, 24,
"feed", "!Feed!", ""
},
{
"gouge",
{ LSA, LSA, 52, LSA, LSA, LSA, LSA, LSA, LSA,
LSA, LSA, 24, LSA, LSA, LSA, LSA, LSA, LSA },
{ 0, 0, 2, 0, 0, 0, 0, 0, 0,
0, 0, 1, 0, 0, 0, 0, 0, 0 },
spell_null, TAR_IGNORE, POS_FIGHTING,
&gsn_gouge, TRUE, SLOT( 0), 0, 24,
"gouge", "Your vision clears.", ""
},
{
"grip",
{ LSA, LSA, 45, 25, LSA, LSA, LSA, 25, LSA,
LSA, LSA, 35, 10, LSA, LSA, LSA, 10, LSA },
{ 0, 0, 2, 2, 0, 0, 0, 2, 0,
0, 0, 1, 1, 0, 0, 0, 1, 0 },
spell_null, TAR_IGNORE, POS_FIGHTING,
&gsn_grip, TRUE, SLOT( 0), 0, 0,
"", "!Grip!", ""
},
{
"hand to hand",
{ LSA, LSA, 22, 9, 22, LSA, 12, 1, 1,
LSA, LSA, 12, 8, 12, LSA, 2, 1, 1 },
{ 0, 0, 4, 2, 4, 0, 2, 2, 1,
0, 0, 3, 1, 3, 0, 1, 1, 1 },
spell_null, TAR_IGNORE, POS_FIGHTING,
&gsn_hand_to_hand, TRUE, SLOT( 0), 0, 0,
"", "!Hand to Hand!", ""
},
{
"kick",
{ LSA, 18, 21, 12, 20, 17, 15, 12, 12,
LSA, 8, 11, 2, 10, 7, 5, 1, 2 },
{ 0, 4, 6, 3, 4, 6, 2, 3, 4,
0, 3, 5, 2, 3, 5, 1, 2, 3 },
spell_null, TAR_CHAR_OFFENSIVE, POS_FIGHTING,
&gsn_kick, TRUE, SLOT( 0), 0, 12,
"kick", "!Kick!", ""
},
{
"parry",
{ LSA, LSA, 19, 1, 15, 27, 17, 1, LSA,
LSA, LSA, 9, 1, 5, 17, 7, 1, LSA },
{ 0, 0, 4, 4, 5, 5, 2, 4, 0,
0, 0, 3, 3, 4, 4, 1, 3, 0 },
spell_null, TAR_IGNORE, POS_FIGHTING,
&gsn_parry, TRUE, SLOT( 0), 0, 0,
"", "!Parry!", ""
},
{
"rescue",
{ LSA, LSA, LSA, 1, 13, LSA, LSA, 2, LSA,
LSA, LSA, LSA, 1, 3, LSA, LSA, 1, LSA },
{ 0, 0, 0, 3, 4, 0, 0, 3, 0,
0, 0, 0, 2, 3, 0, 0, 2, 0 },
spell_null, TAR_IGNORE, POS_FIGHTING,
&gsn_rescue, TRUE, SLOT( 0), 0, 12,
"", "!Rescue!", ""
},
{
"trip",
{ LSA, LSA, 2, 22, 25, LSA, 5, 20, 8,
LSA, LSA, 1, 12, 15, LSA, 1, 10, 1 },
{ 0, 0, 4, 8, 5, 0, 3, 8, 4,
0, 0, 3, 7, 4, 0, 2, 7, 3 },
spell_null, TAR_IGNORE, POS_FIGHTING,
&gsn_trip, TRUE, SLOT( 0), 0, 24,
"trip", "!Trip!", ""
},
{
"stun",
{ LSA, LSA, LSA, 45, LSA, LSA, LSA, 55, LSA,
LSA, LSA, LSA, 23, LSA, LSA, LSA, 40, LSA },
{ 0, 0, 0, 3, 0, 0, 0, 4, 0,
0, 0, 0, 2, 0, 0, 0, 2, 0 },
spell_null, TAR_IGNORE, POS_FIGHTING,
&gsn_stun, TRUE, SLOT( 0), 0, 0,
"", "!Stun!", ""
},
{
"second attack",
{ 45, 36, 18, 7, 1, 25, 20, LSA, 1,
35, 26, 8, 6, 1, 15, 10, 80, 1 },
{ 7, 8, 5, 3, 4, 8, 2, 0, 2,
6, 7, 4, 2, 3, 7, 1, 2, 2 },
spell_null, TAR_IGNORE, POS_FIGHTING,
&gsn_second_attack, TRUE, SLOT( 0), 0, 0,
"", "!Second Attack!", ""
},
{
"third attack",
{ LSA, LSA, 83, 18, 29, LSA, 30, LSA, 15,
LSA, 90, 53, 8, 19, LSA, 20, 100, 5 },
{ 0, 0, 9, 4, 7, 0, 0, 0, 3,
0, 8, 8, 3, 6, 0, 2, 0, 2 },
spell_null, TAR_IGNORE, POS_FIGHTING,
&gsn_third_attack, TRUE, SLOT( 0), 0, 0,
"", "!Third Attack!", ""
},
{
"fourth attack",
{ LSA, LSA, LSA, 65, 80, LSA, LSA, LSA, 45,
LSA, LSA, 90, 55, 70, LSA, LSA, LSA, 35 },
{ 0, 0, 10, 4, 5, 0, 0, 0, 4,
0, 0, 9, 3, 4, 0, 0, 0, 3 },
spell_null, TAR_IGNORE, POS_FIGHTING,
&gsn_fourth_attack, TRUE, SLOT(0), 0, 0,
"", "!Fourth Attack!", ""
},
{
"fifth attack",
{ LSA, LSA, LSA, 80, 95, LSA, LSA, LSA, 65,
LSA, LSA, LSA, 70, 85, LSA, LSA, LSA, 55 },
{ 0, 0, 0, 4, 5, 0, 0, 0, 4,
0, 0, 0, 3, 4, 0, 0, 0, 3 },
spell_null, TAR_IGNORE, POS_FIGHTING,
&gsn_fifth_attack, TRUE, SLOT(0), 0, 0,
"", "!Fifth Attack!", ""
},
{
"sixth attack",
{ LSA, LSA, LSA, LSA, LSA, LSA, LSA, LSA, 80,
LSA, LSA, LSA, 95, 100, LSA, LSA, LSA, 70 },
{ 0, 0, 0, 0, 0, 0, 0, 0, 4,
0, 0, 0, 5, 0, 0, 0, 0, 3 },
spell_null, TAR_IGNORE, POS_FIGHTING,
&gsn_sixth_attack, TRUE, SLOT(0), 0, 0,
"", "!Sixth Attack!", ""
},
{
"seventh attack",
{ LSA, LSA, LSA, LSA, LSA, LSA, LSA, LSA, 95,
LSA, LSA, LSA, LSA, LSA, LSA, LSA, LSA, 85 },
{ 0, 0, 0, 0, 0, 0, 0, 0, 5,
0, 0, 0, 0, 0, 0, 0, 0, 4 },
spell_null, TAR_IGNORE, POS_FIGHTING,
&gsn_seventh_attack, TRUE, SLOT(0), 0, 0,
"", "!Seventh Attack!", ""
},
{
"eighth attack",
{ LSA, LSA, LSA, LSA, LSA, LSA, LSA, LSA, LSA,
LSA, LSA, LSA, LSA, LSA, LSA, LSA, LSA, 91 },
{ 0, 0, 0, 0, 0, 0, 0, 0, 5,
0, 0, 0, 0, 0, 0, 0, 0, 4 },
spell_null, TAR_IGNORE, POS_FIGHTING,
&gsn_eighth_attack, TRUE, SLOT(0), 0, 0,
"", "!Eighth Attack!", ""
},
{
"mega damage",
{ LSA, LSA, LSA, LSA, LSA, LSA, LSA, 35, LSA,
LSA, LSA, LSA, 60, 100, LSA, LSA, 25, LSA },
{ 0, 0, 0, 0, 0, 0, 0, 3, 0,
0, 0, 0, 4, 0, 0, 0, 2, 0 },
spell_null, TAR_IGNORE, POS_FIGHTING,
&gsn_mega_damage, TRUE, SLOT(0), 0, 0,
"", "!Mega Damage!", ""
},
{
"ultra damage",
{ LSA, LSA, LSA, LSA, LSA, LSA, LSA, 65, LSA,
LSA, LSA, LSA, LSA, LSA, LSA, LSA, 55, LSA },
{ 0, 0, 0, 0, 0, 0, 0, 5, 0,
0, 0, 0, 0, 0, 0, 0, 4, 0 },
spell_null, TAR_IGNORE, POS_FIGHTING,
&gsn_ultra_damage, TRUE, SLOT(0), 0, 0,
"", "!Ultra Damage!", ""
},
{
"critical strike",
{ LSA, LSA, LSA, LSA, LSA, LSA, LSA, LSA, 30,
LSA, LSA, LSA, LSA, LSA, LSA, LSA, LSA, 20 },
{ 0, 0, 0, 0, 0, 0, 0, 0, 7,
0, 0, 0, 0, 0, 0, 0, 0, 6 },
spell_null, TAR_IGNORE, POS_FIGHTING,
&gsn_critical_strike, TRUE, SLOT(0), 0, 0,
"", "!Critical Strike!", ""
},
/* non-combat skills */
{
"fast healing",
{ LSA, LSA, LSA, 9, 55, 34, 2, 9, LSA,
LSA, LSA, LSA, 1, 45, 24, 1, 1, LSA },
{ 0, 0, 0, 4, 8, 0, 1, 4, 0,
0, 0, 0, 3, 7, 0, 1, 3, 0 },
spell_null, TAR_IGNORE, POS_SLEEPING,
&gsn_fast_healing, TRUE, SLOT( 0), 0, 0,
"", "!Fast Healing!", ""
},
{
"haggle",
{ LSA, LSA, 1, LSA, LSA, LSA, 12, LSA, LSA,
LSA, LSA, 1, LSA, LSA, LSA, 2, LSA, LSA },
{ 0, 0, 3, 0, 0, 0, 3, 0, 0,
0, 0, 2, 0, 0, 0, 2, 0, 0 },
spell_null, TAR_IGNORE, POS_RESTING,
&gsn_haggle, TRUE, SLOT( 0), 0, 0,
"", "!Haggle!", ""
},
{
"hide",
{ LSA, LSA, 1, LSA, 5, LSA, 1, LSA, 1,
LSA, LSA, 1, LSA, 1, LSA, 1, LSA, 1 },
{ 0, 0, 3, 0, 5, 0, 3, 0, 3,
0, 0, 2, 0, 4, 0, 2, 0, 2 },
spell_null, TAR_IGNORE, POS_RESTING,
&gsn_hide, TRUE, SLOT( 0), 0, 12,
"", "!Hide!", ""
},
{
"lore",
{ 15, 15, 9, LSA, 5, 14, LSA, LSA, 15,
5, 5, 1, LSA, 4, 4, LSA, LSA, 10 },
{ 6, 6, 4, 0, 4, 5, 0, 0, 4,
5, 5, 3, 0, 3, 4, 0, 0, 3 },
spell_null, TAR_IGNORE, POS_RESTING,
&gsn_lore, TRUE, SLOT( 0), 0, 36,
"", "!Lore!", ""
},
{
"pinch",
{ LSA, LSA, LSA, LSA, LSA, LSA, LSA, LSA, LSA,
LSA, LSA, LSA, LSA, LSA, LSA, LSA, LSA, 65 },
{ 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 4 },
spell_null, TAR_IGNORE, POS_FIGHTING,
&gsn_pinch, TRUE, SLOT( 0 ), 0, 10,
"", "Your blood once again flows freely.", ""
},
{
"meditation",
{ 9, 9, LSA, LSA, 15, 13, LSA, LSA, LSA,
3, 1, LSA, LSA, 5, 3, 70, 15, LSA },
{ 5, 5, 0, 0, 6, 6, 0, 0, 0,
4, 4, 0, 0, 5, 5, 6, 5, 0 },
spell_null, TAR_IGNORE, POS_SLEEPING,
&gsn_meditation, TRUE, SLOT( 0), 0, 0,
"", "Meditation", ""
},
{
"peek",
{ LSA, LSA, 1, LSA, LSA, LSA, 4, LSA, LSA,
LSA, LSA, 1, LSA, LSA, LSA, 1, LSA, LSA },
{ 0, 0, 3, 0, 0, 0, 4, 0, 0,
0, 0, 2, 0, 0, 0, 3, 0, 0 },
spell_null, TAR_IGNORE, POS_STANDING,
&gsn_peek, TRUE, SLOT( 0), 0, 0,
"", "!Peek!", ""
},
{
"pick lock",
{ LSA, LSA, 10, LSA, LSA, LSA, LSA, LSA, LSA,
LSA, LSA, 6, LSA, LSA, LSA, LSA, LSA, LSA },
{ 0, 0, 4, 0, 0, 0, 0, 0, 0,
0, 0, 3, 0, 0, 0, 0, 0, 0 },
spell_null, TAR_IGNORE, POS_STANDING,
&gsn_pick_lock, TRUE, SLOT( 0), 0, 12,
"", "!Pick!", ""
},
{
"sneak",
{ LSA, LSA, 2, LSA, 6, LSA, 3, LSA, 2,
LSA, LSA, 1, LSA, 5, LSA, 2, LSA, 1 },
{ 0, 0, 2, 0, 3, 0, 2, 0, 2,
0, 0, 1, 0, 2, 0, 1, 0, 1 },
spell_null, TAR_IGNORE, POS_STANDING,
&gsn_sneak, TRUE, SLOT( 0), 0, 12,
"", "You no longer feel stealthy.", ""
},
{
"steal",
{ LSA, LSA, 7, LSA, LSA, LSA, LSA, LSA, LSA,
LSA, LSA, 5, LSA, LSA, LSA, LSA, LSA, LSA },
{ 0, 0, 4, 0, 0, 0, 0, 0,
0, 0, 3, 0, 0, 0, 0, 0 },
spell_null, TAR_IGNORE, POS_STANDING,
&gsn_steal, TRUE, SLOT( 0), 0, 12,
"", "!Steal!", ""
},
{
"scrolls",
{ 2, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1 },
{ 2, 2, 2, 2, 2, 2, 2, 2, 2,
2, 2, 2, 2, 2, 2, 2, 2, 2 },
spell_null, TAR_IGNORE, POS_STANDING,
&gsn_scrolls, TRUE, SLOT( 0), 0, 24,
"", "!Scrolls!", ""
},
{
"staves",
{ 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1 },
{ 2, 3, 0, 0, 7, 3, 0, 0, 4,
1, 2, 0, 0, 6, 2, 0, 0, 3 },
spell_null, TAR_IGNORE, POS_STANDING,
&gsn_staves, TRUE, SLOT( 0), 0, 12,
"", "!Staves!", ""
},
{
"track",
{ LSA, LSA, LSA, LSA, 20, LSA, LSA, LSA, LSA,
LSA, LSA, LSA, LSA, 10, LSA, LSA, LSA, LSA },
{ 0, 0, 0, 0, 2, 0, 0, 0, 0,
0, 0, 0, 0, 1, 0, 0, 0, 0 },
spell_null, TAR_IGNORE, POS_STANDING,
&gsn_track, TRUE, SLOT( 0), 0, 12,
"", "!Track!", ""
},
{
"wands",
{ 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1 },
{ 2, 3, 0, 0, 7, 3, 0, 0, 4,
1, 2, 0, 0, 6, 2, 0, 0, 3 },
spell_null, TAR_IGNORE, POS_STANDING,
&gsn_wands, TRUE, SLOT( 0), 0, 12,
"", "!Wands!", ""
},
{
"multicast",
{ LSA, LSA, LSA, LSA, LSA, LSA, LSA, LSA, LSA,
60, 80, LSA, LSA, LSA, 90, LSA, LSA, LSA },
{ 0, 0, 0, 0, 0, 0, 0, 0, 0,
3, 5, 0, 0, 0, 3, 0, 0, 0 },
spell_null, TAR_IGNORE, POS_STANDING,
&gsn_multi_cast, TRUE, SLOT( 0), 0, 12,
"", "!Multi!", ""
},
{
"dual circle",
{ LSA, LSA, LSA, LSA, LSA, LSA, LSA, LSA, LSA,
LSA, LSA, 90, LSA, LSA, LSA, LSA, LSA, LSA },
{ 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 6, 0, 0, 0, 0, 0, 0 },
spell_null, TAR_IGNORE, POS_STANDING,
&gsn_dual_circle, TRUE, SLOT( 0), 0, 8,
"", "!Dual Circle!", ""
},
{
"snare",
{ LSA, LSA, LSA, LSA, LSA, LSA, LSA, LSA, LSA,
LSA, LSA, 90, LSA, LSA, LSA, LSA, LSA, LSA },
{ 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 5, 0, 0, 0, 0, 0, 0 },
spell_null, TAR_IGNORE, POS_FIGHTING,
&gsn_snare, TRUE, SLOT( 0), 0, 12,
"", "You feel free to move once again.", ""
},
{
"recall",
{ 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1 },
{ 2, 2, 2, 2, 2, 2, 2, 2, 2,
1, 1, 1, 1, 1, 1, 1, 1, 1 },
spell_null, TAR_IGNORE, POS_STANDING,
&gsn_recall, TRUE, SLOT( 0), 0, 4,
"", "!Recall!", ""
}
};
const struct group_type group_table [MAX_GROUP] =
{
{
"rom basics",
{ 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0 },
{ "recall" }
},
{
"mage basics",
{ 0, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1 },
{ "dagger" }
},
{
"cleric basics",
{ -1, 0, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1 },
{ "mace" }
},
{
"thief basics",
{ -1, -1, 0, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1 },
{ "dagger", "steal", "pass door" }
},
{
"warrior basics",
{ -1, -1, -1, 0, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1 },
{ "sword", "second attack", "dual wield" }
},
{
"ranger basics",
{ -1, -1, -1, -1, 0, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1 },
{ "spear", "second attack", "track", "healing", "weather" }
},
{
"druid basics",
{ -1, -1, -1, -1, -1, 0, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1 },
{ "polearm", "invisibility" }
},
{
"vampire basics",
{ -1, -1, -1, -1, -1, -1, 0, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1 },
{ "dagger", "hide", "sneak" }
},
{
"knight basics",
{ -1, -1, -1, -1, -1, -1, -1, 0, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1 },
{ "sword", "dual wield", "mace" }
},
{
"monk basics",
{ -1, -1, -1, -1, -1, -1, -1, 0,
-1, -1, -1, -1, -1, -1, -1, -1 },
{ "hand to hand", "second attack" }
},
{
"wizard basics",
{ -1, -1, -1, -1, -1, -1, -1, -1, -1,
0, -1, -1, -1, -1, -1, -1, -1, -1 },
{ "dagger" }
},
{
"priest basics",
{ -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 0, -1, -1, -1, -1, -1, -1, -1 },
{ "mace" }
},
{
"mercenary basics",
{ -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 0, -1, -1, -1, -1, -1, -1 },
{ "dagger", "steal", "grip", "pass door" }
},
{
"gladiator basics",
{ -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, 0, -1, -1, -1, -1, -1 },
{ "sword", "second attack", "dual wield" }
},
{
"strider basics",
{ -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 0, -1, -1, -1, -1 },
{ "dagger", "second attack", "track" }
},
{
"sage basics",
{ -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 0, -1, -1, -1 },
{ "polearm", "invisibility" }
},
{
"lich basics",
{ -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 0, -1, -1 },
{ "dagger", "hide", "sneak", "feed" }
},
{
"paladin basics",
{ -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 0, -1 },
{ "sword", "dual wield", "mace" }
},
{
"shaolin basics",
{ -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, 0 },
{ "hand to hand", "second attack" }
},
{
"mage default",
{ 40, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1 },
{
"lore",
"beguiling",
"combat",
"detection",
"enhancement",
"illusion",
"necromancy",
"protective",
"shielding",
"transportation",
"weather"
}
},
{
"cleric default",
{ -1, 40, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1 },
{
"flail",
"attack",
"benedictions",
"creation",
"curative",
"detection",
"healing",
"maladictions",
"protective",
"shield block",
"transportation",
"weather"
}
},
{
"thief default",
{ -1, -1, 40, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1 },
{
"backstab",
"circle",
"disarm",
"dodge",
"hide",
"mace",
"peek",
"pick lock",
"sneak",
"sword",
"trip",
"second attack",
"charm person"
}
},
{
"warrior default",
{ -1, -1, -1, 40, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1 },
{
"weaponsmaster",
"bash",
"disarm",
"enhanced damage",
"grip",
"parry",
"rescue",
"shield block",
"third attack",
"fourth attack"
}
},
{
"ranger default",
{ -1, -1, -1, -1, 40, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1 },
{
"weaponsmaster",
"dirt kick",
"enhanced damage",
"envenom",
"hand to hand",
"kick",
"parry",
"shield block",
"third attack",
"curative",
"transportation",
"earthquake"
}
},
{
"druid default",
{ -1, -1, -1, -1, -1, 40, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1 },
{
"lore",
"shield block",
"second attack",
"attack",
"benedictions",
"combat",
"creation",
"curative",
"healing",
"protective",
"weather",
"harm"
}
},
{
"vampire default",
{ -1, -1, -1, -1, -1, -1, 40, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1 },
{
"backstab",
"disarm",
"dodge",
"fast healing",
"feed",
"hand to hand",
"shield block",
"beguiling",
"detection",
"enhancement",
"illusion",
"maladictions",
"transportation"
}
},
{
"knight default",
{ -1, -1, -1, -1, -1, -1, -1, 40, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1 },
{
"weaponsmaster",
"enhanced damage",
"fast healing",
"parry",
"shield block",
"bash",
"rescue",
"grip",
"disarm",
"mega damage"
}
},
{
"monk default",
{ -1, -1, -1, -1, -1, -1, -1, -1, 40,
-1, -1, -1, -1, -1, -1, -1, -1, -1 },
{
"third attack",
"fourth attack",
"fifth attack",
"sixth attack",
"dodge"
}
},
{
"wizard default",
{ -1, -1, -1, -1, -1, -1, -1, -1, -1,
40, -1, -1, -1, -1, -1, -1, -1, -1 },
{
"lore",
"beguiling",
"combat",
"detection",
"enhancement",
"illusion",
"necromancy",
"protective",
"shielding",
"transportation",
"weather",
"cure blindness"
}
},
{
"priest default",
{ -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 40, -1, -1, -1, -1, -1, -1, -1 },
{
"flail",
"shield block",
"attack",
"benedictions",
"creation",
"curative",
"detection",
"healing",
"maladictions",
"protective",
"transportation",
"weather"
}
},
{
"mercenary default",
{ -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 40, -1, -1, -1, -1, -1, -1 },
{
"backstab",
"circle",
"disarm",
"dodge",
"dual wield",
"hide",
"mace",
"peek",
"pick lock",
"sneak",
"sword",
"trip",
"second attack",
"charm person"
}
},
{
"gladiator default",
{ -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, 40, -1, -1, -1, -1, -1 },
{
"weaponsmaster",
"bash",
"disarm",
"enhanced damage",
"parry",
"rescue",
"shield block",
"third attack",
"fourth attack"
}
},
{
"strider default",
{ -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 40, -1, -1, -1, -1 },
{
"weaponsmaster",
"dual wield",
"enhanced damage",
"envenom",
"hand to hand",
"kick",
"parry",
"third attack",
"beguiling",
"curative",
"healing",
"protective",
"transportation"
}
},
{
"sage default",
{ -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 40, -1, -1, -1 },
{
"lore",
"shield block",
"second attack",
"attack",
"benedictions",
"combat",
"creation",
"curative",
"healing",
"protective",
"weather"
}
},
{
"lich default",
{ -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 40, -1, -1 },
{
"backstab",
"detection",
"disarm",
"dodge",
"fast healing",
"hand to hand",
"shield block",
"beguiling",
"enhancement",
"illusion",
"maladictions",
"transportation"
}
},
{
"paladin default",
{ -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 40, -1 },
{
"weaponsmaster",
"enhanced damage",
"fast healing",
"parry",
"shield block",
"bash",
"rescue",
"grip",
"disarm",
"mega damage"
}
},
{
"shaolin default",
{ -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, 40 },
{
"third attack",
"fourth attack",
"fifth attack",
"sixth attack",
"dodge"
}
},
{
"weaponsmaster",
{ -1, -1, 40, 20, 30, -1, 30, 20, -1,
-1, -1, 40, 20, 30, -1, 30, 20, -1 },
{ "axe", "dagger", "flail", "mace", "polearm", "spear", "sword",
"whip" }
},
{
"advanced detection",
{ -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 4, -1, -1, -1, 4, -1, -1 },
{ "detect poison", "identify", "know alignment", "locate object",
"true sight" }
},
{
"beguiling",
{ 3, -1, 5, -1, -1, 5, 6, -1, -1,
2, -1, 4, -1, 3, 4, 5, -1, -1 },
{ "animate", "calm", "charm person", "resurrect", "sleep" }
},
{
"benedictions",
{ -1, 4, -1, -1, -1, -1, -1, -1, -1,
-1, 3, -1, -1, 6, 3, -1, 4, -1 },
{ "bless", "calm", "frenzy", "remove curse" }
},
{
"combat",
{ 5, -1, -1, -1, 3, 5, 5, -1, -1,
4, -1, -1, -1, -1, 4, 4, -1, -1 },
{ "acid blast", "burning hands", "chain lightning", "chill touch",
"colour spray", "fireball", "lightning bolt", "magic missile",
"shocking grasp" }
},
{
"creation",
{ 4, 4, -1, -1, 7, 4, -1, -1, -1,
3, 3, -1, -1, 6, 3, -1, -1, -1 },
{ "continual light", "create food", "create spring", "create water",
"create rose", "empower", "floating disc" }
},
{
"curative",
{ -1, 4, -1, -1, -1, 5, -1, -1, -1,
-1, 3, -1, -1, -1, 4, -1, 4, -1 },
{ "cure blindness", "cure disease", "cure poison" }
},
{
"detection",
{ 4, 3, 5, -1, 5, 4, 5, -1, -1,
3, 2, -1, -1, 6, 3, -1, -1, -1 },
{ "detect evil", "detect good", "detect hidden", "detect invis",
"detect magic", "detect poison", "farsight", "identify",
"know alignment", "locate object" }
},
{
"draconian",
{ 8, -1, -1, -1, -1, -1, -1, -1, -1,
7, -1, -1, -1, -1, -1, 11, -1, -1 },
{ "acid breath", "fire breath", "frost breath", "gas breath",
"lightning breath" }
},
{
"elemental",
{ -1, -1, -1, -1, 5, 6, -1, -1, -1,
-1, -1, -1, -1, 4, 4, -1, -1, -1 },
{ "blast of water", "cone of cold", "earthquake", "flamestrike",
"frost dart", "stone rain" }
},
{
"enchantment",
{ 4, -1, -1, -1, -1, -1, -1, -1, -1,
3, -1, -1, -1, -1, 3, -1, -1, -1 },
{ "enchant armor", "enchant weapon", "fireproof", "recharge" }
},
{
"enhancement",
{ 5, -1, -1, -1, -1, 4, 6, -1, -1,
4, -1, -1, -1, 3, 3, 5, -1, -1 },
{ "giant strength", "haste", "infravision", "refresh" }
},
{
"harmful",
{ -1, 4, -1, -1, -1, 5, -1, -1, -1,
-1, 3, -1, -1, -1, 4, -1, -1, -1 },
{ "cause critical", "cause light", "cause serious", "harm",
"heat metal" }
},
{
"healing",
{ -1, 3, -1, -1, -1, -1, -1, -1, -1,
-1, 2, -1, -1, -1, -1, -1, -1, -1 },
{ "complete healing", "cure critical", "cure light", "cure serious",
"godheal", "heal", "mass healing" }
},
{
"holy powers",
{ -1, 6, -1, -1, -1, -1, -1, -1, -1,
-1, 4, -1, -1, -1, -1, -1, -1, -1 },
{ "demonfire", "dispel evil", "dispel good", "divine fury",
"holy word", "ray of truth" }
},
{
"illusion",
{ 4, -1, 7, -1, 7, -1, 4, -1, -1,
3, -1, 6, -1, 6, -1, 3, -1, -1 },
{ "invis", "mass invis", "ventriloquate" }
},
{
"maladictions",
{ -1, 5, -1, -1, -1, 8, 5, -1, -1,
-1, 4, -1, -1, 5, 7, 4, -1, -1 },
{ "blindness", "curse", "energy drain", "plague",
"poison", "slow", "weaken" }
},
{
"minor healing",
{ -1, -1, -1, -1, -1, 6, -1, -1, -1,
-1, -1, -1, -1, 6, 5, -1, 4, -1 },
{ "cure critical", "cure light", "cure serious", "heal" }
},
{
"necromancy",
{ 6, -1, -1, -1, -1, -1, -1, -1, -1,
4, -1, -1, -1, -1, -1, -1, -1, -1 },
{ "blind", "conjure", "curse", "energy drain", "poison",
"plague", "sanction", "slow", "voodoo", "weaken" }
},
{
"protective",
{ 4, 4, -1, -1, -1, 5, -1, -1, -1,
3, 3, -1, -1, -1, 4, -1, 4, -1 },
{ "armor", "cancellation", "dispel magic", "fireproof",
"protection evil", "protection good", "sanctuary", "shield",
"stone skin" }
},
{
"shielding",
{ 8, 8, -1, -1, -1, 8, -1, -1, -1,
6, 7, -1, -1, -1, 7, -1, -1, -1 },
{ "iceshield", "fireshield", "shockshield" }
},
{
"transportation",
{ 4, 4, -1, -1, -1, 6, 5, -1, -1,
3, 3, 6, -1, 5, 5, 4, -1, -1 },
{ "fly", "gate", "nexus", "pass door", "portal", "summon", "teleport",
"transport", "word of recall" }
},
{
"weather",
{ -1, -1, -1, -1, 5, 5, -1, -1, -1,
3, -1, -1, -1, 4, 4, -1, -1, -1 },
{ "call lightning", "control weather", "faerie fire", "faerie fog",
"lightning bolt" }
}
};