This guide explains the Archipelago on-line creation editors for objects,
mobs, and zones. Most commands, listed on the wizhelp, will be explained,
and building tips will be offered. If you have any suggestions, or
comments regarding this guide, contact
me.

I. General building commands:
Usually, you can abbreviate the first few letters. Anything in < >
is required. Anything in [ ] is optional. The | symbol means OR.

AT

remote execution of a command. e.g., at postmaster receive.

BRB

be right back!, puts an (away) flag in your title.

BUILDING

display a list of building tips, and standards.

DATE

shows the real date and time.

ECHO<text>

echo something into the room.

GOTO[ name | roomnum ]

go to someone, or to a room number.

FORCE<name> <action>

force a mob or person to do something. useful in equiping mobs
before zsaving them, and useful for roleplaying purposes.

HANDBOOK

display the immortal rules of conduct.

HOLYLIGHT

toggle this command to see dark rooms, and hard-to-see people.

INVIS[level]

the first command the new builder inevitably uses :)

LOAD< MOB | OBJ > <vnum>

load a mob or object.

MCLONE<vnum>

clone an existing mob into your own zone. note, mclone only
if it is necessary.

MCREATE

create a new mob prototype.

MEDIT<vnum>

edit an existing mob.

MOTD[ MORTAL ]

display the message of the day.

NOHASSLE

toggle this command to prevent aggr mobs from bothering you.

NOSUMMON

toggle this to be summonable by players. don't bother, there are
no summoning skills or spells.

NOWIZ

toggle this command to tune out of the wiz channel.

OCLONE<vnum>

clone an existing object into your own zone. note, oclone only
if it is necessary. if there is an object you like to have, but it
belongs to someone else, ask to see if you can use/load that object
into your zone -- please try and help keep redundancy to a minimum.

OCREATE

create a new object prototype.

OEDIT<vnum>

edit an existing object.

POOFIN, POOFOUT

set your "entrance" and "exit" when you enter and
exit via the 'go' command.

PURGE[name]

purge, with a name argument, will purge that obj/mob. purge,
without arguments, will purge the entire room. purge on players
will kick a player, sans eq., out of the game and into the main
menu -- don't do it.

RCLONE<roomnum>

clone an existing room into your own zone. note, rclone only if
it is necessary.

e.g., "show zone all" shows all (or a big chunk of)
zone resets for the current zone you are editing. "show zone 18
all" shows all resets for zone 18. "show all from 120"
shows all resets in current zone starting from the 120th reset.
"show zone 18 all from 120" show all resets for zone 18
starting from the 120th reset. "show zone all about 120"
shows the 20 resets centered around resetnumber 120.

The "from" and "about" keywords also work for mobs,
objs, and rooms.

SNOWBALL

silly immortal social.

STAT[ MOB | OBJ ] <name>

stat a mob, object, or player that is in the game. this command
defaults to stating a mob or player, unless you specifically use
'stat o' for objects.

SWITCHZONE

Bodhisattva+ level command. toggle this to edit another zone if
you have one.

SYSLOG[ OFF | BRIEF | NORMAL | COMPLETE ]

toggle how much system log spam you want to receive. Syslog
messages include who is logging in/out of the game, which zones
are resetting, and who are using certain wiz commands (see the
immortal command book).

TRANSFER[ ALL ] <name>

transfer a mob/person to you.

UPTIME

display how long Archipelago has been up and running.

USERS

display brief info on who is logged into the game.

VNUM< MOB | OBJ > <name>

find the vnum of a mob or object. NOTE: you can specify two keywords
to describe what you are trying to find, e.g., vn m black sheep.

VSTAT<vnum>

stat a mob or object prototype not currently loaded in the game.

WHERE[name]

this is not listed as a wizhelp command, but it is a immortal
command nonetheless. The command tells you where things and people
are located. Typing this command alone will show you the location
of all active players in the game.

WIZHELP

lists all the immortal commands available to you. Not listed in
wizhelp are 'users' and
'where' and probably one or two
others.

WIZNET, or ;

wiznet options are [ #<level>
| + | - | @ ] <text>.
the immortal's talk channel. the "#<level>" option
restricts your message to those with that minimum level. "@"
shows all gods that are on (same as typing 'who'). "+" turns
on wiznet, "-" turns it off (same as nowiz).

ZEDIT[zonenum]

Daemon+ level command. edit a zone's characteristics. the name of
the zone, its repop time, its repop type (toggle 0 for no reset, toggle
1 for reset if no players are in the zone when it resets, toggle 2 for
normal repop), the max number of rooms the zone can contain, and its
open/closed status.

ZRESET< . | * >

