============================================== || AREA BUILDERS GUIDE FOR CASTLE ARCANUM || || (An Envy 2.0 Mud) || || This document last updated: July 1997 || ============================================== /------------------------------------------------------\ =| TABLE OF CONTENTS |= \------------------------------------------------------/ | 1. The Basics - A. Explanation of Area Building | | - B. Helpful Hints | | - C. Terminology/Clarification | | 2. Area Overview (The sections, and what they do) | | - A. Basic Overview | | - B. The #AREA Section | | - C. The #HELPS Section | | - D. The #RECALL Section | | - E. The #MOBILES Section | | - F. The #OBJECTS Section | | - G. The #ROOMS Section | | - H. The #RESETS Section | | - I. The #SHOPS Section | | - J. The #SPECIALS Section | | - K. The #GAMES Section | | - L. #$ | | 3. Tables | | 4. Spell List | /------------------------------------------------------\ =| |= \------------------------------------------------------/ ____________________________________________________________________________ 1. THE BASICS ____________________________________________________________________________ A. EXPLANATION OF AREA BUILDING ------------------------------- An area is a section of a MUD world. All area files have the extension '.are'. The files are written in plain text, and have a very specific structure. No programming skills are necessary to build areas, but area creation does require imagination, descriptiveness, attention to detail, and some time and dedication. Areas are a major part of what makes a MUD special. B. HELPFUL HINTS ---------------- The very first thing to do, after thinking of an area idea, is to speak with the Imms and make sure of several things: whether the MUD is accepting new areas, if the area you have in mind is acceptable (or perhaps already under construction), and whether there is any special information you need to know beforehand. Next, after your area is approved, and you've read this document, sit down and plan out the basics of your area. Map the area (graph paper is helpful here). Mapping your area tends to result in less confusion among players in the area. (After all, if you can't map it, how can you expect them to?) Be creative and original. Think of things from the mobiles' point of view. (Where do they spend their time? What do they eat? etc.) Maybe a plot can develop throughout the area. Keep in mind the fantasy setting, and keep away from using technology (guns, lasers, etc.) Sometimes it helps to check the MUD and see what is needed. You can try to fill gaps where the MUD needs more variety. Try to keep your area under and close to 100 rooms, unless it is arranged otherwise. 100 is used for convenience. You will be assigned a range of vnums (virtual numbers: see Terminology) Example: 5600 would be 5600-5699. If you are making a large area, it's probably best to do it in manageable blocks. This way you'll have something to send in, even if you don't finish the entire area. Be sure the area is free of spelling and grammar errors before sending it in. Also, make sure not to make any lines longer than column 79. The area file is an ASCII text file. You can make it easily in a text editor, or a word processor such as MS-Word, or WordPerfect (a spell-checker would probably save you some time). You can also use an area builder like Make.Zones.Fast! The new MZF is set up to work with Envy, but the other versions aren't. They're just set up for Merc. -Differences between Envy & Merc include: removal of value# fields of objects in area files (mainly slot number references in potions, wands, staves, etc.), and race definitions for mobiles, in place of the former repop position (sleeping, etc.--see #MOBILES). C. TERMINOLOGY/CLARIFICATION ---------------------------- Vnum - Virtual number. A single vnum can be used in different sections of the area, to represent a mobile, a room, and an object. Tilde - A tilde is this character: '~'. They are used throughout an area file, to indicate the ends of strings of characters. Do not try to use the tilde in descriptions, etc, as it will not work correctly. Number- The character '|' can be used within any number. This is useful for putting multiple affects together. The number '1|32|256' has the value 289. The numbers are added together. This is referred to as an 'additive value'. ____________________________________________________________________________ 2. AREA OVERVIEW ____________________________________________________________________________ A. BASIC OVERVIEW ----------------- The sections of an area are as follows: #AREA #HELPS #RECALL #MOBILES #OBJECTS #ROOMS #RESETS #SHOPS #SPECIALS #GAMES #$ A '>' at the beginning of the lines in the examples indicates that the section may repeat this part (in the same format) with other items before ending. A further '>' indicates that a subsection of the item may be used multiple times before moving on to the rest of the item. The sections aren't actually indented; this was done specifically for the guide, in order to allow some space for comments on both sides of the items. B. THE #AREA SECTION -------------------- This section must be at the very beginning of the area file. It's like a one-line short explanation of the area. #AREA {low high} author area-name~ Notes: 'low' is the recommended lowest level for a character to travel the area. 'high' is the recommended highest level. (Note that the low and high values indicate the levels of the mobiles in the area. However, the high value is probably not the level of the highest-level mobiles in the area. Shopkeepers, and other mobs that aren't intended to be fought, tend to be of a higher level than most mobs.) 'author' is the area's original author (this should be you). 'area-name' is the name of the area (a word or phrase). C. THE #HELPS SECTION --------------------- This section is not necessary in many areas, and can be omitted. It can be used to enhance, or help to explain things about your area. If your zone has a lot of dwarves, HELP DWARF might be useful. Conflicting helps (same keywords) are resolved by the MUD by displaying all instances of the help. Another good use for #HELPS is to give a background story for your area. #HELPS > level keywords~ > help-message > ~ 0 $~ Notes: 'level' indicates the minimum level character who can read the message (use -0 for all). This is useful for such things as allowing only heros or imms to read certain helps. 'keywords' is a listing of all words that will bring up the help message. Upper/lower case is unimportant (keywords are typically in all caps). For two-word entries, the phrase must be enclosed with single quotes. 'help-message' is the actual text seen when the help is accessed. '0 $~' goes at the end of the #HELPS section to notify the area loader that it is over. Normally when a player uses 'help', both the keywords and the help-message are shown. If 'level' is negative, however, the keywords are suppressed. This allows the help file mechanism to be used for certain other commands, such as the initial 'greetings' text. D. THE #RECALL SECTION ---------------------- This section should be omitted unless you have specifically been granted permission to use it. It determines where characters go when they recall from the area. #RECALL recall-point Notes: 'recall-point' is the vnum of the room to which a player will recall if they attempt to do so anywhere within the area. If this section is omitted, the recall point will be the standard recall point (at the chapel). If 'recall- point' is invalid, players aren't able to recall from within the area. E. THE #MOBILES SECTION ----------------------- Very simply, these are all the creatures and people in the area. Good descriptions for your mobiles (mobs) are very important. Try to put any description of the mob doing things in the 'description', and try to avoid describing your mobiles as invincible (since it will look pretty silly to players who can easily defeat the mob, or players who are currently killing it). A note on sentinel mobs: If you make multiple copies of a sentinel mobile in different rooms (room A & B) and the one in room B is killed, it may reset in room A. This can be avoided by making multiple copies of the same mob, and placing each copy once, or only a few times. This is only a problem if you use a few mobs a lot of times. #MOBILES > #vnum > keywords~ > short-descr~ > long-descr~ > description~ > act-flags affected-flags align S > level 0 0 0d0+0 0d0+0 > 0 0 > position race~ sex #0 Notes: All the zeros used to mean something in Diku, but are now simply placeholders. 'vnum' is the mobile's virtual number. 'keywords' are the words used in commands to identify the mobile. 'short-descr' is the description used to identify the mobile when it acts. 'long-descr' is seen when a character walks in the room and sees the mobile. 'description' is seen when a character looks at the mobile. This is the longest description the mobile has. 'act-flags' define the major points of how the mobile acts. (Table 1) 'affected-flags' define more attributes of the mobile. (Table 2) (The act-flags and affected-flags are additive values, remember 1|4|64? Here's one of the places where you use that.) 'align' is a number from -1000 to +1000. Keep in mind that certain spells ('protection' and 'dispel evil') give characters fighting evil monsters an advantage, and that experience earned is influenced by alignment. 'S' is the letter 'S', which must be placed after the alignment. 'level' is the level number of the mobile. 'race' consists of one of the races built into Envy. It must be followed with a tilde. This list may change: Animal, Arachnid, Bat, Bear, Dragon, Drow, Dwarf, Elemental, Elf, Faerie, Fish, Giant, Githyanki, Gnome, Goblin, God, Halfdwarf, Halfelf, Halfkobold, Harpy, Hobbit, Hobgoblin, Human, Hydra, Insect, Kobold, Lizard, Mindflayer, Minotaur, Mist, Object, Ogre, Orc, Plant, Rat, Snake, Troll, Undead, Vampire, Werewolf, Worm 'sex' is a number indicating the mobile's sex. Male (1), female (2), or neuter (0) Example: #15012 githzerai trainee~ A githzerai trainee~ A githzerai is here training in the art of death. ~ This githzerai is covered in scratches. He obviously doesn't want to end up like the blood stains on the ground. He stands on guard waiting for you to make your first move. ~ 1|2|64 4|32|512 -1000 S 41 0 0d0+0 0d0+0 0 0 0 human~ 1 F. THE #OBJECTS SECTION ----------------------- All the items in the area are created in this section. The objects in the area should make sense, and should fit the area theme. Also, you should balance your items with items already in existence. Remember, you can use items that have already been created. So if you don't want to make a bunch of useless and repetitive swords, use some swords that are already there. You may need the vnums for these objects--just ask. Also, we need to know what external objects you're using in your area. #OBJECTS > #vnum > keywords~ > short-descr~ > long-descr~ > ~ > item-type extra-flags wear-flags > value-0~ value-1~ value-2~ value-3~ > weight 0 0 >> E >> keywords~ >> extra-descr~ >> A >> apply-type apply-value #0 Notes: 'vnum' is the object's virtual number. 'keywords' are words used in commands to identify the object. 'short-descr' is the description used when you pick the item up or have it equipped. 'long-descr' is used when a character walks into a room and the object is visible. 'item-type' is the type of the item. (Table 6) 'extra-flags' describe more attributes of the object. (Table 3) 'wear-flags' tell if the item can be picked up, and (if so) where on the body it can be worn. (Table 4) 'value-#' (0,1,2,3) are interpreted differently for each item type. It is necessary to put a tilde after these values in Envy format. These four values are explained in Table 6. 'weight' is simply how much the object weighs. 'E' is optional. An 'E' section is extra description. It consists of a set of keywords, and a description to go with them. Extra descriptions are great for major items. They allow intricate details. You can link your extra descriptions so that looking at one gives a hint that there's another, and the player gets the description part by part. You can also use extras to reveal different descriptions for the object when it's on the ground and when characters have picked it up. This can be done by giving an extra all the same keywords as the object. When characters have it in their possession, they see the extra when they look at the object. 'A' is also optional. This is what the item 'applies' to the wearer. It is used for items to increase/descrease player stats, etc. The 'A' section consists of an 'apply-type' and an 'apply-value'. The number in the slot for 'apply-value' is applied to the character attribute given in the 'apply-type' slot. The 'apply-type' slots are listed in Table 5. An item can have any number of 'E' and 'A' sections. '#0' is required to end the #OBJECTS section. NOTE: Do not try to make your objects too powerful. Try to keep them within sensible limits. If we feel that an object is abusive, we WILL downpower it until we feel that it's okay. So don't attempt to outdo other areas. (This is not to say that you can't make powerful objects. Just don't overdo it.) Example: #15010 black control staff~ Black staff of control~ A black staff that is neither wood or rock stands here. ~ ~ 4 64 16385 47~ 25~ 25~ charm person~ 2 0 0 A 24 -5 G. THE #ROOMS SECTION --------------------- The rooms are the where of the area. They set much of the atmosphere, and are most of the description of the area. Be creative, use interesting language, and keep a thesaurus nearby (Which is probably a good idea for the whole area). Descriptions don't necessarily have to be long, to be good. A good average length description is 4 or 5 lines. Try not to use the same description for a number of rooms. That gets boring for players. It's better to use a few rooms and make it sound big, than use many, and have them all the same. In mazes, try to keep them to a manageable size, and vary the descriptions of rooms enough that players can get their bearings. #ROOMS > #vnum > name~ > room-descr~ > 0 room-flags terrain >> D door >> exit-descr~ >> exit-keywords~ >> locks key destination >> E >> keywords~ >> extra-descr~ > H heal-% M mana-% > S #0 Notes: 'vnum' is the room's virtual number. 'name' is the name of the room. 'description' is the long multi-line description of the room. 'room-flags' describe more attributes of the room. (Table 7) 'terrain' identifies the type of terrain. This affects movement cost through the room. Certain terrain types (air and water) require special capabilities to enter. (Table 8) 'D' is an optional section, which contains the following: 'door' of the range 0-5: 0 north 2 south 4 up 1 east 3 west 5 down 'exit-descr' describing that direction 'keywords' for manipulating the door 'locks' value specifies several features about a door, and there are several combinations. Doors can be bashproof, pickproof, and passproof. (Table 9) 'key' is the vnum of an object which locks and unlocks the door 'destination' is the vnum of the room to which this door leads IMPORTANT: You must specify two 'D' sections, one for each side of the door. If you specify just one then you'll get a one-way exit. 'E' is another optional section. It contains a set of keywords, and a description linked to those keywords. 'H' and 'M' are also optional. These are for rooms that affect the rate of healing for players. 'heal-%' is the rate of healing (hit points), and 'mana-%' is the rate of mana recharge. Both percentages are assumed to be 100 if this section is omitted. Numbers between 0 and 100 lower the rate, and numbers over 100 speed it up (0 is treated the same as 100). These sections should be used sparingly. 'S' at the end marks the end of the room. It is required. '#0' ends the #ROOMS section, and is required. Example: #15017 Outhouse~ You stand in a small revolting outhouse. There is a little box like chair with a hole cut in the middle. From this hole a faint brownish mist pours forth. You have to hold your breath to prevent yourself from releasing your last meal. The walls are covered with mild and the seat is beginning to rot. Just before the hole, the floor is wet. The only exit is to the west, thank god you left the door open. ~ 0 1 0 E hole~ You hold your breath and plug your nose to look in the hold. At the bottom you see a large pile that does not look pleasant. Your last meal comes bubbling up and spews forth adding to the pile. You quickly stand straight up and notice that everything now looks blurry. You stand for a second with your head out of the door to clear yourself. ~ D1 The door is the only way out of this smelly and sickening place. ~ door~ 1 -1 15016 E door~ The door on this side is covered with more scratch marks. It's as if the people who come in here don't want to be here for long.... ~ S H. THE #RESETS SECTION ---------------------- This section is very important. It also consists mostly of numbers, and is easy to mess up. Be careful. This section places all mobs, and equips them. It sets everything into position. It's best not to put too many mobs in an area, or it can become unplayable. One mob every two rooms works very nicely. If they're sentinel, one in each room is easy. It's also best not to have too many reset in the same room. Two is difficult, and any more than two gets much worse. #RESETS > * comment > M 0 mob-vnum world-limit room-vnum comment * There aren't really blank lines between the items. This * has been done to show that they're all seperate items. > O 0 obj-vnum 0 room-vnum comment > P 0 obj-vnum 0 cntr-vnum comment > G 0 obj-vnum 0 comment > E 0 obj-vnum 0 wear-loc comment > D 0 room-vnum door state comment > R 0 room-vnum last-door comment S Notes: This section is a series of single lines. 'comments' are ignored by the MUD. They are used by people looking at the area text file. Comments placed on an otherwise empty line must follow an asterisk. Comments can also be placed at the end of a line, after all the other information. These comments are done the same way in the #SPECIALS section and the #GAMES section. The letters at the beginning of a line tell which type of reset the line is dealing with. 'M' lines are mob resets. They load 'mob-vnum' into 'room-vnum', until they reach the 'world-limit' of that mob. IMPORTANT: If the mob is NOT sentinel, 'world-limit' is for the entire MUD, not just the room. If the mob is set as sentinel, then it is the limit present in the room. 'O' lines are object resets. They load 'obj-vnum' into 'room-vnum'. Note that the object is not loaded if the room already contains any objects with 'obj-vnum'. It is also not loaded if there are any players in the area. 'P' lines are object resets for objects in containers. They load 'obj-vnum' into 'cntr-vnum'. The container used is the most recently loaded one with 'cntr-vnum'. The object isn't loaded if no object with 'cntr-vnum' exists, if someone is carrying the container, or if the container already contains at least one object with 'obj-vnum'. 'G' lines place 'obj-vnum' into a mob's inventory. This mobile is the most recent 'M' reset, unless the most recent attempt failed (due to hitting the 'world-limit'). 'E' lines give 'obj-vnum' to the most recent 'M' reset, equipped on the mob at 'wear-loc'. (Table 10) 'D' lines reset doors. The door is set in 'room-vnum', facing 'direction', to 'state'. The options for 'state' are: 0 for open/unlocked; 1 for closed/unlocked; 2 for closed/locked. The options for 'direction' are listed here: 0 north 2 south 4 up 1 east 3 west 5 down It is important to make exits coherent. If one room has an exit into a second, and the second has an exit in the reverse direction, that exit should ALWAYS lead back to the first room. Making it lead to another room causes a bug to be placed in the bug file. (Nobody wants that.) Of course, one-way exits are okay, since the second room doesn't have to have an exit back. 'R' lines randomize the exits of 'room-vnum'. The number 'last-door' is the highest numbered door from the room's 'D' resets. This results in the exits of the room being randomly switched around. Using 3 as the number for 'last-door' makes a 2-dimensional maze, and using 5 makes a 3-D maze. NOTE: Using both 'D' and 'R' in the same room can cause unpredictable results. (That means: Don't do it.) 'S' ends the #RESETS section, and is required. A note on object level limits: All objects have a level limit. This is determined from the most recent 'M' line (even if it didn't succeed). The level of the object is the mob's level minus 2. I. THE #SHOPS SECTION --------------------- This section covers (obviously) the shops in the area. Shops do not require room numbers. Just load the shopkeeper mobile into the room of your choice, and make it a sentinel. Of course, roving shopkeepers are non-sentinel. Shopkeepers should, in general, be very high level. That way, you avoid players selling, then killing the shopkeeper and getting everything back. #SHOPS > keeper t-0 t-1 t-2 t-3 t-4 sell-% buy-% open close comment 0 Notes: This section is a series of single lines. 'keeper' is the vnum of the mobile who is the shopkeeper. All mobiles with that vnum will be shopkeepers. 't-0' through 't-4' numbers are item types (Table 6) which the shopkeeper will buy. Unused slots should have a '0' in them. The shopkeeper will sell anything loaded into its inventory. Items that are put into its inventory in the #RESETS section will replenish automatically. Items that players sell or give to the keeper will be kept and sold, but will not be replenished. 'sell-%' is the percentage of the item's price that the shopkeeper sells items to players for. 100 is nominal price, 200 is double price, etc. 'buy-%' is the percent of nominal price that the shopkeeper will buy items for. 100 is nominal price, 75 is a 25% less, etc. IMPORTANT: Never make 'sell-%' less than 100, or 'buy-%' greater than 100. If you do, players can profit from buying and selling the same item over and over. Typical percentages are 150 50, but shopkeepers who don't have access to the trade routes will usually buy and sell higher (190 80, or more), and big city shopkeepers will have cheaper prices, but won't pay as much. Perhaps 120 30, or even less. 'open' and 'close' numbers define the hours when the shop is open for business. A 24-hour shop uses 0 and 23. Everything after 'close' (to the end of the line) is treated as a comment. '0' ends the section. PET SHOPS: Pet shops are a special kind of shops. They require several things. First, you must create your room (where the shop will be), and give it the pet-shop flag (4096). Next, make a special room for pet storage, which MUST be the next room after the pet-shop in vnum order. This room shouldn't connect to any other rooms. The shopkeeper mob MUST be made sentinel, and placed in the pet store (in #RESETS). In #SHOPS, use 0's for what the shopkeeper buys, and set buy & sell %'s at 100. And, finally, create the pets, and (in #RESETS) place them in the pet storage room. (It sounds a lot more complex than it really is.) J. THE #SPECIALS SECTION ------------------------ Use this section to make your mobs into mages and clerics, and to give them all kinds of other special abilities. All specials are C code functions that can add unique characteristics to mobs and objects. They check the environment periodically, and respond to certain conditions. They cannot cause mobs to respond to player actions. A mob might check to see what room it's in, whether anyone's nearby, etc. An object can check to see if it's being worn, if it has anything inside it, etc. There are quite a few different things specials can do. You can write new specials, but they are written in C, and require you to understand coding. If you want a new special, ask us, explain it, and there's a good chance someone can code it for you. #SPECIALS > * comment > M mob-vnum spec-fun comment > O obj-vnum speco-fun comment S Notes: This section is also a series of single lines. 'comment' is treated exactly the same as in the #RESETS section. 'M' assigns 'spec-fun' to all mobiles with 'mob-vnum'. 'O' assigns 'speco-fun' to all objects with 'obj-vnum'. 'spec-fun's and 'speco-fun's are assigned by name. There is a list of 'spec-fun's in Table 11. Example: M 2243 spec_breath_any K. THE #GAMES SECTION --------------------- This section allows mobs to run gambling games. #GAMES > * comment > M mob-vnum game-fun~ bankroll max-wait cheat comment S Notes: The #GAMES section has one command per line. 'M' assigns 'game-fun' to all mobiles with 'mob-vnum'. All 'game-fun's are assigned by name. 'bankroll' is the amount of gold that the mob running the game has when it is loaded. If the bankroll goes below zero, the mob shuts down the game. 'max-wait' is the number of PULSE_MOBILE's the mob will wait for each person to make a decision. The value of PULSE_MOBILE is defined in merc.h (currently 1 second per pulse). The wait between rounds depends upon the number of players, not 'max-wait'. 'cheat' tells whether or not the mob will cheat at its game. If 'cheat' is not zero, the mob will cheat (if it is allowed to by the code). The following games are available: game_blackjack Blackjack (21), dealer participates game_u_l_t Upper-Lower-Triple, a dice game Example: #GAMES * M 3160 upper-lower-triple~ 100000 4 0 /* Croupier */ M 3161 blackjack~ 1000000 8 0 /* Dealer */ * S L. #$ ----- This marks the end of an area file. Remember to put it at the end of the file. ____________________________________________________________________________ 3. TABLES ____________________________________________________________________________ Table 1: Mob ACT flags ----------------------- IS_NPC 1 Automatically set for mobs SENTINEL 2 Stays in the room (If you have more than one of a mob, and make it sentinel, you'll often get them all piled up in the same room.) SCAVENGER 4 Picks up objects on the ground AGGRESSIVE 32 Attacks PC's STAY_AREA 64 Won't leave the area WIMPY 128 Flees when hurt PET 256 Automatically set for pets TRAIN 512 Can train PC's PRACTICE 1024 Can practice PC's GAMBLE 2048 Runs a gambling game HEALER 4096 Pay heal system NO_KILL 65536 Mob can't be killed (use for shopkeepers) TOTAL_INVIS 131072 Mob cannot be seen (use for mob programs) Table 2: Mob affected flags ---------------------------- BLIND 1 (These act as permanent spells) INVISIBLE 2 DETECT_EVIL 4 DETECT_INVIS 8 DETECT_MAGIC 16 DETECT_HIDDEN 32 HOLD 64 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 WATERWALK 2097152 SUMMONED 4194304 MUTE 8388608 GILLS 16777216 VAMP_BITE 33554432 (internally set) GHOUL 67108864 (internally set) FLAMING 134217728 Table 3: Item extra flags -------------------------- GLOW 1 HUM 2 DARK 4 LOCK 8 EVIL 16 'detect evil' shows a red aura INVIS 32 Need 'detect invis' to see item MAGIC 64 Can't enchant item NODROP 128 Cannot drop the item BLESS 256 ANTI_GOOD 512 Zaps anyone of alignment above 332 ANTI_EVIL 1024 Zaps anyone of alignment below -332 ANTI_NEUTRAL 2048 Zaps anyone of alignment -332 to 332 NOREMOVE 4096 Once worn, item cannot be removed INVENTORY 8192 POISONED 16384 VAMPIRE_BANE 32768 HOLY 65536 Causes your hands to burn briefly when picked up MACHINE 131072 TIMED 262144 Table 4: Item wear flags ------------------------- TAKE 1 NECESSARY if item is to be picked up! WEAR_FINGER 2 WEAR_NECK 4 WEAR_BODY 8 WEAR_HEAD 16 WEAR_LEGS 32 WEAR_FEET 64 WEAR_HANDS 128 WEAR_ARMS 256 WEAR_SHIELD 512 WEAR_ABOUT 1024 WEAR_WAIST 2048 WEAR_WRIST 4096 WIELD 8192 HOLD 16384 PRIDE 32768 Table 5: Item apply types -------------------------- NONE 0 STR 1 DEX 2 INT 3 WIS 4 CON 5 SEX 6 CLASS 7 LEVEL 8 AGE 9 HEIGHT 10 WEIGHT 11 MANA 12 HIT 13 MOVE 14 GOLD 15 EXP 16 AC 17 HITROLL 18 DAMROLL 19 SAVING_PARA 20 SAVING_ROD 21 SAVING_PETRI 22 SAVING_BREATH 23 SAVING_SPELL 24 Table 6: Meaning of value numbers for each item type ----------------------------------------------------- This table covers 'item-type' and the four 'value-#' values. For a potion, scroll, or pill only has one spell, the other values (2 & 3) must still be terminated by a '~' but don't need to have any content. A (mostly) complete list of spells is given at the end of this file. NOTE: Because these are read in as text strings, the '|' format cannot be used for the flags (1|4|8~ is an invalid entry, but 13~ is valid.) Item Type Value-0 Value-1 Value-2 Value-3 ---- ---- ------- ------- ------- ------- Light 01 0 0 hours (0=dead, 0 -1=infinite) Scroll 02 spell lvl spell name 1 spell name 2 spell name 3 Wand 03 spell lvl max charges current charges spell name Staff 04 spell lvl max charges current charges spell name Weapon 05 0 0 0 type (Table 6a) Treasure 08 0 0 0 0 Armor 09 0 0 0 0 Potion 10 level spell name 1 spell name 2 spell name 3 Furniture 12 max # people max wt (unused) (Table 6b) heal/mana gain Trash 13 0 0 0 0 Container 15 max weight state (Table 6c) key vnum 0 Drink Con. 17 max capacity current cap. liquid poison (0=no, (Table 6d) non-zero=yes) Key 18 0 0 0 0 Food 19 hours fed 0 0 poison (as above) Money 20 value 0 0 0 Boat 22 0 0 0 0 NPC Corpse 23 0 0 0 0 PC Corpse 24 0 0 0 0 Fountain 25 0 0 0 0 Pill 26 spell lvl spell name 1 spell name 2 spell name 3 Fly 27 0 0 0 0 Portal 28 charges 1 flags (Table 6e) exit vnum Scuba 29 charge(mud hours) max charge 0 0 Table 6a: Weapon types ----------------------- 00 hit 01 slice 02 stab 03 slash 04 whip 05 claw 06 blast 07 pound 08 crush 09 grep 10 bite 11 pierce Allows backstab. Do not overuse. 12 suction 13 chop Table 6b: Furniture flags -------------------------- STAND_AT 1 STAND_ON 2 STAND_IN 4 SIT_AT 8 SIT_ON 16 SIT_IN 32 REST_AT 64 REST_ON 128 REST_IN 256 SLEEP_AT 512 SLEEP_ON 1024 SLEEP_IN 2048 Table 6c: Container states --------------------------- 1 closable 2 pickproof 4 closed 8 locked Table 6d: Liquid types ----------------------- Liquid Name Number Drunk Food Thirst (The drunk/food/thirst ----------- ------ ----- ---- ------ values are a ratio, water 0 0 0 10 and can vary higher beer 1 3 2 5 or lower, but will wine 2 5 2 5 stay in proportion ale 3 2 2 5 to each other.) dark ale 4 1 2 5 whisky 5 6 1 4 lemonade 6 0 1 8 firebreather 7 10 0 0 local specialty 8 3 3 3 slime mold juice 9 0 4 -8 milk 10 0 3 6 tea 11 0 1 6 coffee 12 0 1 6 blood 13 0 2 -1 salt water 14 0 1 -2 Coke 15 0 1 5 Dr. Pepper 16 0 1 5 Mountain Dew 17 0 1 5 Diet Coke 18 0 1 5 Sprite 19 0 1 5 Hot Chocolate 20 - - - Brandy 21 - - - Special Hot Choc. 22 - - - Table 6e: Portal flags ----------------------- PORTAL_NORMAL_EXIT 1 Normal exit PORTAL_NOCURSE 2 Can't use portal if cursed PORTAL_GOWITH 4 Changes locations with player (carriable) PORTAL_BUGGY 8 Buggy (doesn't always exit to right location) PORTAL_RANDOM 16 Random exit (ignores value3) Table 7: Room flags -------------------- DARK 1 Characters need a light source NO_MOB 4 No mobs may enter INDOORS 8 The room is indoors UNDERGROUND 16 The room is underground (useful for avoiding sun) NO_MAGIC 32 No magic can be used in this room PRIVATE 512 Only 2 people allowed (or 1 mob, 1 player) SAFE 1024 No pkilling SOLITARY 2048 Only 1 player/mob allowed PET_SHOP 4096 A pet shop NO_RECALL 8192 Can't recall from the room CONE_OF_SILENCE 16384 No speech/spells/communication channels ROOM_ARENA 32768 Allows player-killing with no penalties ROOM_BFIELD 65536 Battlefields for Clan vs. Clan wars ROOM_NO_SUMMON_FROM 131072 You can not summon players/mobs from room ROOM_NO_TELEPORT_IN 262144 Teleport does not work in the room ROOM_SPECIAL 524288 ROOM_NO_SUMMON_TO 1048576 Cannot summon players/mobs into room ROOM_NO_TP_OUT 2097152 Cannot cast the spell teleport from this room ROOM_NO_ASTRAL_IN 4194304 Cannot astral into room ROOM_NO_ASTRAL_OUT 8388608 Cannot cast spell astral from this room ROOM_NEWBIES_ONLY 16777216 Only new players are allowed in these rooms ROOM_HEROES_ONLY 33554432 Only Heroes and Angels can go here ROOM_GODS_ONLY 67108864 Only Immortals can go here ROOM_IMP_ONLY 134217728 Only BRAM can go here ;p Table 8: Terrain types ----------------------- INSIDE 0 CITY 1 FIELD 2 FOREST 3 HILLS 4 MOUNTAIN 5 WATER_SWIM 6 WATER_NOSWIM 7 (Need boat or fly) UNDERWATER 8 (Need scuba and can't fly) AIR 9 (Need fly) DESERT 10 Table 9: Door lock values -------------------------- value pickproof bashproof passproof 1 no no no 2 yes no no 3 no yes no 4 yes yes no 5 no no yes 6 yes no yes 7 no yes yes 8 yes yes yes Table 10: Equipment wear locations (mob resets) ------------------------------------------------ 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 WIELD_2 18 Table 11: Spec_funs -------------------- SPEC_BREATH_ANY Dragon breath randomly chosen from the 5 below SPEC_BREATH_ACID Acid breath SPEC_BREATH_FIRE Fire breath SPEC_BREATH_FROST Frost breath SPEC_BREATH_GAS Gas breath SPEC_BREATH_LIGHTNING Lightning breath SPEC_CAST_ADEPT Healer SPEC_CAST_CLERIC Combative Cleric SPEC_CAST_GHOST Undead ghost (repop during night, gone by day) SPEC_CAST_JUDGE Casts high explosive SPEC_CAST_MAGE Combative Mage (generic) SPEC_CAST_PSIONICIST Combative Psionicist SPEC_CAST_UNDEAD Undead (generic) SPEC_EXECUTIONER Executioner (don't use) SPEC_FIDO Corpse-eating mob SPEC_GUARD Protects the innocent, and attacks KILLER & THIEF SPEC_JANITOR Picks up trash SPEC_MAYOR Mayor (don't use) SPEC_POISON Poisonous bite SPEC_REPAIRMAN Repairs bashed doors SPEC_THIEF Steals gold SPEC_ROB Mobile jitters and gyrates SPEC_FIERY Causes a player to get burnt while in the same room SPEC_SNAKE_CHARM ? Table 12: Speco-funs --------------------- SPECO_AIRFILL Used to refill scuba items SPECO_ATTACH SPECO_BLOB Places an equipment eating blob on an object SPECO_BURPER Placed on an object the holder will randomly burp SPECO_DRAIN_HP SPECO_DRUNKER Placed on an object the holder will talk as if drunk SPECO_MORPH SPECO_RECYCLER SPECO_SOCIAL The holder will randomly social SPECO_MACHINE SPECO_ONE_OWNER The first person to hold this will be flagged as its only owner Table 13: Area flags --------------------- AREA_NO_TP_IN Cannot teleport into area AREA_NO_TP_OUT Cannot teleport out of area AREA_NO_ASTRAL_IN Cannot astral out into area AREA_NO_ASTRAL_OUT Cannot astral out of area AREA_NO_SUMMON_FROM Cannot summon players/mobs from area AREA_NO_SUMMON_TO Cannot summon players/mobs into area AREA_NO_LIST ____________________________________________________________________________ 4. SPELL LIST ____________________________________________________________________________ This is a list of spells that can be used in Castle Arcanum (mostly when creating such items as wands, scrolls, staves, potions, and pills). acid blast armor astral bamf bless blindness breathe water burning hands call lightning cause critical cause light cause serious change sex charm person chill touch colour spray cone of silence continual light control weather create food create spring create water cure blindness cure critical cure light cure poison cure serious curse destroy cursed detect evil detect hidden detect invis detect magic detect poison dispel evil dispel magic earthquake enchant weapon energy drain exorcise faerie fire faerie fog fireball flamestrike flaming shield fly gate giant strength harm heal identify infravision invis know alignment lightning bolt locate object magic missile mass heal mass invis mute pass door poison polymorph other protection recharge item refresh remove alignment remove curse remove silence sanctuary shield shocking grasp sleep stone skin summon teleport turn undead ventriloquate weaken word of recall acid breath fire breath frost breath gas breath lightning breath general purpose high explosive adrenaline control agitation aura sight awe ballistic attack biofeedback cell adjustment combat mind complete healing control flames create sound death field detonate disintegrate displacement domination ectoplasmic form ego whip energy containment enhance armor enhanced strength flesh armor inertial barrier inflict pain intellect fortress lend health levitation mental barrier mind thrust project force psionic blast psychic crush psychic drain psychic healing share strength thought shield ultrablast vampiric bite total recall lartsa mystic eye begone sendforth acid breath FOR DETAILED INFORMATION ON MOB, OBJECT, AND ROOM PROGRAMS, SEE GOMEZ'S WEBPAGE at: http://www.kellogg.nwu.edu/faculty/arcanum