--- deliantra/server/README 2007/03/05 19:34:20 1.4 +++ deliantra/server/README 2007/05/02 05:47:35 1.11 @@ -1,70 +1,94 @@ WHAT IS CROSSFIRE? - 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 Crossfire+ 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) 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, the ISO C++ 200x compiler are required to compile this game. In - addition, you will need the Perl development libraries along with the - following Perl modules: + 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 + - BDB >= v0.1 + - Compress::LZF >= v1.71 + - Coro >= v3.62 **SEE IMPORTANT NOTICE BELOW** - Coro::Event >= v2.1 + - Crossfire >= v0.97 + - Digest::MD5 >= v2.0 - Event >= v1.08 - IO::AIO >= 2.32 - - BDB >= v0.1 + - JSON::XS => 1.11 + - Pod::POM >= v0.17 + - Safe::Hole >= v0.10 - 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 - Furthermore, to build the crossfire server you will need the following: + **NOTICE**: Crossfire uses an alternative signal stack, so you have to + use either the "u"context method or "a"ssembly when configuring Coro. + + Furthermore, you will need the following programs and libraries: - - gperf, the GNU perfect hash generator + - gperf, the GNU perfect hash generator >= v3.0 - glib-2.0 >= v2.10 - libpng >= v1.2 + - ImageMagick >= v6.0 + - optipng => v0.5.5 (http://optipng.sf.net) + - pngnq >= 0.4 (http://freshmeat.net/redir/pngnq/53146/url_homepage/pngnq.html) + - rsync >= 2.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 - Your compiler must support the Library Technical Report 1 extensions. - The GNU C++ compiler >= version 4.0 does support these. 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. + Crossfire 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 generic directions on compilation, read the INSTALL file. - To get directions on compilation for UNIX/LINUX, read the INSTALL file. -USAGE +INSTALLATION/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. - - 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 maps should be unpacked in - the $(TARGET)/share/crossfire directory - after unpacking, you should have a - $(TARGET)/share/crossfire/maps directory. + Crossfire 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 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. First you have to download + and install maps and archetype packs, though. + + Download both the cfmaps- and cfarch- archives, then use cfutil + to install both: + + 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 run a long term server, you should use one of the scripts - provided that will re-run crossfire if it dies for some reason. WEB SITES: @@ -105,17 +129,20 @@ 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: - crossfire@schmorp.de + + 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/ + 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). You can also see a list at + http://crossfire.real-time.com/metaserver/. + The canonical server for use with Crossfire and CFPlus is + crossfire.schmorp.de, port 13327 (default). COPYRIGHT