This article relates to the game "Counter-Strike: Global Offensive". Click here for more information.
This article relates to the game "Counter-Strike: Source". Click here for more information.

Creating a Classic Counter-Strike Map: Difference between revisions

From Valve Developer Community
Jump to navigation Jump to search
m (swapped templates for modern counterparts)
m (Setting bug notice hidetested=1 param on page where the bug might not need tested in param specified)
 
(11 intermediate revisions by 6 users not shown)
Line 1: Line 1:
{{lang|Creating a Classic Counter-Strike Map}}
{{LanguageBar}}
{{subpage|[[Counter-Strike: Source Level Creation]]}}
{{subpage|[[Counter-Strike: Source Level Creation]]}}
{{subpage|[[Counter-Strike: Global Offensive Level Creation]]}}
{{subpage|[[Counter-Strike: Global Offensive Level Creation]]}}{{Delisted|csgo}} {{Css topicon}} {{Csgo topicon}}
 
This page covers the '''Classic Game Modes''' of {{css|4}} and {{csgo|4}} as well as map requirements.
This page covers the '''Classic Game Modes''' of {{css|4}} and {{csgo|4}} as well as map requirements.


Line 18: Line 19:
<span style=color:#FFFFFF>'''Elimination Mission'''</span>
<span style=color:#FFFFFF>'''Elimination Mission'''</span>
* {{csgo}} Before match start, there is a warmup period with player respawns. For warmup arenas, see [[Setting up 1v1 Warmup Arenas]].
* {{csgo}} Before match start, there is a warmup period with player respawns. For warmup arenas, see [[Setting up 1v1 Warmup Arenas]].
* At the beginning of each round, the [[player]]s spawn at a spawn point of their team. Each round starts with a freezetime where players can neither move nor shoot. Its duration in seconds is set with the [[ConVar]] <code>mp_freezetime</code>.
* At the beginning of each round, the [[player]]s spawn at a spawn point of their team. Each round starts with a freezetime where players can neither move nor shoot. Its duration in seconds is set with the [[ConVar]] {{code|mp_freezetime}}.
* During the freezetime, the players can purchase weapons and equipment. After the freezetime, players can move and shoot.
* During the freezetime, the players can purchase weapons and equipment. After the freezetime, players can move and shoot.
* Round-ending objectives are elimination and timeout (draw).
* Round-ending objectives are elimination and timeout (draw).
* Players earn money by winning/losing rounds and by getting kills.
* Players earn money by winning/losing rounds and by getting kills.
|- style="text-align:center; font-size:2em"
|- style="text-align:center; font-size:2em"
|style=border:0| &darr;
|style=border:0|
|style=border:0| &darr;
|style=border:0|
|-
|-
|style="width:40%;padding-right:10em"| <!--leave Hostage Rescue a bit more than 50%-->
|style="width:40%;padding-right:10em"| <!--leave Hostage Rescue a bit more than 50%-->


<span style=color:#FFFFFF>'''Bomb Defusal'''</span> - basicly an '''Elimination Mission''', but:
<span style=color:#FFFFFF>'''Bomb Defusal'''</span> - basically an '''Elimination Mission''', but:
* Round-ending objectives are bomb explosion (Ts win), bomb defusal (CTs win), elimination and timeout (CTs win). There are no drawn rounds.
* Round-ending objectives are bomb explosion (Ts win), bomb defusal (CTs win), elimination and timeout (CTs win). There are no drawn rounds.
* Terrorists must plant a bomb ([[weapon_c4]]) at a bomb site ([[func_bomb_target]]) and wait for it to explode, Counter-Terrorists must stop them from doing so. All players are notified if a ''bomb has been planted''.
* Terrorists must plant a bomb ([[weapon_c4]]) at a bomb site ([[func_bomb_target]]) and wait for it to explode, Counter-Terrorists must stop them from doing so. All players are notified if a ''bomb has been planted''.
Line 34: Line 35:


