October DealsAmazon USOctober deal check: compare before you payAmazon US: current deals, useful picks and tech finds.Check DealsSlow PC?RecommendedPC slow today? Run a repair scan before it gets worseResolve common Windows issues and optimize system performance.Scan NowOctober DealsAmazon USDeal season is back - check today's better picksAmazon US: current deals, useful picks and tech finds.See Picks×
Skip to content
World desk9 min

How to Use Steam Workshop Maps on a Garry’s Mod Server

A complete guide to installing and serving Steam Workshop maps on a Garry’s Mod dedicated server, including collections, per-ID configuration, client delivery, dependencies, and fixes.
Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

To run a Steam Workshop map on a Garry’s Mod dedicated server, install or update the server with SteamCMD, place the map in a public or unlisted Workshop collection, start the server with +host_workshop_collection COLLECTION_ID, and select the map with +map MAP_NAME. Garry’s Mod then downloads and mounts the collection on the server and makes the active Workshop map available for connected players.

Server installation and player delivery are separate jobs. A client-side resource.AddWorkshop() declaration can ask players to download an item, but it does not install that addon on the dedicated server. The procedures below keep those two parts separate and show what to check when a map loads for the server but fails for players.

As an Amazon Associate I earn from qualifying purchases.

What’s actually slowing this PC down?

Pick the symptom - the matching free tool is one click away.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

What you need before adding a Workshop map

Prepare these items before changing the launch command:

  • A Garry’s Mod dedicated-server installation that you can update with SteamCMD. The Garry’s Mod dedicated-server app uses Steam app ID 4020.
  • The Workshop item IDs for the maps you want to run.
  • A Steam Workshop collection containing those maps, or a server version that supports the per-ID file described later.
  • The map’s BSP name. The launch command uses the filename without the .bsp extension, which may differ from the map’s Workshop title.
  • Any Source-game content the map requires, such as Counter-Strike: Source or Team Fortress 2 files, legally installed on the machine and mounted through garrysmod/cfg/mount.cfg.

Subscribing to a map in your personal Garry’s Mod client is not a server-installation method. The dedicated server must be told which collection or Workshop IDs to download.

#1 Best Overall
Elebase USB to USB C Adapter for iPhone 18 Pro Max,USBC Car Charger Adapter | 4Pack Type C Female to A Male Cable Converter for Apple Duo 17 16 15 14 Plus,iWatch Watch 12 11 10,iPad 9 8 Air,Airpods 5 4
  • Read Before You Buy — No Video Output: These adapters support charging and USB 2.0 data transfer, but cannot transmit video signals. Except for standard USB webcams (which use USB data only), they are not compatible with HDMI/DisplayPort cables, video-capable USB-C hubs, or docking stations with video output.
  • Convert USB-A Ports to USB-C: Designed to connect USB-C earphones, cables, flash drives, card readers, and other USB-C accessories to standard USB-A ports. Plug-and-play with no drivers or software required.
  • Aluminum Alloy Housing: Built with a sturdy aluminum alloy shell that aids in heat dissipation and protects against daily wear and scratches. Designed to maintain a stable and secure connection.
  • Compact & Travel-Friendly: The ultra-compact design allows the adapter to stay plugged into your device without blocking adjacent ports or adding bulk, reducing wear and tear on your original USB ports.
  • 12-Month Warranty: Backed by a 12-month manufacturer warranty for peace of mind. Designed to meet strict quality control standards for reliable everyday performance.

Choose a collection or individual Workshop IDs

There are two supported ways to identify the server’s Workshop content. A collection is the normal choice when you want one maintainable list of maps. The newer per-ID file is useful when you need to manage IDs directly.

Method Operational simplicity Visibility requirement Update control Version support
+host_workshop_collection COLLECTION_ID Create or edit one Workshop collection and reference its ID in the startup command. The collection must be public or unlisted so the dedicated server can access it. Adding, removing, or reordering items is done in Steam Workshop; the server reads the collection at startup. Established collection workflow documented by Facepunch.
garrysmod/cfg/srcds_workshop_ids.txt Maintain a server-side list of Workshop IDs instead of a collection. No collection visibility setting is involved; the server reads the file. Edit the file when the server’s ID list changes. Documented by Facepunch as new in Garry’s Mod version 2026.09.22 and newer.

