Counter-Strike: Global Offensive/Game Modes

Here are tables of the game modes and the console commands to launch them in and .
The paths named on this page are relative to or respectively.
== Overview ==
To launch a map with a desired game mode, adjust the ConVars
* game_type,
* game_mode,
* sv_game_mode_flags and
* sv_skirmish_id
according to the tables below and load a map by using the or console command.
{| class="standard-table"	Game Mode 	Console Commands
keep previous	map de_dust2 	
 	game_type 1; game_mode 2;sv_game_mode_flags 0;sv_skirmish_id 0;map de_dust2 	
 	game_type 0; game_mode 1;sv_game_mode_flags 32;sv_skirmish_id 0;map de_dust2	
 	game_type 0; game_mode 0;sv_game_mode_flags 0;sv_skirmish_id 3;map de_dust2 	
== Loading a Map ==
When loading a map, the game will...
# set the whitelisted ConVars (the ones listed in ) to their default value,
# execute the CFG files associated with the current values of game_type and game_mode (defined in and ),
# execute the CFG file associated with the current value of sv_game_mode_flags, see below, and
# execute the CFG file associated with the current value of sv_skirmish_id (defined in under skirmish_modes), see below.
If these four ConVars are not set before loading a map, the map launches in the last game mode played. Their initial value is 0 (Casual).
== Game Type and Game Mode ==
 and are console variables that determine how the next map is initialized when loaded, including but not limited to the execution of CFG files, used to set some of the countless ConVars that control game rules, for example , , and so forth.
Apart from that, there are also other game rules or settings for which the value of and is checked during the current match.
Examples are the UI for all players, the events when is planted or defused, whether causes a screen tint, whether players can pick up experimental weapons such as , ...
The following table lists all available game modes along with their values for and , their internal name, their aliases for the command, their default maximum number of players, the CFG files that are executed when a map is launched in this game mode, and a description.
Game Mode	Game Mode 	type 	mode 	Internal Name 	map commandaliases 	max-players	CFG filenames executed, if existent 	Description
 	Casual (default)	0 	0 	casual 	casual 	20 	gamemode_casual.cfg, gamemode_casual_server.cfg 	Like Competitive but with fewer rounds, shorter freezetime per round, no friendly fire, no team collision, free armor and free defuse kit/cutters.
 	Competitive 	0 	1 	competitive 	competitive, comp 	10 	gamemode_competitive.cfg, gamemode_competitive_offline.cfg (!) gamemode_competitive_server.cfg 	The classic game mode, usually made for 5v5. Best of 30 rounds, teams are switched at halftime, friendly fire is on. Round-ending objectives are elimination, bomb explosion, bomb defusal, hostage rescue and timeout.
 	Wingman 	0 	2 	scrimcomp2v2 	scrimcomp2v2 	4 	gamemode_competitive2v2.cfg, gamemode_competitive2v2_offline.cfg (!) gamemode_competitive2v2_server.cfg 	Like Competitive, but adjusted for 2v2 and for a smaller map or a map section. Best of 16 rounds. Also, each round is shorter.
 	Weapons Expert 	0 	3 	scrimcomp5v5 	scrimcomp5v5 	10 	gamemode_competitive.cfg, gamemode_competitive_offline.cfg (!) op08_weapons_expert.cfg, gamemode_competitive_server.cfg	Like Competitive but every player can buy each weapon at most once per match. The freezetime is a bit longer.
 	Training Day
: 	0 	4 	new_user_training 	new_user_training 	10 	gamemode_new_user_training.cfg 	Like Competitive with bots but automatically assigning humans to Terrorists with game instructions turned on. This game mode's CFG file also specifies a behavior tree for the bots that is made for .
 	Arms Race 	1 	0 	gungameprogressive	armsrace, arms,gungame, gg,gungameprogressive	10 	gamemode_armsrace.cfg, gamemode_armsrace_server.cfg 	The game is one perpetual round where killed players respawn at the default spawns. A weapon progression (a number of guns and their order) is defined where players win by making a specified number of kills with each of these weapons.
 	Demolition 	1 	1 	gungametrbomb 	demolition, demo,gungametrbomb 	10 	gamemode_demolition.cfg, gamemode_demolition_server.cfg 	A mixture of Casual with Armsrace. Best of 20 rounds. Each player is given a fixed weapon for each round, depending on their individual progress. Each player can progress one gun per round by making at least one kill.
 	Deathmatch 	1 	2 	deathmatch 	deathmatch, dm 	16 	gamemode_deathmatch.cfg, gamemode_deathmatch_server.cfg 	Like Armsrace but with free weapon choice and respawns across the map. Kills grant points, depending on the weapon type and if it is currently the bonus weapon. A player wins by scoring the highest after the round's time limit.
 	Training 	2 	0 	training 	training 	1 	gamemode_training.cfg, gamemode_training_server.cfg 	Assigns clients to CT with no weapon. No round limit, no time limit, no freezetime, minimal HUD. Good for singleplayer maps, used on CS:GO's Training Course.
 	Custom 	3 	0 	custom 	custom 	100 	gamemode_custom.cfg, gamemode_custom_server.cfg 	Like Undefined, see below. This is an "empty" game mode allowing mapmakers to implement any map-specific custom game mode, if they wish to.If sv_autoexec_mapname_cfg is not 0 (which however it its default value), the CFG file is executed with whitelist.
 	Guardian 	4 	0 	cooperative 	guardian, guard,cooperative 	20 	gamemode_competitive.cfg, gamemode_cooperative.cfg, gamemode_cooperative_server.cfg 	Two human players must defend a bombsite as CT or hostages as T against rushing bots. Maps must support this mode to work as intended.
 	Co-op Strike 	4 	1 	coopmission 	coop, coopstrike,coopmission 	10 	gamemode_competitive.cfg, gamemode_coopmission.cfg, gamemode_coopmission_server.cfg 	Usually a custom mission for two human players on a custom map that is designed primarily for this mode.
 	War Games 	5 	0 	skirmish 	skirmish 	12 	- 	Like Undefined, see below.
 	Danger Zone 	6 	0 	survival 	survival 	16 	gamemode_survival.cfg, gamemode_survival_server.cfg 	A Battle Royale mode for big maps where players win by being the last man (or team) standing. Maps must be designed for this mode to work as intended.
 	Workshop
: 	7 	0 	workshop 	- 	1 	gamemode_workshop.cfg, gamemode_workshop_server.cfg 	
 	Map default 	seedescription 	seedescription 	- 	default, auto 	depends 	depends 	This is not a game mode itself, rather a "redirect". The game picks and from the map's default_game_type and default_game_mode values, defined in either , (under maps/<mapname>/) or . If they are defined in more than one of these files, the latter of the named files overrides the former. If they are not defined in any of these, the current type and mode are kept. All official maps use this appropriately (just that competitive maps use Casual).
 	Undefined 	none ofthe above	none ofthe above	- 	- 	? 	- 	No CFG file is executed, only the whitelisted ConVars are set to their default value. By default this results in game rules like Casual but with no round limit, instead with a time limit of 5 minutes for the game and map. mp_roundtime is also set to 5 minutes.
== Game Mode Flags ==
The ConVar sv_game_mode_flags is used for game mode variations. It can determine more CFG files that will be executed after the game mode CFG files when a map is launched.
Its value is read bitwise, meaning that adding values of the following table together results in all associated CFG files being executed.
 sv_game_mode_flags
Value	CFG file executed, if existent
4 	gamemode_<internal game mode name>_tmm.cfg
32 	gamemode_<internal game mode name>_short.cfg
Valve currently uses this to implement game mode variations without touching sv_skirmish_id.
 Current usage of Game Mode Flags
Game Mode	Game Mode 	Flags Value	Flags Value 	Flags Value
Game Mode	Game Mode 	0 	4 (tmm) 	32 (short)
 	Competitive	default 	 	Short Match
 	Deathmatch 	default 	Team vs Team	Free For All
== Skirmish Modes ==
War Games are game mode variations.
The ConVar sv_skirmish_id determines the War Game that a map will be launched in. Each War Game can have CFG files associated to it that are executed if a map is launched in that War Game, namely if sv_skirmish_id is set to the ID of that War Game. These CFG files contain only few commands and are executed after the CFG files of a game mode and after the CFG files of the game mode flags. They can be loaded in any game mode, but each skirimsh CFG file has a game mode that is intended to be used as a base which can be found in the appropriate game's text file and also in the skirmish CFG file itself.
To play one of the following skirmish modes, type sv_skirmish_id <number> in the console and launch a map with the intended game mode, see above.
Alternatively, one could also do exec <cfg filename> and mp_restartgame 1 in-game or even write own configs for that matter.
To return to a "pure" game mode found in the above table, set sv_skirmish_id back to 0, so the game will not load any additional CFG files to a game mode.
War Game	War Game 	skirmish_id	Internal Name 	Intended Game Mode	CFG filenames executed with whitelist	Description
 	None (default) 	0 	- 	- 	- 	No Skirmish Mode, i.e. the game mode defined by game_type and game_mode.
 	Stab Stab Zap 	1 	stabstabzap 	Casual 	op08_stab_stab_zap.cfg 	Only knives, recharging taser and grenades.
 	Free For All 	2 	dm_freeforall 	Deathmatch 	gamemode_dm_freeforall.cfg 	Like Deathmatch, but teammates are enemies.
 	Flying Scoutsman 	3 	flyingscoutsman 	Casual 	op08_flying_scoutsman.cfg 	Only scouts and knives, low gravity, high precision.
 	Trigger Discipline	4 	triggerdiscipline	Casual 	op08_trigger_discipline.cfg 	Gunshots that a player does not hit an enemy with damage theirselves down to a minimum of 1 HP.
 	Boom! Headshot! 	6 	headshots 	Deathmatch 	op08_headshots.cfg 	Helmets are disabled and bodyshots deal no damage, causing a small spark effect instead of blood.
 	Hunter-Gatherers 	7 	huntergatherers 	Deathmatch 	op08_hunter_gatherers.cfg 	Team deathmatch with collecting dogtags: Killed enemies will drop dogtags that anyone can pick up. Collecting dogtags from the enemy team awards victory points. Killing enemies with the Deathmatch bonus weapon makes them drop an extra dogtag. The team with the most victory points at the end of the time limit wins.
 	Heavy Assault Suit	8 	heavyassaultsuit 	Casual 	op08_heavy_assault_suit.cfg 	Heavy armor can be purchased for $6000.
 	Arms Race 	10 	armsrace 	Arms Race 	- 	Equivalent to #Arms Race.
 	Demolition 	11 	demolition 	Demolition 	- 	Equivalent to #Demolition.
 	Retakes 	12 	retakes 	Casual 	gamemode_retakecasual.cfg 	Each round, 3 Terrorists spawn on a bomb site with a bomb being planted and 4 CTs spawn at fixed locations around it or on the other bomb spot. Each player can choose a loadout card at round start.
 	Bloodletter 	- 	- 	Arms Race 	op08_bloodletter.cfg 	Dealing damage heals you 100 % of the damage dealt (max 200). Players take non-lethal damage over time while they are alive.
 	Bounty Hunter 	- 	- 	Deathmatch 	op08_bounty_hunter.cfg 	All players are enemies, killed enemies will drop dogtags that anyone can pick up. Killing players awards less points. Collecting dogtags awards additional Deathmatch points.
 	Team Deathmatch 	- 	- 	Deathmatch 	op08_team_deathmatch.cfg 	Killing enemies is worth team victory points, killing enemies with the Deathmatch bonus weapon awards additional victory points. The team with the most victory points at the end of the time limit wins.
== Game Mode dependent Events ==
local nType = ScriptGetGameType() // game_type
local nMode = ScriptGetGameMode() // game_mode
if (nType == 0 && nMode == 2)
{
 // code executed only in Wingman
 EntFire( "spawnpoints.2v2", "SetEnabled", "", 0 )
}
else
{
 // code executed only in any other game mode
 EntFire( "spawnpoints.2v2", "SetDisabled", "", 0 )
}
In VScript, there are the specific VScript functions ScriptGetGameType() and ScriptGetGameMode() which return the current integer value of game_type and game_mode, respectively.
These allow VScript structures such as the one on the right; If this example code is executed, it will fire an I/O event to entities named spawnpoints.2v2 depending on the current game mode. Code can be executed every round by saving it in a .nut file under and by adding it to the Entity Scripts of any entity in a map. See also: VScript Fundamentals and .
With this concept, one can manipulate gameplay depending on the current game mode, which is a really powerful tool to make other game modes such as work.