Q: How do I set cl_maxfps and rate properly for good Internet play?

A: Okay, there's been a lot of BS said about cl_maxfps and rate. Here's the poop:

You should place all these variables in you autoexec.cfg file.

CL_MAXFPS (this is called fps_modem in Half-Life):

CL_MAXFPS is a console variable that sets the framerate cap. For 95% of the people out there, playing on an average modem connection on an average ISP, cl_maxfps should be set to 31 and left there. You're not missing out on anything at 31, and you can play competitively (I play competitively at 31 on one of my systems).

When cl_maxfps is set too high for the bandwidth on a given connection, the server starts flooding the client and you get lag, varying pings, and the dreaded phone jack icon.

If you have a good ISP and fast connects (over 42K) you can probably get away with a cl_maxfps of 40 and maybe even 45, but that's about the limit. If you don't want to get frustrated somewhere down the road when you get a poor connection, leave it at 35 to play safe.

Those of you with an ISDN line can experiment with higher settings of up to 45 if you have a single channel ISDN and 50 or 61 if you have a dual (most dual ISDNs aren't really good enough for 60, but you can try).

People with T1's and cable modems can (usually) use 61. Not all cable modem and T1's are running on good backbones though, so if you have problems, drop it down. For LAN games you can use 61.

THERE IS NO PRACTICAL VALUE IN USING A SETTING OVER 61! Settings over 61 will flood your client and can cause all kinds of bizarre problems like mouse and keyboard jitter. On some high-end systems, you'll get mouse jitter at anything above 35 unless you have a USB mouse or increase the refresh on your PS/2 mouse.

Another thing to keep in mind is that the physics change slightly between a maxfps of 30 and 60. Rocket jumps I'm told (I don't rocket jump - I play CTF) are not as high at higher settings, and some small windows that you can easily grapple through in CTF (for instance the downstairs windows in the McKinley Revisited CTF map) at 31 can't be done at 60. There are other subtle physics changes - enough to throw your game off if you're not aware of it.

The only major benefit of a higher maxfps is that in close quarters combat (when someone is right on top of you) you'll get a better framerate resolution. This will make it less likely that the enemy player can do something like get around behind you without you actually seeing him walk or jump around to your other side (the "Vanishing Player" syndrome). This is a nice plus, but nothing to get too bent out of shape over. Good players learn not to get right on top of people when they're playing on a modem (for one thing, you're at a disadvantage against an LPB with a railgun at short range if you're on a modem).

In Half-Life cl_maxfps has a different name: fps_max, otherwise it serves the same purpose. 

NOTE: Before version 1100 of Half-Life was released, there were two variables for FPS: one was fps_modem and the other fps_lan. If your rate was set over 5000, the game used the framerate cap in fps_lan, otherwise it used the one in fps_modem. Both these variables were replaced with fps_max in version 1100.



Rate is the other netplay variable that is usually set wrong on a lot of systems and causes problems. If rate is set too high for a given connection, it will also cause the server to flood the client and cause lag. For most people on a modem 2500 works fine because most people don't connect at over 28K. Half-Life seems to like a slightly higher rate setting than most other Quake engine games, and 3000.1 seems to be ideal for dial up connections (for some reason, HL seems to prefer values ending with .1 for both rate and pushlatency - they seem to perform better than whole numbers)..

Rule of thumb: Rate should be set to 10% of your average connection speed. NOT the max speed your modem is capable of, but the actual speed your average connection gets as reported by the DUN dialer (double click on the dialer icon in the taskbar). If you normally get a connection of around 26,000 then set the rate to 2600. If you're lucky enough to connect at 44,000 then set the rate to 4400.

