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

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

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines