I added one more class to my mud (Bard) and then completely transfered it over to Five Multiclass. Although it still has some inconsitencies in it so it would compile i changed GET_CLASS to return your prime class and GET_LEVEL to return the level of your prime class I have slowly been converting everything to make sense. If you are srious about doing this realize it takes a LOT of changes to many of the basic systems of stock circle to keep everything balanced. To give the basic format of what i did to get all of that stuff this is what i did: in structs.h: byte level; byte class; changed to: int level[NUM_CLASSES]; int class[NUM_CLASSES]; Then so I could have the most freedom getting information about classes and levels, the array of levels corresponds to the classes (i.e. level[0] is level of class mage, level[1] is cleric etc..) and class corresponds to primes (i.e. class[0] is the prime class, class[1] is the secondary etc..). Then i so i wouldnt have to chahnge everything automatically i used these macros: GET_CLASSX(ch, prime) ((ch)->player.class[(prime)]) <- returns whatever class is in 'prime' slot GET_CLASS(ch) GET_CLASSX(ch, 0) <- returns prime class GET_LEVELX(ch, class) ((ch)->player.level[(class)]) <- returns level of 'class' this can be used to get the level of a class by type (CLASS_MAGIC_USER) or by prime (GET_CLASSX(ch, 2) to get the level of their tertiary class) GET_LEVEL(ch) GET_LEVELX(ch, GET_CLASS(ch)) <- return level of prime class, just to keep all previous GET_LEVEL macros in line untill they can be corrected be balanced and logical This has worked out very well for me. Although it still has work to b done on it (for example, when casting spells, if you are a warrior prime, it will use your warriopr level for spell effects). I also had to redo the whole guild system and experience. I am still in the process of changing the practicing system. Any way thats enough spamming of the list for me, Chris On Wed, 10 Jul 1996, Wu Tang Clan wrote: > Has anyone tried to add Quad MultiClass to there mud? > > I am trying to created MultiClasses by > Changing GET_LEVEL(ch) ((ch)->player.level) to > GET_LEVEL(ch,i) ((ch)->player.level[(i)]) > > and in the structs.h file in the char_data struct > Changing level; to > level[NUM_CLASSES]; > > I know there will have to be alot of changes made throughout the code for > GET_LEVEL, so i am trying to compile one file at a time. > > But, the first file i tried to compile, which was comm.c, gave numerous > errors, that i couldn't seem to pinpoint the source of the error. > > Such as comm.c:1663: macro `GET_LEVEL' used with just one arg, but i can > find where it is calling that macro from... > > If anyone has tried this, or know how to complete this task please reply > to this mesg. > > Thanks In Advance > > WuTang AKA Shame > > >
This archive was generated by hypermail 2b30 : 12/07/00 PST