expanded the Replacement Content section with some example filenames and other inform...
[divverent/darkplaces.git] / darkplaces.txt
1 DarkPlaces engine readme : updated 20060614\r
2 \r
3 About the DarkPlaces glquake engine:\r
4 DarkPlaces engine was started because I was unsatisfied with the other engines\r
5 available soon after the quake source release (which did little more than add\r
6 some flashy effects), and craved modding features for my DarkPlaces mod, and\r
7 wanted some real enhancements to the online gaming experience as well.\r
8 \r
9 DarkPlaces engine is the result, I hope everyone likes it.\r
10 \r
11 See the end of this file for information on how to install Quake from CD on\r
12 Windows, Mac OSX, and Linux.\r
13 \r
14 I am not very good at writing documentation, so this readme is organized as a\r
15 feature list, with information on each feature, I hope it is still adequate\r
16 documentation.\r
17 \r
18 If you have any suggestions for features to document in detail in the readme or any other questions/comments/bugreports/suggestions/etc, send me an email at lordhavoc@ghdigital.com\r
19 \r
20 \r
21 \r
22 Input Tips:\r
23 If mouse movement is jerky but framerate is high, try typing "gl_finish 1"\r
24 (without quotes) into the console (makes cpu wait for gpu before ending frame,\r
25 which gives lousy input drivers a chance to catch up).\r
26 \r
27 \r
28 \r
29 Graphics Tips:\r
30 Visit the Color Control submenu of Options, it's near the top, fiddle with\r
31 gamma (or grey level if using the color levels mode) until the grey box\r
32 surrounding the white/black dither pattern matches up with the grey you see\r
33 while looking at the dither from a distance, this will calibrate quake to look\r
34 approximately as id Software intended, and ensure everyone sees it the same.\r
35 Note: Different resolutions may be different intensities depending on monitor.\r
36 Note2: ATI Radeon Catalyst 3.10 drivers seem to have a weird gamma limiting\r
37 'feature' which rejects gamma settings it doesn't like, feel free to complain\r
38 to ATI about this if it gets in your way (it probably will).\r
39 \r
40 Visit the Effects Options submenu of Options, and check out the options.\r
41 \r
42 Networking tips:\r
43 Visit the Player Setup submenu of the Multiplayer menu to configure your\r
44 network speed (as well as the usual settings from quake like name and colors).\r
45 \r
46 To host a server behind a router/firewall, simply set up a port forward on the\r
47 UDP port you are running the server on (default is 26000), to forward incoming\r
48 UDP packets on that port to the server, then people can connect.\r
49 \r
50 To make your server show up on the server browser (in the Join Game menu),\r
51 either set sv_public 1 in the console, or use the multiplayer new game menu\r
52 and check the Public server checkbox.\r
53 \r
54 \r
55 \r
56 Thanks to:\r
57 Tomaz for adding features, fixing many bugs, and being generally helpful.\r
58 Andreas 'Black' Kirsch for much work on the QuakeC VM (menu.dat, someday clprogs.dat) and other contributions.\r
59 Mathieu 'Elric' Olivier for much work on the sound engine (especially the Ogg vorbis support)\r
60 MoALTz for some bugfixes and cleanups\r
61 Joseph Caporale for adding 5 mouse button support.\r
62 KGB|romi for his contributions to the Quake community, including his rtlights project and many suggestions, his id1 romi_rtlights.pk3 is included in darkplaces mod releases.\r
63 Zombie for making great levels and general DarkPlaces publicity.\r
64 FrikaC for FrikQCC and FrikBot and general community support.\r
65 Transfusion Project for recreating Blood in the world of Quake.\r
66 de-we for the great icons.\r
67 |Rain| for running my favorite anynet IRC server and his bot feh (which although a bit antisocial never seems to grow tired of being my calculator).\r
68 VorteX for the DP_QC_GETTAGINFO extension.\r
69 Ludwig Nussel for the ~/.games/darkplaces/ user directory support on non-Windows platforms (allowing games to be installed in a non-writable system location as is the standard on UNIX but still save configs to the user's home directory).\r
70 \r
71 \r
72 \r
73 Supported games:\r
74 Quake : -quake, this is active by default, gamedirs: id1\r
75 Quake: Scourge of Armagon : -hipnotic or hipnotic in executable name or path, gamedirs: hipnotic, id1\r
76 Quake: Dissolution of Eternity : -rogue or rogue in executable name or path, gamedirs: rogue, id1\r
77 Nehahra : -nehahra or nehahra in executable name or path, gamedirs: nehahra, id1\r
78 GoodVsBad2 : -goodvsbad2 or gvb2 in executable name or path, gamedirs: rts\r
79 BattleMech : -battlemech or battlemech in executable name or path, gamedirs: base\r
80 PrydonGate : -prydon or prydon in executable name or path, gamedirs: prydon\r
81 These games are considered officially supported, if any problems are seen,\r
82 please make sure you are running the latest version of the game and engine,\r
83 if you are, please report the problem.\r
84 \r
85 \r
86 \r
87 Future supported games:\r
88 Nexuiz : -nexuiz or nexuiz in executable name or path, gamedirs: data\r
89 Zymotic : -zymotic or zymotic in executable name or path, gamedirs: data\r
90 Fniggium : -fniggium or fniggium in executable name or path, gamedirs: data\r
91 Setheral : -setheral or setheral in executable name or path, gamedirs: data\r
92 SonOfMan : -som or som in executable name or path, gamedirs: data\r
93 These have incomplete support and will likely change before their release.\r
94 \r
95 \r
96 \r
97 Graphics features:\r
98 Redesigned effects including smoke, blood, bubbles and explosions.\r
99 Better looking dynamic lights.\r
100 External texture support (see Replacement Content section below)\r
101 Realtime bumpmapped lighting/shadowing support (see r_shadow_help in game)\r
102 .rtlights file support (improves performance/appearance of realtime lighting)\r
103 .rtlights file editing (see r_editlights_help in game)\r
104 Alpha blended sprites (instead of glquake's masked sprites).\r
105 Interpolated entity movement and animations (both models and sprites).\r
106 Overbright and fullbright support on walls and models (like winquake).\r
107 Colormapping support on any q1 model (like winquake).\r
108 Fog (set with "fog density red green blue" command)\r
109 Skybox (loadsky "mtnsun_" will load "env/mtnsun_ft.tga" and so on).\r
110 Sky rendering improved (no more glquake distortion).\r
111 Sky polygons obscure geometry just like in winquake.\r
112 Color calibration menu to ensure a proper Quake experience.\r
113 Improved model lighting (directional shading).\r
114 No messy .ms2 model mesh files (no glquake dir anymore either).\r
115 New improved crosshair (team color coded).\r
116 Improved image loading (smoother menus and such).\r
117 Ability to disable particle effects (cl_particles* cvars).\r
118 Decals (cl_decals cvar to enable).\r
119 Stainmaps (cl_stainmap cvar to enable).\r
120 Sorted transparent stuff to render better.\r
121 Improved multitexture support (r_textureunits (1-4 supported), needs gl_combine 1 because of overbright)\r
122 Improved chase cam (chase_active 1 no longer goes into walls)\r
123 More configurable console background (scr_conalpha and scr_conbrightness)\r
124 Optional fullbrights (r_fullbrights 0/1 followed by r_restart)\r
125 Dynamic Farclip (no distance limits in huge maps)\r
126 Improved gl_flashblend (now renders a corona instead of an ugly blob)\r
127 DynamicLight coronas (more realism)\r
128 Transparent statusbar (sbar_alpha) that does not block your view as much.\r
129 No 8bit texture uploads (fixes 'green' walls in the distance).\r
130 Fixed view blends (glquake was quite broken).\r
131 JPEG texture support using libjpeg (Thanks Elric)\r
132 PK3 archive support with compression support using zlib (Thanks Elric)\r
133 \r
134 \r
135 \r
136 Sound features:\r
137 Ogg and wav file overrides for cd tracks (example: sound/cdtracks/track01.ogg or .wav) (Thanks Elric)\r
138 Streaming ogg sounds to save memory (Ogg sounds over a certain size are streamed automatically) (Thanks Elric)\r
139 Ogg Vorbis sound support (all .wav sounds look for .ogg if the .wav is missing, useful for making mods smaller, particularly for ambientsound() music) (Thanks Elric)\r
140 Stereo wav support (useful for music as ambientsound() calls)\r
141 \r
142 \r
143 \r
144 Client features:\r
145 showtime cvar.\r
146 showdate cvar.\r
147 -benchmark option to run automated timedemo benchmarks (-benchmark demo1 does +timedemo demo1 and quits immediately when finished)\r
148 automatic timedemo logging to gamedir/benchmark.log\r
149 Slightly improved aiming on quake servers (does not support proquake aiming).\r
150 -sndspeed samplerate (default: 44100, quake used 11025)\r
151 snd_swapstereo cvar (for people with backwards SB16 sound cards)\r
152 Saves video settings to config and restores them properly\r
153 Ability to change video settings during game (video options menu or vid_* cvars)\r
154 showfps cvar.\r
155 Video Options, Color Control, and Effects Options menus added, and more options.\r
156 Sends 20fps network packets to improve modem play instead of one per frame. (sys_ticrate controls network framerate)\r
157 Allow skin colormaps 14 and 15 (freaky :)\r
158 Longer chat messages.\r
159 No more 72fps limit, host_maxfps lets you decide.\r
160 Support for more mouse buttons (mouse1-mouse16, mwheelup/mwheeldown are aliases to mouse4 and mouse5).\r
161 Server browser for public (sv_public 1) darkplaces servers.\r
162 log_file cvar to log console messages to a file.\r
163 condump command to dump recent console history to a file.\r
164 \r
165 \r
166 \r
167 Server features: (Note server only supports darkplaces clients)\r
168 Allows clients to connect through firewalls (automatic feature)\r
169 Works behind firewalls unlike NetQuake (must port forward UDP packets on the relevant port from the firewall to the server, as with any game)\r
170 More accurate movement and precise aiming.\r
171 64 player support.\r
172 sv_cheats cvar controls cheats (no longer based on deathmatch).\r
173 slowmo cvar controls game speed.\r
174 No crash with the buggy 'teleport train' in shub's pit.\r
175 Allow skin colormaps 14 and 15 (freaky :)\r
176 sys_ticrate applies to listen (client) servers as well as dedicated.\r
177 sv_public cvar to advertise to master server.\r
178 log_file cvar to log console messages to a file.\r
179 condump command to dump recent console history to a file.\r
180 \r
181 \r
182 \r
183 Modding features:\r
184 HalfLife map support (place your HalfLife wads in quake/id1/textures/ or quake/MODDIR/textures/ as the maps need them)\r
185 Larger q1 and hl map size of +-32768 units.\r
186 Colored lighting (.lit support) for q1 maps.\r
187 Q3 map support (no shaders though), with no limits.\r
188 Q2 and Q3 model support, with greatly increased limits (256 skins, 65536 frames, 65536 vertices, 65536 triangles).  (Note: md2 player models are not supported because they have no skin list)\r
189 Optimized QuakeC interpreter so mods run faster.\r
190 Bounds checking QuakeC interpreter so mods can't do naughty things with memory.\r
191 Warnings for many common QuakeC errors.\r
192 Unprecached models are now a warning (does not kill the server anymore).\r
193 External texture support (see dpextensions.qc DP_GFX_EXTERNALTEXTURES).\r
194 Fog ("fog" key in worldspawn, same parameters as fog command).\r
195 .spr32 and halflife .spr sprites supported.  (Use Krimzon's tool to make spr32, and lhfire can render directly to spr32, or just use replacement textures on .spr).\r
196 Skybox ("sky" key in worldspawn, works like loadsky and quake2).\r
197 Stereo wav sounds supported.\r
198 Ogg Vorbis sounds supported. (Thanks Elric)\r
199 ATTN_NONE sounds are no longer directional (good for music).\r
200 play2 sound testing command (ATTN_NONE variant of play).\r
201 r_texturestats and memstats and memlist commands to give memory use info.\r
202 Lighting on sprites (put ! anywhere in sprite filename to enable).\r
203 More r_speeds info (now a transparent overlay instead of spewing to console).\r
204 Supports rotating bmodels (use avelocity, and keep in mind the bmodel needs the "origin" key set to rotate (read up on hipnotic rotation support in your qbsp docs, or choose another qbsp if yours does not support this feature), or in q3 maps an origin brush works).\r
205 More sound channels.\r
206 More dynamic lights (32 changed to 256).\r
207 More precached models and sounds (256 changed to 4096).\r
208 Many more features documented in dpextensions.qc. (bullet tracing on models, qc player input, etc)\r
209 \r
210 \r
211 \r
212 Replacement Content:\r
213 Formats supported: tga, png, jpg, pcx, lmp\r
214 \r
215 Usually you want to put replacement content in either id1/ or another directory such as pretty/ inside your quake directory, in DarkPlaces you can run multiple -game options at once (such as -game ctf -game pretty -game dpmod to have texture overrides from pretty, maps from ctf, and gameplay from dpmod) or multiple gamedirs specified with the gamedir console command (gamedir ctf pretty dpmod).\r
216 \r
217 All texture layers are optional except diffuse (the others are NOT loaded without it):\r
218 skins:\r
219 progs/player.mdl_0.tga - diffuse\r
220 progs/player.mdl_0_norm.tga - normalmap (can have alpha channel with bumpmap height for offsetmapping/reliefmapping)\r
221 progs/player.mdl_0_bump.tga - bumpmap (not loaded if normalmap is present)\r
222 progs/player.mdl_0_glow.tga - glow map (use _luma if tenebrae compatibility is a concern)\r
223 progs/player.mdl_0_luma.tga - alternate tenebrae-compatible name for glow map (use one or the other)\r
224 progs/player.mdl_0_pants.tga - pants image, greyscale and does not cover the same pixels as the diffuse texture (this is additive blended ('Screen' mode in photoshop) ontop of the diffuse texture with a color tint according to your pants color)\r
225 progs/player.mdl_0_shirt.tga - shirt image, same type as pants\r
226 \r
227 map-specific textures:  (overrides textures for a specific map)\r
228 textures/e1m1/ecop1_6.tga\r
229 textures/e1m1/ecop1_6_norm.tga\r
230 textures/e1m1/ecop1_6_bump.tga\r
231 textures/e1m1/ecop1_6_glow.tga\r
232 textures/e1m1/ecop1_6_luma.tga\r
233 textures/e1m1/ecop1_6_pants.tga - pants and shirt layers are possible on bmodel entities with quakec modifications to set their .colormap field\r
234 textures/e1m1/ecop1_6_shirt.tga\r
235 \r
236 map textures:\r
237 textures/quake.tga\r
238 textures/quake_norm.tga\r
239 textures/quake_bump.tga\r
240 textures/quake_glow.tga\r
241 textures/quake_luma.tga\r
242 textures/quake_pants.tga\r
243 textures/quake_shirt.tga\r
244 \r
245 hud and menu pictures:\r
246 gfx/conchars.tga\r
247 \r
248 Replacement models:\r
249 same as in Quake, you can replace a model with exactly the same file name (including file extension), so for example an md3 player model has to be renamed progs/player.mdl, and a small box of shells in md3 format has to be renamed maps/b_shell0.bsp\r
250 \r
251 .skin files:\r
252 These files use the same format as the ones in Quake3 (except being named <modelname>_0.skin, <modelname>_1.skin, and so on), they specify what texture to use on each part of the md3 (or zym or dpm or psk) model, their contents look like this:\r
253 torso,progs/player_default.tga                   (says that the model part named "torso" should use the image progs/player_default.tga)\r
254 gun,progs/player_default.tga                     (says that the model part named "gun" should use the image progs/player_default.tga)\r
255 muzzleflash,progs/player_default_muzzleflash.tga (says that the model part named "muzzleflash" should use the image progs/player_default_muzzleflash.tga - this is useful for transparent skin areas which should be kept separate from opaque skins)\r
256 tag_head,                                        (says that the first tag is named "tag_head" - this is only useful for QuakeC mods using segmented player models so that they can look up/down without their legs rotating, don't worry about it as a user)\r
257 tag_torso,                                       (second tag name)\r
258 tag_weapon,                                      (third tag name)\r
259 \r
260 \r
261 Example list of filenames:\r
262 quake/id1/progs/player.mdl               (replaces the player model)\r
263 quake/id1/progs/player.mdl_0.skin        (text file that specifies textures to use on an md3 model)\r
264 quake/id1/progs/player_default.tga       (texture referenced by the .skin, make sure that any special parts of this are black, like pants should be black here otherwise you get pink pants when you use a red color ingame)\r
265 quake/id1/progs/player_default_pants.tga (white pants area of the skin, this is colored by the engine according to your color settings, additive blended (which is called "Screen" mode in Photoshop if you wish to preview the layers))\r
266 quake/id1/progs/player_default_shirt.tga (white shirt area of the skin, similar to pants described above)\r
267 quake/id1/progs/player_default_norm.tga  (normalmap texture for player_default, alpha channel can contain a heightmap for offsetmapping (r_glsl_offsetmapping 1 in console) to use, alternatively you can use _bump.tga instead of this which is only a heightmap and the engine will generate the normalmap for you)\r
268 quake/id1/progs/player_default_gloss.tga (glossmap (shiny areas) for player_default)\r
269 quake/id1/progs/player_default_glow.tga  (glowmap (glowing stuff) for player_default, this is fullbrights and such, be sure the corresponding pixels are black in the player_default.tga, because just like pants/shirt this is additive blended)\r
270 quake/id1/textures/quake.tga             (replaces the quake logo on the arch in start.bsp)\r
271 quake/id1/textures/quake_norm.tga        (same as for a player)\r
272 quake/id1/textures/quake_gloss.tga       (same as for a player)\r
273 quake/id1/textures/#water1.tga           (replaces *water1 texture in the maps, # is used instead of * in filenames)\r
274 quake/id1/gfx/conchars.tga               (replacement font image, this was in gfx.wad in quake)\r
275 quake/id1/gfx/conback.tga                (replacement console background, just like in quake)\r
276 quake/id1/gfx/mainmenu.tga               (replacement main menu image, just like in quake)\r
277 quake/id1/maps/b_bh25.bsp                (replacement for normal health pack, for example this could be an md3 model instead)\r
278 \r
279 \r
280 \r
281 Commandline options as of 2004-10-05:\r
282 BSD GLX: -gl_driver <drivername> selects a GL driver library, default is libGL.so.1, useful only for using fxmesa or similar, if you don't know what this is for, you don't need it\r
283 BSD GLX: -nogetprocaddress disables GLX_ARB_get_proc_address (not required, more formal method of getting extension functions)\r
284 BSD GLX: -novideosync disables GLX_SGI_swap_control\r
285 BSD Sound: -cddev <devicepath> chooses which CD drive to use\r
286 Client: -benchmark <demoname> runs a timedemo and quits, results of any timedemo can be found in gamedir/benchmark.log (for example id1/benchmark.log)\r
287 Client: -forceqmenu disables menu.dat (same as +forceqmenu 1)\r
288 Client: -particles <number> changes maximum number of particles at once, default 32768\r
289 Client: -texbrightness <number> sets the quake palette brightness (brightness of black), allowing you to make quake textures brighter/darker, not recommended\r
290 Client: -texcontrast <number> sets the quake palette contrast, allowing you to make quake textures brighter/darker, not recommended\r
291 Client: -texgamma <number> sets the quake palette gamma, allowing you to make quake textures brighter/darker, not recommended\r
292 Client: -useqmenu causes the first time you open the menu to use the quake menu, then reverts to menu.dat (if forceqmenu is 0)\r
293 Console: -condebug logs console messages to qconsole.log with sync on (so it keeps every message up to a crash), see also log_file and log_sync\r
294 Console: -developer enables warnings and other notices (RECOMMENDED for mod developers)\r
295 Console: -nostdout disables text output to the terminal the game was launched from\r
296 Filesystem: -basedir <path> chooses what base directory the game data is in, inside this there should be a data directory for the game (for example id1)\r
297 Filesystem: -path <path ..> specifies the full search path manually, overriding the generated one, example: -path c:\quake\id1 c:\quake\pak0.pak c:\quake\pak1.pak (not recommended)\r
298 GL: -noanisotropy disables GL_EXT_texture_filter_anisotropic (allows higher quality texturing)\r
299 GL: -nocombine disables GL_ARB_texture_env_combine or GL_EXT_texture_env_combine (required for bumpmapping and faster map rendering)\r
300 GL: -nocubemap disables GL_ARB_texture_cube_map (required for bumpmapping)\r
301 GL: -nocva disables GL_EXT_compiled_vertex_array (renders faster)\r
302 GL: -nodot3 disables GL_ARB_texture_env_dot3 (required for bumpmapping)\r
303 GL: -nodrawrangeelements disables GL_EXT_draw_range_elements (renders faster)\r
304 GL: -noedgeclamp disables GL_EXT_texture_edge_clamp or GL_SGIS_texture_edge_clamp (recommended, some cards do not support the other texture clamp method)\r
305 GL: -nofragmentshader disables GL_ARB_fragment_shader (currently unused, allows pixel shader effects)\r
306 GL: -nomtex disables GL_ARB_multitexture (required for faster map rendering)\r
307 GL: -noshaderobjects disables GL_ARB_shader_objects (required for vertex shader and fragment shader)\r
308 GL: -noshadinglanguage100 disables GL_ARB_shading_language_100 (required for vertex shader and fragment shader)\r
309 GL: -nostenciltwoside disables GL_EXT_stencil_two_side (accelerates shadow rendering)\r
310 GL: -notexture3d disables GL_EXT_texture3D (required for spherical lights, otherwise they render as a column)\r
311 GL: -notextureshader disables GL_NV_texture_shader (required for the Geforce3 water shader, NVIDIA only)\r
312 GL: -novertexshader disables GL_ARB_vertex_shader (currently unused, allows vertex shader effects)\r
313 Game: -battlemech runs the multiplayer topdown deathmatch game BattleMech\r
314 Game: -fniggium runs the post apocalyptic melee RPG Fniggium\r
315 Game: -goodvsbad2 runs the psychadelic RTS FPS game Good Vs Bad 2\r
316 Game: -hipnotic runs Quake mission pack 1: The Scourge of Armagon\r
317 Game: -nehahra runs The Seal of Nehahra movie and game\r
318 Game: -neoteric runs the game Neoteric\r
319 Game: -netherworld runs the game Netherworld: Dark Masters\r
320 Game: -nexuiz runs the multiplayer game Nexuiz\r
321 Game: -openquartz runs the game OpenQuartz, a standalone GPL replacement of the quake content\r
322 Game: -prydon runs the topdown point and click action-RPG Prydon Gate\r
323 Game: -quake runs the game Quake (default)\r
324 Game: -rogue runs Quake mission pack 2: The Dissolution of Eternity\r
325 Game: -setheral runs the multiplayer game Setheral\r
326 Game: -som runs the multiplayer game Son Of Man\r
327 Game: -tenebrae runs the graphics test mod known as Tenebrae (some features not implemented)\r
328 Game: -teu runs The Evil Unleashed (this option is obsolete as they are not using darkplaces)\r
329 Game: -transfusion runs Transfusion (the recreation of Blood in Quake)\r
330 Game: -zymotic runs the singleplayer game Zymotic\r
331 Input: -nomouse disables mouse support (see also vid_mouse cvar)\r
332 Linux ALSA Sound: -sndbits <number> sets sound precision to 8 or 16 bit (email me if you want others added)\r
333 Linux ALSA Sound: -sndmono sets sound output to mono\r
334 Linux ALSA Sound: -sndpcm <devicename> selects which pcm device to us, default is "default"\r
335 Linux ALSA Sound: -sndspeed <hz> chooses 44100 hz, 22100 hz, or 11025 hz sound output rate\r
336 Linux ALSA Sound: -sndstereo sets sound output to stereo\r
337 Linux GLX: -gl_driver <drivername> selects a GL driver library, default is libGL.so.1, useful only for using fxmesa or similar, if you don't know what this is for, you don't need it\r
338 Linux GLX: -nogetprocaddress disables GLX_ARB_get_proc_address (not required, more formal method of getting extension functions)\r
339 Linux GLX: -novideosync disables GLX_SGI_swap_control\r
340 Linux OSS Sound: -sndbits <bits> chooses 8 bit or 16 bit sound output\r
341 Linux OSS Sound: -sndmono sets sound output to mono\r
342 Linux OSS Sound: -sndspeed <hz> chooses 44100 hz, 22100 hz, or 11025 hz sound output rate\r
343 Linux OSS Sound: -sndstereo sets sound output to stereo\r
344 Linux Sound: -cddev <devicepath> chooses which CD drive to use\r
345 MacOSX GLX: -nogetprocaddress disables GLX_ARB_get_proc_address (not required, more formal method of getting extension functions)\r
346 MacOSX GLX: -novideosync disables GLX_SGI_swap_control\r
347 SDL GL: -gl_driver <drivername> selects a GL driver library, default is libGL.so.1 (Linux/BSD) or opengl32.dll (windows) or OpenGL.framework (MacOSX), useful only for 3dfxogl.dll/3dfxvgl.dll or fxmesa or similar, if you don't know what this is for, you don't need it\r
348 SDL Sound: -sndspeed <hz> chooses 44100 hz, 22100 hz, or 11025 hz sound output rate\r
349 Server: -dedicated [playerlimit] starts a dedicated server (with a command console), default playerlimit is 8\r
350 Server: -ip <ipaddress> sets the ip address of this machine for purposes of networking (default also known as INADDR_ANY), use only if you have multiple network adapters and need to choose one specifically.\r
351 Server: -listen [playerlimit] starts a multiplayer server with graphical client, like singleplayer but other players can connect, default playerlimit is 8\r
352 Server: -port <portnumber> sets the port to use for a server (default 26000, the same port as QUAKE itself), useful if you host multiple servers on your machine\r
353 Sound: -nocdaudio disables CD audio support\r
354 Sound: -nosound disables sound (including CD audio)\r
355 Sound: -novorbis disables ogg vorbis sound support\r
356 Sound: -simsound runs sound mixing but with no output\r
357 Video: -bpp <bits> performs +vid_bitsperpixel <bits> (example -bpp 32 or -bpp 16)\r
358 Video: -fullscreen performs +vid_fullscreen 1\r
359 Video: -height <pixels> performs +vid_height <pixels> and also +vid_width <pixels*4/3> if only -height is specified (example: -height 768 sets 1024x768 mode)\r
360 Video: -width <pixels> performs +vid_width <pixels> and also +vid_height <pixels*3/4> if only -width is specified (example: -width 1024 sets 1024x768 mode)\r
361 Video: -window performs +vid_fullscreen 0\r
362 Windows DirectSound: -primarysound locks the sound hardware for exclusive use\r
363 Windows DirectSound: -snoforceformat uses the format that DirectSound returns, rather than forcing it\r
364 Windows GDI Input: -noforcemaccel disables setting of mouse acceleration (not used with -dinput, windows only)\r
365 Windows GDI Input: -noforcemparms disables setting of mouse parameters (not used with -dinput, windows only)\r
366 Windows GDI Input: -noforcemspd disables setting of mouse speed (not used with -dinput, windows only)\r
367 Windows Input: -dinput enables DirectInput for mouse/joystick input\r
368 Windows Input: -nojoy disables joystick support, may be a small speed increase\r
369 Windows Sound: -sndspeed <hz> chooses 44100 hz, 22100 hz, or 11025 hz sound output rate\r
370 Windows Sound: -wavonly uses wave sound instead of DirectSound\r
371 Windows WGL: -gl_driver <drivername> selects a GL driver library, default is opengl32.dll, useful only for 3dfxogl.dll or 3dfxvgl.dll, if you don't know what this is for, you don't need it\r
372 Windows WGL: -novideosync disables WGL_EXT_swap_control\r
373 \r
374 How to install Quake on each operating system:\r
375 All that DarkPlaces needs from the Quake CD is pak files (be sure not to copy\r
376 opengl32.dll from the Quake CD, it will not work with DarkPlaces!), with this\r
377 in mind, all you need to do is make a Quake directory, extract the darkplaces\r
378 engine zip to that directory, then make a quake/id1 directory, and put the\r
379 pak0.pak and pak1.pak from your Quake CD into the quake/id1 directory, then\r
380 all should be well.\r
381 \r
382 How to deal with a DOS Quake CD on Windows:\r
383 Try to use the DOS Quake installer if you can, use DOSBox if necessary to run\r
384 the installer, then copy the pak0.pak and pak1.pak to your id1 directory in\r
385 the darkplaces installation.  ( http://dosbox.sourceforge.net )\r
386 \r
387 How to deal with a DOS Quake CD on Linux:\r
388 cat /media/cdrom/resource.001 /media/cdrom/resource.002 >quake.lha\r
389 unlha x quake.lha\r
390 If you can't get unlha or lha for your distribution, try using DOSBox to run\r
391 the Quake installer.\r
392 \r
393 How to deal with a DOS Quake CD on Mac OSX:\r
394 Unknown.  Linux solution may work if you can get hold of lha, otherwise use\r
395 DOSBox to run the Quake installer.\r
396 \r
397 How to deal with a WinQuake CD on Windows:\r
398 Copy the D:\Data\id1\pak0.pak and pak1.pak to your id1 directory.\r
399 \r
400 How to deal with a WinQuake CD on Linux:\r
401 Copy the /media/cdrom/data/id1/pak*.pak to your id1 directory.\r
402 \r
403 How to deal with a WinQuake CD on Mac OSX:\r
404 Find the data directory on the cdrom and copy the data/id1/pak*.pak files to\r
405 your id1 directory.\r
406 \r
407 How to deal with a Linux Quake CD on Windows:\r
408 Find an archiver (perhaps 7zip or winrar) that can extract files from rpm\r
409 archives, locate the pak files and copy them to your id1 directory.\r
410 \r
411 How to deal with a Linux Quake CD on Linux:\r
412 mkdir temp\r
413 cd temp\r
414 # in the following line replace quake.rpm with a correct rpm filename\r
415 cat /media/cdrom/quake.rpm | rpm2cpio | cpio -i\r
416 Now you should have a mess of subdirectories, locate the pak files and copy to\r
417 your id1 directory.\r
418 \r
419 How to deal with a Linux Quake CD on Mac OSX:\r
420 Unknown.  If you can get hold of rpm2cpio and cpio you should be able to\r
421 follow the Linux method.\r
422 \r
423 For more information on Quake installation on Linux see the Linux Quake Howto http://www.tldp.org/HOWTO/Quake-HOWTO.html\r
424 \r
425 \r