------------------------------------------------------------------------------- KISS Psycho Circus: The Nightmare Child Dedicated Server Readme ------------------------------------------------------------------------------- You can run a dedicated server using the DEDICATED.EXE file. A dedicated server is a deathmatch server that does not have a local client connected and therefore doesn't get slowed down dealing with both server logic and 3D graphics. The dedicated server is also capable of communicating with the GameSpy master server so that users can find and connect to internet games by using GameSpy Arcade or GameSpy 3D. If you wish to host a server that is visible to GameSpy, you MUST use dedicated.exe. Hosted games from within KISS Psycho Circus will not be visible to GameSpy. ------------------------------------------------------------------------------- Operating Systems ------------------------------------------------------------------------------- The dedicated server will run in Windows 95, Windows 98, Windows 2000 and Windows NT. It has not yet been tested on Windows ME, but should work on that OS when it is released. If you'd like to port the dedicated server to another operating system, contact nelno@thirdlaw.com. ------------------------------------------------------------------------------- Setup ------------------------------------------------------------------------------- Hosting a dedicated server is as simple as running DEDICATED.EXE and typing "start". This will start a game using the default map list. If you wish to start a game using another set of maps, you can change the list of maps used with the "maplist" command. Config Files ------------ Normally you will want to set up all your server parameters in a text file and then tell the server to load that file on startup. To do this, use "-exec server.cfg" on the command line. The server config file can contain any variables you wish to set, such as the server name and location, game type, fraglimit, etc. You cannot specify functions or switches in a config file, though. ------------------------------------------------------------------------------- Commands ------------------------------------------------------------------------------- The dedicated server supports a number of commands, which are either switches, functions or variables. Switches operate only from the command line. Functions cause the server to perform a specific action. Variables specify or store a setting for the dedicated server to use. All types of commands can be specified from the command line. To specfiy a switch or a function from the command line, use "-commandname", such as "-exec server.cfg". To specify a variable from the command line, use a "+" in front of the variable "+hostname LV-426". In the following list, parameters in <> are optional, parameters in [] are required and quotes ("") indicate a string parameter that must have the quotes around the parameter if spaces are in the string. Switches -------- rez "rez file name" Specifies the location of alternate rez files and rez paths. Normally this is not needed, unless you are running from a directory other than the one where the game is installed, or you have un-rez'd the psycho.rez file for some reason. The order you specify rez paths in is important. Each rez path overrides all rez paths specified before it. This means if there are any common files between two rez paths, the file will be used in the path specfied last. To run from a directory other than the install directory, you must specify two rez file paths. First, specify the path to psycho.rez, then specify the path where object.lto and server.dll exist, such as: dedicated.exe -rez c:\games\psycho\psycho.rez -rez c:\games\psycho nogamespy Tells the server not to report its presence to the GameSpy master server. Use this if you wish to run a private server that doesn't show up in GameSpy. logfile Tells the server to write its output to a log file. debuginfo Instructs the server to output extra debugging information to the consoel. Functions --------- start To start the server, use the "start" command. This will start a game on the first map specified in the map list file denoted by the "maplist" variable. Optionally, you can specify a world name after "start". This world will be added to the beginning of the list of maps in the map list file. quit Shuts down any active game and exits the dedicated server. All connected clients are kicked first. stop Ends the currently active game, kicking all clients in the process. end Same as stop. exec [config file name] Executes the specfied config file. kick [player name] Kicks the player with the specified name from the server. You can use double quotes around the name if it contains spaces. kick_id [client id] Kicks the client with the specified id from the server. list_ids Lists all players' names and client ids. nextlevel Advances the server to the next level in the map list. say "message" Print a message to the message console of all clients. msg "message" Center print a message to the screen of all clients. Use this for important announcements such as the server going off line. Variables --------- Most variables must be set before the game is started in order to take effect. hostname "name" Specifies the name of the server that is displayed to clients in when browsing for games. maxclients [max players] Specifies the maximum number of players allowed on the server. The max allowed is 16. fraglimit [max frags] Specifies the number of frags that must be reached by any single player for the current level to switch. timelimit [minutes] Specifies the number of minutes before the current level will switch. motd "message" Specifies the message of the day that players will see when logging on to the server. location "name" Specifies the location of the server. This can be any string and is only used by GameSpy. gametype [number] Specifies the type of multiplayer game to play. Valid values are: 1 = regular deathmatch 2 = conquer deathmatch spawntype [number] Specifies the type of respawning the server will use. Valid values are: 0 = randomly chooses a spawn point 1 = spawn at farthest spawnpoint from body 2 = spawn at spawnpoint with fewest players in area 3 = spawn at farthest spawnpoint with lowest number of players 4 = spawn in order friendlykill [number] Specifies the penalty for killing a teammate. suicide [number] Specifies the penalty for killing oneself. maplist [map list file] Specifies the name of the map list file. This is a file with a list of map names in it, one per line. The server will rotate through these maps. port [port number] Specifies the port to use for the server. The default is 42972. gamespy_port [port number] Specifies the port to use for communicating to GameSpy. The default port is 42973. keepitems [0 or 1] If 0, players won't keep their items when changing levels. startgauntlets [0 or 1] statbelt [0 or 1] startboots [0 or 1] startshoulderplates [0 or 1] startbreastplate [0 or 1] startmask [0 or 1] If not 0, players will start with the item associated with the variable. Note that "startgauntlets" starts the player with both the gauntlets and a melee weapon, since melee weapons cannot be used without gauntlets. startscourge [0 or 1] startzero [0 or 1] startmagma [0 or 1] startwindblade [0 or 1] startultimate [0 or 1] If not 0, players will start with the associated weapon. Note that "startgauntlets" starts the player with both the gauntlets and a melee weapon, since melee weapons cannot be used without gauntlets. fovchange [0 or 1] If not 0, players can change their FOV to something other than 90 degrees. teamplay [number] Specifies teamplay mode. 0 = no teamplay 1 = teamplay, teammates cannot be damaged 2 = teamplay, teamates can be killed mapname Reports the name of the map that is playing. ------------------------------------------------------------------------------- Doc History ------------------------------------------------------------------------------- This doc was created on: 8/24/2000