-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- - OasisOLC - Rv's Circle 3 On Line Creation Harvey Gilpin v1.0 (7/4/96) release -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- Contents: 1 - Introduction 2 - What is OasisOLC? 3 - Conditions of use 4 - Installing OasisOLC 5 - Configuring OasisOLC 6 - Using OasisOLC 7 - Known bugs. -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- 1 - Introduction Congratulations on reading this. If you are anything like me then you've got hold of your new toy and the last thing you want to do is read through heaps of junk telling you how to get it working. However most of the information in this file is important so I urge you to read it all before installing anything. -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- 2 - What is OasisOLC? First off, the three big "it's" : It's written by me, Rv, a.k.a. Harvey Gilpin. It's a menu based OnLine Creation system for CircleMUD 3.0. CircleMUD was created and is maintained by Jermey Elson. It is based on an earlyer OLC system that just included 'iedit' and 'redit'. Unfortunately, the original author(s) are unknown. I cleaned up and semi-reorganised the redit/iedit code, renamed iedit to oedit and wrote the medit/zedit/sedit and olc modules. IMPORTANT: It is not intended as an all singing, all dancing OLC, but rather as a damn good starting point. -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- 3 - Conditions of use 1) If you use this code you must email me to let me know at: rv@twylite.demon.co.uk (It's not asking much is it? I'd like to know how many people use it) Just a quick message saying: "It's crap! You suck!" would do. 2) You must not use the code to make a profit in ANY way. 3) Any derivative works must give credit to the original author(s) (should they become known) and to myself, and are subject to the same conditions of use. 4) You accept any damage caused by the use of this software to be your own fault. (i.e. Don't sue me :) Harvey Gilpin -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- 4 - Installing OasisOLC FIRST BACK UP YOUR WORLD FILES ! - This system (like all others) WILL have bugs and WILL destroy your world files from time to time. Be ready for it. To backup your world files go into the 'lib' directory and type: tar cvf world.tar world To restore them again, go into the 'lib' directory and type: tar xvf world.tar Most of the code for the OLC system is held in files seperate files but some circle files do need modifying so that the MUD knows that it has the OLC atattched to it. Basically you just untar the files into your 'src' directory and then apply the patch files by doing this: patch < OasisOLC.patch These are the files the patch will affect: Makefile, structs.h, comm.c, modify.c, interpreter.h, interpreter.c, act.wizard.c, constants.c, shop.h & shop.c IMPORTANT: All the changes made to the code are required by the OLC engine, so if any of them do not work automatically, you will have to look through the rejected files and change the code manually. -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- 5 - Configuring OasisOLC I have tried to make this system as reliant as possible on the tables that already exist in the Circle code, so that when the mud changes, the OLC will be able to deal with it. However, the system does need to know some information about the tables sizes, and those that are not already defined in structs.h have been placed in olc.h. If you want the OLC to react to changes you make to tables within your mud you must update the defines in the top of olc.h. Also, the system uses colours for the menus, if the player has a colour level of 'normal' or 'complete'. If you don't like the colour scheme used, you can edit the function get_char_cols() in olc.c, and this will change the colours for the entire OLC system. If you want to add new features to the OLC, for pointers on how to go about it, look at the commented out code for object level flags in oedit.c. -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- 6 - Using OasisOLC To understand what all the fields in the menus mean, refer to the building.doc file that is found in the 'doc' directory of the Circle3.0 distribution. Here's how all the commands for the OLC system are used: redit - edit the room you are standing in redit <virtual room num> - edit/create room redit save <zone> - save all the rooms in zone to disk zedit - edit the zone info for the room you are standing in zedit <virtual room num> - edit the zone info for that room zedit save <zone> - save all the zone info for that zone to disk zedit new <one> - IMPLs only - create a new zone. oedit <virtual obj num> - edit/create object oedit save <zone> - save all the objects in zone to disk medit <virtual mob num> - edit/create mobile medit save <zone> - save all the mobiles in zone to disk sedit <virtual shop num> - edit/create shop sedit save <zone> - save all shops in zone to disk. set <player name> olc <zone> - IMPLs only - allow player to edit zone. olc - List all the things that have been edited but not yet saved. WARNING: This OLC will let you set values to values that shouldn't be set. For example, it'll let you set a mobile with a GROUP flag. This is good in the sense that it allows you to test anything you please, but bad in the sense that builders can crash the mud with ease. (Hey, that rymes!). In short: only allow builders you trust to use it. -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- 7 - Known bugs. Like most software, this system has bugs. Here are those that I know of: Access to zone 0 bug Initially, all your GODs will have edit access to zone 0 (limbo). You may want to set thier olc flags to -1 by default. Extended mob bug. Due to the way Extended mobs are implemented it is impossible to know what individual MUDs do with them. So when medit writes the mob files out to disk it can only deal with those it knows about. Any other one that were there get _erased_. If you want to use extended mobs in your mud you MUST edit the medit_save_to_disk() function in medit.c so that it knows how to save them. Zone header info If two builders change the zone header information (zone name, reset type, etc) at the same time, one of the changes will be lost. No big deal. Object weight: Objects that have there weight changed will mess up with the weight that players currently in the game owning that object can carry, until they rent. No doubt there will be more. Please send -detailed- descriptions of any bugs you find to: rv@twylite.demon.co.uk -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-