Config Variables

These are the quake 2 variables you can set to change the look and feel of the game. They follow the general format of:

set variable "value"

An explanation of R1Q2 settings can be found here.

An explanation of Q2PRO settings can be found here.

toggle means 0 or 1.

Visit the Autoexec Files page to see these variables as different players use them.

Graphics Settings

Variable Value Description
cl_blend toggle appears to do the same as gl_polyblend?? Maybe this only applies to software mode.
cl_particles toggle 0=no particles from rockets, grenades etc
cl_lights toggle appears to do the same as gl_dynamic?? Maybe this only applies to software mode.
intensity float Higher=more intense textures
gl_coloredlightmaps float 0=almost black and white, 1=full color
gl_dynamic toggle 0=no dynamic lighting: light effect that illuminates rockets, explosions etc
gl_ext_multitexture toggle 1=use multiple texture processors.
gl_ext_swapinterval toggle 0=do not use swap interval between frames.
gl_flashblend toggle 0=no blending of lights onto the environment.
gl_mode toggle 4=800x600, 3=640x480, 6=1024x768
gl_modulate integer The brightness of a texture while it is being affected by dynamic lights. Note: If the value is less than 1 then the texture which on which the dynamic light is displayed will be darker than it's normal color. If the value is more than 1 then the texture will be brighter. This variable is mostly used to brighten up the lighting in the game without changing any gamma information.
gl_picmip integer 0=highest quality/sharp textures, higher=washed out/smoother texture effect.
gl_playermip integer 0=highest quality/sharp player textures, higher=washed out/smoother player texture effect.
gl_polyblend toggle Toggle pallet blending. Note: The pallet blending effect is used while being injured, using a powerup, or under water. It might be beneficial to disable this effect to see clearly in water, but then its not as easy to notice when someone is shooting you.
gl_shadows toggle 0=no shadows.
gl_swapinterval toggle 0=like having vsync off: max fps with timerefresh/timedemo. 1=like having vsync on: locked fps to cl_maxfps with timerefresh/timedemo.
gl_texturemode string Determines mode for hardware rendering. GL_LINEAR blends pixels. GL_LINEAR_MIPMAP_NEAREST is the default, interpolating the nearest pixels, and using mipmapping for bilinear hardware. GL_NEAREST is the closest to software mode. GL_LINEAR_MIPMAP_LINEAR = highest quality: Linear interpolation with mipmapping for trilinear hardware.
gl_triplebuffer toggle 1=use triple buffering for OpenGL cards.
vid_gamma float Higher=darker, lower=brighter
viewsize integer The size of the game screen. 100=fit full screen
vid_fullscreen toggle 1=full screen, 0=windowed mode
vid_ref string r1gl or opengl
R1GL Variable Value Description
gl_ext_texture_filter_anisotropic toggle Enable anisotropic filtering. This makes textures that are viewed at a distance much clearer. Hardware support required.
gl_ext_max_anisotropy integer The level of anisotropic filtering applied if enabled. Must be a power of 2 (ie, 2, 4, 8, 16). Maximum value on most cards is 16, the higher the amount of filtering, the slower rendering will be.
gl_ext_multisample toggle Enable multisampling (FSAA). This makes jagged edges of models appear much smoother but makes quite a performance hit on some older video cards. Hardware support required.
gl_ext_samples integer Number of samples per pixel to take for multisampling. Higher values give more smoothing at the expense of performance. Maximum value on most cards is 16.
gl_ext_nv_multisample_filter_hint string Select which multisampling kernel to use on NVIDIA cards. Nicest gives the best looking anti-aliasing at the expense of performance. (nicest or fastest)
gl_ext_texture_non_power_of_two toggle Enable uploading of textures that are not a power of two. This is supported by most new cards, however it is disabled by default since some ATi drivers behave poorly with it enabled. Enabling this may speed up loading times.
gl_ext_occlusion_query integer Enable support for occlusion queries to avoid rendering entities that are not visible. At this time, most cards that support this do not provide a significant performance boost to make it worthwhile. The 'no wait' setting ignores the occlusion query if it isn't ready by the time entities are ready to be drawn, 'wait' waits for the query to complete so hidden entities are never drawn. Hardware support required. 0 (Disabled), 1 (Enabled (no wait)), 2 (Enabled (wait))
gl_zfar integer Control how far you are able to see in the world. Default Quake II GL renderer uses 4096 units, which results in some parts of maps not being visible at long distances. 8192 should be fine for almost all maps.
gl_hudscale float Multiply the size of the HUD elements (including chat text) by this value. Useful if you run at a high resolution and the HUD elements are too small. You may also want to enable gl_noscrap if using this.
gl_noscrap toggle Avoid using the scrap, a texture built up of smaller textures. If you see textures 'leaking' into other textures, especially if using HUD scaling, enable this.
gl_doublelight_entities toggle Apply modulate twice to entities. This follows the standard Quake II renderer behaviour, but causes models to be unrealistically shaded in places.
gl_overbrights toggle Enable overbright rendering. Overbrights causes textures to be drawn multiplied by themselves which gives a much more vivid appearance. Due to the brightness of some Quake II textures however, overbrights may look a little weird in places.
gl_coloredlightmaps float Amount of coloring from the lightmap that is used. Setting this to 0 disables all colors and lighting is greyscale. May be set anywhere between 0 and 1.
gl_texture_formats string (png jpg tga) A list of image formats that are attempted for map textures before reverting to the original .wal.
gl_pic_formats string (png jpg tga) A list of image formats that are attempted for images (console, HUD, etc) before reverting to the original .pcx.
gl_dlight_falloff toggle Enable smooth dynamic light falloff. This makes the edges of dynamic lights smoother but may make them appear less intense.
gl_defertext toggle Defer drawing of text until the end of the frame. This avoids extra texture swapping and can give a noticeable FPS improvement. Unfortunately this is not compatible with mods that require specific ordering of text and images such as OSP tourney.
vid_topmost toggle Force the OpenGL window to always be on top of all other windows. Usually this will happen anyway by default.
vid_forcedrefresh integer Force a specific refresh rate to be used in fullscreen mode. Zero disables forced refresh rates. WARNING: Be sure your hardware supports the selected refresh rate in the resolution you run at before using this!
vid_optimalrefresh toggle Use the highest available refresh rate when running in fullscreen mode.
vid_flip_on_switch toggle Restore original desktop display settings when task switching out of Quake II.
vid_nowgl toggle Avoid using the Windows GL functions. This may be required with some very old or non-compliant OpenGL drivers. Disabling WGL prevents multisampling and some other features from working.
vid_forcewidth integer Force the renderer to output the frames in this width
vid_forceheight integer Force the renderer to output the frames in this height
r_mode integer Set this to -1 if you are using the vid_force* settings, otherwise will be selected from the onscreen menu

