Последняя проверка: 27 сентября 2026. Dedicated-сервер загружает аддоны Workshop для Garry’s Mod через коллекцию Workshop. Начиная с Garry’s Mod 2026.09.22 он может альтернативно брать отдельные ID из cfg/srcds_workshop_ids.txt. resource.AddWorkshop() раздаёт клиентам нужные файлы, но сам не устанавливает аддоны на сервер. Актуальное руководство Facepunch описывает оба серверных способа.

Требования

Тебе нужен доступ к настройке коллекции Workshop на твоём сервере Garry’s Mod и публичная или скрытая (не в списке) коллекция. В панели game-serverhosting для этого предусмотрена переменная WORKSHOP_ID. Проверяй зависимости аддонов и тестируй изменения небольшими группами. Steam Web API Key актуальное руководство Facepunch для этого процесса не требует в обязательном порядке.

Создание коллекции Workshop

  1. Перейди в Steam Workshop
  2. Создай новую коллекцию
  3. Добавь все нужные аддоны
  4. Скопируй ID коллекции

ID коллекции указан в URL коллекции Steam. Копируй только числовой ID, а не весь URL. Убедись, что коллекция публичная или скрытая; приватные коллекции сервер, по данным Facepunch, получить не может. Если аддон удалён, сделан приватным или обновлён автором, это может повлиять на запуск сервера или загрузки клиентов. Поэтому после крупных изменений всегда проверяй консоль сервера.

Загрузка коллекции на сервере

В панели game-serverhosting в стартовых переменных впиши числовой ID коллекции в поле Коллекция Workshop (WORKSHOP_ID) и перезапусти сервер. На серверах, которыми ты управляешь сам, соответствующий параметр запуска выглядит так:

+host_workshop_collection <collection_id>
ID коллекции Workshop в панели game-serverhosting: коллекция Steam Workshop указывается по ID прямо на сервере Garry's Mod
ID коллекции Workshop в панели game-serverhosting: коллекция Steam Workshop указывается по ID прямо на сервере Garry's Mod

Проверь консоль сервера на сообщения Workshop. При ошибке сначала проверь ID, видимость и доступность аддонов. Обязательный шаг с -authkey не входит в актуальный процесс Facepunch.

Отдельные Workshop-ID вместо коллекции

Начиная с Garry’s Mod 2026.09.22 или новее ты можешь дополнительно или вместо коллекции создать файл cfg/srcds_workshop_ids.txt. Формат описан в документации по Dedicated-серверу. Перед использованием этого способа проверь установленную версию сервера. Файл содержит ID отдельных аддонов, а не ID коллекции. Используй документированный формат KeyValues, а не JSON и не простой список строк:

"my_workshop_addons"
{
  "1" { "wsid" "ТВОЙ_ID_АДДОНА" }
}

Замени ТВОЙ_ID_АДДОНА на настоящий числовой ID аддона; для дополнительных записей используй собственные ключи, например "2".

Игроки загружают нужный контент

resource.AddWorkshop() инициирует загрузку для клиентов. Он не устанавливает аддон на сервер. Используй его целенаправленно для дополнительных моделей, материалов или звуков:

-- garrysmod/lua/autorun/server/workshop.lua
resource.AddWorkshop("ТВОЙ_ID_АДДОНА")

Замени ТВОЙ_ID_АДДОНА на числовой Workshop-ID доступного аддона с клиентским контентом. Чисто Lua-аддонам эта запись не нужна. Текущая карта и поддерживающий Workshop игровой режим из коллекции сервера автоматически помечаются для клиентов. Изучи документацию Facepunch по resource.AddWorkshop и протестируй вход без локальной подписки на аддон.

Популярные категории аддонов

Категория Примеры
Карты ttt_minecraft, ph_office
Оружие M9K Weapons, TFA Base
Модели игроков PM + Playermodel Selector
Инструменты Wiremod, Precision Tool
HUD DarkRP HUD, TTT HUD

Эти категории — типичные примеры, а не рекомендация для любой конфигурации. У серверов DarkRP, TTT, Prop Hunt и Sandbox разные требования. Главное, чтобы аддоны подходили к игровому режиму, активно поддерживались и не дублировали функции. Две базы оружия, несколько HUD или несколько админ-инструментов могут мешать друг другу.

Если ты ведёшь серверы и для других игр с модами, пригодятся принципы из руководства по Workshop для Project Zomboid и руководства по установке модов ARK: сначала выясни зависимости, затем аккуратно впиши ID, после этого проверь логи и протестируй клиентом.

Проверка результата

После каждого крупного изменения перезапускай сервер и проверяй три момента. Первое: в консоли не должно быть ошибок Workshop по коллекции или отдельным ID. Второе: нужные аддоны должны быть доступны на стороне сервера, например карты в списке карт или инструменты в подходящем игровом режиме. Третье: тестовый клиент без подписок должен загрузить необходимый контент. Затем проверь и саму функцию аддона, и следующую смену карты; наличие файлов ещё не доказывает безошибочное выполнение Lua.

Тестируй по возможности клиентом, который ещё не подписан на аддоны локально. Иначе легко не заметить, что автоматическая загрузка для новых игроков не работает. На публичных серверах также стоит коротко упомянуть в описании сервера, если нужно загружать очень большой объём контента.

Устранение неполадок

  • Аддон не загружается на сервере: Проверь ID коллекции, видимость, страницу Workshop и консоль запуска. Для файла с отдельными ID нужна версия 2026.09.22 или новее.
  • Игроки видят отсутствующие текстуры: Проверь зависимости аддона и раздачу клиентам. После июльского обновления 2025 года большая часть контента CS:S включена в игру; карты и некоторые другие файлы исключены. Не загружай в Workshop чужие retail-пакеты контента: это запрещают правила Workshop от Facepunch.
  • Загрузка идёт долго: Сначала измерь, какие пакеты реально запрашиваются. Убери неиспользуемые карты, дублирующиеся модели и старые пакеты из коллекции и из дополнительного списка resource.AddWorkshop(); оставшаяся запись в autorun всё равно может запускать загрузку у клиента.

FAQ

Нужна ли мне всегда коллекция Workshop?

Нет. Коллекция удобна для нескольких аддонов. Начиная с версии 2026.09.22 сервер также может загружать отдельные ID из cfg/srcds_workshop_ids.txt. resource.AddWorkshop() управляет только загрузкой для клиентов.

В чём разница между ID коллекции и Workshop-ID?

ID коллекции обозначает набор и вводится в переменную панели WORKSHOP_ID или в +host_workshop_collection. Отдельные ID аддонов можно указывать в cfg/srcds_workshop_ids.txt начиная с версии 2026.09.22. resource.AddWorkshop() тоже использует ID одного аддона, но только для клиентских файлов.

Почему игроки видят отсутствующие текстуры?

Проверь затронутый аддон, зависимости и клиентскую загрузку. Большую часть ресурсов CS:S Garry’s Mod включает в себя с июля 2025; карты и некоторые файлы исключены. Универсальный «CSS Content Pack» не является надёжным способом исправления.

Нужно ли перезапускать сервер после каждого изменения аддонов?

После изменений параметров запуска, коллекции Workshop или серверных Lua-файлов стоит перезапускать сервер. Только так можно надёжно проверить, правильно ли сервер загружает коллекцию и регистрирует клиентские ресурсы.

Какого размера должна быть коллекция?

Как можно меньше и настолько большой, насколько необходимо. Убери аддоны, которые твой игровой режим активно не использует. Это упрощает поиск ошибок, сохраняет загрузки приемлемыми и делает изменения в работающем режиме более управляемыми.