Use one approach for a given installation unless your server documentation explicitly supports combining them. A collection is generally easier for a rotating map set; a file of IDs gives administrators direct control over the server configuration.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Create an accessible Workshop collection

  1. In Steam, create a Garry’s Mod Workshop collection.
  2. Add every map the server may need, including maps used by rotation or vote systems.
  3. Set the collection to Public or Unlisted. A private collection cannot be fetched by the dedicated server.
  4. Copy the numeric collection ID from the collection URL. Keep the ID, not the map item IDs, for the +host_workshop_collection parameter.
  5. When you change the collection later, plan a server restart so the startup download and mount process runs again.

A collection is a distribution list, not a replacement for the map name in the launch command. The collection tells the server what to download; +map tells it which mounted BSP to load first.

Install or update the dedicated server with SteamCMD

Run SteamCMD on the machine that hosts the server and update the Garry’s Mod dedicated-server app. The essential operation is app_update 4020. A typical non-interactive invocation is:

steamcmd +login anonymous +force_install_dir ./gmodserver +app_update 4020 validate +quit

If SteamCMD is already installed, run the update whenever you deploy a new server instance or suspect that the server binaries are out of date. The validate option checks the installation while updating; it can take longer because files are verified.

Rank #2
Sale
Anker USB-C Hub, 5-in-1 USB Hub for Laptops, 4K HDMI Multiport Adapter | USB C Dongle with 90W Max Power Delivery, 3×5Gbps USB A Data Ports, for MacBook, Dell, and More (Charger Not Included)
  • 5-in-1 USB-C Hub: Experience comprehensive connectivity featuring a Power Delivery input, two USB-A 2.0 ports, a USB-A 3.0 port, and an HDMI port. (Note: The USB-C power delivery input port is only for connecting an external wall charger to power your laptop and cannot power peripheral devices.)
  • 90W Pass-Through Charging: Achieve optimal charging with 90W pass-through power to your laptop, supported by a total input of 100W, with the hub reserving 10W for operational efficiency. (Note: Wall charger not included.)
  • Quick Data Transfers: Accelerate your productivity with rapid data transfers using a high-speed 5Gbps USB 3.0 port and two 480Mbps USB 2.0 ports.
  • 4K HDMI Display: Enhance your visual experience with a hub capable of delivering 4K resolution at 30Hz in both mirror and extend modes. Please note that this hub is compatible with MacBook (macOS 12 and newer), Windows 10 and 11, ChromeOS, and laptops equipped with DP Alt Mode and Power Delivery. Note: This device is not compatible with Linux.
  • What You Get: Anker USB-C Hub (5-in-1, 4K HDMI), welcome guide, 18-month warranty, and our friendly customer service.

Run the command from the account that owns the server files, and make sure that account can write to the installation directory. On Linux, preserve the exact capitalization of directory and file names because the filesystem is case-sensitive.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Start the server with the collection and map

Add the collection parameter to the same startup command that launches srcds. Facepunch’s documented pattern is:

srcds.exe +maxplayers 20 -console +host_workshop_collection 157384458 +gamemode sandbox +map gm_construct

Replace 157384458 with your collection ID and gm_construct with the BSP name of the map you want to load. Do not append .bsp:

  • Correct: +map gm_construct
  • Incorrect: +map gm_construct.bsp

On startup, the server downloads the collection and mounts the downloaded addons. The map argument is evaluated after the server starts, so the requested BSP must be present under the name you supplied. If the Workshop item’s display title and BSP name differ, use the BSP name.

Changing maps after startup

