This document will describe the Approval Dept's views on the quality of code that is produced here on Nightmare. o Indentation. Indenting your code properly CANNOT be stressed enough. In case you hadn't noticed, all directories have open read permissions to all the wizards. In other words, your fellow wizards may look in your directory for an example of how to do something. Please use equal spacing on your indentation, or use the "I" command in ed. o Inheritance versus clone_object() and configuring. *PLEASE* use inheritance! If you insist on using clone_object() and configuring, please create a class of monsters and configure that. For example, if you have a number of rooms with giants in them, and they are all different types but you don't really want to make a seperate monster file for them all, make a giant.c that has all the common features and just do the minimal configuring to get the particular giant you want in your room. You MUST use inheritance if your weapon has a special hit function or if your monster has anything special done to it when it dies. Too many times we have seen heart_beat problem when hit functions and die functions are set up inside rooms. o Use of memory intensive functions. The worst offenders of memory in the LPC language that are in common use are heart_beat() and call_out(). You should never use these functions unless necessary. They drive up the load in no time and most of the time they aren't needed. Use them only when you cannot think of any other way to code something. In particular, heart_beat() is used when you need to perform an action every three seconds and call_out() when you need a delay. MAKE SURE THAT call_out() IS NOT RECURSIVE!! That will increase the likelyhood that the game will crash from your program. In fact, avoid recursion if at all possible due to overflow errors that like to occur. If you must use it, try to minimize the number of recursive calls.