--- deliantra/server/README 2006/02/03 07:11:13 1.1.1.1 +++ deliantra/server/README 2007/12/02 10:18:12 1.34 @@ -1,85 +1,120 @@ -WHAT IS CROSSFIRE? +WHAT IS DELIANTRA? - This is a multiplayer graphical arcade and adventure game made for - the X-Windows environment. It runs on a client/server model. - The client runs with X11, GTK, or SDL within a gtk window. + This is a multiplayer graphical arcade and adventure game, that runs on + a client/server model. There are clients for Microsoft(R) Windows(TM) + and POSIX systems such as Linux and *BSD. To get the most joyful + experience, the Deliantra client should be used. This client is written + in Perl and utilises SDL with OpenGL to provide you with the most + immersive gameplay. - It has certain flavours from other games, especially Gauntlet (TM) + Deliantra has certain flavours from other games, especially Gauntlet (TM) and Nethack/Moria. - Any number of players can move around in their own window, finding - and using items and battle monsters. They can choose to cooperate - or compete in the same "world". + Any number of players can move around in their own window on the + world, finding and using items and battle monsters. They can choose to + cooperate or compete in the same "world". -REQUIREMENTS - - For UNIX, X-windows and an ANSI C compiler to compile this game. - A window system is not needed if you don't want to compile the - map editor. - - For Windows 9x, you need Visual C++ (or some other ANSI C - compiler that can read ".dsw"-files). - -COMPILING - Crossfire has been known to compile on a wide variety of - systems. It should compile and most all ANSI C and Posix - compliant systems. +REQUIREMENTS - To get directions on compilation for UNIX/LINUX, read the INSTALL file. - For Win9x, read INSTALL_WIN32.txt. + For UNIX, a modern C++ compiler with some extensions is required to + compile this game (g++ 4.x works). In addition, you will need the Perl + development libraries along with the following Perl modules (the server + is tested with perl 5.8.8 and 5.8-maint) and their dependencies. (the + minimum versions below may not be up-to-date, the configure script will + check them all, though). + + - AnyEvent >= v2.6 + - BDB >= v1.1 **libdb4.5, libdb4.4 might work** + - Compress::LZF >= v1.8 + - Coro >= v4.13 **SEE IMPORTANT NOTICE BELOW** + - Coro::EV >= v2.1 + - Crossfire >= v0.99 + - Digest::MD5 >= v2.0 + - EV >= v0.9 + - IO::AIO >= v2.51 + - JSON::XS >= v1.5 + - Net::IRC3 => v0.5 + - Pod::POM >= v0.17 + - Safe::Hole >= v0.10 + - Storable >= v2.0 + - Time::HiRes >= v1.0 + - URI >= 1.35 + - YAML >= v0.62 + - YAML::Syck >= v0.71 + + **NOTICE**: Deliantra uses an alternative signal stack, so you have to + use either the "u"context method (slow) or "a"ssembly when configuring Coro. + + Furthermore, you will need the following programs and libraries: + + - gperf, the GNU perfect hash generator >= v3.0 + - glib-2.0 >= v2.10 + - libpng >= v1.2 + - ImageMagick >= v6.0 (possibly higher, depending on its bugs) + - optipng => v0.5.5 (http://optipng.sf.net) + - pngnq >= v0.4 (http://freshmeat.net/redir/pngnq/53146/url_homepage/pngnq.html) + - rsync >= v2.6 (a must have anyways) + + Your compiler must support the Library Technical Report 1 extensions and + the upcoming typeof extension. The GNU C++ compiler >= version 4.0 does + support all these. + + On Debian GNU/Linux, you might get away with something like this for many of the + above dependencies: + + apt-get install gperf optipng pngnq rsync imagemagick libglib2.0-dev libpng12-dev + apt-get install libpod-pom-perl libsafe-hole-perl libevent-perl + + If you want to get sensible backtraces for error conditions at runtime + to be logged you also need the external addr2line program (part of GNU + binutils) in your PATH. -USAGE - Crossfire runs on a client/server model. You will also need the - client to play. You can either connect to a server someone else - has set up, or run your own server and connect to that. The - client package has information for connecting to servers. +COMPILING - To run your own server, you need to make the crossfire binaries and install - them, and then run the crossfire program. This now creates a server which - you/other people can connect to. The map files will need to get downloaded - and installed for the server to run properly. If you plan to run a long - term server, you should use one of the scripts provided that will re-run - crossfire if it dies for some reason. + Deliantra has been known to compile on a wide variety of systems. It should + compile and run on most ISO C++ 200x and POSIX compliant systems. -MAILING LIST + To get generic directions on compilation, read the INSTALL file. - For the latest subscription for crossfire mailing lists, go to: - http://crossfire.real-time.com/Website_Index/Mailing_Lists/mailing_lists.jhtml - From there you should be able to subscribe/unsubscribe any of the mailing - lists. The mailing lists based off the ifi.uio.no host are being - discontinued. +INSTALLATION/USAGE - An archive of old messages can be found at - http://www.real-time.com/maillists/rte/crossfire + Deliantra runs on a client/server model. You will also a client to + play. You can either connect to a server someone else has set up, or + run your own server and connect to that. There are a number of clients + available, but the recommended one is CFPlus (see below for URL). + To run your own server, you need to build the deliantra server binaries + and install them, then you will have to download and install map and + archetype packs: -FTP SITES + Download both the cfmaps- and cfarch- archives, then + use cfutil to install both (the source directories must be writable for + this to work): - FTP-sites where you can look for the latest versions are: + cfutil --install-maps path/to/cfmaps-/ + cfutil --install-arch path/to/cfarch-/ - ftp://ftp.sourceforge.net/pub/sourceforge/crossfire - ftp://ftp.real-time.com/pub/games/crossfire + Both processes can take some time, depending on your resources :) If you + plan to repeat the installation you should specify the --cache option + first, which will keep costly-to-generate files around for further runs + of cfutil: - Changes made since the latest release can be found at the CVS - repository. Information on anonymous CVS access as - the download CVS snapshots and browsing the repository can be - found at: - http://sourceforge.net/cvs/?group_id=13833 + cfutil --cache --install-maps path/to/cfmaps-/ + cfutil --cache --install-arch path/to/cfarch-/ + Atfer this you can then run the deliantra executable. This starts a + server which you/other people can connect to. - If you are looking for a windows/NT client, look at: - http://mids.student.utwente.nl/%7Emichtoen/crossfire/ -WEB SITES: +WEB SITES - The following web addresses have crossfire information that you may find + The following web addresses have deliantra information that you may find useful: - http://crossfire.real-time.com/ - real-time is the main crossfire site. + http://www.deliantra.net/ (The main site) REPORTING BUGS @@ -87,77 +122,60 @@ First, check the INSTALL file for common problems, and see if yours is mentioned. - The mailing list is where present development work and bugs are typically - discussed. If you want to know what is happening with crossfire, join the - list and please ask there. - - I will likely delete mail messages of the following sort: - 1) Bug reports of failed installation when the installation instructions - were not followed. - 2) Bug reports that contain so little information that it tells me nothing - more than the fact that there is a bug. - 3) Bugs in which the solution has already been answered in the INSTALL - file. + Bugs should be filed using the following email address: + support@deliantra.net When reporting bugs, make sure you include the following: - o What version of crossfire did you use? - o What type of computer did you use? - o What release of the operating system did it have? - o What windowing system are you using (Ie, openwindows, X11R6, etc) - o What compiler (and its version) did you use (ie, gcc, acc, etc)? - o Which flags did you give it? - o If the bug happens when compiling crossfire, send an EXACT copy of - the compiler line, as well as the errors it puts out. Sending bugs - of the sort 'it failed with a line like ...' doesn't help any. - o If the bug happened while running crossfire: + + * What version of deliantra did you use? + * What type of computer did you use (CPU type) + * What is the version of the OS? + * What windowing system are you using (e.g. openwindows, X.org, XFree86) + * What compiler (and its version) did you use (e.g. gcc, acc)? + * Which flags did you give it? + * If the bug happens when compiling deliantra, send an EXACT copy of the + compiler line, as well as the errors it puts out. Sending bugs of the + sort 'it failed with a line like ...' doesn't help any. + * If the bug happened while running deliantra: - Include any output before to the bug. - - Give a description of what you did before the bug occured. The better - detailed the description, the better chance I have of figuring - out where the bug happened, or how I can recreate the bug. - o If you managed to compile Crossfire, include the output of - "crossfire -o". + - Give a description of what you did before the bug occured. The better + detailed the description, the better chance we have of figuring + out where the bug happened, or how we can recreate the bug. + - If possible, a stack trace from gdb (or other debugger) is very + helpful. - Lack of any of this information in a bug report can make that bug report -useless. Also, if you have a bug, make sure you are using the latest -version. If you report a bug that has since been fixed, you are not likely -to get any help. + The more information provided, the better chance of the bug being fixed + in a timely fashion. -Further debugging informatiion can be found at -http://crossfire.real-time.com/debugging_tips.html - Mail the bug report to crossfire-devel@listserv.real-time.com +SUBMITTING PATCHES ------------------------------------------------------------------------------- -SUBMITTING PATCHES: See the doc/programming_guide file. + Patches should be submitted to email address: + support@deliantra.net -PUBLIC SERVERS: +PUBLIC SERVERS -The best way to find a server to play is to run the client. It will contact -the metaserver and present a list to choose from. You can also see -a list at http://crossfire.real-time.com/metaserver/ + The best way to find a server to play is to run the client + and hit "Server List" in the setup dialog (this varies + depending on your client). + + The canonical server for use with Deliantra and CFPlus is + gameserver.deliantra.net, port 13327 (the default). COPYRIGHT - Don't get scared by the below, it's included just for "safety" reasons 8) - (Don't want anyone to start selling the game) + Most files in this distribution are covered by the GNU General Public + License, version 3 (COPYING.GPL), or any later version, with the + exception of ext/affero.ext, which is covered by the GNU Affero General + Public License, Version 3 (COPYING.Affero). Please take note of the + special requirements of the Affero license with respect to network + servers and configure your network server according to the instructions + given in ext/affero.ext. + - Copyright (C) 2000 Mark Wedel - Copyright (C) 1992 Frank Tore Johansen +CONTACT - This program is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 2 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program; if not, write to the Free Software - Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + The authors can be reached via e-mail to support@deliantra.net - The author can be reached via e-mail to mwedel@scruz.net