Changing the map on a Counter-Strike: Source (CS:S) server takes only a few seconds, and a map cycle keeps your players rotating through your favourite maps automatically. This guide covers changing the map live, setting up your map cycle, adding custom maps, and optional map voting with SourceMod.
Method 1: Change the Map Live via Console
If your server is running and you want to switch maps right now, you can do it from the console without restarting.
changelevel, a space, and the exact map name. For example, to switch to de_dust2:Counter-Strike map names start with a prefix that shows the game mode. Maps starting with de_ are bomb defusal maps and maps starting with cs_ are hostage rescue maps. A few popular official maps are:
de_dust2, de_inferno, de_nuke, de_train, de_aztec, de_cbblecs_office, cs_italyMethod 2: Set the Default Starting Map
If you want your server to always boot on a specific map after a restart, change your startup settings instead of using the console.
de_inferno.
Set Up a Map Cycle
A map cycle is a list of maps your server plays through in order. When the current map ends, the server moves on to the next one in the list.
cstrike folder, then the cfg folder.π cstrike (your Counter-Strike: Source game directory)
π cfg
mapcycle.txt to open it. If the file is not there, copy mapcycle_default.txt and rename the copy to mapcycle.txt..bsp ending. For example:Every map in your cycle must exist in the
cstrike/maps folder. If a map name has a typo, or the map has not been uploaded to the server, it will be skipped in the rotation.
The map cycle only moves on when a map ends. Make sure you have set a time limit or round limit in your
server.cfg, such as mp_timelimit or mp_maxrounds. Without one, the map never ends on its own. If you want to keep several rotations, you can point the server at a different file by setting mapcyclefile in server.cfg.
Add Custom Maps
You can add maps made by the community by uploading their .bsp file to your server.
.bsp file to your computer.cstrike folder, then the maps folder.π cstrike (your Counter-Strike: Source game directory)
π maps
.bsp file into the maps folder..bsp) to your mapcycle.txt, or switch to it right away with changelevel yourmap in the Console tab.If your map files are over 100MB, or you are uploading a lot of files at once, use SFTP instead of the browser upload. See our guide on how to connect with SFTP.
Some custom maps also come with extra files such as materials, models or sounds. If your map includes them, upload them into the matching folders inside cstrike, keeping the same folder layout as the map's download.
Faster Downloads With FastDL (Optional)
Players who do not already have your custom map have to download it before they can play. By default they download it from the game server, which can be slow. FastDL lets players download from a web server instead, which is much faster and does not use up a player slot.
cstrike folder, so a map ends up at http://yourwebsite.com/cstrike/maps/yourmap.bsp.server.cfg, using your own address. Keep the slash at the end:If a file is missing from the web server, or its capital and lowercase letters do not match the file name exactly, players fall back to the slower download from the game server. The address is limited to 127 characters.
Map Voting With SourceMod (Optional)
If you have SourceMod installed, it comes with plugins that let your players vote on the next map. They are included with SourceMod but switched off by default.
cstrike, then addons, then sourcemod, then plugins, then the disabled folder.mapchooser.smx) out of disabled and into the plugins folder.mapchooserRuns an automatic map vote near the end of each map.
rockthevoteLets players start an early vote by typing
rtv in chat. Needs mapchooser.nominationsLets players nominate maps for the vote by typing
nominate in chat. Needs mapchooser.randomcyclePicks a random next map instead of using a vote.
Use either
mapchooser or randomcycle, never both. They both try to choose the next map and will conflict with each other.
Admins can also use these commands, in the console or in chat with ! in front:
sm_map <map>Change to a map right now.
sm_setnextmap <map>Set the next map (needs
mapchooser).sm_mapvoteStart a map vote now (needs
mapchooser).Each plugin creates its own config file in cstrike/cfg/sourcemod the first time it loads. You can change settings there, such as sm_mapvote_include (how many maps appear in the vote, default 5), sm_mapvote_exclude (how many recently played maps are left out, default 5) and sm_rtv_minplayers (how many players must be online before rtv works, default 0).
Related Guides
Set mp_timelimit or mp_maxrounds so maps end and the cycle moves on.
Install SourceMod first if you want players to vote on the next map.
π οΈ Troubleshooting Map Issues
The map will not load
Check the spelling of the map name and make sure the .bsp file is in cstrike/maps.
A map is skipped in the rotation
The name in mapcycle.txt has a typo, or that map is not on the server.
The map never changes
No time limit or round limit is set. Add mp_timelimit to your server.cfg.
Players cannot join a custom map
They do not have the map yet. Set up FastDL so they can download it quickly.
No map vote appears
Type sm plugins list in the Console tab and check that mapchooser is listed, then make sure a time or round limit is set.
Still stuck?
Our team is happy to help. Open a ticket through the live chat button in the bottom-right corner of our website, or join our Discord and open a ticket there.
Join our Discord