Djinn+ level command. if the "." option is used, force the zone
you are currently standing in to reset. if the "*" option is used,
force the entire world to repop.

ZSAVE< MOB | OBJ | DOOR >
<name|dir>

save the mob, object, or door to the zone file. For doors, you
must specify the exit direction where the door is located. Zsave both
sides of a door if its opens and closes both ways. NOTE: the
"mob", "obj", "door" keywords have to be
typed in fully as mob, obj or door, otherwise it will not work.
This is unlike the other commands where you can just use M for mobs,
and O for objects.

ZSET<resetnumber>
< NUMBER | PERCENT > <howmany> [ IF ]

zone commands execute every reset, and will execute based on the
percentage value assigned to it until the max number specified for it
is reached. The default percentage value is 100% if none is initially
assigned. The max number is world dependent, not zone, i.e.,
if a zone command says two dragons max to be loaded, and on next reset
the game finds two dragons already loaded in the world, the game will
not load another.

The "if" option is rarely used, what it does is to execute this
zone command only if the zone command before it had been executed.

e.g., "zset 100 number 5" means set resetnumber
100 to have a max of 5 loading in the world. "zset 90 percent
80" means set resetnumber 90 to load 80 percent of the time.

ZPURGE<resetnumber>

purge a command from the zone file. note: if you zpurge something
with inventory, then that inventory disappears also.

II. Building objects,
The guide to the object editor. use the
OEDIT command.

(T)ext:

(N)ame: the keywords used to
reference the object.

See notes on keywords below for additional details.

(S)hortdescr: the object's
name.

(D)escription: the object's
description if its on a floor.

(A)ction description:

The action description is used for FOOD type items when eaten, for
the SCABBARD,
and WEAPON type objects when the
draw and sheathe commands are used, for the
CANTRIP type objects when they
are recited, and for FOUNTAIN
type objects when they are in a room.

(F)lags:

(W)orn: the slots where the
object can be worn, wielded, and held.

(A)pply: what this object is
affected with.

see notes on building magic items, below. also, see Jolanda's
obj flag faq.

(E)xtra flags: extra bits
affecting an object.

note: some bits are merely cosmetic and do nothing, see the obj
flag flag.

this number affects the object's influence on light levels. If its
a positive number, the object gives off light, if its a negative
number, the object absorbs light. To make a permanent light (or
dark) object, set the illumination number, and set the object's
extra bit to GLOW and MAGIC.

(V)alues:

the object's values depending on type.

(D)am state:

how damaged is this object?

si(Z)e:

what is its size?

item (L)imit:

set the item's absolute limit. The object will not load past this
number. Set this to zero if there is no limit.

(A)ffections:

optionally apply up to four extra values for an object.

(E)xtra:

the extra descriptions of an object when
'look'ed at. adding some sort of extra
description is highly recommended to further enrich Archipelago's
world.

An obj flag marked with an asterisk means the flag has either not been
implemented, or is reserved for internal use. please do not use it.

Notes on the use of keywords.

Please make the first keyword of an object its primary noun,
e.g., 'vase' in 'a black glass vase', because when you wear,
wield, or hold something, the game always uses the first keyword to
reference the obj. See notes on building
LIQUID CONTAINER types below for an
exception.

Notes ongod_flaggingof items.

To be mortal usuable, all items must not have a god_flag on them,
which means the item cannot exceed 125 creation_points.
Additionally, items costing 20 creation_points, or more, must have
a cash value of at least 100*creation_pts., and a rent value of at
least 10*creation_pts. No cash or rent value is needed for items
costing less than 20 creation_pts. See
WEAPON and
CONTAINER types below for additional
restraints. Object flags and their corresponding creation_pt.
values are listed in Jolanda's
obj flag faq.

Notes on buildingFOODtype objects.

You can add an (A)ction desc on food items to describe what the
food tastes like if eaten.

Notes on buildingSCABBARDtype objects.

When you choose (V)alues, type the vnum of the weapon which
belongs with that scabbard. if there is no specific weapon,
i.e., 0 as a value, then choose the general type of
weapon that should fit inside it.

The action description for weapons and scabbard are used in
conjunction with the draw and sheath commands. The action
description is shown to everyone in the room except you.

Use the following $ codes in the action desc: $n to show the name
of person with the object, $p to show the object name, $s for the
pronoun (his, her, it), $m for the pronoun (him, her, it), $e for
the pronoun (he, she, it).

e.g., a glowing white saber of light (weapon), and a wide
belt (scabbard).
- Action desc on the WEAPON: $n turns
off $p with a flick of a switch.
when the weapon is SHEATHED, everyone will
see this:

