======================================================================== AN AREA BUILDERS GUIDE FOR BARREN REALMS (AND OTHER MERC 2.2 MUDS) ======================================================================== Revision 2.21 August 1995 {Argh * Grym * Lok * Rainman} CONTENTS: Section 1: Area Basics - Getting Started Section 2: Area Format Section 3: Building Your Area * Area * Helps * Mobiles * Objects * Rooms * Resets * Shops * Specials Section 4: Submitting Completed Areas Section 5: Value Tables Section 6: Object Balance Section 7: Etceteras * Resources * Acknowledgments * Diku License * This document is in plain text (fixed-width font) and prints best with .25 left and right margins. Add page breaks between the tables in Section 5. We encourage working from a printout of this text. ======================================================================== Section 1: AREA BASICS - GETTING STARTED ======================================================================== This document is intended to be a comprehensive guide to building areas for Barren Realms MUD. We have attempted to provide the technical and creative direction needed to help you create a good area. You may also wish to get the 'Area Builders Reference'. Intended for experienced builders, it is a compact version of the guide containing only the 'bare bones' information needed to build your area with very limited additional comments. An area is one piece of the world, and each area is defined in a separate file. All area files have the extension '.are'. The file itself is written in plain text following a very specific structure. Building an area differs greatly from coding, as area building requires no programming skills whatsoever. It does require creativity, imagination, attention to detail, and a little bit of a time investment on your part. It is the areas that make the game special. So sit back, relax with your favorite beverage, and read on. It is our hope to make the building process easily understandable. If you are new to area building, you should read through this document prior to starting construction. When you have a basic idea for your own area, the first thing you need to do is to speak to Simba. You need to see if the mud is currently accepting areas, and if there is any special info that you should be aware of. It is a good idea to briefly explain your idea as well. It might not be something the Imps feel would "fit" in the realms, or someone might be writing/have written a very similar area already. It is better to learn this BEFORE you begin writing than to be told when you have finished! If your idea is approved then you will need a range of virtual numbers (VNUMs). The VNUMs that you can use will be assigned to you. Be sure to get a range of VNUMs to use BEFORE you start using VNUMs in your area. If you don't, you may have to change ALL the numbers later which is time consuming and boring. The VNUMs are used to uniquely identify every room, mob and object on the MUD. VNUMs for rooms, mobs and objects are treated separately so a room can have the same vnum as a mob and an object. Therefore, 100 VNUMs allow for 100 rooms, 100 objects, and 100 mobs in the area. VNUMs do not have to be in increasing order in your area, only somewhere within your given range. To make things clearer, this document will refer to an object VNUM as "onum", a mobile VNUM as "mnum", and a room VNUM as "rnum". Now you can begin to plan out the specifics of your area from your original idea. Plan out your area on paper before trying to write it out! Please keep your areas original and fitting within the general theme of Barren Realms. Remember the world is a magical one, where technology is not really developed. Build on the fantasy and keep the machine guns, grenades, lasers, etc. out. Devise plots, think of economies. How do the mobiles survive, what do they eat, where do they sleep? Is there a regional product for sale here? Spin a tale within the different elements of your area. Keeping these things in mind will make for a better area. Check the mud and talk to players to see what level brackets they feel need more areas. Try to scale your area to fill these gaps. Also, look at what players are wearing and try to create objects that would be useful to fill those gaps as well. Begin to map out your area on paper (graph paper is great for this), then place the mobs and items. Mapping your area is really important. If you can't, players can't, and the area becomes frustrating. (see sewers) Think before you write. Try and have your area as close to 100 rooms as you can. Barren Realms prefers 50-100 roomed areas. For large areas, try to work in manageable blocks. Plan on being able to send it in after any block is completed. This way you will be able to work in stages, and you will have something to submit, even if you never complete it. Once you have things mapped out you can finally start writing your area. The area file is a simple ASCII text file. We suggest making your area in a text editor, a word-processor such as MS-Word or WordPerfect that offers text-only output, or an area builder such as Make.Zones.Fast! This document focuses on writing the actual area text file. An area building program will let you write areas much more quickly and easily (handling many complicated parts automatically), however, it is important to know the text format that the area files are saved in. (See section 7 for more information on MZF) Make sure your areas are free from misspellings and grammatical errors. Try to spell check your area before sending it in. In addition, do your best to be standard in the use of punctuation, capitalization, and spacing. Make sure that no line in your area exceeds column 79! A good text editor will display this for you. If you would like to have a sample area to work with as a guide to help further understand this document, just note to Grym with your e-mail address and a request for a sample area. You know the adage, a picture is worth a 1000 words. Sometimes it helps to have a working copy of an area to look at. We have tried to make this document as complete as possible. It will be under constant revision and scrutiny. Barren Realms is constantly improving, and adding new features. This document will maintain as current information as possible. If you have any suggestions for this document, please send any recommend changes to Rainman, (rainman@cris.com). ======================================================================== Section 2: AREA FORMAT ======================================================================== The following shows the framework of an .are file. The file is constructed in this manner. The syntax follows these rules: - an * after an item indicates a brief note below. - numbers in () indicate a corresponding value table in section 4. - NOTE: indicates a general note. - The bars on the right side of each section indicate which parts are repeated. - Terms in [] on the right are the standard Merc terms (and how imm commands refer to things). - Other symbols like #,~,$,0,etc. must be typed in as they appear. (Whew, a lot to remember... don't worry, it's clearer when ya see it!) Be sure to read the introduction to section 5: value tables. It explains the preferred format to use for additive table values. #AREA {lowest_mob_level highest_mob_level} builder_name area_name~ #HELPS level* -. keywords~ | message | ~ | 0 $~ -' *level: level required to read this help message: -0=all, 51=Hero & Immortal, 52=Immortal only #MOBILES #mnum -. keywords~ [name] | action_name~ [short] | look_name [long] | ~ | examine_description [descrip] | ~ | act(1) affected(2) align* S | level 0 0 0d0+0 0d0+0 | 0 0 0 0 sex* -' #0 *align: -1000 (satanic) to 1000 (angelic) *sex: 0=Neuter, 1=Male, 2=Female NOTE: The zeros above mean something in Diku muds but are now defunct placeholders that are needed in the area file but are never really looked at in Merc. This is true for the other sections as well. #OBJECTS #onum -. keywords~ [name] | look_name~ [short] | examine_description [long] | ~ | ~ type(3) extra(7) wear(8) | v0*(3) v1*(3) v2*(3) v3*(3) weight 0 0 | E keywords~ -. | message | | ~ -' | A affect(9) degree* ) -' #0 *v0-v3: these are the value numbers in table 3 *degree: how much "affect" affects the player #ROOMS #rnum -. room_title~ | long_description | ~ | 0 room_flags(10) sector(11) | D direction* -. | exit_description~ | | keywords~ | | locks* key_onum* destination_rnum* -' | E keywords~ -. | message | | ~ -' | S -' #0 *direction: 0=north, 1=east, 2=south, 3=west, 4=up, 5=down *locks: 0=no door, 1=door, 2=pickproof door *key_onum: onum of key object, use -1 for no door *destination: the rnum of the room this door leads to #RESETS M 0 mnum world_limit rnum comment ) O 0 onum 0 rnum comment ) P 0 contents_onum 0 container_onum comment ) G 0 onum 0 comment ) E 0 onum 0 wear_location(12) comment ) D 0 rnum direction* door_state* comment ) R 0 rnum total_exits comment ) * comment ) * <- These asterisks are part of the syntax for comments. * You can put a comment anywhere in this section as long as you start * the line with an asterisk. The same applies for SHOPS and SPECIALS. S NOTE: M loads mobile mnum into room rnum, up to the max world_limit of mobs. O puts object onum into room rnum. P puts contents_onum into container_onum. G puts onum into a mob's inventory. This MUST follow the M of the mob you wish to give the item to! E equips mob with onum on wear_location. This MUST follow the M of the mob you wish to give the item to! D sets the door facing "direction" in rnum to door_state R randomizes rnums exits. Put total number of exits into total_exits. S Denotes the end of the #RESETS section *direction: 0=north, 1=east, 2=south, 3=west, 4=up, 5=down *door_state: 0=unlocked, 1=closed, 2=locked #SHOPS mnum* t0*(3) t1*(3) t2*(3) t3*(3) t4*(3) -. >100%* <100%* | open_hour* close_hour* -' * comment ) 0 *mnum: the mnum of the trader mobile *t0-t4: the item types sold (table 3) *>100%: how much he marks up what he sells by % (100=no profit) *<100%: how much he pays for what he buys by % (100=full price) *open_hour: based on 24 hour clock: 0 to 23 (ex: 5=5am, 19=7pm) *close_hour: same as open_hour #SPECIALS M mnum* special_function(13a) comment ) O onum* special_function(13b) comment ) * comment ) S NOTE: M assigns a mobile "spec_fun". Mnum is the mob number. O assigns an object "speco_fun". Onum is the object number. * lets you add comment lines. S denotes the end of the #SPECIALS section. #$ NOTE: "#$" is the symbol that ends the area file! ======================================================================== Section 3: BUILDING YOUR AREA ======================================================================== Section 3 provides some detailed descriptions and examples for building your areas. Each part gives helpful hints on creating a better area, followed by an example, and finally by more technically-oriented advice. The #AREA Section ----------------- This section defines your area. The lowest and highest mob levels refer to the mobiles that are intended for player fighting. These might not necessarily be the highest and lowest level mobs in an area. You probably wont go below the lower limit, but it is quite possible that your upper limit will not reflect the highest mob level. Shopkeepers for instance should be very high level, but because they are normally not intended to be fought, don't count them in the level range. **Example** #AREA {10 15} Lok Faerie Ring~ * Don't forget the tilde! The #HELPS Section ----------------- This section allows you to create entries for the "help" command. You can never underestimate the importance and significance of good help. If your area contains something unique or unusual, the help section is a great place to describe it. It is also an excellent place to provide a background story on your area. (see 'help antharia') **Example** #HELPS * always remember to start -0 each section with the Lok~ correct title, and end Lok is a very strange guy. with the correct symbol! ~ 0 $~ In this example, if a PC were to type 'help lok', the message that they would get is 'Lok is a very strange guy.'. The #MOBILES Section -------------------- This section is where you create all the characters for your area. Put some careful thought into your mobiles. Think of them as the many "actors" in your story. Each mob should have a reason for its existence. It should play some valid role in establishing the overall theme and story of the area. This doesn't mean that using duplicate mobs is invalid, it's fine as long as it makes sense. Try to strike that perfect balance between unique and duplicate mobs. Mob descriptions are important. Certain things should be avoided that could make your mobs appear rather foolish. Avoid describing how incredibly invincible a mob is, and especially comparing it to the player. It's pretty silly to look at a mob in battle and see: "The giant towers before you. You tremble with fear knowing you could never take him on. The giant is a GONER." Also avoid describing mobs as doing something, put that in the look_name. Again it's silly to look at a mob in battle and be told "The old maid is quietly sewing a sweater in the corner." **Example** #MOBILES #29001 * Note the placement of tildes pixie faerie~ for the different items!! A giggling pixie~ A pixie pokes you in the butt with its sword and giggles! ~ The pixie is about 6" tall, is human like, and has dragonfly wings. ~ 4|128 524288 0 S * scavenges/flees, flies 10 0 0 0d0+0 0d0+0 * level 10, (next line) male 0 0 0 0 1 *<- Last line of this mobile #29002 *<- Start right in on the next nixie faerie~ A fluttering nixie~ A fluttering nixie rummages through your possessions looking for wine! ~ The nixie, like the pixie has dragonfly wings, but is taller (9"). ~ 4|128 524288 0 S * scavenges/flees, flies 11 0 0 0d0+0 0d0+0 * level 11 0 0 0 0 1 * male #29003 sprite faerie~ A dancing sprite~ A sprite casts a spell and you do a merry little dance! ~ The sprite has dragonfly wings like the nixie and pixie, but she towers over them at an amazing 12" height! ~ 128 2|32768|524288 0 S * flees, invis/sneak/flies 12 0 0 0d0+0 0d0+0 * level 12 0 0 0 0 2 * female #0 * always finish #MOBILES section with #0 The 'act-flags' define how the mobile acts. This is the first example of an additive value. The mob can be given multiple characteristics by adding together several values from the appropriate table. Please read the introduction to section 5 for an explanation of the '|' format, the preferred format for adding values together (used in the examples above). Sentinels - If you make a mob stay room or sentinel you sometimes get into trouble if you load in more than one of them. For instance: If you set it up so that one loads in room A and another in room B, when the one is killed in B it may reset in A. Eventually, many mobs may pile up in the same room, and the area becomes unplayable. (If you want to observe this effect, go kill some hobgoblins.) One fix is to make multiple copies of the mob and give each a unique mnum. Then be sure to load each mnum in resets only once. The #OBJECTS Section: -------------------- These is where you create the items that players who journey through your area will find and use. Again, put careful thought into the different object descriptions. The objects in your area should make sense, and should help establish the story/theme. Funny objects are great, but if the best item in your area is the 'banana in your ear', pretty soon most players in the game will have a banana in their ear, and the fantasy theme is lost. The object "extras" allow for an added dimension in your objects. Looking at the "extra" keyword reveals the "extra" text description. We suggest you put extra descriptions on your important objects that have noteworthy elements. For instance in camelot.are, rune items give the owner a vision when they looked at them. These little extras really can make an area fun, and develop the story much better. ** Example ** #29011 cloak dirty~ a dirty cloak~ * short descrip has NO period (.) A dirty cloak lies here. * long descrip DOES have a period ~ * again note the placement ~ of all tildes!! 9 4 1|4 * armor, dark, worn on neck 0 0 0 0 2 0 0 A 2 1 * Apply: applies 1 dex to wearer A 1 1 * Apply: applies 1 str to wearer #29012 blue diamond wand~ a blue diamond wand~ A wand with a huge blue diamond on it is just lying here! Pick it up! ~ ~ 3 64 1|16384 * * wand, magic, held 14 12 12 12 2 0 0 * level 14 spells of 'create food' E wand diamond blue~ * duplicate extras keyword, see below They're magically delicious! ~ #29013 gold~ whoooooopie! Gold!~ A rainbow ends at this pot of gold! ~ ~ 20 1 1|16384 * money, glowing, held (dummy value) 5000 0 0 0 0 0 0 * worth 5000 coins #29014 food finger~ delicious finger food~ A delicious little plate of scrumptious finger foods lies beckons to you. ~ ~ 19 0 1|8192 * food, can wield :) 24 0 0 0 0 0 0 * 24 hours of food #0 * End your objects SECTION with #0 Objects normally have 3 names. The first object name is not seen by a player unless they use identify. These keywords are the names by which a player can refer to that item. It can include every unique word used in the long description, and is a good rule of thumb to follow. For example, Bob's Orange Ring of Greater Magic probably could have the words 'ring orange bob bob's greater magic' as its keyword handles. The second set (action_name or "short") is what you see when you pick it up or have it equipped, and the third (look_name or "long") is what you see when it is on the ground or if you look at it. It is important to note some things about Extras. If you have no extras, it is a good idea to avoid saying certain things in the look_name. Saying "There is a sword on the ground here" is fine when you walk into the room, but when you pick it up and look at it, it's not cool to be told it's still on the ground. It would be safer to use "You see a sword here", which works much better if you are holding it. On the other hand, extras can be used to creatively avoid this. If you write an extra that uses all the same keywords that the object does, you will see a different description when you look at the object. Thus, "There is a sword on the ground here" might reveal "The sword is made of an unknown metal" when looked at. If you don't want to have two separate descriptions, do NOT use the same keywords for the object and its extras. Weight: use existing objects as a guide for the weight of your new objects. (See Table 15 which demonstrates max weapon weights as they apply to the str of a PC) Keep in mind that weight is expressed in kilograms (kg), and 1 kg=2.2 pounds. The maximum weight of any object is 32767. Keep in mind that weight can be used to determine the "apparent usefulness" of an item. For example, the weight of rutabagas was recently increased to reduce the number that a PC can carry at any one time. This forces PCs to seek out other alternatives for healing items. Try to balance your items with those that already exist. By this we mean, don't create items in your area that are much better than anyone else's area. Try to fill gaps, not outdo other areas. We do check how good your objects are, and if we think your stuff is too powerful, we will make you go through it again and reduce it. So it's best to think ahead on this. (see section 6 on object balancing) Remember, you can use previously defined items. So if you don't wish to make a bunch of useless and repetitive swords, use some that have been declared already. If you plan to do this, please inform Simba. For one, you will need the VNUMs (onums) from other areas to use them, and we need to know which areas you are using items from (so the mud won't crash at load time). The #ROOMS section: ------------------ Your rooms are what really shape your area. This is where most of your story will be told. It here that the players meet your mobs and fight for their lives. Remember these rooms really set the atmosphere of the area. Go beyond just regular descriptive words, use far out language, have a thesaurus handy when writing your rooms so you can use that one exact word that expresses what you are trying to convey. We can't stress enough that your descriptions even if short have to create the atmosphere. Even your room titles can add to the effect. 4-5 lines is a good average length for your room descriptions. Take full advantage of the extras by putting supplementary descriptions of objects, view, floor, walls, etc. in them. This leads to better play, since inquisitive players will look at everything, and they may find a clue which helps them get through the area. Lengthy exit descriptions within the long look_description are redundant, as BR has autoexit. You can also type 'exits' to see the names of adjacent rooms (providing the door leading in that direction is open). The individual exit descriptions (in the D sections) are more useful to give information on hidden exits or adjoining rooms, especially when the area is dark and a player can't 'scan' or use 'exits' to get info about the next room. Try to make all of your rooms unique in some respect. Using the same description over and over makes an area really boring. If you are creating a maze keep the number of identical rooms down to something manageable. You might want to vary the description slightly in certain rooms to help players get their bearings. If you are just using duplicate descriptions to establish a section as large, it is better to use few rooms and just describe it as vast, than having a large section with nothing in it. ** Example ** #ROOMS #29001 Forest Clearing~ You stand in a grassy clearing in the forest. Moonlight causes the shadows to move in an eerie dance. There is a strange circle of mushrooms about 30' in diameter in the center of the clearing. ~ * always note tilde placement 0 4 3 * no-mob, forest D 5 * down exit A small trap door~ door trap~ 1 -1 29002 * door, no key, leads to 29002 E * an Extra! mushrooms circle~ You look at the mushroom circle. You see tiny footprints and the faint outline of a trap door in the center of the ring. ~ S * this ends each individual room #29002 Entrance Hall~ You are in a cramped, low ceiling tunnel. Roots dangle overhead and caress you. There are tiny doors to the north, south and west, which you think you could crawl your way into. A ladder fashioned of woven roots leads up. You hear sounds of a raucous celebration to the east. ~ 0 8 0 * indoor flag, inside D 0 * North exit A tiny door~ door tiny~ 1 -1 29003 * door, no key, leads to 29003 D 1 * East exit A smoky hallway~ ~ 0 -1 29004 * open passageway, leads to 29004 D 2 * South exit A tiny door~ door tiny~ 1 -1 29005 * door, no key, leads to 29005 D 3 * West exit A tiny door~ door tiny~ 1 -1 29006 * door, no key, leads to 29006 D 4 * Up exit A small trap door~ door trap~ 1 -1 29001 * door, no key, leads to 29001 S #29003 Puck's Room~ You are hunched over in Puck's room. You know this by the sign that says "Pucks stuff- keep your grubby hands off". There is a bed of forest leaves, some rude hollowed out shelves, a tiny table with a half full jack of ale, and a great pile of junk beneath the sign. ~ 0 8 0 * indoor flag, inside D 2 * South exit A tiny door~ door tiny~ 1 -1 29002 * door, no key, leads to 29002 E * another extra sign~ The sign says: "Puck's stuff- keep your grubby hands off" ~ S #0 * End #ROOMS section with #0 Unlike mobiles and objects, rooms don't have keywords associated with them (excluding doors and extras). One may not manipulate a room in the same way one manipulates a mobile or object. You may want to restrict mob movement between parts of your area, or between your area and the connecting areas. You can use the "no-mob" room flag in key rooms in order to keep mobs within certain sections. It is a good idea to make your "connect-point" room a no-mob room to keep mobs from wandering in and out of your area. Set up your exits to logically travel along straight north-south, east-west, and up-down paths. Remember you must write these exits into both rooms if you want a two way passage. If your exits don't travel along straight paths, it will be recorded as a 'bug' by BR. It will still run correctly, but Cuervo will get very angry. (don't make him angry, you wont like him when he's angry...:) You also have the option to randomize the exits of a room, or a series of rooms every time the area upsets. You presently have an option of two types of random areas: a 2D (n,s,w,e) random area, and a 3D (n,s,w,e,u,d) random area. The basic recipe is as follows: (1) Lay out your rooms on a piece of paper and connect them such that all of the exit paths are straight (n-s, w-e, u-d) to avoid the bug. Basically, the bug is this: Say you have room "A" exiting south to room "B". If room "B" has a north exit (IE the reverse exit), it MUST go back to room "A" (IE it must reverse). If "B" exits north to another room, you get the 'bug'. The room will load fine, will run fine, but there will be a bug in the bug spool that makes the bug spool untidy and unmanageable, and Cuervo goes through the roof. For a complex random area, creating the grid is not as trivial as it may seem. I found it best to work under a wrap-around principal. Consider: E----F A----B E----F |\ |\ U N | | | | | \ | \ \| | | | | G----H \ W--+--E C----D G----H \ A-\--B |\ \ | \ | S D Level1 Level2 \| \| C----D Where ABCD is lvl 1 and EFGH is level 2 in a 3D random area. To make it more complex, I would have A exit west to B, and from B back east to A. Then from A north to C, and from C back south to A. This is a 'wraparound' within the plane of the level. The same is done to the second level: ,---------. ,--. | | | | N `--A---B--' | A---B | | | | | | W--+--E C---D | C---D | | | S `--' Between levels, A goes up to E, and E goes down to A. The between levels wraparound would be: E goes up to A, and A goes down to E: _ / \ \ E--F U \ \ \ \ \ A--B W--+--E \ \ \ \_/ D Now lets say you want to connect into the above zone. Lets say room X is not random and you want it to connect to room C. If X connected north to C, you would need C to go back south to X. Now here is the hitch. Because A wraps north to C, stupid merc wants C to reverse south to A, not X. So you would have to connect X to another room, or eliminate the north-south wrap exit from A to C. (boy all those diagrams for nothing?) So the point is, lay out your exits carefully. (2) Declare your exits random with the random set for the room. Remember a 2D maze will have a random 3 reset (since exits N,E,S,W are numbers 0-3), and a 3D maze will have a random 5 reset (since N,E,S,W,U,D are numbers 0-5) The #RESETS section ------------------- This is where you place your mobs and equip them. Be very careful with this section, it relies heavily on vnums and other cryptic numbers and is the easiest to mess up. Take your time and try to learn it well. Having 2 mobs in the same room is difficult. 3 mobs in same room becomes unplayable. One mob per 2 rooms works nicely, if the mobs are sentinel, you can even do one per room. Give your mobs room to breathe. The world limit for a mob should be greater than or equal to the number of places that it loads in. In the following example the pixies load in four different places, so the pixie world limit is four. If the world limit is greater than the number of places that the mob loads in, the mobs will continue to load each time the area resets until the world limit is reached. ** Example ** #RESETS * Clearing, 29001, no mobs D 1 29001 5 1 Trapdoor resets closed, unlocked * * Entry hall, 29002 D 1 29002 4 1 Trapdoor resets closed, unlocked D 1 29002 0 1 Pucks door resets closed, unlocked D 1 29002 2 1 Snooze den resets closed, unlocked D 1 29002 3 1 Guarded Barrow resets closed unlocked M 1 29001 4 29002 Load pixie G 1 29001 0 0 Give pixie faerie dust * * Puck's Room, 29003 D 1 29003 2 1 Puck's Room Close South M 1 29005 1 29003 load puck E 1 29009 0 7 dirty britches on puck legs E 1 29011 0 4 dirty cloak on puck to neck O 1 29008 0 29003 Faerie wine * * Bar & Grill, 29004 M 1 29002 3 29004 nixie G 1 29005 0 0 bottled moonlight M 1 29001 4 29004 pixie G 4 29001 0 0 faerie dust M 1 29003 3 29004 sprite E 1 29003 0 13 sprite belt M 1 29009 1 29004 Twinkletoes G 1 29014 0 0 finger food G 1 29008 0 0 faerie wine M 1 29007 1 29004 Lucky G 1 29012 0 0 wand G 1 29013 0 0 gold S * end the #RESET section with 'S' Here's another way to express your resets. For debugging purposes, it's nice if the resets are organized in like groups and vnum order. This example assumes that the most recent "M" loaded Pellinore into the room. * Puts and static objects are expressed in the following manner: P 1 17322 0 17320 Puts rations in Pellinores pack P 1 17323 0 17320 Puts wine in Pellinores pack M 2 17316 1 17307 Load questing beast in lair O 2 17324 1 17307 Put bones in lair O 2 17325 1 17307 Put skull in lair O 2 17326 1 17307 Put rock in lair Note that on "P" resets you cannot put more than one of a certain object in a container, or have two containers with the same vnum in your area and expect the objects to go into more than one of them. The #SHOPS section: ------------------ This is where you set up any shops that you may want in your area. Shopkeepers should sell and buy things for reasons. Think about who they are and how their business works, and have the trades reflect that. Sell things that make sense to sell in your area. Remember, BUY HIGH - SELL LOW. If you don't, you can have players profit from selling and buying the same item over and over. Typical buy sell numbers are 150 50. If your keeper is in the boondocks, he would probably sell and buy higher (200 85). Think of the old mining towns. They paid a lot for incoming stuff, but charged you a bundle because you were in the middle of nowhere. In large towns with lots of shopkeepers, there should be competition, and plenty of sources for goods. So one could buy something cheaply but probably not get a decent price for selling an object (120 30). If you follow this, then you can expect players to behave as merchants, buying stuff in large cities, and selling it in the boonies. Beware of the old "Jim effect", shopkeepers who are low enough level to be killed and have all of their stuff grabbed. Keep your shopkeepers very high level. Remember, a shopkeeper will SELL anything you load in it's inventory, and will only BUY what is expressed in t0 - t4. Barren Realms prefers shopkeepers to buy only a few item types and the mob level to be high. ** Example ** #SHOPS 29009 1 3 5 9 18 * buys lights, wands, weapons, armor, and keys 120 80 * buys at 120%/sells at 80% value 0 23 * open all day 0 PET SHOPS are handled slightly differently then regular shops. They are dependent on special rooms as well as the shopkeeper mob. To make a pet shop, create your room and set the pet-shop flag (4096). Next you need a special "pet storage" room. This MUST be 1 rnum greater than your pet shop rnum. For example, if the shop is rnum #23401, then the pet storage room MUST be rnum #23402. This room should not connect to any other rooms. Next create your shopkeeper mob. This mob MUST be made sentinel. Load this into the pet store room in #RESETS. Set it up like a shopkeeper in #SHOPS: use 0s for what it buys, set buy and sell %s at 100, and set open and close hours as you wish. Finally create your pet mobs. Load these into the storage room in #RESETS. ** Example ** * Define your shopkeeper mobile and your pets in the #MOBILES section. #17339 stirrup stablemaster~ Stirrup~ Stirrup, the stable master of Camelot is here. ~ Stirrup is a short man, wearing a leather jerkin, and smells of the barn. ~ 2 0 400 S 25 0 0 1d1+1 1d1+1 0 0 0 0 1 #17340 horse riding~ A riding horse~ A riding horse is here. ~ The riding horse is saddled with light tack, and has long slender limbs for speed. ~ 256 0 0 S 18 0 0 1d1+1 1d1+1 0 0 0 0 2 * The room where the shop will be and the pet holding room are established in the #ROOMS section. #17398 Stables~ You stand in the vast stables of Camelot. Row upon row of stalls greet your eye. Smells of horse sweat and fresh straw combine in a pleasant mix. Stable hands are busy currying animals, shoeing horses, and feeding the magnificent chargers of Camelot. Light filters in through the rafters. To your west is Knight's Way. ~ 0 4096 0 D3 Knight's Way~ ~ 0 -1 17342 S #17399 Pet Storage for Stables~ This is actual stables where the horses are kept to be sold. ~ 0 4096 0 S * Load keeper in shop and pets in storage room in #RESETS. M 37 17339 1 17398 Stirrup in stables M 38 17340 1 17399 load in riding horse M 39 17341 1 17399 med warhorse M 40 17342 1 17399 heavy warhorse * Define the shopkeeper in #SHOPS. #SHOPS 17339 0 0 0 0 0 100 100 0 23 0 * That's it...it's that easy! The #SPECIALS section: --------------------- Spec_funs allow your mobs to have special abilities like the beastly fidos and Khellis cityguards. They can really bring an area to life. However, Please think of specials as just that, special. If too many of your mobs are special, the area will lose it's meaning. Speco_funs are just like spec_funs, except they are attached to objects. ** Example ** #SPECIALS M 29006 spec_cast_mage * gives this mob some elf spells M 29005 spec_thief * makes this mob rob PCs O 17325 speco_drain_hp * makes this skull attack holder's hp S Specials are C code functions (BR is written in C) that are "attached" to mobs or objects. They periodically (every few seconds) check their environment, and can respond accordingly. They cannot directly respond to a character's commands or actions. They very literally respond to CONDITIONS in it's vicinity at the moment it is "activated" by the game-clock. A mob might check to see what room it's in, who's nearby, and what the weather is like. An object might check if it's being carried or worn, by whom, if it contains anything, if its carrier is fighting (and who is being fought), etc. You can choose different functions from the current special function tables (13a and 13b) or possibly design new ones for your areas. Because these functions are written in C, and require a good understanding of the MUD code, writing new ones is best left to the coders. If you would like new a special function or two in your area, you can send the details to BR and we will write the code for you. Be sure to provide us with all of the necessary details so that we can program them correctly. Be creative, and tell us any ideas you come up with. (for your area or just in general) Speco functions are new and so the selection of functions is still small. Here are some examples of what COULD be done with specos: The Drunken Bastard Sword - at random moments, switches the wielder between being drunk and sober. [Note: A plus is that it can be used to sober up the wielder, then unwielded.] The Guardian Idol - a container with a speco_fun. Whenever it finds itself holding four gems of different colors, it unlocks the door it guards. DevilSlicer - A sword that does only moderate damage, EXCEPT against one particular level-100 mob which it kills instantly. The All-Seeing Ball - Emits a special glow whenever a hidden or sneaking mob or PC is in the same room. The Blob - Parasitically attaches itself to a body slot, yielding no bonuses and destroying whatever item was in the slot before. Noremove, and can move from one body slot to another. Removed only by death (it kills you when all your other body slots are empty), or by the ... BlobRemover - <grin> Found elsewhere in your area. The Transmogrifier - Insert several specific items, and transform them into a single super-item. The Speaker of Legends - Recites useful information when in particular rooms (like the self-guide radios/tape players in museums). The end: ------- #$ * MUST end your .are file with this ======================================================================== Section 4: SUBMITTING A COMPLETED AREA ======================================================================== Send the file by e-mail to mcmahan@cs.wcu.edu (Amadeus). The subject line should contain the #AREA line of the file subject: #AREA { 1 50 } Amadeus Realms of Gold~ Also, please provide every bit of information that you think is needed in order to implement your area. This includes connection point identification, area terrain, storyline, considerations, etc. If you have pine-mail, this can be sent as one mail message, with the instructions being the first part, and the file being an attachment. If not, please send 2 mail messages: one being the file, the other being this information. You can also include the implementor information in a help section. Please include your everyday e-mail address IF it's not the one that you sent your area from. In addition, please note the IP address of other MUDs that you frequent, so that Amadeus can "find" you in a timely manner if he needs to consult with you. The submission address is subject to change. We recommend consulting an IMM prior to sending in a completed area. It is your responsibility to follow up with area implementors to ensure that your area was received intact. It goes without saying that Internet mail is "send and pray". ======================================================================== Section 5: VALUE TABLES ======================================================================== There are two different types of values, "unique" and "additive". If an area item refers to a unique table, then a single value must be chosen from the table. If an area item refers to an additive table, then any desired values can be added together from the table. * You are strongly encouraged to use the bar ("|") format for additive values. Don't add the values up, just type in all of the individual values separated by bars (ex: 1|8|16|1024). The program will automatically add the values together for you. This makes it much easier to understand the values by simply examining the area text file. TABLE 1 - ACT bits (Mobiles) additive values ------------------------------------------------------------------------ NPC 1 * (Auto-set, denotes non-player|) SENTINEL 2 * Stays in one room SCAVENGER 4 * Picks up objects AGGRESSIVE 32 * Attacks PC's on sight STAY_AREA 64 * Won't leave area WIMPY 128 * Flees when hurt PET 256 * (Auto set for pets) TRAIN 512 * Can train PC's (BR: enhance) PRACTICE (BR:elf) 1024 * Can practice PCs (BR: elf skills) HEALER 2048 * Can buy heals from UNDEAD 4096 * ? (MZF explains as Mob can summon) (From here down are BR specific) MEMORY 8 * Remembers past 3 attackers and attacks on sight PRACTICE (druid) 8192 * Can practice PC's druid skills PRACTICE (kender) 16384 * Can practice PC's kender skills PRACTICE (human) 32768 * Can practice PC's human skills PRACTICE (dwarf) 65536 * Can practice PC's dwarf skills ID 131072 * Can identify objects REPAIR 262144 * Can repair armor +10 lvls sell 524288 <-For shopskeepers - +20 lvls sell 1048576 <-raises the item levels +30 lvls sell 2097152 <-of the objects for sale STAY_TERRAIN 8388608 * Mob stays in terrain type TABLE 2 - Affected Bits (Mobiles) additive values ------------------------------------------------------------------------ BLIND 1 * These all act like permanent versions INVISIBLE 2 of the corresponding spells DETECT_EVIL 4 DETECT_INVIS 8 DETECT_MAGIC 16 DETECT_HIDDEN 32 SANCTUARY 128 FAERIE_FIRE 256 INFRARED 512 CURSE 1024 POISON 4096 PROTECT 8192 SNEAK 32768 HIDE 65536 SLEEP 131072 CHARM 262144 FLYING 524288 PASS_DOOR 1048576 PLAGUE 2097152 TABLE 3 - Item Types (Objects) unique value ------------------------------------------------------------------------ (numbers in () indicate the corresponding table) Item Type# V0 V1 V2 V3 ---- ----- ----------- ----------- ----------- ---------- LIGHT 1 0 0 hours 0 SCROLL 2 level spell1(14) spell2(14) spell3(14) WAND 3 level max_charge cur_charge spell(14) STAFF 4 level max_charge cur_charge spell(14) WEAPON 5 0 0 0 hit_type(4) TREASURE 8 0 0 0 0 ARMOR 9 0 0 0 0 POTION 10 level spell1(14) spell2(14) spell3(14) FURNITURE 12 0 0 0 0 TRASH 13 0 0 0 0 CONTAINER 15 max_weight state(5) key_onum 0 DRINK_CON 17 max_cap cur_cap liquid(6) poison KEY 18 0 0 0 0 FOOD 19 hours 0 0 poison MONEY 20 amount 0 0 0 BOAT 22 0 0 0 0 FOUNTAIN 25 0 0 0 0 PILL 26 level spell1(14) spell2(14) spell3(14) BREATHE WATER 27 0 0 hours 0 (BR only*) FLY 28 0 0 0 0 (BR only*) QUIVER 29 max_weight state(5) key_onum 0 (BR only*) THROW 30 0 0 0 0 (BR only*) * terms: hours=LIGHT or BREATHE WATER: number of functioning hours FOOD: hours hunger is suppressed level=level of spells on magic items max/cur_charge=the max and current charges on magic items max/cur_cap=max and current capacity in drinks max_weight=maximum holding capacity in weight key_onum=onum of the key that unlocks this container (use -1 if none) poison=0 for fine, non-0 for poisoned amount=amount of coins object is worth * BR only: BREATH WATER - allows PC to enter underwater rooms FLY - makes PC fly if worn QUIVER - holds THROW type objects, allows automatic wield-throw in a single round THROW - can be thrown at mobs in room, or in adjacent rooms TABLE 4 - Weapon Types (Objects) unique value ------------------------------------------------------------------------ 0 hit 7 pound 1 slice 8 crush 2 stab 9 grep 3 slash 10 bite 4 whip 11 pierce * permits backstab, use sparingly 5 claw 12 suction 6 blast TABLE 5 - Container States (Objects) additive values ------------------------------------------------------------------------ 1 closeable 4 closed 2 pickproof 8 locked TABLE 6 - Liquid Values unique value ------------------------------------------------------------------------ liquid# Name Thirst Value Food Value Drunk Value ------- ---- ------------ ---------- ----------- 0 Water 10 1 0 1 Beer 5 2 3 2 Wine 5 2 5 3 Ale 5 2 2 4 Dark Ale 5 2 1 5 Whiskey 4 1 6 6 Lemonade 8 1 0 7 FireBreather 0 0 1 8 Local Speciality 1 1 1 9 Slime Mold Juice -2 1 0 10 Milk 2 1 0 11 Tea 6 1 0 12 Coffee 6 1 -1 13 Blood 0 1 0 14 Salt Water -3 1 0 15 Cherry Cola 5 1 0 16 Tequila 4 1 10 17 Margaritta 4 1 10 18 Pepsi 3 1 0 19 Mountain Dew 4 1 1 20 Grape Slushee 3 1 0 21 Cherry Slushee 4 1 0 22 Cola Slushee 3 1 0 23 Screw Driver 3 1 3 24 Vodka 3 1 5 * The chart is in proportions!!! What this means is there is no way to predict EXACTLY how much of each will increase, only how they will increase in relation to each other. EXAMPLE: Dark Ale: Thirst Food Drunk 5 2 1 10 4 2 15 6 3 TABLE 7 - Extras (Objects) additive values ------------------------------------------------------------------------ GLOW 1 * Item glows HUM 2 * Item hums DARK 4 LOCK 8 EVIL 16 * PCs with 'detect evil' see red aura INVIS 32 * PC needs 'detect invis' to see MAGIC 64 * For weapon can't enchant, can enflame NODROP 128 * Item cannot be dropped BLESS 256 ANTI_GOOD 512 * Above 332 align get zapped and drop it if worn ANTI_EVIL 1024 * Below -332 align get zapped and drop it if worn ANTI_NEUTRAL 2048 * From -332 to 332 align get zapped and drop it if worn NOREMOVE 4096 * Item cannot be removed if worn INVENTORY 8192 HOVER 32768 * Object floats in the air, will float out of room (BR only) FLAMING 65536 * Enhanced damage for spells (BR only) TABLE 8 - Wear Flags (Objects) additive values ------------------------------------------------------------------------ TAKE 1 * MUST have this in order to be picked up! FINGER 2 NECK 4 BODY 8 HEAD 16 LEGS 32 FEET 64 HANDS 128 ARMS 256 SHIELD 512 ABOUT 1024 WAIST 2048 WRIST 4096 WIELD 8192 HOLD 16384 TWO-HANDED 32768 * Requires both wield and offhand, but causes 2.5x damage (BR only) TABLE 9 - Apply Types (Objects) unique value ------------------------------------------------------------------------ NONE 0 STR 1 DEX 2 INT 3 WIS 4 CON 5 MANA 12 HIT 13 MOVE 14 AC 17 HITROLL 18 DAMROLL 19 SAVING_BREATH 23 SAVING_SPELL 24 TABLE 10 - Room flags (Rooms) additive values ------------------------------------------------------------------------ DARK 1 * PC requires a light/infravision NO_MOB 4 * Mobs can't enter (can use for mob-lock) INDOORS 8 * PC does not see weather ARENA 64 * Pkilling arena room (GET PERMISSION FOR) ANTI_MAGIC 128 * Doesn't allow spellcasting PRIVATE 512 * Only 1 char in a room at a time SAFE 1024 * No killing allowed SOLITARY 2048 * Only 2 characters at a time PET_SHOP 4096 * Special for pet shop NO_RECALL 8192 * PC cannot recall BANK 16384 * Room is bank CURRENT_NORTH 32768 * Affects mv, pushes PC in appropriate CURRENT_EAST 65536 direction (BR only: NOT IMPLEMENTED YET) CURRENT_SOUTH 131072 CURRENT_WEST 262144 CURRENT_UP 524288 CURRENT_DOWN 1048576 TABLE 11 - Sector Types (Rooms) unique value ------------------------------------------------------------------------ INSIDE 0 CITY 1 FIELD 2 FOREST 3 HILLS 4 MOUNTAIN 5 WATER_SWIM 6 * can be walked through WATER_NOSWIM 7 * requires boat/fly AIR 9 * requires fly DESERT 10 UNDERWATER 11 * BR only: requires scuba & no fly MAX 12 * maximum mvs cost to move through * Mobs are able to enter any sector without spells or eq. Use no-mob or stay-area to prevent certain mobs from certain sectors. TABLE 12 - Wear Locations (Resets) unique value ------------------------------------------------------------------------ NONE -1 LIGHT 0 FINGER_L 1 FINGER_R 2 NECK_1 3 NECK_2 4 BODY 5 HEAD 6 LEGS 7 FEET 8 HANDS 9 ARMS 10 SHIELD 11 ABOUT 12 WAIST 13 WRIST_L 14 WRIST_R 15 WIELD 16 HOLD 17 WEAR/OFFHAND 18 ?? TABLE 13a - Special Mobile Functions (Specials) unique value ------------------------------------------------------------------------ spec_align_change * Can change PC's align in battle (BR only) spec_breath_any * Casts: all breath spells spec_breath_acid * Casts: acid breath (causes PC harm; damages armor; destroys containers) spec_breath_fire * Casts: fire breath (causes PC harm; destroys containers, potions, scrolls, staves, food, wands, and pills) spec_breath_frost * Casts: frost breath (causes PC harm; destroys containers, drink containers, and potions) spec_breath_gas * Casts: gas breath (causes all PCs in room harm) spec_breath_lightning * Casts: lightning breath (causes PC harm) spec_cast_adept * Casts: armor, bless, cure blindness, cure poison, cure light, cure poison, and refresh (on BR: for players level 1-10 only) spec_cast_cleric * Casts: blindness(0), cause serious(3), earthquake(7), cause critical(9), dispel evil(10), curse(12), change sex(12), flamestrike(13), harm(15), dispel magic(16) (the numbers indicate the minimum mob level to cast that spell) spec_cast_judge * Casts: high explosive (causes all PCs in room harm) spec_cast_mage * Casts: blindness(0), chill touch(3), weaken(7), teleport(8), color spray(11), change sex(12), energy drain(13), fireball(15), acid blast(20) (the numbers indicate the minimum mob level to cast that spell) spec_cast_undead * Casts: curse(0), weaken(3), chill touch(6), blindness(9), poison(12), energy drain(15), harm(18), teleport(21), gate(24) (the numbers indicate the minimum mob level to cast that spell) spec_executioner * Pushes KILLER/THIEF out of room, sucks up blood (BR modified) spec_fido * Eats corpses spec_guard * Attacks KILLER/THIEF, protects the innocent spec_janitor * Picks up trash, mops up bloodtrails spec_mayor * Constable's program (DO NOT USE) spec_poison * Poisonous bite spec_thief * Robs PC's gold TABLE 13b - Special Object Functions (Specials) unique value ------------------------------------------------------------------------ speco_airfill * Insert scuba device & coins, and it refills air supply speco_attach * Attaches to player, then bounces in and out of eq onto floor speco_blob * Attaches to a wear-location, destroys any eq in spot, moves to new spot, when all eq is gone player dies speco_burper * Forces player to randomly burp speco_drain_hp * Drains hp slowly if in inventory, faster if worn speco_drunker * Keeps switching player between drunk & sober speco_morph * On a weapon, morphs into mob that looks like the player speco_recycler * Insert trash and get money back speco_social * Forces player to do random socials TABLE 14 - Spell Numbers (Objects) unique value ------------------------------------------------------------------------ 0 NULL 70 acid blast 1 armor 3 bless 4 blindness 5 burning hands 6 call lightning 63 cause critical 62 cause light 64 cause serious 82 change sex 7 charm person 8 chill touch 10 colour spray 57 continual light 11 control weather 12 create food 80 create spring 13 create water 14 cure blindness 15 cure critical 16 cure light 43 cure poison 61 cure serious 17 curse 18 detect evil 44 detect hidden 19 detect invis 20 detect magic 21 detect poison 22 dispel evil 59 dispel magic 23 earthquake 24 enchant weapon 25 energy drain 72 faerie fire 73 faerie fog 26 fireball 65 flamestrike 56 fly 83 gate 39 giant strength 27 harm 28 heal 53 identify 77 infravision 29 invis 58 know alignment 30 lightning bolt 31 locate object 32 magic missile 69 mass invis 74 pass door 33 poison 34 protection 81 refresh 35 remove curse 36 sanctuary 67 shield 37 shocking grasp 38 sleep 66 stone skin 40 summon 2 teleport 41 ventriloquate 68 weaken 42 word of recall 200 acid breath 201 fire breath 202 frost breath 203 gas breath 204 lightning breath 100 astral 300 bamf 600 Buddha finger 601 chin kang palm 602 concentrate 609 frenzy 83 gate 603 iron monk 604 laughing Buddha 605 medicine 606 prayer 607 quivering palm TABLE 15 - Maximum "Wieldable" Weight Per Strength (Objects-Weapons) ------------------------------------------------------------------------ Strength Max Wieldable Weight -------- -------------------- 13 13 14 14 15 15 16 16 17 22 18 25 19 30 20 35 21 40 22 45 23 50 * Dwarves only 24 55 * Dwarves only 25 60 * Dwarves only * Since only Dwarves are able to enhance str beyond 22, A weapon weight above 50 will constitute a Dwarf only weapon ======================================================================== Section 6: OBJECT BALANCE ======================================================================== It is very important that the objects that you create in your area do not blow the curve of already existing objects! It's better to attempt to fill a niche than to try to one-up existing powerful objects. The following section describes Lok's method of achieving balanced objects in your area. Some things to note before you start: - The object level is the level of the mob that carries it. (actually it can vary slightly, but we'll assume it's always the same) - If the object is not on a mob, then use the level of the closest intervening mob. In other words the level of the guard at a treasure room door determines the level of the treasure. - Because the spell level on magic items is set separately from the object level, you should set the spell level to be equal to, or less than the object level. 1) If your object is a magic item (pill, potion, scroll, staff, wand) then you first need to determine the base-charges. This is the number of charges your item should hold. The actual charges can be raised at a cost to "advantages", or lowered at a cost to "limitations" (more about those later). Use this formula (round fractions up): BASE_CHARGES = LEVEL / 5 2) Next you need to compute the active value your object can have. This is (fractions are rounded up in players favor): ACTIVE = LEVEL * (1 + LIMITATIONS) / 2 Limitations are expressed in quarters (0.25, 0.5, 0.75, etc.). This number cannot exceed 2. The chart below is a guide for limitations. You cannot use the same limitation twice for the same object. If you feel you have a significant new limitation, use the existing values in the chart to establish an appropriate new value. LIMITATION value -------------------------------------------------- only works for two alignments 0.25 only works for one alignment 0.5 object in tough to reach area* 0.25 object in tough area* 0.25 object carried by tough mob* 0.25 object only useable by one or two races 0.5 uses only 1/2 of base charges 0.25 uses only 1/4 or fewer of base charges 0.5 nodrop item 0.25 noremove item 0.25 requires 18str to wield 0.25 invisible 0.25 Imp likes this object 0.25 * A tough to reach area has at least one of the following: locked door with separated key, past a random section, no teleport zone, no astral zone, more than 50 moves from recall (not counting random zone) * A tough area has at least one of the following: no recall, no spell use, many assisting aggressive mobs. * A tough mob has at least one of the following: sanctuary, spell use. 2) Now determine the current 'cost' of your object with (fractions are rounded down in the players favor): COST = (1 + ADVANTAGES) * POINTS The following is the table for advantages. Like limitations, if you have a new advantage, use the current table to derive an appropriate value. ADVANTAGE value ------------------------------------------- spell is continuous 1.0 uses 2 * base charges 0.25 uses 3 * base charges 0.5 uses 4 * base charges 0.75 enchantable weapon 0.25 12 strength can wield it 0.25 'Points' is the total of all the modifiers and/or spell points on the object. Below is the table of modifiers, and the power table for spells. Values are added for each instance of an element. Meaning, for an object with +3 damroll the value would be 6, and for a potion with 2 heal spells the value would be 20. APPLY MODIFIER value ------------------------------ + 1 hitroll* 1 + 1 damroll* 2 + 1 attribute 3 + 2 hp 1 + 2 mana 1 +10 moves 1 - 1 ac 2 - 1 savings throw 2 * Hitroll and damroll additions should not exceed: LEVEL / 8 SPELL value SPELL value SPELL value -------------------------------------------------------------------- Bamf 7 Cause Critical 4 Chin Kang Palm 4 Curse 4 Cure Critical 4 Enchant Weapon 20 Endurance 20 Energy Drain 5 Frenzy 7 Gate 10 Giant Strength 4 Harm 7 Heal 10 Iron Monk 15 Locate Object 4 Mass Heal 20 Mass Invis 4 Pass Door 20 Plague 4 Prayer 7 Quivering Palm 7 Sanctuary 15 Summon 10 Teleport 7 Weaken 4 *** ALL other spells cost 3 points *** (Point cost for spells based on a mana/5 rule for a level 56 warrior) 3) Compare COST to ACTIVE. If COST < ACTIVE, you have a balanced object. Otherwise, it is a good idea to go back, and try to balance out some of the features. You should also try to avoid having many mobs with several objects with COST right at the ACTIVE limit. Its OK to have the kingpin mob of the area geared up, but if all your mobs are overloaded, it becomes excessive. And that's all there is to it! ** Examples ** 1. Blue Diamond wand. (lvl 14 wand of create food, 12 charges) The blue diamond wand is carried by Lucky, a 14th mob which is invisible. Lucky is not in a particularly tough area, and does not use spells or have sanctuary, so LIMITATIONS = 0. ACTIVE = 14*(1+0)/2= 7 points Now we want 'create food' on the wand. Since create food is not specifically listed it is a 3 point spell. The base number of charges on the wand would be 14/5 = 3 charges. If I want to increase this to 12, I would need to have 4*base charges, a 0.75 advantage. So cost is: COST = (1.75)*3=5.25 = 5 points. Since (COST=5) < (ACTIVE=7), the object is balanced. 2. Twinkling Ball of Light (light, +1 int, wis, hr, dr) The ball of light is carried by the 15th level Faerie queen, this 'kingpin' mob of the area is behind a guarded locked door in a room with a brownie, pixie, sprite, and nixie reset, and she casts spells and has sanctuary. Her limitations are: tough mob (sanct, spelluse) = 0.25 tough area (many mobs assisting) = 0.25 * note that I don't consider her to be tough to reach So ACTIVE = 15*(1+.5)/2 = 11.25= 11 Now for cost. Total the modifiers: +1 hr = 1 pt +1 dr = 2 pts +1 int = 3 pts +1 wis = 3 pts Note that 15/8=2, the limit for the hr, dr of an item. Since we are only +1, it's OK. So COST = (1+0)*9= 9pts Since (COST=9) < (ACTIVE=11), the object is not abusive 3. Moonbeam (invis, +2hr, +2dr, enchantable) Twinkletoes carries a moonbeam. Her ACTIVE is different for this object, since this object is invis. LIMITATIONS = 0.75 (tough mob, tough area, invis object) ACTIVE = 15*(1.75)/2 = 13.125 = 13 Enchantable is a 0.25 advantage. Lets compute the cost: +2 hr = 2 pts +2 dr = 4 pts The +2hr, +2 dr is right at the limit for a 15th weapon. COST = 6*(1+0.25) = 7.5 rounds to 7 in the players favor Since (COST=7) < (ACTIVE=13), the object is in balance. 4. An Abusive object, Shieldbreaker (+10hr, +10 dr, +50hp, -10vs spell, noremove, invis) Shieldbreaker is carried by the 27th level lieutenant of the guard in Solace, a mob with sanct, invis, and in the 20ish room complex of the guard HQ. Only shopkeepers, Goldmoon, and the Captain are higher than him in Solace, so you could say he is a kingpin. Lets also say that he is in a hard to reach area, because you need to search and map the guard complex with det invis to find him. The weapon is magic, so it can not be enchanted. LIMITATIONS = 1 (tough mob=0.25, tough to reach=0.25, noremove = 0.25, invis =0.25) ACTIVE = 27*(1+1)/2 = 27 points Cost modifiers: +10hr = 10pts * WARNING, EXCEEDS 27/8 = +3 lmt +10dr = 20pts * WARNING, EXCEEDS 27/8 = +3 lmt +50hp = 25pts -10save = 20pts COST = 75*(1+0) = 75 Since (COST=75) > (ACTIVE=27) the object is out of balance. Even with the 'Imp likes it' limitation, it is out of balance. It also fails on the hr, dr limitation. An object of this power should be carried by a 75th mob. Strahd who created this item says the mob for which it was intended, was originally much higher level, and it and farslayer were intended to be items so desirable that mortals would die over and over in their futile attempts to obtain them. * Lok's object point system is a guide, not a commandment, and under revision always from play testing. There are some objects in the game which are well off the curve. Probably the ultimate swords in the game are farslayer and shieldbreaker for spellcasters, and excalibur, scalpels, keyboards, vibroblades, ultima weapons, and other enchantables for fighter types. Look to these items as being the top end, and try not to blow the curve beyond them. For BR, if any of your objects blow the curve, it had better be a really good area! ;) ======================================================================== Section 7: ETCETERAS ======================================================================== RESOURCES: --------- * Other docs The Barren Realms area builder's reference. This is the bare-bones version of this text, focusing on syntax and table values, with few comments. It is intended for more experienced builders. * For MS-Windows Make.Zones.Fast! (MZF) An excellent Windows area editor. It allows you to set up many aspects of your world automatically (like the values from section 6) and it has the very useful ability to globally renumber all vnums in your area. The help files included with this program are full of great hints and tips for area builders. A BR specific version is due out soon, with future versions allowing complete compatibility with ALL BR-specific features! It's available at <ftp://ftp.indirect.com/pub/software/mud>. The filename is mzf????.zip where ???? is the version number. *The current version is: 0.94c Merc 2.2 for Windows Great for debugging areas. Requires Windows TCP/IP Sockets and Win32, or a 32-bit Windows OS such as Windows NT or Windows 95. See accompanying documentation for details. It's also available at <ftp://ftp.indirect.com/pub/software/mud/>. The file names are mercw32.zip and mercw32a.zip. * Usenet rec.games.mud rec.games.mud.admin rec.games.mud.announce rec.games.mud.diku rec.games.mud.misc * Mailing lists merc-l-request@netcom.com * World Wide Web Rainman's Barren Realms builder's Homepage! <http://www.cris.com:80/~rainman/index.html> Scavenger's Quasi-Official Barren Realms Homepage! <http://www.wis.com/users/aberkvam/barren.html> Make.Zones.Fast on WWW! <http://www.goodnet.com/~esnible/mzf.html> DEBUGGING: --------- Rainman will gladly debug your area for you. Send to: rwiley@cris.com ACKNOWLEDGMENTS: ---------------- The information contained herein was compiled from many sources. Thanks to all who have had a part in it's development. This document contains information from 'database.doc', 'dbsup.doc', and 'values.doc', part of the original Diku mud release and copyrighted by the Diku folks. See their accompanying license. This document is also a conglomeration of building.txt and the other area building files included in the MERC 2.2 package then expanded and edited them to make it easier for first-time area builders. All thanks go out to the creators of MUD!!! DIKUMUD LICENSE: --------------- Copyright (C) 1990, 1991 All Rights Reserved DikuMud License Program & Concept created by Sebastian Hammer Prss. Maries Alle 15, 1 1908 Frb. C. DENMARK (email quinn@freja.diku.dk) Michael Seifert Nr. Soeg. 37C, 1, doer 3 1370 Copenhagen K. DENMARK (email seifert@freja.diku.dk) Hans Henrik St{rfeldt Langs} 19 3500 V{rl|se DENMARK (email bombman@freja.diku.dk) Tom Madsen R|de Mellemvej 94B, 64 2300 Copenhagen S. DENMARK (email noop@freja.diku.dk) Katja Nyboe Kildeg}rdsvej 2 2900 Hellerup 31 62 82 84 DENMARK (email katz@freja.diku.dk) This document contains the rules by which you can use, alter or publish parts of DikuMud. DikuMud has been created by the above five listed persons in their spare time, at DIKU (Computer Science Institute at Copenhagen University). You are legally bound to follow the rules described in this document. Rules: !! DikuMud is NOT Public Domain, shareware, careware or the like !! You may under no circumstances make profit on *ANY* part of DikuMud in any possible way. You may under no circumstances charge money for distributing any part of DikuMud - this includes the usual $5 charge for "sending the disk" or "just for the disk" etc. By breaking these rules you violate the agreement between us and the University, and hence will be sued. You may not remove any copyright notices from any of the documents or sources given to you. This license must *always* be included "as is" if you copy or give away any part of DikuMud (which is to be done as described in this document). If you publish *any* part of DikuMud, we as creators must appear in the article, and the article must be clearly copyrighted subject to this license. Before publishing you must first send us a message, by snail-mail or e-mail, and inform us what, where and when you are publishing (remember to include your address, name etc.) If you wish to setup a version of DikuMud on any computer system, you must send us a message , by snail-mail or e-mail, and inform us where and when you are running the game. (remember to include your address, name etc.) Any running version of DikuMud must include our names in the login sequence. Furthermore the "credits" command shall always contain our name, addresses, and a notice which states we have created DikuMud. You are allowed to alter DikuMud, source and documentation as long as you do not violate any of the above stated rules. Regards, The DikuMud Group Note: We hope you will enjoy DikuMud, and encourage you to send us any reports on bugs (when you find 'it'). Remember that we are all using our spare time to write and improve DikuMud, bugs, etc. - and changes will take their time. We have so far put extremely many programming hours into this project. If you make any major improvements on DikuMud we would be happy to hear from you. As you will naturally honor the above rules, you will receive new updates and improvements made to the game.