The q2servers FAQ

Part 2: Server Setup

Here are a whole bunch of questions I that I can't fit into the other two sections.

  1. Where can I find a list of console commands?
  2. Does Quake 2 perform better on a machine with multiple CPUs or SMP?
  3. Can I adjust the bandwidth to and from my server?
  4. How can I set up a web page to show the current status of my server?
  5. Is there a definite way to figure out if a certain user is using the ZBot?
  6. What other master servers are there?
  7. Can I run a master server?
  8. How can I set my server apart from the thousands of other servers out there?
  9. Are there any utilities that can help me administer and run my server?
  10. Are there any websites for Quake 2 server admins?
  11. My question isn't here. What should I do?

Q: Where can I find a list of console commands?

A: Check out The Console's list of Quake 2 console commands at http://www.planetquake.com/console/commands/quake_2.html

Q: Does Quake 2 perform better on a machine with multiple CPUs or SMP?

A: Not really. Quake 2 is a single-threaded program which does not gain much benefit from multiple CPUs. However, some improvement is possible, especially if other processes are running on the machine at the same time. For instance, one CPU can be dedicated to Quake 2 while the other is dedicated to other tasks like hard drive management or other tasks. Note that any gains would be marginal, unless you plan to run many processes at the same time.

Q: Can I adjust the bandwidth to and from my server?

A: Not really. Clients can control the amount of data coming from the server with the rate command, but they cannot control the rate they are sending data.

The Lithium II mod has a max_rate variable that set a limit on the amount of data a client can receive.

Q: How can I set up a web page to show the current stats on my server?

A: You will not need to modify Quake 2 in any way to make a status page. But, you will need some familiarity with CGI or cron, access to a web server, or at the very least some HTML know-how.

It can become a fairly complicated process, but I'll just sum it up with two ways to accomplish this: You can create real-time status pages, or time-delayed pages.

For time-delayed pages, a script is run every now and then that will gather information from the Quake 2 server and parse that information into a HTML file. Usually the script calls upon another program to gather the information, like Steve Jankowski's qstat utility.

Real-time status pages are almost identical to time-delayed pages, but instead of running the script every now and then, the script is turned to a CGI script that will gather information and parse when it is accessed.

For more information on these schemes, check out Steve Janowski's CGI Programming and QStat page at http://www.activesw.com/people/steve/qcgi.html.

Also, there is an alternative to the above schemes by using a Netscape plugin instead. It requires the viewer to download the plugin from http://satan.idsoftware.com/q2plug/npq2plug.dll but does not require the page's author to do too much work.

To use this plugin, insert the HTML tag

<embed type=application/x-q2plug-plugin name="server-address-here" width="600" height="200" pluginpage="http://www.idsoftware.com/q2plug" src="foo.quake"></embed>

Replace 'server-address-here' with your server's actual address. There is a bug with MSIE, it will do crazy things if a src parameter is not included in the tag. To avoid trouble, keep that parameter in and create a 0 byte file called foo.quake in the same directory as the HTML file is in.

Q: Is there a definite way to figure out if a certain user is using the ZBot?

A: There is. Newer releases of the Lithium II mod offers support for "jitter" detection. It seems that in the course of playing, humans can only reach a jitter value of 1 or slightly higher. ZBots, on the other hand, can reach values that are much, much higher, especially after firing a shot with its auto-aim feature. The author of the mod declined to explain what "jitter" really is, to keep future hackers from circumventing this detection scheme.

Other methods of Zbot elimination have been found. Soul Assassins has found another way to keep ZBots from connecting at all. Their method (only useful to mod authors so far) is described on their homepage.

There are other ways to see if someone is using the ZBot. If you chasecam a suspected player and they seem to be doing strange things with how they fire the weapon, for instance, firing a railgun behind them and hitting someone, then you have a right to be suspicious. However, smart ZBot users can evade this by turning on and off the bot's auto-aim capabilities to hide its usage.