There is no practical reason to set rate over 10,000! Even if you have an ISDN, a T1, cable modem, or playing on a LAN (as we've found out a big LAN parties - 25 guys with their rates set to 25000 equals a piss-poor LAN game) - your LAN administrator will NOT appeciate you using a high rate, I assure you.

Gameplay at 10000 is silky smooth and competitive. Rates over 10000 can flood the client (especially if you have a low-end system).



This variable only applies to QuakeWorld and Half-Life. This setting determines how aggressive player prediction is. For QuakeWorld netplay you should leave it set to the default of -50. In Half-Life the default is -500 and this can cause problems. In Half-Life I've found that -150.1 seems to gives the best game on a dial up connection (for some reason, HL seems to prefer values ending with .1 for both rate and pushlatency - they seem to perform better than whole numbers).




These variables need to be placed in your autoexec.cfg file. The following examples assume you usually connect at 28.8 on a modem:


In QuakeWorld you should place these variables in the autoexec.cfg file in the \quake\id1 folder like this:

cl_maxfps 31
rate 2800
pushlatency -50


In Quake2, Sin and Kingpin you should place these variables in the autoexec.cfg file in the \quake2\baseq2 folder, as well as the autoexec.cfg files in each mod folder (ctf, lithium, etc - Quake2 requires a seperate autoexec.cfg for each game mod) like this:

set cl_maxfps 31
set rate 2800

Please note that in Quake2 you must have the "set" command before the variable.


In Sin you should place these variables in the autoexec.cfg file in the \sin\base folder like this:

set cl_maxfps 31
set rate 2800


In Kingpin you should place these variables in the autoexec.cfg file in the \kingpin\main folder like this:

set cl_maxfps 31
set rate 2800


In Half-Life, the console variable for framerate cap is called fps_modem and not cl_maxfps, but it does the same thing. It's important to note that if you set rate to 5000 or higher then Half-Life uses the value in fps_lan as the framerate cap. You should add these variables to the autoexec.cfg file in your \half-life\valve folder like this:

fps_max 31
rate 3000.1
pushlatency -150.1




Q: I have Voodoo 3D card installed in a system with a 2D/3D combo card. I want to use the other card for Direct3D (D3D) applications. Is there anyway of preventing the Voodoo 3D card from running a D3D application?

A: Sometimes it's preferable to use your other 2D/3D combo card for D3D applications either because it runs D3D faster than the Voodoo 3D card, or because it can run D3D in a window while the Voodoo cannot.

You can turn off D3D support for the Voodoo 3D card by using a utility like Tweek. Unzip Tweek into an empty folder called TWEEK, and make a shortcut to it.

To use it, run Tweek and select the "Direct 3D" tab. You can use the buttons on this tab to enable and disable D3D support for your Voodoo 3D card on the fly.

Q: I have a Voodoo 3D card and a Matrox Millenium, Millenium II or Mystique video card installed in my system and I'm getting lockups when playing GLQuake or Quake2. What can I do?

A: This is rare (I have two Matrox cards, and neither has this problem), but it has been reported by a few people. Apparently the problem is that the Matrox and and the Voodoo cards get mapped to the same memory address segments. There's a couple of ad-hoc fixes I found in a help file on Canopus' Pure3D support web site located here.

Q: I can only play GLQuake or Quake 2 for a few minutes before is crashes and locks up the computer, then I have to reboot. What's wrong?

A: This could be caused by a variety of problems. Make sure you have the latest versions of the following installed:

You can find links to all these in my downloads section.

You should also make sure you have the latest version of the drivers for your 2D card if you have separate 2D and 3D cards. You can find them on the manufacturer's web site or in the drivers section at


If you have Microsoft Internet Explorer 4.0 installed, or are running the Windows 98 Beta, you should disable the Internet Explorer desktop enhancements, including the active desktop. This has been shown to cause crashes in GLQuake and Quake 2 in some cases, and is also a terrible performance hog.


If your Windows video card is a Matrox Millenium, Millenium II or Mystique, you could have a rare memory conflict problem. Click here for more info...

Q: Why is it that on some servers I get a low ping, but on others the game play is real laggy or I get a lot of network errors?

A: This could be caused by a variety of problems. If your net games are consistently laggy, you may have a hardware or setup problem and you should click here for information that may help.

However if during the same day, you get a good connection on one server and then a bad one on another, then this is likely a problem with either the server or the connection between you and the server. This is usually caused by a bad "hop" between you and the server.



There are usually several servers between you and the actual game server you're playing on that your data must be relayed through. Each of these servers is called a "hop" and consists of a special server called a "router". Routers are basically computerized switchboards that make sure that data packets (usually) get relayed to the right place. It's not good to have too many hops between you and a game server - over 15 hops is usually asking for trouble, although you can still get a good game with over 15 hops.

It's possible to have a very low ping to a server and still get poor gameplay. This is usually due to data packet loss or data errors at one or more of the routers at the hops between you and the game server - the most extreme case of which results in the dreaded U_REMOVE error or long pauses with the phone jack icon visible. What's happening is that one or more servers between you and the game server (also known as routers) are losing data packets. Over the Internet, it's not unusual to lose an occasional data packet, and QuakeWorld and Quake 2 can deal with this because they use player prediction (if you're trying to play regular Quake over the Internet, forget it - it's WAY too laggy. You should be using QuakeWorld). However, player prediction will be overwhelmed by an extremely high data packet loss rate, resulting in poor gameplay. Servers can lose data packets because of high traffic conditions, buggy software, poor maintenance, bad communications connections, broken cables, or in many cases use old outdated equipment that is not designed for today's faster Internet demands. If you have a poor Internet Provider, for instance, one of the first four routers you go through may be consistently losing a lot of data packets (usually it takes 3 or 4 hops to get out of your provider's system). If this is the case, you'll never find a good Quake server because you'll always be going through a bad router - in that case you should look for another provider. Sometimes the problem is with the game server itself or it's provider, but often it's a problem in a router somewhere in between.

Some servers will thus play better for you than others. This doesn't apply to everyone in the same way, though - that's why your friend may recommend a server that plays great for him, but gives you lousy performance. Unless you're both using the same Internet provider and the same dial-in number, your paths to the same game server will be different, taking you through different routers. One of you may have only 10 hops and no packet loss, the other may have 20 hops and all kinds of data loss problems. This is why it's so important to mark a server in your favorites list that consistently plays well. Eventually, you'll develop a list of servers with consistently low hops and good pings.

GameSpy has some built-in ability to test the hops to a server, but it's very limited. Thanks to Brett "Three Fingers'" Jacobs I've found an even better utility. It's called UOTrace and you can download it here... Follow the instructions in the included README.TXT file. UOTrace is a marvelous tool that will list all the hops between you and a game server, showing you each router, it's name, and give you the option of running a continuous ping test on all of them - good hops will have routers with low pings and zero or low packet loss, while bad hops may have intermittent or consistent high pings and high packet loss. This program is simple to use - bad hops have red or black lights, good ones have green or yellow lights. Ideally you want to have fewer than 16 hops (the fewer the better) and all green lights. An occasional yellow light is okay, and so is a rare red. A lot of continuous red or black lights means there are bad routers between you and the game server and, in all likelihood, will result in poor a poor game.

You'll be amazed at some of the results you'll get. The Internet is riddled with all kinds of pokey routers, and some just stop working for a few hours a day for no apparent reason (ever wonder why some web sites just don't respond sometimes?). Having one or more of these "black hole" servers between you and your game server results in lousy netplay. Some hops just get saturated during peak hours of the day, but they'll be fine the rest of the time. The best conditions are usually in the early morning when few people are online - however this is also the time that server administrators usually choose to perform maintenance on their systems.

There's a handy website called NetStat that shows the average, up-to-the-minute latency for the entire Internet, and for specific Backbone routers. These Backbone routers are choke-points that can cause a lot of the latency problems we see during netplay. This information used in conjunction with UOTrace will go a long way to enlightening you as to why you may be getting laggy gameplay at any particular moment, and help you find a better server to play on.

It's time consuming, but I've gone through all my lowest ping servers that I like to play on, and tested them all with UOTrace. Any that pass with flying colors (little or no packet loss, and less than 15 hops) get put on my favorites list. Any with less than 11 hops and good performance I mark with a "GOOD!" in it's comment field in GameSpy. If a good server starts acting up later, I'll run UOTrace on it again to see what's up. Sometimes a hop goes bad for a few days while some technician is poking around inside a router. More often than you'd think, major east and west coast routers (these usually show up after the fourth or fifth hop with "MCI", "AT&T" or "SprintNet" in the name if you're located in North America) go down and it affects the entire Internet.

I'll still try new servers with low pings, but I'll run UOTrace on them occasionally to see how good they really are. It's also worthwhile to go back and check servers that traced badly the first time around - the router problems may clear up later.

Q: Is there any way to disable the joystick in Quake 2, as you can in Quake, to improve performance?

A: Disabling the joystick in Quake 2 can improve your performance since polling the joystick port ties up a percentage of your processor's time. You can disable joystick support by performing the following changes to your setup:

First, you need to add this parameter to the end of your Q2 command line:

+set in_initjoy 0

For instance, your Q2 command line may look like this:

quake2.exe +set in_initjoy 0 %1 %2 %3 %4 %5 %6 %7 %8 %9

You will also need to add the following line to your the AUTOEXEC.CFG file.

set in_joystick "0"


Q: Can I play Capture the Flag and other mods in Quake 2?

A: These mods have to be re-written and adapted for Q2 - fortunately, it's apparently very easy to do and many people have already, or are getting ready to release beta versions of several popular mods. Check their homepages for further info:

Head Hunters 2
Rocket Arena II

Id has also released the very popular Capture-the-Flag mod for Quake2. You can download it from Id Software.

There are many flavors of CTF for Quake2 Loki's Minion's CTF (LM CTF) and Vanilla CTF are two of them, and there are many others.

Q: Is the Cyrix PR+ series of processors a good choice for playing GLQuake or Quake 2?

A: No. The entire Cyrix advertising department should be flogged for advertising these processors as equivalent to or better than an Intel Pentium. A Cyrix PR200+ tested running Quake 2 on a Monster 3D card came up with a miserable framerate of 13.3 fps at 512x384 resolution. Even a Pentium 120 can score better than this. This is partially due to the fact that the Cyrix has a very weak floating-point processor, but there's other problems with them as well.

You can see framerate comparisons of several processors running WinQuake, GLQuake and Quake 2 by clicking here...

If you're into word processing and other Windows stuff, they're okay. Avoid them like the plague if you're into serious action gaming. The nice thing is that any motherboard that has a Cyrix CPU installed should also be able to support an Intel Pentium. At the very least, drop a P-166 in there - the frame rate will be nearly double that of the Cyrix running Q2. Keep the Cyrix CPU as a paper-weight. A good source for OEM CPU's mail-order is DLP Computers. Last I checked (1/17/98) a P-166 MMX CPU was $125, and a P-200 MMX was $240.


Q: Do I need to install GLQuake to run Quake 2 on a Voodoo 3D card?

A: No. GLQuake is a special version of Quake that is designed to run on a 3D cards that support OpenGL for gaming and has nothing to do with Quake 2. Because Id never released 3D support in the original versions of Quake, they decided to support it in a separate version to make beta testing simpler. The same thing was done with GLHexen 2, the 3D OpenGL version of Hexen 2. GLQuake was actually used as a test-bed to try out many features that would eventually go into Quake 2. To this day, GLQuake is still considered an unsupported release by Id Software, although it's very stable.

For Quake 2, Id decided to incorporate all 2D and 3D support within a single version of the game. Quake 2 has built-in support for both standard 2D SVGA as well as OpenGL and other 3D standards. You set Q2 to use the appropriate driver by going to the Video Options in the game and selecting the proper driver for your card. If you're using your 2D SVGA card, then leave it set for "Software". For 3Dfx Voodoo-based 3D cards, use "3Dfx OpenGL".

Q: I can't stand playing against idiots who wear all black skins in QuakeWorld! Is there anyway to change their skins?

A: People who use all black skins don't bother me much - they just make me laugh most times. Most of them are too dumb to use the skin effectively anyway, and they stick out like a sore thumb in a lighted area, or when a rocket goes off near them. A good player is always looking for the source of fire anyway, and a black skin doesn't help that much - as soon as you shoot, you're meat.

What does tick me off is that people who use all black skins (or any other skin that doesn't look like a person) are defeating the spirit of the game. I want to frag "someone" not "something". The skin you choose to play in should say something about you and your personality (I guess people who wear all black skins don't have a personality). I just love it when I see someone running around in something original like a clown suit, or wearing a celebrity skin - it's great fun.

I get asked a lot if there's anyway to disable all black skins. Sure, you could turn off skins support in QuakeWorld, but then everyone will look alike. Instead, I came up with another solution. The skins are stored in your \quake\qw\skins directory. There's only about a dozen black skins used on most standard QuakeWorld servers. I replaced them all with skins with the same name using the standard Quake base skin bitmap instead - maybe someone will take the time to create a custom skin for them with a "kick me" sign on their back or something later. to let us know who the dweebs are :-)

Anyway, download my Dark Skin Fix file here... Just unzip all the skins into your \quake\qw\skins folder. From now on anyone wearing one of these skins will look like a regular Quake player on your computer.

Q: I'm getting strange problems playing over the Internet or I'm getting an ADDRNOTAVAIL error when. What can I do?

A: Xian at Id Software finally traced this to one of several possible problems with the installation of Win95 on your computer (none of what follows applies to NT). You should download and install the QfeCheck utility (also known as the Update Information Tool) from Microsoft. This checks for bad or outdated drivers in your Win95 installation. Once installed, you'll find the icon for it in the Statup folder under /Programs/Accessories/System Tools. Run it and see if it detects any problems with your TCP/IP subsystem.

Here's what Xian says you should do about it:

Name: Christian Antkow
Description: Jack of All Trades
Project: Quake 2
Last Updated: 01/08/1998 12:50:29 (Central Standard Time)

--- Jan.8.1997 (12:18p) ---

Win 95 TCP/IP Fixes for Quake II

Ok. After trading e-mail with a few people from Microsoft, and a few users
who were experiencing problems that were fixed yesterday, here's what you should do if
you are having problems running Quake II over the net (or getting ADDRNOTAVAIL errors).

First off, if
Qfecheck reports problems with your TCP/IP subsystem,
there are a few scenarios.

According to Microsoft's Knowledge Base article dealing with some errors
with VIP.386, VTCP.386, et. al, You should delete the following five files from
your \WINDOWS directory if they exist. Again, delete the following files from


According to the aforementioned Knowledge Base article, those files should be
in your \WINDOWS directory only if you've upgraded from Windows 3.XX. Due to
a quirk in Win95, it will load the files in your \WINDOWS directory first
instead of from \WINDOWS\SYSTEM where the Win95 version of the files reside.

Also, an annonymous tech support rep at Microsoft passes on the following info;

As for the Winsock update problem, it could be an OSR2 issue. OSR2 is
notorious for not letting system updates overwrite files that are
already on the hard drive. The solution we would use here at tech
support is to have the user rename their winsock.dll file and then
install the wsockupd.exe file. They also need to make sure they get the
one in the sysbckup directory if they are going the 'rename and install'

A last resort would be to remove tcp/ip from the network configuration,
shell to dos and rename all the files associated with tcp/ip, and then
reinstall tcp/ip.

Another solution is to completely reinstall your TCP/IP subsystem. This can
either be done in one of two ways.

You can either remove TCP/IP under Control Panel/Network, reboot, then
reinstall from the Win95 CD, or another method is to download the Winsock 2.0 SDK for Windows 95 (1.4 megs)
and run the WS2SETUP.EXE program located in the SETUP directory.

This has solved many of the problems users have reported with connection
problems in Quake II. Please let me know if the above fixes your problems
if you were having problems before.

Q: What's the difference between the "Normal" 240 Mb and the "Full" 350 Mb installs in Quake 2?

A: The "Full" install also copies the cutscene videos onto your hard drive. Don't waste hard drive space on them - use the "Normal" install instead. The videos play fine from the CD and you have to leave the CD in anyway to play solo.

Q: How do I setup Quake or Quake 2 for playing over a LAN?

A: Having gone through the trials and tribulations of setting up a LAN (Local Area Network) in my home, and getting it up and running for Quake and Q2, I wrote instructions on how to go about setting up all of Windows' fiddely Network Control Panel settings properly for gaming and for file/printer sharing. Click here to go to my network setup instructions...

Once you have two (or more) computers setup on a LAN, you can easily setup for a game. GLQuake uses the IPX network protocol while Q2 uses either TCP/IP or IPX for deathmatch play. Most games use either IPX or TCP/IP.

One computer needs to be the host server:

For GLQuake, go to the Options menu and select "Multiplayer", then "New Game", and then select "IPX". Follow the prompts from here to setup a game.

For Quake 2, select "Multiplayer", then "Start Network Server". Follow the prompts from here to setup a game.

For GLQuake, on the client computer, go the "Options" menu, select "Multiplayer", then "Join" and "IPX".

For Quake 2, select "Multiplayer", then "Join a Network Server". Select "Search for Servers" and any servers running on the network should be listed.

Q: Why do my colors go crazy when I change resolution size adjust the texture detail in Quake 2?

A: You've turned your gamma up too high. If you use a gamma adjustment for your Voodoo card in your AUTOEXEC.BAT or in a batch file that runs Q2, don't use a gamma value higher than 1.7. If this isn't bright enough, use the brightness adjustment in the game itself under the video options, although you should try not to use the highest setting. Click here for more info on setting the gamma...

Q: How can I use a batch file to run GLQuake?


Q: What do you recommend I use for performance settings in GLQuake?

A: I won't go into the muddy details of advanced tweaking as that's not the purpose of this FAQ and there's other sites that cover it better such as GLQuake: Our FAQ and Three Fingers' Ultimate GLQuake Setup Guide. You can also download an excellent utility called GLQPlus which sets up the tweaks for you very easily - I recommend using the "Ultimate FPS" setting.


Listed below is the batch file I use which has most 3Dfx tweaks enabled and you can get a very good frame rate using it.

I prefer to use batch files to run all my 3Dfx games, as opposed to putting the SET commands in my AUTOEXEC.BAT file, because it enables you to setup tweaks for each individual game - you just make a different batch file for each game. This is important because some of the 3Dfx tweaks that benefit GLQuake can render other 3D games unplayable. If you do use batch files, remove all SET SST and SET FX_GLIDE statements from your AUTOEXEC.BAT file.

Use Window's Notepad to create a file called GLQUAKE.BAT in your \quake directory. Copy and past the following into that file and save it (or substitute the settings you were using in your AUTOEXEC.BAT file):

glquake.exe -zone 512 -width 512 -height 384 -window -heapsize 30000 %1 %2 %3 %4 %5 %6 %7 %8 %9

This is the batch file I'm using to run GLQuake and it uses all the 3Dfx tweaks for max performance at the expense of some visual artifacting.

Make a shortcut to the batch file and use it to run GLQuake. You can do the same for GLQuakeWorld except that the last line in the batch file will start with GLQWCL.EXE instead of GLQUAKE.EXE:

glqwcl.exe -zone 512 -width 512 -height 384 -window -heapsize 16000 %1 %2 %3 %4 %5 %6 %7 %8 %9

You'll also have to name the batch file something else - call it GLQWCL.BAT. If you use GameSpy, just enter GLQWCL.BAT instead of GLQWCL.EXE as the command line in Gameplay Options.

NOTE: If you get the error "Out of Environment Space" when you run the a batch file, go here for a fix...



Create a batch file in your Quake folder called GLQUAKE.BAT using Windows Notepad. Copy the following and paste it into the batch file. Make a shortcut to the batch file and use it to run GLQuake. You can also use this batch file to run Quake from GameSpy:

glquake.exe -zone 512 -width 800 -height 600 -window -heapsize 16000
%1 %2 %3 %4 %5 %6 %7 %8 %9

You can do the same for GLQuakeWorld except that the last line in the batch file will start with GLQWCL.EXE instead of GLQUAKE.EXE:

glqwcl.exe -zone 512 -width 800 -height 600 -window -heapsize 16000
%1 %2 %3 %4 %5 %6 %7 %8 %9

You should also disable VSync in the Display Properties settings for your Voodoo2 3D card.


You can find more information on performance tweaking in Three Finger's Quake Tweak Guide.


Q: I'm having sound problems in Quake 2, what can I do?

A: If you're sound is stuttering, add the following line to your autoexec.cfg file:

set _snd_mixahead "0.14"

If you're still having problems, select "Option" in the Quake2 menu, and try a different setting for "Sound Compatibility". You usually want to use "Max performance" but but with some card "Max compatibility" may be necessary.


If the sound seems delayed (for example, if you hear the gunshot a half-second after you pull the trigger) you're almost certainly using the Windows wave sound device instead of DirectSound. This is either because Q2 could not find a DirectSound device, or because you've forced Q2 to use wave sound because you're having a problem with DirectSound. Make sure you have the latest drivers installed for your sound card. A very few cheap sound cards like the Mwave card has no DirectSound support and you'll have to run it wave sound mode. You can improve the delay problem somewhat by typing the following at the Q2 console (press the tilde "~" key to bring down the console while quake is running):

/s_mixahead 0.2

Q: How can I get rid of the lag I get during large battles while playing on the Internet in Quake 2?

A: Several things can degrade performance during large battles in netplay.

Just as in GLQuake, rendering large numbers of particles on the screen seems to slow down Voodoo 3D cards with only 2Mb of texture memory such as the Monster 3D (Canopus Pure3D and Obsidian owners don't have to worry about this). The solution in GLQuake was to use Three Finger's modified missile and grenade models that don't have smoke and fire trails.

Q2 uses A LOT of particles, and this can really bog the performance down during big deathmatch games. In particular, the Hyperblaster, because of the immense number of particles it's weapon trail uses, can really slow the framerate down a lot. There's a built-in command to disable particle rendering. Type this in at the Q2 console (press the tilde "~" key to bring down the console while quake is running):

set cl_particles 0

This toggle doesn't stay permanent, so you'll either have to add it to a custom cfg file that you execute when you run Q2, place it in your autoexec.cfg file, or add it to the end of your Q2 command line as:

+set cl_particles 0

For instance, your quake command line might look like this:

quake2.exe -zone 1024 +set cl_particles 0

This will also improve your framerate overall, but you'll have to try it and see if the performance gain is worth the visual loss. With particles turned off you won't see any particle trails on weapons or blood splatters when your shots hit another player, which takes a little getting used to.


Another cause of lag during Netplay is the complex weapon firing and reloading animations Q2 uses. This is not an issue with Voodoo2 cards, but this can really slow down performance on an old Voodoo card. The only solution here it to make the weapons invisible.

You can play without any weapon visible at all by using this console setting:

v_gun 0

If you don't mind an invisible gun, and you miss Quake's center-located weapons, you can move the weapon to the center by using the console command:

hand 2

You'll be shooting from the center, which may feel more comfortable to you if you're a Quake veteran, but there is no center weapon model, so the weapons won't be drawn. (If you're left-handed, you can put the weapon on the left using hand 1 and it will be drawn).

It takes a while to get used to not seeing your weapons, and you'll have to memorize the weapons icons to know which weapon you have ready. The bonus is you'll have a substantially less obstructed field of view, and an improved framerate.


Q: How do I connect to a Quake 2 master server in GameSpy?

A: You must download and install GameSpy v1.5 (or higher) which supports Q2 servers. When the installer asks you whether you want it to setup the proper path for starting Q2 in the Gamplay options, uncheck the box if you're using a custom batch file to start Q2. Do check the box that offers to setup the Q2 master servers list, though.


Q: How can I force Quake 2 to start in 512x384 resolution?

A: Early versions of Q2 always started in 640x480 mode, even when you set it for 512x384. This is a known bug. Here's a workaround: add +set gl_mode 2 to your Q2 command line:

quake2.exe +set gl_mode 2

NOTE: This bug has been fixed as of version 3.10

Q: How can I keep Quake 2 from scrambling up my desktop icons?

A: You're running Q2 in fullscreen mode and this will force Windows to resize the desktop to the same resolution used in the game. You need to run Q2 in a window (I know, Voodoo cards can't run in a window, but trust me this works). Run Q2, go to the video options, and change "Fullscreen" to "NO". Windows 95 will think the game is running in a window and leave your desktop icons alone.


Q: Why is Quake 2 freezing when changing maps in a network game?

A: Early versions of Q2 used to crash during a deathmatch game when the map changed. This bug was fixed in version 3.10 and should not occur any longer if you've upgraded. Q2 may pause a long time while it changes maps, but as long as the drive light is flickering, don't worry about it.

Q: Does Quake 2 or Half-Life support Voodoo 3D cards?

A: Yes, Quake 2 supports Voodoo1, 2, Banshee and other 3D cards right out of the box. In Quake 2, go to the "Video" options, and select "3Dfx OpenGL" for any Voodoo 3D card, otherwise select the setting that applies to your card.

Most adjustments can be made from the video options including gamma adjustment.

Q: I can't see any transparent water effects in Quake 2, how do I turn them on?

A: Transparent water is enabled by default in Quake 2, however you must also have the "Texture Quality" slider control in the video options set to maximum (far right). Also, keep in mind that not all bodies of water in Quake 2 have transparent surfaces - some are covered in slime or oil slicks and some are clearer than others to simulate different types of liquid.

Q: Can I use a batch file to run Quake 2 as I used to run GLQuake?


Q: What tweaks should I use with Quake 2?

A: Quake 2 runs pretty good on a Voodoo 3D card right out of the box. 3Dfx tweaks we've been using with GLQuake should not be necessary as they're built-in already, however there is a bug which sometimes prevents them from being enabled, so it's a good idea to enable them manually from a batch file for now. Please note that Id Software warns that using any 3Dfx tweak may crash or adversely affect the game, so if you have any problems, go back to running it plain vanilla. So far, I've had no problems with these settings.


This is the batch file I'm using to run Quake 2, and it also works fine when run from the Quake 2 updated version of GameSpy:

quake2.exe -zone 512 %1 %2 %3 %4 %5 %6 %7 %8 %9

Create a batch file in your Quake 2 folder called QUAKE2.BAT using Windows Notepad. Copy the above and paste it into the batch file. Make a shortcut to the batch file and use it to run Q2.

NOTE: If you get the error "Out of Environment Space" when you run a batch file, go here for a fix...



Create a batch file in your Quake 2 folder called QUAKE2.BAT using Windows Notepad. Copy the above and paste it into the batch file. Make a shortcut to the batch file and use it to run Q2. You can also use this batch file in GameSpy as your command line for Quake2:

quake2.exe -zone 512 %1 %2 %3 %4 %5 %6 %7 %8 %9

You should also disable VSync in the Display Properties settings for your Voodoo2 3D card.


You can find more information on performance tweaking in Three Finger's Quake 2 Tweak Guide.


Q: Will GLQuake run on my system without a 3D card?

A: Actually, there is software OpenGL support on some 2D cards, but without 3D hardware it will run far too slowly to be usuable for gaming.

Q: Why am I getting this error when I try to run GLQuake in 512 x 384 resolution: "The specified video mode is not available"?


Q: How can I run GLQuake at 512 x 384 resolution?


Q: Why is it when I return to Windows after playing GLQuake, my desktop icons are all shuffled around?

A: I highly recommend you run GLQuake in 512x384 resolution as opposed to 640x480 as it runs much faster (about 5 - 8 fps faster) and there's virtually no visual difference. You must set the width and height in GLQuake's command line by adding the following to the end of your GLQuake command line:

-width 512 -height 384

However, on some systems this will give you an error or run GLQuake in the 640x480 default resolution. The problem is that you can't run GLQuake in fullscreen mode in a resolution that doesn't exist on your 2D adapter because Windows will have to resize the desktop to whatever resolution GLQuake is running in. Even though GLQuake is actually running on the 3D card, Windows doesn't know any better and has to switch the 2D card over to match the resolution (as far as Windows is concerned, it thinks there's only one video card installed). Only cards with Vesa 2.0 support will normally run in this resolution. In order for that resolution to be recognized on systems that don't support it, you need to have a universal Vesa driver installed, such as SciTech's Display Doctor. However, there's a simpler way around this:

Easy fix: you need to run GLQuake in a window. Yeah, I know a Voodoo card can't run in a window, but you have to tell GLQuake to run in one anyway so Windows "thinks" it's running in a window. When you run GLQuake in a window, Windows won't resize the desktop. This is preferable anyway because it prevents your desktop icons from being scrambled, and your desktop won't be resized if you have to ALT-TAB back to it from GLQuake while you're playing. You need to add this to the end of your GLQuake command line:


For instance, your quake command line might look like this:

glquake.exe -width 512 -height 384 -window

You'll also have to add the following line to your computer's autoexec.bat file in order to enable gamma adjustments in 512 x 384 resolution:


The gamma setting in your autoexec.bat file normally only has affect when using a 60Hz vertical refresh. Many system will default to 75 Hz when running GLQuake at 512 x 384 and the above line is necessary to enable gamma adjustment at screen refresh frequencies above 60 Hz. Remember to reboot the computer to allow this change to take effect.


If you use the mouse to play Quake, and it isn't responding when it starts in windowed mode, go to the Quake options page and enable "Use Mouse".


Q: My Voodoo 3D card doesn't work at all - it won't run any of the demos or tests that came with it, and GLQuake locks up. What's wrong?


Q: My 2D card uses the S3 chipset. Why won't it work with my Voodoo 3D card?

A: Your Voodoo 3D card should have come with a test demo. To find out how to run it, check your card's instructions. To run the test demo on the Monster 3D, go to the Windows Display Properties, select the "Monster 3D - Settings" tab and click on the "Test" button in the upper right hand corner. The test demo MUST run in order to guarantee that your Voodoo 3D card is functioning properly. This is the ultimate test of the hardware - don't use GLQuake or any other game as a test because there's other setup problems that can cause them to act up.

If the test demo runs okay, but you get a black screen in GLQuake while still hearing the sounds of the game, you have the DOS blank screen bug. Click here for a solution...

If your card crashes when you run it's test demo, or any other 3D application, there's a few possibilities:

  1. If your existing 2D card uses the S3 968 or 868 video chip, it's possible your 2D and 3D cards are having a memory conflict. This is due to a bug in some S3 video card designs. You can get the S3 bug patch for it from 3Dfx here...

  2. Sometimes the 3D card doesn't sit in it's slot connector properly. On many systems I've had to bend up the aluminum mounting bracket to buy more space. Take a careful look at the way the card sits in it's slot connector. If the bracket is preventing it from seating properly, the card will not be level in the connector and will be more out of the connector towards the back than the front. Use pliers to bend the aluminum mounting bracket up to give you more room. MAKE SURE THE COMPUTER IS TURNED OFF WHILE YOU DO THIS! The card should sit level in the slot and be fully seated. Try running the test again.

  3. Voodoo and Voodoo2 cards will only work on motherboards that are PCI 2.10 compliant. Some early PCI motherboards don't meet this criteria. How can you tell? Download this little utility from Canopus called PCIVIEW. Unzip it into an empty temporary directory, open a DOS window, go to the directory containing the file and run it. The very first line of information will contain the PCI BIOS version. It must be at least v2.10. There's not much you can do if you have an earlier PCI version except buy a new motherboard. The nice thing is that budget motherboards are pretty inexpensive. You can always put your existing CPU in the new board, or better yet spend the money on a motherboard with a faster processor. Beware of one pitfall when installing new motherboards: before swapping boards, go to the Device Manager in Windows Control Panel and uninstall the IDE hard drive controller drivers. When you boot up the first time with the new mobo installed, Windows should install the proper IDE drivers.

  4. It's rare, but it's certainly possible that you have a bad 3D card. You should either return the card to the place of purchase for an exchange, or contact the manufacturer and have them send you a replacement card - that will tell you for sure if it's the card or not. Most manufacturers will send you a replacement without waiting for you to return the defective card, as long as you guarantee it with a credit card. Then you can use the box it came in to ship the bad one back.

Q: I get a message saying the DirectSound device was not found, using wave sound. The sound works, but it sounds delayed. How can I fix this?

A: GLQuake uses DirectSound, as does WinQuake. In order for DirectSound to work properly, you must have DirectX installed and your sound card must be DirectSound compliant. You can get DirectX here...

Most sound cards today are DirectSound compliant (all SoundBlaster cards are), but you should check with your manufacturer to be sure. Even if your sound card is DirectSound compliant, it's possible that your sound drivers are not. You should download the latest version of the sound drivers for you card from the manufacturer's web site. You can also find most drivers in the drivers section at

If you have an IBM Mwave combo modem/sound card, you got screwed - this card does not support DirectSound (and it's a poor performing modem for Quake netplay as well). You have no choice but to play using wave sound and live with the delay.


Q: Would a 56K modem, cable modem, or ISDN line give me better netplay in Quake or GLQuake?

A: 56K modems do not give you any particular benefit for playing Quake, or any other action game, online. 56K modems are unbalanced - they can receive data at 56K (actually 54K), but they only send it at 33.6K. Additionally, US Robotics X2 56K modems have a bug called POD (Ping of Death) that produces high pings and network errors when playing QuakeWorld. There are some workarounds for this, click here for more information...

The Ping-of-Death can cause you problems even if you don't have a USR X2 modem. Beware of Internet Providors that support X2 modems - they're X2 modems can also cause problems with QuakeWorld. The safest bet in my opinion is to use 33.6K modems (at least until USR fixes this bug) and avoid ISPs that support X2. This is not a problem with 56K Flex modems, or ISPs that support them instead of X2.

Some cable modem and satellite dish systems are also unbalanced, receiving data at blazing speeds but using a standard 33.6K modem to send data. Not all of them are unbalanced, but you'll have to ask the dealer to find out.

ISDN provides an excellent Internet connection for netplay with pings as low as 75 - 100 ms, and is becoming more affordable every day. In some areas of the United States, ISDN can cost as little as $50 a month. Keep in mind, however, that even with ISDN, you can get lousy pings if your Internet Provider is over-selling his bandwidth. You can find more information on ISDN at these locations:

Dan Kegel's ISDN Page
CNET - ISDN Tips and Tricks

Another option to look into is ADSL. ADSL offers speeds faster than ISDN and, unlike ISDN, uses standard phone lines. The price is also competitive with ISDN. ADSL is still in the trial stage at this date (late 1997) but is expected to be offered in the south-east and west-coast United States beginning in 1998. You can find more information on ADSL at these locations:

Dan Kegel's ADSL Page
Kimmo Saarela's ADSL Tutorial


Q: How can I get rid of the lag I get during large rocket battles while playing on the Internet?

A: If you own a Voodoo card containing more than 2 Mb of texture memory (such as the Canopus Pure3D or the Quantum 3D Obsidian) this doesn't affect you. For the rest of us, it's a problem. Having a large number of rockets, and to a lesser extent, grenades, flying around the screen during a netgame causes some major lag, no matter how good the connection or how low the ping. This is due to the smoke and fire particle trails that have to be drawn behind each and every missile (grenades just have a smoke trail). This ties up a lot of the Voodoo 3D card's texture memory and processing power. It's real aggravating to get fragged during a major rocket battle only because your computer slows down so much that you can't turn around in time to deal with some guy taking pot-shots at you.

Fortunately, Brett "Three Fingers" Jacobs (all around Quake swell-guy) has come up with a solution. He's written new versions of missile.mdl and grenade.mdl that don't have smoke or fire trails. Click here to go to Three Fingers' web page and download his Missile Fix.

Instructions are included with the model files, but I'll summarize them here. You need to copy these new model files into a directory called "\progs" located under each game directory in your Quake folder and your "\id1" directory. If it doesn't exist, make a folder called:


and copy the two new model files into it. If you play CTF, make another folder called:


and copy the two new model files into it. Do this for every game mod you use.

This makes a BIG difference. Rocket battles are no longer major lag-city for me like they used to be. Trust me, you won't miss the fire and smoke trails at all.

Some people have asked if this is a "cheat" because cheating usually involves tampering with Quake's .mdl files. A classic example of this is the "eyes" mod that lets you see players that are carrying invisibility rings or runes. The "eyes" mod is most definitely a cheat, and if you have to resort to that sort of thing, you're a pretty sorry excuse for a human being. However, I don't consider Three Fingers' missile and grenade models cheats because they in no way give you an advantage over others. All the mods do is overcome an inherent disadvantage that players using Voodoo cards with 2 Mb of texture memory suffer. Since it gives you nearly the same performance you'd get if you purchased a 3D card with more texture memory, or if you played using standard 2D Quake on a fast computer, I can't see how this can be considered a cheat. Under that assumption, any tweak that improves your frame rate would be considered a cheat (including buying a faster computer).

If you're interested, I rant and rave on the subject of cheaters and MRBs (Miserable Rude Bastards) in Quake in my Rant Column.

As an interesting aside, Id Software is planning on implementing a method in Quake 2 that will inform other players when a player is using modified .mdl files. I think that's great, and will prevent abuses like the "eyes" cheat (although I'm sure that industrious vermin will find other ways to give themselves an unfair advantage). It will, of course, also prevent people from using something like Three Fingers' Missile mod, but that's okay. Zoid is very much aware of the missile particle problems in Quake, and is planning to address them in Quake2World. It's very likely that Q2W will have user adjustable settings for this sort of thing so you can adjust the trade-off between display detail and performance.


If you're a serious Quake netplayer, I would also strongly recommend that you set the gl_playermip variable to 3 instead of 2, as Id and 3Dfx recommends. Add this to the end of the end of your GLQWCL.EXE or GLQUAKE.EXE command line:

+gl_playermip 3

For instance, your QuakeWorld command line might look like this:

glqwcl.exe -nojoy -nocdaudio +gl_flashblend 0 -heapsize 20000 +gl_playermip 3

This will reduce the texture memory for the player skins making them blurrier, but it will improve netplay substantially. Under no circumstances should this be set for less than 2 when playing over the Internet.


Q: What is QuakeWorld?

A: QuakeWorld is a Win95 native version of Quake that is specifically designed for playing Quake over the Internet on dedicated servers with up to 32 players. Id software, in a rare showing of generosity in the game publishing business, has made QuakeWorld freely available (you must, however, own and have the full retail version of Quake installed). You can get more information about QuakeWorld and download the client software from QuakeWorld Central.

Q: Is there a version of QuakeWorld that will run on a 3D card?

A: Yes! GLQuakeWorld is the QuakeWorld version of GLQuake that will run on graphics cards supporting OpenGL, which includes the Monster 3D and any other 3Dfx Voodoo 3D card. GLQuakeWorld comes included with the QuakeWorld client software since version 2.0. You can get more information about QuakeWorld and download the client software from QuakeWorld Central.

Q: What is VQuake?

A: VQuake is a special version of Quake which runs on 3D cards using the Vérité chipset, such as the Creative Labs 3D Blaster, Sierra Screamin' 3D, and Canopus Total3D (don't confuse this for their Pure3D card which runs GLQuake). This FAQ you're reading, however, only deals with GLQuake which runs on 3Dfx Voodoo 3D cards such as the Monster 3D, or other cards supporting the OpenGL miniport of Quake.

