Створення та налагодження source dedicated server - counter-strike source - гри

Нарешті у мене дійшли руки до створення статті про підйом сервера для CSS на домашньому ПК. Варто так само сказати, що сервер буде без будь-яких модифікацій, з простою адмінкой і стандартними картами. Отже перейдемо відразу до справи.

Ставимо Source Dedicated Server на Windows ОС

[*] Нашим другим кроком буде скачування і установка програми hldsupdatetool в папку d: \ Server. За допомогою неї ви зможете встановити сервер не тільки для CSS, але і для будь-яких інших гри Valve.

[*] Після установки необхідного програмного забезпечення створюємо текстовий документ в папці з майбутнім сервером, і вписуємо в ньому наступні:

start / wait d: \ Server \ hldsupdatetool.exe

start / wait d: \ Server \ hldsupdatetool.exe -command update -game "Counter-Strike Source" -dir.

Зберігаємо файл, і міняємо дозвіл файлу з * .txt на * .bat

[*] Запускаємо наш файл. Робота нашого скрипта буде йти в 3 кроки.

1. Запустить hldsupdatetool і оновить його до останньої версії

2. Викачати з сервера Valve Source Dedicated Server (близько 1 Гб).

3. Після закінчення завантаження наш скрипт завершить свою роботу.

Ставимо Source Dedicated Server на Linux ОС

Процес установки сервера схожий з Windows ОС. Все нижче наведений команди вводяться в термінал, в дужках докладний опис кожної команди.

[*] Mkdir Server (Створюємо в домашньому каталозі папку Server)

[*] Cd server (Переходимо в цю папку)

[*] Chmod + x hldsupdatetool.bin (Встановлюємо права на програмне забезпечення)

[*] ./hldsupdatetool.bin (Встановлюємо програму. Вам буде продемонстровано ліцензінное угоду, введіть yes, щоб погодитися).

[*] ./steam (І запускаємо її. Hldsupdatetool під Linux називається steam)

налаштовуємо сервер

Перед запуском сервера рекомендується його налаштувати на свій розсуд, для цього:

[*] Створимо файл server.cfg в папці (в нашому випадку) d: \ Server \ cstrike \ cfg \

[*] І будемо вводити туди консольні команди. Список всіх команд наведено нижче.

// вести лог сервера

// записувати в лог бани

// показувати інформацію з логів сервера в консоль (сервера)

// записувати логи сервера в файл

// записувати в лог пошкодження від: 0 - вимкнено; 1 - противників; 2 - своїх; 3 - і від супротивників і від своїх.

2. Управління ботами

// дозволити ботам використовувати гранати

// дозволити ботам використовувати кулемети

// дозволити ботам використовувати пістолети

// дозволити ботам використовувати гвинтівки

// дозволити ботам використовувати дробовики

// дозволити ботам використовувати снайперські гвинтівки

// дозволити ботам використовувати міні-кулемети

3. Управління гравцями

// дозволити NPC на сервері

// дозволити гравцям після смерті спостерігати за іншими гравцями

// дозволити автокік за вбивство гравців своєї команди?

// дозволити автоматичну балансування команд

// час покупки в хвилинах

// час таймера бомби

// час, протягом якого гравці зможуть розмовляти між собою після закінчення поточної карти

// Кількість дозволених декалей (спреї, плями крові, кульові отвори)

// після смерті екран стає чорним, не даючи гравцеві дивитися за іншими гравцями в режимі спектатора

// шкоди від падіння

// дозволити перемикання камер в режимі спектатора

// команда для Half-Life 2: Deathmatch. Гравець з'являється відразу після смерті

// максимальна кількість фрагов, при досягненні якого певним гравцем карта зміниться на наступну

// початковий відлік часу на початку кожного раунду (для покупки), в секундах

// можливість атакувати своїх

// Кіка терориста при вбивстві заданого ліміту заручників

// максимальна кількість гравців команди 1 яке може перевищувати кількість гравців в команді 2

// максимальна кількість раундів на одній карті

// контролює інформацію яку гравець бачити на панелі статусу: 0 все імена; 1 тільки імена гравців своєї команди; 2 без імен

// Кіка гравців які вбивають членів своєї команди протягом # секунд після перезапуску раунду

// довжина раунду в хвилинах

// кількість початкових грошей у гравців

// команда для Half-Life 2: Deathmatch. Гра по командам (Альянс і повстанці)

// обмеження за часом на карту, в хвилинах

// в наступному раунді вбити того, хто вбив гравця своєї команди

// команда для Half-Life 2: Deathmatch. Після підбирання зброї воно залишається на місці. (Відноситься тільки до зброї заздалегідь розташованому на мапі розробниками)

// максимальна кількість перемог, після якої відбудеться зміна карти

4. Управління сервером

// визначає прискорення гравця, коли він знаходиться в повітрі (наприклад падає)

// дозволити завантаження з сервера (наприклад карт)

// дозволити завантаження на сервер (наприклад спреїв)

// дозволити всім чути переговори один одного по мікрофону, незалежно від команди

// дозволити ігрові чіти на сервері (приклад: noclip)

// наказує чи сервер послідовність файлу для критичних файлів

// дозволити підтримку старого стилю (Half-life 1) серверних запитів

// використовувати звук кроків при пересуванні гравця

// коефіцієнт тертя в грі

// гравітація в грі

// максимальна кількість байт в секунду, яке може бути передано сервером (0 == без обмеження)

// максимальна швидкість гравця

// максимальна лагокомпенсація, в секунду

// максимальна кількість оновлень (кількість пакетів) яке дозволено на сервері

// мінімум байт в секунду, яке може бути передано сервером (0 == без обмеження)

// мінімум оновлень (кількість пакетів) яке дозволено на сервері

// дозволити ставити паузу під час гри

// кількість хвилин на яке баниться гравець намагався підібрати rcon-пароль до сервера

// максимальна кількість спроб при наборі rcon-пароля, після закінчення яких гравець буде забанений

// кількість спроб при наборі rcon-пароля під час заданий sv_rcon_minfailuretime, після закінчення яких гравець буде забанений

// кількість секунд для визначення невірної rcon-аутенфікаціі

// прискорення при пересування в режимі spectator

// гравець в режимі spectator може пролітати через стіни і об'єкти

// швидкість пересування в режимі spectator

// збирати статистику використання процесора

// довжина кроку в юнитах

// мінімальна швидкість зупинки на поверхні

// якщо сервер не отримує відгуку від клієнта протягом # секунд, клієнт відключається від сервера

// дозволити використання мікрофона

[*] Для додавання нових карт на сервер потрібно:

1. Перемістити файл з картою в папку d: \ Server \ cstrike \ maps

2. Прописати назва карти (файлу) в текстові документи d: \ Server \ cstrike \ mapcycle.txt і d: \ Server \ cstrike \ maplist.txt

[*] Так же ви можете змінити вікно вітання при підключенні до вашого сервера шляхом редагування файлу d: \ Server \ cstrike \ motd.txt (УВАГА: Необхідні знання HTML).

запуск сервер

[*] Для запуску сервера, створимо в папці d: \ Server текстовий файл Start.txt і відкриємо його.

[*] В ньому напишемо наступні:

echo (.ate%% time%) Thx for Gamer.ru by Draco

echo (.ate%% time%) Checking for updates

start / wait d: \ Server \ update.bat

echo (.ate%% time%) Starting SRCDS

start / wait d: \ Server \ srcds.exe -console -game cstrike + maxplayers 16 + map de_dust

echo (.ate%% time%) Restarting SRCDS

Збережемо і Изме ​​дозвіл з * .txt на * .bat

[*] Тепер для запуску сервера достатньо лише запустити наш файл Start.bat.

Хочеться ще окремо розглянути рядок start / wait d: \ Server \ srcds.exe -console -game cstrike -tickrate 100 + maxplayers 16 + map de_dust з нашого файлу запуску.

Ми бачимо, що запускається файл srcds.exe запускається з певними ключами, а саме:

-console - запускає сервер в командному режимі. Без цього параметра сервер запуститься з графічним інтерфейсом (як через Steam) і потребують ручного натискання кнопки для дійсного запуску

-game - вказує гру, для якої запускається сервер.

+maxplayers - вказує максимальну кількість гравців на сервері

+map - вказує стартову карту для сервера.

-tickrate - вказує тікрейт сервера. За замовчуванням CSS запускається з тікрейтом 33.

Повний список параметрів доступний тут