/
roa/
roa/lib/boards/
roa/lib/config/
roa/lib/edits/
roa/lib/help/
roa/lib/misc/
roa/lib/plrobjs/
roa/lib/quests/
roa/lib/socials/
roa/lib/www/
roa/lib/www/LEDSign/
roa/lib/www/LEDSign/fonts/
roa/lib/www/LEDSign/scripts/
roa/src/s_inc/
roa/src/sclient/
roa/src/sclient/binary/
roa/src/sclient/text/
roa/src/util/
/************************************************************************
	Realms of Aurealis 		James Rhone aka Vall of RoA

classes.c				Code dealing with filling and
					assignment of classes... perhaps
					OLCable classes someday...

		******** 100% Completely Original Code ********
		*** BE AWARE OF ALL RIGHTS AND RESERVATIONS ***
		******** 100% Completely Original Code ********
		        All rights reserved henceforth. 

    Please note that no guarantees are associated with any code from
Realms of Aurealis.  All code which has been released to the general
public has been done so with an 'as is' pretense.  RoA is based on both
Diku and CircleMUD and ALL licenses from both *MUST* be adhered to as well
as the RoA license.   *** Read, Learn, Understand, Improve ***
*************************************************************************/
#include "conf.h"
#include "sysdep.h"

#include "structures.h"
#include "utils.h"
#include "comm.h"
#include "db.h"
#include "interpreter.h" 
#include "acmd.h"
#include "magic.h"
#include "handler.h"
#include "nature.h"
#include "affect.h"
#include "lists.h"
#include "darkenelf.h"
#include "global.h"

// fill this slot of clarray with this info  7/8/98 -jtrhone
void fill_class(int cnum, char *cname, char *ab, char *mleg, char *fleg, char *title, int perc,
                int str, int intel, int wis, int dex, int con)
{
  strcpy(clarray[cnum].class_name, cname);
  strcpy(clarray[cnum].class_abbrev, ab);
  strcpy(clarray[cnum].male_legend, mleg);
  strcpy(clarray[cnum].female_legend, fleg);
  strcpy(clarray[cnum].default_title, title);
  clarray[cnum].max_perc = perc;
  clarray[cnum].str = str;
  clarray[cnum].intel = intel;
  clarray[cnum].wis = wis;
  clarray[cnum].dex = dex;
  clarray[cnum].con = con;
}

// add a spell to a particular class... 7/8/98 -jtrhone
void skill_to_class(int cnum, int skl, BOOL innate, BOOL learnable, int minlevel)
{
  clarray[cnum].skills[skl].innate    = innate;
  clarray[cnum].skills[skl].learnable = learnable;
  clarray[cnum].skills[skl].minlevel  = minlevel;
}

// fill classes with meaningful default data  7/9/98 -jtrhone
void init_classes(void)
{
  int c, i;

  for (c = 0; c <= NUM_CLASSES; c++)
  {
    fill_class(c, "default", "---", "------", "------", "the newbie somethin or other.", 0, 0, 1, 2, 3, 4);
    for (i = 0; i < MAX_SKILLS; i++)
      skill_to_class(c, i, FALSE, FALSE, LEV_IMM);
  }
}

