Установка і настройка виділеного сервера Garry's Mod

  1. вступ
  2. Технічна частина
  3. Установка виділеного сервера
  4. Налаштування виділеного сервера Garry's Mod
  5. Міні-FAQ по серверу Garry's Mod

вступ

Кілька місяців тому я писав про встановлення та налаштування слухача сервера Garry's Mod . В даному HOWTO я детально напишу як скачати, встановити і налаштувати виділений (Dedicated) сервер Garry's Mod. Ми детально розглянемо установку адмінки, розширень і плагінів.

Увага! Стаття оновлена ​​20.07.2013. У зв'язку з переходом гри Garry's Mod на нову систему контенту, сервер тепер необхідно завантажити та оновити через SteamCMD. Оновлення раніше завантаженого через hldsupdatetool сервера до нового неможливо - зробіть резервну копію каталогів аддонів, конфігов і т.д. і завантажте сервер заново.

Технічна частина

  1. Щоб до Вас могли підключатися клієнти, Ви повинні мати «білий» IP-адреса, тобто видимий з Інтернету. Створення сервера з «сірим» IP, або з жорстким NAT'ом провайдера не має сенсу, тому що підключитися до такого серверу ніхто не зможе (крім перебувають з Вами в одній підмережі).
  2. Якщо у Вас ADSL, ви повинні прокинути порт, на якому буде встановлено сервер, по протоколу UDP (для підключення клієнтів) і TCP (для віддаленого адміністрування (rcon)) в настройках свого роутера (модему). Зазвичай кидок портів налаштовується в веб-інтерфейсі роутера в розділі NAT - Port Forwarding або NAT - Virtual Servers.
  3. На сервері головне - швидкість віддачі від Вас клієнтам, а також потужність процесора Вашого комп'ютера. На ADSL максимальна віддача може становити близько 780 Кбіт / с - 1 Мбіт / с (на ADSL з модуляцією AnnexM (такий різновид зустрічається вкрай рідко) - 3 Мбіт / с). Якщо у Вас тариф на 256 Кбіт / с, то до Вас можуть підключитися 6 клієнтів. Якщо 512 - 10-12 клієнтів, якщо 1 Мбіт і більше (ADSL) - 18 клієнтів, кабель без NAT - 23 клієнта (максимум для слухача сервера). У соотвествие з цими параметрами Ви повинні налаштувати значення змінної «Максимальне число гравців» під час створення сервера. Якщо Ваш канал або процесор не будуть витримувати таку кількість підключилися гравців, у всіх з'являться лаги.

Увага! Не створюйте сервер на велику кількість користувачів, тому що це може викликати серйозні лаги.

Установка виділеного сервера

  1. скачайте SteamCMD з офіційного сайту за посиланням: http://media.steampowered.com/installer/steamcmd.zip .
  2. Розпакуйте викачаний SteamCMD в папку за замовчуванням C: \ SteamCMD \ (в дорозі не повинно бути пробілів і російських букв).
  3. Створіть папку, в яку Ви будете встановлювати виділений сервер Garry's Mod. Рекомендуємо встановлювати в корінь диска щоб не було проблем з пробілами в шляхах. Також в дорозі не повинно бути російських букв (допустимі тільки латинські букви, цифри і символ підкреслення). Рекомендуємо: C: \ srcds \, де замість C: \ підставте літеру будь-якого диска з достатньою кількістю вільного місця (встановлений сервер Garry's Mod з плагінами вимагає мінімум 4 ГБ).
  4. Перейдіть в створену на попередньому кроці папку папку і створіть в ній файл update.cmd (можна update.bat). У цей файл впишіть наступне: @echo off C: \ SteamCMD \ steamcmd.exe + login anonymous + force_install_dir C: / srcds + app_update 4020 validate + quit pause

    Тут C: \ SteamCMD \ - шлях до встановленого SteamCMD, а c: \ srcds - каталог, в який будемо встановлювати сервер.

  5. Запускайте створений файл update.cmd на виконання. При першому запуску буде вироблено автоматичне оновлення утиліти поновлення, потім почнеться скачування і установка виділеного сервера. Автоматичне оновлення hldsupdatetool Завантаження виділеного сервера
  6. Після закінчення завантаження (залежить від швидкості Вашого Інтернет-з'єднання; сервер важить близько 900 МБ), перейдіть в каталог з: \ srcds \ orangebox \, де з: \ srcds \ - це каталог установки виділеного сервера і створіть там файл launch.cmd ( або launch.bat) з текстом: start / high srcds.exe -console -game garrysmod -port 27015 -maxplayers 12 + map gm_flatgrass

    Тут -port 27015 - порт, на якому буде «висіти» сервер (UDP / TCP), -maxplayers 12 - максимальна кількість гравців на даному сервері, + map gm_flatgrass - карта, з якою запуститься сервер. Якщо потрібно автоматично перезапускати сервер при помилках / падіннях, то замість попереднього тексту, впишіть наступний:

    @echo off cls echo Protecting srcds from crashes ... echo If you want to close srcds and this script, close the srcds window and type Y depending on your language followed by Enter. title srcds.com Watchdog: srcds echo (% time%) srcds started. start / wait srcds.exe -console -game garrysmod -port 27015 -maxplayers 12 + map gm_flatgrass echo (% time%) WARNING: srcds closed or crashed, restarting. goto srcds
  7. Запустіть сервер створеним файлом launch.cmd або launch.bat.
  8. Сервер успішно встановлений.

Налаштування виділеного сервера Garry's Mod

Сервер був встановлений, але, на жаль, поки він не придатний для використання. Потрібно його налаштувати.

  1. Встановіть джентльменський набір плагінів з svn для Garry's Mod, так, як описано в цієї статті вручну або автоматично (встановлювати плагіни Ви повинні в каталог c: \ srcds \ orangebox \ garrysmod \ addons \, де c: \ srcds \ - каталог установки виділеного сервера. Всю інформацію по установці і самі скрипти установки / оновлення плагінів Ви знайдете по цим посиланням . Обов'язково встановіть ULX, U-Lib і U-Restrict.
  2. Скачайте і розпакуйте архів з файлами конфігурації сервера в папку c: \ srcds \ orangebox \ garrysmod \ cfg \, де c: \ srcds \ - шлях установки сервера.
  3. Відкрийте файл c: \ srcds \ orangebox \ garrysmod \ cfg \ server.cfg в будь-якому текстовому редакторі і внесіть в нього правки: змініть ім'я сервера (змінна hostname), змініть rcon-пароль (rcon_password) і т.д. У файлі я все докладно описав яка змінна чим керує, що включає / вимикає, тому на цьому я зупинятися не буду тут. Увага! Насамперед задайте пароль замість !!! CHANGEME !!!, інакше Ваш сервер можуть зламати.
  4. Зробіть себе і, якщо потрібно, своїх друзів адміністраторами новоствореного сервера (обов'язково, інакше ULX-админка не дасть Вам доступу). Щоб зробити себе адміном, потрібно дізнатися Ваш особистий SteamID і вибрати автоматичний або ручний спосіб:
    1. Автоматичний спосіб. Запустіть сервер (ULX і U-Lib повинні бути встановлені), запустіть клієнт Garry's Mod і зайдіть на свій сервер за допомогою команди connect ВАШ_ВНЕШНІЙ_IP: ПОРТ. Поверніть Garry's Mod і перейдіть в консоль сервера, введіть в консолі сервера ulx adduser ВАШ_НІК superadmin

      де ВАШ_НІК - це Ваш ник в Steam (при наявності прогалин в ніку лапки обов'язкові; допускаються тільки латинські букви, цифри і знак підкреслення). ULX автоматично пропише цього користувача в адміни сервера.

    2. Ручний спосіб. У будь-якому текстовому редакторі відкрийте файл з: \ srcds \ orangebox \ garrysmod \ settings \ users.txt. У цей файл прописуються адміністратори сервера по SteamID. Знайдіть в цьому файлі розділ "superadmin" і після рядка // "garry" "STEAM_0: 1: 7099

      впишіть свою у вигляді

      "ВАШ_НІК" "STEAM_0: 1: XXXXXXXXX"

      де ВАШ_НІК - це нік адміна, який буде в списку виведення адмінів сервера (тут дозволено вводити тільки латинські букви і цифри без пробілів; лапки обов'язкові), а STEAM_0: 1: XXXXXXXXX - це Ваш SteamID (замініть на справжній, природно 😉), отриманий на 3 кроці.

  5. Обов'язково встановіть плагін Simple Prop Protection з SVN звідси: http://simplepropprotection.googlecode.com/svn/trunk/ (Офіційний репозиторій). Цей плагін не дозволить користувачам заважати іншим / пошкоджувати / видаляти їх споруди і т.д.
  6. Пробуйте запустити сервер і зайти на нього за допомогою клієнта Garry's Mod. Викличте админку командою ulx admin. Якщо все пройде успішно, сервер був успішно налаштований і готовий до прийому гравців.

Міні-FAQ по серверу Garry's Mod

Q: Як заборонити видавати гравцям зброю (давати тільки Physgun, гравію-ган, Тулган і скріншотган)?

A: Встановіть плагін U-Restrict (якщо Ви встановлювали за допомогою наших скриптів, то він вже встановлений і автоматично активований).

Q: Як змінити повідомлення, яке з'являється при заході на створений сервер Garry's Mod?

A: Відредагуйте файл з: \ srcds \ orangebox \ garrysmod \ data \ ulx \ motd.txt. Це звичайний HTML-файл.

Q: Куди пишуться скорочені логи адмінки?

A: Список адмінки ULX пишуться в с: \ srcds \ orangebox \ garrysmod \ data \ ulx_logs \ ДАТА.txt, де ДАТА - сьогоднішня дата в форматі ММ-ДД-ГГ.

Q: Мені потрібно видавати гравцям при підключенні до сервера певний зброю. Як це зробити?

A: Як вже писалося вище, потрібен плагін U-Restrict для адмінки (якщо Ви встановлювали набір плагінів за допомогою наших скриптів, він вже встановлений). Отже, щоб видати потрібну зброю, відкрийте файл з: \ srcds \ orangebox \ garrysmod \ data \ URestrict \ loadouts.txt в будь-якому текстовому редакторі і в розділі loadout після gmod_tool введіть повне ім'я потрібного зброї, наприклад weapon_smg. Ця зброя буде автоматично видано гравцеві після підключення до сервера, а також після його респауна.

Q: Як мені додати контент інших Source-ігор для використання на моєму сервері?

A: Щоб контент інших ігор став доступний в Garry's Mod всім граючим, його необхідно встановити через SteamCMD. Наведу приклад для контенту CSS і TF2:

  1. Викачуємо в окрему папку сервер Counter-Strike: Source або будь-який інший ігри, підтримуваної Garry's Mod, за допомогою такої команди (папку, в яку будемо завантажувати, повинна бути створена заздалегідь, інакше установка і скачування не почнеться). Команда для скачування сервера Counter-Strike: Source: C: \ SteamCMD \ steamcmd.exe + login anonymous + force_install_dir C: / cssserver + app_update 232330 validate + quit

    Команда для скачування сервера Team Fortress 2:

    C: \ SteamCMD \ steamcmd.exe + login anonymous + force_install_dir C: / tf2server + app_update 232250 validate + quit
  2. Після повного завершення, заходимо в папку завантаженого сервера і переміщаємо папку «cstrike» (для Counter-Strike: Source) або «tf«, «dods«, «hl2mp» (для інших ігор) в папку C: \ srcds \ orangebox \ ( не "garrysmod»), де C: \ srcds \ - папка установки сервера Garry's Mod.
  3. Відкриваємо файл \ garrysmod \ cfg \ mount.cfg в текстовому редакторі і вносимо в нього правки. Приклад для TF2 і CSS: "mountcfg" { "cstrike" "C: \ srcds \ orangebox \ cstrike" "tf" "C: \ srcds \ orangebox \ tf"}
  4. Перезапускаємо сервер Garry's Mod. Контент встановлений і доступний всім граючим.
  5. Папку з скачаним сервером іншої гри, з якої ми взяли контент, можна видалити.
Q: Як змінити повідомлення, яке з'являється при заході на створений сервер Garry's Mod?
Q: Куди пишуться скорочені логи адмінки?
Як це зробити?
Q: Як мені додати контент інших Source-ігор для використання на моєму сервері?