Area Creation FAQ

Rares

To make an object or mob rare, simply follow its load entry in the zone file by the % you want it to load at.
O 0 1003 3 500 <-- this loads object 1003, with a maxload of 3
in room 500.
O 0 1003 3 500 13 <-- this gives a 13% chance to load object 1003
with a maxload of 3 in room 500, EVERY time
the zone resets.

How Do I get only 1 of something?

O 0 1003 1 500 <-- This loads only 1 of object 1003 in room 500.

However, what if someone gets the item and rents it out, or kills the mob you have with a maxload of 1? Well, the next time the zone resets, your object or mob will load again. To prevent this we make the load conditional on something else that only loads once.

O 0 500 1 99 <-- This loads only 1 of object 500 in room 99.
O 1 1003 1 500 <-- This loads only 1 of object 1003 in room 500,
under the condition that object 500 loaded in
room 99 during THIS zone reset.

When doing the above, make sure that your conditional object (in this case o500) is noShow, or loaded in a god/holding room, or un-takeable/killable.

How do I trigger a mob or object load?

You have to use the remove command in the zone file to trigger it. This means it has to be trigger by either a mob, or an object, appearing in a specific room, during the zone reset. If you're zone not resetting for 30mins are more is a problem and you want the mob/object to load almost immediately, talk to your areas guide and they can load your zone commands into a special zone called daynight.zon. Daynight.zon has a reset time of 1, so any commands in it will happen within 2 minutes.

Here is an example that loads mob 5000 in room 200, when objects 101,
102, and 103 are dropped in room 100.
R 0 100 101
R 1 100 102
R 1 100 103
M 1 5000 1 200

The zone file loads sequentially, so lets follow this through. On zone- reset, the zone looks for object 101 in room 100. If its there, it's removed. The next command R 1 100 102, looks for o102 in r100 to remove it, but ONLY if the previous command happened. This follows for the next remove.

If all 3 objects were there, then the next command line goes through, and loads the mob. However the mob has a maxload of 1, so it only loads if there are no other m5000's wandering around.

Further, if you only drop o101, and o102, they both disappear, but since 103 isn't there, the chain isn't complete and you lose your objects and get no mob.

How do I give a door a random load trap?

You will need to use a repop stopper or next time the zone resets it will attempt to set the trap on the door and again everytime it resets. It is as simple as reseting the door with a trap attached to a repop stopper. Make sure that the door is properly set up as trapped in the world file.

O 0 51900 1 51900 * load repop stopping object (1 max 100%)
R 1 51900 51900 * unload repop stopping object for later use
D 1 51901 1 2 * close/lock east door
D 1 51902 3 2 * close/lock other side
*
O 0 51900 1 51900 10 * load repop stopping object (1 max 10%)
R 1 51900 51900 * unload repop stopping object for later use
D 1 51901 1 18 * close/lock/trap east door (10% chance)
*
O 0 51900 1 51900 * load repop stopping object (1 max 100%)

How do I make a random maze like the UD bazaar or troll king zones?

The UD bazaar uses a short reset time and random repop stoppers similar to random load traps to open and close !pick doors. In order for the doors to constantly change each reset there cannot be a repop stopper loaded at the end as shown in the traps example.

The troll king zone uses blocked exits which has a cleaner look but they currently cannot be opened without a switch object. Therefore blocked exits are loaded in a preset pattern and attached to a repop stopper at the end. Make sure your doors have the proper flags in the world file.

* --Blocked Exits for Swamp_two (maze A)--
O 0 26102 1 26001 50 * load repop stopper (1 max 50%)
D 1 26070 3 9
...
D 1 26056 0 9
D 1 26053 0 9
* --Blocked Exits for Swamp_two (maze B)--
O 0 26102 1 26001 * load repop stopper (1 max 100%)
D 1 26073 2 9 * maze B will not be used unless
D 1 26071 3 9 * maze A did not load
...
D 1 26058 3 9
D 1 26057 1 9

How do I make an object have a random trap?

Object traps cannot be turn on/off but you can use two similar objects, one trapped and one untrapped. The repop stopper is used to remove the trapped object in this example and load the untrapped one in its place.

O 0 50617 1 50600 * load object with trap
O 0 50618 1 50600 20 * load repop stopper (1 max 20%)
O 1 50619 1 50600 * load object without trap (20%)
R 1 50600 50617 * remove trapped object
*
O 0 50618 1 50600 * load repop stopper (1 max 100%)

How can i use time code to load/unload mobs?

Time code does not have a field for random loads but that does not mean that you cannot use it with random loads. Any mobs or objects being modified by the time code usually need to be attached to a repop stopper so they do not repop everytime the zone resets.

O 0 50463 1 50421 * repop stopper for mob
M 1 50441 1 50478 * load mob
*
T 0 -1 0 0 15 * activate at month 15
X 1 -1 50441 1 * remove mob
O 1 50461 1 50478 * load sign, 'back in a month'
M 1 50449 1 50442 6 * load mob in other location (6%)
E 1 50419 15 12 * equip random mob with object
*
T 0 -1 0 0 16 * activate at month 16
M 1 50441 1 50478 * reload missing mob
R 1 50478 50461 * remove sign

How can I make my random loads work similar to Greycloak and load mid-boot?

Mob Distribution (Distro) rooms are another common feature in sojourn zones. They are used as a loading place which can allow a mob to appear in different parts of a zone rather than the same predictable room. They are also a place to store mobs away from players. These mobs can then be attached to a repop stopper to make them load or a piece of time code. Note that if you also give the object a random load number it will sometimes load the mob without giving it equipment.

O 0 50463 1 50421 2 * repop stopper for mob (1 max 2%)
R 1 50421 50463 * remove repop stopper
X 1 50400 50441 * remove mob from distro room
M 1 50441 1 50442 * load mob in other location (1 max in game)
E 1 50419 999 12 * equip random mob with object (999 max in game)

Hints & Tips

  • Mob & Object loading - try to have different mobs in each room, that way it doesn't fubar the pop when only some of the mobs are dead.
  • Don't give mobs HAS_CLASS if you can instead make them that class. Along this line, keep flags to a minimum, don't be messy. Don't give protects to races that have them innate, same goes for infra, ultra etc.
  • Be careful with ultras & quests, if they can't see the questor, the PCs' gunna be pretty confused when the quest gear doesn't come back at them.
  • If your mob needs to consent the player to receive all of the items for a quest, add a consent reply trigger on bow or something explained by the mob so the staff don't have to force the mob to consent for players.
  • use the "help desc" help files on main mud as a general guideline for what mob descriptions should be like.
  • Quests should not be so vague as to be impossible. Don't ask for a ruby, when there are 14 rubies in the game. Don't ask for one even if theres only 1 because there could be more later, give some kind of clue, no matter how vague, based on the description of the item, its location, who might have it, etc.
  • Quests should not require entry into hometowns where justice is if at all possible.
  • BEEFY descriptions, no half-assed 3line rooms please. 5 minimum, and as little (read none) replication as possible.
  • Less is more, if I see any more insane ansi I'm going to throw a fit.
  • In / Out & Alternating ansi is REALLY over done, try to avoid this.
  • Spelling mistakes will be met with great vengeance & furious anger. dictionary
  • Try to keep all of your main fights the same level. If you make 1/2 of your fights way easier then the other half, then the group doing your zone is either going to be bored 1/2 the time, or pissed off 1/2 the time.
  • Ignore equipment stats until AFTER you zone is done.
  • Try to spread equipment rewards evenly among the 4 classes. (sorc,cle,rog,war)
  • Keep your areas supervisor informed - an email every week or 2 would be great.