// using clinfo array, fill in class information here...
void assign_classes(void)
{
  init_classes();

  // // // // // 
  // Mages...
  // // // // // 
  fill_class(CLASS_MAGE, "mage", "Mag", "Wizard", "Wizard", "the newbie mage.", 95, 3, 0, 1, 2, 4);
  skill_to_class(CLASS_MAGE, SKILL_FIRST_AID, TRUE, FALSE,               1);
  skill_to_class(CLASS_MAGE, SPELL_MAGIC_MISSILE, TRUE, FALSE,           1);
  skill_to_class(CLASS_MAGE, SPELL_DETECT_MAGIC, TRUE, FALSE,            2);
  skill_to_class(CLASS_MAGE, SPELL_DETECT_INVISIBLE, TRUE, FALSE,        2);
  skill_to_class(CLASS_MAGE, SPELL_CHILL_TOUCH, TRUE, FALSE,             3);
  skill_to_class(CLASS_MAGE, SPELL_INVISIBLE, TRUE, FALSE ,              4);
  skill_to_class(CLASS_MAGE, SPELL_ARMOR, TRUE, FALSE ,                  5);
  skill_to_class(CLASS_MAGE, SPELL_BURNING_HANDS, TRUE, FALSE ,          5);
  skill_to_class(CLASS_MAGE, SPELL_IDENTIFY, TRUE, FALSE ,               5);
  skill_to_class(CLASS_MAGE, SPELL_LOCATE_OBJECT, TRUE, FALSE,           6);
  skill_to_class(CLASS_MAGE, SPELL_STRENGTH, TRUE, FALSE ,               7);
  skill_to_class(CLASS_MAGE, SPELL_SHOCKING_GRASP, TRUE, FALSE,          7);
  skill_to_class(CLASS_MAGE, SPELL_TELEPORT, TRUE, FALSE,                8);
  skill_to_class(CLASS_MAGE, SPELL_BLINDNESS, TRUE, FALSE,               8);
  skill_to_class(CLASS_MAGE, SPELL_LIGHTNING_BOLT, TRUE, FALSE,          9);
  skill_to_class(CLASS_MAGE, SPELL_CONTROL_WEATHER, TRUE, FALSE,        10);
  skill_to_class(CLASS_MAGE, SPELL_COLOUR_SPRAY, TRUE, FALSE,           11);
  skill_to_class(CLASS_MAGE, SPELL_CURSE, TRUE, FALSE,                  12);
  skill_to_class(CLASS_MAGE, SPELL_ENCHANT_WEAPON, TRUE, FALSE,         12);
  skill_to_class(CLASS_MAGE, SPELL_ENERGY_DRAIN, TRUE, FALSE,           13);
  skill_to_class(CLASS_MAGE, SPELL_SLEEP, TRUE, FALSE, 			14);
  skill_to_class(CLASS_MAGE, SPELL_CHARM_PERSON, TRUE, FALSE, 		14);
  skill_to_class(CLASS_MAGE, SPELL_FIREFLASH, TRUE, FALSE,		15);
  skill_to_class(CLASS_MAGE, SPELL_ANIMATE_DEAD, TRUE, FALSE,		15);
  skill_to_class(CLASS_MAGE, SPELL_IMPLOSION, TRUE, FALSE, 		18);
  skill_to_class(CLASS_MAGE, SPELL_WINGS, TRUE, FALSE,			20);
  skill_to_class(CLASS_MAGE, SPELL_GILLS, TRUE, FALSE,			20);
  skill_to_class(CLASS_MAGE, SPELL_VOID, TRUE, FALSE,			22);
  skill_to_class(CLASS_MAGE, SPELL_KNOCK, TRUE, FALSE,			23);
  skill_to_class(CLASS_MAGE, SPELL_STONE_SKIN, TRUE, FALSE,		25);
  skill_to_class(CLASS_MAGE, SPELL_ARMOR_GOLEM, TRUE, FALSE,		28);
  skill_to_class(CLASS_MAGE, SPELL_CHAIN_LIGHTNING, TRUE, FALSE,	29);
  skill_to_class(CLASS_MAGE, SPELL_HASTE, TRUE, FALSE,			30);
  skill_to_class(CLASS_MAGE, SPELL_RECHARGE, TRUE, FALSE,		33);
  skill_to_class(CLASS_MAGE, SPELL_FIREBALL, TRUE, FALSE,		34);
  skill_to_class(CLASS_MAGE, SPELL_ICE_SHAFT, TRUE, FALSE, 		35);
  skill_to_class(CLASS_MAGE, SPELL_PROJECT, TRUE, FALSE, 		37);
  skill_to_class(CLASS_MAGE, SPELL_FIREWALL, TRUE, FALSE,		40);
  skill_to_class(CLASS_MAGE, SPELL_CIRCLE_OF_WARDING, TRUE, FALSE,	42);
  skill_to_class(CLASS_MAGE, SPELL_MIRRORIMAGE, TRUE, FALSE,		45);
  skill_to_class(CLASS_MAGE, SPELL_GATEWAY, TRUE, FALSE,		50);
  skill_to_class(CLASS_MAGE, SPELL_GASCLOUD, TRUE, FALSE,		52);
  skill_to_class(CLASS_MAGE, SPELL_ICEWALL, TRUE, FALSE,		55);
  skill_to_class(CLASS_MAGE, SPELL_WALLOFFOG, TRUE, FALSE,		57);
  skill_to_class(CLASS_MAGE, SPELL_TYPHOON, TRUE, FALSE,		60);
  skill_to_class(CLASS_MAGE, SPELL_ABSOLUTE_WARD, TRUE, FALSE,		60);
  skill_to_class(CLASS_MAGE, SPELL_AREA_OF_RETURN, TRUE, FALSE,		63);
  skill_to_class(CLASS_MAGE, SPELL_RETURN, TRUE, FALSE,			63);
  skill_to_class(CLASS_MAGE, SPELL_BLINDWALL, TRUE, FALSE,		65);
  skill_to_class(CLASS_MAGE, SPELL_CONFUSION, TRUE, FALSE,		68);
  skill_to_class(CLASS_MAGE, SPELL_SWARM, TRUE, FALSE,			70);

  // // // // // 
  // Clerics...
  // // // // // 
  fill_class(CLASS_CLERIC, "cleric", "Cle", "Bishop", "Bishop", "the newbie cleric.", 95, 2, 1, 0, 3, 4);
  skill_to_class(CLASS_CLERIC, SKILL_FIRST_AID, TRUE, FALSE,		 1);
  skill_to_class(CLASS_CLERIC, SPELL_ARMOR, TRUE, FALSE,		 1);
  skill_to_class(CLASS_CLERIC, SPELL_CURE_LIGHT, TRUE, FALSE,		 1);
  skill_to_class(CLASS_CLERIC, SPELL_DETECT_POISON, TRUE, FALSE,	 2);
  skill_to_class(CLASS_CLERIC, SPELL_CREATE_WATER, TRUE, FALSE,		 2);
  skill_to_class(CLASS_CLERIC, SPELL_DETECT_MAGIC, TRUE, FALSE,		 3);
  skill_to_class(CLASS_CLERIC, SPELL_CREATE_FOOD, TRUE, FALSE,		 3);
  skill_to_class(CLASS_CLERIC, SPELL_DETECT_EVIL, TRUE, FALSE,		 4);
  skill_to_class(CLASS_CLERIC, SPELL_CURE_BLIND, TRUE, FALSE,		 4);
  skill_to_class(CLASS_CLERIC, SPELL_BLESS, TRUE, FALSE,		 5);
  skill_to_class(CLASS_CLERIC, SPELL_DETECT_INVISIBLE, TRUE, FALSE,	 5);
  skill_to_class(CLASS_CLERIC, SPELL_BLINDNESS, TRUE, FALSE,		 6);
  skill_to_class(CLASS_CLERIC, SPELL_PROTECT_FROM_EVIL, TRUE, FALSE,  	 6);
  skill_to_class(CLASS_CLERIC, SPELL_PROTECT_FROM_GOOD, TRUE, FALSE,	 6);
  skill_to_class(CLASS_CLERIC, SPELL_SENSE_LIFE, TRUE, FALSE,		 7);
  skill_to_class(CLASS_CLERIC, SPELL_EARTHQUAKE, TRUE, FALSE,		 7);
  skill_to_class(CLASS_CLERIC, SPELL_POISON, TRUE, FALSE,		 8);
  skill_to_class(CLASS_CLERIC, SPELL_SUMMON, TRUE, FALSE,		 8);
  skill_to_class(CLASS_CLERIC, SPELL_REMOVE_POISON, TRUE, FALSE,	 9);
  skill_to_class(CLASS_CLERIC, SPELL_CURE_CRITIC, TRUE, FALSE,		 9);
  skill_to_class(CLASS_CLERIC, SPELL_DISPEL_EVIL, TRUE, FALSE,		 10);
  skill_to_class(CLASS_CLERIC, SPELL_LOCATE_OBJECT, TRUE, FALSE,	 10);
  skill_to_class(CLASS_CLERIC, SPELL_PROTECT_UNDEAD, TRUE, FALSE,	 10);
  skill_to_class(CLASS_CLERIC, SPELL_WORD_OF_RECALL, TRUE, FALSE,	 11);
  skill_to_class(CLASS_CLERIC, SPELL_REMOVE_CURSE, TRUE, FALSE,		 12);
  skill_to_class(CLASS_CLERIC, SPELL_CALL_LIGHTNING, TRUE, FALSE,	 12);
  skill_to_class(CLASS_CLERIC, SPELL_CONTROL_WEATHER, TRUE, FALSE,	 13);
  skill_to_class(CLASS_CLERIC, SPELL_SANCTUARY, TRUE, FALSE,		 13);
  skill_to_class(CLASS_CLERIC, SPELL_HEAL, TRUE, FALSE,			 14);
  skill_to_class(CLASS_CLERIC, SPELL_ANIMATE_DEAD, TRUE, FALSE,		 15);
  skill_to_class(CLASS_CLERIC, SPELL_HARM, TRUE, FALSE,			 15);
  skill_to_class(CLASS_CLERIC, SPELL_ILLUMINATE, TRUE, FALSE,		 16);
  skill_to_class(CLASS_CLERIC, SPELL_FORCEFUL_WIND, TRUE, FALSE,	 18);
  skill_to_class(CLASS_CLERIC, SPELL_WINGS, TRUE, FALSE,		 20);
  skill_to_class(CLASS_CLERIC, SPELL_GILLS, TRUE, FALSE,		 20);
  skill_to_class(CLASS_CLERIC, SPELL_STONE_SKIN, TRUE, FALSE,		 21);
  skill_to_class(CLASS_CLERIC, SPELL_CALM, TRUE, FALSE,			 31);
  skill_to_class(CLASS_CLERIC, SPELL_P_HEAL, TRUE, FALSE,		 40);
  skill_to_class(CLASS_CLERIC, SPELL_HOLD_PERSON, TRUE, FALSE,		 41);
  skill_to_class(CLASS_CLERIC, SPELL_VIEW_HIDDEN, TRUE, FALSE,		 42);
  skill_to_class(CLASS_CLERIC, SPELL_SHOWEROFLIFE, TRUE, FALSE,		 50);
  skill_to_class(CLASS_CLERIC, SPELL_LOCATE_BEING, TRUE, FALSE,		 55);
  skill_to_class(CLASS_CLERIC, SPELL_SILENCE, TRUE, FALSE,		 65);
  skill_to_class(CLASS_CLERIC, SPELL_RETRIEVE_CORPSE, TRUE, FALSE,	 70);

  // // // // // 
  // Thieves...
  // // // // // 
  fill_class(CLASS_THIEF, "thief", "Thf", "Master", "Master", "the newbie thief.", 90, 2, 3, 4, 0, 1);
  skill_to_class(CLASS_THIEF, SKILL_FIRST_AID, TRUE, FALSE,  	1);
  skill_to_class(CLASS_THIEF, SKILL_BACKSTAB, TRUE, FALSE,  	1);
  skill_to_class(CLASS_THIEF, SKILL_HIDE, TRUE, FALSE,  	2);
  skill_to_class(CLASS_THIEF, SKILL_PICK_LOCK, TRUE, FALSE,  	3);
  skill_to_class(CLASS_THIEF, SKILL_STEAL, TRUE, FALSE,  	4);
  skill_to_class(CLASS_THIEF, SKILL_DETECTTRAP, TRUE, FALSE,  	5);
  skill_to_class(CLASS_THIEF, SKILL_REMOVETRAP, TRUE, FALSE,  	6);
  skill_to_class(CLASS_THIEF, SKILL_EAVESDROP, TRUE, FALSE,  	7);
  skill_to_class(CLASS_THIEF, SKILL_BREW, TRUE, FALSE, 	 	8);
  skill_to_class(CLASS_THIEF, SKILL_TPOISON, TRUE, FALSE,  	9);
  skill_to_class(CLASS_THIEF, SKILL_SNEAK, TRUE, FALSE,  	10);
  skill_to_class(CLASS_THIEF, SKILL_SEALEXIT, TRUE, FALSE,  	11);
  skill_to_class(CLASS_THIEF, SKILL_DOUBLE, TRUE, FALSE,  	12);
  skill_to_class(CLASS_THIEF, SKILL_PARRY, TRUE, FALSE,  	14);
  skill_to_class(CLASS_THIEF, SKILL_BLINDSTRIKE, TRUE, FALSE,  	16);
  skill_to_class(CLASS_THIEF, SKILL_DARTTRAP, TRUE, FALSE,  	18);
  skill_to_class(CLASS_THIEF, SKILL_JAMLOCK, TRUE, FALSE,  	20);
  skill_to_class(CLASS_THIEF, SKILL_POISONBLADE, TRUE, FALSE,  	22);
  skill_to_class(CLASS_THIEF, SKILL_STUNTOUCH, TRUE, FALSE,  	24);
  skill_to_class(CLASS_THIEF, SKILL_REDIRECT, TRUE, FALSE,  	26);
  skill_to_class(CLASS_THIEF, SKILL_POISONTRAP, TRUE, FALSE,  	28);
  skill_to_class(CLASS_THIEF, SKILL_SETSNARE, TRUE, FALSE,  	30);
  skill_to_class(CLASS_THIEF, SKILL_DETECTSNARE, TRUE, FALSE,  	32);
  skill_to_class(CLASS_THIEF, SKILL_REMOVESNARE, TRUE, FALSE,  	34);
  skill_to_class(CLASS_THIEF, SKILL_LOWSTRIKE, TRUE, FALSE,  	36);
  skill_to_class(CLASS_THIEF, SKILL_DODGE, TRUE, FALSE, 	38);
  skill_to_class(CLASS_THIEF, SKILL_DISARM, TRUE, FALSE, 	40);
  skill_to_class(CLASS_THIEF, SKILL_FIRETRAP, TRUE, FALSE,  	42);
  skill_to_class(CLASS_THIEF, SKILL_DUAL, TRUE, FALSE, 	 	44);
  skill_to_class(CLASS_THIEF, SKILL_BLADEDANCE, TRUE, FALSE,  	46);
  skill_to_class(CLASS_THIEF, SKILL_TUMBLE, TRUE, FALSE,  	48);
  skill_to_class(CLASS_THIEF, SKILL_SHADOWWALK, TRUE, FALSE, 	50);
  skill_to_class(CLASS_THIEF, SKILL_SIDESTEP, TRUE, FALSE, 	52);
  skill_to_class(CLASS_THIEF, SKILL_LIGHTNINGTRAP, TRUE, FALSE, 54);
  skill_to_class(CLASS_THIEF, SKILL_CRIPPLE, TRUE, FALSE,  	56);
  skill_to_class(CLASS_THIEF, SKILL_CIRCLE, TRUE, FALSE,  	58);
  skill_to_class(CLASS_THIEF, SKILL_DISEMBOWEL, TRUE, FALSE,  	60);
  skill_to_class(CLASS_THIEF, SKILL_SUBDUE, TRUE, FALSE,  	62);
  skill_to_class(CLASS_THIEF, SKILL_DETECTSECRET, TRUE, FALSE,  64);
  skill_to_class(CLASS_THIEF, SKILL_OBSCURE, TRUE, FALSE,  	66);
  skill_to_class(CLASS_THIEF, SKILL_HAMSTRING, TRUE, FALSE,  	68);
  skill_to_class(CLASS_THIEF, SKILL_ASSASSINATE, TRUE, FALSE, 	70);

  // // // // // 
  // Warriors...
  // // // // // 
  fill_class(CLASS_WARRIOR, "warrior", "War", "Lord", "Lady", "the newbie warrior.", 85, 0, 4, 3, 1, 2);
  skill_to_class(CLASS_WARRIOR, SKILL_FIRST_AID, TRUE, FALSE,  		1);
  skill_to_class(CLASS_WARRIOR, SKILL_KICK, TRUE, FALSE,  		1);
  skill_to_class(CLASS_WARRIOR, SKILL_BASH, TRUE, FALSE,  		1);
  skill_to_class(CLASS_WARRIOR, SKILL_RESCUE, TRUE, FALSE,  		4);
  skill_to_class(CLASS_WARRIOR, SKILL_WAR_ENDURANCE, TRUE, FALSE,  	8);
  skill_to_class(CLASS_WARRIOR, SKILL_DOUBLE, TRUE, FALSE,  		10);
  skill_to_class(CLASS_WARRIOR, SKILL_PARRY, TRUE, FALSE,  		15);
  skill_to_class(CLASS_WARRIOR, SKILL_DOORBASH, TRUE, FALSE,  		18);
  skill_to_class(CLASS_WARRIOR, SKILL_FORTIFY, TRUE, FALSE,  		20);
  skill_to_class(CLASS_WARRIOR, SKILL_SHIELDBLOCK, TRUE, FALSE,  	25);
  skill_to_class(CLASS_WARRIOR, SKILL_DISARM, TRUE, FALSE,  		30);
  skill_to_class(CLASS_WARRIOR, SKILL_DODGE, TRUE, FALSE,  		35);
  skill_to_class(CLASS_WARRIOR, SKILL_STUNTOUCH, TRUE, FALSE,  		35);
  skill_to_class(CLASS_WARRIOR, SKILL_TRIPLE, TRUE, FALSE,  		40);
  skill_to_class(CLASS_WARRIOR, SKILL_HURL, TRUE, FALSE, 		45);
  skill_to_class(CLASS_WARRIOR, SKILL_CRIPPLE, TRUE, FALSE, 		50);
  skill_to_class(CLASS_WARRIOR, SKILL_GRAPPLE, TRUE, FALSE,  		55);
  skill_to_class(CLASS_WARRIOR, SKILL_FENGAGE, TRUE, FALSE,  		60);

  // // // // // 
  // Shaman...
  // // // // // 
  fill_class(CLASS_SHAMAN, "shaman", "Sha", "Wytch", "Wytch", "the newbie shaman.", 90, 2, 1, 0, 3, 4);
  skill_to_class(CLASS_SHAMAN, SKILL_FIRST_AID, TRUE, FALSE,  		1);
  skill_to_class(CLASS_SHAMAN, SKILL_HIDE, TRUE, FALSE, 	 	1);
  skill_to_class(CLASS_SHAMAN, SKILL_SNAKE_FIRE, TRUE, FALSE,  		1);
  skill_to_class(CLASS_SHAMAN, SKILL_PURGE, TRUE, FALSE,  		1);
  skill_to_class(CLASS_SHAMAN, SKILL_SP_STRENGTH, TRUE, FALSE,  	4);
  skill_to_class(CLASS_SHAMAN, SKILL_PROTECTION, TRUE, FALSE,  		5);
  skill_to_class(CLASS_SHAMAN, SKILL_TRUESIGHT, TRUE, FALSE,  		7);
  skill_to_class(CLASS_SHAMAN, SKILL_ELUSION, TRUE, FALSE,  		10);
  skill_to_class(CLASS_SHAMAN, SKILL_EAGLE_EYES, TRUE, FALSE,  		10);
  skill_to_class(CLASS_SHAMAN, SKILL_FORAGE, TRUE, FALSE,  		12);
  skill_to_class(CLASS_SHAMAN, SKILL_FORTITUDE, TRUE, FALSE,  		15);
  skill_to_class(CLASS_SHAMAN, SKILL_STONE, TRUE, FALSE,  		20);
  skill_to_class(CLASS_SHAMAN, SKILL_ENDURANCE, TRUE, FALSE,  		24);
  skill_to_class(CLASS_SHAMAN, SKILL_DOUBLE, TRUE, FALSE,  		25);
  skill_to_class(CLASS_SHAMAN, SKILL_HEAL, TRUE, FALSE, 	 	30);
  skill_to_class(CLASS_SHAMAN, SKILL_LOCATION, TRUE, FALSE,  		32);
  skill_to_class(CLASS_SHAMAN, SKILL_PARRY, TRUE, FALSE,  		35);
  skill_to_class(CLASS_SHAMAN, SKILL_CROW, TRUE, FALSE, 	 	40);
  skill_to_class(CLASS_SHAMAN, SKILL_SHIELDBLOCK, TRUE, FALSE,  	43);
  skill_to_class(CLASS_SHAMAN, SKILL_TRUCE, TRUE, FALSE,  		45);
  skill_to_class(CLASS_SHAMAN, SKILL_WOLF, TRUE, FALSE, 	 	50);
  skill_to_class(CLASS_SHAMAN, SKILL_NOTRACK, TRUE, FALSE,  		52);
  skill_to_class(CLASS_SHAMAN, SKILL_DODGE, TRUE, FALSE,  		55);
  skill_to_class(CLASS_SHAMAN, SKILL_CLAWS, TRUE, FALSE,  		60);
  skill_to_class(CLASS_SHAMAN, SKILL_FANG, TRUE, FALSE, 	 	65);

  // // // // // 
  // Ranger...
  // // // // // 
  fill_class(CLASS_RANGER, "ranger", "Rng", "Lord", "Lady", "the newbie ranger.", 85, 2, 3, 4, 0, 1);
  skill_to_class(CLASS_RANGER, SKILL_FIRST_AID, TRUE, FALSE,  		1);
  skill_to_class(CLASS_RANGER, SKILL_FORAGE, TRUE, FALSE,  		1);
  skill_to_class(CLASS_RANGER, SKILL_DIVINE, TRUE, FALSE,  		3);
  skill_to_class(CLASS_RANGER, SKILL_CREATE_TORCH, TRUE, FALSE,  	4);
  skill_to_class(CLASS_RANGER, SKILL_KICK, TRUE, FALSE,  		5);
  skill_to_class(CLASS_RANGER, SKILL_FILET, TRUE, FALSE,  		6);
  skill_to_class(CLASS_RANGER, SKILL_RESCUE, TRUE, FALSE,  		8);
  skill_to_class(CLASS_RANGER, SPELL_POISON_DART, TRUE, FALSE,  	9);
  skill_to_class(CLASS_RANGER, SKILL_HEALWOUNDS, TRUE, FALSE,  		10);
  skill_to_class(CLASS_RANGER, SKILL_CALL_WILDLIFE, TRUE, FALSE,  	12);
  skill_to_class(CLASS_RANGER, SPELL_FOREST_SIGHT, TRUE, FALSE,   	14);
  skill_to_class(CLASS_RANGER, SKILL_DOUBLE, TRUE, FALSE,  		15);
  skill_to_class(CLASS_RANGER, SKILL_TRAILBLAZE, TRUE, FALSE,  		16);
  skill_to_class(CLASS_RANGER, SKILL_SKIN, TRUE, FALSE,   		17);
  skill_to_class(CLASS_RANGER, SPELL_EARTHDARTS, TRUE, FALSE,   	18);
  skill_to_class(CLASS_RANGER, SKILL_CAMOUFLAGE, TRUE, FALSE,  		20);
  skill_to_class(CLASS_RANGER, SKILL_DODGE, TRUE, FALSE,  		21);
  skill_to_class(CLASS_RANGER, SKILL_SWEEP, TRUE, FALSE,  		22);
  skill_to_class(CLASS_RANGER, SKILL_WAR_ENDURANCE, TRUE, FALSE,  	23);
  skill_to_class(CLASS_RANGER, SKILL_STUNTOUCH, TRUE, FALSE,  		25);
  skill_to_class(CLASS_RANGER, SKILL_SILENTWALK, TRUE, FALSE,  		26);
  skill_to_class(CLASS_RANGER, SPELL_SPIRITLEAVES, TRUE, FALSE,  	27);
  skill_to_class(CLASS_RANGER, SPELL_ENTANGLE, TRUE, FALSE,  		28);
  skill_to_class(CLASS_RANGER, SKILL_WHIRLWIND, TRUE, FALSE,  		30);
  skill_to_class(CLASS_RANGER, SKILL_NOTRACK, TRUE, FALSE,  		33);
  skill_to_class(CLASS_RANGER, SPELL_BARKSKIN, TRUE, FALSE,  		34);
  skill_to_class(CLASS_RANGER, SKILL_BECOME, TRUE, FALSE,  		35);
  skill_to_class(CLASS_RANGER, SPELL_SPIRITBALM, TRUE, FALSE,  		36);
  skill_to_class(CLASS_RANGER, SPELL_SPIRITSHOCK, TRUE, FALSE,  	38);
  skill_to_class(CLASS_RANGER, SKILL_MEDITATE, TRUE, FALSE,  		39);
  skill_to_class(CLASS_RANGER, SKILL_PARRY, TRUE, FALSE,  		40);
  skill_to_class(CLASS_RANGER, SPELL_FORESTEYES, TRUE, FALSE,  		43);
  skill_to_class(CLASS_RANGER, SKILL_DISARM, TRUE, FALSE,  		45);
  skill_to_class(CLASS_RANGER, SKILL_PRESENCE, TRUE, FALSE,  		50);
  skill_to_class(CLASS_RANGER, SPELL_ENSNARE, TRUE, FALSE,  		53);
  skill_to_class(CLASS_RANGER, SKILL_BEFRIEND, TRUE, FALSE,  		55);
  skill_to_class(CLASS_RANGER, SPELL_OCCLUSION, TRUE, FALSE,  		58);
  skill_to_class(CLASS_RANGER, SKILL_REDIRECT, TRUE, FALSE,  		60);
  skill_to_class(CLASS_RANGER, SPELL_CAMPFIRE, TRUE, FALSE,  		63);
  skill_to_class(CLASS_RANGER, SKILL_TREK, TRUE, FALSE,  		65);
  skill_to_class(CLASS_RANGER, SKILL_CYCLONE, TRUE, FALSE, 		66);
  skill_to_class(CLASS_RANGER, SPELL_SPIRITSHIELD, TRUE, FALSE, 	67);
  skill_to_class(CLASS_RANGER, SKILL_TRIPLE, TRUE, FALSE, 		70);


  // // // // // 
  // Bard...
  // // // // // 
  fill_class(CLASS_BARD, "bard", "Brd", "Trbdr", "Trbdr", "the newbie bard.", 85, 0, 4, 3, 1, 2);
  skill_to_class(CLASS_BARD, SKILL_FIRST_AID, TRUE, FALSE,  		1);
  skill_to_class(CLASS_BARD, SKILL_SING, TRUE, FALSE, 			1);
  skill_to_class(CLASS_BARD, SKILL_PICK_LOCK, TRUE, FALSE, 		5);
  skill_to_class(CLASS_BARD, SKILL_STEAL, TRUE, FALSE, 	 		6);
  skill_to_class(CLASS_BARD, SKILL_PARRY, TRUE, FALSE, 	 		8);
  skill_to_class(CLASS_BARD, SKILL_PLAY, TRUE, FALSE, 	 		10);
  skill_to_class(CLASS_BARD, SKILL_DOUBLE, TRUE, FALSE, 		20);
  skill_to_class(CLASS_BARD, SKILL_HEALWOUNDS, TRUE, FALSE, 		24);
  skill_to_class(CLASS_BARD, SKILL_SHIELDBLOCK, TRUE, FALSE, 		28);
  skill_to_class(CLASS_BARD, SKILL_DISARM, TRUE, FALSE, 		30);
  skill_to_class(CLASS_BARD, SKILL_CRAFT, TRUE, FALSE, 	 		35);
  skill_to_class(CLASS_BARD, SKILL_DODGE, TRUE, FALSE, 	 		50);
  skill_to_class(CLASS_BARD, SKILL_CIRCLE, TRUE, FALSE, 		60);


  // // // // // 
  // Warlock...
  // // // // // 
  fill_class(CLASS_WARLOCK, "warlock", "Wlk", "Demon", "Demon", "the newbie warlock.", 95, 3, 0, 1, 2, 4);
  skill_to_class(CLASS_WARLOCK, SKILL_FIRST_AID, TRUE, FALSE,  		1);
  skill_to_class(CLASS_WARLOCK, SKILL_SNEAK, TRUE, FALSE,  		3);
  skill_to_class(CLASS_WARLOCK, SPELL_DETECT_MAGIC, TRUE, FALSE,  	5);
  skill_to_class(CLASS_WARLOCK, SPELL_DETECT_INVISIBLE, TRUE, FALSE, 	7);
  skill_to_class(CLASS_WARLOCK, SPELL_STRENGTH, TRUE, FALSE, 		11);
  skill_to_class(CLASS_WARLOCK, SPELL_CURSE, TRUE, FALSE, 		13);
  skill_to_class(CLASS_WARLOCK, SKILL_RESCUE, TRUE, FALSE,  		15);
  skill_to_class(CLASS_WARLOCK, SPELL_PROTECT_FROM_GOOD, TRUE, FALSE,  	20);
  skill_to_class(CLASS_WARLOCK, SKILL_KICK, TRUE, FALSE,  		25);
  skill_to_class(CLASS_WARLOCK, SPELL_MINDTRAP, TRUE, FALSE, 		30);
  skill_to_class(CLASS_WARLOCK, SPELL_CURSED_GROUNDS, TRUE, FALSE, 	50);


  // // // // // 
  // Monshai...
  // // // // // 
  fill_class(CLASS_MONK, "monshai", "Mon", "Abbot", "Abbess", "the newbie monshai.", 90, 0, 4, 3, 1, 2);
  skill_to_class(CLASS_MONK, SKILL_HIDE, TRUE, FALSE,  		1);
  skill_to_class(CLASS_MONK, SKILL_PICK_LOCK, TRUE, FALSE,  	1);
  skill_to_class(CLASS_MONK, SKILL_SNEAK, TRUE, FALSE,  	1);
  skill_to_class(CLASS_MONK, SKILL_AURA, TRUE, FALSE, 	 	1);
  skill_to_class(CLASS_MONK, SKILL_ROLL, TRUE, FALSE, 	 	2);
  skill_to_class(CLASS_MONK, SKILL_RAZOR, TRUE, FALSE, 	 	3);
  skill_to_class(CLASS_MONK, SKILL_FIRST_AID, TRUE, FALSE,  	4);
  skill_to_class(CLASS_MONK, SKILL_SENSE, TRUE, FALSE, 	 	5);
  skill_to_class(CLASS_MONK, SKILL_OM, TRUE, FALSE, 	 	6);
  skill_to_class(CLASS_MONK, SKILL_DOUBLE, TRUE, FALSE,  	7);
  skill_to_class(CLASS_MONK, SKILL_CLEANSE, TRUE, FALSE,  	9);
  skill_to_class(CLASS_MONK, SKILL_LEAP, TRUE, FALSE, 	 	10);
  skill_to_class(CLASS_MONK, SKILL_DODGE, TRUE, FALSE,  	11);
  skill_to_class(CLASS_MONK, SKILL_STONE_FINGER, TRUE, FALSE, 	12);
  skill_to_class(CLASS_MONK, SKILL_TRIPLE, TRUE, FALSE,  	13);
  skill_to_class(CLASS_MONK, SKILL_HEALWOUNDS, TRUE, FALSE,  	14);
  skill_to_class(CLASS_MONK, SKILL_MOK, TRUE, FALSE, 	 	15);
  skill_to_class(CLASS_MONK, SKILL_PARRY, TRUE, FALSE,  	16);
  skill_to_class(CLASS_MONK, SKILL_KICK, TRUE, FALSE, 	 	18);
  skill_to_class(CLASS_MONK, SKILL_LEVITATE, TRUE, FALSE,  	19);
  skill_to_class(CLASS_MONK, SKILL_STUNTOUCH, TRUE, FALSE, 	21);
  skill_to_class(CLASS_MONK, SKILL_WHIRLWIND, TRUE, FALSE, 	22);
  skill_to_class(CLASS_MONK, SKILL_WAR_ENDURANCE, TRUE, FALSE, 	24);
  skill_to_class(CLASS_MONK, SKILL_SNARL, TRUE, FALSE, 		25);
  skill_to_class(CLASS_MONK, SKILL_FLIP, TRUE, FALSE, 	 	28);
  skill_to_class(CLASS_MONK, SKILL_IRONHAND, TRUE, FALSE,  	31);
  skill_to_class(CLASS_MONK, SKILL_WA, TRUE, FALSE, 	 	34);
  skill_to_class(CLASS_MONK, SKILL_HASTEN, TRUE, FALSE,  	40);
  skill_to_class(CLASS_MONK, SKILL_HURL, TRUE, FALSE, 		43);
  skill_to_class(CLASS_MONK, SKILL_IRON, TRUE, FALSE, 		46);
  skill_to_class(CLASS_MONK, SKILL_TURTLE, TRUE, FALSE,  	50);
  skill_to_class(CLASS_MONK, SKILL_FIST, TRUE, FALSE, 	 	52);
  skill_to_class(CLASS_MONK, SKILL_TRANCE, TRUE, FALSE,  	56);

  // // // // // 
  // Madept...
  // // // // // 
  fill_class(CLASS_MADEPT, "madept", "Mad", "Sorcer", "Sorcer", "the newbie madept.", 75, 3, 0, 1, 2, 4);
  skill_to_class(CLASS_MADEPT, SKILL_FIRST_AID, TRUE, FALSE,  		1);
  skill_to_class(CLASS_MADEPT, SPELL_MAGIC_MISSILE, TRUE, FALSE,  	1);
  skill_to_class(CLASS_MADEPT, SPELL_CURE_LIGHT, TRUE, FALSE, 		1);
  skill_to_class(CLASS_MADEPT, SPELL_DETECT_INVISIBLE, TRUE, FALSE, 	2);
  skill_to_class(CLASS_MADEPT, SPELL_DETECT_POISON, TRUE, FALSE, 	2);
  skill_to_class(CLASS_MADEPT, SPELL_CREATE_WATER, TRUE, FALSE, 	2);
  skill_to_class(CLASS_MADEPT, SPELL_DETECT_MAGIC, TRUE, FALSE, 	3);
  skill_to_class(CLASS_MADEPT, SPELL_CREATE_FOOD, TRUE, FALSE, 		3);
  skill_to_class(CLASS_MADEPT, SPELL_CHILL_TOUCH, TRUE, FALSE, 		3);
  skill_to_class(CLASS_MADEPT, SPELL_DETECT_EVIL, TRUE, FALSE, 		4);
  skill_to_class(CLASS_MADEPT, SPELL_INVISIBLE, TRUE, FALSE,  		4);
  skill_to_class(CLASS_MADEPT, SPELL_CURE_BLIND, TRUE, FALSE, 		4);
  skill_to_class(CLASS_MADEPT, SPELL_ARMOR, TRUE, FALSE,  		5);
  skill_to_class(CLASS_MADEPT, SPELL_BURNING_HANDS, TRUE, FALSE,  	5);
  skill_to_class(CLASS_MADEPT, SPELL_IDENTIFY, TRUE, FALSE,  		5);
  skill_to_class(CLASS_MADEPT, SPELL_BLESS, TRUE, FALSE, 		5);
  skill_to_class(CLASS_MADEPT, SPELL_BLINDNESS, TRUE, FALSE, 		6);
  skill_to_class(CLASS_MADEPT, SPELL_PROTECT_FROM_EVIL, TRUE, FALSE, 	6);
  skill_to_class(CLASS_MADEPT, SPELL_PROTECT_FROM_GOOD, TRUE, FALSE, 	6);
  skill_to_class(CLASS_MADEPT, SPELL_STRENGTH, TRUE, FALSE,  		7);
  skill_to_class(CLASS_MADEPT, SPELL_SHOCKING_GRASP, TRUE, FALSE,  	7);
  skill_to_class(CLASS_MADEPT, SPELL_SENSE_LIFE, TRUE, FALSE, 		7);
  skill_to_class(CLASS_MADEPT, SPELL_EARTHQUAKE, TRUE, FALSE, 		7);
  skill_to_class(CLASS_MADEPT, SPELL_POISON, TRUE, FALSE, 		8);
  skill_to_class(CLASS_MADEPT, SPELL_TELEPORT, TRUE, FALSE,  		8);
  skill_to_class(CLASS_MADEPT, SPELL_SUMMON, TRUE, FALSE, 		8);
  skill_to_class(CLASS_MADEPT, SPELL_REMOVE_POISON, TRUE, FALSE, 	9);
  skill_to_class(CLASS_MADEPT, SPELL_LIGHTNING_BOLT, TRUE, FALSE,  	9);
  skill_to_class(CLASS_MADEPT, SPELL_CURE_CRITIC, TRUE, FALSE, 		9);
  skill_to_class(CLASS_MADEPT, SPELL_DISPEL_EVIL, TRUE, FALSE, 		10);
  skill_to_class(CLASS_MADEPT, SPELL_LOCATE_OBJECT, TRUE, FALSE, 	10);
  skill_to_class(CLASS_MADEPT, SPELL_PROTECT_UNDEAD, TRUE, FALSE, 	10);
  skill_to_class(CLASS_MADEPT, SPELL_COLOUR_SPRAY, TRUE, FALSE,  	11);
  skill_to_class(CLASS_MADEPT, SPELL_WORD_OF_RECALL, TRUE, FALSE, 	11);
  skill_to_class(CLASS_MADEPT, SPELL_CURSE, TRUE, FALSE,  		12);
  skill_to_class(CLASS_MADEPT, SPELL_ENCHANT_WEAPON, TRUE, FALSE,  	12);
  skill_to_class(CLASS_MADEPT, SPELL_REMOVE_CURSE, TRUE, FALSE, 	12);
  skill_to_class(CLASS_MADEPT, SPELL_CALL_LIGHTNING, TRUE, FALSE, 	12);
  skill_to_class(CLASS_MADEPT, SPELL_CONTROL_WEATHER, TRUE, FALSE, 	13);
  skill_to_class(CLASS_MADEPT, SPELL_ENERGY_DRAIN, TRUE, FALSE,  	13);
  skill_to_class(CLASS_MADEPT, SPELL_SANCTUARY, TRUE, FALSE, 		13);
  skill_to_class(CLASS_MADEPT, SPELL_HEAL, TRUE, FALSE, 		14);
  skill_to_class(CLASS_MADEPT, SPELL_SLEEP, TRUE, FALSE,  		14);
  skill_to_class(CLASS_MADEPT, SPELL_CHARM_PERSON, TRUE, FALSE,  	14);
  skill_to_class(CLASS_MADEPT, SPELL_ANIMATE_DEAD, TRUE, FALSE,		15);
  skill_to_class(CLASS_MADEPT, SPELL_HARM, TRUE, FALSE, 		15);
  skill_to_class(CLASS_MADEPT, SPELL_FIREFLASH, TRUE, FALSE, 		15);
  skill_to_class(CLASS_MADEPT, SPELL_ILLUMINATE, TRUE, FALSE, 		16);
  skill_to_class(CLASS_MADEPT, SPELL_IMPLOSION, TRUE, FALSE,  		18);
  skill_to_class(CLASS_MADEPT, SPELL_FORCEFUL_WIND, TRUE, FALSE, 	18);
  skill_to_class(CLASS_MADEPT, SPELL_WINGS, TRUE, FALSE, 		20);
  skill_to_class(CLASS_MADEPT, SPELL_GILLS, TRUE, FALSE, 		20);
  skill_to_class(CLASS_MADEPT, SPELL_VOID, TRUE, FALSE,  		22);
  skill_to_class(CLASS_MADEPT, SPELL_STONE_SKIN, TRUE, FALSE,  		25);
  skill_to_class(CLASS_MADEPT, SPELL_ARMOR_GOLEM, TRUE, FALSE,		28);
  skill_to_class(CLASS_MADEPT, SPELL_CHAIN_LIGHTNING, TRUE, FALSE,	29);
  skill_to_class(CLASS_MADEPT, SPELL_HASTE, TRUE, FALSE,  		30);
  skill_to_class(CLASS_MADEPT, SPELL_CALM, TRUE, FALSE, 		31);
  skill_to_class(CLASS_MADEPT, SPELL_RECHARGE, TRUE, FALSE,  		33);
  skill_to_class(CLASS_MADEPT, SPELL_FIREBALL, TRUE, FALSE,		34);
  skill_to_class(CLASS_MADEPT, SPELL_ICE_SHAFT, TRUE, FALSE,  		35);
  skill_to_class(CLASS_MADEPT, SPELL_P_HEAL, TRUE, FALSE, 		40);
  skill_to_class(CLASS_MADEPT, SPELL_FIREWALL, TRUE, FALSE,  		40);
  skill_to_class(CLASS_MADEPT, SPELL_HOLD_PERSON, TRUE, FALSE, 		41);
  skill_to_class(CLASS_MADEPT, SPELL_VIEW_HIDDEN, TRUE, FALSE, 		42);
  skill_to_class(CLASS_MADEPT, SPELL_CIRCLE_OF_WARDING, TRUE, FALSE, 	42);
  skill_to_class(CLASS_MADEPT, SPELL_MIRRORIMAGE, TRUE, FALSE,  	45);
  skill_to_class(CLASS_MADEPT, SPELL_GATEWAY, TRUE, FALSE,  		50);
  skill_to_class(CLASS_MADEPT, SPELL_SHOWEROFLIFE, TRUE, FALSE, 	50);
  skill_to_class(CLASS_MADEPT, SPELL_GASCLOUD, TRUE, FALSE, 		52);
  skill_to_class(CLASS_MADEPT, SPELL_ICEWALL, TRUE, FALSE,  		55);
  skill_to_class(CLASS_MADEPT, SPELL_LOCATE_BEING, TRUE, FALSE, 	55);
  skill_to_class(CLASS_MADEPT, SPELL_WALLOFFOG, TRUE, FALSE, 		57);
  skill_to_class(CLASS_MADEPT, SPELL_ABSOLUTE_WARD, TRUE, FALSE, 	60);
  skill_to_class(CLASS_MADEPT, SPELL_TYPHOON, TRUE, FALSE,  		60);
  skill_to_class(CLASS_MADEPT, SPELL_SILENCE, TRUE, FALSE, 		65);
  skill_to_class(CLASS_MADEPT, SPELL_BLINDWALL, TRUE, FALSE, 		65);
  skill_to_class(CLASS_MADEPT, SPELL_CONFUSION, TRUE, FALSE, 		68);
  skill_to_class(CLASS_MADEPT, SPELL_SWARM, TRUE, FALSE,  		70);
  skill_to_class(CLASS_MADEPT, SPELL_RETRIEVE_CORPSE, TRUE, FALSE, 	70);


  // // // // // 
  // Druid...
  // // // // // 
  fill_class(CLASS_DRUID, "druid", "Dru", "Druid", "Druid", "the newbie druid.", 90, 3, 0, 1, 2, 4);
  skill_to_class(CLASS_DRUID, SKILL_FIRST_AID, TRUE, FALSE,             1);
  skill_to_class(CLASS_DRUID, SPELL_CURE_LIGHT, TRUE, FALSE,            1);
  skill_to_class(CLASS_DRUID, SPELL_FOREST_EMBRACE, TRUE, FALSE, 	2);
  skill_to_class(CLASS_DRUID, SKILL_FORAGE, TRUE, FALSE, 		2);
  skill_to_class(CLASS_DRUID, SPELL_OBSCURE_PASSING, TRUE, FALSE, 	3);
  skill_to_class(CLASS_DRUID, SPELL_TREESKIN, TRUE, FALSE, 		3);
  skill_to_class(CLASS_DRUID, SKILL_DIVINE, TRUE, FALSE,                4);
  skill_to_class(CLASS_DRUID, SPELL_KNOW_ALIGNMENT, TRUE, FALSE, 	4);
  skill_to_class(CLASS_DRUID, SPELL_CALL_LIGHTNING, TRUE, FALSE,        5);
  skill_to_class(CLASS_DRUID, SPELL_LOCATE_OBJECT, TRUE, FALSE,         5);
  skill_to_class(CLASS_DRUID, SKILL_FILET, TRUE, FALSE,                 6);
  skill_to_class(CLASS_DRUID, SPELL_PROTECT_FROM_POISON, TRUE, FALSE,   6);
  skill_to_class(CLASS_DRUID, SPELL_NATURE_COMMUNION, TRUE, FALSE, 	7);
  skill_to_class(CLASS_DRUID, SPELL_PROTECT_FROM_FIRE, TRUE, FALSE,     7);
  skill_to_class(CLASS_DRUID, SPELL_ANIMAL_SUMMONING, TRUE, FALSE, 	8);
  skill_to_class(CLASS_DRUID, SPELL_PROTECT_FROM_COLD, TRUE, FALSE,     8);
  skill_to_class(CLASS_DRUID, SPELL_PROTECT_FROM_DRAGON, TRUE, FALSE,   8);
  skill_to_class(CLASS_DRUID, SPELL_CURE_CRITIC, TRUE, FALSE,           9);
  skill_to_class(CLASS_DRUID, SKILL_HEALWOUNDS, TRUE, FALSE,            10);
  skill_to_class(CLASS_DRUID, SPELL_WATER_WALK, TRUE, FALSE, 		10);
  skill_to_class(CLASS_DRUID, SPELL_NATURES_CALTROPS, TRUE, FALSE, 	11);
  skill_to_class(CLASS_DRUID, SPELL_EARTHQUAKE, TRUE, FALSE,            12);
  skill_to_class(CLASS_DRUID, SPELL_CONTROL_WEATHER, TRUE, FALSE,       13);
  skill_to_class(CLASS_DRUID, SPELL_FOREST_WARRIOR, TRUE, FALSE, 	14);
  skill_to_class(CLASS_DRUID, SPELL_TONGUES, TRUE, FALSE, 		15);
  skill_to_class(CLASS_DRUID, SPELL_WALL_BRAMBLES, TRUE, FALSE, 	16);
  skill_to_class(CLASS_DRUID, SPELL_HEAL, TRUE, FALSE,                  17);
  skill_to_class(CLASS_DRUID, SPELL_GILLS, TRUE, FALSE, 		18);
  skill_to_class(CLASS_DRUID, SPELL_WINGS, TRUE, FALSE, 		19);
  skill_to_class(CLASS_DRUID, SKILL_CAMOUFLAGE, TRUE, FALSE,            20);
  skill_to_class(CLASS_DRUID, SPELL_SANCTUARY, TRUE, FALSE,             20);
  skill_to_class(CLASS_DRUID, SKILL_DODGE, TRUE, FALSE,                 21);
  skill_to_class(CLASS_DRUID, SPELL_TRUE_SEEING, TRUE, FALSE,           24);
  skill_to_class(CLASS_DRUID, SPELL_THORNSTORM, TRUE, FALSE,            28);
  skill_to_class(CLASS_DRUID, SPELL_FIRE_SERVANT, TRUE, FALSE, 		30);
  skill_to_class(CLASS_DRUID, SPELL_WALL_FIRE, TRUE, FALSE, 		35);
  skill_to_class(CLASS_DRUID, SPELL_EARTH_SERVANT, TRUE, FALSE, 	40);
  skill_to_class(CLASS_DRUID, SPELL_HOLD_ANIMAL, TRUE, FALSE, 		45);
  skill_to_class(CLASS_DRUID, SPELL_ROCK_TO_MUD, TRUE, FALSE, 		50);
  skill_to_class(CLASS_DRUID, SPELL_FIRESTORM, TRUE, FALSE, 		55);
  skill_to_class(CLASS_DRUID, SPELL_SHAPECHANGE, TRUE, FALSE, 		60);
  skill_to_class(CLASS_DRUID, SPELL_WOODBRITTLE, TRUE, FALSE, 		65);
  skill_to_class(CLASS_DRUID, SPELL_INSECT_DEATH, TRUE, FALSE, 		70);
}