Как настроить сервер Counter-Strike 1.6 на Windows: полное руководство
Пошаговый гайд по установке и настройке сервера Counter-Strike 1.6 на Windows через SteamCMD. Включает практические рекомендации для компьютера, на котором одновременно работают сервер и игровой клиент, готовые команды и конфигурацию, настройку брандмауэра и переадресации портов, основы администрирования, резервное копирование и устранение неполадок.
Собственный сервер Counter-Strike 1.6 позволяет собрать друзей, выбрать карты и настроить правила игры. В этом гайде разберём, как установить выделенный сервер на Windows, подключить игроков из локальной сети и Интернета и играть на том же компьютере, сохраняя стабильную работу сервера.
1. Рекомендуемая конфигурация компьютера
Компонент | Рекомендация |
|---|---|
Операционная система | Поддерживаемая на текущий момент версия Windows 11 x64 с установленными обновлениями |
Процессор | Современный процессор настольного класса с архитектурой x86-64, как минимум 4 физическими ядрами и 8 потоками; важна высокая производительность одного ядра |
Оперативная память | 16 ГБ |
Графика для игры на этом же ПК | Поддерживаемая встроенная графика либо недорогая дискретная видеокарта с рабочим драйвером OpenGL от производителя; проверьте стабильность игры при выбранном разрешении, например 1920 × 1080 |
Накопитель | SSD как минимум с 20 ГБ свободного места для SteamCMD, сервера, игры, журналов и небольшого запаса под резервные копии; место для Windows учитывается отдельно |
Сетевой адаптер | Проводное подключение к роутеру по Gigabit Ethernet |
Интернет | Не менее 20 Мбит/с фактически доступной исходящей скорости и 20 Мбит/с входящей скорости при стабильной задержке |
Проверяйте возможности компьютера под нагрузкой, одновременно играя на нём. Проверка пустого сервера мало что говорит о производительности. Если полностью загружено одно ядро процессора, добавление памяти не устранит это ограничение; если исчерпана исходящая скорость Интернета, более мощная видеокарта тоже не поможет.
2. Подготовьте Windows, Steam и сеть
- Установите настольный клиент Steam с официальной страницы Valve, войдите в свою учётную запись и установите Counter-Strike, Steam App ID 10. Для игры нужна законная лицензия. Выделенный сервер загружается отдельно через анонимный сеанс SteamCMD.
- Обновите Windows и драйвер видеокарты. Подключите компьютер с сервером к роутеру сетевым кабелем.
- Выделите для сервера отдельную папку. В статье используются
C:\SteamCMDдля установщика иC:\CS16Serverдля сервера. Эти папки должны быть отделены от установленного игрового клиента Steam. - На время работы сервера оставляйте компьютер включённым и запретите автоматический переход в спящий режим. Отключать экран можно. На ноутбуке также проверьте действие при закрытии крышки и подключите питание от сети.
- Для игроков из Интернета потребуется доступ к настройкам переадресации портов роутера. Уточните, может ли провайдер предоставить публичный IPv4-адрес, доступный для входящих подключений. Динамический публичный адрес подходит, но при его изменении нужно сообщать игрокам новый адрес. Работа с CGNAT рассмотрена в разделе 6.
Важно вводить команды в правильном месте. Блоки с пометкой powershell предназначены для Windows PowerShell, блоки bat — для командной строки Windows либо файла .bat. Команды SteamCMD вводятся в её консоли после появления приглашения Steam>, а команды игры и сервера — в указанной консоли клиента или HLDS. Блоки конфигурации представляют собой содержимое файлов. Не копируйте тройные обратные кавычки, которыми в Markdown выделены блоки кода, и приглашения консоли. Сохраняйте точку как десятичный разделитель в настройках, даже если в Windows выбрана русская локаль.
3. Загрузите SteamCMD и установите сервер
Загрузка и распаковка установщика для Windows
Откройте «Пуск», введите Windows PowerShell и запустите найденную программу. Выполните команды по порядку:
New-Item -ItemType Directory -Path "C:\SteamCMD", "C:\CS16Server" -Force | Out-Null
Invoke-WebRequest -UseBasicParsing -Uri "https://steamcdn-a.akamaihd.net/client/installer/steamcmd.zip" -OutFile "C:\SteamCMD\steamcmd.zip"
Expand-Archive -LiteralPath "C:\SteamCMD\steamcmd.zip" -DestinationPath "C:\SteamCMD" -Force
& "C:\SteamCMD\steamcmd.exe"
Команды создают папки, загружают ZIP-архив Valve для Windows, распаковывают его и запускают SteamCMD. Адрес загрузки дополнительно подтверждён заявкой на добавление SteamCMD в репозитории Microsoft WinGet. Операции PowerShell сверены с документацией Microsoft. Если Windows не разрешает создавать папки в корне диска C:, один раз создайте их с правами администратора, а затем запускайте сервер от обычной учётной записи.
При первом запуске SteamCMD обновляет себя. Если после обновления окно закрылось, снова выполните последнюю команду. Дождитесь приглашения Steam>.
Установка HLDS с выбранным модом Counter-Strike
Введите следующие команды в консоли SteamCMD, по одной строке. Перед вводом quit дождитесь завершения загрузки:
force_install_dir C:\CS16Server
login anonymous
app_set_config 90 mod cstrike
app_update 90 validate
quit
Указывайте папку установки до входа в систему. App ID 90 обозначает дистрибутив HLDS, используемый для этого сервера; значение cstrike выбирает Counter-Strike 1.6. Для стандартной установки оставьте публичную ветку, используемую по умолчанию. Архивное объявление Valve об обновлении HLDS подтверждает анонимную загрузку и App ID 90; выбор мода описан в справке SteamCMD.
У App ID 90 были задокументированы случаи неполной загрузки. Одного сообщения об успешном завершении недостаточно, чтобы подтвердить наличие всех игровых файлов. Проверьте следующие пути в Проводнике:
Путь | Что должно находиться по этому пути |
|---|---|
| Исполняемый файл выделенного сервера для Windows |
| Библиотека движка выделенного сервера для Windows |
| Файл, определяющий игровую библиотеку Counter-Strike |
| Серверная игровая библиотека Counter-Strike для Windows |
| Карта, с которой запускается сервер в этой статье |
Если файлы отсутствуют, снова откройте SteamCMD и повторите пять команд установки. Повторяйте обновление, если при следующем запуске всё ещё загружаются дополнительные файлы. Если несколько попыток подряд не дают результата, проверьте ошибки SteamCMD и свободное место на диске; попробуйте установить сервер в новую папку вместо использования неизвестной готовой сборки.
4. Создайте конфигурацию сервера и список смены карт
В Проводнике включите «Просмотреть» → «Показать» → «Расширения имён файлов». Откройте Блокнот и сохраните приведённый ниже текст по пути:
C:\CS16Server\cstrike\server.cfg
В окне «Сохранить как» выберите тип «Все файлы», чтобы файл не получил имя server.cfg.txt. Для этого примера, содержащего только символы ASCII, подойдёт кодировка UTF-8 без метки BOM либо ANSI. Если Блокнот сообщает, что файл уже существует, перед заменой сохраните настройки, которые хотите оставить.
Содержимое server.cfg:
hostname "My CS 1.6 Server"
sv_lan 0
sv_password ""
rcon_password ""
sv_cheats 0
mp_timelimit 30
mp_roundtime 2
mp_freezetime 6
mp_buytime 0.5
mp_startmoney 800
mp_c4timer 35
mp_friendlyfire 0
mp_autoteambalance 1
mp_limitteams 1
sv_minrate 20000
sv_maxrate 100000
sv_minupdaterate 20
sv_maxupdaterate 100
sys_ticrate 100
sv_voiceenable 1
sv_alltalk 0
sv_allowdownload 1
sv_allowupload 0
sv_downloadurl ""
mapcyclefile "mapcycle.txt"
log on
Это авторская начальная конфигурация, а не утверждение, что всем серверам подходят именно такие значения. Названия стандартных переменных движка и игры сверены с указанными реализациями движка и игровой библиотеки. Устанавливать эти альтернативные реализации для выполнения этой инструкции не требуется.
Основные параметры означают следующее:
sv_lan 0задаёт режим работы через Интернет. Для игры только в локальной сети используйтеsv_lan 1и не настраивайте переадресацию портов на роутере.sv_password ""позволяет подключаться без пароля. Для закрытой игры замените пустое значение своим паролем входа. Это отдельный пароль, не связанный с администрированием.rcon_password ""оставляет удалённое управление через консоль выключенным. Управлять сервером можно из его локального окна; включение RCON описано ниже.- Длительность игры на карте и длительность раунда задаются в минутах. Время покупки также задаётся в минутах:
mp_buytime 0.5означает 30 секунд. Время неподвижности в начале раунда и таймер C4 задаются в секундах. Урон по своим отключён. - Параметры
rateзадаются в байтах в секунду, аupdaterateрегулируют число обновлений в секунду.sys_ticrate 100задаёт умеренный целевой предел — 100 серверных кадров в секунду; фактическая производительность может отличаться. - Загрузка ресурсов с сервера разрешена, а передача клиентских ресурсов на сервер, например собственных спреев, запрещена. Пустой адрес загрузки позволяет начать работу без внешнего сайта раздачи файлов.
Сохраните второй текстовый файл по пути C:\CS16Server\cstrike\mapcycle.txt со следующим содержимым:
de_dust2
de_inferno
de_nuke
cs_office
В каждой строке указано имя карты без расширения .bsp. Убедитесь, что соответствующие файлы есть в cstrike\maps. Сервер использует этот список для смены карт по истечении заданного времени. На этапе первоначальной проверки используйте стандартные карты и базовую конфигурацию.
5. Запустите HLDS и подключитесь из игры на этом же ПК
Откройте командную строку Windows: нажмите Windows + R, введите cmd и нажмите Enter. Выполните:
cd /d "C:\CS16Server"
hlds.exe -console -game cstrike -port 27015 +maxplayers 16 +map de_dust2
Команда cd /d меняет и диск, и текущую папку. Параметр -console открывает консоль HLDS в Windows, -game cstrike загружает Counter-Strike, -port 27015 выбирает порт сервера, а последние параметры задают число игровых мест и начальную карту. При запуске карты сервер загружает cstrike\server.cfg.
Дождитесь загрузки карты и окончания сообщений об инициализации. Введите следующие команды в консоли HLDS:
version
status
stats
Проверьте версию движка, карту, число игровых мест и показатели производительности. Пока сервер работает, оставляйте его окно открытым. Если нужна защита VAC, не добавляйте -insecure: этот параметр отключает VAC.
Если консоль игры недоступна, в Steam нажмите правой кнопкой мыши Counter-Strike → «Свойства» → «Общие» и добавьте -console в поле параметров запуска. Запустите игру и нажмите клавишу под Escape — обычно это клавиша с Ё в русской раскладке и тильдой/обратной кавычкой в английской. При необходимости переключитесь на английскую раскладку. В консоли игрового клиента введите:
connect 127.0.0.1:27015
Теперь вы играете через выделенный сервер, запущенный на этом же компьютере. Если задан пароль входа, перед подключением введите в консоли игры password "YOUR_JOIN_PASSWORD", заменив пример своим настоящим паролем.
Для последующих запусков сохраните следующий текст как C:\CS16Server\start-cs16.bat, выбрав в Блокноте тип «Все файлы»:
@echo off
cd /d "C:\CS16Server"
hlds.exe -console -game cstrike -port 27015 +maxplayers 16 +map de_dust2
pause
Запускайте сервер двойным щелчком по этому файлу. Команда pause оставляет окно запуска открытым после завершения HLDS, чтобы сообщение об ошибке можно было прочитать. Если впоследствии нужно увеличить вместимость, измените +maxplayers 16 и полностью перезапустите HLDS; перед приглашением большего числа игроков проверьте совместную нагрузку сервера и игры.
6. Разрешите подключения из локальной сети и Интернета
Определите и закрепите локальный адрес компьютера с сервером
Выполните в командной строке Windows:
ipconfig /all
В разделе активного адаптера Ethernet запишите IPv4-адрес, физический адрес, то есть MAC-адрес, и основной шлюз. Не используйте данные отключённых адаптеров и посторонних виртуальных или VPN-адаптеров. В статье адрес компьютера с сервером для примера обозначен как 192.168.1.50; везде, где требуется, заменяйте его фактическим адресом вашего ПК.
В настройках DHCP роутера закрепите этот адрес за MAC-адресом адаптера Ethernet. Соответствующий пункт может называться «Резервирование адресов», DHCP Reservation или Static Lease. При использовании резервирования DHCP оставьте в Windows автоматическое получение IP-адреса. Так адрес назначения для переадресации портов останется постоянным.
Добавьте правило брандмауэра Windows
Для своей доверенной домашней сети проверьте, что в Windows выбран профиль «Частная сеть»: откройте «Параметры» → «Сеть и Интернет» → Ethernet либо свойства активного подключения Wi-Fi.
Запустите Windows PowerShell от имени администратора и один раз выполните команду:
New-NetFirewallRule -Name "HLDS-CS16-UDP27015" -DisplayName "CS 1.6 HLDS UDP 27015" -Direction Inbound -Action Allow -Protocol UDP -LocalPort 27015 -Program "C:\CS16Server\hlds.exe" -Profile Private
Правило разрешает входящий UDP-трафик на игровом порту для указанного исполняемого файла и сетевого профиля. Значение Private выбирает сетевой профиль компьютера, а не ограничивает отправителей локальной сетью. Игроки из Интернета, чьи подключения проходят через настроенную переадресацию на роутере, также смогут подключаться. Оставьте брандмауэр включённым. Если используется сторонний межсетевой экран, в нём нужно аналогичное правило.
Настройте переадресацию игрового порта на роутере
Откройте страницу управления роутером по адресу, указанному в его документации; часто это записанный ранее адрес основного шлюза. Найдите раздел «Переадресация портов», «Виртуальные серверы» либо соответствующий раздел NAT и добавьте правило:
Поле в настройках роутера | Значение |
|---|---|
Имя правила или службы |
|
Протокол |
|
Внешний порт, WAN |
|
Внутренний порт, LAN |
|
Внутренний IPv4-адрес назначения | Закреплённый локальный адрес компьютера с сервером, например |
Правило включено | Да |
Стандартный игровой трафик и запросы сведений о сервере используют UDP 27015. RCON движка GoldSrc тоже работает по UDP на игровом порту. Инструкции о TCP для RCON более новых серверов на движке Source не описывают этот протокол. Если отдельно настраивается HLTV, ему может потребоваться UDP 27020; в этой статье HLTV не запускается. Сохраните обычный исходящий доступ в Интернет для служб Steam вместо переадресации на ПК целых диапазонов портов Steam.
Проверьте наличие двойного NAT и CGNAT. Посмотрите IPv4-адрес WAN/Internet в роутере. Частные диапазоны 10.0.0.0/8, 172.16.0.0/12, 192.168.0.0/16 и общий диапазон 100.64.0.0/10 означают, что это не публичный адрес, доступный напрямую. Если вышестоящий роутер принадлежит вам, настройте переадресацию и на нём либо подходящий режим моста. При CGNAT провайдера или DS-Lite без доступного для входящих подключений публичного IPv4 запросите у провайдера такую услугу либо разместите сервер на компьютере с Windows и доступным извне адресом. Резервирование адреса в домашнем роутере не устраняет NAT провайдера.
Проверьте три разных варианта подключения
- С компьютера с сервером: подключитесь к
127.0.0.1:27015, как описано выше. - С другого компьютера в той же локальной сети: используйте фактический локальный адрес серверного ПК. Для адреса из примера введите в консоли Counter-Strike на другом компьютере:
connect 192.168.1.50:27015 - Из внешней сети: сообщите игроку публичный IPv4-адрес WAN и порт. Он должен ввести
connect YOUR_PUBLIC_IPV4:27015, заменивYOUR_PUBLIC_IPV4настоящим адресом. Попросите знакомого проверить подключение из другой сети либо подключите второй ПК через мобильную точку доступа.
Проверка публичного адреса из той же локальной сети зависит от поддержки NAT loopback в роутере; она не заменяет проверку извне. NAT loopback позволяет обратиться к локальному серверу через внешний адрес собственного роутера.
При необходимости проверьте, к какому локальному адресу привязан UDP-порт. Выполните в PowerShell при работающем HLDS:
Get-NetUDPEndpoint -LocalPort 27015 | Select-Object LocalAddress, LocalPort, OwningProcess
Сопоставьте OwningProcess с идентификатором процесса PID на вкладке «Подробности» Диспетчера задач. Это должен быть HLDS. Если порт привязан только к 127.0.0.1, подключения из локальной сети и Интернета невозможны. Если на компьютере с несколькими сетевыми адаптерами нужна явная привязка, добавьте в команду запуска +ip и локальный адрес адаптера, через который работает сервер. Если после такой привязки подключение через loopback перестало работать, для собственного игрового клиента также используйте локальный адрес этого адаптера. Не указывайте публичный адрес роутера, если он не назначен самому ПК.
Многие сайты проверки портов и команда PowerShell Test-NetConnection -Port проверяют TCP. Они не позволяют установить, доступен ли игровой сервис по UDP. Нужная проверка — успешное подключение к серверу из внешнего клиента Counter-Strike.
Когда прямое подключение извне заработает, игроки могут добавить адрес через «Найти серверы» → «Избранное» → «Добавить сервер». Появление в общем списке серверов может занять больше времени; основной проверкой настройки служит прямое подключение.
7. Управляйте сервером
Если сервер работает рядом с вами, достаточно локальной консоли HLDS. В ней доступны следующие команды:
Команда | Действие |
|---|---|
| Показать подключённых игроков, их идентификаторы и сведения о сервере |
| Показать статистику процессорной нагрузки, сети и серверных FPS |
| Переключиться на установленную карту |
| Повторно загрузить настройки из файла конфигурации |
| Перезапустить игру через одну секунду |
| Остановить HLDS |
Перед применением мер к игроку получите его правильный идентификатор командой status. Например, kick #12 отключает игрока с номером пользователя 12. Команда banid 0 STEAM_0:1:12345 kick выдаёт постоянный бан Steam ID из примера и отключает этого игрока; замените пример настоящим Steam ID нужного человека. Команда writeid сохраняет постоянные баны по Steam ID в cstrike\banned.cfg. Когда этот файл создан, добавьте в server.cfg строку exec banned.cfg, чтобы восстанавливать баны после запуска. Ненулевая длительность в banid задаётся в минутах. Эти стандартные команды также используются внутри административного плагина AlliedModders.
Дополнительно: включение администрирования через RCON
RCON даёт удалённый контроль над сервером. Протокол GoldSrc передаёт пароль и команды администрирования без шифрования, поэтому используйте его только через доверенное подключение; для удалённого администрирования подходит VPN. Пароль RCON отличается от пароля входа в игру.
Остановите HLDS. Чтобы создать уникальный пароль для администрирования и добавить настройку в конфигурацию из примера, выполните в PowerShell:
$cs16RconPassword = [guid]::NewGuid().ToString("N")
Add-Content -LiteralPath "C:\CS16Server\cstrike\server.cfg" -Encoding ASCII -Value ('rcon_password "' + $cs16RconPassword + '"')
$cs16RconPassword
Скопируйте выведенное значение в менеджер паролей. Добавленная строка переопределяет прежнее пустое значение; при повторном выполнении действует последнее указанное значение. Перезапустите HLDS. Полученное значение содержит 32 шестнадцатеричных символа; создание GUID и добавление текста выполняются с помощью документированных API и команд Microsoft.
Подключив игровой клиент к серверу, введите в его консоли следующие команды, заменив обозначение пароля сгенерированным значением:
rcon_password "PASTE_GENERATED_PASSWORD_HERE"
rcon status
Если в ответ появился список игроков и сведения о сервере, удалённое управление работает. Чтобы снова отключить RCON, удалите добавленные строки с паролями и оставьте только rcon_password "". Перезапустите сервер. Не публикуйте конфигурацию или резервную копию, содержащую пароль администрирования.
8. Проверьте производительность во время игры
Проведите типичную игровую сессию с подключёнными игроками продолжительностью хотя бы 15–30 минут. В окне HLDS проверяйте stats. В Диспетчере задач Windows откройте «Производительность» → «ЦП», нажмите правой кнопкой мыши на графике и выберите «Изменить график» → «Логические процессоры». Так будет видно, если отдельное ядро полностью загружено.
В консоли игрового клиента включите отображение сетевых показателей:
net_graph 3
Следите за числовыми значениями loss и choke, а также за FPS клиента. Loss означает, что пакеты не доходят; choke — что часть обновлений не отправляется, часто из-за ограничений скорости передачи или пропускной способности. Желательны стабильная частота кадров клиента и отсутствие заметных постоянных значений loss и choke. Чтобы убрать эти показатели с экрана, введите net_graph 0.
Если клиент и соединение справляются с предложенными скоростями, можно начать со следующих настроек; это отправная точка, а не универсальный оптимум:
rate 100000
cl_updaterate 100
cl_cmdrate 100
fps_max 100
Ограничения сервера всё равно действуют. Запрашиваемая частота обновлений и фактические серверные FPS — разные величины. Управление частотой обновлений клиента также упоминается в трекере Counter-Strike у Valve; значения выше выбраны для начальной конфигурации этой статьи и не объявлены производителем оптимальными. Если клиент или соединение не выдерживают нагрузку, уменьшите запрашиваемые частоты; если перегружен компьютер с сервером, сократите число игровых мест, остановите ресурсоёмкие фоновые задачи либо перенесите сервер на другой ПК с Windows. Очень высокие значения sys_ticrate и изменение приоритетов процессов не заменяют достаточных ресурсов. Сохраните рабочую базовую конфигурацию и меняйте по одному параметру за раз.
9. Делайте резервные копии, обновляйте сервер и при необходимости настройте автозапуск
Резервная копия перед изменениями
Остановите HLDS командой quit. Создайте в PowerShell копию всей папки сервера с датой и временем в имени:
New-Item -ItemType Directory -Path "C:\CS16Backups" -Force | Out-Null
$cs16BackupPath = Join-Path "C:\CS16Backups" ("CS16-" + (Get-Date -Format "yyyyMMdd-HHmmss"))
Copy-Item -LiteralPath "C:\CS16Server" -Destination $cs16BackupPath -Recurse
Убедитесь, что новая папка содержит hlds.exe и cstrike. В копию входят настройки, карты, дополнения и существующие журналы. Если нужна защита от отказа накопителя, храните ещё одну копию на отдельном диске.
Обновление через SteamCMD
При остановленном HLDS выполните в командной строке Windows:
"C:\SteamCMD\steamcmd.exe" +force_install_dir "C:\CS16Server" +login anonymous +app_set_config 90 mod cstrike +app_update 90 +quit
Если есть подозрение, что файлы дистрибутива отсутствуют или повреждены, запустите проверку целостности:
"C:\SteamCMD\steamcmd.exe" +force_install_dir "C:\CS16Server" +login anonymous +app_set_config 90 mod cstrike +app_update 90 validate +quit
Обновление и проверка целостности могут заменить файлы дистрибутива, которые вы изменяли. Сначала сделайте резервную копию, затем проверьте настройки; если после обновления App ID 90 установка осталась неполной, повторите обновление. Запустите HLDS, проверьте version и повторите проверки подключения с самого ПК и из внешней сети. Описанная здесь установка для Windows обслуживается вручную через SteamCMD.
Дополнительно: запуск при входе в Windows
Откройте «Планировщик заданий» → «Создать задачу». Выберите свою учётную запись Windows и вариант «Выполнять только для вошедшего в систему пользователя». Добавьте триггер «При входе в систему» и действие «Запуск программы» со следующими значениями:
Поле | Значение |
|---|---|
Программа или сценарий |
|
Добавить аргументы |
|
Рабочая папка |
|
На вкладке «Параметры» выберите вариант «Не запускать новый экземпляр», если задача уже выполняется, и снимите ограничение на максимальную продолжительность выполнения. Это запускает сервер с доступным окном консоли после входа пользователя; такая задача не превращает HLDS в службу Windows и не перезапускает его после сбоя. Рабочая папка и аргументы — отдельные свойства задачи.
10. Устранение неполадок
Симптом | Что проверить и как исправить |
|---|---|
Отсутствует | Проверьте App ID 90 и |
Не загружается начальная карта | Проверьте |
Настройки не применяются | Проверьте точное имя |
Не удаётся выделить игровой порт | UDP 27015 может быть занят другим процессом. Проверьте владельца порта по PID и закройте случайно запущенный второй экземпляр. При выборе другого порта одновременно измените команду запуска, правило брандмауэра, переадресацию на роутере и адрес подключения. |
Подключение с самого ПК работает, а из локальной сети — нет | Проверьте фактический локальный адрес, привязку к интерфейсу, активный сетевой профиль Windows и правило брандмауэра. Гостевая Wi-Fi-сеть или изоляция клиентов могут запрещать соединения между устройствами. |
В локальной сети всё работает, а из Интернета — нет | Проверьте переадресацию UDP, закреплённый адрес назначения, адрес WAN, двойной NAT, CGNAT и |
Публичный адрес не работает только при проверке из своей локальной сети | Проверьте NAT loopback; внутри сети используйте локальный адрес, а адрес WAN проверяйте из другой сети. |
Прямое подключение работает, но сервера нет в общем списке | Убедитесь, что не указан |
Несовпадение протокола или версии, ошибки проверки Steam | Обновите сервер и клиент Steam; убедитесь, что установлен Counter-Strike App ID 10 и серверный мод |
Игроки жалуются на рывки, когда вы играете на серверном ПК | Проверьте загрузку отдельных ядер, серверную статистику |
Не работает RCON | Проверьте действующий пароль, подключение именно к нужному серверу и доступность игрового UDP-порта. Используйте клиент администрирования, совместимый с GoldSrc. |
Если проблема воспроизводится на стандартной установке, приложите к обращению в трекер Half-Life у Valve вывод серверной команды version, команду запуска, относящийся к проблеме фрагмент журнала, шаги воспроизведения и сведения о Windows. Перед публикацией журналов и конфигураций удалите пароли.
11. Дополнительные плагины — после проверки стандартного сервера
AMX Mod X добавляет возможности администрирования и написания скриптов. Используйте официальные загрузки для Windows и инструкции проекта. Для него нужен Metamod; установите базовый пакет для Windows и дополнение Counter-Strike в C:\CS16Server\cstrike, выбрав совместимые версии.
Для Windows документация предписывает следующую строку плагина Metamod в файле cstrike\addons\metamod\plugins.ini:
win32 addons/amxmodx/dlls/amxmodx_mm.dll
Выполните указания официальной инструкции по изменению liblist.gam, перезапустите сервер и проверьте meta list и amxx plugins в его консоли. Перед добавлением плагинов сделайте резервную копию, а после установки снова проверьте производительность. Используйте бинарные файлы для Windows из проверенных источников и ведите список всех установленных компонентов.
12. Итоговая проверка готовности
- HLDS загружает начальную карту и нужную конфигурацию.
- Игровой клиент Steam подключается к
127.0.0.1:27015, а HLDS продолжает работать как отдельный процесс. - Другой клиент в локальной сети подключается по локальному адресу компьютера с сервером.
- Если сервер открыт в Интернет, внешний клиент подключается по публичному IPv4-адресу и игровому UDP-порту.
- Типичная сессия с подключёнными игроками остаётся стабильной, пока вы играете на компьютере с сервером.
- У вас есть резервная копия, вы знаете, как остановить сервер, и проверили его повторный запуск.