Unreal tournament 2003 dedicated server linux
Setting Up a Dedicated Game Server
Editor's Note: This story is actually Chapter 12 of the new ExtremeTech book, LAN Party: Hosting the Ultimate Frag Fest It's got everything you need to know to throw a ragin' LAN party: ground rules (what and why), power plays (the plug-in kind), getting connected (hubs, switches, and routers)--even what to order on the pizza. Read this chapter and if you want to know more, pick up a copy of the book today!
Chapter 12
In this chapter:
Types of computers to use
Dedicated servers
Changing settings
Command-line interfaces
Graphical interfaces
There are two ways you can set up a server to function, although only one works for larger parties:
Nondedicated (sometimes known as Listen mode). With this type of setup, not only can you host a game, you can play at that computer. This sounds great—until you realize that your PC is most likely maxed out just from running a single-player game. Asking it to keep track of six or seven other players and send out constant messages and update your screen 30 times a second with fabulous 3D graphics is enough to make almost any machine stutter. And most of them will.
Unfortunately, when computer games become overloaded, they tend to prioritize things so that the local player's game runs smoothly, sometimes waiting hundreds of milliseconds before getting around to tending to requests from remote PCs. This processing delay is, for all intents and purposes, the exact same thing as a bad ping time—the exact thing you're supposed to be avoiding when you hold a LAN party! And since one person at your party (the person at that machine) experiences no lag while everyone else is suffering, it can lead to some real bad blood in a competitive environment.
Dedicated. With this setup, your computer skips producing any fancy graphics. Instead, it dedicates all of its processing power to keeping track of where everyone is and who's shot who, and broadcasting that information back to all of its clients ASAP.
In other words, dedicated servers are the only way to go.
Purchase LAN Party: Hosting the Ultimate Frag Fest on Amazon.com.
When I sent preliminary copies of this book to my friends to get some feedback, the number one complaint that I heard went something like this:
"Ferrett, I hold small LAN parties all the time. I use servers in Listen mode and I never have problems with them. Why are you so hard on nondedicated servers?"
Now, me, I've had bad experiences with nondedicated servers, but I am willing to admit that not every party needs one—especially smaller, first-time parties for which procuring a separate PC may be a real problem. Parties with eight or fewer people can most likely get by with a server in listen mode, assuming the server is a fast one.
However, if you do have a spare computer to use, even at a small party, I think that putting in a dedicated server is never a bad idea.
What Kind of Computer Should You Use As a Server?
Because you want to have fast processing and response, you now know that you want a computer that does nothing but act as a server. The next question is invariably, "So how fast should it be?"
The answer is almost invariably, "As fast as it would take to run the game itself, plus as much extra as you can spare." Dedicated server programs are notorious resource hogs. That said, it still doesn't really answer the core questions: How much RAM and how fast a processor?
Sadly, I can't say. It would be nice if I could give you a hard formula to determine what your players-to-RAM ratio is, but player overhead varies from game to game. Each additional player burns up a few megahertz on your processor and takes up some RAM. However, there are some general rules:
In general, the more players there are, the more server resources are spent. A top-of-the-line game on a top-of-the-line machine will likely struggle to keep up with 30 players.
Older games (such as Counter-Strike) require fewer resources than a new eye-popping game, such as Tron 2.0. Thus, you might be able to get away with an older machine for older games, or host a lot more players on a top-of-the-line machine with an older game. A new game on an older machine can be death.
Mods and custom maps use up more server resources. Generally, the maps that come with a game are optimized for the game's engine. Custom mods and maps, which are written by fans, either push the envelope of the game's engine or are written without concern for optimization—or sometimes both. As a result, heavily customized maps tend to be more of a drain.
Most of the time, it's safer to just bring out the machine with the best processor and a boatload of RAM. Fortunately, having a top-of-the-line graphics card doesn't matter as much when the game's graphics are reduced to a command-line window, so you can often get away with a lesser rig, but don't ever use the worst computer in the room.
Unlike Internet servers, you don't have to worry about running out of bandwidth. The average cable modem can support 20 players max, but even with a puny 10 Mbps hookup, you've got 10 times as much bandwidth to work with.
Though most programs will allow you to start up a game server from within the game itself, that's usually wasteful. When you start up the game in single-player mode and then put it into server mode, you generally load a lot of useless stuff into memory that could be used to host more players—for example, since the server is never going to actually put any graphics on screen, does it need to load all of those graphics routines into memory?
As such, most popular games (but not all) have a dedicated server program—a stripped-down and optimized version of the game that is used only for hosting. Some games have the dedicated server program installed with the normal game, leaving you with the job of finding it buried in some strange directory, but most of the time you'll have to hunt it down on the Internet.
Tip: While you can Google up the location of a dedicated server, I find FilePlanet to be the quickest one-stop shop for dedicated servers. You may have to wait for half an hour before you can download (at least, that's the case for their non-premium servers; they offer no-wait servers for a fee), but I've never had FilePlanet drop a connection halfway through a 150 MB download. This has happened to me, however, when downloading dedicated servers from the official sites—especially right after a hot game has been released and the company's FTP servers are being hammered with requests from all over the world. In addition, FilePlanet always has the latest patches and dedicated servers.
Variations on Dedicated Server Programs Are Practically Endless
Every game's dedicated server program has its own quirks, so it would be impossible to cover them all here. If I made this book 700 pages long, I might be able to cram in tutorials on all of the popular games, but then a new wave of releases would come out and this book would be out of date.
Right now, as this chapter is written, the most popular online games are Counter-Strike, Battlefield 1942, Castle Wolfenstein, America's Army, and Unreal Tournament 2003. That's sure to change as soon as this book is released. Computer games wait for no one. Doom 3, Battlefield Vietnam, and Half-Life 2 are sure to be popular, but I obviously can't give you tutorials on games that haven't been released at the time that I write this!
Right now, you can look for the programs described above at the following sites—they're relatively stable sites, but there are no guarantees that these links will always be around:
Counter-Strike Dedicated Server Tutorial
Battlefield 1942 Dedicated Server Tutorial
Castle Wolfenstein Dedicated Server Tutorial
America's Army Dedicated Server Tutorial
Unreal Tournament 2003 Dedicated Server Tutorial
In this chapter, I'll be using the most popular LAN party game, Counter-Strike (which, in case you didn't know, is a popular game mod based on the Half-Life engine), to demonstrate many of the principles of dedicated server configuration. Alas, to know the specifics of your game's dedicated server program, you'll have to read the documentation.
There are two ways to change the settings on your dedicated server program: via a command-line interface or a graphical interface. That's just a fancy way of saying "You can type in commands" (command-line) or "You can use your mouse to change the settings in a Windows dialog box" (graphical). Every server program has a command-line interface that enables you to change the server's setup, but not all of them have a graphical interface, which is a shame, because the graphical programs are much easier to use.
We'll start with the tricky one first: command-line interfaces.
Command-Line Interfaces: Nonintuitive, but Powerful