Valve is moving away from mapgroups in CS:GO and moving towards map collections. Map collections are superior to using mapgroups because they allow map updates to be downloaded to the server automatically whenever a mapmaker updates a map; they do not require a fastdl server; and they ensures that clients and servers don't have mismatched maps (eliminating the ever-frustrating "your map differs from the server's" error). Unless you're running really obscure maps that aren't in the workshop or personal maps that you don't want to upload to the workshop, I highly recommend using workshop collections.
(If you do choose to use mapgroups instead of workshop collections, check out
this thread for information.)
Generating a web api authorization key
In order to use a workshop collection on your server, it must first have a
web api authorization key.
Creating a workshop collection
First off, go to the
CS:GO workshop (Note: You must be logged in to steam to continue.)
Find maps you like and click on them. I prefer opening them in a bunch of different tabs so as to avoid having to page back and forth all the time.
Go to the
Collections tab in the CS:GO workshop.
Click on "Create Collection".
Add maps you like to your collection from the Collections page or from the map page.
While creating your collection, you will be determining the map order. (Remember,
mapcycle.txt doesn't work in GO.) You can move maps up or down in the list by dragging and dropping.
Once you add items, on the very last page of the walkthrough for creating your collection there will be a button called "Publish". This will be towards the top of your window (even though all the "Continue" buttons were at the bottom). Don't forget to click this button.
Once you do that, you'll get a URL that looks like this:
Code:
http://steamcommunity.com/sharedfiles/filedetails/?id=125645871
The string of numbers at the end is your host workshop collection id. You must add this to your command line using the command +host_workshop_collection ############.
Specifying a start map
You can now choose to specify a startup map for the server. If left blank, the server will start on a random map from your collection. You do this by using the startup command +workshop_start_map #########. The number for each map can be found in the URL for the map in the workshop. For example, dust_se can be found at the URL
http://steamcommunity.com/sharedfiles/f ... =125498851, so 125498851 is the ##########.
Summary
You should now have a startup command line that includes these three commands:
Code:
+host_workshop_collection ############# +workshop_start_map ######### -authkey #################
Restart your server, and it will go through a process of downloading all the maps from your collection onto the server. Depending on the number of maps in your collection, this may take a while. Don't be alarmed if your server doesn't appear online for a few minutes. You should be able to see it in the console output to make sure it's working correctly.
Troubleshooting
If you are trying to use a workshop but your server always starts on de_dust no matter what you have in your collection or start line, you need to delete these files from the /csgo directory.
subscribed_collection_ids.txt
subscribed_file_ids.txt
ugc_collection_cache.txt