Adding Removing or Changing
Races in SmaugWizard Version 2. Quicknotes: 1. To remove a race, edit the file SmaugServer\races\race.lst. Either remove the filename of the race to be removed, or comment it out by placing the '*' character in position 1 of the line. 2. To add a race, if the race already exists as a file, edit the file SmaugServer\races\race.lst. Add the name of the race file (name.race) to be added to the mud. 3. The order of the races in race.lst determines the order the races will be displayed in the mud when choosing a race. 4. New races can be created online with the Setrace command, or manually by copying an existing race file, changing it's name, and adding it to the race.lst file. Once the new race is created you can edit the race file with the SmaugWiz race editing commands described below, or use a text editor to edit the race file directly (windows notepad will work fine).
The following is a list of the data stored in the race files, and a brief description of each, click on the links for more information on each item.
Setrace <racename> create [copyname]: Use this command to create a new race and race file. Racename specifies the name of the new race, and the race file will be named racename.race. The new race will be created with default race settings like the human race. If copyname is specified, the new race will duplicate the settings from the copy race (if copyrace is a loaded race). The new race name will not be put into the race.lst file until it is rewritten with the writelist command (note 2). Setrace writelist: Use writelist to rewrite the mud's race.lst file. The file will be rewritten with the race names that are currently loaded in the mud, in the same order as they appear in the Showrace list command. Version: The version number of race files is automatically set when the race is created. It is used when loading to determine if the race file is compatible. Name: The name of the race is stored in the race file, and is also used as the name of the race file. So the elf race file will be named elf.race. The name is set into the race file when the race is created (note 2). Language: Setrace <race> <language> - This command enables or disables the use of a language. (Use the Showrace command to see the list of currently enabled and disabled languages). The languages that a race knows is stored in the race file in the form of a list of strings. All races know common, so it is not included. The language names must match names in the language file that SmaugWiz loads at boot time. If a language name is not found, it is ignored. Affected: Setrace <race> <affected> <flag1> [flag2] ... - Turn on or off various affects for the race, such as blind, invisible, detect_evil, etc. See the Affect Table for a list of all affects (note 1). Class: Setrace <race> class <classname> - Will enable or disable the ability of a class being a member of this race. Example: "Setrace elf class cleric" would allow the cleric class to become a member of the elf race. Classes are stored in the race file as the list of class names which are restricted from the race. Any new classes added to the mud will automatically be available to all races until they are disabled via this command (note 1). Align: Setrace <race> align <value> - Sets the alignment default for the race. Example: "Setrace mage align 500" sets the mage default alignment to 500. Minalign, Maxalign: Setrace <race> minalign/maxalign <value> - The Max and Min alignment limits specify the normal range of alignment which members of the race are expected to maintain. If, by their actions, they stray from those limits they will receive periodic messages indicating so, and expressing their guilt. The character will also suffer a mental state penalty for straying from this range. Height, Weight: Setrace <race> height/weight <value> - Sets the nominal height and weight for members of the race. This value plus a small random modifier will be used when a new character of the race is created. Hit, Mana: Setrace <race> hit/mana <value> - Determines the amount of hitpoints or mana gained by leveling. Example: "Setrace drow hit 5" would provide the drow race with a gain of 5 hitpoints for each level. Strplus,
dexplus,
wisplus, intplus, conplus, chaplus, lckplus, acplus: Setrace <race> statname
<value> - Apply a modifier to the race, for
strength, dexterity, wisdom, intelligence, constitution,
charm, and luck. Example: "Setrace elf strplus
2" gives elves +2 bonus to strength Hunger_Mod, Thirst_Mod: Setrace <race> hungermod/thirstmod <value> - Sets the rate at which the members of the race get hungry and thirsty. Exp_Mult: Setrace <race> expmultiplier <value> - Determines the rate of experience acquired from leveling, adepting or successfully using skills and spells. This is a percentage based upon the amount of experience a member of the human race would receive. Example: "Setrace half-troll expmultiplier 80" - Half Trolls would gain 80% of the experience that a human would by having completed the same task. HpRegen, ManaRegen: Setrace <race> hp_regen/mana_regen <value> - Sets the hitpoint or mana regeneration modifier for the race. A value of zero has no effect. Positive values will cause mana or hp to regenerate faster, negative values slower. Things like position, intelligence, hunger, thirst, poison, etc. will also affect regeneration speed. RaceRecall: Setrace <race> race_recall <vnum> - Sets the room where members of the race will recall. Set to zero to disable. ShoveDrag: Setrace <race> shove_drag <value> - Modifies the ease of which a member of the race can be shoved or dragged by another character. Use positive values to make shoving and dragging easier, negative values to make it harder (as compared to the human race). Resist: Setrace <race> resist <flag> [flag]... - Sets the resistance of the race to various attacks such as fire, cold, electricity, etc. Example: "Setrace elf resist fire poison", would make the race resistant to fire and poison attacks (note 1). See the RIS Table for a full list of resistances. Suscept: Setrace <race> suscept <flag> [flag]... - Sets the susceptibility of the race to various attacks such as fire, cold, electricity, etc. Example: "Setrace elf suscept fire poison", would make the race susceptible to fire and poison attacks (note 1). See the RIS Table for a full list of susceptibilities. Attacks: Setrace <race> attack <flag> [flag]... - Sets the ability of the race to use various attacks, such as bite, claws, tail, etc. Example: "Setrace ape attack bite tail", would enable to ape race to attack with teeth and tail (note 1). See the Attacks Table for a full list of attacks. Defense: Setrace <race> defense
<flag> [flag]... - Sets the ability of the race to
defend against various attacks, such as bite, claws,
tail, etc. Example: "Setrace troll defense bite
tail", would enable to troll race to defend against
attacks with teeth and tail (note 1). SavingPoisonDeath, SavingWand, SavingParaPetri, SavingBreath, SavingSpellStaff: Setrace <race> save <value: - Modifies the races saving throw capabilities. WearName: Setrace <race> <position#> <name>: Sets the racial wear name at position# for the race. Example: "setrace elf 1 used as light". This is an array of string values, which are used to specify the name of the location where equipment can be worn. They can be blank, and if so will not be saved in the file. There is also a default set of wear names that applies to all characters, but those will be overridden by these racial values. The defaults name the 26 currently existing wear locations on a character's body as follows: 1 used as light Example: Setrace dragon wearname 10 worn on claw", would change hands to claws for a race that has claws instead of hands. Note
1: The commands listed below are
toggle commands. That is, when you issue the command the
option will be set or enabled if it is not already
enabled. If it is aready enabled it will be
disabled. Note 2: Certain race operations are not safe to do online because the changes would cause problems if there are players logged on which are members of the race. For this reason commands to delete a race, rename a race, and change the order of races are not included in online edit commands. Those operations must be done while offline by directly editing the race files and the race.lst file. The following affects table shows the Setrace affect name for using with the affected option, the source code bit name, the bit number, and the decimal value of the bit. The decimal value can be used to manually specify affects when directly editing race files. Example, if you wanted a race that was blind, but was able to detect invisible, you would add the two bit values (1 + 8), and use 9 for affects.
The following RIS table shows the Setrace RIS name for using with the resist and suscept options, the source code bit name, the bit number, and the decimal value of the bit. The decimal value can be used to manually specify resistances and susceptibilities when directly editing race files. Example, if you wanted a race that was resistant to acid and poison, you would add the values (128 + 256), and use 384 for resist.
The following Attacks Table shows the Setrace attack name for using with the attack option, the source code bit name, the bit number, and the decimal value of the bit. The decimal value can be used to manually specify attacks when directly editing race files. Example, if you wanted a race that was can attack with sting, frostbreath and gasbreath, you would add the values (3 + 16384 + 131072), and use 147459 for the attacks value.
The following Defenses Table shows the Setrace defense name for using with the defense option, the source code bit name, the bit number, and the decimal value of the bit. The decimal value can be used to manually specify defenses when directly editing race files. Example, if you wanted a race that was can defend with parry, dodge and heal, you would add the values (1 + 2 + 4), and use 7 for the defenses value.
|