Подробный гайд: Установка и настройка сервера Hide and Seek (HNS) для CS:GO
1. Требования к серверу
| Компонент | Рекомендуемое значение |
|---|---|
| ОС | Ubuntu 22.04 LTS / Debian 11+ (Windows возможен, но Linux стабильнее) |
| CPU | 2+ ядра, 3.0+ GHz (HNS требует высокой частоты) |
| RAM | 2–4 ГБ (зависит от количества слотов и плагинов) |
| Диск | 15–20 ГБ SSD |
| Сеть | Статический IPv4, открытые UDP/TCP порты |
| Слоты | 16–32 (оптимально для HNS) |
2. Установка базового сервера
2.1 Подготовка системы
sudo apt update && sudo apt upgrade -y
sudo apt install -y wget curl tar screen lib32gcc1 lib32stdc++6
sudo useradd -m -s /bin/bash steam
sudo su - steam
2.2 Установка SteamCMD
mkdir ~/steamcmd && cd ~/steamcmd
wget https://steamcdn-a.akamaihd.net/client/installer/steamcmd_linux.tar.gz
tar -xvzf steamcmd_linux.tar.gz
2.3 Загрузка CS:GO Dedicated Server
./steamcmd.sh +login anonymous +force_install_dir ~/csgo_server +app_update 740 validate +quit
После завершения сервер будет в
~/csgo_server/csgo/
3. Базовая настройка сервера
3.1 Создание server.cfg
mkdir -p ~/csgo_server/csgo/cfg
nano ~/csgo_server/csgo/cfg/server.cfg
Вставьте базовый конфиг для HNS:
// Основные
hostname "HNS Server"
sv_password ""
sv_lan 0
sv_pure 0 // Разрешает кастомные модели/звуки (важно для HNS)
// Слоты и режим
maxplayers 24
sv_cheats 0
mp_friendlyfire 0
mp_autoteambalance 0
mp_limitteams 0
// Голос и чат
sv_alltalk 1
sv_voiceenable 1
sv_deadtalk 1
// Тикрейт и нетворк
sv_minrate 786432
sv_maxrate 1048576
sv_minupdaterate 128
sv_maxupdaterate 128
sv_client_cmdrate_difference 0
sv_clockcorrection_msecs 15
sv_client_predict 1
// HNS-специфика
mp_roundtime 60
mp_timelimit 0
mp_freezetime 0
mp_startmoney 0
mp_buytime 0
mp_buy_anywhere 0
mp_ignore_round_win_conditions 1
sv_infinite_ammo 0
sv_grenade_trajectory 0
sv_showimpacts 0
// Логи и консоль
log on
sv_logfile 1
sv_logbans 1
developer 0
4. Установка SourceMod и MetaMod
1. Скачайте последнюю стабильную версию для CS:GO:
- https://www.sourcemod.net/downloads.php?branch=stable (версия 1.11.x или 1.10.x)
2. Распакуйте архив в корень сервера:
tar -xzf sourcemod*.tar.gz -C ~/csgo_server/csgo/
3. Проверьте загрузку:
cd ~/csgo_server
./srcds_run -game csgo -console -usercon +map de_dust2
В консоли должна появиться строка: Metamod:Source loaded successfully
5. Установка HNS-плагинов
Рекомендуемый набор (скачивайте .smx и кладите в csgo/addons/sourcemod/plugins/):
| Плагин | Назначение | Источник |
|---|---|---|
nHNS или hns_extended |
Основная логика HNS (прыжки, скрытность, раунды) | GitHub / AlliedModders |
kz_timestamper |
Таймеры, рекорды, чекпоинты | GitHub |
sm_hideandseek |
Альтернативная реализация HNS | AlliedModders |
afk_manager |
Управление AFK-игроками | Official SM |
simple_vote |
Голосования за карты/режимы | AlliedModders |
mapchooser_extended |
Ротация карт, голосование за следующую | AlliedModders |
Установка:
cp *.smx ~/csgo_server/csgo/addons/sourcemod/plugins/
В консоли сервера: sm plugins reload или sm plugins list для проверки.
6. Карты и ротация
6.1 Загрузка карт
- Ищите карты с пометкой hns, bhop, xc на:
- https://gamebanana.com/maps?game=csgo&cat=hns
- https://hnsmap.com/
- Файлы
.bspкладите вcsgo/maps/ - Для FastDL создайте
fastdl/структуру (см. раздел 7.3)
6.2 Настройка ротации
Создайте csgo/maplist.txt:
hns_simplicity
hns_miracle
xc_cliffjumper
hns_speed
bhop_autobahn
В server.cfg добавьте:
mapcyclefile "maplist.txt"
Плагин mapchooser_extended автоматически будет использовать этот файл.
7. Сеть, оптимизация и FastDL
7.1 Открытие портов (UFW)
sudo ufw allow 27015/udp
sudo ufw allow 27015/tcp
sudo ufw allow 27020/udp
sudo ufw allow 27016/udp
sudo ufw enable
7.2 Параметры запуска
Создайте launch.sh:
#!/bin/bash
cd ~/csgo_server
./srcds_run \
-game csgo \
-tickrate 128 \
-port 27015 \
+map de_dust2 \
+game_type 0 \
+game_mode 0 \
+sv_lan 0 \
-norestart \
-console \
-usercon \
+fps_max 300 \
-pidfile csgo.pid
chmod +x launch.sh
7.3 FastDL (опционально, но рекомендуется)
- Установите веб-сервер (Nginx/Apache)
- Создайте symlink:
ln -s ~/csgo_server/csgo/ /var/www/html/csgo
3. В server.cfg:
sv_downloadurl "http://ваш_домен/csgo"
sv_allowdownload 1
7.4 Оптимизация ядра Linux
sudo nano /etc/sysctl.conf
Добавьте:
net.core.rmem_max = 16777216
net.core.wmem_max = 16777216
net.ipv4.tcp_rmem = 4096 87380 16777216
net.ipv4.tcp_wmem = 4096 65536 16777216
sudo sysctl -p
8. Автозапуск через systemd
sudo nano /etc/systemd/system/csgo-hns.service
[Unit]
Description=CS:GO HNS Server
After=network.target
[Service]
Type=forking
User=steam
WorkingDirectory=/home/steam/csgo_server
ExecStart=/home/steam/csgo_server/launch.sh
ExecStop=/usr/bin/screen -S csgo-hns -X quit
Restart=on-failure
RestartSec=10
[Install]
WantedBy=multi-user.target
sudo systemctl daemon-reload
sudo systemctl enable csgo-hns
sudo systemctl start csgo-hns
9. Администрирование и RCON
9.1 Настройка RCON
В server.cfg:
rcon_password "ВАШ_СЛОЖНЫЙ_ПАРОЛЬ"
Подключение через консоль: rcon_password "..." -> rcon status
9.2 Полезные команды
| Команда | Описание |
|---|---|
sm plugins list |
Список активных плагинов |
sm_reloadadmins |
Перезагрузка прав админов |
sm_addadmin "имя" "пароль" "steamid" "группа" |
Добавить админа |
sm_kick "ник" "причина" |
Кик игрока |
sm_ban "ник" "время" "причина" |
Бан |
Файл админов: csgo/addons/sourcemod/configs/admins_simple.ini
10. Частые проблемы и решения
| Симптом | Причина | Решение |
|---|---|---|
| Сервер не виден в браузере | Firewall/NAT, -insecure, неверный порт |
Проверьте UFW, удалите -insecure, пробросьте порты |
| Плагины не грузятся | Несоответствие версии SM/MM, ошибки в логах | Проверьте addons/sourcemod/logs/, обновите SM |
| Лаги/фризы | Низкий tickrate, перегрузка CPU, неверные rates | Установите -tickrate 128, проверьте top, настройте sv_maxrate |
| Карты не загружаются у клиентов | Отсутствие FastDL, битые .bsp |
Проверьте sv_downloadurl, перезалейте карты |
sv_pure блокирует модели |
sv_pure 1 или 2 без whitelist |
Используйте sv_pure 0 или настройте pure_server_whitelist.txt |
| Сервер падает при запуске | Нехватка RAM, конфликт плагинов | Увеличьте RAM, отключите плагины по одному |
Готово! Ваш HNS-сервер запущен, оптимизирован под 128 tick и готов принимать игроков. Регулярно обновляйте плагины, следите за логами и делайте бэкапы cfg/ и maps/.