June 11, 2021

QuakeWorld Server Console Commands


Author: JakFrost
Email: jakfrost(at)planetquake(dot)com
Web Site: http://www.planetquake.com/console/
Created: April 13, 1997
Last Modified: May 18, 2000
Based On: QuakeWorld v2.30
Source: http://www.planetquake.com/console/commands/quakeworld_server.html

Copyright (C) 1997-2000 JakFrost, All Rights Reserved

This is the complete list of console commands, console variables, and command line parameters for QuakeWorld Server. All console commands and variables are identified, documented, tagged, and classified. This document has been designed to help out all those people who want to customize the game to their liking.

Table Of Contents

  1. Introduction
  2. Command Types Key
  3. Console Commands List
  4. Command Line Parameters List
  5. Version Information
  6. Legal
    1. Copyright
    2. License
    3. Trademarks and Servicemarks
    4. Warranty Disclaimer

1. Introduction

This is the complete list of commands for the QuakeWorld Client. All commands are identified, documented, tagged, and classified. With permission, I have used the work of Daniel “Prog” Rinehart and information from his web site – Quake Console Command Pages – to complete my list. I have also visited the QuakeWorld Central Console List a few times to gain some insight into a couple of troubling commands.

2. Command Types Key

Performs a command, sometimes with extra parameters. The default syntax is “command“.
Command line parameter used upon launching the executable file. The Type: field is not shown for parameters because of the seperate list. The default syntax is “-parameter“.
Toggles the setting between known attributes, usually on and off only. The default syntax is “command (0|1)“.
Allows for the change of a game variable with numeric input. The default syntax is “command (value)“.

3. Console Commands List


Type: Command

Syntax: addip (IP address)

Description: Add a single IP or a domain of IPs to the IP list of the server. Very useful for banning people or for specifing which IPs only have access to the server.

addip 123.123.123


Type: Command

Syntax: alias (name) “(command list)”

Description: Used to create a reference to a command or list of commands. When used without parameters it displays all current aliases.

Note: Enclose multiple commands within double-quotes (“) and seperate each command with a semi-colon (;).

alias quickaxe “impulse 1;wait;+attack;wait;-attack”
alias sayhi “say Hi foo!”


Type: Toggle

Default: 1

Description: Toggle if clients can download game data from the server. Useful for protecting commerial game data from being download by users or when restricting the use of the server to people who only have the necessary files.


Type: Toggle

Default: 1

Description: Toggle if clients can download maps files (.BSP) from the server.


Type: Toggle

Default: 1

Description: Toggle if clients can download model files (.MDL) from the server.


Type: Toggle

Default: 1

Description: Toggle if clients can download skin files (.PCX) from the server.


Type: Toggle

Default: 1

Description: Toggle if clients can download sound files (.WAV) from the server.


Type: Variable

Default: 2.0

Description: * Non-functional. How much a player’s screen tilts when strafing.


Type: Variable

Default: 200

Description: * Non-functional. How quickly a player straightens out after strafing.


Type: Toggle

Syntax: deathmatch (1|2|3)

Default: 1

Description: Sets the rules for weapon and item respawning.

1 – Does not leave weapons on the map. You can pickup weapons and items and they will respawn.
2 – Leaves weapons on the map. You can only pick up a weapon once. Picked up items will not respawn.
3 – Leaves weapons on the map. You can only pick up a weapon once. Picked up items will respawn.


Type: Toggle

Default: 0

Description: Toggle verbose output of server information. Useful for diagnosing problems and learning more about the server.


Type: Command

Syntax: echo (string)

Description: Display text to the console.

Note: Quotes around the string are not neccessary for this command. This is an excpetion.

Example: echo I love Quake!


Type: Command

Syntax: edict (edict number)

Description: Report information on a given edict in the game.

Example: edict 128


Type: Command

Syntax: edictcount

Description: Display summary information on the edicts in the game.


Type: Command

Syntax: edicts

Description: Display information on all edicts in the game.


Type: Command

Syntax: exec (filename)

Description: Execute a script file containing commands and aliases.

Example: exec mysetup.cfg


Type: Toggle

Syntax: filterban (0|1)

Default: 1

Description: Determines the rules for the IP list. Useful for limiting the access to the server in a very specific way based on IP addresses.