Network Settings

Variable Value Description
allow_download toggle 1=allow automatic downloading of game files from server as required.
allow_download_models toggle 0=do not allow automatic downloading of models from server.
allow_download_players toggle 0=do not allow automatic downloading of player (skins/sounds/models etc) files from server.
allow_download_sounds toggle 0=do not allow automatic downloading of sounds from server.
allow_download_maps toggle 1=allow automatic downloading of maps from server as required.
rate integer The maximum number of bytes that the server should send to the client.Some servers cap at 8000. Use 25000 for LAN.
cl_maxfps integer The maximum number of packets-per-second the server should send to the client to cap the frames-per-second rate.
cl_nodelta integer Toggle the use of delta network packet compression
cl_predict toggle 1=enable prediction of entities between network packets.
R1Q2 Variable Value Description
cl_async toggle Enable asynchronous FPS. This will allow you to use high rendering frame rates without flooding the network, as traditionally Quake II sends one packet per frame. Note that when enabled, some physics might feel slightly different. If this is enabled, the cl_maxfps cvar controls the network packet rate and the r_maxfps cvar controls the rendering frame rate. If disabled, cl_maxfps and r_maxfps become the same thing. Note, if you use a joystick / joypad or similar, you must have cl_async set to 0.
cl_maxfps integer If cl_async is enabled, cl_maxfps controls the number of packets per second to send to the server. If cl_async is disabled, this controls both the network and rendering FPS.
r_maxfps integer If cl_async is enabled, r_maxfps controls the maximum number of frames rendered per second. If cl_async is disabled, this is ignored.
cl_drawfps toggle Draw the current frames per second on the screen.
net_maxmsglen integer Maximum network message size that your client wants to receive. If connected to an R1Q2 server, larger messages can be used if the 1390 byte limit is too small, however a number of consumer routers and modems are unable to handle large UDP packets properly. Set this to 0 and it will use the best available message length as provided by the server, but if you notice you are unable to enter servers, your router is probably causing problems and you should reset it to the default. It's only worth changing this if you play mods that have extremely heavy activity.
Q2PRO Variable Value Description
cl_protocol integer Specifies preferred network protocol version to use when connecting to servers. If the server doesn’t support the specified protocol, client will fall back to the previous supported version. Default value is 0. 0 — automatically select the highest protocol version supported. 34 — use default Quake 2 protocol. 35 — use enhanced R1Q2 protocol. 36 — use enhanced Q2PRO protocol.
cl_maxpackets integer Number of packets client sends per second. 0 means no particular limit. Unless connected using Q2PRO protocol, this variable is ignored and packets are sent in sync with client physics frame rate, controlled with ‘cl_maxfps’ variable. Default value is 30.
cl_fuzzhack toggle Enables ‘cl_maxpackets’ limit even if Q2PRO protocol is not in use by dropping packets. This is not a generally recommended thing to do, but can be enabled if nothing else helps to reduce ping. Default value is 0 (disabled).
cl_packetdup toggle Number of backup movement commands client includes in each new packet, directly impacts upload rate. Unless connected using Q2PRO protocol, hardcoded value of 2 backups per packet is used. Default value is 1.
cl_instantpacket toggle Specifies if important events such as pressing ‘+attack’ or ‘+use’ are sent to the server immediately, ignoring any rate limits. Default value is 1 (enabled).
cl_updaterate integer Specifies the perferred update rate requested from Q2PRO servers. Only used when server is running in variable FPS mode, otherwise default rate of 10 packets per second is used. Specified rate should evenly divide native server frame rate. Default value is 0, which means to use the highest update rate available (that is, native server frame rate).
net_chantype toggle Specifies if enhanced Q2PRO network channel implementation is enabled when connecting to Q2PRO servers. Q2PRO netchan supports application-level fragmentation of datagrams that results is better gamestate compression ratio and faster map load times. Default value is 1 (enabled).