|
|
<span style=color:#FFFFFF>'''Hostage Rescue'''</span> - basicly an '''Elimination Mission''', but:
<span style=color:#FFFFFF>'''Hostage Rescue'''</span> - basically an '''Elimination Mission''', but:
* Round-ending objectives are hostage rescue (CTs win), elimination and timeout (Ts win). There are no drawn rounds.
* Round-ending objectives are hostage rescue (CTs win), elimination and timeout (Ts win). There are no drawn rounds.
* Counter-Terrorists must reach and rescue hostages ([[hostage_entity]]) by bringing them to a Rescue Zone ([[func_hostage_rescue]]), Terrorists must stop them from doing so.
* Counter-Terrorists must reach and rescue hostages ([[hostage_entity]]) by bringing them to a Rescue Zone ([[func_hostage_rescue]]), Terrorists must stop them from doing so.
** {{css}} If there are no hostages left, CTs win if they have rescued at least 50 % of all hostages, otherwise the round continues. {{ModernBug|Whenever a hostage is rescued, the game "forgets" about hostages that have been killed before. This implies that rescuing the last remaining hostage always wins the round for CTs. Killing the last hostage always wins if the previous has been rescued. Killing the remaining ''N'' hostages wins if the previous was rescued and if at least ''N'' hostages have already been rescued.}}
** {{css}} If there are no hostages left, CTs win if they have rescued at least 50 % of all hostages, otherwise the round continues. {{bug|hidetested=1|Whenever a hostage is rescued, the game "forgets" about hostages that have been killed before. This implies that rescuing the last remaining hostage always wins the round for CTs. Killing the last hostage always wins if the previous has been rescued. Killing the remaining ''N'' hostages wins if the previous was rescued and if at least ''N'' hostages have already been rescued.}}
** {{csgo}} CTs win as soon as they have rescued one hostage.
** {{csgo}} CTs win as soon as they have rescued one hostage.
* Players also earn money by reaching and rescuing hostages.
* Players also earn money by reaching and rescuing hostages.
|}
|}


{{ModernNote|{{csgo}} These scenarios are also played in {{csgo mode|Demolition}} and {{csgo mode|Guardian}} but with certain deviations from these descriptions. ''See also: [[CS:GO Game Modes]].''}}
{{note|{{csgo}} These scenarios are also played in {{csgo mode|Demolition}} and {{csgo mode|Guardian}} but with certain deviations from these descriptions. ''See also: [[CS:GO Game Modes]].''}}


== Map Requirements ==
== Map Requirements ==
Line 48: Line 49:


==== Spawn Points ====
==== Spawn Points ====
[[image:csgobuyzones.jpg|thumb|350px|Spawn points and buy zones]]
[[File:csgobuyzones.jpg|thumb|350px|Spawn points and buy zones]]
[[Adding Point Entities|Create entities]] and change their classname to either '''info_player_terrorist''' or '''info_player_counterterrorist'''. This is where players will spawn.
[[Adding Point Entities|Create entities]] and change their classname to either '''info_player_terrorist''' or '''info_player_counterterrorist'''. This is where players will spawn.
{{main|info_player_terrorist}}
{{main|info_player_terrorist}}
Line 57: Line 58:
{{csgo}} In {{csgo mode|Casual}}, there are up to 10 players on each team.<br>
{{csgo}} In {{csgo mode|Casual}}, there are up to 10 players on each team.<br>
It is a good idea to include 16 spawn points for each team, to work with 32 player servers, otherwise 5-10 are also sufficient.
It is a good idea to include 16 spawn points for each team, to work with 32 player servers, otherwise 5-10 are also sufficient.
{{ModernWarning|If you get [[Both Teams are Full error|''The T/CT team is full.'' error]], then it is probably because you either placed no spawn points for that team, or all of them are invalid.}}
{{warning|If you get [[Both Teams are Full error|''The T/CT team is full.'' error]], then it is probably because you either placed no spawn points for that team, or all of them are invalid.}}
{{ModernTip|{{csgo}} If only some of the spawn points shall be used for say 5v5, increase the <code>Spawn Priority (int)</code> keyvalue for all other spawn points. The former are used first, latter are ''only'' used if needed.}}
{{tip|{{csgo}} If only some of the spawn points shall be used for say 5v5, increase the {{code|Spawn Priority (int)}} keyvalue for all other spawn points. The former are used first, latter are ''only'' used if needed.}}


