Главная » 2014 » Март » 3 » Создание собственного сервера CS: Source
09:19
Создание собственного сервера CS: Source
Почему это руководство лучше старых?
В русскоязычном сообществе Steam уже существует руководство по установке и настройке сервера для игры Counter-Strike: Source. Зачем делать еще одно руководство? - спросите вы. Действительно, это было бы не нужным, если бы не одно но... Дело в том, что старые руководства давно перестали быть актуальными. Если вы последуете старым руководствам, вы просто устанете мучать Google своими поисковыми запросами, поиску ошибок и их исправлений и так далее. И только спустя некоторое время вы поймете, почему же неактуально было то руководство.
Дело в том, что Valve изменила систему хранения игровых файлов в папке Steam для своих игр, в частности и для Counter-Strike: Source. И старая программка HLDSUpdateTool, которая фигурирует в старых руководствах, просто потеряла свою актуальность и по прежднему качает старые версии серверов. С появлением системы SteamPipe обновилась и программа для установки и обновления сервера, теперь она называется SteamCMD.
Системные требования
Компьютеры давно стали дешевле и доступнее, поэтому считаю неактуальным перечислять минимальные системные требования, необходимые для установки сервера. Скажем так: если ваш компьютер без проблем справляется с самой Counter-Strike: Source, то он справится и с сервером. Если вы планируете что-то делать на компьютере, когда на нем запущен сервер (например, играть в ту же самую Counter-Strike: Source), то рекомендуется установить процессор с двумя или более ядрами.

А вот к чему сервер более придирчив, так это к доступу в Интернет. Если у вас Интернет работает нестабильно или доступ ограничен низкой скоростью соединения - разберитесь с этим в первую очередь.

(!) Некоторые люди путают скорость доступа в Интернет и скорость работы сетевой карты/модема. Например, если при подключении 3G-модема в нижнем правом углу появляется сообщение, например "MEGAFON 3G 150 MB/S", то это не значит, что скорость доступа в Интернет у вас 150 Мегабит в секунду, это всего лишь максимальная скорость сетевой карты (некоторые даже путают мегабиты с мегабайтами и удивляются, почему Windows говорит о 150 Мегабайтах в секунду, а модем "качает" со скоростью 10 килобайт в секунду).

Если на вашем сервере будет большой пинг и частые лаги, то играть на вашем практически никто и не будет. Поэтому в первую очередь, вам необходимо быть уверенным в том, что сервер не отключится в самый неподходящий момент. Если вы планируете, что на вашем сервере будут играть посторонние люди, то вряд ли они после очередного разрыва соединения будут кликать на ваш сервер и ждать, пока у вас перезагрузится модем.
Установка сервера
Установка сервера Counter-Strike: Source начинается с загрузки приложения SteamCMD - специального консольного клиента Steam, предназначенного для установки и обновления выделенных серверов через интерфейс командной строки. Консольный клиент Steam совместим с играми, работающие на контентной системе SteamPipe.

Загрузка и запуск SteamCMD в OS Windows:

1. Скачайте архив по ссылке (зеркало1, зеркало2, зеркало3).
2. Распакуйте архив в папку, которая будет отведена для установки сервера, например "C:/server/".
3. В командной строке откройте эту папку и запустите SteamCMD командной "steamcmd".

Загрузка и запуск SteamCMD в OS Linux:

1. Скачайте архив командной "wget http://media.steampowered.com/client/steamcmd_linux.tar.gz".
2. Распакуйте архив в папку: "tar xvfz steamcmd_linux.tar.gz".
3. Запустите SteamCMD: "./steamcmd.sh".

Устанавливайте сервер только в новую папку. Желательно, чтобы адрес пути папки не содержал русских символов, заглавных букв, был короче (но это, скорее, для удобства). В нашем примере, это будет папка "C:/server/".



Во время первого запуска, SteamCMD обновит файлы, необходимые для своей базовой работы. Займет это немного времени, у меня, например, после обновления SteamCMD, папка занимала лишь 25 Мегабайт.

После того, как SteamCMD завершит свое обновление, в окне командной строки вы увидите приглашение Steam>. В этом шаге нам необходимо авторизоваться. Чтобы скачать и пользоваться сервером Counter-Strike: Source, авторизация не требуется. Введите команду "login anonymous", чтобы войти в SteamCMD анонимно. Если вы увидите сообщение Connecting anonymously to Steam Public...Success, значит анонимный вход был выполнен успешно.

Установка сервера:

И только теперь мы можем перейти к установке сервера. Да, все что мы проделали сейчас - всего лишь подготовка к тому, чтобы установить сервер. Выполните в командной строке SteamCMD следующие команды. Обратите внимание, что в OS Windows используются обратные слэши (/), в а OS Linux - прямые (|).

force_install_dir <путь>

Укажите директорию, куда будет загружен и установлен сервер. Вам необходимо указать папку, которая будет создана в папке со SteamCMD. Например, "force_install_dir ./css/".



app_update <app_id>

Этой командой устанавливаются и обновляются приложения Steam, где вместо app_id указывается ID приложения Steam. ID сервера Counter-Strike: Source - 232330! Поставьте дополнительный ключ validate, чтобы после установки (обновления) сервера выполнилась ее проверка, например "app_update 232330 validate".

(!) У многих на этом шаге возникают проблемы, когда они авторизовываются в SteamCMD под своим логином и паролем, после чего сервер CSS (232330) просто не загружается. Недолго думая, они смотрят ID-номер игры Counter-Strike: Source (240) и качают ее, а не сам сервер.



