Online Creation: EnvyMUD 1.0 OLC Version 1.0 This online creation system was ported to EnvyMUD 1.0 by Jason Dinkel from The Isles running NiMUD Revision 2-60 (8/11/94) written by Locke and Surreality. Surreality originally wrote this online creation system for Merc 2.2 and submitted it to Locke for inclusion with The Isles. I mailed Locke and he told me that 85% of the OLC(online creation) code was by Surreality and that I should get permission from him to publish it. Locke only wanted to know what code base I was using and also he wanted to see the MUD running when I got the code ported. A fresh copy of EnvyMUD can be obtained from ftp.atinc.com in the pub/mud/servers directory if you want to run a diff and make the changes to your own mud. Features: 1) New commands(see interp.c, and olc.c): These commands actually send your input to a new interpreter that processes the command and then sends any commands it cannot process to the normal interpreter. Use help <command> online to get all the commands. aedit - area editor redit - room editor oedit - object editor medit - mobile editor Hitting return or typing show in one of the above editors will execute one of these commands giving you a printout of what your room variables look like. ashow - display area information rshow - display room info oshow - display object info mshow - display mobile info This command could really be improved and I didn't make the improvement originally because it would have taken too much modification on the part of the installer. What it really should do is just display the resets that are part of the room you are editing, rather than the resets for the whole area. This would require changing the way resets are processed in the game, however. I may update this in a later version if it becomes a popular idea(i.e. you send me mail asking for it.) resets - display resets in area This command saves your work, use it liberally. You may want to add it to your update routines so that the whole database is saved periodically if you have many builders and want to be sure they don't lose data while working on the new areas. asave - save area asave list - saves the area.lst file asave zone - saves the zone you're in asave changed - saves all changed zones asave world - saves the world! (db dump) Can't fit all the info on one screen very easily, but I did my best. I hope it helps a little bit, if not it is easy to edit this little routine found in olc.c. alist - displays an area list that contains vnum ranges and builders assigned to an area. 2) Object values have a new, easier interface. No more kludgy table lookups. 3) There is a Verbose option in olc.c that allows resets to be commented extensively to help with debugging. 4) Security is implemented so that a player begins with a security of 9 and the highest security is 1. You can form a hierarchy of builders with this feature. 5) The builder option allows a particular builder to be assigned to an area. This way a builder can have an area to himself and everyone knows who is working on that particular area. 6) New format for areadata. Check out db.c or look at the area files after executing an 'asave world'. Old area format is still accepted, of course. If you make changes to the area format I recommend that you follow the example set for this piece of code if you want to keep your area files backward compatible. 7) New prompt option. %c will give your prompt the current editor that you are using. Limitations: 1) The software doesn't support randomized exits. Kalgen doesn't think they are a good way to make puzzles and after replying to his post I decided that he was absolutely correct. The software still saves the R resets, but it doesn't process them except to load them into memory and to save them to the disk. 2) The software doesn't allow editing of the following: socials poses helps liquids level names MobPrograms(or other scripting languate) These people helped make this software possible. I am eternally grateful. Kahn, Thelonius, Kith, and Hatchet for the base code system that is clean. Locke for releasing The Isles to the public and permission from him to let me use it to develop this code on EnvyMUD. Surreality for writing the online creation routines and his permission for me to share them with you. Kalgen for the fix to format_string. DJ Delorie for DJGPP 1.12 which supports DPMI so I can compile and run under Windows 3.1 which is a Godsend for me. Alan Phillips for Programmer's File Editor for Windows/16 version 0.05.007 and a nice interfacing system into DJGPP. TrollMUD for suggestions and support. The people who contribute to the Merc mailing list and Zrin for administering it. Here are my software sources: DJGPP version 1.12 from oak.oakland.edu in pub/msdos/djgpp PFE0507.ZIP : freebsd.cdrom.com /.2/SimTel/msdos/windows3 This code was ported to EnvyMUD 1.0 by Jason Dinkel on the dates 12/5/94 to 12/11/94. If you plan to publish any of this work please be sure that you inform these people: Locke: locke@telerama.lm.com Surreality: cxw197@psu.edu Jason Dinkel: jdinkel@mines.colorado.edu