Что
такое HLTV?
HLTV
— это возможность просмотра игры в режиме On-line очень
большим числом зрителей одновременно. Присоединившись
к серверу HLTV, вы можете наблюдать за игрой, как будто
вы находитесь непосредственно на игровом сервере. Игроки
не видят зрителей и не могут с ними взаимодействовать.
Сами же зрители могут общаться между собой по ходу матча.
HLTV
поддерживает все наиболее популярные моды Half-Life
такие как: Counter-Strike, Team Fortress Classic, Day
of Defeat и многие другие. Сама система HLTV позволяет
контролировать максимальное количество возможных зрителей,
трафик до клиента, может выводить сообщения на экран
(например, рекламу) или какой-либо логотип. По умолчанию
HLTV транслирует игру с задержкой 30 секунд (параметр
настраивается) для исключения возможности читерства
(передачи информации от зрителей игрокам).
Чтобы
транслировать игру для 100 зрителей не требуется никаких
дополнительных настроек. Все прекрасно работает с параметрами
по умолчанию. Если планируется обеспечить просмотр для
нескольких тысяч зрителей, то здесь уже необходимо рассчитывать
ширину канала, а также учитывать мощность CPU и количество
RAM.
Просмотр игр On-line через HLTV
Запустите
Half-Life/CS, зайдите в меню Find Servers, выберите
Spectate и нажмите Refresh All.
Если
вы точно знаете адрес HLTV-сервера, с которого будет
транслироваться игра, то можете открыть консоль и набрать
в ней: connect IP:27020, где вместо IP — IP-адрес HLTV
сервера (например, 195.201.33.14). По умолчанию HLTV
использует порт 27020, который необходимо указать при
присоединении. Но порт HLTV-сервера может быть и изменен
параметром –port. Тогда при присоединении нужно будет
указать другой порт.
HLTV и игровой сервер
HLTV
(HLTV Proxy) по сути мало чем отличается от выделенного
сервера. Для предоставления зрителям возможности следить
за игрой необходимо запустить HLTV.EXE и присоединить
его к игровому серверу (connect IP:port, если port по
умолчанию 27015, то его можно не писать).
Теоретически,
один HLTV Proxy сервер может дать 255 зрительских мест.
Однако будьте осторожны и учитывайте возможности вашей
техники и ширину канала! Ведь даже прокси со 100 зрителями
потребляет канал в 2 Mbit (по 2-3 Кб на каждого зрителя)
и при этом игра еще идет плавно. Если необходимо более
100 зрителей, то следует организовывать несколько HLTV
Proxy.
Сервер
HLTV, который первым приcоединен к игровому серверу,
называется Master, а все остальные, присоединенные к
Мастеру, называются Relay. Relay Proxy могут образовывать
цепь или дерево серверов. Главное, следить, чтобы они
использовали разные каналы (сети) для обеспечения необходимой
пропускной способности.
- ISDN 64 Kbps : 2 зрителя
- DSL 128 Kbps (upstream) : 5 зрителей
- T1 1.5 Mbps : 75 зрителей
- LAN 10 Mbps : 500 зрителей
- T3 75 Mbps : 4000 зрителей
maxclients — максимальное количество зрителей
maxrate — должно быть примерно 3500 kB/sec
chatmode 0 — сбережет часть ширины канала
updaterate 10 — сбережет часть ширины канала (умолч.:
20)
Запись
HLTV демок
HLTV-демки
— это почти обычные демки, только с бОльшими возможностями:
вы можете следить за действиями любого игрока в отдельности,
можете просто летать по карте как зритель, а можете
наблюдать за тактикой команд на виде сверху.
Запись
HLTV-демки: record 123
Просмотр
HLTV-демки: playdemo 123
Или просмотр еще: viewdemo 123 (больше функций по управлению)
Во
всех приведенных примерах 123 — имя демо-файла, находящегося
в дирректории Cstrike.
Только запись демок без зрителей
Если
вам необходимо ТОЛЬКО записать демку, а зрительские
места не нужны, то рекомендуется внести следующие настройки
для оптимальной записи демки:
maxclients
0 // запрещает вход зрителям
delay 0 // запись без задержки
rate 10000 // максимальная скорость передачи данных
updaterate 20 // стандартная частота обновления данных
nomaster 1 // не регистрироваться на Мастер серверах
Все команды HLTV
connect
IP:port - присоединить HLTV proxy к игровому серверу
disconnect - отсоединить, но зрители остаются
stop [text] - отсоединить, прервать запись демо, сообщение
(опция)
quit - завершение HLTV как процесса
retry - попытка переподсоединения
autoretry 0|1 - авто retry
name text - имя HLTV proxy в таблице фрагов
hostname text - имя HLTV сервера для зрителей
serverpassword
text - пароль на сервер
adminpassword text - пароль на RCON и комментатора
proxypassword text - пароль на другие Relay proxy
spectatorpassword text - пароль для зрителей
clients
- список подключенных клиентов
proxies - список Relay proxy
players - список игроков на игровом сервере
kick ID - выкинуть зрителя
bann IP - забанить IP-адрес
clearbanns - РАЗбанить все баны
say text - послать сообщение игрокам на сервере
msg text [(duration) (pos x) (pos y) (color hex rgba)]
- посылает сообщение всем зрителям
localmsg text [(duration) (pos x) (pos y) (color hex
rgba)] - то же, что и выше, но только локальным зрителям
servercmd
string - отослать команду на игровой сервер
clientcmd group string - отослать команду всем клиентам
группы: 1=зрители, 2=прокси, 3=всем
loopcmd
id n string - запуск string каждые n секунд. id - это
номер от 1 до 64. "loopcmd id none" - уберет
повторение.
signoncommands
string - команда, которая запустится у локального зрителя
сразу после коннекта, можно несколько команд через ;
maxclients
n - максимальное количество зрителей (умолч.: 128)
delay n - задержка по времени при просмотре игры. Все,
что меньше 10 удалит функцию авто-режисера.
rate n - ширина канала от игрового сервера до HLTV
updaterate n - обновления об игре с сервера на HLTV
maxrate n - максимальная ширина канала для зрителей
maxloss f - допускаемый уровень потерь 0.05 (5%). Если
потери выше, новые зрители не будут допущены.
maxqueries
n - максимальное число запросов статуса от браузеров
dispatchmode
0|1|2 - 1 (авто) перенаправит зрителя на другой прокси
для сохранения балланса. 2 (всегда) перенаправит зрителя
в любом случае (сервер работает как расфасовщик зрителей).
0 (выкл)
publicgame
0|1 - если 1, IP игрового сервера будет виден зрителям
и можно будет присоединиться к игре.
offlinetext string - текст, видимый клиентами, которые
не смогли зайти
chatmode 0|1|2 - 0 нет чата. 1 - чат между зрителями
одного прокси. 2 - все могут разговаривать (тогда везде
должно стоять 2)
bannerfile
file - указывает TGA файл (RGBA) в качестве логотипа.
ping
host:port - пингует HL сервер
nomaster 0|1 - если 1, то прокси не будут регистрироваться
на Мастере
forcemaster 0|1 - если 1, прокси будут регистрироваться
на Мастере
heartbeat - высылает данные о статусе на Мастер сервер
region n - регион, где находится HLTV сервер
rcon
string - посылает команду на удаленные сервера
rconaddress IP:Port - устанавливает адрес удаленного
хоста
rconpassword string - пароль для удаленного хоста
cheeringthreshold
f - число игроков для проигрывания звука аплодисментов
(умолч.: 0.25).
blockvoice
0|1 - запрещает/разрешает комментирование
cmdlist
- показывает все возможные команды HLTV
logfile 0|1 - вкл/выкл лог консоли
status - показывает статус прокси
modules - показывает все загруженные HLTV модули и версии
exec filename - запускает .cfg файл
echo string - выводит текст в консольное окно HLTV
developer 0|1 - дополнительные сообщения
record
filename - запись всех последующих игр
stoprecording - стоп записи демки
playdemo filename - начало трансляции демо-файла
Консоль позволяет заканчивать команды нажатием 'TAB'.
Все команды в "hltv.cfg" выполняются в процессе
запуска HLTV.
Параметры,
задаваемые только из командной строки:
-port
n - устанавливает порт HLTV proxy отличный от 27020
-ip IP - заставляет прокси использовать этот IP на хосте
с несколькими IP
-comm filename - устанавливает инфо файл о Мастере отличный
от woncomm.lst
-nodns - запрещает выдачу DNS имен (полезно для LAN
проксей)
-maxfps n - максимальное число циклов в секунду (умолч.:
100)
-highpriority - стартует HLTV с высоким приоритетом
-steam - прокси с поддержкой STEAM
-dev - режим разработчика
|