Zanth turns off a glowing saber of light with a flick of a switch.
Zanth slips a glowing white saber of light into a wide belt.

- Action desc on the SCABBARD: $n fingers
something hooked to $p.
when the weapon is DRAWN, everyone will see
this:

There are rules in building weapons that will be usuable for
mortals. The weapon may not exceed 40 points of damage points, it
may not have more than a total of 7 to their hit and dam rolls, and
the weapon must weigh 0.7 * max_damage_pts_of_weap. The rules of
god_flagging apply here also.

Notes on buildingCONTAINERtype items.

There are two numbers that must be considered in building a
container, the container's weight, shown in the (S)tats menu, and
the number listed in (V)alues menu. The container's weight can be
anything. The number shown in the (V)alues menu is the container's
weight AND the carrying capacity totalled together. e.g., If
a bag weights one lb (10units), and you want the bag to carry 10lb
of stuff (100units), then the number you enter into the (V)alues
menu is 10units + 100units = 110units.

Note: a container cannot have a carrying capacity of greater than
400lb (4000units), otherwise, it will be god_flagged, unless the
initial weight of the container is 10000lb or more.

Notes on creating an enterable container.

set the room number and its maximum capacity in (V)alues, and how
small the entrance is in si(Z)es.

Notes on buildingLIQUID CONTAINERtype items.

In the list of keywords, make sure the first keyword reflects the
initial liquid that is contained in the container, e.g., if
you have a wine skin containing wine, then the first keyword is
wine. When the liquid container empties out, the mud code will
automatically remove the first keyword and replace it with another
when the container is refilled. See the appendix for the list of liquid types.

Notes on buildingPULLABLEtype items.

Multiple mobs can be hitched to one cart. type
'zsave obj <cart>' to save
the cart and mobs hitched to it into your zone file.

Notes on buildingKEYtype objects.

Keys don't have to be KEY type objects. As long as the vnum of
the key object matches the door lock, it will work, e.g.,
a crowbar (which is a weapon type object, but doubles as a key).

Notes on buildingCANTRIPtype objects.

You can add an (A)ction desc on cantrip items to describe (to
everyone in the room except you) what happens when the cantrip
is recited,e.g., $p bursts in to flames and vanishes
with a *POP*!

Notes on building magic items.

There are several types of magic items currently available,

CANTRIPS

are items that can be 'recite'd.
They disappear once used.

PHILTRES

are weak potions that can be 'quaff'ed.
They disappear once used.

ELIXIRS

are the strongest type of potions you can have, and they
disappear once used. Note: they are not yet implemented.

RODS

are another name for wands, and are used as such. They can
contain one to many charges before they are rendered useless.

STAVES

are the strongest type of wands you can have. Note: they are
not yet implemented.

VIS

items are used in conjunction with the
'invoke' command. They boost spells
and disappear once used.

"rechargable"

items are wand-like objects that can used once, and recharged to
be reused again and again. These items can be any object type,
but the important thing is to set the object's (A)pply bit, which
determines what powers it has. For every hour of effect, the
rechargable has to have at least double the time of recharge.

Magical Foods

are items that either make you grow taller, or make you more
hungrier when eaten. Other magic food types will be added later.
To enable magic foods, make a FOOD item, and follow the
instructions in the (V)alues section of the object editor.

Notes on building permanent light (and dark)
objects.

These objects permanently provide, or absorb light. Set the object's
(I)llumination, and the object's GLOW and MAGIC extra bits.

Notes on creating room invisible objects.

To hide an object in a room, toggle the DARK extra bit on the
object, and remove its floor description. note: The DARK extra bit
has nothing to do with illumination.

Notes on the 2-HANDED extra bit.

This flag can be applied on weapons, on shields, and holdable
objects. The ability to use two-handed objects depends on the size
of the object, and the size of the person handling it, i.e.,
small two-handed weapons can be wielded single-handedly by large
sized people; and large single-handed weapons can only be handled
with two hands by smaller folk. One disadvantage with this flag
involves its use in shields. Mobs and people cannot hit back if
wearing a two-handed shield.

IV. Building mobs,
The guide to the mob editor. use the
MEDIT command.

(T)ext:

(N)ame: the keywords used to
look at the mob.

(S)hortdescr: the mob's name.

(L)ongdescr: the mob's
description when its in the room.

(D)escription: the mob's full
description when it is looked at.

Adding some sort of description is highly recommended to further
enrich Archipelago's world.
optionally enter a script for the mob.

(D)ynamic Mob Language: optionally
enter a script for the mob.