Once the server is running, use the server console or an administrator console command:

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
Rank #3
Sale
Anker USB C Hub, 7in1 Multi-Port USB Adapter, 4K@60Hz USBC to HDMI Splitter | 85W Max PD, 2 USB 3.0 & 1 USBC Data Ports, SD/TF Card Reader, for Laptops/Mac and Other Type C Devices (Charger Not Included)
  • Sleek 7-in-1 USB-C Hub: Features an HDMI port, two USB-A 3.0 ports, and a USB-C data port, each providing 5Gbps transfer speeds. It also includes a USB-C PD input port for charging up to 100W and dual SD and TF card slots, all in a compact design.
  • Flawless 4K@60Hz Video with HDMI: Delivers exceptional clarity and smoothness with its 4K@60Hz HDMI port, making it ideal for high-definition presentations and entertainment. (Note: Only the HDMI port supports video projection; the USB-C port is for data transfer only.)
  • Double Up on Efficiency: The two USB-A 3.0 ports and a USB-C port support a fast 5Gbps data rate, significantly boosting your transfer speeds and improving productivity.
  • Fast and Reliable 85W Charging: Offers high-capacity, speedy charging for laptops up to 85W, so you spend less time tethered to an outlet and more time being productive.
  • What You Get: Anker USB-C Hub (7-in-1), welcome guide, 18-month warranty, and our friendly customer service.
changelevel MAP_NAME

For example:

changelevel gm_construct

Use the same extensionless BSP naming rule as +map. Changing levels does not change the collection; it only selects another map that is already mounted and available.

Confirm that the server downloaded and mounted the map

Watch the dedicated-server console during startup. The expected sequence is a Workshop download followed by mounting, then the requested map loading. Facepunch describes the result as: “The server will download the collection at startup and mount all the downloaded addons.”

If the map is the active map in the server’s Workshop collection, Garry’s Mod automatically prepares it for players. The console should contain this exact message:

Making workshop map available for client download

This message is the useful boundary between server installation and client delivery:

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
  • If the server cannot download or mount the collection, fix the collection ID, visibility, network access, or server installation first.
  • If the server loads the map and prints the client-download message but a player still fails to join, investigate the player’s Workshop download, map dependencies, or another content-delivery system.
  • If the server loads a different map than requested, verify the BSP name rather than the Workshop item title.

Use the per-ID configuration on supported versions

Facepunch documents garrysmod/cfg/srcds_workshop_ids.txt as a new option in Garry’s Mod version 2026.09.22 and newer. It lets a server maintain a list of Workshop IDs without putting a collection ID in the startup command.

Rank #4
Sale
UGREEN USB to USB C Adapter Combo 4-Pack, 10Gbps USB C Converter Space Gray | Data transfer & Fast charging for MacBook, iPhone 17/16/15, iPad, Samsung Galaxy, Apple Watch
  • Dual Converters, Infinite Potential:Includes 2× USB C male to USB A female adapters and 2× USB A male to USB C female adapters. Perfect for a wide range of uses—tablets with Bluetooth keyboards, expand USB ports on macbook, and more. Two different converters for all your daily needs
  • Next-Level 10Gbps & 3A Charging: No more slow 480Mbps, this usb to usb c adapter has a transfer speed of up to 10Gbps, allowing you to do more transferring in less time. This usb adapter fits both USB A and USB C charger, supporting up to 3A fast charging
  • Upgraded Exquisite Craftsmanship: With an aluminum alloy housing and metal connector, the usbc to usb adapter is extremely durable and sturdy. Rigorously tested to withstand more than 10,000 times of plugging and unplugging, ensuring long-lasting performance
  • Broad Compatible: The usb c to usb adapter widely supports all USB C/ USB A devices like laptops, tablets, cellphones, car chargers, and phone chargers. Such as compatible with MacBook Pro/Air 2023/2022, Thunderbolt 4/3 Devices,Apple MagSafe Watch 9/8/7/SE/Ultra, iPad Pro 2022/2021, Samsung Galaxy S23/S20/S10, and iPhone 17/16/15 Pro. Plug and play
  • Please Note: To reach 10Gbps speed, keep the cable under 3.3 ft. For USB A Male to USB C adapters, try flipping the USB C connector. USB C Male to USB A adapters support bidirectional 10Gbps transfer within 3.3 ft
  1. Update the dedicated server to version 2026.09.22 or later with SteamCMD and app_update 4020.
  2. Open the server’s garrysmod/cfg directory.
  3. Create or edit srcds_workshop_ids.txt using the ID-list format documented for that server version.
  4. Add the Workshop IDs for the maps or addons the server must download.
  5. Restart the server and inspect the console for download and mount messages.

