[6.1] What sort of system is required to run a dedicated server? |
|
At a minimum a Pentium 133 with 40 megs of RAM. A safer bet is a minimum of a Pentium 166 or better with 64 megs of RAM. The faster the better. Some people have servers on lesser systems, such as a Pentium 75 with 32 megs. This will work, and likely play ok for smaller games.
|
[6.2] How much bandwidth do I need to run a server? |
|
The upstream bandwidth is most important for a dedicated server. That is the speed at which your connection can upload data to the internet.
A good rule of thumb is 30 to 40 kilobits per second per player. So for example if your connection is an ADSL line with 128kbit upload, then you can run a 3 or 4 player dedicated server. If you do not allow enough bandwidth the game will be bad for everyone.
|
[6.3] How do I set up a dedicated server? |
|
There are two ways to set up a dedicated server. Set it up manually or use the user friendly tool D3DSU found at http://www.westg8.com/d3/instructions.htm.
To do it manually,
- Make sure you have a PXO account: because you will need to use your username and password in the Dedicated.cfg file.
- Make sure you have updated D3 to version 1.5.
- Modify the Dedicated.cfg file that is located in the games/descent3/ directory to look something like this:
[server config file]
PPS=5
TimeLimit=60
KillGoal=0
RespawnTime=30
GameName=put your game name here
MissionName=fury.mn3
SetLevel=1
SetDifficulty=0
ScriptName=Anarchy
ConnectionName=Parallax Online
MaxPlayers=9
PXOUsername= putnamehere
PXOPassword= putpasswordhere
BrightPlayers=0
AllowMouselook=0
PXOHostingLobby=global
You will have to modify some of the entries like PXOUsername
and Password, MissionName, and GameName to whatever you wish
to play.
- Now just goto the D3 launcher and click the setup button and goto the misc. tab. There, you will see a text box. Add this to that text box: -dedicated Dedicated.cfg.
- Now run D3 and the server should start up. Log on to PXO from another computer and you should see your server on the gamelist.
|
[6.4] What sort of settings should I use in general? |
|
A good setup for an online server is to use 7 or 8 pps (packets per second). Also 'AccurateCollisions' should be disabled, as it is by default. Rotational Velocity 'SendRotVel' should also be disabled, as it is by default, since it makes the position packets larger.
A common config file might look like this:
[server config file]
PPS=7
Maxplayers=4
TimeLimit=60
KillGoal=0
RespawnTime=30
GameName=My Game
MissionName=fury.mn3
Scriptname=Anarchy
ConnectionName=Parallax Online
PXOUsername=<username>
PXOPassword=<password>
SetDifficulty=3
AccurateCollions=0
SendRotVel=0
The last two commands are by default set to zero (off) so if they are not included that is fine.
|
[6.5] Some people say I should disallow all the mines, why? |
|
This is true for online games. Mines of all kinds, including Proximity Mines, Seeker Mines, Bouncing Betties are all handled as robots, so they send out position packets just like a robot or another player. In a D3 multiplayer game, counter-measures can cause a small amount of network loss when they are released by a player.
These can be removed, or disallowed from any server by including the commands in the config file.
Example:
DisallowPowerUp=Betty4Pack
DisallowPowerUp=ProxMinePowerup
DisallowPowerUp=Seeker3Pack
|
[6.6] How do I know what server commands are available? |
|
The manual offers a list and description of the most common commands. You can also type $help from the server console to get a list. Additionaly you can type $help to get a little more detail.
Example:
$help kick will display the info on the kick command.
|
[6.7] Can I talk to players on my dedicated server? |
|
Yes, it is very simple. Just place the word 'say' in front of any messages. The '$' is not required, and should not be used for this command. You can also send private messages to a player or team by using the the player's name.
Examples:
say hi I am the server (will send "Hi I am the server" to all players).
say bigboy:Hi this is a private message (sent only to the pilot bigboy).
say bi:Hi this is a private message (sent only to the pilot bigboy, or any
pilots whose names begin with the letters 'bi').
|
[6.8] How do I get a message to appear to the players as they enter the game? |
|
A Message Of The Day may be added to the dedicated config file which will display for a few seconds to each player when they enter/join the server. This is useful to give a contact email address to report problems, or the like.
This is done using the undocumented command MOTD. In the dedicated config just add a line such as MOTD=My Message.
Example:
MOTD=Report any problem to JohnDoe@Email.com
|
[6.9] When I use the $scores command it runs off screen, I can't see anything! |
|
The $scores command allows an additional parameter to be added. This allows the server operator to see only top portion of the list. This is useful for many things, including seeing the pings of the active players.
Example:
$scores 10<enter>
Will display only the top 10 lines of the scores screen.
|
[6.10] Can I do remote administration, if so how? |
|
Yes. D3 allows you to TelNet into a server remotely and do any of the tasks or commands allowed locally. To do this you will need to add a couple of lines to the dedicated config file as follows.
AllowRemoteConsole=1 | (enables the function) |
ConsolePassword=<password> | (login password) |
Example:
AllowRemoteConsole=1
ConsolePassword=secret
Then with a TelNet program, such as that included with Windows you enter the IP address of the remote server, and a port number which by default is 2092. You will be prompted for the (case sensitive) login password, simply enter it. You can then enter any console command such as $help.
If you would like to use an alternate port for control, or are running multiple servers on a single system which will require alternate ports for each server, add the command 'RemoteConsolePort' to assign the port in the dedicated config file.
Example:
RemoteConsolePort=2093
|
[6.11] Can I do administration from within the game, if so how? |
|
Yes, limited or basic admin is allowed from with in the game, i.e. when you are in the game as a client/player. This requires that a simple text file be written and placed in the D3 directory, and that a command option be added at launch time.
A file named .dmfc must be created that contains the following lines:
remoteadminpass <password>
remoteadmin on
For example a file called ingame.dmfc might be created that reads:
remoteadminpass secret
remoteadmin on
When launching D3 simply add the command -autoexec ingame.dmfc. When playing in a game, you can then login and enter basic commands. To login while in the game,
Press F8 (the chat key)
type "$remote login <password>" (in this case 'secret' without the quotes)
You will see a message indicating that login was sucessful. You can then enter commands by again pressing the F8 key, and preceeding each command with "$remote" (without the quotes).
Example:
$remote $setmaxplayers 5 | would change the max number of player to 5 (which is the server + four clients). |
| |
|
[6.12] Can I run more than one server on a single computer? |
|
Yes, with a few extra commands it can be done. Keep in mind that a more powerful computer is required. For example to run 2 servers on one compter it should be a 400MHz+ system with 128Megs of RAM. You will need to use the '-useport' command to assign an alternate game port. You will need to use the '-tempdir' command to assign an alternate temp dir. Also you should not alter the default framecap when running multiple servers.
As an example, we can step through the requirements. We will assume you want to run two servers on one system. The first server can/will use all of the default ports and directories. So it would be launched as follows.
From the D3 Launcher command line (under Setup, Misc):
-dedicated server1.cfg
To launch from the command line in the D3 directory it would be:
main -launched -dedicated server1.cfg
This server will use game port 2092, and remote admin port 2092, as well as the D3 default temp directory. The second server will require a temp directory, so create one. For example create a directery call d3temp in the root of C: (i.e. MD C:\d3temp).
From the D3 Launcher command line (under Setup, Misc):
-dedicated server2.cfg -useport 2093 -tempdir C:\d3temp
To launch from the command line in the D3 directory it would be:
main -launched -dedicated server2.cfg -useport 2093 -tempdir C:\d3temp
This server will use game port 2093, and temp directory C:\d3temp.
If you want to be able to TelNet in using remote admin, you will need to include a line in server2.cfg. For example, RemoteConsolePort=2093. Then the remote admin functions of both servers are available, one at port 2092, one at port 2093.
|
[6.13] What is the MultiSettingsFile command all about? |
|
The MultiSettingsFile command allows you save a game setup config created via the 'Start Game' menu. Then call that config file when starting a dedicated server. It is used by entering the command along with a path and file name.
MultiSettingsFile=<drive:\path\filename.mps>
The default path of these settings files is C:\Games\Descent3\Custom\Settings. The file is created by the following steps:
- Enter the Multiplayer menu
- Select a connection type (even if it is different from what you will want in the dedicated server, as that can be overridden). Direct TCP/IP is the simplest choice.
- Click 'Start New Game'
- Select the game type, game name, mission, etc.
- Select Multiplayer options menu and set the pps, timelimit, respawn, etc.
- Select Configure allowed Ships/Items if you like to remove items you do not want in the game.
- Click 'Done'
- Click 'Save Settings'
- In the line that by default reads 'C:\Games\Descent3\Custom\Settings' add the filename you wish to save this configuration as. For example: 'C:\Games\Descent3\Custom\Settings\
Mysetup.mps'
- Click Save.
There is now a file called 'Mysetup.mps' in the settings directory. To use this as a basis for starting dedicated servers simply include it as the first command in the dedicated config file. It should be first so that any other commands can override settings you want changed. For example:
[server config file]
MultiSettingsFile=C:\Games\Descent3\Custom\Settings\Mysetup.mps
PPS=7
Maxplayers=4
ConnectionName=Parallax Online
PXOUsername=<username>
PXOPassword=<password>
The commands that follow override those contained in the MPS file. So the connection type, pps, etc. can be altered.
The command is very useful if there a group of weapons you always wish to exclude from games for example, without having to use the DisAllowPowerUp command line after line.
This feature is also useful when you want to have some basic settings apply to all of your multiplayer games. For example, if you're tired of readjusting the game mode from it's default setting 'Co-op' to anything you prefer, simply save your settings in the above mentioned directory under the name 'default.mps'. Now every time you enter the 'Start new game'-menu you already have your preferred basic settings to build upon.
|
[6.14] Can I disallow certain ships, if so how? |
|
This can be done. It requires that an MPS file be created. MPS stands for MultiPlayerSettings. See the section above on the use and creation of MPS files.
To disallow a ship or ships, simply disallow them in the screen for 'Configure allowed Ships/Items' when creating an MPS file. When a player enters a game with a disallowed ship, it will be forced to a PyroGL.
|
[6.15] I understand 'DisallowPowerUp', why is there an AllowPowerUp command? |
|
The AllowPowerUp command is the opposite of DisAllowPowerUp. It is mainly used to add items back that may have been disallowed with the use of an MPS file.
As an example you may base a number of dedicated server files off of a single MPS file. That MPS file may disallow the Napalm Cannon. Yet in one of the dedicated server configs you want the Napalm Cannon. So you would simply add the AllowPowerUp command after the MultiSettingsFile command.
Example:
[server config file]
MultiSettingsFile=C:\Games\Descent3\Custom\Settings\Mysetup.mps
AllowPowerUp=Napalm
The AllowPowerUp command must follow the MultiSettingsFile command, since all it is doing is resetting the variable found in the MPS file.
|
[6.16] What does -framecap have to do with a server? |
|
The server, just like the client runs at a default framerate of 50fps. Although the server does not actually render video of the game, it does all of the server calculations such as missile tracking for example.
If the server is dedicated to running a single game, and nothing else this framecap can be removed. It may make for a more accurate game, particularly on LAN. This is done by simply adding the command '-framecap 999' (without the quotes) to the launch command. As with the client you can also choose a different framecap.
This should not be done if the system running the compter has multiple servers running, or is running any other tasks.
|
|
Top of this section |
|
7 - Linux Server Setup |
|
5 - Single-Player |
|
0 - Table of Contents |
|