Garry's Mod на сервере: частые ошибки и решения
Garry's Mod ставится просто, но потом всплывают типичные проблемы движка Source: сервер не в списке без токена, ошибки текстур, аддоны Workshop не грузятся, тяжёлый DarkRP лагает. Разберём частые ошибки сервера Garry's Mod по симптому, причине и решению с командами. Большинство упираются в GSLT-токен, контент из других игр Source и настройку Workshop-коллекции.
Содержание
Обсудить статью, задать вопрос или начать новую тему
Есть вопрос по этой статье, идея для обсуждения или просто хотите поделиться опытом? Сообщество MAATRIX ждёт. Для общения, пожалуйста, зарегистрируйтесь в нашем личном кабинете.
Перейти в сообщество →Сервер запущен, но его нет в списке
Классическая проблема: сервер работает, консоль показывает загруженную карту, но в браузере серверов Garry's Mod его нет. В большинстве случаев виноват отсутствующий или неверный GSLT-токен. Без валидного Game Server Login Token сервер не регистрируется в мастер-серверах Valve и остаётся доступен только по прямому подключению.
Проверьте, что токен передан при запуске.
grep sv_setsteamaccount /etc/systemd/system/gmod.service
Если параметр на месте, убедитесь, что токен действителен и не отозван: Valve блокирует токены при нарушениях или утечке. Сгенерируйте новый в кабинете Steam для App-ID 4020 и подставьте его. Проверьте прямое подключение по IP: если по адресу зайти можно, а в списке сервера нет — виноват именно токен. Вторая возможная причина невидимости — закрытый порт запросов, но тогда обычно и прямое подключение не работает.
Текстуры и модели отображаются ошибками
Игроки видят вместо текстур клетчатые розово-чёрные ошибки, а модели превращаются в красные буквы ERROR. Это фирменная проблема Source-режимов: многие карты и аддоны рассчитаны на контент других игр, чаще всего Counter-Strike Source, которого нет на чистом сервере Garry's Mod. Сервер сам по себе запускается, но нужный контент отсутствует.
Решение — смонтировать контент нужной игры. Один путь — установить через SteamCMD файлы контента Counter-Strike Source и прописать их монтирование в конфиге mount.cfg сервера. Другой, более простой для игроков путь — раздавать нужный контент через Workshop-коллекцию, чтобы клиенты скачивали его сами. Для DarkRP и многих популярных карт контент CS:S фактически обязателен, поэтому если вы поднимаете такой режим, заложите это в план сразу. Для чистого Sandbox на стандартных картах вроде gm_construct дополнительный контент не нужен.
Нужен сервер под эту задачу?
Разверните VPS MAATRIX за пару минут: NVMe, AMD EPYC, root-доступ, локации UK, США и РФ. Оплата картой РФ и по СБП.
Арендовать VPSАддоны из Workshop не загружаются
Вы собрали коллекцию аддонов, но игроки заходят на пустой сервер без нужных режимов и карт. Причин несколько. Первая и самая частая — не задан ключ Steam Web API: для автоматической раздачи Workshop-коллекции серверу нужен этот ключ, без него механизм host_workshop_collection не работает. Получите ключ на сайте Steam и передайте серверу.
Проверьте параметры запуска, отвечающие за Workshop.
grep -E 'workshop|steamapikey' /home/gmod/server/garrysmod/cfg/*.cfg
Вторая причина — в коллекции есть удалённые или скрытые аддоны, которые ломают загрузку остальных. Проверьте, что все элементы коллекции доступны. Третья — аддон-режим требует, чтобы игроки его скачали, но у них отключена автозагрузка контента с серверов в настройках клиента. Это уже на стороне игрока. Начните с малого: соберите минимальную рабочую коллекцию, убедитесь, что она грузится, и расширяйте постепенно — так проще найти проблемный аддон.
Тяжёлый DarkRP лагает при онлайне
DarkRP — самый популярный и самый прожорливый режим, и лаги на нём частая жалоба. Игроки строят базы из множества пропов, работает экономика, крутятся десятки аддонов — всё это нагружает сервер. Проверьте нагрузку на процессор во время пикового онлайна.
top
Если одно ядро упирается в потолок — сервер не тянет, и причина в движке Source, который в основном использует одно ядро. Помогает более быстрый процессор, а не большее их число. Снизить нагрузку можно и настройками: ограничьте максимум пропов на игрока, уберите самые тяжёлые аддоны, задайте разумный лимит сущностей. Каждый лишний аддон это дополнительная работа на каждом тике сервера.
Отдельно стоит проверить конкретные аддоны: один плохо написанный аддон, делающий тяжёлую работу на каждом тике сервера, способен уронить производительность сильнее, чем десяток нормальных. В Garry's Mod есть инструменты профилирования вроде встроенных консольных команд, показывающих, сколько времени занимает выполнение хуков разных аддонов, — по ним видно, какой из них съедает ресурсы. Отключайте подозрительные аддоны по одному и следите, возвращается ли производительность.
Если после оптимизации сервер всё равно лагает при вашем онлайне, значит, DarkRP перерос текущий VPS. Это тяжёлый режим, и честнее взять машину с более быстрым процессором. У MAATRIX можно подобрать VPS с высокочастотным CPU в локации с низким пингом до игроков и оплатить из России картой, СБП или криптой, перенеся конфиги и данные режима простым копированием.
Игроки не подключаются по IP
Сервер запущен и виден локально, но снаружи никто не заходит — таймаут при подключении. Классическая причина — закрытый порт. Garry's Mod использует порт 27015 по TCP и UDP, причём игровой трафик идёт по UDP.
ufw allow 27015
ufw status
ss -ulnp | grep 27015
Команда ufw allow 27015 без протокола открывает и TCP, и UDP — это то, что нужно. Если открыть только TCP, сервер будет виден, но играть не получится, потому что игровой поток по UDP не пройдёт. Команда ss с ключом u покажет, слушает ли сервер UDP-порт. Проверьте также сетевой фильтр провайдера в панели VPS. Если вы меняли порт при запуске, открывайте в фаерволе именно новый порт, сверив его с systemd-юнитом.
Сервер не поднимается после перезагрузки
После ребута VPS сервер Garry's Mod не стартовал сам. Проверьте состояние сервиса и журнал.
systemctl status gmod
journalctl -u gmod -n 40
Частые причины падения при старте — неверный рабочий каталог или путь к srcds_run, ошибка в строке запуска, устаревший GSLT-токен. Журнал journalctl укажет на проблему. Если сервер поднимается, но снова невидим, дело в токене. Ещё одна тонкость — после обновления Garry's Mod серверные файлы нужно обновлять командой SteamCMD с app_update 4020, иначе возможны сбои совместимости. После правки юнита выполните daemon-reload и включите автозапуск через systemctl enable, чтобы сервер стабильно стартовал при каждой загрузке машины.
Нужен сервер под эту задачу?
Разверните VPS MAATRIX за пару минут: NVMe, AMD EPYC, root-доступ, локации UK, США и РФ. Оплата картой РФ и по СБП.
Арендовать VPSОбсудить статью, задать вопрос или начать новую тему
Есть вопрос по этой статье, идея для обсуждения или просто хотите поделиться опытом? Сообщество MAATRIX ждёт. Для общения, пожалуйста, зарегистрируйтесь в нашем личном кабинете.
Перейти в сообщество →Частые вопросы
Сервер работает, но его нет в списке — почему?
Почти всегда не задан или отозван GSLT-токен. Без валидного токена сервер виден только по прямому IP. Проверьте sv_setsteamaccount и при необходимости сгенерируйте новый токен.
Почему текстуры отображаются ошибками ERROR?
Карта или аддон требуют контент другой игры Source, чаще Counter-Strike Source. Смонтируйте этот контент через mount.cfg или раздайте через Workshop-коллекцию.
Аддоны из Workshop не грузятся у игроков — что не так?
Чаще всего не задан ключ Steam Web API, без которого host_workshop_collection не работает. Также проверьте, что в коллекции нет удалённых аддонов, ломающих загрузку.
DarkRP лагает при онлайне — как исправить?
Движок Source упирается в одно ядро. Ограничьте пропы и лишние аддоны, а если не помогает — нужен VPS с более быстрым процессором. DarkRP тяжёлый режим и требует хорошего CPU.
Нужны сами нейросети для контента?
Генерируйте изображения, видео и озвучку нейросетями на falapi.io — десятки моделей в одном окне. Оплата картой РФ и по СБП.