Do not use this file on an older build and assume it will be read. If the server predates the documented introduction version, use the collection parameter instead.

Make clients receive the map without confusing it with server installation

When the running map is in the server’s Workshop collection, Garry’s Mod’s Workshop delivery path marks the map for client download automatically. You normally do not need to duplicate that map with a Lua resource declaration.

resource.AddWorkshop("WORKSHOP_ID") has a different purpose. It declares Workshop files for clients; it does not download and install the addon on the dedicated server. Facepunch’s API documentation explicitly warns: “This will not ‘install’ the addon on your server.” Install the item through the dedicated-server Workshop workflow first.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

There is also a shared limit of 8,192 downloadable files for the resource.Add* functions. Large packs, many maps, or extensive custom content can approach that limit. Treat the limit as a client resource-declaration constraint, not as extra capacity for server-side Workshop installation.

Fix missing textures, models, and sounds

A map can be present and playable on the server while clients see purple-and-black textures, error models, or missing sounds. Those symptoms usually mean that a dependency game is not mounted or that the dependency was not delivered to the client.

Best Value
Sale
Anker USB C Hub, 5-in-1 USBC to HDMI Splitter with 4K Display | 85W Max PD, 1 Powered USB-C 5Gbps & 2 Powered USB-A 3.0 5Gbps Data Ports, for MacBook Pro, MacBook Air, Dell and More (Black)
  • 5-in-1 Connectivity: Equipped with a 4K HDMI port, a 5 Gbps USB-C data port, two 5 Gbps USB-A ports, and a USB C 100W PD-IN port. Note: The USB C 100W PD-IN port supports only charging and does not support data transfer devices such as headphones or speakers.
  • Powerful Pass-Through Charging: Supports up to 85W pass-through charging so you can power up your laptop while you use the hub. Note: Pass-through charging requires a charger (not included). Note: To achieve full power for iPad, we recommend using a 45W wall charger.
  • Transfer Files in Seconds: Move files to and from your laptop at speeds of up to 5 Gbps via the USB-C and USB-A data ports. Note: The USB C 5Gbps Data port does not support video output.
  • HD Display: Connect to the HDMI port to stream or mirror content to an external monitor in resolutions of up to 4K@30Hz. Note: The USB-C ports do not support video output.
  • What You Get: Anker 332 USB-C Hub (5-in-1), welcome guide, our worry-free 18-month warranty, and friendly customer service.

Mount installed Source-game content

Use garrysmod/cfg/mount.cfg to mount installed Counter-Strike: Source, Team Fortress 2, or other supported Source-game folders. The game must actually be installed on the server machine; mounting a path does not create files that are not there.

Check the path character-for-character. Linux paths are case-sensitive, so a directory whose capitalization differs from the real folder will not mount. After correcting mount.cfg, restart the server and test the map again.

Free tools Windows power users keep installed

One-click scans. No signup required.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Separate server errors from client errors

  • Server cannot find the map: verify the extensionless BSP name, collection ID, collection visibility, and startup output.
  • Server loads the map, clients cannot join: confirm the Workshop client-download message and check whether the player’s Workshop download completed.
  • Map loads but assets are missing: identify the required Source game and mount its installed content; then verify that the chosen delivery method includes custom files.
  • Only Linux fails: compare path capitalization and spelling in mount.cfg and any server scripts.
Independent reader supportYour contribution helps us test, update, and keep practical guides available for everyone.Support on Ko-Fi

Choose the right content-delivery method

Facepunch distinguishes WorkshopDL, FastDL, and ServerDL. They are not interchangeable labels: each has different setup effort, transfer behavior, update handling, and suitable content.