0 – Only IP addresses on the Ban list will be allowed onto the server.
1 – Only IP addresses NOT on the Ban list will be allowed onto the server.


Type: Command

Syntax: floodprot (number of messages) (number of seconds) (silence time in seconds)

Default: 4 4 10

Description: Sets the options for flood protection. Useful for keeping those people that constantly repeat messages in check.

floodprot 4 8 30
floodprot 2 1 10


Type: Command

Syntax: floodprotmsg “(string)”

Description: Sets the message displayed after flood protection is invoked.

Example: floodprotmsg “Shut up foo!”


Type: Command

Syntax: flush

Description: Flush the server cache.


Type: Variable

Default: 0

Description: Amount of frags a player must attain in order to exit the level.


Type: Command

Syntax: fraglogfile

Description: Enables logging of kills to a file. Useful for external frag polling programs. The file name is frag_##.log.


Type: Command

Syntax: gamedir (directory)

Description: Specifies the directory where the QWPROGS.DAT file is found and other additional files such as maps, models, sound, and skins for Quake modifications.

Note: This command can be specified while a game is in progress, after the current map ends this command will take effect. This command is very useful for changing the Quake mod type without restarting the server. Any connected players will still remain on the server after the map change and they will be able to play the new mod.

gamedir ctf
gamedir fortress


Type: Command

Syntax: give (user id) (item) (amount)

Description: Give user a certain amount of an item.

1 – Axe
2 – Shotgun
3 – Double-Barrelled Shotgun
4 – Nailgun
5 – Super Nailgun
6 – Grenade Launcher
7 – Rocket Launcher
8 – ThunderBolt
C – Cells
H – Health
N – Nails
R – Rockets
S – Shells

Note: The -cheats parameter must be used to launch the server to use the give command. Also the key and value *cheats ON will be displayed in the serverinfo information.

give 1234 R 99
give 1234 7


Type: Command

Syntax: god (user id)

Description: Toggle god mode for a certain user. Useful for testing levels or features.

Example: god 1234


Type: Command

Syntax: heartbeat

Description: Force a heartbeat to be sent to the master server. A heartbeat informs the master server of the server’s IP address thus making sure that the master server knows that the server is still alive.


Type: Command

Syntax: hostname “(string)”

Description: Report or sets the server name.

Example: hostname “The Foo Pit”


Type: Command

Syntax: kick (user id)

Description: Remove a user from the server. Use the status command to receive the user’s id.

Example: kick 1234


Type: Command

Syntax: listip

Description: Print out the current list of IPs on the server list. Not to be confused with the status command which prints out the list of the IPs of the connected players.


Type: Command

Syntax: localinfo (key) “(value)”

Description: Shows or sets localinfo variables. Useful for mod programmers who need to allow the admin to change settings. This is an alternative storage space to the serverinfo space for mod variables. The variables stored in this space are not broadcast on the network. This space also has a 32-kilobyte limit which is much greater then the 512-byte limit on the serverinfo space.

Special Keys: (current map) (next map) – Using this combination will allow the creation of a custom map cycle without editing code.

localinfo dm2 dm4
localinfo dm4 dm6
localinfo dm6 dm2


Type: Command

Syntax: logfile

Description: Toggles logging of console text. The file name is qconsole.log.


Type: Command

Syntax: map (filename)

Description: Change to a new map.

Example: map dm2


Type: Variable

Default: 8

Description: Sets how many clients can connect to your server, this includes spectators and players.


Type: Variable

Default: 8

Description: Sets how many spectators can connect to your server. The maxclients value takes precidence over this value so this value should always be equal-to or less-then the maxclients value.


Type: Command

Syntax: noclip (user id)

Description: Toggle no-clipping mode for a player.

Example: noclip 1234


Type: Command

Syntax: password “(string)”

Description: Assigns a password to a server. Players attempting to join must have a valid matching password variable set to connect. Also if the password is equal to none then the password function is disabled.

password “foo”
password “none”


Type: Command

Syntax: path

Description: Report what file paths the server is using.


Type: Command

Syntax: profile

Description: Report information about QuakeC stuff.


Type: Command

Syntax: quit

Description: Shutdown and exit the server disconnecting all clients.


Type: Command

Syntax: rcon_password “(string)”

Description: Set the remote control password. This is required when doing remote control of a server. Very useful is the server is in a different physical location than the administrator. All server functions can be performed remotelly when the remote client uses the rcon command.

