Common code
These codes are common to all types of mobs, although they may appear
in different
places.
Virtual Number
(VNUM)
The mob's vnum starts with the zone number and ends with a unique
number. Mobs are listed
in the mob file in order. So ... for zone #99, the first mob is
#9900, the second is
#9901, etc. (See sample mob file)
A type - S type - Overview
- Top

Alias List
list of keywords, separated by spaces, used to interact with the mob, as
in
"kill <alias>". Example:
fido
beastly~
 |
 | make sure the spelling matches the room
description. |
 | don't put "a" or "
an" or "the" in the alias list |
 | don't add a common alias for every mob
in your zonet |
|
A type - S type - Overview
- Top

Short
Description
This is the description that the mud uses when the mob DOES something
(e.g. attacks you.) It should start with a capital and end with a ~
Example:
The beastly fido~
Harold~
A type - S type - Overview
- Top

Room
Description
This is the "room description" of the mob. It should end with
a period
and be followed by a ~ ON THE NEXT LINE.
 |
 | DO NOT use "
is here" in any way shape or form.
You will be asked to rewrite your mob if you do. "The
bloodthirsty vampire is
here." is overused and not nearly as interesting as "
The bloodthirsty vampire
looks yearningly at your neck." |
 | Descriptions must fit on one line,
about 72 characters (not including color codes.) This
helps keep the room from looking cluttered. An occasional
exception to this rule is
ok. |
|
If your mob is HIDDEN, the long description won't be seen unless it
is attacked and the
attacker flees ...
A discrete use of color can add some excitement. For example, dark
red is the color of
tell. Coding it into the long description makes it seem as if the mob is
speaking directly
to the player, for example:
The vampire tells you, 'Mmmm! Fresh blood! You
look tasty!'
A type - S type - Overview
- Top

Long Description
When a player looks at your mob, this is what they see.
General rules:
 |
 | Three lines minimum.
|
 | Show details about the mob such as its
age, what clothes it is wearing. You can use the
description to hint about the difficulty.
|
 | Follow the long description with a
tilde (~) ON A SEPARATE
LINE.
Example:
The king is the ruler of this land. You are to obey him without
question, for he has got a lot of power. As he looks at you with
his
icecold gaze, you get the feeling you shouldn't be here at all.
~
|
|
A type - S type - Overview
- Top

Races
| 0 |
undefined |
5 |
bearbeast |
10 |
illusion |
15 |
water
|
| 1 |
humanoid |
6 |
bird |
11 |
mount_fly |
16 |
earth
|
| 2 |
undead
|
7 |
mount |
12 |
demon |
17 |
air
|
| 3 |
catbeast |
8 |
giant |
13 |
flybeast |
18 |
dragon
|
| 4 |
hound |
9 |
dwarf |
14 |
fire
|
The mob's race affects its resistances and the type of attack..
Undead mobs are resistant to piercing. Fire and water mobs are resistant
to fireball, and
demons are resistant to fear.
Animals (mounts) bite, dragons whip, etc.
A type - S type - Overview -
Top

Classes
This will affect the default skills list for the mob, and the default
may not be what you
expect!
| 0 |
Normal |
| 1 |
Magic User |
| 2 |
Cleric |
| 3 |
Thief |
| 4 |
Warrior |
Warriors get 2nd, 3rd and 4th attack at 100%, track and scout at 95%,
kick and bash at 60%
and disarm foe at 75%.
Thieves just get 2nd attack at 100% and track and scout at 95% (no other
skills).
All others get 2-4th attack, tumble, parry, dodge, and martial arts at
100%, track and
scout at 95%.
So why code anything other than "
Normal" ?
So to avoid local lag you should try to make the mob Warrior if you intend to have the mob use the skills kick, bash and/or disarm as an attack.
A type - S type - Overview -
Top

Action
Simply code the letters and let the mud do the work. For example, to
make a mob sentinel,
scavenger and a helper, code bcm
| Action
|
code
|
Effect
|
| spec |
a |
spec-proc to be called if it exists |
|
sentinel |
b |
prefers to stay in its room |
|
scavenger |
c |
pick
up stuff lying around |
| isnpc |
d |
internal use only: don't set |
|
nice_thief |
e |
set if
thief should not be killed |
|
aggressive |
f |
set if
automatic attack on npc's. If a special aggressive on an alignment only
is
selected, then this needs to be selected too.
|
|
stay_zone |
g |
mob
must stay inside its own zone |
| wimpy
|
h |
mob
will flee when injured. If it's aggressive, it will only attack sleeping
players |
|
aggressive_evil |
i |
attacks evil-alignment players IF "f" is also selected |
|
aggressive_good |
j |
attacks good-alignment players IF "f" is also selected |
|
aggressive_neutral |
k |
attacks neutral-alignment players IF "f" is also selected |
| memory
|
l |
remembers if struck first and will hunt pc |
| helper |
m |
if a player is fighting a mob, the helper will
join the attack against the player.
|
| hidden |
p |
The mob is hidden and will not be seen at all (no blankline no alignment etc).
|
| NoTrack |
q |
Mob can not be tracked.
|
 |
 |
If you want your mob to attack evil or good players,
you must also code "f", the "aggressive"
flag |
 |
DO NOT code a or
d |
 |
DO NOT make a shopkeeper or similarly difficult
mob a scavenger. This will make him grab corpses and will
make corpse retrieval unnecessarily painful. |
 |
stay_zone is useful
unless you wish your mob to be roaming nearby zones. The
midnight black wolf from the Elysium Faire, for example, frequently
wanders the Northern Road, the zone at the entrance to the Faire.
Aggro mobs should probably be stay_zone. Powerful aggro mobs
should probably not have memory, or they are likely to kill
innocent newbies in their efforts to track down their attacker.
Recent example of this was the aquamarine dragon (who had to
have a lobotomy). |
|
A type - S type - Overview
- Top

Affection
Affections make a mob easier or harder to kill, and more or less
dangerous. Many
(those marked in yellow) should NOT be used and are not included in the
affection table on
the cheat sheet. Choose the letter symbol(s) you wish to use, or
code a 0 if there
are no affections. Examples follow the table.
| a |
BLIND |
Mob is blind.
|
| b |
INVISIBLE |
Mob is invisible till it attacks. |
| c |
DETECT_ALIGN
|
* No effect for mob - all can look
for align
|
| d |
DETECT_INVISIBLE
|
Sees invisible chars and objects |
| e |
DETECT_MAGIC
|
* No effect for mob
|
| f |
SENSE_LIFE
|
Sees hidden characters |
| g |
HOLD |
* Not Imped yet!
|
| h |
SANCTUARY |
Halves all damage received |
| i |
GROUP |
INTERNAL USE ONLY: mob is grouped
|
| j |
CURSE |
* Mob is cursed like spell |
| k |
LIGHT |
Mob sees in the dark
|
| l |
POISON |
* Mob is poisoned like spell |
| m |
PROTECT_EVIL |
An extra AC point vs Evil players.
|
| n |
PARALYSIS |
* Not Imped yet!
|
| o |
INSANITY |
* Not Imped yet!
|
| p |
FL_WPN |
Not Imped yet!
|
| q |
SLEEP |
* Mob is slept like spell |
| r |
DODGE |
Mob can dodge like skill
|
| s |
SNEAK |
Mob doesn't have entry/exit msg
displayed |
| t |
HIDE |
Mob is hidden like skill
|
| u |
FEAR |
Not Imped yet!
|
| v |
CHARM |
INTERNAL USE ONLY: mob is charmed
|
| w |
FOLLOWING |
INTERNAL USE ONLY: mob is
following |
| x |
WIMPY |
INTERNAL USE ONLY: Wimpy set |
| y |
INFRARED |
Mob has infravision like spell |
| z |
BERZERK |
Mob is berserked like skill |
| A |
HOVER |
Mob is levitating like the spell Mob
"hovers" |
| B |
FLY |
Mob flies (all flying creatures must
have this flag on). |
| C |
BREATH_WATER
|
The mob will not take damage from being underwater.
|
| D |
REGENERATION |
Mob regenerates hit points like the
spell |
This is the gremlin in Ultima. He can see in the dark, and when
he flees, you
don't see him leave the room, because he is sneaking. Players tend
to find this very
annoying.
#2633
gremlin~
the gremlin~
This little creature sneaks around and steals your food.
~
He seems to be just a head with little hands and feet sticking
out of it. It does not seem like these things could hurt you,
but your money pouch seems much lighter.
~
12 3 ch ks -300 S
48 -4 -16 2d72+576
408 500 100 3d10+12 -1
-1
-1
0 225000 8 8 0
 |
 | Wimpy+sneak = mobs like the ogres. They flee and you do not know where they
fled to without scout.
|
 | All dragons, birds and other flying
creatures should have the fly affection. |
 | Shopkeepers who do not have "
light" will not trade at night since they cannot
"see" their customer. (so bring light to him/Eg.) |
 | Don't overuse sanctuary. |
|
A type - S type - Overview
- Top

Alignment
A number from -1000 to 1000 representing the mob's alignment.
| -1000 |
Evil |
-350 |
| -349 |
Neutral |
349 |
| 350 |
Good |
1000 |
 |
 | Players mob alignment to balance their
own alignment and govern what they can wear. |
 | Mobs play by the same rules as far as
eq goes. A "good" mob cannot wear
equipment that is "anti-good".
|
 | Alignment can be used to make a densely
populated zone such as Tynstri or the new drow
zone less easy to clear.
|
|
A type - S type - Overview
- Top

Level
For S type mobs, level affects:
 | default resistance to summon, charm and
sleep |
 | hitroll (see also thac0)
|
For A type mobs, level affects:
 | hitroll and
thac0 |
 | AC (armor
class) |
 | hit points |
 | experience
points |
 | gold |
 | type of attack (bite, whip, stab) |
 | how hard the mob hits
|
 | resistance to summon, charm and
sleep
|
|
A type - S type - Overview
- Top

Gender
The gender (sex) of your mob will determine which pronouns (he/she/it
him/her/it
his/hers/its) the mud uses when referring to the mob. Please make
them logical ...
i.e. a human named Bob should probably be coded as a male.
| 0 |
Neutral (it/its) |
| 1 |
Male
(he/him/his) |
| 2 |
Female
(she/her/hers) |
A type - S type - Overview
- Top

Extra Descriptions
Extra descriptions are not required, but are a very nice
addition. They can give
more information about the zone, the difficulty of the mob, hidden
treasure, etc.
They are coded for mobs in the same way as for objects and room.
An E on a line by
itself is followed by an alias list (a list of keywords) ending in a
tilde ~
The description follows, starting on the next
line, and is followed
by a tilde on a line by itself. Here is one example. There
are more in the
sample mob file.
Have not gotten this to work at all - Glob.
E
hair~
The dryad's golden hair floats about her head like a giant halo.
~
A type - S type - Overview
- Top

Mob
Actions
Mob action strings are an easy way to add more life to a mob. They are
specified as percentage chances, in the following way:
%%<percentage> <action>;%<percentage> <action>;
....~
Action strings may be any social or emote that a character can do. An
example of what a entry might look like is:
A
%%10 cackle;
%20 say
Puny Mortals! Keep an eye on them, guards!;
%15 emote stares directly into your eyes. You feel a strong urge to
run.
~
 |
First entry begins with a double
percent sign %%
Every entry except the last one ends with a semi-colon ;
The entire section ends with a tilde ~
|
A type - S type - Overview -
Top

Zone Coding
The zone command to load a mob is:
M <if flag> <mob vnum
> <max-existing>
<load
room>
if-flag - this is a 1 or a 0. If
the flag is set to
1, the mob will not load unless the previous command executed
successfully. This is
normally a 0 for mobs.
max-existing
- the maximum
number of copies of this mob allowed to exist in the mud. An
immortal may continue
to load more copies of the mob (for example for a quest), but the zone
reset code will not
load this mob if that would cause this number to be exceeded.
 |
Since the max-existing is a max-per-
mud, not a max-per-room, the exact
location a mob will be loaded is only predictable at reboot
time. Example: M 0 4351 6
4310 Load #1
peasant in pub
M 0 4351 6 4310
Load #2 peasant in pub
M 0 4351 6 4320
Load #3 peasant in park
M 0 4351 6 4320
Load #4 peasant in park
M 0 4351 6 4330
Load #5 peasant in woods
M 0 4351 6 4330
Load #6 peasant in woods
If you load 2 peasants at the pub, two in the park, and two in
the woods, that's a
max-existing number of 6. The zone commands are executed in
the order given in the
zone command file. If the peasants in the park are killed
(peasants #3 and #4), but
not the ones in the pub, the next time the zone resets you will
discover there are now 4
peasants in the pub and none in the woods. This is
particularly annoying for
sentinel (stationery, non-wandering) mobs, and in zones which are
not frequently cleared. |
load room -
the vnum of the room where the mob will pop.
A number of the newer zones have incorporated a
concept called
"mob chutes". These are rooms with no entrances, only
exits.
Non-sentinel mobs loaded into these rooms will wander randomly into one
of the six
possible exits. This means not all mobs are in a room at zone
reset time, and the
room where the mob will first "pop" is unpredictable.
|
|