==== Buyzones ====
==== Buyzones ====
[[Basic Construction|Create one or multiple brushes]] so that each spawn point of one team is touching one, texture them with the <code>tools/toolstrigger</code> texture, select them all and [[Creating Brush Entities|tie them to an entity]] by pressing {{key|Ctrl}}+{{key|T}}. Change the entity class to [[func_buyzone]] and set the <code>Team Number (int)</code> keyvalue (<code>TeamNum</code>) to the appropriate team. This decides which teams are able to open the buy menu while touching the previously created trigger volume(s).
[[Basic Construction|Create one or multiple brushes]] so that each spawn point of one team is touching one, texture them with the {{code|tools/toolstrigger}} texture, select them all and [[Creating Brush Entities|tie them to an entity]] by pressing {{key|Ctrl}}+{{key|T}}. Change the entity class to [[func_buyzone]] and set the {{code|Team Number (int)}} keyvalue ({{code|TeamNum}}) to the appropriate team. This decides which teams are able to open the buy menu while touching the previously created trigger volume(s).


Do this for the spawn areas of both teams.
Do this for the spawn areas of both teams.
Line 80: Line 81:
== Testing ==
== Testing ==


You can test your map by launching it with the <code>[[map (ConCommand)|map]] <mapname></code> command.
You can test your map by launching it with the {{code|[[map (console command)|map]] <mapname>}} command.
{{ModernTip|{{csgo}} All classic game modes use {{ent|game_type|0}} and <code>game_mode 0-3</code>. To quickly load a map in the right one, you can invoke one of the following:
{{tip|{{csgo}} All classic game modes use {{ent|game_type|0}} and {{code|game_mode 0-3}}. To quickly load a map in the right one, you can invoke one of the following:
* <code>map <mapname> casual</code>
* {{code|map <mapname> casual}}
* <code>map <mapname> comp</code> (or <code style{{=}}padding:0>competitive</code>)
* {{code|map <mapname> comp}} (or {{code|style=padding:0|competitive}})
* <code>map <mapname> scrimcomp2v2</code> ({{csgo mode|Wingman}})
* {{code|map <mapname> scrimcomp2v2}} ({{csgo mode|Wingman}})
* <code>map <mapname> scrimcomp5v5</code> ({{csgo mode|We}})
* {{code|map <mapname> scrimcomp5v5}} ({{csgo mode|We}})
}}
}}


Line 96: Line 97:
! Map Prefix !! Example Filename !! {{csgo}} Scenario Name in Loading Screen (English)
! Map Prefix !! Example Filename !! {{csgo}} Scenario Name in Loading Screen (English)
|-
|-
| <code>cs_</code> || <code>cs_office.bsp</code> || Hostage Scenario Mission
| {{code|cs_}} || {{code|cs_office.bsp}} || Hostage Scenario Mission
|-
|-
| <code>de_</code> || <code>de_dust2.bsp</code> || Bomb Scenario Mission
| {{code|de_}} || {{code|de_dust2.bsp}} || Bomb Scenario Mission
|-
|-
| ''none of the above'' || <code>test.bsp</code> || Elimination Scenario
| ''none of the above'' || {{code|test.bsp}} || Elimination Scenario
|}
|}


Line 107: Line 108:
{{csgo}} There are more game modes such as {{csgo mode|Wingman}}, {{csgo mode|Deathmatch}}, {{csgo mode|Retakes}}, or {{csgo mode|Guardian}} that can also be played on classic competitive maps and that only need some (map) adjustments. For a list of all game modes and more, see [[CS:GO Game Modes]].
{{csgo}} There are more game modes such as {{csgo mode|Wingman}}, {{csgo mode|Deathmatch}}, {{csgo mode|Retakes}}, or {{csgo mode|Guardian}} that can also be played on classic competitive maps and that only need some (map) adjustments. For a list of all game modes and more, see [[CS:GO Game Modes]].


