В данном HOWTO я расскажу как активировать настроить функцию Replay на выделенном сервере TF2. Возможно два сценария:
- веб-сервер находится на той же машине, что и игровой сервер TF2;
- веб-сервер находится на другой машине.
Наличие веб-сервера обязательно, т.к. с него клиенты будут скачивать записанные сервером демки. Сервер должен отдавать файлы напрямую без редиректов, поэтому бесплатные не подойдут для этой цели.
Подробности читайте под катом.
Настройка по сценарию 1
Если веб-сервер находится на той же машине, что и игровой сервер TF2 пропишите в конфиг сервера server.cfg следующие строки с нужными параметрами:
replay_fileserver_host "HTTP_HOST_OR_IP_ADDRESS"
replay_fileserver_port "80"
replay_fileserver_path "/replays"
replay_local_fileserver_path "ЛОКАЛЬНЫЙ_ПУТЬ_К_КАТАЛОГУ/replays"
replay_enable 1
replay_port 27040
Наибольшую сложность здесь представляет правильно записать хост веб-сервера. Например, у Вас есть сайт http://site.ru, на котором Вы будете размещать демки в каталоге /replays, т.е. URL вида http://site.ru/replays/. Согласно этому примеру, в конфиге сервера Вы должны записать (закрывающие слэши и указание протокола не требуется):
replay_fileserver_host "site.ru"
replay_fileserver_path "/replays"
В переменной replay_local_fileserver_path нужно указать ЛОКАЛЬНЫЙ путь к каталогу с повторами (реплеями) локального веб-сервера. Для Windows – это путь вида " C:\webserver\htdocs\replays", для Linux – “/home/username/public_html/replays” (закрывающий слэш не требуется). В этом каталоге сервер TF2 будет хранить реплеи, которые будут раздаваться клиентам с помощью веб-сервера. Обратите внимание на слэши: в Windows используются обратные (\), а в Linux – прямые ( /).
В переменной replay_port нужно указать порт, который будет слушать сервер повторов. Заранее проверьте, чтобы указанный порт был свободен любым сканером портов.
Настройка по сценарию 2 (с использованием FTP)
Если веб-сервер и игровой сервер TF2 находятся на разных машинах, Вам потребуется веб-сервер и FTP.
Если у Вас нет веб-сервера, а сервер TF2 расположен на хостинге, купите домен и любой платный хостинг, затем создайте на нём каталог /replays и создайте FTP-аккаунт с помощью панели управления хостинга с рабочей папкой /replays. Это избавит Вас от большого количества проблем.
Итак, пропишите в конфиг сервера server.cfg следующее (естественно в модифицированном под Вашу конкретную систему варианте):
replay_fileserver_host "HTTP_HOST_OR_IP_ADDRESS"
replay_fileserver_port "80"
replay_fileserver_path "/replays"
replay_enable 1
replay_port 27040
replay_fileserver_offload_enable 1
replay_fileserver_offload_hostname "IP_OR_HOSTNAME"
replay_fileserver_offload_login "LOGIN"
replay_fileserver_offload_password "PASSWORD"
replay_fileserver_offload_protocol ftp
replay_fileserver_offload_port 21
replay_fileserver_offload_remotepath /
Рассмотрим данные настройки более подробно.
В replay_fileserver_host и replay_fileserver_path укажите настройки веб-сервера (см. сценарий 1 выше): хост и путь к каталогу с реплеями на сервере.
В переменной replay_fileserver_offload_hostname укажите IP или имя хоста FTP-сервера, на который будут выгружать демки и реплеи, в replay_fileserver_offload_login и replay_fileserver_offload_password соответственно логин и пароль для доступа к этому FTP-серверу.
Если Вы не задали рабочим каталогом по умолчанию в профиле FTP каталог с реплеями и хотите использовать общий FTP-аккаунт, в replay_fileserver_offload_remotepath укажите путь к каталогу с реплеями на FTP-сервере. Этого делать настоятельно не рекомендуется из соображений безопасности (создайте отдельный FTP-аккаунт для выгрузки).
Заключение
Если Ваш сервер TF2 размещён на хостинге, при включении функции Replay, он может начать работать нестабильно и лагать. В случае появления лагов, отключите данную функцию, установив значение переменной replay_enable в 0.