1 | WHAT IS CROSSFIRE? |
1 | WHAT IS CROSSFIRE? |
2 | |
2 | |
3 | This is a multiplayer graphical arcade and adventure game made for |
3 | This is a multiplayer graphical arcade and adventure game, that runs on |
4 | the X-Windows environment. It runs on a client/server model. |
4 | a client/server model. There are clients for Microsoft(R) Windows(TM) |
5 | The client runs with X11, GTK, or SDL within a gtk window. |
5 | and POSIX systems such as Linux and *BSD. To get the most joyful |
|
|
6 | experience, the Crossfire+ client should be used. This client is written |
|
|
7 | in Perl and utilises SDL with OpenGL to provide you with the most |
|
|
8 | immersive gameplay. |
6 | |
9 | |
7 | It has certain flavours from other games, especially Gauntlet (TM) |
10 | Crossfire has certain flavours from other games, especially Gauntlet (TM) |
8 | and Nethack/Moria. |
11 | and Nethack/Moria. |
9 | |
12 | |
10 | 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 |
11 | and using items and battle monsters. They can choose to cooperate |
14 | world, finding and using items and battle monsters. They can choose to |
12 | or compete in the same "world". |
15 | cooperate or compete in the same "world". |
|
|
16 | |
13 | |
17 | |
14 | REQUIREMENTS |
18 | REQUIREMENTS |
15 | |
19 | |
16 | For UNIX, X-windows and an ANSI C compiler to compile this game. |
20 | For UNIX, a modern C++ compiler with some extensions is required to |
17 | A window system is not needed if you don't want to compile the |
21 | compile this game (g++ 4.x works). In addition, you will need the Perl |
18 | map editor. |
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). |
19 | |
26 | |
20 | For Windows 9x, you need Visual C++ (or some other ANSI C |
27 | - AnyEvent >= 2.52 |
21 | compiler that can read ".dsw"-files). |
28 | - BDB >= v0.1 |
22 | |
29 | - Compress::LZF >= v1.8 |
|
|
30 | - Coro >= v3.62 **SEE IMPORTANT NOTICE BELOW** |
|
|
31 | - Coro::Event >= v2.1 |
|
|
32 | - Crossfire >= v0.98 |
|
|
33 | - Digest::MD5 >= v2.0 |
|
|
34 | - Event >= v1.08 |
|
|
35 | - IO::AIO >= 2.32 |
|
|
36 | - JSON::XS => 1.21 |
|
|
37 | - Pod::POM >= v0.17 |
|
|
38 | - Safe::Hole >= v0.10 |
|
|
39 | - Storable >= v2.0 |
|
|
40 | - Time::HiRes >= v1.0 |
|
|
41 | - YAML::Syck >= v0.71 |
|
|
42 | |
|
|
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. |
|
|
45 | |
|
|
46 | Furthermore, you will need the following programs and libraries: |
|
|
47 | |
|
|
48 | - gperf, the GNU perfect hash generator >= v3.0 |
|
|
49 | - glib-2.0 >= v2.10 |
|
|
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) |
|
|
55 | |
|
|
56 | Your compiler must support the Library Technical Report 1 extensions and |
|
|
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 | |
|
|
70 | |
23 | COMPILING |
71 | COMPILING |
24 | |
72 | |
25 | Crossfire has been known to compile on a wide variety of |
73 | Crossfire has been known to compile on a wide variety of systems. It should |
26 | systems. It should compile and most all ANSI C and Posix |
74 | compile and run on most ISO C++ 200x and POSIX compliant systems. |
27 | compliant systems. |
|
|
28 | |
75 | |
29 | To get directions on compilation for UNIX/LINUX, read the INSTALL file. |
76 | To get generic directions on compilation, read the INSTALL file. |
30 | For Win9x, read INSTALL_WIN32.txt. |
|
|
31 | |
|
|
32 | USAGE |
|
|
33 | |
|
|
34 | Crossfire runs on a client/server model. You will also need the |
|
|
35 | client to play. You can either connect to a server someone else |
|
|
36 | has set up, or run your own server and connect to that. The |
|
|
37 | client package has information for connecting to servers. |
|
|
38 | |
|
|
39 | To run your own server, you need to make the crossfire binaries and install |
|
|
40 | them, and then run the crossfire program. This now creates a server which |
|
|
41 | you/other people can connect to. The map files will need to get downloaded |
|
|
42 | and installed for the server to run properly. If you plan to run a long |
|
|
43 | term server, you should use one of the scripts provided that will re-run |
|
|
44 | crossfire if it dies for some reason. |
|
|
45 | |
|
|
46 | MAILING LIST |
|
|
47 | |
|
|
48 | For the latest subscription for crossfire mailing lists, go to: |
|
|
49 | http://crossfire.real-time.com/Website_Index/Mailing_Lists/mailing_lists.jhtml |
|
|
50 | |
|
|
51 | From there you should be able to subscribe/unsubscribe any of the mailing |
|
|
52 | lists. The mailing lists based off the ifi.uio.no host are being |
|
|
53 | discontinued. |
|
|
54 | |
|
|
55 | An archive of old messages can be found at |
|
|
56 | http://www.real-time.com/maillists/rte/crossfire |
|
|
57 | |
77 | |
58 | |
78 | |
59 | FTP SITES |
79 | INSTALLATION/USAGE |
60 | |
80 | |
61 | FTP-sites where you can look for the latest versions are: |
81 | Crossfire runs on a client/server model. You will also a client to |
|
|
82 | play. You can either connect to a server someone else has set up, or |
|
|
83 | run your own server and connect to that. There are a number of clients |
|
|
84 | available, but the recommended one is CFPlus (see below for URL). |
62 | |
85 | |
63 | ftp://ftp.sourceforge.net/pub/sourceforge/crossfire |
86 | To run your own server, you need to build the crossfire server binaries |
64 | ftp://ftp.real-time.com/pub/games/crossfire |
87 | and install them, then you will have to download and install map and |
|
|
88 | archetype packs: |
65 | |
89 | |
66 | Changes made since the latest release can be found at the CVS |
90 | Download both the cfmaps-<version> and cfarch-<version> archives, then |
67 | repository. Information on anonymous CVS access as |
91 | use cfutil to install both (the source directories must be writable for |
68 | the download CVS snapshots and browsing the repository can be |
92 | this to work): |
69 | found at: |
|
|
70 | http://sourceforge.net/cvs/?group_id=13833 |
|
|
71 | |
93 | |
|
|
94 | cfutil --install-maps path/to/cfmaps-<version>/ |
|
|
95 | cfutil --install-arch path/to/cfarch-<version>/ |
72 | |
96 | |
73 | If you are looking for a windows/NT client, look at: |
97 | Both processes can take some time, depending on your resources :) If you |
74 | http://mids.student.utwente.nl/%7Emichtoen/crossfire/ |
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 | |
75 | |
105 | |
76 | WEB SITES: |
106 | WEB SITES: |
77 | |
107 | |
78 | The following web addresses have crossfire information that you may find |
108 | The following web addresses have crossfire information that you may find |
79 | useful: |
109 | useful: |
80 | |
110 | |
81 | http://crossfire.real-time.com/ |
111 | http://crossfire.schmorp.de/ (The main site) |
82 | real-time is the main crossfire site. |
112 | |
|
|
113 | http://crossfire.real-time.com/ (The website for the old Crossfire game) |
83 | |
114 | |
84 | |
115 | |
85 | REPORTING BUGS |
116 | REPORTING BUGS |
86 | |
117 | |
87 | First, check the INSTALL file for common problems, and see if yours is |
118 | First, check the INSTALL file for common problems, and see if yours is |
88 | mentioned. |
119 | mentioned. |
89 | |
120 | |
90 | The mailing list is where present development work and bugs are typically |
121 | Bugs should be filed using the following email address: |
91 | discussed. If you want to know what is happening with crossfire, join the |
122 | crossfire@schmorp.de |
92 | list and please ask there. |
|
|
93 | |
|
|
94 | I will likely delete mail messages of the following sort: |
|
|
95 | 1) Bug reports of failed installation when the installation instructions |
|
|
96 | were not followed. |
|
|
97 | 2) Bug reports that contain so little information that it tells me nothing |
|
|
98 | more than the fact that there is a bug. |
|
|
99 | 3) Bugs in which the solution has already been answered in the INSTALL |
|
|
100 | file. |
|
|
101 | |
123 | |
102 | When reporting bugs, make sure you include the following: |
124 | When reporting bugs, make sure you include the following: |
|
|
125 | |
103 | o What version of crossfire did you use? |
126 | * What version of crossfire did you use? |
104 | o What type of computer did you use? |
127 | * What type of computer did you use (CPU type) |
105 | o What release of the operating system did it have? |
128 | * What is the version of the OS? |
106 | o What windowing system are you using (Ie, openwindows, X11R6, etc) |
129 | * What windowing system are you using (e.g. openwindows, X.org, XFree86) |
107 | o What compiler (and its version) did you use (ie, gcc, acc, etc)? |
130 | * What compiler (and its version) did you use (e.g. gcc, acc)? |
108 | o Which flags did you give it? |
131 | * Which flags did you give it? |
109 | o If the bug happens when compiling crossfire, send an EXACT copy of |
132 | * If the bug happens when compiling crossfire, send an EXACT copy of the |
110 | the compiler line, as well as the errors it puts out. Sending bugs |
133 | compiler line, as well as the errors it puts out. Sending bugs of the |
111 | of the sort 'it failed with a line like ...' doesn't help any. |
134 | sort 'it failed with a line like ...' doesn't help any. |
112 | o If the bug happened while running crossfire: |
135 | * If the bug happened while running crossfire: |
113 | - Include any output before to the bug. |
136 | - Include any output before to the bug. |
114 | - 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 |
115 | detailed the description, the better chance I have of figuring |
138 | detailed the description, the better chance we have of figuring |
116 | 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. |
117 | o If you managed to compile Crossfire, include the output of |
140 | - If possible, a stack trace from gdb (or other debugger) is very |
118 | "crossfire -o". |
141 | helpful. |
119 | |
142 | |
120 | Lack of any of this information in a bug report can make that bug report |
143 | The more information provided, the better chance of the bug being fixed |
121 | useless. Also, if you have a bug, make sure you are using the latest |
144 | in a timely fashion. |
122 | version. If you report a bug that has since been fixed, you are not likely |
|
|
123 | to get any help. |
|
|
124 | |
145 | |
125 | Further debugging informatiion can be found at |
146 | SUBMITTING PATCHES: |
126 | http://crossfire.real-time.com/debugging_tips.html |
|
|
127 | |
147 | |
128 | Mail the bug report to crossfire-devel@listserv.real-time.com |
148 | Patches should be submitted to email address: |
129 | |
149 | crossfire@schmorp.de |
130 | ------------------------------------------------------------------------------ |
|
|
131 | SUBMITTING PATCHES: See the doc/programming_guide file. |
|
|
132 | |
|
|
133 | |
150 | |
134 | PUBLIC SERVERS: |
151 | PUBLIC SERVERS: |
135 | |
152 | |
136 | The 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 |
137 | the 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 |
138 | a list at http://crossfire.real-time.com/metaserver/ |
156 | http://crossfire.real-time.com/metaserver/. |
139 | |
157 | |
|
|
158 | The canonical server for use with Crossfire and CFPlus is |
|
|
159 | crossfire.schmorp.de, port 13327 (default). |
140 | |
160 | |
141 | COPYRIGHT |
161 | COPYRIGHT |
142 | |
162 | |
143 | Don't get scared by the below, it's included just for "safety" reasons 8) |
163 | Copyright (C) 2006,2007 Crossfire TRT Development Team |
144 | (Don't want anyone to start selling the game) |
164 | Copyright (C) 2000,2006 Mark Wedel |
|
|
165 | Copyright (C) 1992 Frank Tore Johansen |
145 | |
166 | |
146 | Copyright (C) 2000 Mark Wedel |
167 | This program is free software; you can redistribute it and/or modify |
147 | Copyright (C) 1992 Frank Tore Johansen |
168 | it under the terms of the GNU General Public License as published by |
|
|
169 | the Free Software Foundation; either version 2 of the License, or |
|
|
170 | (at your option) any later version. |
148 | |
171 | |
149 | This program is free software; you can redistribute it and/or modify |
172 | This program is distributed in the hope that it will be useful, |
150 | it under the terms of the GNU General Public License as published by |
173 | but WITHOUT ANY WARRANTY; without even the implied warranty of |
151 | the Free Software Foundation; either version 2 of the License, or |
174 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
152 | (at your option) any later version. |
175 | GNU General Public License for more details. |
153 | |
176 | |
154 | This program is distributed in the hope that it will be useful, |
177 | You should have received a copy of the GNU General Public License |
155 | but WITHOUT ANY WARRANTY; without even the implied warranty of |
178 | along with this program; if not, write to the Free Software |
156 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
179 | Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. |
157 | GNU General Public License for more details. |
|
|
158 | |
180 | |
159 | You should have received a copy of the GNU General Public License |
|
|
160 | along with this program; if not, write to the Free Software |
|
|
161 | Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. |
|
|
162 | |
|
|
163 | The author can be reached via e-mail to mwedel@scruz.net |
181 | The authors can be reached via e-mail to crossfire@schmorp.de |