scripts allow mobs to behave on their own. They will be able to speak
and answer questions, load eq, trap and block player commands, and many
other things. The latest version of DML allows multiple scripts, or
threads, to exist and run simultaneously on a mob. See
archdml.html for a brief intro.

(M)ob flags:

toggle the mob's limitations here.

Affect (F)lags:

toggle whatever spell effects, and special abilities here.

(P)layer stats:

individually set the mob stats.

(A)rmor class:

(A)rmor: set the mob's armor
class.

numbers range from -100 to 100. -100 is the best armour.

(S)topping: set the mob's
stopping class

(the number that is first deducted from an enemy blow, before
armor class calculations).

load up a mob, and give it some eq. Force the mob to wear the eq, and
when everything is in order, type zsave mob . Type show zone,
and adjust the max number of mobs and eq you want to exist at any one
time in the world with the zset command. If a mob can't wear some eq,
make sure the eq fits, if not, change either the size of the eq or the
size of the mob (be sure to change it back once you zsaved the mob).

You can also force mobs to wear items in a wrong body slot. All you
have to do is to change the object's (W)orn flag to something else after
it is worn by the mob and zsaved. Then you have to wait until the zone
resets to see your results, or use zreset if you have it.

General notes:

A mob flag marked with an asterisk means the flag has either not been
implemented, or is reserved for internal use. please do not use it.

A mob can't be tamed if its INT > 10, and/or it can speak.

Hitpoints are computed in the nds+p format where
p is the base hp, n and s are dice rolls to add an
extra amount to "randomize" the mob. nds, means n
die of s type, e.g., 4d5 mean 4 dies each with 5 outcomes,
4d5 will generate a number from 4-20, with an average of 12.

Damage is also computed in the nds+p format, but
with this difference: the nds is the barehand damage,
which can be overriden if the mob is wielding a weapon. The p
is only a bonus damroll that is added either to the mob's barehand
nds, or the weapon's nds. The p
should be kept reasonable, (normally 0-14) and never used as the mob's
sole means of damage.

The bonus hitroll simply makes a mob more or less tough than average.
It increases a mob's ability to hit a target, e.g., a mob with
a 15 hitroll has a better chance of hitting a target than a mob with
less.

Mob experience, and gold (if it has any), are automatically calculated
by the game engine. They are dependant on stats, hp, damage, armor,
and other minor things. str, dex, int, hp, and damage are the more
important ones.

Notes on mobs helpingCITIZENS.

If ANY of the following is true, then there is a 1 in 4 chance per
combat round that a mob will assist.

if both mobs are flagged as citizen and within 200 align pts.

if mob is flagged as a helper.

if mob has int > 10 and within 200 align pts.

Notes on theHAS MOODmob flag.

If this flag is set, the mob will be affected by moods. If a
mob's mood reaches -1000, it will have a random chance of
attacking anyone.

Notes on theFREE ACTIONmob affect flag.

Set this flag and WATER BREATH for mobs who dwell underwater.

Notes on the mob class type.

Most mobs of the same race have features unique to them. Please
refer to the appendix at the end of this guide
for more details.

VI. Building rooms,
The guide to the room editor. use the
REDIT command.

(T)ext:

(T)itle: the room name.

(D)esc: the room's full
description.

(R)eplace: search and
replace a string.

te(L)eport:

(T)o room: set the teleport's
destination.

(D)elay: set the teleport's
delay.

(1) Message to char: what the
char sees when teleport activates.

(2) Message to room: what the
room sees when teleport activates.

(3) Message to destination:
what the next room sees when teleport activates.

note: $codes, such as $n to represent the player's name, can be
used inside teleport messages.

A desc can also be placed on a null exit (exit without a room
link), in which case, the desc will only be shown when one looks,
or moves into the null exit.

(K)eywords: the keywords used
to reference a door, if there is one.

(E)xit bits:
set extra bits, as well as creating a door for this exit.

Ke(Y): the vnum of the
object used as the "key".

note: the key doesn't have to be a KEY obj type, just as long as
the object vnum matches the door's lock.

(P)urge exit: purge this exit,

can be used to create one-way exits.

e(X)tra desc:

note: if you already have a room extra desc, and want to (C)reate
another, you must first create it, then immediately type (Q), then
reenter to edit the (now null) extra desc. If, instead, you
(C)reate a new extra, and immediately edit the desc, you will be,
in actuality, editing a previous extra desc, and will destroy it.
this is a bug.

All hitched mobs and mounts will not enter an room marked with an
INSIDE sector type.

A room with a GODROOM flag means that no immortal, except for Djinn+
level gods, can enter via the 'go'
command. Anyone can still enter by just walking in. This might be
useful in getting rid of those pesky avatars showing up at your
favorite mob's doorstep.

The SILENT room flag prohibits gossip and tells from being heard
and used.

The Archipelago room editor automatically formats a room desc.
So what you type in may not have the same margins when the room
desc is 'look'ed at. Optionally,
the NO_AUTOFORMAT flag can be toggled for a room to prevent any
autoformatting of text.

Notes on building petshops and stables.

To set up a petshop, you must have a shopkeeper mob, and an empty
and unaccessible storage room containing the mobs the shopkeeper
will sell. A coder will then be able to set the shopkeeper to sell
whatever mobs are loading in that storage room. You can, at
anytime, alter what mobs the shopkeeper will sell by changing what
mobs load in that storage room. e.g., in room 11173, Drinth
sells horses, the mounts load in room 11348.

Notes on room illumination.

Room descriptions can be made light sensitive.
In front of the text you wish to be light sensitive, add a
'%#' code, and end
the text with '%',e.g., "%2The bare outline of a small trapdoor can
be seen in the dusty floor.%".

Valid #'s range from 0 to 4.
%0 sentences show up in "quite dark" or better light
conditions,
%1 in "gloomy" or better lighting,
%2 in normal light or brighter,
%3 in "bright" or brighter lighting, and
%4 sentences show up only in "very bright" light.
For additional examples, stat rooms 1880, and 2001.

Notes on room teleports.

Teleports can teleport into the same room. This is useful for
livening up a room. e.g., A fire crackles in the
fireplace.

Notes on null exits.

A description can be placed on a null exit (an exit without a room
link). The description will be shown only when someone looks or moves
into the exit.

Use cut and paste if and where possible, and try to build offline
if you are comfortable with that idea. Building offline has it
advantages,
- 1. you can employ a spell checker to check for errors,
- 2. you can build unmolested from distractions in the game,
- 3. you have a copy of the work on your hard drive to peruse and
edit.

If you are without cut and paste abilities, try the ascii protocol option
on your terminal program. ascii protocol uploads text in the same manner
as typing in stuff on your keyboard and seeing it on your screen, but
only faster (like cut and paste). note, if you have problems with extra
carriage returns, or missing text, you may need to speed, or slow down
the upload by a few tenths of a second, or use tintin or similar client
to help buffer input into the mud.

You really don't need to make a key, a KEY obj type. You can make
keys out out of anything, e.g., weapons, armor, etc. Just set
the door's lock to the object's vnum as you would normally do when
creating keys and doors.

Cursed items can be gotten rid of blessing the item when its in your
inventory, and not worn as eq. This is the only option if you can't
'eat' the item in the first place.

Where are all the boards located?

the IMMORTAL BOARD in
room 1204.

- various topics. no mortal can read this board.

the MORTAL BOARD in
room 1205.

- various topics.

the BUILDER'S BOARD in
room 1207.

- archipelago building and development issues.

the BUG BOARD in 1208.

- please put all game crash bugs on the imm board.

the CODE DEVELOPMENT BOARD
in room 1220.

- current projects, code development issues.

the MEETING/MISCELLANEOUS BOARD
in room 1221.

- topics to be discussed now, and at the
next meeting, etc.

the UPDATE BOARD in room 1222.

- notices of new code changes, and updates.

Saladin's POETRY BOARD in
the House of Mysteries, room 8112.

- poetry, and occasionally a bit of prose.

Xero's ADVENTURER'S BOARD in
the City of Abernach, room 11025.

- is a roleplay board for the citizens of Abernach.

the ADVENTURER'S NOTICE BOARD
located at the various inns on the mud.

- is a general purpose roleplaying board for "inchar" messages.

What's a useful prompt?

I use this prompt:
'%iR:%R> '.
It tells me my wizinvis and roomnum.

Check out these Medieval Links for
medieval related building resources.

produce a pile of dust instead of a corpse when killed.
undead are also affected by the skill "turn undead".

Other -

Humanoid -

Animal -

Dragon -

breath only when the spell_caster mob flag is set, and a
special -- post on the board to request a special -- is
assigned. The types of breath the dragon can breath are
fire, frost, gas, lightning, and halitosis.

Giant -

Plant -

plants don't do anything just yet, but provisions in the
code, (constant.c) will allow plants to resemble plants,
i.e., they will have petals, stalks, stems, roots, etc.,
instead of hands, legs, and arms. plants will be affected
by herbam spells.

Equine -

horses. this prototype doesn't do anything yet, but
provisions in the code (constant.c) will allow horses to
resemble horses, i.e., they will have fetlocks, hooves,
etc., instead of legs and feet.