Example: rcon_password “foo”


Type: Toggle

Default: 1

Description: Toggle if the game is registered or not. This will affect the default level cycle and the accessibility of other episodes through the start map.

Example: rcon_password “foo”


Type: Command

Syntax: removeip (IP address)

Description: Remove an IP address from the server IP list.

removeip 123.123.123


Type: Toggle

Syntax: samelevel (0|1|2|3)

Default: 0

Description: Determines the rules for level changing and exiting.

0 – Allows advancing to the next level.
1 – The same level will be played until someone exits.
2 – The same level will be played and the exit will kill anybody that tries to exit.
3 – The same level will be played and the exit will kill anybody that tries to exit, except on the Start map.


Type: Command

Syntax: say (string)

Default: 0

Description: Send a message to all connected players on your server.

Note: Quotes around the string are not neccessary for this command. This is an excpetion.

Example: say I love Quake!


Type: Command

Syntax: serverinfo (key) “(value)”

Description: Reports or sets information about server. The information stored in this space is broadcast on the network to all players.

dq – Drop Quad Damage when a player dies.
dr – Drop Ring of Shadows when a player dies.
rj – Sets the multiplier rate for splash damage kick.
needpass – Displays the passwords enabled on the server.
watervis – Toggle the use of r_watervis by OpenGL clients.

Note: Keys with (*) in front cannot be changed. Maximum key size cannot exceed 64-bytes. Maximum size for all keys cannot exceed 512-bytes.

serverinfo dq 1
serverinfo admin “admin@foo.com”


Type: Command

