TinyMUX 2.0: INSTALL Last Update: April 2000 Please note that there are two sets of instructions included in this file. Please skip to 'Instructions for Existing Games' for how to upgrade your server or to compile in preparation for moving an existing game. Instructions for New Installations: ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1. cd src/ to the source directory. Run 'configure'. This will customize autoconf.h and Makefile for your system. 2. Edit the Configuration section of the Makefile. This is usually not needed. Most likely, all you will need to change are any C++ flags needed by your particular C++ compiler,(in particular -fpcc-struct-return), and any esoteric libraries needed by your system. There may also be some #defines in config.h that you may want to change, but in general, the defaults should not be changed. ----> Within the Makefile, you can also enable: - Memory based database handling (as opposed to the default disk based handling. (see docs/MEMORY) - Radix string compression. (see docs/COMPRESSION) - Enable WOD REALMS. (see docs/REALMS) 3. Run make depend, then make. This will produce netmux, mkindx, slave, and dbconvert. 4. When starting from a MUX from scratch, do the following: - cd to the game directory. 'cd ../game' - Make your configuration file, as described in docs/CONFIGURATION - Type './Startmux'. TinyMUX 2.0 automatically creates a minimal DB if one does not exist in the game/data directory. - Log into the game as player wizard 'connect wizard potrzebie', and shut it down again. 5. Edit the .txt files in game/text to your liking. In particular connect.txt and motd.txt. 6. Start up TinyMUX 2.0 by running './Startmux' again. 7. @ccreate a channel named 'Public', and a channel named 'Guests' from within the MUX. Created players will automatically be joined to 'Public'with alias 'pub', guests will automatically join 'Guests' with alias 'g'. Changes to dbconvert: ~~~~~~~~~~~~~~~~~~~~ - One of the major and important changes to MUX 2.0 is the use of CHash in the place of GDBM. You will notice the changes primarily in the way dbconvert and the db_unload and db_load scripts work. - dbconvert is the means by which the binary game data is converted to flatfile format and back again. The db_load and db_unload scripts simplify the process for the user. - The syntax of the scripts is: - './db_load netmux netmux.flat netmux.db' This converts flatfiled database to binary for use by the server and would be done with dbconvert thus: ../bin/dbconvert netmux X < netmux.flat > netmux.db - './db_unload netmux netmux.db.new netmux.flat' This converts binary data to flatfile for would be done with dbconvert thus: ../bin/dbconvert netmux x < netmux.db.new > netmux.flat Instructions for Existing Games: ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ [NOTE: It is HIGHLY recommended that you preserve a previous setup if you can, to make conversion a bit less painful. If you had one while converting, make sure the conversion process has completed successfully before you delete your old distribution. We cannot stress enough to you the importance of protecting your data throughout any conversion or upgrade.] 1. cd src/ to the source directory. Run 'configure'. This will customize autoconf.h and Makefile for your system. 2. Edit the Configuration section of the Makefile. This is usually not needed. Most likely, all you will need to change are any C++ flags needed by your particular C++ compiler,(in particular -fpcc-struct-return), and any esoteric libraries needed by your system. There may also be some #defines in config.h that you may want to change, but in general, the defaults should not be changed. --> Within the Makefile, you can also enable: - Memory based database handling (as opposed to the default disk based handling. (see docs/MEMORY) - Radix string compression. (see docs/COMPRESSION) - Enable WOD REALMS. (see docs/REALMS) 3. Run make depend, then make. This will produce netmux, mkindx, slave, and dbconvert. 4. - Put databases in game/data. - Put text files in game/text. - The scripts db_load, db_unload, and db_check may be found in the game/data directory. - If you changed the GAMENAME in mux.config, be sure to change the filenames in GAMENAME.conf as well. - If you are converting from earlier version of MUX, or another server such as TinyMUSH or PennMUSH, make all appropriate changes to the GAMENAME.conf file. - **CHANGED** Your old GAMENAME.conf file will not work under MUX 2.0. To make a proper file, you must edit the GAMENAME.conf in the MUX 2.0 game/ editting lines marked 'input_database', 'output_database' 'crash_database', 'game_dir_file', and 'game_pag_file', change 'netmux' to the same thing you entered in GAMENAME. Then add in the config parameters from your old game in the bottom. - You can save a little time by merging the old and new conf files. 'cat oldfile >> newfile' then use an editor to remove the unneeded lines. - If you had a mail database previously, adjust mail_expiration accordingly, BEFORE you restart the game, or else ALL @mail older than the default value of 14 days will be deleted. - If you do not want to use the built-in +help command, redefine PLUSHELP_COMMAND in config.h to be something else. 5. Start TinyMUX 2.0 by running './Startmux'.