Method Setup effort Transfer behavior Update handling Best fit
WorkshopDL Lowest when content is already published on Steam Workshop; use a collection or supported Workshop-ID configuration. Clients obtain Workshop-hosted content through Garry’s Mod’s Workshop path. Workshop item updates are picked up through the Workshop workflow; restart timing still matters for a running server. Workshop maps and addons.
FastDL Requires a separate web-accessible file mirror and server configuration. Clients download files from the configured fast-download location rather than Steam Workshop. Administrators must keep the mirror synchronized when files change. Custom files that are not distributed through Workshop, when you can operate a mirror.
ServerDL Little external infrastructure, but the game server must serve the files. Clients transfer files directly from the game server, which can consume server bandwidth and be slower for large content. Files change when the server’s local copy changes. Small or occasional custom content when a separate mirror is unnecessary.

For a Workshop-hosted map, WorkshopDL is the natural first choice. FastDL and ServerDL are alternatives for content that is not available through Workshop or for administrators who deliberately want a different distribution path.

Troubleshoot the most common failures

The collection never downloads

  1. Confirm that the startup command contains +host_workshop_collection followed by the numeric collection ID.
  2. Open the collection in Steam and verify that it is public or unlisted, not private.
  3. Check that SteamCMD installed app 4020 in the directory from which srcds is launched.
  4. Restart the server and read the first Workshop-related console messages instead of testing only with an already-running process.

The server says the map is missing

  1. Remove .bsp from the +map or changelevel value.
  2. Check the exact BSP spelling and capitalization.
  3. Make sure the map’s Workshop item is in the collection or ID list being loaded by this server instance.
  4. Confirm that the server has downloaded and mounted the item before issuing changelevel.

Players receive a missing-map error

  1. Verify that the map is the active map and belongs to the server’s downloaded Workshop set.
  2. Look for Making workshop map available for client download in the server console.
  3. Have the player restart Garry’s Mod’s Workshop download if the item is stuck or partially downloaded.
  4. Check that no separate resource configuration is exhausting the 8,192-file resource.Add* limit.

Players see missing textures or models

  1. Identify which Source game supplied the missing assets.
  2. Install that supported game content on the server and configure its path in garrysmod/cfg/mount.cfg.
  3. Correct capitalization errors, especially on Linux.
  4. Restart the server and retest with a client that has received the required Workshop content.

Recommended deployment checklist

  • Update the dedicated server with SteamCMD and app_update 4020.
  • Create a Workshop collection and set it to public or unlisted.
  • Record the collection ID separately from each map’s Workshop item ID.
  • Add +host_workshop_collection COLLECTION_ID to the startup command.
  • Set +map MAP_NAME with the extensionless BSP name.
  • Restart and confirm that the collection downloads and mounts.
  • Confirm the console’s Making workshop map available for client download message while the map is active.
  • Use changelevel MAP_NAME for later map changes.
  • Mount required Source-game content through garrysmod/cfg/mount.cfg.
  • On Garry’s Mod 2026.09.22 or newer, consider srcds_workshop_ids.txt when direct ID management suits your workflow.
  • Use resource.AddWorkshop() only for its client-download role; never rely on it to install the server addon.

Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.

Leave a Reply

Your email address will not be published. Required fields are marked *

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

More from the Wire

  1. World desk4 min
    How to Spot an AI Voice Scam Before Sending MoneyDon’t rely on how a caller sounds. Pause, call back through a known number, and verify the emergency with another trusted person before sending money.
  2. Mountain View desk4 min
    Google’s SynthID Detector: How to Check AI-Generated Images, Video and AudioGoogle’s SynthID Detector looks for an embedded watermark in supported images, video and audio. Here is what its results do—and do not—show.
  3. Redmond desk20 min
    How to create a link to File or Folder in Windows 11Windows 11 gives you several ways to point to a file or folder without moving or duplicating it. You can create a desktop shortcut,…
Recommended PC Tool
Recommended PC Tool
PC Slower Than It Used to Be?Free scan - under a minute
Outdated Drivers Are Slowing You DownFree scan - exact matches

Two free Windows tools

One Free Minute Could Fix That PC

Before you go - each of these free tools takes about a minute and tackles what quietly slows a Windows PC down.

Special offer. View Outbyte info, uninstall instructions, EULA, and Privacy Policy.