Garry's Mod

Garry's Mod

220 ratings
Как создать сервер в Garry's Mod
By ты резкий ау
В этом руководстве мы детально рассмотрим путь создания сервера от начала до конца.
2
2
   
Award
Favorite
Favorited
Unfavorite
Информация
Прошло 3 года поддержки этого руководства. Тут я описал базовую настройку сервера которую я делал сам. Я закончил играть в Garry's Mod в 2020 году из-за её смерти (серьезно, нет нормальных режимов, один DarkRP. ждем s&box). За это время могло много чего поменяться, так что за достоверность я не отвечаю.

P.S. Возможно я однажды выпущу гайд по созданию сервера в гмоде и кодингу на Lua (мечта которой уже 2 года), если выложу - приложу сюда видео.
Всем спасибо.
ВНИМАНИЕ
Прошу вас перед тем, как задать вопрос, посмотреть в комментарии. Куча однотипных вопросов на которых ответ уже есть. Я не буду отвечать на вопросы, ответ на которые уже есть.
Основы
И так, ты решил создать сервер, будь то это режим SandBox, TTT, DarkRP, Prop Hunt и т. д.
Для начала надо убедится что у тебя есть необходимые знания для создания сервера.
Во первых это умение делать скрипты на LUA[ru.wikipedia.org](основной язык программирования для Garry's Mod).
Далее у тебя должен быть хоть какой-то опыт игры в игру(прошу прощения).
И так, если у тебя есть эти знания то мы можем продолжать.
1. Идея
Любой сервер начинается с идеи, например SandBox.
Я хочу чтобы у меня был SandBox сервер на котором не будет WireMod'a, где не будет PVP, где есть возможность создания NPC, где будет разрешен дубликатор.
Идея есть, далее мне надо ее реализовать, реализовывать мы ее будем в следующем пункте.
2. Начало
Со всем разобрались, далее мы начнем делать сервер.
Сначала мы скачиваем SteamCMD
Для Windows
Для Linux (ВАЖНО! Надо прочитать инструкцию на сайте)
Для OS X
Создаем папку ВАЖНО! Папка должна находиться по пути с английским названием.
C:\сервер - Неправильно
C:\server - Правильно
И распаковываем туда архив.
И так с папками мы разобрались. Далее надо открыть файл SteamCMD.
Так, что это? Это консоль, подожди пока она скачает нужные файлы.
Когда консоль скачала нужные файлы тебе нужно ввести несколько нехитрых фраз.
login anonymous
Мы авторизовались как Анонимный пользователь
Далее вводим фразу которая установит тебе сервер.
ВАЖНО! После каждого обновления игры тебе надо вводить эту строчку.
app_update 4020 validate
Подождем пока все файлы загрузятся...
И так, файлы скачались? Тогда закрывай консоль и переходи по пути steamapps\common\GarrysModDS
Переходим с следующему пункту...
3. Папка
И так, что это за странная папка в которую мы перешли? А это папка с нашим сервером.
И так, тут расположения файлов практически такое же как и в игре которую ты скачал в стиме(а, пират?). Наши основные папки это garrysmod/lua, garrysmod/addons, garrysmod/maps, garrysmod/cfg.
Так же тебе следует найти файл bin/gmad.exe (если ты хочешь распаковать аддон из Workshop'a).
Перейдем к следующему пункту.
4 Настраиваем игру
И так, тебе надо настроить игру.
Переходим в папку garrysmod/cfg и ищем файл server.cfg. Нашли? Круто! Открывай при помощи любого текстового редактора. И копипастим эти строчки

hostname "Супер сервер" // название сервера sv_password "" // пароль от сервера rcon_password "qwerty123321" // RCON пароль сервера sv_loadingurl "" // твой экран загрузки sv_downloadurl "" // вроде FastDL sv_allowdownload 1 // не помню sv_allowupload 0 // не помню sv_allowcslua 0 // запрет/разрешение lua скриптов на клиенте. лучше держать на 0 net_maxfilesize 32 // максимальный размер net файла log on // Логи sv_logbans 0 // логи банов sv_logecho 0 // логи sv_logfile 1 // логи sv_log_onefile 0 // логи sbox_noclip 0 // Noclip sbox_godmode 0 // GodMode sbox_playershurtplayers 0 // дамаг игроков sbox_maxprops 100 // максимум пропов sbox_maxragdolls 0 // максимум рэгдоллов sbox_maxnpcs 10 // максимум NPC sbox_maxballoons 0 // максимум шариков sbox_maxeffects 5 // максимум эффектов sbox_maxdynamite 5 // максимум динамитов sbox_maxlamps 10 // максимум ламп sbox_maxthrusters 10 // максимум ускорителей sbox_maxwheels 10 // максимум колес sbox_maxhoverballs 10 // максимум ховерболлов sbox_maxvehicles 1 // максимум машин sbox_maxbuttons 5 // максимум кнопок sbox_maxemitters 0 // максимум эммитеров exec banned_user.cfg // подключаем файла банов exec banned_ip.cfg // подключаем файла банов по ип
Это все команды которые ты можешь ввести в игре в консоли. Ты можешь написать сюда любое колличество команд.
ВАЖНО! Все числа мы пишем как обычно, все слова или буквы на английсом
Мы настроили server.cfg, переходим к следующему шагу.
5. Аддоны
Сейчас мы узнаем побольше про аддоны и как их распаковывать(не учитывая то что если вы знаете LUA и вы 100% знаете про это).
Шаг первый: Заходим в папку binи ищем файл gmad.exe
Шаг второй: Перетаскиваем наш аддон на файл gmad.exe
Шаг третий: Ваш аддон переместиться в папку у которого название вашего аддона.
Шаг четвертый: Перемещаем папку с аддоном в garrysmod/addons
И так у вы установили аддон!
Далее мы перейдем к запуску сервера
6. Запуск
И так, вы все сделали, настроили и добавили далее нам нужно протестировать сервер.
В основной папке где находиться srcds.exe мы создаем текстовый документ(Важно! Назови его английскими буквами иначе могут быть ошибки.)
Копируем этот текст :
@echo off cls title srcds.com Watchdog :srcds echo (%time%) srcds started. start /wait srcds.exe -console -game garrysmod +map gm_construct +maxplayers 69 +port 27015 +gamemode sandbox goto srcds quit
Пройдемся по основым коммандам
+map название карты - Ты можешь установить свою карту
+maxplayers количество игроков - Максимальное количество игроков на твоем сервере
+port порт - Порт твоего сервера
+gamemode название режима - Твой игровой режим на сервере(sandbox, ttt, darkrp и т.п.)
Все? Теперь сохраняем это как bat файл(если ты не умеешь делать это просто даже не пытайся делать сервер).
Запускай файл, жди пока сервер загрузиться, если у тебя есть строчка "PREP OK" считай не зря старался, ждем...
(Кстате синий цвет это в основном ошибки)
Если тебе высветилась фраза "VAC secure mode is activated." твой сервер запущен, заходи в него через локальный список серверов. Все? Молодец! Ты сделал свой сервер! Дальше будут мини гайды о том о сем.
7. Как сделать автозагрузку карты и аддонов
Для того чтобы сделать карту тебе нужен .bsp файл самой карты. Где её найти? Если у тебя своя карта то после компиляции у тебя будет в твоей игровой папке(не на серверной) где garrysmod/maps .
Если ты качаешь то распаковывай её через gmad.exe .
Далее мы пихаем нашу карту в папку garrysmod/maps
Готово.

Автозагрузка аддонов и карты(я ваще хз зачем я ее сделал ну да ок)
Создаем .lua файл в garrysmod/lua/autorun/server
Пихаем туда
resource.AddWorkshop( id ) -- этот комментарий можно использовать как название аддона
Где "id" мы пишем id карты или аддона.
8. Уведомления в консоли
В этой части гайда я поясню за все(почти, если ты нашел другое то напиши об этом в комментариях) уведомления в в консоли твоего сервера.


Console initialized. - базовая хрень, говорит о том что консоль загружена

Game.dll loaded for "Garry's Mod" - Игровой бинарник загружен

Initializing Steam libraries for Workshop.. - Загрузка библиотеки для использования Workshop Steam

WS: No +host_workshop_collection or it is invalid! - В основном уведомляет о том что надо установить контент на сервер через "resource.AddWorkshop".

Adding Filesystem Addon 'путь к аддону' - Игра добавляет аддоны, и загружает autorun папку

Changing gamemode to DarkRP (darkrp) - Игра изменяет игровой режим

WARNING: Port порт:1 was unavailable - bound to port порт:2 instead - Игра говорит что порт:1 занят и он переключает его на порт:2

PREP OK - Игра говорит что все настройки настроены(господи простите меня я такой тупой)

Couldn't include file 'ссылка к файлу' (File not found) (ссылка на аддон(линия в коде)) - Игра
говорит что файл который прописан в Autorun не найден, серверу ничего не будет

[AddCSLuaFile] Couldn't find 'ссылка к файлу' (<nowhere>) - Файл к которому ты прописал AddCSLuaFile не найден, серверу ничего не будет

Executing dedicated server config file server.cfg - Игра загружает конфиг server.cfg

Initializing Steam libraries for secure Internet server - Игра загружает библиотеки для безопасного подключения(VAC(его нету в игре(просто формальность для движка)))

No account token specified; logging into anonymous game server account. (Use sv_setsteamaccount to login to a persistent account.) - Если ты заходил через login anonymous то тебе надо будет зайти в аккаунт стим(рекомендую создать отдельный профиль для этого)

Connection to Steam servers successful. - Успешное подключения к серверам Steam

Public IP is ип-адрес - твой сервер доступен для обнаружения по ип-адресс(если ты конечно открыл порты и не ввел lan 0)

Assigned anonymous gameserver Steam ID [ид-сервера в пуле серверов Steam] . - Твой сервер доступен для обнаружения через поиск серверов и зарегистрирован в пуле Steam.

VAC secure mode is activated. - VAC включен(опять же, его нету в игре)


Итог
Ты сделал сервер.
Если тебе нужна помощь то пиши в комментарии.

P. S. Простите меня, тупую шкилу за то что не написал обзор на буднях.
P. S. S. Если я вам помог, напишите комментарий в профиле(+rep, Спасибо за помощь и т. п.), спасибо!
P. S. S. S. Не добавляйте меня в друзья, я вас не буду принимать, все вопросы пишите в комментариях.
279 Comments
mihail45 Apr 4 @ 12:46pm 
Вообще кроме SandBox, TTT, DarkRP, Prop Hunt есть ещё SandBox с модом Metrostroi - самый реалистичный симулятор метро, ради метростроя стоит играть в Garry's Mod ))
hushik16 Mar 31 @ 12:50pm 
у меня в кмд странная ошибка App '4020' state is 0x40A after update job. и нет папки garrys modDS
Ms1r_kwizion Mar 21 @ 10:51pm 
У меня нету папки GarrysModDS что мне делать
Real🐿️. Feb 27 @ 5:56am 
надо на сайт своего интернета заходить и открывать порты
baccabab Feb 13 @ 1:25am 
У меня почему - то сервер появился только во вкладке "локальная сеть", а в "интернет" его нету, помоги
camogoh1243 Feb 2 @ 2:33am 
как открыть это сервер?
KirKiriah Jan 31 @ 8:49pm 
как консоль открыть, я не понимаю:missing:
KEGA Jan 29 @ 1:31am 
а как сделать себя админом?
МС по сливу игр Jan 24 @ 10:55pm 
отмена, там была смешная ситуация
МС по сливу игр Jan 24 @ 10:51pm 
а если я особенный и у меня консоль не открывается?)