== See Also ==
== See also ==
* [[How to Develop a Map That Works]]
* [[How to Develop a Map That Works]]
* [[Creating a working mini-map]]
* [[Creating a working mini-map]]
* [[Nav Mesh Editing]] - Make bots work (better) and add ''Place Names''
* [[Nav Mesh Editing]] - Make bots work (better) and add ''Place Names''
* [[mapname.txt]] - Display custom text when loading your map
* [[mapname.txt]] - Display custom text when loading your map
* {{csgo}} [[Choosing Player Models]] - Creating <code><game>/maps/<mapname>.kv</code>
* {{csgo}} [[Choosing Player Models]] - Creating {{code|<game>/maps/<mapname>.kv}}
* {{csgo}} [[CS:GO Map Publish Tool|Publishing Your Map to the Steam Workshop]]
* {{csgo}} [[CS:GO Map Publish Tool|Publishing Your Map to the Steam Workshop]]
[[Category:Counter-Strike: Global Offensive]]
[[Category:Counter-Strike: Source]]
[[Category:Level Design]]
[[Category:Level Design]]
[[Category:Tutorials]]
[[Category:Tutorials]]

Latest revision as of 07:19, 20 May 2025

English (en)Deutsch (de)Translate (Translate)
Icon-delisted.png
This page documents information about a game or software, Counter-Strike: Global Offensive Counter-Strike: Global Offensive, that is no longer available for purchase or download digitally.
It is covered here for historical and technical reference.

This page covers the Classic Game Modes of Counter-Strike: Source Counter-Strike: Source and Counter-Strike: Global Offensive Counter-Strike: Global Offensive as well as map requirements.

CS:GO/CS2 Casual Casual, CS:GO/CS2 Competitive Competitive, CS:GO/CS2 Wingman Wingman and Weapons Expert are the classic game modes in Counter-Strike: Global Offensive.

See below for instructions on how to load a map in these game modes.

Game Mode Description

The game consists of rounds with a maximum duration. The ways that a round can be won is defined by the map's scenario.

The default scenario is the Elimination Mission. The other two extend the default scenario and eliminate drawn rounds.

Elimination Mission

  • Counter-Strike: Global Offensive Before match start, there is a warmup period with player respawns. For warmup arenas, see Setting up 1v1 Warmup Arenas.
  • At the beginning of each round, the players spawn at a spawn point of their team. Each round starts with a freezetime where players can neither move nor shoot. Its duration in seconds is set with the ConVar mp_freezetime.
  • During the freezetime, the players can purchase weapons and equipment. After the freezetime, players can move and shoot.
  • Round-ending objectives are elimination and timeout (draw).
  • Players earn money by winning/losing rounds and by getting kills.

Bomb Defusal - basically an Elimination Mission, but:

  • Round-ending objectives are bomb explosion (Ts win), bomb defusal (CTs win), elimination and timeout (CTs win). There are no drawn rounds.
  • Terrorists must plant a bomb (weapon_c4) at a bomb site (func_bomb_target) and wait for it to explode, Counter-Terrorists must stop them from doing so. All players are notified if a bomb has been planted.
  • Players also earn money by planting or defusing the bomb.

Hostage Rescue - basically an Elimination Mission, but:

  • Round-ending objectives are hostage rescue (CTs win), elimination and timeout (Ts win). There are no drawn rounds.
  • Counter-Terrorists must reach and rescue hostages (hostage_entity) by bringing them to a Rescue Zone (func_hostage_rescue), Terrorists must stop them from doing so.
    • Counter-Strike: Source If there are no hostages left, CTs win if they have rescued at least 50 % of all hostages, otherwise the round continues.
      Icon-Bug.pngBug:Whenever a hostage is rescued, the game "forgets" about hostages that have been killed before. This implies that rescuing the last remaining hostage always wins the round for CTs. Killing the last hostage always wins if the previous has been rescued. Killing the remaining N hostages wins if the previous was rescued and if at least N hostages have already been rescued.
    • Counter-Strike: Global Offensive CTs win as soon as they have rescued one hostage.
  • Players also earn money by reaching and rescuing hostages.
