Allowable races for new class

Posted by Gadush on Wed 06 Apr 2005 09:35 PM — 5 posts, 23,275 views.

#0
I know this has been dealt with, and I have looked over all the posts I could find by searching here for races, classes, and combinations of the two. But none of them seem to tell me what I am doing wrong here.
I removed some classes from class.lst
I set all the race files to have 0 in the classes field.
I logged on the mud and typed 'setclass barbarian create'
I typed 'setclass barbarian save' (which, by the way, seems to give no indication it actually did save).
I typed 'save' just to be sure.
I shutdown the mud.
Back in the classes folder, there was my barbarian.
I opened it with TextPad and edited it to what I wanted.
Saved the file.
Restarted the mud, tried a new character, but the only races available for the barbarian class are human, elf, dwarf, and halfling.
I made sure I had the classes field set to 0 in every race file.

Is there another step to putting in a new class, or something else I missed on giving access to all classes to all races?
Sorry I failed to find the answer on my own.
Thanks for any help,
Gadush
Amended on Wed 06 Apr 2005 09:36 PM by Gadush
Australia #1
What class number is barbarian, every class has a number, and they must be listed in that order in class.lst, now dont quote me, but i think that the class entry in the race file is not a base 10 number.

What you need in the race files is Classes 512, human should be able to get all classes and that is their entry
#2
I thought the classes should all be set to zero, since the number represents which classes are not allowed. But I changed them all to 512 anyway, and it seems to make no difference whatsoever.
But I did change the race numbers to match the order of the list, and now all the races show up except half-elf.
The race.lst:
Human.race
Elf.race
Dwarf.race
Halfling.race
Half-Orc.race
Half-Elf.race
Gnome.race
$

Each race number is ordered zero through six. Half-elf is number 5. They show up in order, including Gnome, but missing Half-Elf.
Trying to enter Half-Elf at the select race prompt only gives the message "That is not a race."
I looked at the race files themselves when I checked the numbers, and cannot see anything wrong with the half-elf file.
Suggestions anyone?
Sorry, I should have said I am using SmaugFuss from this site.
Amended on Fri 08 Apr 2005 01:23 AM by Gadush
#3
Okay, here is the deal with adding races and classes to Smaug and SmaugFuss, that I have found by searching here, and experimenting with the Mud itself.

1. Create the race or class online, just like the docs that come with the source say to. However, typing the 'setrace <name> save' command doesn't save it. It brings up a list of possible uses for setrace instead. Just type 'save'. Now the new race or class will show up in class.lst or race.lst.
2. If you want all classes to be available to all races, go to each race file (folder Races in folder Src) such as Dwarf.race. Open with text editor, find classes, change the number to 512 or 0. Doesn't seem to matter which you use, that I can tell. Save the files as you change them.
3. Open class.lst or race.lst and change the class or race number to correspond exactly to the order of the number for each file. Example, open Dwarf.race, note that the race number is 2 (near top). Open race.lst, make sure that Dwarf.race is the third down. THIRD? yes, because human is first and starts with 0 as a number. 0, 1, 2, etc. . .
4. This one puzzled me a long while. I do not know why, but the sixth race in the list, with race # 5 WILL NOT SHOW UP. You can add races all day, and they will show up, but the 6th will be skipped. Easy to fix: Add a race you will not use. Let us say Housefly. Go onto the Mud, add the race and save. Shutdown the mud. Open races.lst, switch places between Housefly.race and whatever race is the 6th one from the top. Save. Open Housefly.race file and the .race file of your race # 5. Switch the race numbers. Save each file. Now your races will all show up, including race # 5.
Anyone know why race # 5 doesn't show up? Am I screwing things up by doing this? Heh.
Seems to be working, anyhow.
Gadush
Amended on Fri 08 Apr 2005 11:44 PM by Gadush
USA #4
Because vampire is race 5 :) the vampire race is hidden and not chooseable, it is _Vampire_ if you look at the race files, and in mud.h it is defined as race 5... looking in comm.c you see a few checks for RACE_VAMPIRE that cause it to not show. If you want race #5 to show you'll need to replace those checks.