EnvyMud release 1.0 Thursday, 30th June 1994 Kahn michael@uclink.berkeley.edu Thelonius dave@mechatro2.berkeley.edu Kith kith@marble.bu.edu Hatchet hatchet@uclink.berkeley.edu === The src directory This file gives a brief description of the files in the src directory. Makefiles source files startup scripts executable file What is new, what is old in the source === The Makefiles Makefile - Is the generic Makefile for machines with gcc Makefile.aix - Is the Makefile specifically designed for AIX Machines Makefile.hp - Is the Makefile specifically designed for HPUX Machines Makefile.irx - Is the Makefile specifically designed for IRIX Machines Makefile.mip - Is the Makefile specifically designed for MIPS Machines Makefile.nex - Is the Makefile specifically designed for the NeXT Makefile.sol - Is the Makefile specifically designed for Solaris 2.1 OS Makefile.sys - Is the Makefile specifically designed for the Sequent SysV Makefile.tek - Is the Makefile specifically designed for utek Machines To compile the executable file 'envy', you must first find the appropriate Makefile for you. Usually the Makefile provided is adequate. But if you match one of the other Makefiles, you would replace the current 'Makefile' with the Makefile you choose to use. For example, you are running a machine running IRIX, so you choose the file 'Makefile.irx'. You rename 'Makefile.irx' to 'Makefile' replacing it, then type 'make -k >&! a.out' === The source files act_comm.c - Contains procedures for pc to pc or pc to mud communication act_info.c - Contains procedures for information reports for the pc act_move.c - Contains procedures for pc/mobile movement around the mud act_obj.c - Contains procedures for object manipulation act_wiz.c - Contains procedures for immortal commands comm.c - Contains procedures for game TCP/IP communications const.c - Contains tables used within the game db.c - Contains procedures for data file loading fight.c - Contains procedures for pc/mob combat handler.c - Contains procedures for data element handling interp.c - Contains procedures and tables for game user commands magic.c - Contains procedures for spells merc.h - Contains data types/prototypes/macros used within the game save.c - Contains procedures for player/mob file read and write special.c - Contains procedures for mobile special abilities update.c - Contains procedures for game operation === The startup scripts startup - Is the startup script for EnvyMud using CSH startupSH - Is the startup script for EnvyMud using SH On most systems, 'startup' is adequate for you. The startup script will create a number log file starting from 1000.log in the log directory. Should your game crash, and you have enabled core dumps by setting your 'LIMIT coredumpsize unlimited' (see your system manual for information on the command LIMIT), you will have a core file with a name matching the appropriate log file in your src directory. --- Debugging Get to know the debugger setup in your computer system. The most well known are dbx, adb, and gdb. My favorite is dbx. All can be accessed by issuing this command at your computer prompt, 'dbx envy 1000.core'. The output is the line of code where the game has crashed. To gain more information, you must obtain a stack trace. (See the system manual for information on your resident debugger) === The executable file The executable file is created after typing 'make'. You must first choose a Makefile best suited for your machine. See 'port.txt' for more information. After making, the executable file is named 'envy'. You may then boot the game by executing the startup script 'startup' or 'startupSH' by typing 'startup &' or 'startupSH &' To enter the game, type 'telnet localhost 4000' from your mud account. === What is new, what is old This source is based on the MERC 2.2 release source code. Some internal workings have changed and some player visible improvements have been made. We've been developing the code for the past 23 weeks with extensive playing. Unfortunately, there might be bugs we have missed. If you encounter errors or bugs, first check your code additions then forward questions to the mailing list at merc@kpc.com. All in all, Envy will "feel" like any other MERC mud out there. Envy is designed to go beyond the MERC releases and make into reality many improvements that went undone in the MERC releases. Envy does not support traditional C compilers. See 'new.txt' to see a more accurate list of changes done to the code. See 'next.txt' to see what might be included in the next release.