--- deliantra/server/README 2007/03/06 22:07:56 1.6 +++ deliantra/server/README 2011/05/15 20:14:30 1.55 @@ -1,85 +1,128 @@ -WHAT IS CROSSFIRE? +WHAT IS DELIANTRA? - 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 Crossfire+ client should be used. This client is written in Perl and - utilises SDL with OpenGL. + 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. - Crossfire 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, a modern C++ compiler with some extensions is required to - compile this game. 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). - - - Crossfire >= v0.97 - - Coro >= v3.5 - - Coro::Event >= v2.1 - - Event >= v1.08 - - IO::AIO >= 2.32 - - BDB >= v0.1 - - Storable >= v2.0 - - Time::HiRes >= v1.0 - - YAML::Syck >= v0.71 - - Digest::MD5 >= v2.0 - - Compress::LZF >= v1.71 - - Safe::Hole >= v0.10 - - Pod::POM >= v0.17 + compile this game (g++ 4.x works). In addition, you will need the Perl + development libraries along with the following Perl modules (the server + requires perl 5.10.1). A perl configured for 64 bit integer support is + highly recommended to avoid overflows, but 32 bit perls are supported) + and their dependencies. In general, the newest version from CPAN will + do. The configure script will complain when it detects an unsuitable + version. + + - common::sense + - AnyEvent + - AnyEvent::AIO + - AnyEvent::BDB + - BDB **compiled against libdb4.[567] (libdb4.4 *might* work)** + - Compress::LZF + - Coro **SEE IMPORTANT NOTICE BELOW** + - Coro::EV + - Deliantra + - Digest::MD5 + - EV + - Guard + - IO::AIO + - JSON::XS + - AnyEvent::IRC + - Pod::POM + - Safe::Hole + - Storable + - Time::HiRes + - URI + - YAML::XS + + **NOTICE**: Deliantra uses an alternative signal stack, so you cannot + use the sigaltstack method (== setjmp on unrecognised platforms) for + Coro. Try "a"ssembly, "u"context or "p"threads as backend instead on + those platforms. Furthermore, you will need the following programs and libraries: - - gperf, the GNU perfect hash generator + - gperf, the GNU perfect hash generator >= v3.0 + - blitz++ >= 0.9 - glib-2.0 >= v2.10 - libpng >= v1.2 - - ImageMagick >= 6.0 (convert must be in your PATH). - - optipng (http://optipng.sf.net) + - ImageMagick >= v6.6 (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 libblitz0-dev + + 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. + + COMPILING - Crossfire has been known to compile on a wide variety of systems. It should - compile and most all ISO C++ 200x and POSIX compliant systems. + 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. - To get directions on compilation for UNIX/LINUX, read the INSTALL file. + To get generic directions on compilation, read the INSTALL file. -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. +INSTALLATION/USAGE - 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. The map pack is released together with the server and can be - downloaded form the same location. The maps should be copied into the - $(TARGET)/share/crossfire/maps directory - after unpacking, you should - have a $(TARGET)/share/crossfire/maps/scorn directory. + Deliantra runs on a client/server model. You will also need 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, the recommended one is the Deliantra Client (see below for URL). - 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. + 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: -WEB SITES: + Download both the cfmaps- and cfarch- archives, then + use cfutil to install both (the source directories must be writable for + this to work): - The following web addresses have crossfire information that you may find - useful: + cfutil --install-maps path/to/cfmaps-/ + cfutil --install-arch path/to/cfarch-/ + + 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: + + 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. + + +WEB SITES - http://crossfire.schmorp.de/ (The main site) + The following web addresses have deliantra information that you may find + useful: - http://crossfire.real-time.com/ (The website for the old Crossfire game) + http://www.deliantra.net/ (The main site) REPORTING BUGS @@ -88,59 +131,59 @@ mentioned. Bugs should be filed using the following email address: - crossfire@schmorp.de + 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 (CPU type) - o What is the version of the OS? - o What windowing system are you using (e.g. openwindows, X.org, XFree86) - o What compiler (and its version) did you use (e.g. gcc, acc)? - o Which flags did you give it? - o If the bug happens when compiling crossfire, send an EXACT copy of the + + * 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. - o If the bug happened while running crossfire: + * 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. + - 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. -The more information provided, the better chance of the bug being fixed in -a timely fashion. + The more information provided, the better chance of the bug being fixed + in a timely fashion. + + +SUBMITTING PATCHES + + Patches should be submitted to email address: + support@deliantra.net + ------------------------------------------------------------------------------- -SUBMITTING PATCHES: -Patches should be submitted to email address: - crossfire@schmorp.de - -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/ +PUBLIC SERVERS + + 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 - Copyright (C) 2007 Crossfire Development Team - Copyright (C) 2000, 2006 Mark Wedel - Copyright (C) 1992 Frank Tore Johansen - - 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. + 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. + + +CONTACT + + The authors can be reached via e-mail to support@deliantra.net - The authors can be reached via e-mail to crossfire@schmorp.de