|
|
1.1 root 1: Quake2 3.20 For Linux
2: ---------------------
3:
4: Please see the readme.txt file included for general information about the
5: game. This file contains Linux specific information.
6:
7: Please see the file 3.20_Changes.txt for changes from previous versions.
8:
9: Requirements
10: ------------
11:
12: Quake2 for Linux supports the following video subsystems:
13:
14: - SVGALib Console Graphics (ref_soft.so)
15: - Requires SVGALib 1.2.0 or later
16: - X11 Window Graphics (ref_softx.so)
17: - X11R5 or later, XShm shared memory extension supported
18: - 3DFX fxMesa with Mesa 3-D or 3DFX Miniport (ref_gl.so)
19: - Mesa 3-D 2.6 or later, specifically compiled for 3DFX support
20: Mesa 3-D 2.6 compiled with 3DFX support is provided with this archive.
21: - Generic glX (X11) based OpenGL (ref_glx.so)
22: - Requires a glX based hardware accelerated OpenGL implementation.
23: Mesa 3-D 2.6 supports this on 3DFX hardware.
24:
25: Also included is a specific 3DFX mini-OpenGL implementation for running Quake2
26: on 3DFX hardware.
27:
28: Installation
29: ------------
30:
31: Make sure you have the appropirate hardware, drivers and libraries installed
32: for the renderer you are going to play on.
33:
34: Quake2 for Linux supports the following renderers:
35:
36: - ref_soft
37: Software rendering under SVGALib (console only). SVGALib 1.2.10 or later
38: is required. Note that SVGALib 1.2.11 supports the ability to run a
39: SVGALib application under X11 as it will automatically allocate a new
40: console. The default mode is 320x240 (ModeX) since that is the lowest
41: resolution supported by Quake2. If SVGALib supports your video card, higher
42: resolution modes such as 640x480 and 800x600 are also supported.
43:
44: Please note that you may need to configure your mouse for SVGALib in
45: /etc/vga/libvga.config (or /etc/libvga.config).
46:
47: - ref_softx
48: Software rendering under X11. This uses the MITSHM Extension and should
49: work will virtually all Linux X Servers. **NOTE: Do not resize the window
50: under X11. You must use the Video menu to change resolution/window size.
51:
52: By default, the mouse will not be 'tied' to the Quake2 window. To cause
53: Quake2 to grab the mouse, select 'Windowed Mouse' from the video menu,
54: or type '_windowed_mouse 0' at the console. Do the reverse to release it.
55: You can bind keys to grab and release the mouse in the console, like so:
56: bind i "_windowed_mouse 1"
57: bind o "_windowed_mouse 0"
58: Then "i" will grab the mouse and "o" will release it.
59:
60: - ref_gl
61: This render can be run with two different OpenGL drivers: Mesa 3-D
62: ontop of Linux GLIDE, or 3DFX's mini-OpenGL Quake driver.
63: For Mesa 3-D, the necessary libMesaGL.so.2.6 is included with this archive.
64: You must copy it to /usr/lib or /usr/local/lib and run ldconfig (as root)
65: in order to use it. You can do this as follows:
66: tar cf - lib*GL* | (cd /usr/lib; tar xf -)
67: You should use tar to keep the symlinks intact. Once you copy them over
68: run ldconfig.
69: You must also download and install the Linux GLIDE drivers at
70: http://www.3dfx.com/software/download_glidel.html
71: And install them as instructed.
72: RPMs for GLIDE are available at :
73: http://glide.xxedgexx.com/3DfxRPMS.html
74: With version 3.20, the GL library is entirely runtime loaded. This means
75: you can specify what shared object to load for GL display.
76: To use Mesa 3-D GL (console), run quake with:
77: ./quake2 +set vid_ref gl +set gl_driver libMesaGL.so.2
78: To use the 3DFX OpenGL Miniport, run the included quake2.3dfxgl:
79: ./quake2 +set vid_ref gl +set gl_driver lib3dfxgl.so
80: The gl_driver cvar indicates the name of the library to load for GL
81: functions. It can be in any directory listed in /etc/ld.so.conf
82: or in /etc/quake2.conf
83:
84: **NOTE: There is a problem on libc5 systems where a vid_restart (causing
85: a reload of the video system) will crash. There doesn't seem to be a
86: solution to this yet. It looks to be some sort of ld.so dynamic loading
87: interaction with SVGALib and ref_gl.so. A work around is to start in
88: software mode (./quake2 +set vid_ref soft), then use the menu to set your
89: mode and a vid_restart will work when going from software to GL. Exit
90: out then and save your video mode settings.
91: This problem does not occur on libc6 (glibc) based systems; vid_restart
92: works fine on there.
93:
94: - ref_glx
95: ref_glx should run on many different hardward OpenGL implementations under
96: Linux and X11. This binary is an X11 application and must be run under
97: X11. It will work with Mesa 3-D as a standard glX based OpenGL
98: applications. If the Mesa 3-D library is compiled with 3DFX support,
99: you can have Mesa 3-D support 3DFX hardware under X11 by setting the
100: enviroment variable "MESA_GLX_FX" to "fullscreen" for fullscreen mode
101: and "window" for windowed mode, eg. "export MESA_GLX_FX=fullscreen" for sh
102: or "setenv MESA_GLX_FX fullscreen" for csh.
103:
104: As with ref_gl, the "gl_driver" cvar indicates the shared library to load
105: for OpenGL functions (the glX functions must provided in that library
106: as well).
107:
108: To install the Quake2 data files, mount your Quake2 CD and copy
109: the directory install/data to the location where you want Quake2. You
110: can also symlink it, but I don't recommend that. Around 200MB of disk
111: space is required for a full installation.
112:
113: For example:
114: cp -r /mnt/cdrom/install/data/* /usr/games/quake2
115:
116: Permissions
117: -----------
118:
119: Quake2 requires root permissions to use the software (SVGALib) and GL (MesaGL
120: w/3dfx) renders. In order to make this secure, some special considerations
121: must be made.
122:
123: Quake2 should get setuid root:
124: chown root quake2
125: chmod 4711 quake2
126:
127: And the ref_soft.so and ref_gl.so files must owned by root.
128:
129: The file /etc/quake2.conf must be installed. This file contains a single
130: line with the path of where the ref shared libraries can be found.
131: A sample one is included that lists /usr/games/quake2 as the default
132: path. The libraries are only loaded out of the directory listed in
133: /etc/quake2.conf for security considerations.
134:
135: Special permissions are not required for the softx renderer, but quake2 may
136: still need to be setuid root to open the sound device (quake2 will give up
137: setuid root permissions before loading softx).
138:
139: NOTE: If you use a setuid quake2 binary and run it as a normal user, it
140: will NOT be able to switch renderers on the fly because root permissions
141: are given up after the renderer is loaded. You can switch renderers on the
142: fly if you run quake2 as root (su or log in as root).
143:
144: NOTE: When the quake2 binary is run in dedicated server mode
145: (+set dedicated 1), no special permissions are required and
146: /etc/quake2.conf is not read since no renderer is loaded.
147:
148: ----
149:
150: The first time you run Quake2, it will use ref_soft or ref_softx based
151: on whether a DISPLAY environment variable exists.
152:
153: To force the loading of a specific renderer at load time, use the following
154: command lines:
155:
156: ./quake2 +set vid_ref soft
157: ./quake2 +set vid_ref softx
158: ./quake2 +set vid_ref gl
159: ./quake2 +set vid_ref glx
160:
161: Linux Specific Cvars
162: --------------------
163:
164: To set this, use +set on the command line, i.e.:
165: ./quake2 +set cd_dev /dev/hdc +set sndmono 1
166:
167: nocdaudio (defaults to 0)
168: Do not enable cd audio if not zero
169:
170: sndbits (defaults to 16)
171: Set sound bit sample size.
172:
173: sndspeed (defaults to 0)
174: Set sound speed. Usual values are 8000, 11025, 22051 and 44100.
175: If set to zero, causes the sound driver to attempt speeds in the following
176: order: 11025, 22051, 44100, 8000.
177:
178: sndchannels (defaults to 2)
179: Indicates stereo or mono sound. Defaults to 2 (stereo). Use 1 for mono.
180:
181: nostdout (defaults to 0)
182: Whether to output console msgs to standard out. Non-zero is cease output.
183:
184: Dedicated server
185: ----------------
186:
187: To run Linux Quake2 as a dedicated server, just run it as follows:
188:
189: ./quake2 +set dedicated 1
190:
191: You can also set dmflags, timelimit, etc. in a config file, like so:
192: set timelimit 20
193: set fraglimit 25
194: set dmflags 532
195: map fact3
196:
197: Then exec that config file on load, like so:
198:
199: ./quake2 +set dedicated 1 +exec server.cfg
200:
201: If you use a config file, you must put a 'map' command in it or the
202: server won't load a map.
203:
204: To run a dedicated server in the background, use this;
205:
206: nohup ./quake2 +set dedicated 1 +exec server.cfg &
207:
208: A better way is to run Quake2 on a tty via screen. screen can be found
209: at ftp://prep.ai.mit.edu/pub/gnu/screen-3.7.4.tar.gz, but it comes with
210: most modern Linux installations now.
211:
212: -----------------------------------------------------------------------------
213:
214: Linux Quake2 is an unsupported product. Usage of this product is bound by
215: the legal notice found on the distribution Quake2 CDROM.
216:
217: /// Zoid
218: [email protected]
219:
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.