Note.pngNote:Counter-Strike: Global Offensive These scenarios are also played in CS:GO Demolition Demolition and CS:GO Guardian Guardian but with certain deviations from these descriptions. See also: CS:GO Game Modes.

Map Requirements

A map definitely requires the following to be able to play any classic game mode.

Spawn Points

Spawn points and buy zones

Create entities and change their classname to either info_player_terrorist or info_player_counterterrorist. This is where players will spawn.

Main article:  info_player_terrorist

On official maps, the spawn points of each team are not spread among the map but close together in one area. The two spawn areas are usually placed opposite each other on the map and should not be visible to each other.

In Classic Competitive, there are only 5 players on each team. Counter-Strike: Global Offensive In CS:GO/CS2 Casual Casual, there are up to 10 players on each team.
It is a good idea to include 16 spawn points for each team, to work with 32 player servers, otherwise 5-10 are also sufficient.

Warning.pngWarning:If you get The T/CT team is full. error, then it is probably because you either placed no spawn points for that team, or all of them are invalid.
Tip.pngTip:Counter-Strike: Global Offensive If only some of the spawn points shall be used for say 5v5, increase the Spawn Priority (int) keyvalue for all other spawn points. The former are used first, latter are only used if needed.

Buyzones

Create one or multiple brushes so that each spawn point of one team is touching one, texture them with the tools/toolstrigger texture, select them all and tie them to an entity by pressing Ctrl+T. Change the entity class to func_buyzone and set the Team Number (int) keyvalue (TeamNum) to the appropriate team. This decides which teams are able to open the buy menu while touching the previously created trigger volume(s).

Do this for the spawn areas of both teams.

Map Objectives

A map already works until here, just that it is only an Elimination Mission, meaning that a round can only be won by eliminating the entire enemy team, otherwise the round is drawn. A disadvantage of this is that this encourages passive gameplay to not risk losing the round. To avoid this, there are map objectives so that there is a winning team if the time runs out; This encourages active gameplay for the other team.

You should decide for one of the following:

Competitive Aspects

  • The time that players need to reach bomb sites or hostages influences their winning chances, so the spawn point placement can severely impact map balance and can make choke points (meeting points) very engaging.
  • Random spawns may not be desirable to some players, but can work on some maps. For example, players on the Terrorist's team on de_dust2 can have a good spawn for B or for A long.
PlacementTip.gifPlacement Tip:The room of each map objective should require two entrances; Mostly, cover is set up at a bomb site so that a player can watch one entrance while being covered from the other.

Testing

You can test your map by launching it with the map <mapname> command.

Tip.pngTip:Counter-Strike: Global Offensive All classic game modes use game_type 0 and game_mode 0-3. To quickly load a map in the right one, you can invoke one of the following:
  • map <mapname> casual
  • map <mapname> comp (or competitive)
  • map <mapname> scrimcomp2v2 (CS:GO/CS2 Wingman Wingman)
  • map <mapname> scrimcomp5v5 (Weapons Expert)

Miscellaneous

Map Prefix

Counter-Strike: Source The map prefix is just a naming convention.[confirm]

Counter-Strike: Global Offensive The scenario name that is displayed in the loading screen depends only on the prefix of the map file.

Map Prefix Example Filename Counter-Strike: Global Offensive Scenario Name in Loading Screen (English)
cs_ cs_office.bsp Hostage Scenario Mission
de_ de_dust2.bsp Bomb Scenario Mission
none of the above test.bsp Elimination Scenario

Further Game Modes

Counter-Strike: Global Offensive There are more game modes such as CS:GO/CS2 Wingman Wingman, CS:GO/CS2 Deathmatch Deathmatch, CS:GO/CS2 Retakes Retakes, or CS:GO Guardian Guardian that can also be played on classic competitive maps and that only need some (map) adjustments. For a list of all game modes and more, see CS:GO Game Modes.

See also