Syntax: setmaster (IP:port #1) (IP:port #2) … (IP:port #8)

Description: Lists the server with up to eight masters. When a server is listed with a master, the master is aware of the server’s IP address and port and it is added to the list of current server connected to a master. A heartbeat is sent to the master from the server to indicated that the server is still running and alive.



Type: Toggle

Default: 0

Description: Toggle reporting on which clients are dropping packets.


Type: Toggle

Default: 0

Description: Toggle the display of all network packets.


Type: Toggle

Default: 0

Description: * Non-functional.


Type: Command

Syntax: spectator_password “(string)”

Description: Assigns a spectator password to the server. Clients wishing to connect the server as an observer must have the spectator flag enabled as well as provide the correct spectator_password.

Example: spectator_password “foo”


Type: Command

Syntax: status

Description: Report information on the current connected clients and the server. Very useful command for every server administrator.


Type: Command

Syntax: stuffcmds

Description: Execute all command which were specified command line with the + parameter.


Type: Variable

Default: 10

Description: Sets the acceleration value for the player.


Type: Variable

Default: 2

Description: Sets the value for auto-aiming leniency.


Type: Variable

Default: 0.7

Description: Sets how quickly the player accelerates in air.


Type: Variable

Default: 6

Description: Sets the friction value for the player.

Note: Default friction value for regular Quake is 4.


Type: Command

Syntax: sv_gamedir (directory)

Description: Displays or determines the value of the serverinfo *gamedir variable.

Note: Useful when the physical gamedir directory has a different name than the widely accepted gamedir directory.

gamedir tf2_5; sv_gamedir fortress
gamedir ctf4_2; sv_gamedir ctf


Type: Variable

Default: 800

Description: Sets the global value for the amount of gravity.


Type: Toggle

Default: 1

Description: Toggle the use of high character color names for players.


Type: Toggle

Default: 1

Description: Toggle the use of map checksumming to check for players who edit maps to cheat.

Note: A player who has edited his map files to cheat by removing textures from walls will not be able to join the server and play.


Type: Variable

Default: 320

Description: Sets the maximum speed a player can move.


Type: Variable

Default: 0.1

Description: The maximum amount of time in seconds before a client a receives an update from the server.

Note:The default time of 0.1 means that at least a packet must be send to the client every 100-milliseconds. If the value was 0.5 then it would stand for 500-milliseconds.


Type: Variable

Default: 2000

Description: Sets the maximum velocity an object can travel.


Type: Variable

Default: 0.03

Description: The minimum amount of time the server will wait before sending packets to a client.

Note: The default time of 0.03 means that if possible a packet can be send to the client every 30-milliseconds. If the value was 0.07 then it would stand for 70-milliseconds. It is best to set the value to 0.05 if the server is available to modem players, this will limit the amount of packets that the server has to send out and will make modem players happier. Also, there is a weird phenomenon that happens if the value is changed drastically, projectiles seem to move slower and their movement becomes jumpier.


Type: Toggle

Default: 1

Description: * Unknown. Has something to do with the table which is build at the loading time of the map.


Type: Toggle

Default: 1

Description: Toggles the ability of spectators to talk to players.


Type: Variable

Default: 500

Description: Sets the maximum speed a spectator can move.


Type: Variable

Default: 100

Description: Sets the value that determines how fast the player should come to a complete stop.


Type: Variable

Default: 10

Description: Sets the water acceleration value.


Type: Variable

Default: 1

Description: Sets the water friction value.


Type: Toggle

Default: 0

Description: Toggles console screen output.


Type: Toggle

Syntax: teamplay (0|1|2|3)

Default: 0

Description: Determines teamplay rules.

0 – No teams. You can hurt yourself and others.
1 – You cannot hurt yourself nor your teammates.
2 – You can hurt yourself, your teammates, and you will lose one frag for killing a teammate.
3 – You can hurt yourself but you cannot hurt your teammates.


Type: Variable

Default: 0

Description: Sets the amount of time in minutes that is needed before advancing to the next level.


Type: Variable

Default: 65

Description: Sets the amount of time in seconds before a client is considered disconnected if the server does not receive a packet.


Type: Command

Syntax: user (user id)

Description: Report information about a given user id.

Example: user 1234


Type: Command

Syntax: wait

Description: Wait a game tic. Useful for alias scripts.


Type: Command

Syntax: writeip

Description: Record all IP addresses on the server IP list. The file name is listip.cfg.


Type: Variable

Default: 2

Description: The number of minutes that the server will keep the character of a player on the map who seems to have disconnected.

4. Command Line Parameter List


Type: Parameter

Syntax: +(console command)

Description: Allow for the passing of console commands from the command line to the console.

+map dm2
+exec server.cfg
+rcon_password “foo”


Type: Parameter

Syntax: -basedir (directory)

Description: Point to the Quake directory.

Example: -basedir c:\games\quake


Type: Parameter

Description: Enable cheat commands.

Note: Note: Will also display the message *Cheats ON in the serverinfo parameters.


Type: Parameter

Syntax: -game (directory)

Description: * Non functional. Used to specify the directory where mod files were stored.


Type: Parameter

Syntax: -minmemory (kilobytes)

Description: Allocate the minimum amount of memory for Quake.

Example: -minmemory 16384


Type: Parameter

Description: * Not implemented. Left over code that was supposted to disable Quake’s ability to play CDs.


Type: Parameter

Description: * Not implemented. Left over code that was supposed to disable joystick support.


Type: Parameter

Description: * Not implemented. Disable networking support.


Type: Parameter

Description: * Not implemented. Disable mouse support.


Type: Parameter

Description: * Not implemented. Disable sound support.


Type: Parameter

Syntax: -port (port)

Default: 27500

Description: Specify the port number that the server should run on.

Example: -port 27501


Type: Parameter

Description: * Not implemented. Start Quake in safe mode.


Type: Parameter

Description: * Not implemented.

5. Version Information

May 18, 2000

  • Updated the legal and licensing terms of this document and it is now released under the Free Software Foundation’s GNU Free Documentation License, Version 1.1.
  • Removed the links to the Cascading Style Sheet file which was providing the stylistic markup for this document in order to solve an existing major problem with troublesome web serving software and to promote better accessibility and availability of this document for the future at the price of removing the coloring and formatting markup from this document.
  • Changed the format of my email address from URL format to a proprietary format in order to defeat the automatic gathering of my email address by web crawler software and to prevent the increasingly annoying barrage of unsolicited commercial advertisements that I have been receiving.
  • Removed all other HTML LINK tags to prevent future problems with web serving software.
  • Renamed the Index section to Table Of Contents to correct this long lasting mistake.

November 6, 1998

  • New legal terms for this document. It is now released under the Free Software Foundation’s GNU General Public License Version 2.

September 29, 1998

  • Updated the HTML markup in the document. This should be the last such update because I think I solved all of the previous problems with HTML and the correct display of this document.
  • Added my email address to the Abstract section. It was been removed long time ago because of too many emails, and I hope that this isn’t the case this time.
  • Updated the HTML 4.0 deceleration to include the URI of the DTD, as stated in the standard.
  • Added the MIME Content-Type and Content-Language fields to explicitly set the character set encoding and language information.
  • Added HTML meta information to each document to include all necessary header information to help search engines.
  • Changed the Modified: field to Last Modified:, and Location: to Source: to avoid ambiguity.
  • Changed the formatting for the lists of commands and parameters from heading section based formatting into definition list formatting with each command or parameter being the definition term and the fields being the definition data. This is the proper way to display this information in HTML avoiding excessive H3 and BLOCKQUOTE tags which were not being used correctly in the previous versions of this document.
  • Changed the usage of bold and italic stylistic markup in order to facilitate better display of this document in browsers which do not support Cascading Style Sheets.
  • Updated the document because of QuakeWorld v2.30 release.
  • Added the sv_mapcheck command.

July 20, 1998

  • I have removed my email address from this document because I was getting unwanted emails. If you want to contact me, go to my web site.

July 16, 1998

  • Changed the internal HTML style for indentations and also to space out the fields for easier reading.
  • Added subsection 6.4. Trademarks in the 6. Legal section to take care of any trademark legalities.
  • Added a copyright notice to the Abstract section along with a short description about this document.

June 19, 1998

  • Updated document because of QuakeWorld v2.21 release.
  • Added the serverinfo watervis variable.
  • Changed the default value for the sv_aim variable.

June 9, 1998

  • Modified the document because of the site redesign.
  • Revised parts of the Legal section to enforce stricter standards for the display and distribution of this document.

May 23, 1998

  • Changed the HTML formatting that was used to display the fields for each of the console commands. This new style will conserve a lot more space.

March 16, 1998

  • Fixed the time rates for the sv_maxtic and sv_mintic commands so that milliseconds now stand for 1,000 of a second not 100. Thanks to Connor O’ Gorman and his arguable friend for pointing this out.

March 13, 1998

  • Made some formatting changes.
  • Added the Abstract section to identify this document.
  • Added links to each individual command.

January 19, 1998

  • Made a few HTML changes.

December 27, 1997

  • Updated the zombietime command with new information.

October 26, 1997

  • Made a few more minor HTML changes and incorporated support for Cascading Style Sheets into the document.

October 22, 1997

  • Made a major change to the HTML structure.
  • Removed all stylistic HTML tags to achieve 100% HTML compliance.

August 27, 1997

  • Rewrote the whole document into HTML.
  • Modified each and every part of the document to fix up a few things and rewrite other things

August 10, 1997

  • Update for version 2.0 of the server.
  • Added the following commands: floodprot, floodprotmsg, localinfo, sv_accelerate, sv_airaccelerate, sv_friction, sv_highchars, sv_maxspeed, sv_phs, sv_spectatormaxspeed, sv_stopspeed, sv_wateraccelerate, sv_waterfriction.
  • Modified the descritpion for the profile command.

July 29, 1997

  • Added a list of command line parameters.

July 18, 1997

  • Updated the “serverinfo needpass” variable.
  • Updated the “spawn” command.

June 14, 1997

  • Updated for version 1.64 of the QuakeWorld Server.
  • Added commands: allow_download_maps, allow_download_models, allow_download_skins, allow_download_sounds, spawn, sv_spectalk, sv_gamedir, serverinfo dq, serverinfo dr.

April 14, 1997

  • A few changes here and there.

April 13, 1997

  • Original version.

6. Legal

6.1. Copyright

This work is copyrighted pseudonymously by the author under all applicable laws. The author reserves all rights to this work. The copyright statement for this work is “Copyright (C) 1997-2000 JakFrost, All Rights Reserved”.

6.2. License

Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.1 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts and no Back-Cover Texts. You can access the license at http://www.gnu.org/copyleft/fdl.html or you can write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA to request a copy. Please preserve all authorship and contact information when distributing or modifying this work. All derivative works or works containing parts of this work must be released under the same license or a later version of it.

6.3. Trademarks and Servicemarks

All trademarks and servicemarks used in this work are acknowledged and are the property of their rightful owners.

6.4. Warranty Disclaimer


Copyright (C) 1997-2000 JakFrost, All Rights Reserved