Both VQuake and GLQuake look great, but in my opinion GLQuake is better than VQuake only because you can get a better framerate in GLQuake on a 3Dfx Voodoo 3D card than you can on any card running VQuake right now - and a high framerate is mandatory for decent netplay.

Here's a few VQuake links:

A review of the 3D Blaster

VQuake Overview


Q: Why am I getting this error: "Missing Glide 2.x.dll"?

A: If you have a 3Dfx Voodoo 3D card, you need to download and install the latest Glide Run-time drivers. Sometimes, when you install another driver like an updated driver for your 3D card, you'll need to re-install the Glide drivers afterwards. You can get the Glide Run-time drivers here...

If you have a 3D card using the PowerVR or Riva 128 chipset, you have the wrong OpenGL driver in your Quake or Quake 2 directory - it's likely that the game installed the one for 3Dfx cards. You need to download the appropriate one for your card. You can find them listed in my drivers section here...


Q: Why am I seeing untextured or incorrectly textured triangles in GLQuake or Quake 2?

A: This is almost certainly due to overheating. The texture processor on a Voodoo 3D card runs very hot to begin with. When the texture processor overheats, it will start to drop textures exposing bare triangles (everything in a 3D image is made up of triangles). Over-clocking will also cause this as it also overheats the texture processor. Overheating is not good for silicon chips and over the long haul will damage them.

If you're overclocking your Voodoo 3D card, throttle it back to the maximum recommended speed, which is usually 57 MHz. Trust me, you don't need to run it any faster than this.

If you continue to have overheating problems, you may need to re-locate the 3D card. Place it in a PCI slot closest to the power supply fan and leave an empty slot, if possible, between it and the next card. Re-route ribbon cables so they don't obstruct the flow of air across the 3D card.

You may want to consider installing an additional cooling fan. You can purchase one of those slot-cards that have fans mounted on it or Bart Lane makes a simple cooling fan that will work on most Voodoo 3D cards. You can get more info on it at his 3DfxCool web site. You can also download Three Fingers' Ultimate Setup Guide which has instructions for making a simple and inexpensive cooling fan.

If the problem does not seem to respond to cooling, then the only other possibility is that you have a bad card.


Go Back