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

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

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines