Вступление.
Сегодня решил написать подробную статью об установке и настройке слушающего сервера игры Team Fortress 2. Итак, чем же отличается слушающий сервер игры от выделенного (Team Fortress 2 Dedicated Server):
- Слушающий сервер не требует особой настройки и установки модификаций.
- Слушающий сервер позволяет одновременно хостить личный сервер и играть в игру. Выделенный сервер не позволяет играть на этом же компьютере (если всё-таки запустить игру и подключиться к такому серверу, у всех появятся серьёзные лаги, т.к. создаётся дисбаланс между сервером и клиентов при обращении к CPU (процессору)).
- Слушающий сервер — это практически тот же Dedicated Server, но имеющий следующие недостатки (хотя достоинств больше):
- Администратором является только тот, кто создал сервер. Управление осуществляется через консоль управления сервером (консоль игры, вызывается клавишей «тильда»; нужно включить консоль управления в настройках клавиатуры игры).
- Если администратор (создатель) отключится от сервера, то все клиенты, подключившиеся к нему, будут кикнуты автоматически. Сервер будет остановлен.
- Включена принудительная проверка учётных записей Steam, т.е. с пираток на такой сервер зайти не удастся.
- На слушающий сервер нельзя установить SourceMod и другие админ-плагины.
- Слушающий сервер запускается прямо из главного меню игры (там же указывается максимальное число игроков).
- Все настройки такого сервера хранятся в файле listenserver.cfg.
Техническая часть.
- Чтобы к Вам могли подключаться клиенты, Вы должны иметь «белый» IP-адрес, т.е. видимый из Интернета. Создание сервера с «серым» IP, либо с жёстким NAT’ом провайдера не имеет смысла, т.к. подключиться к такому серверу никто не сможет.
- Сервер запускается на порту 27015, поэтому если у Вас ADSL, вы должны пробросить этот порт по протоколу UDP в настройках своего роутера (модема).
- На сервере главное — скорость отдачи от Вас клиентам, а также мощность процессора Вашего компьютера. На ADSL максимальная отдача может составлять около 780 Кбит/с — 1 МБит/с (на ADSL с модуляцией AnnexM (такая разновидность встречается крайне редко) — 3 Мбит/с). Если у Вас тариф на 256 КБит/с, то к Вам могут подключиться 6 клиентов. Если 512 — 10-12 клиентов, если 1 Мбит и более (ADSL) — 18 клиентов, кабель без NAT — 23 клиента (максимум для слушающего сервера). В соотвествие с этими параметрами Вы должны настроить значение переменной «Максимальное число игроков» во время создания сервера. Если Ваш канал или процессор не будут выдерживать такое количество подключившихся игроков, у всех появятся лаги.
Настройка и подготовка к запуску.
- Устанавливаем Steam и игру Team Fortress 2 (если они ещё не установлены).
- Запускаем игру, ждём полной загрузки и выходим из неё (это нужно только если выполнялся шаг 1 для создания файлов базовой конфигурации).
- Открываем «Мой компьютер» и переходим в папку «C:\Program Files\Steam\SteamApps\common\team fortress 2\tf\cfg«, где C:\Program Files\Steam\ — путь куда установлен Steam. Если Steam установлен в другую папку или диск, то его нужно откорректировать. В этой папке лежат файлы настроек игры TF2, в том числе и слушающего сервера.
- Качаем и распаковываем архив с файлами конфигурации в эту папку с заменой существующих файлов. Архив обновляется после выхода серьёзных изменений в игре.
- Открываем распакованный файл listenserver.cfg в любом текстовом редакторе (например, в Блокноте Windows) и делаем нужные настройки (меняем имя сервера, настройки и т.п.). В файле я всё подробно описал какая переменная чем управляет, что включает/выключает, поэтому на этом я останавливаться не буду здесь. Внимание! Первым делом задайте пароли вместо !!PASSWORD1!! и !!PASSWORD2!!, иначе Ваш сервер могут взломать.
- Открываем файл config_arena.cfg в том же текстовом редакторе и меняем имя сервера для режима Арена, а также максимальное число пользователей режима Арена.
- Запускаем игру Team Fortress 2, выбираем в главном меню пункт «Создать сервер«. В окрывшемся окне выбираем любую установленную карту, а затем переходим на страницу «Игра» и устанавливаем «Максимальное число игроков» (должно быть целым числом от 2 до 24). Остальные параметры не будут играть никакого значения, т.к. игнорируются файлом конфигурации. Внимание! Не устанавливайте тут пароль, иначе к Вам никто не сможет подключиться. Пароль можно установить уже после запуска игры и подключения первых игроков командой в консоли sv_password «your_pass», где вместо your_pass должна идти комбинация латинских букв и цифр. Этот пароль будет запрашиваться у всех, кто захочет подключиться к серверу.
- После успешного запуска сервера и Вашего подключения к нему, открываем консоль разработки (вызывается клавишей «тильда») и сразу меняем карту на любую из установленных (лучше на текущую, т.к. это ускорит перезагрузку сервера) командой changelevel имя_карты (например, changelevel cp_dustbowl). Это действие применит настройки файла listenserver.cfg. Без этого шага к Вам никто не сможет подключиться (на клиентах будет выдаваться сообщение LAN servers are restricted to local clients). Этот шаг нужно повторять всегда после запуска слушающего сервера!
- Даём свой внешний IP-адрес всем, кто должен к Вам подключиться и они смогут это сделать, набрав у себя в консоли TF2 команду connect IP_вашего_сервера:27015 (например, connect 126.65.110.99:27015). Свой внешний адрес можно узнать тут: http://www.2ip.ru (он определится в строке «Ваш IP-адрес«).
- Если к Вашему серверу кто-нибудь подключился, значит он успешно установлен и настроен. Чтобы отключить сервер, достаточно войти в меню игры TF2 и выбрать пункт «Отключиться«. После этого сервер кикнет всех, кто на нём играл и закончит свою работу.
Переменные, которые можно задавать прямо во время игры.
- sv_alltalk 1 — включение (1) или отключение (0) общего голосового чата.
- tf_weapon_criticals 1 — включение (1) или отключение (0) критов.
- mp_allowspectators 1 — включение (1) или выключение (0) зрителей.
- sv_password «your_pass» — задание пароля, где вместо your_pass должен идти пароль. Кавычки обязательны. Пароль будет запрошен у всех, кто захочет подключиться к Вашему серверу.
- sv_password «» — убирает пароль с сервера. К серверу может подключиться любой желающий.
- mp_friendlyfire 1 — включает (1) или отключает (0) огонь по своим.
- sv_gravity 800 — управляет гравитацией на сервере (800 — стандартное значение), может быть числом от 0 до 10000. Чем меньше значение, тем меньше гравитация.
Внимание! При смене карты все переменные, заданные во время игры, будут автоматически заменены значениями из файла конфигурации сервера!
Итак, Ваш сервер установлен и правильно настроен. Если у Вас возникнут вопросы по статье, то оставляйте комментарии к этому сообщению. Я отвечу на все вопросы. Для того, чтобы оставить свой комментарий, регистрация не требуется.
Читать далее →