|
Mirkwood MobilesThis is a short manual about writing mobs for Mirkwood. There are several EXAMPLES at the very end of this document. -Tomasin 9-22-95 First some general guidelines: To keep the MUD fun, we must keep it challenging. This means no wimpy mobs. It also means no incredibly tough mobs unless you have a GOOD reason. This balance is hard, we admit. We'll try to bestow some learned lessons in the text below. Generally, a 'hard fight' should mean that a player can defeat a mob using all of his/her/its mana and hit points (with a bit left over for survival, of course.) That is, the play should have to sleep and regenerate before moving on to the next target. A hard fight should earn the player about 50-60 xp. A VERY hard fight might mean fleeing several times, using potions, etc., and could earn the player a MAX of 120-150 xp. If we see players getting more than that every fight, something is wrong. Adding special functions, such as spell casting, can make SOME difference to a LOT of difference. Adding vulnerabilities, immunities, and resistances can often make or break a mob. Keep a balance -- if you add a 'common' vulnerability, add lots of hp. If you add magic or weapon immunities, decrease the hp. Think balance balance balance....
The syntax for the mobiles' section is as follows: #MOBILES
#0
---- Explanation ---- The vnum is the virtual number of the mob, unique to it. The name list are the mob's names, its keywords. These names are the words used to interact with a mobile. You may have multiple words here, and each one can be used during player interaction with the creature. For example, if a mob had the keywords 'orc captain', a player could enter 'kill orc' or 'kill captain'. The short description is a simple title for the mob. This is the string that would be seen on scan or if the mob gossip'd. Note that you should NOT begin the short description with a capital 'A', as in 'A snake'. It should be 'a snake'. Mirkwood's code will capitalize the first word of a mob's short description, when needed.. Sentences that include the short description someplace else other than the beginning look pretty funny with an 'A' or 'The' stuck in the middle. Proper names used in short descriptions, as in 'Sauron', should be capitalized as normal. The long description is what a player would see when entering a room with the mobile in it. It should be a complete sentence, preferably one line or less. This means the long description should be no longer than 80 characters. Remember that some flags, like (Sanc), will lengthen the long description. The extended description is what a character would see if they looked 'at' your creature. Spend some time on your extended descriptions. Properly done, they can make your area much more interesting. The
race is ... the race of the mobile. Race determines
the body parts that might fall on the ground after the mob's death. In addition,
race also determines immunities, vulnerabilities, and resistances, as well
as inherent skills such as infravision. With the addition of mounted travel
and mounted combat, race also determines if a mob is ridable or not. Note
that
if
you
wish,
you
can
choose
unique and set body parts and immunities, vulnerabilities, resistances, and inherent
skills yourself. In addition, you can add immunities, vulnerabilities, and resistances
to an existing race. Players cannot see the race of a mob. (Race is mainly used
to speed up building:)
The <action flags> describe the behavior of the mob, to a certain extent.
The <
affect flags> describe what the mobile is affected
by. Builders, use the letter flags. The numbers are to be used for the isaffect
if check. See the Mob Prog file for more information.
Your mobile's < align> can range from -1000 (very evil) to 1000 (saintly). NOTE: currently we have more evil mobs than good ones, so you might try to write more good mobs, assuming that fits in with the theme of your area. That silly 'S' has just got to be there. < level> is, of course, your mobile's level. < + hit> is the mob's extra ability to hit. For most cases this should be low or 0. The mob's level determines the to-hit more than anything else. Below level 10, this number should be 0. At level 80, 10-15 is fine. <
hits> is the amount of hit points a mob has. It's
given in terms of dice. Note that this value MUST be in this form: XdY + Z, where
X = number of dice, Y = number of sides on each dice, and Z = any extra hit points
(Z can be 0, if you wish). In other words, you could use 10d100+500, but
not simply 10d100. If you want your mob to always pop with the same number of
hit points, you can do this: 1d1+499. That will always produce mobs with 500 hit
points. As a simple guideline, you should average the following:
The number is in terms of dice: 40d40+2500 averages to be around 3320. If you need help understanding this, ask an immortal. < mana> for now is mostly for show, since mobs do not really USE mana (unless using MPCAST, see MOBPROGS section). (This may change!) For now, put something reasonable in there, but don't sweat over it. Note that this value is always entered as dice plus any extra mana: 10d10+400. See 'hits' above. < damage> is the average damage (in dice) the mobile does w/o a weapon in hand. Like 'hits' and 'mana', it's entered in this form: XdY+Z, or, for example, 5d5+10. NOTE: The extra damage, the Z value, is used by the mob EVEN IF he is wielding a weapon. So, do make disarm effective, you just have to make sure that XdY in this field is a bit less than the average damage on the weapon the mob is wielding. See 'weapons' in the OBJECTS file for more information. If you set a damage of XdY, you can calculate the following: Minimum damage=
X
Average damage should not to exceed (0.5*mobile level) + 4. For example, average damage on mobs: Maximum should be 5 to start plus 5 for every 10 levels. So, for example, a level 30 mob's maximum average damage would be 5 plus 15 (5 per each 10 levels) for a total of 20. Further suggestion: if a mobile has a weapon, its damage should be slightly LOWER than the weapon's average damange. The mob's average damage only applies if it is fighting WITHOUT a weapon. If its average damage is lower than the average damage of whatever weapon it may be wielding, then disarm is effective. We WANT disarm to be effective. <
damage type> determines the kind of damage and
what message is produced when the mob is fighting.
Your mob's AC values are next. The numbers range from 10 down, and magic should be higher than the rest (about 2/3 of the others). Remember, the lower the number, the better the Armor Class. These numbers are approximately 1/10 of the actually running value (ie, a 10 == 100 ac, and a -32 is approximately -320). Armor classes for higher level mobs (above 35) should be a bit over half (in negatives) of the mob's level. Thus, for example, an level 45 or should have something along the lines of -27 -28 -27 -17. If your mob is going to be wearing armor, this should be higher (remember, -20 is higher than -27). <
offensive flags> are as follows:
NOTE: Be careful that immunities,
resistances, and vulnerabilities don't overlap! In other words, don't make
a mob both immune and resistant to poison, or immune and vulnerable to
charm. Higher level mobs should have more resistances and immunities --
resistances are better.
Resistances are the same, basically:
The <
start position> indicates the repop position,
and the <default position>
is the position the mob will return to after fighting. Most mobs should stand
(8) in the starting and default positions. If you have a mob sleeping, remember
that players will be able to cast all kinds of nasty spells on it without waking
it--adjust mob stats accordingly.
The <
sex> of the creature is not a yes or no question.
It's a 'which one?' question.
The < gold> is the amount of gold a mob carries and can be looted. Generally, mobs under level 30 should not have more than 500 gold, but creators descretion is honored here. Level 100 mobs should have a MAX of 10000 gold ... level 80 7000, level 50 3000, level 40 2000, level 30 1000, level 20 500, level 10 250. In special cases, you can exceed these guidelines, but also remember that for some mobs it makes sense that they have NO gold whatsoever. A rabbit, for instance, is going to be cash poor :) The <
form flags> dictate the body form:
None of these body flags
are used, but may be some day. They are documented for the sake of completeness.
The <
part flags> are used to dictate what body parts
result from chopping off pieces at death. This is constrained by race. That is,
a human (often the default for mobs) does not have a tail. Often, a 0 is used
which means 'use the default for the race'.
The <
size> is relative to humans. Size can affect the
effectiveness of bash and can affect a mob's ability to move through size restricted
room exits.
The < material> field is not currently used, use a 0. This is the end of the required fields. Everything following is optional.
If the mobile has a script, it can be inserted at the end of the normal description. See the Mirkwood Scripts text for information and form. The optional '
M' section is for movement
strings specific to the mob. Note, room exit and entrance strings will override
mob movement strings. Mob movement strings are best used in areas or sections
of areas that do not have many rooms with their own entrance and exit strings.
If the exit or entrance has a door, the mob's exit and entrance strings will use
the name of the door. This can often be awkward, so, as a general rule, always
give rooms with doors their own exit and entrance strings. That way you won't
get something silly like "The rabbit hops by the trap door." The mob exit and
entrance strings should be no more than one line, or 80 characters INCLUDING the
number of characters in the mob's short string. The following variables may be
used (and some SHOULD be used):
The first string is the string shown when the mob leaves the room. For example, if the mob is to 'skip' out of the room, the string might be: $n skips $T.~ which, as an example, might be seen on the mud as The little kid skips north. The second string is the message shown when the mobile arrives from someplace else. As an example, if the mob were to 'hop in', the string might be: $n hops in $T.~ which might be seen on the mud as: The little kid hops
in from the north.
An example might be:
Your mob may exhibit many
types of aggressive behavior. This is set via the 'A' flags. The following
flags are available:
Be aware that these flags are 'OR' conditioned. For example, A PY will attack humans OR mages ... not human mages. ---- EXAMPLES ----- #MOBILES #4202 #2220 |