***************************************************************************** 
* $RCSfile: README,v $
* 
* $Author: jekholm $
* $Revision: 1.2 $
* $Date: 1999/03/29 07:49:30 $
*
*****************************************************************************
*
* This file contains general information about Zombie.
*
*****************************************************************************


1. Basic info

For more information about installation see : 'INSTALL'.
For more information about the license for Zombie see : 'LICENSE'.
For more information about bugs and reporting them see : 'BUGS'.
For more information about changes between versions see : 'CHANGES'.

These files are located in the toplevel Zombie directory and you really
should read them!


2. What is Zombie?

Zombie is work in progress! It may behave badly, and it may crash if you try 
something we didn't think about. However, it has been really stable for a 
while now and we don't expect any special problems.

Zombie was designed as a system for providing easy process-communication
between processes located all around the 'net'. Socket-programming is not that
hard, but it is really prone to errors, and often you do the same things over
and over again in different applications. We wanted a system that would allow
us to have several processes communicate through a single server, and be
general enough so that it could be used from several different
applications. The main focus for Zombie was multiplayer games, but we soon
discovered that it can be used to almost anything that involves process
communication, partly due to the API (Application Programmers Interface)
supplied with Zombie.

Zombie allows you to easily tie applications together and send any kind of
information between them. Possibly uses include :

- games (the intended target)
- talk/write/chat applications
- 'OLE' implementations
- remote executing of procedures/applications, i.e. a 'rcp/rsh' substitute
- distributed computing. Several Zombie servers can be located around a
  network and used to build a powerful distributed computing system!
- others, use your imagination!
 

3. Source package directory layout 

The directory layout of the distribution is quite simple. It should be
quite easy to find what you need. The different directories contain :

toplevel directory - contains these files, the global Makefiles and some 
                     subdirectories.

bin                - contains the 'zombie' binary. This is the main server and
                     executable. 

lib                - temporary directory used when compiling Zombie. The libraries
                     here will be installed properly with 'make install'.

include            - temporary directory used when compiling Zombie. The headers
                     here will be installed properly with 'make install'.

doc                - contains various documentation for Zombie in various formats.

src                - contains all the source for Zombie. When you issue a
                     'make' the source in this directory is actually built.

samples            - a few sample applications that show how to use the ZombieClient 
                     in your own applications. I will provide more samples as soon
                     as we find time for it. 
                     
                     
4. Installation layout

By default Zombie installs its files at these locations when doing a 'make install' and
'make examples-install':

/usr/sbin                - 'zombie' binary.
/usr/lib                 - shared and static libraries.
/usr/man/                - man-pages (classreference).
/usr/incldue/zombie      - headers used for custom Zombie applications.
/usr/doc/zombie-xx.yy-zz - all documentation and samples.
/etc                     - global config-file.
/etc/rc.d/init.d         - start/stop scripts (RedHat).
/var/log/zombie          - directory for all logs.

These locations can be overridden in the file 'Makefile.common'
located in the toplevel directory.
