Re: multi-classing

From: Rasmus R\xnlev (raro94ab@hp4.econ.cbs.dk)
Date: 04/23/96


On Mon, 22 Apr 1996, jeremy jubenville wrote:

>   I hate writing the list because I feel as if my questions have been 
> asked several times before.  However, I'm looking for advice on the best 
> way to implement multi-classing.  Several come to mind (e.g. defining new 
> classes or adding new fields to the char_data structs), but I'd like to 
> hear the thoughts of some of the coding gurus or those who've 
> successfully implemented this allready.

Well,what you have to decide is:

1) Do you want to modify the existing char_file_u format ?
   Yes: You will have to write a pfile converter or purge the pfile.
    No: You have a problem. :-\ The solution is to build a totaly new file
        which then does only contain the pfile-MULTICLAS data, possibly a 
        bitvector or an array that can identify which classes a player 
        is/has.

   You can allso just go down and examine the char_file_u :)
   As far as I remember there are a few ints and longs which have some 
   'unused' name... change the name of such a long to multiclass_vec.
   Now you have a bitvector to save the ulticlasses to... and well, make
   a similar long somewhere in the char_data, wich you DO OFCOURSE remember
   to copy over when you save/load from a char_file_u struct :)


2) You think it all over, and find out what kind of multiclassing you want.
   I think there are basically 2 different kinds:
    * Beeing able to 'join' a new class at some point in the game.
       - Not beeing able to learn old classes skills/spells, but still 
         remembering them (i.e. the learned levels which are saved anyway :)
         This requires some fiddeling arround in the skill/spell code..
       - Adding the new skills/spells to the existing practice list, and 
         beeing able to prac skills/spells from previous and present classes.
    * Multiclass is a class made up of 'different' clases into ONE..
       - Add a new class
       - You simply fiddle arround with the spello() stuff (in bpl8 :)
       - Make the XP tables require more xp..
       
I've changed too much arround to remember the exact 'way' the original 
char_file_u looks, but I think you should be able to implement the last 
sugestion without changing the pfile. Personally I don't like it, It was 
more challenging making a system where people can combine all classes as 
they want, with whataver limitations I put on them, wich the 1st 
sugestion allows... 

Well, it's a matter of personal taste, and willingness of your players to 
go with a pfile-wipe, if thats what you end up with as the only option..

Whatever you might choose you'll find it to be praised by your players I 
bet :)

Regards,
Con

d.
--
***************************************************************************
*                            *    Visit my homepage:                      *
*   Rasmus Rønlev DOEK'94    *    http://www.econ.cbs.dk/people/raro94ab  *
*   Student instructor       *    Visit my Multi User Dungeon (MUD):      *
*   Mailto: rr@cbs.dk        *    ns3.ptd.net 5000 or 198.80.46.3 5000    *   
***************************************************************************
*                                                                         *
*      Student, B.Sc in Computer Science and Business Administration      *
*                                                                         *
***************************************************************************



This archive was generated by hypermail 2b30 : 12/18/00 PST