Сервер занимает более 2 Гигабайт, поэтому можете заниматься своими делами. После загрузки сервера, выполните команду exit для нормального завершения работы программы.

После всего этого, зайдите в папку с установленным сервером и найдите файл "srcds.exe". Поместите ярлык к этому файлу на рабочий стол. Откройте меню "Свойства" созданного ярлыка и в поле ввода "Объект" добавьте параметры запуска, например:

C:\server\css\srcds.exe -console -game cstrike +map de_dust -maxplayers 16 -autoupdate, где:

"C:\server\css\srcds.exe" - путь к файлу, он уже должен быть указан и изменять его не нужно;
"-console" - запуск сервера в консольном окне;
"-game cstrike" - запуск сервера для игры Counter-Strike;
"+map de_dust" - выбрать карту de_dust при запуске сервера;
"-maxplayers 16" - ограничить максимальное количество игроков до 16 человек;
"-autoupdate" - проверить обновления при запуске сервера.

Сохраните свойства ярлыка, попробуйте запустить с помощью этого ярлыка сервер. Если все запустилось без ошибок, то все просто отлично. Но это еще не все. Это только начало.

(!) Сейчас вы, наверное, будете закрывать окно сервера и у вас будет выскакивать сообщение об аварийном завершении работы приложения... так вот. Так делать нельзя, выходите из сервера только командой "exit".
Конфигурация сервера
Настройки сервера хранятся в файле server.cfg, расположенном в корневой папке сервера.
Скачать конфигурационный файл с описанием



Описание по использованию файла конфигурации и его редактированию будет выложено позднее.
Вскоре также будут выложены различные готовые конфигурации.
Становимся администратором сервера
Модификации сервера
Не могу подключиться к серверу
Брандмауэр Windows

Сторонние брандмауэры и фаерволы

Если у вас установлен сторонние средства защиты для безопасной работы в сети Интернет - фаервол или брандмауэр, попробуйте его полностью отключить. Если после этого все заработало, значит виной всему этот брандмауэр. Если не заработало, попробуйте после отключения сторонего фаервола выполнить вышеупомянутую настройку брандмауэра Windows - обычно сторонние фаерволы перекрывают работу брандмауэра и если сторонний фаервол отключить, то будут активны настройки штатного брандмауэра Windows. Приведем несколько примеров, по добавлению порта 27015 в список исключений.

Avast Internet Security
Agnitum Outpost Firewall Pro
PC Tools
Zone Alarm
Online Armor
Agava Firewall

Kerio WinRoute / Kerio Control

В моем случае, виною во всем был фаервол Kerio Control, который блокировал порт 27015. Чтобы открыть этот порт в Kerio Control, достаточно выполнить несколько простых шагов:

1. Зайдите в Kerio Control Administration и откройте страницу "Службы" в разделе "Определения".
2. Добавим в список новую службу, в которой укажем порт 27015. Нажмите кнопку "Добавить" и в появившемся окне "Изменить службу" укажите следующие параметры:
  • Имя: Source
  • Описание: Порт для сервера CS Source
  • Протокол: TCP/UDP
  • Инспектор протоколов: Нет
  • Порт источника / Условие: Равно
  • Порт источника / Номер порта: 27015
  • Порт назначения / Условие: Равно
  • Порт назначения / Номер порта: 27015
..и нажмите кнопку "ОК" для сохранения службы.



3. Перейдите на страницу "Правила трафика" в разделе "Политика трафика". Добавьте новое правило, которое будет разрешать использование порта 27015. Нажмите кнопку "Добавить" и укажите следующие параметры для нового правила:
  • Имя: Source
  • Источник: Любой
  • Назначение: Брандмауэр
  • Служба: Source
  • Действие: Разрешить
  • Трансляция: -
  • Допустимое время: -
  • Инспектор: По умолчанию
... нажмите кнопку "Применить" для сохранения изменений.



Примечание: когда вы выбираете службу в "Правилах трафика", вы можете выбрать созданную ранее службу с прописанным портом или указать ее вручную (TCP 27015 / UDP 27015).

Возможные проблемы и способы их решения
На моем компьютере с OS Linux, сервер устанавливается нормально, но запустить я его не могу.
Некоторые игры имеют проблемы с регистром в названиях файлов / папок.

Появляется ошибка: steamclient.so: cannot open shared object file. No such file of directory

Проверяем наличие директории Steam командой:

cd /home/alliance/.steam

Если директория отсутствует, то создаем ее вручную:

mkdir /home/alliance/.steam

Теперь создаем "символьную" ссылку к библиотекам SteamCMD:

ln -s /home/alliance/srcds/steamcmd/linux32 /home/alliance/.steam/sdk32

Примечание: В вашем случае, пути к директориям будут различаться!

Благодарности
Во время написания данного руководства были использованы следующие материалы:

Руководства пользователя WanderfulKh
Как сделать свой CS:S Server
Установка SourceMod на сервер
WarMod (CW плагин)

Gamer.Ru Настройка сервера (Полное описание файла server.cfg) (руководство Neon1311).

Информация с сайта Valve Developer Community

В написании руководства мне помогали:

Форум "Ру-Боард"
Форум "Сисадмины"
а также нелюбимый сотрудниками Valve форум cs-mania

Отдельная благодарность сотрудникам Steam, которые не стояли у меня на пути и всеми силами и возможностями помогали мне в создании этого замечательного руководства.



Большое им спасибо
Просмотров: 866 | Добавил: mishgun | Рейтинг: 0.0/0
Всего комментариев: 0
omForm">
avatar
Яндекс.Метрика Рейтинг@Mail.ru
© 2024 Beskuda
Хостинг от uCoz