There are other noticable quirks that come with the ZBot that does not mean the user is definitely using a ZBot. For instance, the ZBot is a proxy, and like other proxies, a status report from the console using the status command will show proxy users to be connected from a different port than the usual 27901. However, there are legitimate uses for proxies. Cable modem users, for instance, are usually behind the cable company's proxys.

Q: What other master servers are there?

A: Here's a list of some master servers other than id's default master (please email [email protected] if you know any others):

q2master.planetquake.com
PlanetQuake's Quake 2 Master (webpage)
206.222.86.244
Telefragged's Quake 2 Master (webpage)
205.244.188.34:22999
Kali's Quake 2 Master
q2master.minos.co.uk
Minos' Quake 2 Master for the UK
master.quake.inet.fi
iNet's Quake 2 Master for Finland

Q: Can I run a master server?

A: Master servers can only be run with an arrangement with id Software. Usually, you will need to have a gargantuan amount of bandwidth (your 28.8k modem does not qualify) to your server, and perhaps proof that you are in a continent that does not have a master server.

Q: How can I set my server apart from the thousands of other servers out there?

A: The sad fact is that the general supply of servers is greater than the general demand of them -- there are more than enough servers in existance. To get more players into your server, you'll just need to try harder. Here are some tips:

  • Use an interesting hostname. People are not interested much in a server called noname.

  • Identify the server with a particular geographical region. If you want to let the people in your city know the server is in that city (and they would probably get a great ping there as a result), let people know through the server's hostname or some other way.

  • Eliminate Lag. Make sure your server is connected via a very fast connection. Get access to a T3 or OC-3. Make sure that connection is on one of the speedier backbones. If you're on Sprintlink, get another backbone ASAP. Isolate and eliminate any bottlenecks in your system (CPU, memory, network interface, etc.). Remember, everyone loves a lagless server.

  • Host an mod that needs more servers. There are plenty of mods out there with players interested in them. Unfortunately, sometimes some mods are great but lack the server support to gain any popularity. Or, some mods are mega-popular and the demand for servers is greater than the supply of servers. PlanetQuake's Mod of the Week feature was designed to highlight the overlooked mods, and can be a source for mods that will send your server to the stratosphere.

  • Offer stat displays. Take frag logs down and create a website displaying statistics from them.

  • Do something different, and/or interesting. Make your server stand apart. Do something crazy like installing the Lithium II mod and customizing it to make blazingly fast rockets or slower-than-**** BFG balls. Do a purist's only server and advertise it as such. Make up your own ideas.

Q: Are there any utilities that can help me administer and run my server?

A: Windows NT users can use a Shareware utility called QHost. It is a program (which can be run as a NT service) which starts and restarts Quake 2 when it crashes, and it provides remote administration when used with another utility.

Another Win32 utility is TraySpy, a System Tray utility that tracks the number of clients a server currently has. The program can also send rcon messages to a server without needing to connect to the server via the Quake 2 client.

*NIX users can use gstat, a derivative of qstat that can send rcon messages to a server as well.

Linux users can use the GNU screen utility to remotely manage the server. The program can be found at ftp://prep.ai.mit.edu/pub/gnu/screen-3.7.4.tar.gz if it is not already included in your distribution of Linux. More information on screen can be found in the screen manual (type man screen in the Linux console for a local version).

Q: Are there any websites for Quake 2 server admins?

A: Here are a few. Email [email protected] if you want to add your own.

The Linux Quake HOWTO
An in-depth article about using and playing Quake on Linux systems, with information on server operation.

Q: My question isn't here. What should I do?

A: You can subscribe to the q2servers mailing list by filling out the form at http://list.criticalmass.com/scripts/lyris.pl?join=q2servers. There are plenty of experienced server admins ready to help and to debate semantics.

Also, you can check out Gamers Extreme's Quake 2 Server Guide. The page has a special section for all aspiring server admins, especially those setting one up on a LAN.

© 1998 Kevin Lee. All Rights Reserved.