Crossfire Mailing List Archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

A proposal for CF




	Hi all,

		Here is a more substantial proposal for new 
	exp/race/skill/etc. system in CF. I fleshed most of this
	out with Peter and from comments on the mailing list.

	I know I probably don't need to say it, but 'comments
	anyone?' :) --b.t.



	*****************************************************
	PROPOSAL for a New EXPERIENCE/SKILL/RACE system in CF:
	*****************************************************
	
	Summary
	=======
	In essence, a new system of experience is proposed. Under 
	this proposal several kinds of experience (nominally known as 
	'experience catagories') can now be gained by the player. Each 
	experience catagory will have skills associated with it, 
	and experience will be gained by use of associated skills.
	Race and profession will be now be split apart as will 
	the magic system into 'mage' and 'clerical' powers. 
	(Most of) this system will be an option for play. 

	(Short) list of specific important changes
	==========================================
	Here is a list of things that are recommended to be changed.  I 
	have tried to break the changes up into related chunks :

	 Part A - Race and Profession 
	--------
	 A1 - Separate player choices of race and profession.

	 A2 - Player image will be set by profession (all the bitmaps
	      are already made!!), later the player will be able
	      to choose any available image.

	 A3 - Both race and profession may set flags. For example,
	      characters who are either 'fireborn' or 'monk' will have
	      the 'no weapons' flag set.   

	 Part B - Multiple experience catagories
	--------
	 B1 - Multiple catagories in which a player may gain experience.
	      Type and amount will be viewable by the player. 
	      The naming and number of catagories will be configurable. 
	      One possible implementation is for each experience catagory 
	      to be treated as an (invisible) object in player inventory. 
	      Configuring the alignment of associated skills and the 
	      number of experience catagories could be done with the use 
	      of an ascii file--'skills_param' similar in scope to the 
	      'spells_param' file. 

	 B2 - Experience gained will be tunable. One way to easily do
	      this is through a single multi-purpose function
	      add_experience().  

	 B3 - Each experience catagory will have an associated stat(s)-
	      (eg Str, Int, Wis, etc). As an option, the amount of 
	      experience gained by a player will be influenced by 
	      the value of relevant stat(s) they possess. 

	 B4 - Wc, hp and dam will become related to the appropriate 
	      experience catagory(s) at start. For hp, I expect to 
	      relate it to the sum of all experience. For dam, wc an 
	      equitable means of relating wc, dam to appropriate 
	      associated skills may later be devised. 

	 B5 - Lost experience will be subtracted and divided amoungst 
	      all exp catagories *which are non-zero* equally. 

	 Part C - Skills
	-------- 
	 C1 - Two kinds of skills will be available: "associated" skills
	      which are associated with an experience catagory and 
	      "miscellaneous" skills which will not be associated with 
	      any experience catagory.

	*C2 - Skills will be objects in the character inventory. These
	      objects may either be invisible or may be 'tools' with
	      represenative bitmaps. Loss of a 'tool' means the player
	      looses the ability to use the skill embedded in the tool. 
	      'Lockpicks' are an example of a skill 'tool'.

	 C3 - experience will be now only be gained through the use of
	      skills associated to one of the catagories of experience.

	*C4 - Both NPC and players will be able to use skills.

	*C5 - Players will be able to learn skills by reading scrolls of
	      knowledge ('skillscrolls'). Current implementation will 
	      allow players to buy scrolls in shops, but later, maps may 
	      be made to allow the creation of a 'guild' system whereby  
	      skillscrolls are acquired (and shops phased out...). 

	*already implemented in the skills code. 

	 Part D - Magic system
	--------

	 D1 - Clerical and Magical power and spells will be sundered.
	      "grace" and "mana" will come into use for the number of
	      "spellpoints" available for the player to cast "magic" 
	      spells  and clerical prayers.

	 D2 - A new player stat will come into exsistence - "power". This
	      stat will control the amount of magical power (both 
	      grace and mana ?) a player has. 

	 D3 - Use of Int and Wis will change.  Possibly, Int will set the
	      likely hood of a player learning magic spells, and Wis will
	      set the likelyhood of a player learning new prayers. 


	Strategy for coding - brief synopsis 
	====================================
	   I suppose many different ways exist to approach this. My plan is 
	to finish objectives in catagory 'C' first. Creation of the 'power'
	stat and experience objects should come next. After the new 
	experience system is up and running, the magic system should be 
	altered. Once those steps are in place the experience system can
	be playtested and 'tuned'. Because the stuff in part 'A' is 
	relatively independant of the other things, profession and race may
	be hacked at any point. 

	I currently forsee most of parts 'B' and 'C' as being configurable,
	and made as an option for crossfire play. Parts 'A' and 'D' seem to be
	difficult to code as options and will be permanent changes to CF 
	unless someone cleverer than me knows a good way to do it.