Gameplay Settings

Variable Value Description
name string player name
cl_run toggle 1=always run
crosshair integer crosshair number
fov integer The size of the player's peripheral vision. Default 90
gender string This variable is necessary in order to display the proper death messages which might be gender related: male/female/none.
hand toggle Toggle the handedness of the player: 0 - right, 1 = left, 2 = center+nogun.
m_filter toggle Toggle the filtering of mouse input. Feels smoother with this on when moving mouse and movement keys at same time.
sensitivity float The mouse sensitivity.
s_khz integer The sampling rate in KHz of the sound samples (default: 11).
s_volume float The volume for the playback of sound samples.
skin string The texture skin that the player is wearing
bob_pitch float The amount of movment that the player's screen moves up and down while in motion
bob_up float The amount of time before the player's screen starts moving
bob_roll float The amount of movment that the player's screen moves left and right while in motion.
run_pitch float The amount that the player should tilt up and down while running.
run_roll float The amount that the player should tilt left and right while running.
cl_anglespeedkey float The multiplier value for the yaw and roll axes
cl_entities toggle 1=display entities.
cl_footsteps toggle 1=enable foot step sounds (both you and opponents)
cl_gun toggle 0=hide the gun and hand
cl_noskins toggle 0=enable custom skins on other players
cl_vwep toggle Toggle the use of Visual Weapons on players
m_pitch float The sensitivity for looking up and down with the mouse. (negative value means inverted mouse)
m_side float The sensitivity for moving left and right with the mouse.
m_yaw float The sensitivity for looking left and right with the mouse.
msg toggle Toggle the display of messages: 0 (all) to 4 (none).
win_noalttab toggle 0=allow pressing alt-tab to switch to windows from fullscreen.
R1Q2 Variable Value Description
m_directinput 0 (Disabled), 1 (Enabled (buffered)), 2 (Enabled (immediate)) Enable DirectInput for mouse movement. DirectInput provides smoother mouse response and removes any mouse acceleration. If enabled, buffered mode ensures every single mouse event is reported to R1Q2. Immediate mode takes a 'snapshot' at the moment input is required and thus may miss very quick button clicks or other fast actions, but may be more responsive on slower PCs.
m_fixaccel toggle Enable a 'fix' for the mouse acceleration changes that Microsoft made on Windows 2000 and higher. By default, mouse acceleration is enabled on Windows 2000 or higher which is the opposite of what happens on earlier OSes. Enabling this fix attempts to remove the acceleration. The default value is enabled if the OS is detected to be Windows 2000 or higher, disabled otherwise. Use of DirectInput is recommended over this setting.
in_dinputkeyboard toggle Enable DirectInput for keyboard control. Not usually required, although if you find buttons seem to continue to act as if they are pressed for a few seconds after you release them, you can enable this to try and fix it.
cl_smoothsteps 0 (Disabled), 1 (Normal), 2 (Aggressive), 3 (Detect) Control how walking up steps is smoothed. When using cl_async 1, the original stair smoothing code does not work so well, so you can use this cvar to control it. Aggressive smoothing may attempt to smooth things that are not stairs. Detect smoothing attempts to detect stairs by their height and only smooths those.
cl_defermodels toggle Defer loading of models until you are in game. This provides a faster connection process but may cause a small amount of jitter when first entering a map.
cl_autorecord toggle Automatically begin demo recording at the start of the map.
Unless otherwise stated, the content of this page is licensed under Creative Commons Attribution-ShareAlike 3.0 License