ViewVC Help
View File | Revision Log | Show Annotations | Download File
/cvs/deliantra/server/README
(Generate patch)

Comparing deliantra/server/README (file contents):
Revision 1.5 by root, Mon Mar 5 22:06:50 2007 UTC vs.
Revision 1.21 by root, Sat Aug 4 17:48:15 2007 UTC

1WHAT IS CROSSFIRE? 1WHAT IS CROSSFIRE?
2 2
3 This is a multiplayer graphical arcade and adventure game, that runs on a 3 This is a multiplayer graphical arcade and adventure game, that runs on
4 client/server model. There are clients for Microsoft(R) Windows(TM) and 4 a client/server model. There are clients for Microsoft(R) Windows(TM)
5 POSIX systems such as Linux and *BSD. To get the most joyful experience, 5 and POSIX systems such as Linux and *BSD. To get the most joyful
6 the Crossfire+ client should be used. This client is written in Perl and 6 experience, the Crossfire+ client should be used. This client is written
7 utilises SDL with OpenGL. 7 in Perl and utilises SDL with OpenGL to provide you with the most
8 immersive gameplay.
8 9
9 Crossfire has certain flavours from other games, especially Gauntlet (TM) 10 Crossfire has certain flavours from other games, especially Gauntlet (TM)
10 and Nethack/Moria. 11 and Nethack/Moria.
11 12
12 Any number of players can move around in their own window, finding 13 Any number of players can move around in their own window on the
13 and using items and battle monsters. They can choose to cooperate 14 world, finding and using items and battle monsters. They can choose to
14 or compete in the same "world". 15 cooperate or compete in the same "world".
16
15 17
16REQUIREMENTS 18REQUIREMENTS
17 19
18 For UNIX, a modern C++ compiler with some extensions is required to 20 For UNIX, a modern C++ compiler with some extensions is required to
19 compile this game. In addition, you will need the Perl development 21 compile this game (g++ 4.x works). In addition, you will need the Perl
20 libraries along with the following Perl modules (the server is tested 22 development libraries along with the following Perl modules (the server
21 with perl 5.8.8 and 5.8-maint). 23 is tested with perl 5.8.8 and 5.8-maint) and their dependencies. (the
24 minimum versions below may not be up-to-date, the configure script will
25 check them all, though).
22 26
23 - Crossfire >= v0.97 27 - AnyEvent >= v2.52
24 - Coro >= v3.5 28 - BDB >= v0.1 **libdb4.5, libdb4.4 might work**
29 - Compress::LZF >= v1.8
30 - Coro >= v3.62 **SEE IMPORTANT NOTICE BELOW**
25 - Coro::Event >= v2.1 31 - Coro::Event >= v2.1
32 - Crossfire >= v0.99
33 - Digest::MD5 >= v2.0
26 - Event >= v1.08 34 - Event >= v1.08
27 - IO::AIO >= 2.32 35 - IO::AIO >= v2.4
28 - BDB >= v0.1 36 - JSON::XS => v1.41
37 - Pod::POM >= v0.17
38 - Safe::Hole >= v0.10
29 - Storable >= v2.0 39 - Storable >= v2.0
30 - Time::HiRes >= v1.0 40 - Time::HiRes >= v1.0
31 - YAML::Syck >= v0.71 41 - YAML::Syck >= v0.71
32 - Digest::MD5 >= v2.0 42 - YAML => v0.62
33 - Compress::LZF >= v1.71 43
34 - Safe::Hole >= v0.10 44 **NOTICE**: Crossfire uses an alternative signal stack, so you have to
35 - Pod::POM >= v0.17 45 use either the "u"context method (slow) or "a"ssembly when configuring Coro.
36 46
37 Furthermore, you will need the following programs and libraries: 47 Furthermore, you will need the following programs and libraries:
38 48
39 - gperf, the GNU perfect hash generator 49 - gperf, the GNU perfect hash generator >= v3.0
40 - glib-2.0 >= v2.10 50 - glib-2.0 >= v2.10
41 - libpng >= v1.2 51 - libpng >= v1.2
42 - ImageMagick >= 6.0 (convert must be in your PATH). 52 - ImageMagick >= v6.0 (possibly higher, depending on its bugs)
53 - optipng => v0.5.5 (http://optipng.sf.net)
54 - pngnq >= v0.4 (http://freshmeat.net/redir/pngnq/53146/url_homepage/pngnq.html)
55 - rsync >= v2.6 (a must have anyways)
43 56
44 Your compiler must support the Library Technical Report 1 extensions and 57 Your compiler must support the Library Technical Report 1 extensions and
45 the upcoming typeof extension. The GNU C++ compiler >= version 4.0 does 58 the upcoming typeof extension. The GNU C++ compiler >= version 4.0 does
46 support these. 59 support all these.
60
61 On Debian GNU/Linux, you might get away with something like this for many of the
62 above dependencies:
63
64 apt-get install gperf optipng pngnq rsync imagemagick libglib2.0-dev libpng12-dev
65 apt-get install libpod-pom-perl libsafe-hole-perl libevent-perl
66
67 If you want to get sensible backtraces for error conditions at runtime
68 to be logged you also need the external addr2line program (part of GNU
69 binutils) in your PATH.
70
47 71
48COMPILING 72COMPILING
49 73
50 Crossfire has been known to compile on a wide variety of systems. It should 74 Crossfire has been known to compile on a wide variety of systems. It should
51 compile and most all ISO C++ 200x and POSIX compliant systems. 75 compile and run on most ISO C++ 200x and POSIX compliant systems.
52 76
53 To get directions on compilation for UNIX/LINUX, read the INSTALL file. 77 To get generic directions on compilation, read the INSTALL file.
54 78
55USAGE
56 79
57 Crossfire runs on a client/server model. You will also need the client 80INSTALLATION/USAGE
58 to play. You can either connect to a server someone else has set up,
59 or run your own server and connect to that. The client package has
60 information for connecting to servers.
61 81
62 To run your own server, you need to make the crossfire binaries 82 Crossfire runs on a client/server model. You will also a client to
63 and install them, and then run the crossfire program. This now 83 play. You can either connect to a server someone else has set up, or
64 creates a server which you/other people can connect to. The map 84 run your own server and connect to that. There are a number of clients
65 files will need to get downloaded and installed for the server to run 85 available, but the recommended one is CFPlus (see below for URL).
66 properly. The map pack is released together with the server and can be
67 downloaded form the same location. The maps should be copied into the
68 $(TARGET)/share/crossfire/maps directory - after unpacking, you should
69 have a $(TARGET)/share/crossfire/maps/scorn directory.
70 86
71 If you plan to run a long term server, you should use one of the scripts 87 To run your own server, you need to build the crossfire server binaries
72 provided that will re-run crossfire if it dies for some reason. 88 and install them, then you will have to download and install map and
89 archetype packs:
73 90
91 Download both the cfmaps-<version> and cfarch-<version> archives, then
92 use cfutil to install both (the source directories must be writable for
93 this to work):
94
95 cfutil --install-maps path/to/cfmaps-<version>/
96 cfutil --install-arch path/to/cfarch-<version>/
97
98 Both processes can take some time, depending on your resources :) If you
99 plan to repeat the installation you should specify the --cache option
100 which will keep costly-to-generate files around for further runs of
101 cfutil.
102
103 Atfer this you can then run the crossfire executable. This starts a
104 server which you/other people can connect to.
105
106
74WEB SITES: 107WEB SITES
75 108
76 The following web addresses have crossfire information that you may find 109 The following web addresses have crossfire information that you may find
77 useful: 110 useful:
78 111
79 http://crossfire.schmorp.de/ (The main site) 112 http://crossfire.schmorp.de/ (The main site)
88 121
89 Bugs should be filed using the following email address: 122 Bugs should be filed using the following email address:
90 crossfire@schmorp.de 123 crossfire@schmorp.de
91 124
92 When reporting bugs, make sure you include the following: 125 When reporting bugs, make sure you include the following:
126
93 o What version of crossfire did you use? 127 * What version of crossfire did you use?
94 o What type of computer did you use (CPU type) 128 * What type of computer did you use (CPU type)
95 o What is the version of the OS? 129 * What is the version of the OS?
96 o What windowing system are you using (e.g. openwindows, X.org, XFree86) 130 * What windowing system are you using (e.g. openwindows, X.org, XFree86)
97 o What compiler (and its version) did you use (e.g. gcc, acc)? 131 * What compiler (and its version) did you use (e.g. gcc, acc)?
98 o Which flags did you give it? 132 * Which flags did you give it?
99 o If the bug happens when compiling crossfire, send an EXACT copy of the 133 * If the bug happens when compiling crossfire, send an EXACT copy of the
100 compiler line, as well as the errors it puts out. Sending bugs of the 134 compiler line, as well as the errors it puts out. Sending bugs of the
101 sort 'it failed with a line like ...' doesn't help any. 135 sort 'it failed with a line like ...' doesn't help any.
102 o If the bug happened while running crossfire: 136 * If the bug happened while running crossfire:
103 - Include any output before to the bug. 137 - Include any output before to the bug.
104 - Give a description of what you did before the bug occured. The better 138 - Give a description of what you did before the bug occured. The better
105 detailed the description, the better chance I have of figuring 139 detailed the description, the better chance we have of figuring
106 out where the bug happened, or how I can recreate the bug. 140 out where the bug happened, or how we can recreate the bug.
107 - If possible, a stack trace from gdb (or other debugger) is very 141 - If possible, a stack trace from gdb (or other debugger) is very
108 helpful. 142 helpful.
109 143
110The more information provided, the better chance of the bug being fixed in 144 The more information provided, the better chance of the bug being fixed
111a timely fashion. 145 in a timely fashion.
112 146
113------------------------------------------------------------------------------
114SUBMITTING PATCHES:
115Patches should be submitted to email address:
116 crossfire@schmorp.de
117 147
118PUBLIC SERVERS: 148SUBMITTING PATCHES
119 149
150 Patches should be submitted to email address:
151 crossfire@schmorp.de
152
153
154PUBLIC SERVERS
155
120The best way to find a server to play is to run the client. It will contact 156 The best way to find a server to play is to run the client
121the metaserver and present a list to choose from. You can also see 157 and hit "Server List" in the setup dialog (this varies
158 depending on your client). You can also see a list at
122a list at http://crossfire.real-time.com/metaserver/ 159 http://crossfire.real-time.com/metaserver/.
160
161 The canonical server for use with Crossfire and CFPlus is
162 crossfire.schmorp.de, port 13327 (default).
123 163
124 164
125COPYRIGHT 165COPYRIGHT
126 166
127 Copyright (C) 2007 Crossfire Development Team 167 Most files in this distribution are covered by the GNU General Public
128 Copyright (C) 2000, 2006 Mark Wedel 168 License, version 3 (COPYING.GPL), or any later version, with the
129 Copyright (C) 1992 Frank Tore Johansen 169 exception of ext/affero.ext, which is covered by the GNU Affero General
170 Public License, Version 3 (COPYING.Affero). Please take note of the
171 special requirements of the Affero license with respect to network
172 servers and configure your network server according to the instructions
173 given in ext/affero.ext.
130 174
131 This program is free software; you can redistribute it and/or modify
132 it under the terms of the GNU General Public License as published by
133 the Free Software Foundation; either version 2 of the License, or
134 (at your option) any later version.
135 175
136 This program is distributed in the hope that it will be useful, 176CONTACT
137 but WITHOUT ANY WARRANTY; without even the implied warranty of
138 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
139 GNU General Public License for more details.
140 177
141 You should have received a copy of the GNU General Public License 178 The authors can be reached via e-mail to crossfire@schmorp.de
142 along with this program; if not, write to the Free Software
143 Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
144 179
145 The authors can be reached via e-mail to crossfire@schmorp.de

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines