Counter-Strike: Global Offensive/Game Modes: Difference between revisions
m (Popcorn moved page CS:GO Game Mode Commands to CS:GO Game Modes: 'Commands' are not actually the topic. This shortens the title, making it fit the topic better indeed.) |
(Moved overview tables to the top. Updated links to renamed pages. Added anchors for all Game/Skirmish Modes. Added examples to #Map default. Added skirmish_id 0. Added explanations and links to VScript section.) |
||
Line 3: | Line 3: | ||
{{back | Counter-Strike: Global Offensive Level Creation}} | {{back | Counter-Strike: Global Offensive Level Creation}} | ||
Here are tables of the game modes and the console commands to launch them in {{game name|csgo|name=Counter-Strike: Global Offensive}}. | Here are tables of the game modes and the console commands to launch them in {{game name|csgo|name=Counter-Strike: Global Offensive}}. | ||
To launch a map with a desired game mode, adjust the [[ConVar]]s | To launch a map with a desired game mode, adjust the [[ConVar]]s | ||
*<code>'''game_type'''</code>, | *<code>'''game_type'''</code>, | ||
Line 11: | Line 9: | ||
*<code>'''sv_skirmish_id'''</code> | *<code>'''sv_skirmish_id'''</code> | ||
according to the tables below and load a map by using the <code>[[Map (ConCommand)|map]] <mapname></code> or {{ent|changelevel|<mapname>}} console command. | according to the tables below and load a map by using the <code>[[Map (ConCommand)|map]] <mapname></code> or {{ent|changelevel|<mapname>}} console command. | ||
{{Confusion | The [[Setting up 1v1 Warmup Arenas|1v1 warmup arenas]] seen in some official Competitive and Wingman maps do '''not''' use an own game mode. If warmup arenas are implemented in a map, they can be played in by launching the map in Competitive or Wingman and invoking <code>mp_warmup_start</code>.}} | |||
{| style=margin:auto | |||
|- style=vertical-align:top | |||
| | |||
{| class=standard-table | |||
|+ Quick Examples to load ''Dust II'' | |||
! Game Mode | |||
! Console Commands | |||
|- | |||
| ''keep previous'' | |||
| <code style=padding:0>map de_dust2</code> | |||
|- | |||
| {{csgo mode|Dm}} | |||
| <code style=padding:0>game_type 1; game_mode 2;<br>sv_game_mode_flags 0;<br>sv_skirmish_id 0;<br>map de_dust2</code> | |||
|- | |||
| {{csgo mode|Comp|Short Competitive|link=}} | |||
| <code style=padding:0>game_type 0; game_mode 1;<br>sv_game_mode_flags 32;<br>sv_skirmish_id 0;<br>map de_dust2</code> | |||
|- | |||
| {{csgo mode|Fs|link=#Flying Scoutsman}} | |||
| <code style=padding:0>game_type 0; game_mode 0;<br>sv_game_mode_flags 0;<br>sv_skirmish_id 3;<br>map de_dust2</code> | |||
|} | |||
| | |||
{| class="standard-table" style="text-align: center;" | |||
|+ Defined pairs of values for <code>game_type</code> and <code>game_mode</code> | |||
!colspan="2" rowspan="2" | <code style=color:#000>game_type</code> | |||
!colspan="4" | <code style=color:#000>game_mode</code> | |||
|- | |||
! 0 !! 1 !! 2 !! 3 | |||
|- | |||
! Classic !! style="width:3em" | 0 | |||
| {{csgo mode|Casual}} | |||
| {{csgo mode|Competitive}} | |||
| {{csgo mode|Wingman}} | |||
| {{csgo mode|Weaponsexpert|link=#Weapons Expert}} | |||
|- | |||
! Gun Game !! 1 | |||
| {{csgo mode|Armsrace}} | |||
| {{csgo mode|Demolition}} | |||
| {{csgo mode|Deathmatch}} | |||
|- | |||
! Training !! 2 | |||
| {{csgo mode|Training|link=#Training}} | |||
|- | |||
! Custom !! 3 | |||
| {{csgo mode|Custom}} | |||
|- | |||
! Cooperative !! 4 | |||
| {{csgo mode|Guardian}} | |||
| {{csgo mode|Coop}} | |||
|- | |||
! Skirmish !! 5 | |||
| {{csgo mode|Skirmish|link=#Skirmish Type}} | |||
|- | |||
! Free For All !! 6 | |||
| {{csgo mode|Dangerzone}} | |||
|} | |||
{{For|details|[[#Game Type and Game Mode]]}} | |||
| | |||
{| class=standard-table | |||
|+ Some values for <code>sv_skirmish_id</code> | |||
!style=width:2em| ID | |||
! War Game | |||
! Game Mode | |||
|- | |||
! 0 | |||
| ''None (default)'' | |||
|- | |||
! 3 | |||
| {{csgo mode|Fs|link=#Flying Scoutsman}} | |||
| Casual | |||
|- | |||
! 10 | |||
| {{csgo mode|Ar}} | |||
| Arms Race | |||
|- | |||
! 11 | |||
| {{csgo mode|Demo}} | |||
| Demolition | |||
|- | |||
! 12 | |||
| {{csgo mode|Retakes|link=#Retakes}} | |||
| Casual | |||
|} | |||
{{For|details|[[#Skirmish Modes]]}} | |||
|} | |||
== Loading a Map == | |||
When loading a map, the game will... | When loading a map, the game will... | ||
# set the [[whitelistcmd|whitelisted ConVars]] (the ones listed in <code>csgo/bspconvar_whitelist.txt</code>) to their default value, | # set the [[whitelistcmd|whitelisted ConVars]] (the ones listed in <code>csgo/bspconvar_whitelist.txt</code>) to their default value, | ||
Line 20: | Line 105: | ||
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). | 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). | ||
{{Tip | The <code>map</code> and <code>changelevel</code> commands have an optional <code>< | {{Tip | The <code>map</code> and <code>changelevel</code> commands have an optional <code><game mode alias></code> parameter. Example: <code>map de_dust2 deathmatch</code> or <code>changelevel myCustomMap coop</code>. If such an alias parameter is given and if it is valid, the game will adjust <code>game_type</code> and <code>game_mode</code> and launch the map with the associated game mode. See the ''map command aliases'' column in the following big table.}} | ||
{{Tip | Maps can have a default game mode, which can be read with <code>map <mapname> default</code> or <code>map <mapname> auto</code>. See | {{Tip | Maps can have a default game mode, which can be read with <code>map <mapname> default</code> or <code>map <mapname> auto</code>. See [[#Map default]].}} | ||
{{Tip | [[Command Line Options|Set Launch Options]] can be used, e.g: <code>+game_type <number> +game_mode <number> +map <mapname></code>}} | {{Tip | [[Command Line Options|Set Launch Options]] can be used, e.g: <code>+game_type <number> +game_mode <number> +map <mapname></code>}} | ||
Line 37: | Line 122: | ||
== Game Type and Game Mode == | == Game Type and Game Mode == | ||
<code>'''game_type'''</code> and <code>'''game_mode'''</code> are [[console variable]]s that determine how the next map is initialized when loaded, including but not limited to the [[exec]]ution of [[CFG]] files, used to set some of the countless ConVars that control game rules, for example {{ent|mp_roundtime}}, {{ent|mp_t_default_secondary}}, {{ent|sv_deadtalk}} and so forth. | |||
{{ | Apart from that, there are also other game rules or settings for which the the value of these ConVars is checked ''during'' the current match. | ||
Examples are the UI for all players, the events when [[weapon_c4]] is planted or defused, whether [[item_heavyassaultsuit]] causes a screen tint, whether players can pick up experimental weapons such as [[weapon_axe]], ... | |||
The following table lists all available ''game mode''s along with their values for <code>game_type</code> and <code>game_mode</code>, their internal name, their aliases for the <code>[[map (ConCommand)|map]]</code> command, their default maximum number of [[player]]s, the CFG files that are executed when a map is launched in this ''game mode'', and a description. | |||
{{Note | The CFG files ending with <code>_offline.cfg</code> are only executed if the server was launched via ''Practice with Bots'' from the main menu. Valve uses them to enable [[bot]]s in offline competitive since bots have been disabled in competitive by default, see {{ent|bot_quota}}.<br> | |||
The CFG files ending with <code>_server.cfg</code> don't exist locally by default. You can create them and write commands into them that will be executed every time you locally launch the corresponding game mode.}} | |||
{{Note | The CFG files ending with <code>_offline.cfg</code> are only executed if the server was launched via ''Practice with Bots'' from the main menu. Valve uses them to enable [[bot]]s in offline competitive since bots have been disabled in competitive by default, see {{ent|bot_quota}}. | |||
{{Note | With no adjustments, [[maxplayers]] is a hard limit for the number of [[player]]s and bots on the server.}} | {{Note | With no adjustments, [[maxplayers]] is a hard limit for the number of [[player]]s and bots on the server.}} | ||
{{Note | {{cpp}} The possible ''map command | {{Note | The information of these tables can be found in <code>csgo/[[gamemodes.txt]]</code>.<br> | ||
{{cpp}} The possible ''map command aliases'' can be found in the function <code>GameTypes::GetGameTypeAndModeFromAlias</code> defined in <code>gametypes.cpp</code>.}} | |||
{| class="standard-table mw-collapsible" style="width:100%;" | {| class="standard-table mw-collapsible" style="width:100%;" | ||
Line 87: | Line 140: | ||
! style="width:3em;" | mode | ! style="width:3em;" | mode | ||
! Internal Name | ! Internal Name | ||
! style="white-space:nowrap;"| map command<br> | ! style="white-space:nowrap;"| <code style=color:#000>map</code> command<br>aliases | ||
! [[maxplayers|max-<br>players]] | ! [[maxplayers|max-<br>players]] | ||
! CFG filenames executed, if existent | ! CFG filenames executed, if existent | ||
! Description | ! Description | ||
|- | |- id="Casual" | ||
| [[File:Csgo icon casual.png|32px]] | | [[File:Csgo icon casual.png|32px]] | ||
| [[Creating a Classic Counter-Strike Map|Casual]] ''(default)'' | | [[Creating a Classic Counter-Strike Map|Casual]] ''(default)'' | ||
Line 101: | Line 154: | ||
| gamemode_casual.cfg, <br> gamemode_casual_server.cfg | | gamemode_casual.cfg, <br> gamemode_casual_server.cfg | ||
| Like Competitive but with fewer rounds, shorter freezetime per round, no friendly fire, no team collision, free [[item_assaultsuit|armor]] and free [[item_defuser|defuse kit]]/[[item_cutters|cutters]]. | | Like Competitive but with fewer rounds, shorter freezetime per round, no friendly fire, no team collision, free [[item_assaultsuit|armor]] and free [[item_defuser|defuse kit]]/[[item_cutters|cutters]]. | ||
|- | |- id="Competitive" | ||
| [[File:Csgo icon competitive.png|32px]] | | [[File:Csgo icon competitive.png|32px]] | ||
| [[Creating a Classic Counter-Strike Map|Competitive]] | | [[Creating a Classic Counter-Strike Map|Competitive]] | ||
Line 110: | Line 163: | ||
| 10 | | 10 | ||
| gamemode_competitive.cfg, <br> gamemode_competitive_offline.cfg (!)<br> gamemode_competitive_server.cfg | | gamemode_competitive.cfg, <br> gamemode_competitive_offline.cfg (!)<br> 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 | | 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 [[Creating a Classic Counter-Strike Map#Game Mode Description|elimination, bomb explosion, bomb defusal, hostage rescue and timeout]]. | ||
|- | |- id="Wingman" | ||
| [[File:Csgo icon wingman.png|32px]] | | [[File:Csgo icon wingman.png|32px]] | ||
| [[ | | [[CS:GO Game Modes/Wingman|Wingman]] | ||
| <center>0</center> | | <center>0</center> | ||
| <center>2</center> | | <center>2</center> | ||
Line 121: | Line 174: | ||
| gamemode_competitive2v2.cfg, <br> gamemode_competitive2v2_offline.cfg (!)<br> gamemode_competitive2v2_server.cfg | | gamemode_competitive2v2.cfg, <br> gamemode_competitive2v2_offline.cfg (!)<br> 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. | | Like Competitive, but adjusted for 2v2 and for a smaller map or a map section. Best of 16 rounds. Also, each round is shorter. | ||
|- | |- id="Weapons Expert" | ||
| | | | ||
| Weapons Expert | | Weapons Expert | ||
Line 131: | Line 184: | ||
| gamemode_competitive.cfg, <br> gamemode_competitive_offline.cfg (!)<br> op08_weapons_expert.cfg, <br> gamemode_competitive_server.cfg | | gamemode_competitive.cfg, <br> gamemode_competitive_offline.cfg (!)<br> op08_weapons_expert.cfg, <br> gamemode_competitive_server.cfg | ||
| Like Competitive but every player can buy each weapon at most once per match. The freezetime is a bit longer. | | Like Competitive but every player can buy each weapon at most once per match. The freezetime is a bit longer. | ||
|- | |- id="Arms Race" | ||
| [[File:Csgo icon armsrace.png|32px]] | | [[File:Csgo icon armsrace.png|32px]] | ||
| [[ | | [[CS:GO Game Modes/Arms Race|Arms Race]] | ||
| <center>1</center> | | <center>1</center> | ||
| <center>0</center> | | <center>0</center> | ||
Line 141: | Line 194: | ||
| gamemode_armsrace.cfg, <br> gamemode_armsrace_server.cfg | | gamemode_armsrace.cfg, <br> 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. | | 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. | ||
|- | |- id="Demolition" | ||
| [[File:Csgo icon demolition.png|32px]] | | [[File:Csgo icon demolition.png|32px]] | ||
| [[ | | [[CS:GO Game Modes/Demolition|Demolition]] | ||
| <center>1</center> | | <center>1</center> | ||
| <center>1</center> | | <center>1</center> | ||
Line 151: | Line 204: | ||
| gamemode_demolition.cfg, <br> gamemode_demolition_server.cfg | | gamemode_demolition.cfg, <br> 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 his individual progress. Each player can progress one gun per round by making at least one kill. | | A mixture of Casual with Armsrace. Best of 20 rounds. Each player is given a fixed weapon for each round, depending on his individual progress. Each player can progress one gun per round by making at least one kill. | ||
|- | |- id="Deathmatch" | ||
| [[File:Csgo icon deathmatch.png|32px]] | | [[File:Csgo icon deathmatch.png|32px]] | ||
| [[CS:GO | | [[CS:GO Game Modes/Deathmatch|Deathmatch]] | ||
| <center>1</center> | | <center>1</center> | ||
| <center>2</center> | | <center>2</center> | ||
Line 161: | Line 214: | ||
| gamemode_deathmatch.cfg, <br> gamemode_deathmatch_server.cfg | | gamemode_deathmatch.cfg, <br> 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. | | 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. | ||
|- | |- id="Training" | ||
| [[File:Csgo icon training.png|32px]] | | [[File:Csgo icon training.png|32px]] | ||
| Training | | Training | ||
Line 171: | Line 224: | ||
| gamemode_training.cfg, <br> gamemode_training_server.cfg | | gamemode_training.cfg, <br> 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. | | 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. | ||
|- | |- id="Custom" | ||
| | | | ||
| [[CS: | | [[CS:GO Game Modes/Custom|Custom]] | ||
| <center>3</center> | | <center>3</center> | ||
| <center>0</center> | | <center>0</center> | ||
Line 180: | Line 233: | ||
| 100 | | 100 | ||
| - | | - | ||
| Like Undefined, see below, but if <code>sv_autoexec_mapname_cfg</code> is not <code>0</code> (which however it its default value), the CFG file <code>csgo/maps/cfg/<mapname>.cfg</code> is [[execwithwhitelist|executed with whitelist]]. | | Like ''Undefined'', see below, but if <code>sv_autoexec_mapname_cfg</code> is not <code>0</code> (which however it its default value), the CFG file <code>csgo/maps/cfg/<mapname>.cfg</code> is [[execwithwhitelist|executed with whitelist]]. | ||
|- | |- id="Guardian" | ||
| [[File:Csgo icon guardian.png|32px]] | | [[File:Csgo icon guardian.png|32px]] | ||
| [[ | | [[CS:GO Game Modes/Guardian|Guardian]] | ||
| <center>4</center> | | <center>4</center> | ||
| <center>0</center> | | <center>0</center> | ||
Line 191: | Line 244: | ||
| gamemode_competitive.cfg, <br> gamemode_cooperative.cfg, <br> gamemode_cooperative_server.cfg | | gamemode_competitive.cfg, <br> gamemode_cooperative.cfg, <br> 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. | | 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. | ||
|- | |- id="Co-op Strike" | ||
| [[File:Csgo icon coopstrike.png|32px]] | | [[File:Csgo icon coopstrike.png|32px]] | ||
| [[ | | [[CS:GO Game Modes/Co-op Strike|Co-op Strike]] | ||
| <center>4</center> | | <center>4</center> | ||
| <center>1</center> | | <center>1</center> | ||
Line 201: | Line 254: | ||
| gamemode_competitive.cfg, <br> gamemode_coopmission.cfg, <br> gamemode_coopmission_server.cfg | | gamemode_competitive.cfg, <br> gamemode_coopmission.cfg, <br> gamemode_coopmission_server.cfg | ||
| Usually a custom mission for two human players on a custom map that is designed primarily for this mode. | | Usually a custom mission for two human players on a custom map that is designed primarily for this mode. | ||
|- | |- id="Skirmish Type" | ||
| [[File:Csgo icon skirmish.png|32px]] | | [[File:Csgo icon skirmish.png|32px]] | ||
| [[ | | [[#Skirmish Modes|War Games]] | ||
| <center>5</center> | | <center>5</center> | ||
| <center>0</center> | | <center>0</center> | ||
Line 210: | Line 263: | ||
| 12 | | 12 | ||
| - | | - | ||
| Like Undefined, see below. | | Like ''Undefined'', see below. {{confusion|This game type is not used for [[#Skirmish Modes]], also known as War Games.}} | ||
|- | |- id="Danger Zone" | ||
| [[File:Csgo icon dangerzone.png|32px]] | | [[File:Csgo icon dangerzone.png|32px]] | ||
| [[ | | [[CS:GO Game Modes/Danger Zone|Danger Zone]] | ||
| <center>6</center> | | <center>6</center> | ||
| <center>0</center> | | <center>0</center> | ||
Line 221: | Line 274: | ||
| gamemode_survival.cfg, <br> gamemode_survival_server.cfg | | gamemode_survival.cfg, <br> 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. | | 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. | ||
|- | |- id="Map default" | ||
| | | | ||
| ''Map default'' | | ''Map default'' | ||
Line 229: | Line 282: | ||
| ''depends'' | | ''depends'' | ||
| ''depends'' | | ''depends'' | ||
| This is not a game mode itself, rather a "redirect". The game picks <code>game_type</code> and <code>game_mode</code> from the map's <code>default_game_type</code> and <code>default_game_mode</code> values, defined in either <code>csgo/maps/[[.kv|<mapname>.kv]]</code>, <code>csgo/[[gamemodes.txt]]</code> (under <code>maps/<mapname>/</code>) or <code>csgo/gamemodes_server.txt</code>. 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). | | This is not a game mode itself, rather a "redirect". The game picks <code>game_type</code> and <code>game_mode</code> from the map's <code>default_game_type</code> and <code>default_game_mode</code> values, defined in either <code>csgo/maps/[[.kv|<mapname>.kv]]</code>, <code>csgo/[[gamemodes.txt]]</code> (under <code>maps/<mapname>/</code>) or <code>csgo/gamemodes_server.txt</code>. 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). {{example|Invoking <code>map de_dust2 auto</code> launches ''Dust II'' in Casual.<br>Invoking <code>map ar_shoots auto</code> launches ''Shoots'' in Arms Race.}} | ||
|- | |- id="Undefined" | ||
| | | | ||
| ''Undefined'' | | ''Undefined'' | ||
Line 268: | Line 321: | ||
|+ Current usage of Game Mode Flags | |+ Current usage of Game Mode Flags | ||
!rowspan="2" colspan="2"| Game Mode | !rowspan="2" colspan="2"| Game Mode | ||
!colspan="3"| Flags Value | !colspan="3"| Flags Value | ||
|- | |- | ||
Line 277: | Line 329: | ||
| [[File:Csgo icon competitive.png|32px]] | | [[File:Csgo icon competitive.png|32px]] | ||
| Competitive | | Competitive | ||
| ''default'' | | ''default'' | ||
| | | | ||
Line 284: | Line 335: | ||
| [[File:Csgo icon deathmatch.png|32px]] | | [[File:Csgo icon deathmatch.png|32px]] | ||
| Deathmatch | | Deathmatch | ||
| ''default'' | | ''default'' | ||
| Team vs Team | | Team vs Team | ||
Line 290: | Line 340: | ||
|} | |} | ||
{{Example|To play Team vs Team, invoke <code>game_type 1; game_mode 2; sv_game_mode_flags 4; map <mapname></code>, or shorter: <code>sv_game_mode_flags 4; map <mapname> dm</code>.}} | |||
== Skirmish Modes == | == Skirmish Modes == | ||
Line 298: | Line 348: | ||
The [[ConVar]] <code>'''sv_skirmish_id'''</code> 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 <code>sv_skirmish_id</code> 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 the intended game mode of a skirimsh CFG file (the ones in the table below) can be found in <code>csgo/scripts/items/items_game.txt</code> and also in the CFG file itself. | The [[ConVar]] <code>'''sv_skirmish_id'''</code> 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 <code>sv_skirmish_id</code> 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 the intended game mode of a skirimsh CFG file (the ones in the table below) can be found in <code>csgo/scripts/items/items_game.txt</code> and also in the CFG file itself. | ||
To play one of the following | To play one of the following skirmish modes, type <code>sv_skirmish_id <number></code> in the console and launch a map with the intended game mode, see above. | ||
<br> | <br> | ||
Alternatively, one could also do <code>exec <cfg filename></code> and <code>mp_restartgame 1</code> in-game or even write own [[CFG|configs]] for that matter. | Alternatively, one could also do <code>exec <cfg filename></code> and <code>mp_restartgame 1</code> in-game or even write own [[CFG|configs]] for that matter. | ||
To return to a "pure" game mode found in the above table, set <code>sv_skirmish_id</code> to | To return to a "pure" game mode found in the above table, set <code>sv_skirmish_id</code> back to 0, so the game will not load any additional CFG files to a game mode. | ||
{{Example| | {{Example| | ||
Line 315: | Line 365: | ||
{| class="standard-table mw-collapsible" style="width:100%;" | {| class="standard-table mw-collapsible" style="width:100%;" | ||
!style="white-space:nowrap;" colspan="2"| War Game | !style="white-space:nowrap;" colspan="2"| War Game | ||
! skirmish<br> | ! <code style="color:#000;padding:0">skirmish<br>_id</code> | ||
! Internal Name | ! Internal Name | ||
! Intended Game Mode | ! Intended Game Mode | ||
Line 321: | Line 371: | ||
! Description | ! Description | ||
|- | |- | ||
| | |||
| ''None (default)'' | |||
| <center>0</center> | |||
| - | |||
| - | |||
| - | |||
| No Skirmish Mode, i.e. the game mode defined by <code>game_type</code> and <code>game_mode</code>. | |||
|- id="Stab Stab Zap" | |||
| | | | ||
| Stab Stab Zap | | Stab Stab Zap | ||
Line 328: | Line 386: | ||
| op08_stab_stab_zap.cfg | | op08_stab_stab_zap.cfg | ||
| Only [[weapon_knife|knives]], recharging [[weapon_taser|taser]] and grenades. | | Only [[weapon_knife|knives]], recharging [[weapon_taser|taser]] and grenades. | ||
|- | |- id="Free For All" | ||
| | | | ||
| Free For All | | Free For All | ||
Line 336: | Line 394: | ||
| gamemode_dm_freeforall.cfg | | gamemode_dm_freeforall.cfg | ||
| Like Deathmatch, but teammates are enemies. {{note|The official FFA Deathmatch mode is not this skirmish mode, see [[#Game Mode Flags]].}} | | Like Deathmatch, but teammates are enemies. {{note|The official FFA Deathmatch mode is not this skirmish mode, see [[#Game Mode Flags]].}} | ||
|- | |- id="Flying Scoutsman" | ||
| [[File:Csgo icon skirmish flyingscoutsman.png|32px]] | | [[File:Csgo icon skirmish flyingscoutsman.png|32px]] | ||
| Flying Scoutsman | | Flying Scoutsman | ||
Line 344: | Line 402: | ||
| op08_flying_scoutsman.cfg | | op08_flying_scoutsman.cfg | ||
| Only [[weapon_ssg08|scouts]] and [[weapon_knife|knives]], low gravity, high precision. | | Only [[weapon_ssg08|scouts]] and [[weapon_knife|knives]], low gravity, high precision. | ||
|- | |- id="Trigger Discipline" | ||
| | | | ||
| Trigger Discipline | | Trigger Discipline | ||
Line 352: | Line 410: | ||
| op08_trigger_discipline.cfg | | op08_trigger_discipline.cfg | ||
| Gunshots that a [[player]] does not hit an enemy with damage himself down to a minimum of 1 [[Health|HP]]. | | Gunshots that a [[player]] does not hit an enemy with damage himself down to a minimum of 1 [[Health|HP]]. | ||
|- | |- id="Boom! Headshot!" | ||
| | | | ||
| Boom! Headshot! | | Boom! Headshot! | ||
Line 360: | Line 418: | ||
| op08_headshots.cfg | | op08_headshots.cfg | ||
| Helmets are disabled and bodyshots deal no damage, causing a small spark effect instead of blood. | | Helmets are disabled and bodyshots deal no damage, causing a small spark effect instead of blood. | ||
|- | |- id="Hunter-Gatherers" | ||
| | | | ||
| Hunter-Gatherers | | Hunter-Gatherers | ||
Line 367: | Line 425: | ||
| Deathmatch | | Deathmatch | ||
| op08_hunter_gatherers.cfg | | op08_hunter_gatherers.cfg | ||
| [[CS:GO | | [[CS:GO Game Modes/Deathmatch#Team Mode|Team deathmatch]] with collecting [[item_dogtags|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 [[CS:GO Game Modes/Deathmatch#Bonus Weapon|bonus weapon]] makes them drop an extra dogtag. The team with the most victory points at the end of the time limit wins. | ||
|- | |- id="Heavy Assault Suit" | ||
| | | | ||
|style="white-space:nowrap;"| Heavy Assault Suit | |style="white-space:nowrap;"| Heavy Assault Suit | ||
Line 376: | Line 434: | ||
| op08_heavy_assault_suit.cfg | | op08_heavy_assault_suit.cfg | ||
| [[item_heavyassaultsuit|Heavy armor]] can be purchased for $6000. {{Deprecated | The item is no longer accessible in the buy menu, but can still be bought with the command <code>buy heavyarmor</code> while not owning a rifle.}} | | [[item_heavyassaultsuit|Heavy armor]] can be purchased for $6000. {{Deprecated | The item is no longer accessible in the buy menu, but can still be bought with the command <code>buy heavyarmor</code> while not owning a rifle.}} | ||
|- | |- id="Arms Race Skirmish" | ||
| [[File:Csgo icon skirmish armsrace.png|32px]] | | [[File:Csgo icon skirmish armsrace.png|32px]] | ||
| Arms Race | | Arms Race | ||
Line 383: | Line 441: | ||
| Arms Race | | Arms Race | ||
| - | | - | ||
| Equivalent to Arms Race. | | Equivalent to [[#Arms Race]]. | ||
|- | |- id="Demolition Skirmish" | ||
| | | | ||
| Demolition | | Demolition | ||
Line 391: | Line 449: | ||
| Demolition | | Demolition | ||
| - | | - | ||
| Equivalent to Demolition. | | Equivalent to [[#Demolition]]. | ||
|- | |- id="Retakes" | ||
| [[File:Csgo icon skirmish retakes.png|32px]] | | [[File:Csgo icon skirmish retakes.png|32px]] | ||
| [[CS: | | [[CS:GO Game Modes/Retakes|Retakes]] | ||
| <center>12</center> | | <center>12</center> | ||
| <code>retakes</code> | | <code>retakes</code> | ||
Line 400: | Line 458: | ||
| gamemode_retakecasual.cfg | | 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. {{Warning | If there is exactly one bombsite, the game crashes with a probability of 50 %.}} | | 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. {{Warning | If there is exactly one bombsite, the game crashes with a probability of 50 %.}} | ||
|- | |- id="Bloodletter" | ||
| | | | ||
| Bloodletter | | Bloodletter | ||
Line 408: | Line 466: | ||
| op08_bloodletter.cfg | | 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. | | Dealing damage heals you 100 % of the damage dealt (max 200). Players take non-lethal damage over time while they are alive. | ||
|- | |- id="Bounty Hunter" | ||
| | | | ||
| Bounty Hunter | | Bounty Hunter | ||
Line 416: | Line 474: | ||
| op08_bounty_hunter.cfg | | op08_bounty_hunter.cfg | ||
| All players are enemies, killed enemies will drop [[item_dogtags|dogtags]] that anyone can pick up. Killing players awards less points. Collecting dogtags awards additional Deathmatch points. | | All players are enemies, killed enemies will drop [[item_dogtags|dogtags]] that anyone can pick up. Killing players awards less points. Collecting dogtags awards additional Deathmatch points. | ||
|- | |- id="Team Deathmatch" | ||
| | | | ||
| [[CS:GO | | [[CS:GO Game Modes/Deathmatch#Team Mode|Team Deathmatch]] | ||
| <center>-</center> | | <center>-</center> | ||
| - | | - | ||
| Deathmatch | | Deathmatch | ||
| op08_team_deathmatch.cfg | | op08_team_deathmatch.cfg | ||
| Killing enemies is worth team victory points, killing enemies with the Deathmatch [[CS:GO | | Killing enemies is worth team victory points, killing enemies with the Deathmatch [[CS:GO Game Modes/Deathmatch#Bonus Weapon|bonus weapon]] awards additional victory points. The team with the most victory points at the end of the time limit wins. {{note|The official Team Deathmatch mode is not this skirmish mode, see [[#Game Mode Flags]].}} | ||
|} | |} | ||
Line 431: | Line 489: | ||
{| style=float:right | {| style=float:right | ||
| <syntaxhighlight lang=cpp> | | <syntaxhighlight lang=cpp> | ||
local | local nType = ScriptGetGameType() // game_type | ||
local | local nMode = ScriptGetGameMode() // game_mode | ||
if (nType == 0 && nMode == 2) | if (nType == 0 && nMode == 2) | ||
{ | { | ||
// code executed only in Wingman | // code executed only in Wingman | ||
EntFire( "spawnpoints.2v2", "SetEnabled", "", 0 ) | |||
} | } | ||
else | else | ||
{ | { | ||
// code executed only in any other game mode | // code executed only in any other game mode | ||
EntFire( "spawnpoints.2v2", "SetDisabled", "", 0 ) | |||
} | } | ||
</syntaxhighlight> | </syntaxhighlight> | ||
{{note|The variable names <code>nType, nMode</code> are arbitrary.}} | |||
|} | |} | ||
In [[VScript]], there are the {{csgo}} specific [[List of Counter-Strike: Global Offensive Script Functions#Other|VScript functions]] <code>ScriptGetGameType()</code> and <code>ScriptGetGameMode()</code> which return the current integer value of <code>game_type</code> and <code>game_mode</code>. | In [[VScript]], there are the {{csgo}} specific [[List of Counter-Strike: Global Offensive Script Functions#Other|VScript functions]] <code>ScriptGetGameType()</code> and <code>ScriptGetGameMode()</code> which return the current integer value of <code>game_type</code> and <code>game_mode</code>, respectively. | ||
{{Note | This is independent of the current value of <code>sv_skirmish_id</code>.}} | {{Note | This is independent of the current value of <code>sv_skirmish_id</code>.}} | ||
These allow VScript structures such as the one on the right. | 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 <code>.nut</code> file under <code>csgo/scripts/vscripts/</code> and by adding it to the [[Entity Scripts]] of any entity in a map. See also: [[VScript Fundamentals]] and {{sq}} [[Squirrel]]. | ||
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 | |||
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 {{csgo mode|Coop}} work. | |||
{{Example|The script <code>csgo/scripts/vscripts/2v2/2v2_enable.nut</code> provided by Valve is commonly used to shift player spawn points and activate blockers in {{csgo mode|Wingman}}.}} | |||
{{Idea | When making a map, you can create a VScript exclusively for that map and use this concept to make game mode dependent changes to: the map flow, player spawns, gamerules and much more. For example, it is possible to make closed areas on a map that are opened up only in some game modes, such as Deathmatch and Armsrace.}} | {{Idea | When making a map, you can create a VScript exclusively for that map and use this concept to make game mode dependent changes to: the map flow, player spawns, gamerules and much more. For example, it is possible to make closed areas on a map that are opened up only in some game modes, such as Deathmatch and Armsrace.}} | ||
{{clr}} | {{clr}} | ||
[[Category: Counter-Strike: Global Offensive]] | [[Category: Counter-Strike: Global Offensive]] |
Revision as of 01:48, 21 February 2022
Here are tables of the game modes and the console commands to launch them in Template:Game name. To launch a map with a desired game mode, adjust the ConVars
game_type
,game_mode
,sv_game_mode_flags
andsv_skirmish_id
according to the tables below and load a map by using the map <mapname>
or changelevel <mapname> console command.

mp_warmup_start
.
|
For details, see #Game Type and Game Mode.
|
For details, see #Skirmish Modes.
|
Loading a Map
When loading a map, the game will...
- set the whitelisted ConVars (the ones listed in
csgo/bspconvar_whitelist.txt
) to their default value, - execute the CFG files associated with the current values of
game_type
andgame_mode
(defined incsgo/gamemodes.txt
andcsgo/gamemodes_server.txt
), - 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 incsgo/scripts/items/items_game.txt
underskirmish_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).

map
and changelevel
commands have an optional <game mode alias>
parameter. Example: map de_dust2 deathmatch
or changelevel myCustomMap coop
. If such an alias parameter is given and if it is valid, the game will adjust game_type
and game_mode
and launch the map with the associated game mode. See the map command aliases column in the following big table.
map <mapname> default
or map <mapname> auto
. See #Map default.
+game_type <number> +game_mode <number> +map <mapname>

alias MyMapRetake "game_type 0; game_mode 0; sv_skirmish_id 12; map MyMap"
. Best used in autoexecs which allows to quickly launch and test custom maps in the right game mode.
competitive
, as this causes them to stop.

gamemode_competitive_server.cfg
(see below) to automatically set bot_quota
and bot_quota_mode
to have bots on your local server whenever you load a map in Competitive.
csgo/materials/panorama/images/icons/ui/<internal mode name>.svg
. If sv_skirmish_id
is not 0, the internal name of the skirmish mode is used. If the game doesn't have the file, one can put a custom one to that place.Game Type and Game Mode
game_type
and game_mode
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 mp_roundtime, mp_t_default_secondary, sv_deadtalk and so forth.
Apart from that, there are also other game rules or settings for which the the value of these ConVars is checked during the current match. Examples are the UI for all players, the events when weapon_c4 is planted or defused, whether item_heavyassaultsuit causes a screen tint, whether players can pick up experimental weapons such as weapon_axe, ...
The following table lists all available game modes along with their values for game_type
and game_mode
, their internal name, their aliases for the map
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.

_offline.cfg
are only executed if the server was launched via Practice with Bots from the main menu. Valve uses them to enable bots in offline competitive since bots have been disabled in competitive by default, see bot_quota.The CFG files ending with
_server.cfg
don't exist locally by default. You can create them and write commands into them that will be executed every time you locally launch the corresponding game mode.

csgo/gamemodes.txt
.
GameTypes::GetGameTypeAndModeFromAlias
defined in gametypes.cpp
.Game Mode | type | mode | Internal Name | map commandaliases |
max- players |
CFG filenames executed, if existent | Description | |
---|---|---|---|---|---|---|---|---|
![]() |
Casual (default) | 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 | 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 | 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 | 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. | |||
![]() |
Arms Race | gungameprogressive
|
armsrace, arms,
|
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 | gungametrbomb
|
demolition, demo,
|
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 his individual progress. Each player can progress one gun per round by making at least one kill. | ||
![]() |
Deathmatch | 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 | 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 | custom
|
custom
|
100 | - | Like Undefined, see below, but if sv_autoexec_mapname_cfg is not 0 (which however it its default value), the CFG file csgo/maps/cfg/<mapname>.cfg is executed with whitelist.
| |||
![]() |
Guardian | cooperative
|
guardian, guard,
|
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 | coopmission
|
coop, coopstrike,
|
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 | skirmish
|
skirmish
|
12 | - | Like Undefined, see below. ![]() | ||
![]() |
Danger Zone | 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. | ||
Map default | description |
- | default, auto
|
depends | depends | This is not a game mode itself, rather a "redirect". The game picks game_type and game_mode from the map's default_game_type and default_game_mode values, defined in either csgo/maps/<mapname>.kv , csgo/gamemodes.txt (under maps/<mapname>/ ) or csgo/gamemodes_server.txt . 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). ![]() map de_dust2 auto launches Dust II in Casual.Invoking map ar_shoots auto launches Shoots in Arms Race. | ||
Undefined | the 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.
Value | CFG file executed, if existent |
---|---|
4 | gamemode_<internal game mode name>_tmm.cfg
|
32 | gamemode_<internal game mode name>_short.cfg
|


_short
CFG is executed before a _tmm
CFG.
- If set to 32 and a map is launched in Wingman, it will cause the execution of the CFG file
gamemode_scrimcomp2v2_short.cfg
. - If set to 36 and a map is launched in Wingman, it will cause the execution of the CFG files
gamemode_scrimcomp2v2_short.cfg
andgamemode_scrimcomp2v2_tmm.cfg
, in this order.
Valve currently uses this to implement game mode variations without touching sv_skirmish_id
.
Game Mode | Flags Value | |||
---|---|---|---|---|
0 | 4 | 32 | ||
![]() |
Competitive | default | Short Match | |
![]() |
Deathmatch | default | Team vs Team | Free For All |

game_type 1; game_mode 2; sv_game_mode_flags 4; map <mapname>
, or shorter: sv_game_mode_flags 4; map <mapname> dm
.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 the intended game mode of a skirimsh CFG file (the ones in the table below) can be found in csgo/scripts/items/items_game.txt
and also in the 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.

- To launch Stab Stab Zap on
de_dust2
, entersv_skirmish_id 1
andmap de_dust2 casual
. This is equivalent tosv_skirmish_id 1; game_type 0; game_mode 0; map de_dust2
. - To launch Competitive on
de_dust2
after having played a skirmish mode, entersv_skirmish_id 0
andmap de_dust2 comp
. This is equivalent tosv_skirmish_id 0; game_type 0; game_mode 1; map de_dust2
.

csgo/cfg/
that have no associated skirmish ID. They are mentioned at the end of the following table.
csgo/scripts/items/items_game.txt
under skirmish_modes
.War Game | skirmish
|
Internal Name | Intended Game Mode | CFG filenames executed with whitelist | Description | |
---|---|---|---|---|---|---|
None (default) | - | - | - | No Skirmish Mode, i.e. the game mode defined by game_type and game_mode .
| ||
Stab Stab Zap | stabstabzap
|
Casual | op08_stab_stab_zap.cfg | Only knives, recharging taser and grenades. | ||
Free For All | dm_freeforall
|
Deathmatch | gamemode_dm_freeforall.cfg | Like Deathmatch, but teammates are enemies. ![]() | ||
![]() |
Flying Scoutsman | flyingscoutsman
|
Casual | op08_flying_scoutsman.cfg | Only scouts and knives, low gravity, high precision. | |
Trigger Discipline | triggerdiscipline
|
Casual | op08_trigger_discipline.cfg | Gunshots that a player does not hit an enemy with damage himself down to a minimum of 1 HP. | ||
Boom! Headshot! | headshots
|
Deathmatch | op08_headshots.cfg | Helmets are disabled and bodyshots deal no damage, causing a small spark effect instead of blood. | ||
Hunter-Gatherers | 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 | heavyassaultsuit
|
Casual | op08_heavy_assault_suit.cfg | Heavy armor can be purchased for $6000. ![]() buy heavyarmor while not owning a rifle. | ||
![]() |
Arms Race | armsrace
|
Arms Race | - | Equivalent to #Arms Race. | |
Demolition | demolition
|
Demolition | - | Equivalent to #Demolition. | ||
![]() |
Retakes | 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 )
}
![]() nType, nMode are arbitrary. |
In VScript, there are the specific VScript functions
ScriptGetGameType()
and ScriptGetGameMode()
which return the current integer value of game_type
and game_mode
, respectively.

sv_skirmish_id
.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 csgo/scripts/vscripts/
and by adding it to the Entity Scripts of any entity in a map. See also: VScript Fundamentals and Squirrel.
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 Co-op Strike work.

csgo/scripts/vscripts/2v2/2v2_enable.nut
provided by Valve is commonly used to shift player spawn points and activate blockers in 
