;-------------------
; character levels
;
; You can define various character 'classes' which control the
; basic limits of a character (what weapon they can hold in their
; right hand, whether they get magic points, the rate at which
; their levels increase, and some other things)
;
; But a character also has a LEVEL which starts at '1' and goes up along
; with experience points.
;
; This section lets you specify the experience points needed to attain each
; level, and lets you associate a name with each level, so your character
; can appear to evolve through various stages (mage, wizard, warlock, sorceror, etc.)
; even though REALLY only the actual level number is important.
;
; The first argument is a number which indicates the class and the level.  
;
;    arg0:		Class+Level (103 = warrior level 3, 203 = wizard level 3)
;    arg1:		[NO LONGER USED] Additional Experience points to attain level from previous level
;	 arg2:		Additional max HP earned when level is attained
;	 arg3:		Additional max MP earned when level is attained
;    arg4:      Level Name (use the same name for several levels in a row)
;
; These arguments are only valid for level 0 in each character class.  They control
; common aspects of the class
;
;	 arg5		(level 0 only)  magic-ratio
;	 arg6		(level 0 only)  right-hand weapon (1 - 8, or 0 if none (will use start_hand_training instead))
;
; Levels run from 1 to 99 maximum.  A bonus level "100" is supplied by the game, but it uses the same
; table entry as level 99.  That is to say, you cannot provide a custom level name for level 100.
;
; You only need to have entries for levels where you want the hp, mp, new spell, or
; level name to change.  Minimum experience levels are now computed automatically
; for you.  If you give an 'empty' level name (except for level 1 where it is
; mandatory) the previous name will be used for that level
;
; Note that LEVEL ZERO (100,200, etc) is a SPECIAL ENTRY which names the actual
; character class, and is not a level in of itself.  I know this is horribly
; confusing, but it is just so dang CONVENIENT to do it this way!
; So, for LEVEL 0 ONLY:  maxHP and maxMP are the starting levels of a new character
; in that class, level_name is the 'character class name' which appears in the
; new soul dialog box.  
;
; LEVEL ZERO is where you define a characters magic-ration and right-hand weapon.
; Their 'magic ratio' determines what percentage of their attack points are used for magic versus sword attack;
;
; Hence a MAGIC-USER would have a high magic ratio (80-90) while a SWORD-USER
; would have lower one (10-20), and some other characters might be more 50-50
; A character needs to be more than 50% in the respective sense in order to 
; equip swords or staffs.  For example a magic ratio > 50 would allow staff,
; < 50 would allow sword, and == 50 would allow both.
;
; The right-hand weapon controls which class of EQUIP item they can hold in their
; right hand (each class is hard-wired to a single right-hand item, but the
; world designer can define what those actual items are).  Between the combination
; of magic-ratio and right-hand you can create some interesting classes.  For example
; an ARCHER and a MAGIC-ARCHER might both have right-hand set to 'BOW' but different
; magic-ratios.  The magic-archer (with the higher magic-ratio) would be better at
; casting spells, but his actual bow-use would be weaker.
;
; The default (used in Evergreen) right-hand weapons are:
;
;	1	Sword
;	2	Staff
;	3	Bow
;	4	Musical Instrument
;   5   Fist
;   6   Dart
;   7   Book
;   8   Spirit
; 
; if you set arg6 to a value between 1 and 8, then characters of that class will always
; be born with level 5 training in that hand, no matter what the start_hand_pp option
; is for that hand. 
;
; But if you set this field to 0 (Version A57 and later, only), then no hand will be
; pre-trained unless you specifically use the start_hand_pp option.
;
; Setting this field to zero in versions of WoS before A57 will lead to a bug which can
; render the character unusable.  If you publish your world later than July 2001, you can
; probably ignore this comment :)
;
; LEVEL NAME GENDERS
;
; If you have some level names which would read better for different genders, you may provide
; alternates.  If you do, these must be in order, left to right, genders 0, 1, 2, and 3.  You
; *must* provide gender 0 in all cases.  What the individual genders mean is defined in your
; world's gender.ini file.  In Evergreen the genders are: 0=undefined, 1=male, 2=female, 3-unused.
; So if I want to have a female version of something, I need to provide 3 entries on those lines,
; such as:
;
;    "Emperor|Emperor|Empress"
; 
; Use the 'pipe' symbol to separate the names inside a single set of quotes (don't put each gender in a separate
; set of quotes.)  The pipe symbol is the SHIFT - \ key on most american keyboards.  You foreigner types are
; on your own!  (hint: you can copy and paste from above, if your keyboard hasn't got the symbol.)
;
; Note that the gender 0 value will be used for any missing entries.  Hence I can provide just the first gender
; in those cases where male and female can use the same value.  This is no doubt confusing, but it maintains
; compatibility with existing worlds, and minimizes typing.
;
; OPTIONAL CHARACTER LIMITATIONS
;
; If you (as the world designer) like, you can apply certain special commands to each
; character class, generally to limit its access to element and hand training,  You
; place these commands (one per line) just after the introductory line of the class
; For example:
;
; The class name
;	100,	0,			20,		0,		"Dingle-User",   10,				1
;    DESCRIPTION	"Dingle Users are known for their mad dingling skillz...."
;    MAGIC_RATIO	10
;    HAND_RATIO		90
;    MAX_ABILITY 100,100,50,255,0
;    START_ELEMENT_PP 556,1251,2143,3334,5001,7501,11667,20001		<-- no particular sense to these example values, just levels in order
;    MAX_ELEMENT_PP 1251,2143,3334,5001,7501,11667,20001,45001
;    START_HAND_PP 557,1251,2143,3334,5001,7501,11667,20001
;    MAX_HAND_PP 1251,2143,3334,5001,7501,11667,20001,45001
; now the class level names
;	101,	0,			1,		0,		"Dinglet"
;   etc.
;	198,	0,			1,		0,		"El Dinglo"
;	199,	0,			1,		0,		"Dingle King"
;
; Each command is optional and applies only to the class within which is is embedded.  See how
; all the commands appear between line 100 and line 101? 
; You must provide the information in a fixed syntax, as shown.
;
; Here are the available commands:
;
;   DESCRIPTION	 "This class sucks.  People who pick it are losers"		
;	A short text which appears on character creation dialog.  Put text in double quotes
;
;	MAGIC_RATIO	n		
;	Where n is a number from 0 to 100, specifies effectiveness with magical attacks
;
;   HAND_RATIO	n
;	Where n is a number from 1-100, specifies effectiveness of non-magical attacks.  
;   If you set to '0' it will use "100 - magic ratio" for "balanced" classes.
;
;   START_ABILITY str, wis, sta, agi, dex  
;	Provide all 5 ability values in order, giving the starting level for each.
;   Valid max levels are 0 to 255.  These should be less than the MAX_ABILITY
;
;   MAX_ABILITY str, wis, sta, agi, dex  
;	Provide all 5 ability values in order, giving the maximum level allowed for each.
;   Valid max levels are 0 to 255.
;
;   START_ELEMENT_PP  0,1,2,3,4,5,6,7
;	Must have 8 values, in order of +ELEMENTS table.  Sets initial elemental training.
;   Values range from 0 to 1000000 as described later (PP Levels).
;
;   MAX_ELEMENT_PP 0,1,2,3,4,5,6,7 
;	Must have 8 values, in order of +ELEMENTS table.  Sets max possible elemental training
;   Values range from 0 to 1000000 as described later (PP Levels).
;
;   START_HAND_PP 0,1,2,3,4,5,6,7  
;	Must have 8 values, in order of +HANDS table. Sets initial right-hand training
;   Values range from 0 to 1000000 as described later (PP Levels).
;
;   MAX_HAND_PP 0,1,2,3,4,5,6,7   
;	Must have 8 values, in order of +HANDS table. Sets maximum right-hand training.
;   Values range from 0 to 1000000 as described later (PP Levels).
;
;   AUTO_MAX minHP, maxHP, minMP, maxMP, startMPLevel 
;	Must have all five values.  Sets the max HP and MP levels for each level of the character.
;   That is to say, you are setting the maxHP and maxMP for level 1 and level 100, and the intermediate levels are
;   then computed automatically to span those maximums "appropriately" (semi-logarithmic algorithm)
;	The initial level 1 HP will be minHP, final level 100 HP will be maxHP
;	The fifth arg (startMPLevel) lets you postpone first MP (maxMP will stay 0 until that level).
;	NOTE: Actual maximums will be a little lower than you specify because of curve-shaping
;	If you use this command, the HP and MP entries in your level table for that class will be ignored.
;
;	START_LOCATION  <map>, <link>, <dropIn> 
;	Lets you set where a newly created character will appear on their first
;	incarnation, based on class.  (so all elves can be born in Elf Town, for example).  Otherwise, they
;	will appear above link 0 on map 0.  It is your responsibility to make sure the map and link specified
;	actually exist and 'make sense' (it would be cruel to incarnate a newbie in a tough spot)
;   As of A76, a third argument (dropIn) is supported.  If this is set to 1 they will incarnate INTO the link
;   (which logically should be linked to a scene in that case).  Set to 0, or missing, and they will be above the link.
;
;   MAX_WALLET n 
; 	Further limits wallet size to n (0 to 1000000). (cannot make wallets BIGGER than
;	normal game restrictions.)  Normally characters start off with a wallet holding 20K GP at level 1, with
;   an additional 10K added for each level, until they reach one million at level 99.
;
;   NO_GIFTS
;	(No arguments). Indicates that class cannot receive money or items from other players.  (but from scripts is OK)
;
;   START_ITEMS 1, 2, 3, ...
;	Lets you give character up to 8 items right at start of game.  
;	Use valid Item numbers only
;
;	START_SPELLS 1, 2, 3, .. 
;	Lets you give characters up to 8 spells right at start of game
;	 Use valid Spell IDs only.
;
;   START_TOKENS 1, 2, 3...  
;	Lets you give character up to 8 tokens right at start of game.  
;	Use valid token numbers only
;
;	HIDDEN_CLASS  <startLevel>
;   (startLevel optional). Class doesn't show up on New Character dialog as an available choice.
;   You have to be morphed into such a class via "SET num.hostClass, <class#>" script
;   command. If the <startlevel> argument is included, then the character will be changed to that
;   level (so long as it is less than their current level).  Hence "HIDDEN_CLASS 20" would lower
;   a level 40 character to level 20 in the new class, but would NOT raise a level 5 character to
;   level 20 in the new class.
;
;   DEFAULT_SKIN  <skinName0>, <skinName0>, <skinName0>, <skinName0>  (just the names, don't add the .bmp)
;       This skin will be used for players of this class if you don't have a copy of their actual skin file.
;       The four skin names are used for the four genders.
;       This supersedes the gender-specific default skin file in genders.ini
;
; Note that the 'preferred right hand training' of each class will always be level 5 at start, no 
; matter what START_HAND_PP says.  This is for compatibility with existing worlds.  Sorry.
;
; PP Levels
;
; The PP required for each level grows according to a nasty equation, but here are the PP
; limits as of the time of this writing.
;
; level 0		PP 0 - 554
; level 1		PP 555 - 1249
; level 2		PP 1250 - 2141
; level 3		PP 2142 - 3332
; level 4		PP 3333 - 4999
; level 5		PP 5000 - 7499
; level 6		PP 7500 - 11665
; level 7		PP 11666 - 19999
; level 8		PP 20000 - 44999
; level 9		PP 45000 - 1000000 (one million)(you approach level 9.9999999 asymptotically)
;
; Note that is the total PP which affects your skill and the level numbers are somewhat arbitrary
; so a training level 3 with 3333 PP will hit harder than a training level 3 with 2143 PP
;
; To protect yourself against floating point round off issues from one version of windows to
; another, I recommend not using these exact values, but include a safety buffer.  So, for example
; if you wanted a STARTING level of 4, use 3350 instead of 3333.  And if you want a MAXIMUM level
; of 4, use 4970, not 4999.  A 20 unit buffer should not be noticeable by the user and might make
; your world more reliable.
;




;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;
; First the Warrior levels (100 + level #)
;  CCLL	    ???????.	MaxHP	maxMP	Level_name		Magic Ratio		Right-Hand
;	0		1			2		3		4				5				6
;
; The class name (sword user, magic ratio of 10.. ergo hand ratio of 90.. preferred right-hand weapon is #1 (sword))
	100,	0,			20,		0,		"Swordsman",   10,				1

; Next the special commands for the sword-user class.  These come between line nn00 and line nn01
	DESCRIPTION	"Honed in swordfighting with little room left in their heads for magical power."
	HAND_RATIO	99
	MAGIC_RATIO	1
	AUTO_MAX	30, 5000,  2, 100,  35		
;   START_ABILITY str, wis, sta, agi, dex
	START_ABILITY	10, 0, 5, 0, 0
	MAX_ABILITY   250,  75, 255, 210, 255
	DEFAULT_SKIN	adventurer, adventurer, Tracker2, Tracker2
	START_LOCATION	0, 3


; now the class level names.. note that since I used the AUTO_MAX command, the maxHP and maxMP values shown in this
; table are actually ignored.  If I weren't so lazy, I would change them all to 0.

	101,	0,			1,		0,		"Rookie"
	130,	0,			10,		0,		"Infantry"
	140,	0,			14,		10,		"Heavy Infantry"
	180,	0,			50,		20,		"Knight"
	199,	0,			65,		0,		"Royal Guard"
;
;---
; Now the Wizard levels (200 + level #)
;  CCLL	    ???			MaxHP	maxMP	Level_name			Magic-ratio		Right-Hand
;	0		1			2		3		4					5				6
;
; The class name
	200,	0,			15,		5,		"Magician",		90,				2

; now the special commands for the magic user class.  These also come between line nn00 and nn01 (200 and 201 for this
; class)

	DESCRIPTION	"Masters of magic. This class can easily obtain enough MP to cast powerful spells from the start."
	AUTO_MAX	10, 2500,  300, 7500,  0
	HAND_RATIO	10
	MAGIC_RATIO	90	
;   START_ABILITY str, wis, sta, agi, dex  
	START_ABILITY   0,  10,   0,   0,   0
	MAX_ABILITY		100, 255, 200, 150, 255
	DEFAULT_SKIN	Warlock2, Warlock2, Enchantress, Enchantress
	START_LOCATION	0, 3


; the class level names for the magic-user class
	201,	0,			1,		2,		"Apprentice Magician"
	230,	0,			8,		15,		"Star Gazer",				
	260,	0,			22,		30,		"Arcane Magician",		
	299,	0,			55,		55,		"Infinity",
;			
;---
; Now the Archer levels (300 + level #)
;  CCLL	    Exp_Pts.	MaxHP	maxMP	Level_name			Magic-ratio		Right-Hand
;	0		1			2		3		4					5				6
;
; The class name
	300,	0,			18,		2,		"Bowman",			40,				3

	DESCRIPTION	"Swift with the bow, this class also has decent casting abilities. It depends on the elemental power of its arrows for full effect."
	AUTO_MAX	15, 3500,  10, 3500,  5	
	HAND_RATIO	60
	MAGIC_RATIO	40
;   START_ABILITY str, wis, sta, agi, dex  
	START_ABILITY   0,  0,   0,   10,   0
	MAX_ABILITY		230, 200, 200, 220, 255
	DEFAULT_SKIN	 Atlatler, Atlatler, Elf2, Elf2
	START_LOCATION	0, 3

; the class levels
	301,	0,			2,		2,		"Forest man"			
	310,	0,			6,		6,		"Tree Climber",			
	320,	0,			9,		9,		"Watcher",			
	330,	0,			12,		11,		"Protecter",				
	360,	0,			25,		22,		"Judgement",		
	399,	0,			65,		40,		"Divine Judgement",
;
;	
;---
; Now the MUSE levels (400 + level #)
;  CCLL	    Exp_Pts.	MaxHP	maxMP	Level_name			Magic-ratio		Right-Hand
;	0		1			2		3		4					5				6
;
; The class name
	400,	0,			18,		2,		"Bard",		60,				4

	DESCRIPTION	"A good song is always available with these guys around, but don't get them mad .. or else .. DUN DUN DUN !!! O_O !!!!"
	AUTO_MAX	15, 3000,  5, 3000,  5
	HAND_RATIO	40
	MAGIC_RATIO	60	
;   START_ABILITY str, wis, sta, agi, dex  
	START_ABILITY   10,  0,   0,   0,   0
	MAX_ABILITY	210, 255, 200, 220, 255
	DEFAULT_SKIN	Muse2, Muse2, Sylph2, Sylph2
	START_LOCATION	0, 3

; the class levels
	401,	0,			1,		2,		"Back-up Singer"			
	420,	0,			8,		15,		"Playback Singer",			
	460,	0,			20,		30,		"Singer-Songwriter",		
	489,	0,			50,		40,		"Pop Star"
	499,	0,			65,		55,		"DJ Nipple",

;
;	
;---
; Now the FIST levels (500 + level #)
;  CCLL	    Exp_Pts.	MaxHP	maxMP	Level_name			Magic-ratio		Right-Hand
;	0		1			2		3		4					5				6
;
; The class name
	500,	0,			20,		0,		"Wrestler",		5,				5

	DESCRIPTION	"Full fledged fist-fighters ! Raise them well and they shall claim the WWE title !"
	AUTO_MAX	30, 6000,  2, 10,  20
	HAND_RATIO	100
	MAGIC_RATIO	0
;   START_ABILITY str, wis, sta, agi, dex  
	START_ABILITY   10,  0,   0,   0,   0
	MAX_ABILITY		255, 30, 230, 200, 255

	DEFAULT_SKIN	Brawler2, Brawler2, Feisty2, Feisty2
	START_LOCATION	0, 3


; the class levels
	501,	0,			2,		1,		"Wrestling Debut"			
	520,	0,			10,		7,		"Cruiserweight Champion",			
	540,	0,			14,		11,		"Light-heavyweight Champion",			
	560,	0,			28,		18,		"Hardcore Champion",		
	580,	0,			50,		24,		"Intercontinental Champion"
	599,	0,			65,		27,		"WWE Heavyweight Champion",


;
;	
;---
; Now the DART levels (600 + level #)
;  CCLL	    Exp_Pts.	MaxHP	maxMP	Level_name			Magic-ratio		Right-Hand
;	0		1			2		3		4					5				6
;
; The class name
	600,	0,			18,		0,		"Turtleman",		20,				6

	DESCRIPTION	"The best offence is a good defence for these guys. While enemies hack away at your massive HP, you can take them out one by one."
	AUTO_MAX	5, 10000,  10, 3000,  5
	HAND_RATIO	50
	MAGIC_RATIO	50	
;   START_ABILITY str, wis, sta, agi, dex  
	START_ABILITY   0,   0,   0,   5,   5
	MAX_ABILITY	250, 250, 255, 200, 250
	DEFAULT_SKIN	 Shriukener2, Shriukener2, "Bola Thrower2", "Bola Thrower2"
	START_LOCATION	0, 3


; the class levels
	601,	0,			1,		1,		"Soft Shell"			
	610,	0,			5,		4,		"Hard Shell",			
	630,	0,			10,		8,		"Silver Shell",				
	670,	0,			30,		25,		"King Shell",		
	690,	0,			50,		30,		"Boner-solid Shell"
	699,	0,			65,		35,		"Ultimate Shell",


;
;	
;---
; Now the BOOK levels (700 + level #)
;  CCLL	    Exp_Pts.	MaxHP	maxMP	Level_name			Magic-ratio		Right-Hand
;	0		1			2		3		4					5				6
;
; The class name
	700,	0,			10,		8,		"Enchanter",		70,				7

	DESCRIPTION	"Open a book with this class and you'll be able to read all sorts of knowledge .. including maths .. and chemistry .. >.>"
	AUTO_MAX	17, 4000,  10, 5000,  15	
	HAND_RATIO	0
	MAGIC_RATIO	100
;   START_ABILITY str, wis, sta, agi, dex  
	START_ABILITY   0,  0,   10,   0,   0
	MAX_ABILITY	200, 255, 210, 220, 255
	DEFAULT_SKIN	 Wizard2, Wizard2, sorceress, sorceress
	START_LOCATION	0, 3


; the class levels
	701,	0,			1,		2,		"Inititate Student"			
	720,	0,			8,		12,		"Apprentice",			
	740,	0,			12,		16,		"Enchanter",			
	790,	0,			50,		35,		"Druid"
	799,	0,			65,		55,		"Supreme Druid",


;
;	
;---
; Now the SPIRIT levels (800 + level #)
;  CCLL	    Exp_Pts.	MaxHP	maxMP	Level_name			Magic-ratio		Right-Hand
;	0		1			2		3		4					5				6
;
; The class name
	800,	0,			8,		20,		"Psychic",		80,				8

	DESCRIPTION	"This class has the powerful ability to attack internally, causing xtreme damage within the enemy's body."
	AUTO_MAX	10, 2500,  300, 8000,  0
	HAND_RATIO	50
	MAGIC_RATIO	95
;   START_ABILITY str, wis, sta, agi, dex  
	START_ABILITY   0,  5,   5,   0,   0
	MAX_ABILITY	240, 255, 230, 200, 255
	DEFAULT_SKIN 	Elemental2, Elemental2, Nymph, Nymph
	START_LOCATION	0, 3



; the class levels
	801,	0,			1,		5,		"Marionette"	,		
	835,	0,			8,		25,		"Puppeteer",				
	845,	0,			10,		30,		"Evil Magician",			
	875,	0,			19,		45,		"General Magician",		
	890,	0,			24,		50,		"Chaos Controller"
	899,	0,			65,		55,		"Demonic Chaos",

;
;
;---
; Now the WEIRD levels (800 + level #)
;  CCLL	    Exp_Pts.	MaxHP	maxMP	Level_name			Magic-ratio		Right-Hand
;	0		1			2		3		4					5				6
;
; The class name
	900,	0,			8,		20,		"Summoner",		50,				0

	DESCRIPTION "This class uses the ancient art of summoning mythical beasts to aid them in battle."
	AUTO_MAX	10, 3500, 10, 2000, 0
	HAND_RATIO	50
	MAGIC_RATIO	50
;	START_ABILITY	str, wis, sta, agi, dex
	START_ABILITY	5,	5,	0,	0,	0
	MAX_ABILITY		255, 255, 230, 245, 255
	START_LOCATION	0, 3
	START_HAND_PP 3334,3334,3334,3334,3334,3334,3334,3334
	START_TOKENS  50



; the class levels
	901,	0,			0,		0,		"Baby Summoner"
	910,	0,			0,		0,		"Summoner Trainee",
	920,	0,			0,		0,		"Beginner Summoner",
	950,	0,			0,		0,		"Master Summoner",
	960,	0,			0,		0,		"Chaotic Summoner",
	870,	0,			0,		0,		"Ultimate Summoner",
	999,	0,			0,		0,		"Legendary Summoner",
	
	
; Be sure to leave this comment or a blank line at the very end
