Console/Variables
The following is a list of console variables available in SRB2. Variables are game settings that have a value assigned to them. The value of a variable can be changed by entering the variable's name into the console, followed by a single parameter – the value that it should be set to. For example, entering color blue
into the console will change the value of the variable color
to blue
, which causes the player's color to change to blue. A large portion of variables are saved in config.cfg
, allowing them to be carried over to the next SRB2 session even after closing the game. Most console variables also have equivalent entries in the game's Options menu.
In the list below, parameters are listed with their type in angle brackets after the command name, e.g. allcaps <boolean>
. The types can be any of the following:
- A boolean variable is a setting which can be either enabled or disabled. For instance,
chasecam on
turns on the camera, andchasecam off
turns it off. You can also use1
oryes
instead ofon
, and0
orno
instead ofoff
. - An integer is a number without a decimal point.
- A decimal is a number with a decimal point.
- A string is any text. The string can optionally be surrounded by quotation marks (
"
), which is necessary if the string contains spaces or certain special characters. Often, the string values that are valid for a variable are associated with equivalent integer values that can be used instead.
Some variables only allow the user to select specific values from a list, or select a value from a predetermined range.
Some console variables that pertain to the player have a second version for player 2 in splitscreen mode. In these cases, both variables are listed together, e.g., cam_dist/cam2_dist
, where cam_dist
is for player 1 and cam2_dist
is for player 2.
Game options
These are variables that affect various features of the game not listed in other categories, such as Record Attack replays, the title screen demos, and the HUD's appearance.
autorecord <boolean>
help
flags: (none)- Default value: Yes
If enabled, replay demos are automatically recorded in Record Attack/NiGHTS Mode.
compactscoreboard <boolean>
help
flags:AUTOSAVE
- Menu location: Options → Game Options → Always Compact Rankings
- Default value: Off
If enabled, the multiplayer intermission screen is always displayed in its compact form, which is otherwise only used if there are 20 or more players in the game.
ghost_bestrings <integer/string>
help
flags:AUTOSAVE
- Menu location: Record Attack → Ghosts... → Best Rings
- Default value: Show
Determines whether ghosts for the "Best Rings" records are displayed during Record Attack runs – "Show
" shows only the ghost for the currently selected skin, while "Show All
" shows ghosts for all skins.
Integer | String |
---|---|
0 | "Hide "
|
1 | "Show "
|
2 | "Show All "
|
ghost_bestscore <integer/string>
help
flags:AUTOSAVE
- Menu location: Record Attack → Ghosts... → Best Score
- Default value: Show
Determines whether ghosts for the "Best Score" records are displayed during Record Attack runs – "Show
" shows only the ghost for the currently selected skin, while "Show All
" shows ghosts for all skins.
Integer | String |
---|---|
0 | "Hide "
|
1 | "Show "
|
2 | "Show All "
|
ghost_besttime <integer/string>
help
flags:AUTOSAVE
- Menu location: Record Attack → Ghosts... → Best Time
- Default value: Show
Determines whether ghosts for the "Best Time" records are displayed during Record Attack runs – "Show
" shows only the ghost for the currently selected skin, while "Show All
" shows ghosts for all skins.
Integer | String |
---|---|
0 | "Hide "
|
1 | "Show "
|
2 | "Show All "
|
ghost_guest <integer/string>
help
flags:AUTOSAVE
- Menu location: Record Attack → Ghosts... → Guest
- Default value: Show
Determines whether ghosts for guest replays are displayed during Record Attack runs.
Integer | String |
---|---|
0 | "Hide "
|
1 | "Show "
|
ghost_last <integer/string>
help
flags:AUTOSAVE
- Menu location: Record Attack → Ghosts... → Last
- Default value: Show
Determines whether ghosts for the last recorded replay(s) are displayed during Record Attack runs – "Show
" shows only the ghost for the currently selected skin, while "Show All
" shows ghosts for all skins.
Integer | String |
---|---|
0 | "Hide "
|
1 | "Show "
|
2 | "Show All "
|
hazardlog <boolean>
help
flags: (none)- Menu location: Options → Game Options → Log Hazard Damage
- Default value: Yes
If enabled, a message is shown in the console if a player is harmed by a hazard in Match and derived gametypes.
itemfinder <boolean>
help
flags:ACTION
- Default value: Off
Enables/disables the emblem radar, if it has already been unlocked.
playbackspeed <integer>
help
flags: (none)- Default value: 1
Sets the speed at which a demo is played back. Minimum value is 1, maximum value is 10.
rollingdemos <boolean>
help
flags:AUTOSAVE
- Menu location: Options → Game Options → Title Screen Demos
- Default value: On
If enabled, title screen demos are played after a certain amount of time has passed on the title screen.
runscripts <boolean>
help
flags: (none)- Default value: Yes
Determines whether console scripts initiated by linedef type 415 or a level's ScriptName
parameter are executed.
seenames <integer/string>
help
flags:AUTOSAVE
- Menu location: Options → Game Options → HUD Player Names
- Default value: Ally/Foe
Controls how the names of other players are displayed when targeting them.
Integer | String | Description |
---|---|---|
0 | "Off "
|
Names are not displayed. |
1 | "Colorless "
|
All names are displayed in white. |
2 | "Team "
|
Names are displayed in the color of the team the player is in (white in non-team gametypes). |
3 | "Ally/Foe "
|
Allies are displayed in green and enemies in red. |
showhud <boolean>
help
flags:ACTION
- Menu location: Options → Game Options → Show HUD
- Shortcut: F3 (toggles)
- Default value: Yes
Determines whether the Game HUD is displayed. Does not affect the Rankings/Scores HUD.
timerres <integer/string>
help
flags:AUTOSAVE
- Menu location: Options → Game Options → Timer Display
- Default value: Normal
Determines the type of timer displayed on the HUD in-game.
Integer | String | Description |
---|---|---|
0 | "Normal "
|
Displays minutes and seconds. |
1 | "Tics "
|
Displays number of tics (frames) passed. |
2 | "Centiseconds "
|
Displays centiseconds along with minutes and seconds. |
translucenthud <integer>
help
flags:AUTOSAVE
- Menu location: Options → Game Options → HUD Visibility
- Default value: 10
Sets the translucency of the Game HUD. The values range from 0 (invisible) to 10 (opaque). Does not affect the Rankings/Scores HUD.
These are variables that affect the Addons menu.
addons_folder <foldername>
help
flags:AUTOSAVE
- Menu location: Options → Add-On Options → Custom Folder
- Default value: (none)
If addons_option
is set to Custom
, this defines the folder the Addons menu searches in. You can use relative paths (e.g.: addons
) to define a folder relative to the SRB2 directory, or a full-length directory path (e.g.: C:/Users/ExampleUser/SRB2Addons
) to search for addons in a different folder than the SRB2 directory.
addons_md5 <integer/string>
help
flags:AUTOSAVE
- Menu location: Options → Add-On Options → Identify Add-Ons Via
- Default value: Name
Determines how the game checks if two addon files are identical. This is used to determine which files are marked as "loaded" in the Addons menu – any file that is considered identical to an already loaded file is marked as "loaded".
Integer | String | Description |
---|---|---|
0 | "Name "
|
Addon files are considered identical if their name is identical. |
1 | "Contents "
|
Addon files are considered identical if their content is identical. |
addons_option <integer/string>
help
flags:AUTOSAVE
;ACTION
- Menu location: Options → Add-On Options → Location
- Default value: Default
Determines the folder that the Addons menu searches in.
Integer | String | Description |
---|---|---|
0 | "Default "
|
Searches in the default location. This is usually the SRB2 directory, but may be the "home" directory in some operating systems. |
1 | "HOME "
|
Searches in the "home" directory (normally the same as the SRB2 directory, but can be changed with the command line parameter -home ).
|
2 | "SRB2 "
|
Searches in the SRB2 directory. |
3 | "CUSTOM "
|
Searches in a custom folder specified by addons_folder .
|
addons_search_case <boolean>
help
flags:AUTOSAVE
- Menu location: Options → Add-On Options → Case-Sensitive
- Default value: No
Determines whether the filename search in the Addons menu is case-sensitive or not.
addons_search_type <integer/string>
help
flags:AUTOSAVE
- Menu location: Options → Add-On Options → Matching
- Default value: Anywhere
Determines how the filename search in Addons menu works.
Integer | String | Description |
---|---|---|
0 | "Start "
|
Only files whose name starts with the specified search string are shown. |
1 | "Anywhere "
|
All files whose name contains the specified search string are shown. |
addons_showall <boolean>
help
flags:AUTOSAVE
- Menu location: Options → Add-On Options → Show Unsupported File Types
- Default value: No
If disabled, the Addons menu will only show files with a supported type (.txt
, .cfg
, .wad
, .pk3
, .soc
and .lua
). If enabled, even unsupported files will be shown.
Console
These are variables that affect the console and console messages that appear on the screen.
con_backcolor <color>
help
flags:AUTOSAVE
- Menu location: Options → Game Options → Console Back Color
- Default value: Green
Sets the background color of the console and the chat window. Both the colors' names or their number values can be used here.
|
|
con_backpic <translucent/picture>
help
flags:AUTOSAVE
- Default value: translucent
Determines whether the console uses a background picture or not when opened.
Integer | String | Description |
---|---|---|
0 | "Translucent" |
The console is translucent, no background graphic is used. |
1 | "Picture" |
The CONSBACK graphic is displayed on the screen when the console is opened.
|
con_height <integer>
help
flags:AUTOSAVE
- Default value: 50
Sets the height of the console. The value used is a percentage of the screen's height.
con_hudlines <integer>
help
flags:AUTOSAVE
;ACTION
- Default value: 5
Sets the number of lines the console may display on the HUD when not opened. Minimum value is 1, maximum value is 20. Note: the actual number of lines displayed is one less than the value of this variable; e.g. con_hudlines 8
will make the console display up to 7 lines.
con_hudtime <integer>
help
flags:AUTOSAVE
- Default value: 5
Sets how long the console's HUD messages last on the screen, in seconds. A value of 0 disables the messages.
con_speed <integer>
help
flags:AUTOSAVE
- Default value: 8
Sets the rate at which the console moves when being opened or closed. The maximum value is 255. A value of 0 disables the animation and opens/closes the console instantly.
con_textsize <integer/string>
help
flags:AUTOSAVE
;ACTION
- Menu location: Options → Game Options → Console Text Size
- Default value: Medium
Sets the scale of text in the console. Note that despite the names of the accepted strings, the actual displayed text sizes depend on the screen resolution. See Video flags > Scale for more information on the effects of the corresponding video flags given for each of the options below.
Integer | String | Video flag |
---|---|---|
256 | "Small " |
V_NOSCALEPATCH
|
512 | "Medium " |
V_SMALLSCALEPATCH
|
768 | "Large " |
V_MEDSCALEPATCH
|
0 | "Huge " |
none |
Chat
These are variables that affect chat messages and the chat window in netgames.
chatbacktint <boolean>
help
flags:AUTOSAVE
- Menu location: Options → Game Options → Chat Options → Chat Background Tint
- Default value: On
If enabled, received chat messages are displayed on the tinted translucent background that is also used for the console and the full chat window. If disabled, they are laid over the screen directly.
chatheight <integer>
help
flags:AUTOSAVE
- Menu location: Options → Game Options → Chat Options → Chat Box Height
- Default value: 8
Sets the height of the chat window, as the number of lines that are visible at the same. Minimum value is 6, maximum value is 22.
chatmode <integer/string>
help
flags:AUTOSAVE
- Menu location: Options → Game Options → Chat Options → Chat Mode
- Default value: Window
Sets the chat mode.
Integer | String | Description |
---|---|---|
0 | "Window "
|
Chat messages are displayed in the chat window and also automatically pop up on the screen when they are received. |
1 | "Console "
|
Chat messages are displayed in the console. |
2 | "Window (Hidden) "
|
Chat messages do not pop up on the screen when they are received, but they are still displayed in the chat window when it is opened with the Talk or Team Talk key. |
chatnotifications <boolean>
help
flags:AUTOSAVE
- Menu location: Options → Game Options → Chat Options → Chat Notifications
- Default value: On
Determines whether a sound effect is played when a chat message is sent or received.
chatspamprotection <boolean>
help
flags:AUTOSAVE
- Menu location: Options → Game Options → Chat Options → Spam Protection
- Default value: On
Enables/disables spam protection. If spam protection is enabled and a player sends too many messages in rapid succession, they will be hidden from the chat window.
chattime <integer>
help
flags:AUTOSAVE
- Menu location: Options → Game Options → Chat Options → Message Fadeout Time
- Default value: 8
Sets the time in seconds that a received chat message stays on-screen before it disappears. Minimum value is 5, maximum value is 999.
chatwidth <integer>
help
flags:AUTOSAVE
- Menu location: Options → Game Options → Chat Options → Chat Box Width
- Default value: 128
Sets the width of the chat window. The value given is the number of pixels that the chat window would occupy in the base resolution, which has a width of 320. In higher resolutions, the window is scaled accordingly. Minimum value is 64, maximum value is 150.
Screenshots and movies
These are variables that affect the taking of screenshots/movies. Many of these variables set optimization parameters for the recording and saving of screenshots/movies; the default values for these variables are reasonable and should only be changed by advanced users.
apng_compress_level <integer/string>
help
flags:AUTOSAVE
- Menu location: Options → Data Options → Screenshot Options → Movie Mode (F9) → Compression Level
- Default value: 4
Sets the compression level for animated PNGs, ranging from 0 to 9. 0 completely disables compression (not recommended), 1 is best speed, and 9 is best compression.
Integer | String |
---|---|
0 | "No Compression "
|
1 | "(Fastest) 1 "
|
6 | "(Optimal) 6 "
|
9 | "(Maximum) 9 "
|
apng_memory_level <integer/string>
help
flags:AUTOSAVE
- Menu location: Options → Data Options → Screenshot Options → Movie Mode (F9) → Memory Level
- Default value: (Max Memory) 9
Sets the memory level for animated PNGs, ranging from 1 to 9. This affects how much memory will be used during compression; lowering it will result in less memory usage, but at the cost of slower/worse compression.
Integer | String |
---|---|
1 | "(Min Memory) 1 "
|
8 | "(Optimal) 8 "
|
9 | "(Max Memory) 9 "
|
apng_speed <integer/string>
help
flags:AUTOSAVE
- Default value: 1/2x
Sets the playback speed of animated PNGs.
Integer | String |
---|---|
1 | "1x "
|
2 | "1/2x "
|
3 | "1/3x "
|
4 | "1/4x "
|
apng_strategy <integer/string>
help
flags:AUTOSAVE
- Menu location: Options → Data Options → Screenshot Options → Movie Mode (F9) → Strategy
- Default value: RLE
Determines which type of compression should be used for animated PNGs.
Integer | String |
---|---|
0 | "Normal "
|
1 | "Filtered "
|
2 | "Huffman Only "
|
3 | "RLE "
|
4 | "Fixed "
|
apng_window_size <integer/string>
help
flags:AUTOSAVE
- Menu location: Options → Data Options → Screenshot Options → Movie Mode (F9) → Window Size
- Default value: 32k
Specifies the size of the compression window for animated PNGs. Smaller values mean less memory usage, but at the expense of worse compression.
Integer | String |
---|---|
8 | "256 "
|
9 | "512 "
|
10 | "1k "
|
11 | "2k "
|
12 | "4k "
|
13 | "8k "
|
14 | "16k "
|
15 | "32k "
|
gif_downscale <boolean>
help
flags:AUTOSAVE
- Menu location: Options → Data Options → Screenshot Options → Movie Mode (F9) → Downscaling
- Default value: On
Determines whether GIF movies are downscaled or not. If enabled, GIFs are recorded with an image size of 320×200 (or a similar ratio) rather than the screen's resolution. If disabled, the image size will be the same as the screen's resolution. Note: Changing this variable while a GIF is currently being recorded will not change the GIF's image size.
gif_optimize <boolean>
help
flags:AUTOSAVE
- Menu location: Options → Data Options → Screenshot Options → Movie Mode (F9) → Region Optimizing
- Default value: On
Determines whether GIF movies are optimized or not. Note: Changing this variable while a GIF is currently being recorded will not change how the GIF will be written.
moviemode_mode <integer/string>
help
flags:AUTOSAVE
;ACTION
- Menu location: Options → Data Options → Screenshot Options → Movie Mode (F9) → Capture Mode
- Default value: GIF
Determines the format in which the movies recorded with the startmovie
command are saved. "GIF
" is exclusive to the Software rendering mode; in OpenGL "aPNG
" is automatically used even when "GIF
" is set.
Integer | String | Description |
---|---|---|
1 | "aPNG "
|
Saves movies as an animated PNG; default for OpenGL. |
2 | "GIF "
|
Saves movies as an animated GIF; Software only. |
3 | "Screenshots "
|
Saves movies as a sequence of screenshots. |
png_compress_level <integer/string>
help
flags:AUTOSAVE
- Menu location: Options → Data Options → Screenshot Options → Screenshots (F8) → Compression Level
- Default value: (Optimal) 6
Sets the compression level for screenshots, ranging from 0 to 9. 0 completely disables compression (not recommended), 1 is best speed, and 9 is best compression.
Integer | String |
---|---|
0 | "No Compression "
|
1 | "(Fastest) 1 "
|
6 | "(Optimal) 6 "
|
9 | "(Maximum) 9 "
|
png_memory_level <integer/string>
help
flags:AUTOSAVE
- Menu location: Options → Data Options → Screenshot Options → Screenshots (F8) → Memory Level
- Default value: 7
Sets the memory level for screenshots, ranging from 0 to 9. This affects how much memory will be used during compression; lowering it will result in less memory usage, but at the cost of slower/worse compression.
Integer | String |
---|---|
1 | "(Min Memory) 1 "
|
8 | "(Optimal) 8 "
|
9 | "(Max Memory) 9 "
|
png_strategy <integer/string>
help
flags:AUTOSAVE
- Menu location: Options → Data Options → Screenshot Options → Screenshots (F8) → Strategy
- Default value: Normal
Determines which type of compression should be used for screenshots.
Integer | String |
---|---|
0 | "Normal "
|
1 | "Filtered "
|
2 | "Huffman Only "
|
3 | "RLE "
|
4 | "Fixed "
|
png_window_size <integer/string>
help
flags:AUTOSAVE
- Menu location: Options → Data Options → Screenshot Options → Screenshots (F8) → Window Size
- Default value: 32k
Specifies the size of the compression window for screenshots. Smaller values mean less memory usage, but at the expense of worse compression.
Integer | String |
---|---|
8 | "256 "
|
9 | "512 "
|
10 | "1k "
|
11 | "2k "
|
12 | "4k "
|
13 | "8k "
|
14 | "16k "
|
15 | "32k "
|
screenshot_folder <foldername>
help
flags:AUTOSAVE
- Menu location: Options → Data Options → Screenshot Options → Custom Folder
- Default value: (none)
If screenshot_option
is set to Custom
, this defines the folder in which screenshots and movies are saved. You can use relative paths (e.g.: screenshots
) to define a folder relative to the SRB2 directory, or a full-length directory path (e.g.: C:/Users/ExampleUser/SRB2Screenshots
) to save them in a different folder than the SRB2 directory.
screenshot_option <integer/string>
help
flags:AUTOSAVE
;ACTION
- Menu location: Options → Data Options → Screenshot Options → Storage Location
- Default value: Default
Determines where screenshots and movies of SRB2 are saved.
Integer | String | Description |
---|---|---|
0 | "Default "
|
Saves screenshots in the default location. This is usually the SRB2 directory, but may be the "home" directory in some operating systems. |
1 | "HOME "
|
Saves screenshots in the "home" directory (normally the same as the SRB2 directory, but can be changed with the command line parameter -home ).
|
2 | "SRB2 "
|
Saves screenshots in the SRB2 directory. |
3 | "CUSTOM "
|
Saves screenshots in a custom folder specified by screenshot_folder .
|
Object placement mode
These are variables that affect Object placement mode, which is toggled on/off with the objectplace
command.
op_flags <integer>
help
flags: (none)- Default value: 0
Sets the flags value for Things that are placed in Object placement mode. Ranges from 0 to 15.
op_mapthingnum <number>
help
flags: (none)- Default value: 0
Sets the Thing type number of Things spawned in Object placement mode. If set to 0, the user can cycle through the Thing types to place with the "Rotate Camera" controls. Setting op_mapthingnum
to a specific Thing type overrides this and causes Things of the specified type to be placed instead. Thing types without a corresponding Object type cannot be spawned, and an error will be shown in the console when attempting to. Ranges from 0 to 4095.
op_speed <integer>
help
flags: (none)- Default value: 16
Sets the player's speed when moving in any direction in Object placement mode. Ranges from 1 to 128.
Controls
These are variables that affect the player's controls and the input devices that can be used to control the player (keyboard, mouse or joystick). Also included are some variables that affect player preferences.
alwaysmlook/alwaysmlook2 <boolean>
help
flags:AUTOSAVE
- Menu locations:
- Options → Setup Controls → Player 1/2 Controls → Mouse Options / Second Mouse Options → First-Person MouseLook
- Options → Setup Controls → Player 1/2 Controls → Joystick Options / Second Joystick Options → First-Person Vert-Look
- Default value: On
If enabled, mouse aiming in first-person view is generally enabled and can be disabled by pressing the mouselook key. If disabled, mouse aiming in first-person view is generally disabled and can be enabled by pressing the mouselook key.
analog/analog2 <boolean>
help
flags:ACTION
- Default value: Off
Turns analog control on or off. To enable/disable analog control permanently, useranalog/useranalog2
should be used instead, as this variable is modified by the game on certain occasions.
chasecam/chasecam2 <boolean>
help
flags:ACTION
- Menu location: Options → Setup Controls → Player 1/2 Controls → Camera
- Default value: On
Turns the third-person camera on or off. If off, the first-person view is used.
chasemlook/chasemlook2 <boolean>
help
flags:ACTION
- Menu locations:
- Options → Setup Controls → Player 1/2 Controls → Mouse Options / Second Mouse Options → Third-Person MouseLook
- Options → Setup Controls → Player 1/2 Controls → Joystick Options / Second Joystick Options → Third-Person Vert-Look
- Default value: On
If enabled, mouse aiming in third-person view is generally enabled and can be disabled by pressing the mouselook key. If disabled, mouse aiming in third-person view is generally disabled and can be enabled by pressing the mouselook key.
controlperkey <integer>
help
flags:AUTOSAVE
- Menu location: Options → Setup Controls → Controls Per Key
- Default value: One
Sets how many controls may be assigned to a key. 1 is one, 2 is several.
crosshair/crosshair2 <integer/string>
help
flags:AUTOSAVE
- Menu location: Options → Setup Controls → Player 1/2 Controls → Crosshair
- Default value: Cross
Sets the type of crosshair used in first-person view:
Integer | String | Graphic |
---|---|---|
0 | Off
|
N/A |
1 | Cross
|
|
2 | Angle
|
|
3 | Point
|
flipcam/flipcam2 <boolean>
help
flags:AUTOSAVE
;ACTION
- Default value: No
If enabled, the view of the screen (except for the HUD) flips vertically when the player is in reverse gravity, making the game appear as if in normal gravity.
invertmouse/invertmouse2 <boolean>
help
flags:AUTOSAVE
- Menu location: Options → Setup Controls → Player 1/2 Controls → Mouse Options / Second Mouse Options → Invert Mouse
- Default value: Off
If enabled, looking up and down with the mouse is inverted.
joyscale/joyscale2 <integer>
help
flags:AUTOSAVE
;ACTION
- Default value: 1
Sets the scale of the input from joystick axes. If set to 0, they will behave like a gamepad controller.[confirm? – discuss]
mouse2port <integer/string>
help
flags:AUTOSAVE
- Menu location: Options → Setup Controls → Player 2 Controls → Second Mouse Options → Second Mouse Serial Port
- Default value: COM2
Determines the computer port of the mouse for player 2, if one is used. Values range from COM1
to COM4
, or 1 to 4. You may need to try out different values to find the port your mouse uses.
mousemove/mousemove2 <boolean>
help
flags:AUTOSAVE
- Menu location: Options → Setup Controls → Player 1/2 Controls → Mouse Options / Second Mouse Options → Mouse Move
- Default value: Off
If enabled, moving the mouse will move the character when mouse aiming is disabled.
mousesens/mousesens2 <integer>
help
flags:AUTOSAVE
- Menu location: Options → Setup Controls → Player 1/2 Controls → Mouse Options / Second Mouse Options → Mouse X Speed
- Default value: 20
Sets the sensitivity of mouse movement for turning left and right. Minimum value is 1, maximum value is 100.
mouseysens/mouseysens2 <integer>
help
flags:AUTOSAVE
- Menu location: Options → Setup Controls → Player 1/2 Controls → Mouse Options / Second Mouse Options → Mouse Y Speed
- Default value: 20
Sets the sensitivity of mouse movement for turning up and down. Minimum value is 1, maximum value is 100.
use_gamepad/use_gamepad2 <integer>
help
flags:AUTOSAVE
;ACTION
- Menu location: Options → Setup Controls → Player 1/2 Controls → Gamepad Options / Second Gamepad Options → Select Gamepad...
- Default value: 0
Determines the joystick device number used for the player's joystick controls. If set to 0, no joystick is used.
use_mouse/use_mouse2 <integer/string>
help
flags:AUTOSAVE
;ACTION
- Menu location: Options → Setup Controls → Player 1/2 Controls → Mouse Options / Second Mouse Options → Use Mouse / Use Mouse 2
- Default values:
use_mouse
– On;use_mouse2
– Off
Determines whether the mouse can be used for controls or not. The value Force
has the same effect as On
.
Integer | String |
---|---|
0 | Off
|
1 | On
|
2 | Force
|
useranalog/useranalog2 <boolean>
help
flags:AUTOSAVE
;ACTION
- Menu location: Options → Setup Controls → Player 1/2 Controls → Analog Control
- Default value: Off
If enabled, analog control is set as the default control scheme. This variable should be used instead of analog/analog2
.
Joystick axis
These variables control which joystick axis is used for particular controls. See Controls > List of joystick axes for the full list of possible values/names for these variables.
joyaxis_fire/joyaxis2_fire <integer>
help
flags:AUTOSAVE
- Menu location: Options → Setup Controls → Player 1/2 Controls → Joystick Options / Second Joystick Options → Axis For Firing
- Default value: Z-Axis-
Sets the joystick axis to use for triggering the Fire button.
joyaxis_firenormal/joyaxis2_firenormal <integer>
help
flags:AUTOSAVE
- Menu location: Options → Setup Controls → Player 1/2 Controls → Joystick Options / Second Joystick Options → Axis For NFiring
- Default value: Z-Axis
Sets the joystick axis to use for triggering the Fire Normal button.
joyaxis_jump/joyaxis2_jump <integer>
help
flags:AUTOSAVE
- Menu location: Options → Setup Controls → Player 1/2 Controls → Joystick Options / Second Joystick Options → Axis For Jumping
- Default value: (none)
Sets the joystick axis to use for triggering the Jump button.
joyaxis_look/joyaxis2_look <integer>
help
flags:AUTOSAVE
- Menu location: Options → Setup Controls → Player 1/2 Controls → Joystick Options / Second Joystick Options → Axis For Looking
- Default value: Y-Rudder-
Sets the joystick axis to use for looking up/down.
joyaxis_move/joyaxis2_move <integer>
help
flags:AUTOSAVE
- Menu location: Options → Setup Controls → Player 1/2 Controls → Joystick Options / Second Joystick Options → Axis For Moving
- Default value: Y-Axis
Sets the joystick axis to use for forward/backward movement.
joyaxis_side/joyaxis2_side <integer>
help
flags:AUTOSAVE
- Menu location: Options → Setup Controls → Player 1/2 Controls → Joystick Options / Second Joystick Options → Axis For Strafe
- Default value: X-Axis
Sets the joystick axis to use for sideways movement.
joyaxis_spin/joyaxis2_spin <integer>
help
flags:AUTOSAVE
- Menu location: Options → Setup Controls → Player 1/2 Controls → Joystick Options / Second Joystick Options → Axis For Spinning
- Default value: (none)
Sets the joystick axis to use for triggering the Spin button.
joyaxis_turn/joyaxis2_turn <integer>
help
flags:AUTOSAVE
- Menu location: Options → Setup Controls → Player 1/2 Controls → Joystick Options / Second Joystick Options → Axis For Turning
- Default value: X-Rudder
Sets the joystick axis to use for turning left/right.
Camera
These are variables that affect the player's camera.
cam_dist/cam2_dist <decimal>
help
flags:AUTOSAVE
;FLOAT
- Default value: 160
Sets the distance of the camera. You cannot use a negative value to zoom in. This distance is multiplied by 1.5 in two-player mode and by 1.2 if playing with analog control (this is cumulative, so the distance is multiplied by 1.8 if both apply). Does not apply when in 2D mode or playing as NiGHTS Super Sonic.
cam_height/cam2_height <decimal>
help
flags:AUTOSAVE
;FLOAT
- Default value: 25
Sets the height offset of the third-person camera. This is not calculated relative to the bottom of the player, but instead the first-person camera's vertical offset (determined by viewheight
).
cam_rotate/cam2_rotate <integer>
help
flags:ACTION
- Default value: 0
Sets the angle of the camera's rotation. Minimum value is -720 and maximum value is 720.
cam_rotspeed/cam2_rotspeed <integer>
help
flags:AUTOSAVE
- Default value: 10
Sets the rotation speed of the camera in analog control and demo playback. Minimum value is 1, maximum value is 45.
cam_speed/cam2_speed <decimal>
help
flags:AUTOSAVE
;FLOAT
- Default value: 0.3
Sets the speed of the camera. Minimum value is 0, maximum value is 1. Does not apply when in 2D mode.
cam_still/cam2_still <boolean>
help
flags: (none)- Default value: Off
If enabled, the camera angle stays in place instead of rotating with the player.
cam_adjust/cam2_adjust <boolean>
help
flags:AUTOSAVE
- Default value: On
If enabled, the camera height will automatically be adjusted when going down a slope.
Client options
These are variables that control client preferences in netgames.
defaultcolor/defaultcolor2 <color>
help
flags:AUTOSAVE
- Default values:
DEFAULTCOLOR
– Blue;DEFAULTCOLOR2
– Orange
Sets your player's default skin color. Both the colors' names or their number values can be used.
color/color2 <color>
help
flags:ACTION
- Default values:
COLOR
– Blue;COLOR2
– Orange
Sets your player's current skin color. This can only be changed in multiplayer, while the player is standing still. Both the colors' names or their number values can be used. For setting the default color, see defaultcolor/defaultcolor2
|
|
|
|
|
name/name2 <name>
help
flags:AUTOSAVE
;ACTION
- Default values:
name
– Sonic;name2
– Tails
Sets your nickname for multiplayer. It may not start with a number. To use spaces in the name, put it between quotation marks.
netstat <boolean>
help
flags: (none)- Default value: Off
If enabled, network statistics for the client are shown on the HUD. These are updated every two seconds.
Stat name | Description |
---|---|
GET | Packet downloading speed, in bytes per second. |
SEND | Packet uploading speed, in bytes per second. |
GAMEMISS | Percentage of ticcmd packets missed. |
SYSMISS | Percentage of sent packets lost. |
defaultskinskin/defaultskinskin2 <name>
help
flags:AUTOSAVE
- Default value:
defaultskin
– sonic;defaultskin2
– tails
Sets your player's character default skin.
skin/skin2 <name>
help
flags:ACTION
- Default value:
skin
– sonic;skin2
– tails
Sets your player's current character skin. In Single Player the player's character cannot be changed unless development mode is enabled. In multiplayer the player's character can be changed freely barring gametype-specific restrictions (see restrictskinchange
) and provided forceskin
is not in effect. Regardless of gametype, character skins can only be changed while the player is standing still. Note that in Single Player, the player's color is changed to the default color for the character, e.g., "skin knuckles
" transforms the player into a red Knuckles. For setting the default character skin, see defaultskin/defaultskin2
Server options
These are variables related to the hosting and/or running of a netgame in general. Some of them can only be changed by the server or a verified admin. The others are local variables that every user can change for themselves, but only the host's settings apply to the netgame.
advancemap <integer/string>
- Requirements: Server or admins only
help
flags:NETVAR
- Menu location: Options → Server Options → Advance to next map
- Default value: Next
Sets which map to advance to when a round finishes in any mode except Co-op or Single Player.
Integer | String | Description |
---|---|---|
0 | "Off" |
Repeats the same map. |
1 | "Next" |
Advances to the next map in the rotation. |
2 | "Random" |
Selects a random map from the rotation. |
allowjoin <boolean>
- Requirements: Server or admins only
help
flags:NETVAR
- Menu location: Options → Server Options → Allow players to join
- Default value: On
If enabled, other players may join the netgame.
blamecfail <boolean>
help
flags: (none)- Default value: Off
If enabled, the host is notified when a player becomes desynchronized.
downloading <boolean>
help
flags: (none)- Menu location: Options → Server Options → Allow WAD Downloading
- Default value: On
Allows/disallows file downloading in a netgame.
downloadspeed <integer>
help
flags:AUTOSAVE
- Default value: 16
Determines the speed of file downloading, in packets per tic. Minimum value is 1, maximum value is 300.
inttime <integer>
- Requirements: Server or admins only
help
flags:NETVAR
- Menu location: Options → Server Options → Intermission Timer
- Default value: 20
Sets the intermission time between multiplayer levels, in seconds. Minimum value is 0, maximum value is 3600.
joinnextround <boolean>
- Requirements: Server or admins only
help
flags:NETVAR
- Default value: Off
If enabled, players must wait until the next round is started to join a netgame.
jointimeout <integer>
help
flags:AUTOSAVE
;ACTION
- Default value: 350
Sets how long a joining player may take to download the game state from the server, in tics. One extra tic is added to this time for each kilobyte of the game state. If this time expires, the player will be refused by the server. Minimum value is 5 tics, maximum value is 2100 tics (60 seconds).
maxping <integer>
help
flags:AUTOSAVE
- Default value: 0
If the value is higher than 0, players whose ping is higher than this value will be automatically kicked.
maxplayers <integer>
help
flags:AUTOSAVE
- Menu location: Options → Server Options → Max Players
- Default value: 8
Sets the maximum number of players allowed to join a netgame. Minimum value is 2, maximum value is 32.
maxsend <integer>
help
flags:AUTOSAVE
- Default value: 4096
Sets the maximum file size (in KB) for files that can be downloaded by joining players. Files beyond this limit cannot be downloaded and players who do not have them will be refused by the server. Players downloading large files from the server will cause noticeable and sometimes disrupting lag in the netgame, so do not set this limit too high. Minimum value is 0 KB, maximum value is 204800 KB (200 MB).
mute <boolean>
- Requirements: Server or admins only
help
flags:NETVAR
;ACTION
- Default value: Off
If enabled, chatting is disabled for everyone except the host and game admins.
nettimeout <integer>
help
flags:AUTOSAVE
;ACTION
- Default value: 350
Sets the maximum amount of time (in tics) to wait between packets sent before the game considers the player to have timed out from the netgame and kicks them. Minimum value is 5 tics, maximum value is 2100 tics (60 seconds).
noticedownload <boolean>
help
flags:AUTOSAVE
- Default value: Off
If enabled, messages are displayed in the console when someone is downloading a file.
pausepermission <integer/string>
- Requirements: Server or admins only
help
flags:NETVAR
- Default value: Server
Determines who can pause a netgame – only the server or all clients.
Integer | String |
---|---|
0 | "Server"
|
1 | "All"
|
resynchattempts <integer>
help
flags: (none)- Menu location: Options → Server Options → Attempts to Resync
- Default value: 10
Sets the number of attempts to resynchronize a desynchronised player before kicking them. Minimum value is 0, maximum value is 20.
servername <string>
help
flags:AUTOSAVE
;ACTION
- Menu location: Options → Server Options → Server name
- Default value: SRB2 server
Sets the default name of a server to be hosted.
showjoinaddress <boolean>
help
flags:AUTOSAVE
;NETVAR
;ACTION
- Menu location: Options → Server Options → Show IP Address of Joiners
- Default value: Off
If enabled, the IP addresses of joining players are shown to the host.
exitmove <boolean>
- Requirements: Server or admins only
help
flags:AUTOSAVE
;NETVAR
;ACTION
- Menu location: Options → Server Options → Post-goal free roaming
- Default value: On
If enabled, players can move after completing the level
masterserver <string>
help
flags:AUTOSAVE
- Menu location: Options → Server Options → Master server
- Default value: https://mb.srb2.org/MS/0
Defines which Master Server SRB2 will connect to.
masterserver_update_rate <integer>
help
flags:AUTOSAVE
;ACTION
- Default value: 15
Sets how often the master server listing of a server is updated, in minutes. Minimum value is 2, maximum value is 60.
masterserver_timeout <integer>
help
flags:AUTOSAVE
- Default value: 5
Sets the maximum time in seconds that contacting the master server is allowed to complete.
masterserver_debug <boolean>
help
flags:AUTOSAVE
- Default value: Off
Enables/disables master server debug logging, the output will be saved in latest-log.txt
.
masterserver_token <string>
help
flags:AUTOSAVE
- Default value: (none)
Used for optional authentication.with the master server.
General netgame options
These are variables that control general game features that affect all players within a netgame. With the exception of skipmapcheck
, they are all restricted to the server or a verified admin.
allowexitlevel <boolean>
- Requirements: Server or admins only
help
flags:NETVAR
- Default value: No
If enabled, players can exit the level via Exit Sectors in Match and derived gametypes.
allowmlook <boolean>
- Requirements: Server or admins only
help
flags:NETVAR
- Default value: Yes
If enabled, players can aim up and down with their mouse in a netgame.
allowseenames <boolean>
- Requirements: Server or admins only
help
flags:NETVAR
- Default value: Yes
If enabled, players are allowed to enable seenames
in order to see the names of other players when targeting them.
allowteamchange <boolean>
- Requirements: Server or admins only
help
flags:NETVAR
- Default value: Yes
If enabled, players can change teams in Team Match and Capture the Flag. If disabled, players cannot change teams but are allowed to spectate. However, spectators themselves will also not be able to enter the game.
autobalance <integer>
- Requirements: Server or admins only
help
flags:NETVAR
;ACTION
- Menu location: Options → Server Options → General netgame options → Autobalance Teams
- Default value: 0
If set to a value other than 0, teams are automatically balanced in CTF mode. The value (between 1 and 4) defines how great the difference in team members may be before the teams are autobalanced. Setting it to 0 turns autobalancing off.
forceskin <integer>
- Requirements: Server or admins only
help
flags:NETVAR
;ACTION
;CHEAT
- Menu location: Options → Server Options → General netgame options → Force Skin #
- Default value: -1
Forces all players in the game to automatically switch to the specified character skin, and prevents all players except the server from changing skins while in effect. Only the skin number is accepted, unlike the skin
variable – 0 forces Sonic, 1 forces Tails, and 2 forces Knuckles. -1 or any invalid value lifts the forced skin restrictions.
friendlyfire <boolean>
- Requirements: Server or admins only
help
flags:NETVAR
- Default value: Off
If enabled, players can be hit by rings fired by their teammates.
overtime <boolean>
- Requirements: Server or admins only
help
flags:NETVAR
- Menu location: Options → Server Options → General netgame options → Overtime Tie-Breaker
- Default value: Yes
If enabled, a time-limited round of Match or CTF cannot end as long as two or more players/teams lead with the same score – it will continue in overtime until the tie is resolved.
pointlimit <integer>
- Requirements: Server or admins only
help
flags:NETVAR
;ACTION
- Menu location: Options → Server Options → General netgame options → Point Limit
- Default value: 0
Sets a score limit for Match, Tag, Hide & Seek, or CTF games. A value of 0 disables the score limit. The maximum value is 999999990.
powerstones <boolean>
- Requirements: Server or admins only
help
flags:NETVAR
- Menu location: Options → Server Options → General netgame options → Emeralds
- Default value: On
In Match or CTF, determines whether Chaos Emeralds will spawn or not. If this is changed during a game, it will not take effect until the next round/map change.
respawndelay <integer>
- Requirements: Server or admins only
help
flags:NETVAR
;CHEAT
- Menu location: Options → Server Options → General netgame options → Player respawn delay
- Default value: 3
In Match, CTF or Tag, this determines the minimum delay (in seconds) after death before a player can respawn with the jump button. Minimum value is 0, maximum value is 30.
respawnitem <boolean>
- Requirements: Server or admins only
help
flags:NETVAR
- Menu location: Options → Server Options → General netgame options → Item Respawn
- Default value: On
Determines whether items will respawn.
scrambleonchange <integer/string>
- Requirements: Server or admins only
help
flags:NETVAR
- Menu location: Options → Server Options → General netgame options → Scramble Teams on Map Change
- Default value: Off
If enabled, teams in a Team Match or CTF game will be scrambled automatically each time the game advances to another map (not if you switch maps manually).
Integer | String | Description |
---|---|---|
0 | "Off "
|
Teams are not scrambled. |
1 | "Random "
|
Teams are scrambled randomly. |
2 | "Points "
|
Teams are scrambled according to the player's individual points. |
skipmapcheck <boolean>
help
flags:AUTOSAVE
- Default value: Off
If enabled, the game will not check to see if a map supports the current gametype before warping to it.
specialrings <boolean>
- Requirements: Server or admins only
help
flags:NETVAR
- Menu location: Options → Server Options → General netgame options → Special Ring Weapons
- Default value: On
Sets the availability of special weapon rings. If this is changed during a game, it will not take effect until the next round/map change.
suddendeath <boolean>
- Requirements: Server or admins only
help
flags:NETVAR
;CHEAT
- Menu location: Options → Server Options → General netgame options → Sudden Death
- Default value: Off
If enabled, players will die instantly when hit by a ring (even if super). Note that in Tag and Hide & Seek, there is a bug that causes points to be scored from both tagging and killing a player simultaneously, resulting in scoring 200 points per tag instead of 100.
tailspickup <boolean>
- Requirements: Server or admins only
help
flags:NETVAR
- Default value: On
If enabled, flying characters can pick up other characters. If disabled, players become solid and can stand on top of one another to form a ladder.
teamscramble <integer/string>
- Requirements: Server or admins only
help
flags:NETVAR
;ACTION
- Default value: Off
Instantly scrambles the teams in Team Match and CTF. Can also be done using the Scramble Teams option in the pause menu.
Integer | String | Description |
---|---|---|
0 | "Off "
|
Has no effect. |
1 | "Random "
|
Teams are scrambled randomly. |
2 | "Points "
|
Teams are scrambled according to the player's individual points. |
timelimit <integer>
- Requirements: Server or admins only
help
flags:NETVAR
;ACTION
- Menu location: Options → Server Options → General netgame options → Time Limit
- Default value: 0
Sets a time limit, in minutes, for Match, Tag, Hide & Seek, or CTF games. A value of 0 disables the time limit. The maximum value is 30 minutes.
Gametype options
These are variables that control gametype-specific features for a netgame. They are all restricted to the server or a verified admin.
cooplives <integer/string>
- Requirements: Server or admins only
help
flags:AUTOSAVE
;NETVAR
;ACTION
;CHEAT
- Menu location: Options → Server Options → Cooperative → Life sharing
- Default value: 2
Controls how lives are shared between players in Coop gametypes.
Integer | String | Description |
---|---|---|
0 | "Infinite "
|
Players can respawn indefinitely. |
1 | "Per-player "
|
Lives are per-player. |
2 | "Avoid game over "
|
Players can steal lives to avoid game over. |
3 | "Single pool "
|
Lives are shared between players. |
coopstarposts<integer/string>
- Requirements: Server or admins only
help
flags:AUTOSAVE
;NETVAR
;ACTION
- Menu location: Options → Server Options → Cooperative → Starposts
- Default value: 0
Controls how Star Posts and respawning behave in Coop gametypes.
Integer | String | Description |
---|---|---|
0 | "Per-player "
|
Starposts are per-player. |
1 | "Shared "
|
Starposts are shared between players. |
2 | "Teamwork "
|
Players only spawn when starposts are hit. |
countdowntime <integer>
- Requirements: Server or admins only
help
flags:NETVAR
;CHEAT
- Menu location: Options → Server Options → Gametype options → Competition → Countdown time
- Default value: 60
Sets the countdown time (in seconds) in a Race game after the leader finishes the race. When the countdown is up, anyone yet to finish dies instantly. Minimum value is 15, maximum value is 9999.
hidetime <integer>
- Requirements: Server or admins only
help
flags:NETVAR
;ACTION
- Menu location: Options → Server Options → Gametype options → Tag → Hide Time
- Default value: 30
Sets the number of seconds the non-"it" players in Tag and Hide & Seek have for hiding before the "it" player can move. The value cannot exceed the time limit of the game; if the time limit is disabled, the hiding time cannot be adjusted.
matchscoring <integer or type>
- Requirements: Server or admins only
help
flags:NETVAR
;CHEAT
- Menu location: Options → Server Options → Gametype options → Match → Scoring type
- Default value: Normal
Sets the scoring system for Match and CTF games.
Integer | String | Description |
---|---|---|
0 | "Normal "
|
There is a 50 point penalty for death. |
1 | "Classic "
|
The penalty for death is removed, and hitting a player who is equipped with a shield will only give you 25 points. |
numlaps <integer>
- Requirements: Server or admins only
help
flags:NETVAR
;ACTION
- Menu location: Options → Server Options → Gametype options → Race → Number of Laps
- Default value: 4
Sets the number of laps on a Circuit mode track. Maximum value is 50.
playersforexit <integer/string>
- Requirements: Server or admins only
help
flags:NETVAR
- Menu location: Options → Server Options → Gametype options → Co-op → Players for exit
- Default value: All
Determines whether a Coop level requires any one player (One
), 25% (1/4
), 50% (Half
), 75% (3/4
), or 100% (All
) of all players to reach the Level End Sign before the level is finished.
Integer | String | Description |
---|---|---|
0 | "One " |
One player required |
1 | "1/4 " |
25% of players required |
2 | "Half " |
50% of players required |
3 | "3/4 " |
75% of players required |
4 | "All " |
All players required |
startinglives <integer>
- Requirements: Server or admins only
help
flags:NETVAR
;CHEAT
- Menu location: Options → Server Options → Gametype options → Co-op → Starting Lives
- Default value: 3
Sets the starting number of lives for players in Coop. A player's lives count is restored to this value when they have lost all lives in the previous stage, or the map
command has been used to warp to another stage. Minimum value is 1, maximum value is 99.
touchtag <boolean>
- Requirements: Server or admins only
help
flags:NETVAR
- Default value: Off
If enabled, the "it" player(s) in Tag and Hide & Seek can tag the fleeing players simply by touching them.
usemaplaps <boolean>
- Requirements: Server or admins only
help
flags:NETVAR
- Menu location: Options → Server Options → Gametype options → Race → Use Map Lap Counts
- Default value: Yes
If enabled, the level header parameter NumLaps
sets the default number of laps on a Circuit mode track.
Multiplayer cheats
These variables are marked as cheat variables, and changing them displays a special flag next to your server on the Master Server. These are usually variables that can seriously disrupt the balance of the game, so use them with caution. They are all restricted to the server or a verified admin.
competitionboxes <integer/string>
- Requirements: Server or admins only
help
flags:NETVAR
;CHEAT
- Menu location: Options → Server Options → Gametype options → Competition → Item Boxes
- Default value: Random
Sets the type of monitors used in a Competition game. If you change this setting, it will not take effect until the next round/map change.
Integer | String | Description |
---|---|---|
0 | "Normal "
|
All monitors spawn normally. |
1 | "Random "
|
Transforms all monitors into Random Monitors. |
2 | "Teleporters "
|
Transforms all monitors into Teleporter Monitors. |
3 | "None "
|
Removes all monitors from the map. |
flagtime <integer>
- Requirements: Server or admins only
help
flags:NETVAR
;CHEAT
- Menu location: Options → Server Options → Gametype options → CTF → Flag Respawn Time
- Default value: 30
Determines how long a CTF flag will stay in place once thrown or dropped before respawning, in seconds. The maximum value is 300.
matchboxes <integer/string>
- Requirements: Server or admins only
help
flags:NETVAR
;CHEAT
- Menu location: Options → Server Options → General netgame options → Item Boxes
- Default value: Normal
Sets the type of monitors used in all multiplayer gametypes, except for Coop and Competition – Coop monitors always spawn normally, and Competition monitors are controlled by competitionboxes
instead. If you change this setting, it will not take effect until the next round/map change.
Integer | String | Description |
---|---|---|
0 | "Normal "
|
All monitors spawn normally. |
1 | "Mystery "
|
Transforms all monitors into Random Monitors. |
2 | "Unchanging "
|
Prevents Random Monitors from being spawned and stops the Weak Random Monitor and Strong Random Monitor flags from taking effect. |
3 | "None "
|
Removes all monitors from the map. |
respawnitemtime <integer>
- Requirements: Server or admins only
help
flags:NETVAR
;CHEAT
- Menu location: Options → Server Options → General netgame options → Item Respawn Time
- Default value: 30
Determines how long, in seconds, it takes for an item to respawn. Minimum value is 1, and maximum value is 300.
restrictskinchange <boolean>
- Requirements: Server or admins only
help
flags:NETVAR
;CHEAT
- Menu location: Options → Server Options → General netgame options → Restrict skin changes
- Default value: Yes
If enabled, the following gametype-specific restrictions are applied for players attempting to change character skins mid-game:
- Race/Competition: The player's character can only be changed during the initial countdown or whenever the player is dead.
- Match/Capture the Flag: The player's character can only be changed when the player is dead or spectating.
- Tag/Hide & Seek: The player's character can be changed freely if the player is currently "it"; otherwise, it can only be changed during the hiding time countdown or whenever the player is dead or spectating.
tv_1up <integer>
- Requirements: Server or admins only
help
flags:NETVAR
;CHEAT
- Menu location: Options → Server Options → Random Monitor Toggles → 1 Up
- Default value: 5
Sets the chance of Extra Life Monitors spawning from Random Monitors. Higher values result in a larger chance of the monitor appearing; 0 stops the monitor from appearing entirely. Minimum value is 0, and maximum value is 10.
tv_bombshield <integer>
- Requirements: Server or admins only
help
flags:NETVAR
;CHEAT
- Menu location: Options → Server Options → Random Monitor Toggles → Armageddon Shield
- Default value: 5
Sets the chance of Armageddon Shield Monitors spawning from Random Monitors. Higher values result in a larger chance of the monitor appearing; 0 stops the monitor from appearing entirely. Minimum value is 0, and maximum value is 10.
tv_eggman <integer>
- Requirements: Server or admins only
help
flags:NETVAR
;CHEAT
- Menu location: Options → Server Options → Random Monitor Toggles → Eggman Box
- Default value: 5
Sets the chance of Eggman Monitors spawning from Random Monitors. Higher values result in a larger chance of the monitor appearing; 0 stops the monitor from appearing entirely. Minimum value is 0, and maximum value is 10.
tv_forceshield <integer>
- Requirements: Server or admins only
help
flags:NETVAR
;CHEAT
- Menu location: Options → Server Options → Random Monitor Toggles → Force Shield
- Default value: 5
Sets the chance of Force Shield Monitors spawning from Random Monitors. Higher values result in a larger chance of the monitor appearing; 0 stops the monitor from appearing entirely. Minimum value is 0, and maximum value is 10.
tv_invincibility <integer>
- Requirements: Server or admins only
help
flags:NETVAR
;CHEAT
- Menu location: Options → Server Options → Random Monitor Toggles → Invincibility
- Default value: 5
Sets the chance of Invincibility Monitors spawning from Random Monitors. Higher values result in a larger chance of the monitor appearing; 0 stops the monitor from appearing entirely. Minimum value is 0, and maximum value is 10.
tv_jumpshield <integer>
- Requirements: Server or admins only
help
flags:NETVAR
;CHEAT
- Menu location: Options → Server Options → Random Monitor Toggles → Jump Shield
- Default value: 5
Sets the chance of Whirlwind Shield Monitors spawning from Random Monitors. Higher values result in a larger chance of the monitor appearing; 0 stops the monitor from appearing entirely. Minimum value is 0, and maximum value is 10.
tv_recycler <integer>
- Requirements: Server or admins only
help
flags:NETVAR
;CHEAT
- Menu location: Options → Server Options → Random Monitor Toggles → Recycler
- Default value: 5
Sets the chance of Recycler Monitors spawning from Random Monitors. Higher values result in a larger chance of the monitor appearing; 0 stops the monitor from appearing entirely. Minimum value is 0, and maximum value is 10.
tv_ringshield <integer>
- Requirements: Server or admins only
help
flags:NETVAR
;CHEAT
- Menu location: Options → Server Options → Random Monitor Toggles → Attraction Shield
- Default value: 5
Sets the chance of Attraction Shield Monitors spawning from Random Monitors. Higher values result in a larger chance of the monitor appearing; 0 stops the monitor from appearing entirely. Minimum value is 0, and maximum value is 10.
tv_superring <integer>
- Requirements: Server or admins only
help
flags:NETVAR
;CHEAT
- Menu location: Options → Server Options → Random Monitor Toggles → Super Ring
- Default value: 5
Sets the chance of Super Ring Monitors spawning from Random Monitors. Higher values result in a larger chance of the monitor appearing; 0 stops the monitor from appearing entirely. Minimum value is 0, and maximum value is 10.
tv_supersneaker <integer>
- Requirements: Server or admins only
help
flags:NETVAR
;CHEAT
- Menu location: Options → Server Options → Random Monitor Toggles → Super Sneakers
- Default value: 5
Sets the chance of Super Sneakers Monitors spawning from Random Monitors. Higher values result in a larger chance of the monitor appearing; 0 stops the monitor from appearing entirely. Minimum value is 0, and maximum value is 10.
tv_teleporter <integer>
- Requirements: Server or admins only
help
flags:NETVAR
;CHEAT
- Menu location: Options → Server Options → Random Monitor Toggles → Teleporters
- Default value: 5
Sets the chance of Teleporter Monitors spawning from Random Monitors. Higher values result in a larger chance of the monitor appearing; 0 stops the monitor from appearing entirely. Minimum value is 0, and maximum value is 10.
tv_watershield <integer>
- Requirements: Server or admins only
help
flags:NETVAR
;CHEAT
- Menu location: Options → Server Options → Random Monitor Toggles → Elemental Shield
- Default value: 5
Sets the chance of Elemental Shield Monitors spawning from Random Monitors. Higher values result in a larger chance of the monitor appearing; 0 stops the monitor from appearing entirely. Minimum value is 0, and maximum value is 10.
Miscellaneous cheats/netgame options
gravity <decimal>
Sets the global gravity.
killingdead <boolean>
- Requirements: If in multiplayer, server or admins only
help
flags:NETVAR
- Default value: Off
If enabled, hitting an enemy or popping a monitor causes damage to yourself 75% of the time. This simulates a glitch from the original Sonic Robo Blast.
ringslinger <boolean>
- Requirements: If in Single Player,
devmode
enabled or Pandora's Box unlocked; if in multiplayer, server or admins only help
flags:NETVAR
;ACTION
;CHEAT
- Default value: No
If enabled, players can throw rings outside of the Match, Tag or CTF gametypes.
Sound
These are variables that affect sound effects and music in the game.
cd_update <integer>
help
flags:AUTOSAVE
- Default value: 1
This variable currently has no effect. It was intended for the DOS port, which is no longer supported.
cd_volume <integer>
help
flags:AUTOSAVE
- Default value: 18
Determines the volume of the background music played from a music CD. Maximum value is 31. Note: This variable has no effect as of v2.1.25.
help
flags:AUTOSAVE
;ACTION
- Default value: Off
Toggles closed captioning for currently playing sound effects.
digimusic <boolean>
help
flags:AUTOSAVE
;ACTION
- Default value: On
Toggles digital background music.
digmusicvolume <integer>
help
flags:AUTOSAVE
- Menu location: Options → Sound Options → Music Volume
- Default value: 18
Determines the volume of the digital background music. Maximum value is 31.
midimusic <boolean>
help
flags:AUTOSAVE
;ACTION
- Default value: On
Toggles MIDI background music.
midimusicvolume <integer>
help
flags:AUTOSAVE
- Menu location: Options → Sound Options → MIDI Volume
- Default value: 18
Determines the volume of the MIDI background music. Maximum value is 31.
precachesound <boolean>
help
flags:AUTOSAVE
- Default value: Off
If enabled, the game precaches sound effects into memory before starting the game.
resetmusic <boolean>
help
flags:AUTOSAVE
- Default value: No
If enabled, the music will start over in Single Player after you die, like in most Sonic games.
samplerate <integer>
help
flags: (none)- Default value: 44100
Supposedly changes the sample rate of sounds played by SRB2, but currently does nothing.[confirm? – discuss]
snd_channels <integer>
help
flags:AUTOSAVE
;ACTION
- Default value: 32
Sets the number of sound channels.
sounds <boolean>
help
flags:AUTOSAVE
;ACTION
- Default value: On
Toggles sound.
soundtest <integer>
help
flags:ACTION
- Menu location: Secrets → Sound Test
- Default value: 0
Plays the sound corresponding to the specified sound number. Refer to the list of sounds for a complete list of sounds and their numbers.
soundvolume <integer>
help
flags:AUTOSAVE
- Menu location: Options → Sound Options → Sound Volume
- Default value: 18
Determines the volume of sound effects. Maximum value is 31.
stereoreverse <boolean>
help
flags:AUTOSAVE
- Default value: Off
If enabled, the stereo channels are reversed.
surround <boolean>
help
flags:AUTOSAVE
- Default value: Off
Toggles surround sound.
1upsound <integer/string>
help
flags:AUTOSAVE
- Menu location: Options → Sound Options → Default 1-Up sound
- Default value: Jingle
Determines whether to play the sound effect sfx_oneup
or the music track mus_xtlife
when earning an extra lives. Has no effect if the MainCfg
option Use1UpSound
is set, or the current map is in Mario mode.
Video
These are variables that affect screen settings (such as the resolution) or general rendering effects (such as draw distances for sprites).
drawdist <integer/string>
help
flags:AUTOSAVE
- Menu location: Options → Video Options → Draw Distance
- Default value: Infinite
Sets the maximum distance (in fracunits) from the player at which sprites are drawn – sprites beyond the specified distance (unless set to "Infinite
") will be completely invisible to the player. Only certain distances are accepted by this variable, listed below:
Integer | String |
---|---|
0 | "Infinite "
|
256 | "256 "
|
512 | "512 "
|
1024 | "1024 "
|
1536 | "1536 "
|
2048 | "2048 "
|
3072 | "3072 "
|
4096 | "4096 "
|
6144 | "6144 "
|
8192 | "8192 "
|
drawdist_nights <integer/string>
help
flags:AUTOSAVE
- Menu location: Options → Video Options → NiGHTS Draw Dist
- Default value: 2048
Sets the maximum distance (in fracunits) from the player at which sprites are drawn in NiGHTS levels – sprites beyond the specified distance (unless set to "Infinite
") will be completely invisible to the player. Only certain distances are accepted by this variable, listed below:
Integer | String |
---|---|
0 | "Infinite "
|
256 | "256 "
|
512 | "512 "
|
1024 | "1024 "
|
1536 | "1536 "
|
2048 | "2048 "
|
3072 | "3072 "
|
4096 | "4096 "
|
6144 | "6144 "
|
8192 | "8192 "
|
drawdist_precip <integer/string>
help
flags:AUTOSAVE
- Menu location: Options → Video Options → Precip Draw Dist
- Default value: 1024
Sets the maximum distance (in fracunits) from the player at which precipitation (i.e. rain, snow) is drawn – precipitation beyond the specified distance (unless set to "Infinite
") will be completely invisible to the player. Only certain distances are accepted by this variable, listed below:
Integer | String |
---|---|
0 | "Infinite "
|
256 | "256 "
|
512 | "512 "
|
1024 | "1024 "
|
1536 | "1536 "
|
2048 | "2048 "
|
3072 | "3072 "
|
4096 | "4096 "
|
6144 | "6144 "
|
8192 | "8192 "
|
fov <decimal>
help
flags:FLOAT
;ACTION
- Menu location: Options → Video Options → OpenGL Options... → Field of view
- Default value: 90
Sets the field of view. It affects the focal length (in degrees) of the camera. For example, smaller values make the camera focus on a smaller portion of the world, similarly to a telescopic sight or scope. Minimum value is 60, maximum value is 179.
fullscreen <boolean>
help
flags:AUTOSAVE
;ACTION
- Menu location: Options → Video Options → Fullscreen
- Default value: Yes
Determines whether the game is displayed in fullscreen or windowed mode.
gamma <integer>
help
flags:AUTOSAVE
;ACTION
- Menu location: Options → Video Options → Brightness
- Shortcut: F11 (rotates through all 21 values)
- Default value: 0
Sets the game's overall brightness. Maximum value is 5, minimum value is -15.
homremoval <yes/no/flash>
help
flags:AUTOSAVE
- Menu location: Options → Video Options → Clear Before Redraw
- Default value: No
If set to yes
, all occurrences of the hall of mirrors glitch on the screen will be replaced with a solid black color. If set to flash
, these areas will additionally flash red continuously.
maxportals <integer>
help
flags:AUTOSAVE
- Default value: 2
Sets the maximum recursive depth of visual portal rendering. 0 disables visual portals, the maximum value is 12. Disclaimer: Setting this value too high can cause severe lag or memory overflow crashes in complicated visual portal setups!
renderview <boolean>
help
flags: (none)- Default value: On
If disabled, the view of the level will no longer be rendered.
scr_depth <integer/string>
help
flags:AUTOSAVE
- Menu location: Options → Video Options → OpenGL Options... → Quality (OpenGL-only)
- Default value: 16 bits
Sets the default graphical depth of the screen resolution.
Integer | String |
---|---|
8 | "8 bits "
|
16 | "16 bits "
|
24 | "24 bits "
|
32 | "32 bits "
|
scr_height <integer>
help
flags:AUTOSAVE
- Default value: 800
Sets the default screen resolution height. Make sure to use only video modes supported by your computer or SRB2.
scr_width <integer>
help
flags:AUTOSAVE
- Default value: 1280
Sets the default screen resolution width. Make sure to use only video modes supported by your computer or SRB2.
showfps <boolean>
help
flags: (none)- Menu location: Options → Video Options → Show FPS
- Default value: No
If enabled, a framerate counter is displayed on the HUD.
skybox <boolean>
help
flags:AUTOSAVE
- Default value: On
Toggles whether or not skyboxes are rendered.
stretch <boolean>
help
flags:AUTOSAVE
- Default value: Off
Does nothing. Was supposed to determine whether to allow screen resolution width-height ratios other than the standard (320:200, or 1.6:1). If disabled, the resolution height would be adjusted according to its width to keep the standard ratio; if enabled, the height would remain unchanged.
translucency <boolean>
help
flags:AUTOSAVE
;ACTION
- Default value: On
Turns sprite translucency on or off.
vid_wait <boolean>
help
flags:AUTOSAVE
- Menu location: Options → Video Options → Vertical Sync
- Default value: On
Enables/disables vertical synchronization.
fpscap <integer/string>
help
flags:AUTOSAVE
- Menu location: Options → Video Options → FPS Cap
- Default value: Match refresh rate
Limits the maximum number of frames-per-second that can be rendered. Minimum value is TICRATE
, maximum value is 300. Certain values are also accepted by this variable, listed below:
Integer | String | Description |
---|---|---|
-1 | "Unlimited "
|
No frame rate limit will be applied. |
0 | "Match refresh rate "
|
The maximum number of frames will be restricted to your monitor's refresh rate. |
OpenGL
These are variables that control OpenGL-exclusive effects.
gr_models <off/on>
help
flags:AUTOSAVE
- Default value: Off
Determines whether models are rendered.
gr_modelinterpolation <off/sometimes/always>
help
flags:AUTOSAVE
- Default value: Sometimes
Determines model interpolation behavior. If set to Sometimes
, only specified animations will interpolate their frames.
Integer | String |
---|---|
0 | "Off"
|
1 | "Sometimes"
|
2 | "Always"
|
gr_spritebillboarding <boolean>
help
flags:AUTOSAVE
- Default value: Off
Determines whether sprites will have the billboarding effect applied to them or not. This means that, if enabled, they will appear to rotate to face the camera vertically if they are viewed from above or below; otherwise, they will appear as flat polygons when seen from above or below.
gr_skydome <boolean>
help
flags:AUTOSAVE
- Default value: On
Determines whether or not to render the sky texture as a dome.
gr_filtermode <mode>
- Requirements: Using the OpenGL renderer
help
flags:ACTION
- Menu location: Options → Video Options → OpenGL Options... → Texture Filter
- Default value: Nearest
Sets the texture filtering mode.
Integer | String |
---|---|
0 | "Nearest "
|
1 | "Bilinear "
|
2 | "Trilinear "
|
3 | "Linear_Nearest "
|
4 | "Nearest_Linear "
|
5 | "Nearest_Mipmap "
|
gr_anisotropicmode <integer>
Sets the degree of anisotropic filtering. Minimum value is 1, maximum is defined by the GPU (GL_MAX_TEXTURE_MAX_ANISOTROPY_EXT
). Note that this variable can only be modified in-game if SRB2 was ever running in OpenGL.
gr_fovchange <boolean>
help
flags:AUTOSAVE
- Default value: Off
If enabled, the field of view widens as the player's speed increases to simulate the character getting further away from the camera.
gr_solvetjoin <boolean>
Determines whether or not to solve T-joins.
gr_allowclientshaders <boolean>
- Requirements: Server or admins only
help
flags:AUTOSAVE
- Default value: On
Sets whenever or not custom OpenGL Shaders are allowed to used in the server.
gr_shaders <integer/string>
- Requirements: Using the OpenGL renderer
help
flags:AUTOSAVE
- Menu location: Options → Video Options → OpenGL Options... → Shaders
- Default value: On
Determines whether or not shaders are enabled. If set to Ignore custom shaders
, only built-in shaders will be used.
CPU
cpusleep <integer>
help
flags:AUTOSAVE
- Default value: -1
Calms down a number of common processes to reserve CPU power for SRB2, by telling the processes to sleep for a set period of time. Highly recommended for older computers or computers struggling with their OS. Values range from -1 to 28, -1 being off and 0 to 28 being the time to sleep, measured in milliseconds.