In english

harpywar.com

Главная

Вики

Форум

Лаборатория

NFK

PvPGN

Github

 Проекты
   QDoom
   IRC Search
   vbreality [web]
   UTech p2p Realm [web]
   PvPGN система статистики
   Diablo 2 Launcher
   WoW Simple Launcher

 Моё
   Творчество
   Оборудование

 Статьи
   Игры
   Настройка серверов
     PvPGN
     D2GS
     NFS: U
     Apache
     ArcEmu

   Кодинг
     .NET
     PHP

   Разное

Поиск по сайту


Хостинг и VDS, скидка при переходе
 
Crontab - циклический запуск скриптов
Мониторинг игровых серверов через QStat
Вариант установки ОС Windows без CD-ROM
Консольное подключение к Remote Desktop в Windows
Альтернативное «ку»
Как открыть гигабайтный лог
Простое «сжатие» числа
Мониторинг игровых серверов через QStatСоздано: 26.04.2007
Изменено: 27.04.2007
Автор: HarpyWar

QStat - программа для мониторинга игровых серверов.

Ознакомившись с qstatdoc.html, видим, что QStat поддерживает большинство популярных игровых серверов:

    OptionType StringDefault PortGame Server
    -qsqs26000Quake
    -h2sh2s26900Hexen II
    -qwsqws27500QuakeWorld
    -hwshws26950HexenWorld
    -q2sq2s27910Quake II
    -unsuns7777Unreal
    -ut2sut2s7777Unreal Tournament 2003
    -ut2004mut2004m28902Unreal Tournament 2004 Master requires CD Key
    -hlshls27015Half-Life
    -snssns22450Sin
    -sgssgs27888Shogo: Mobile Armor Division
    -tbstbs28001Starsiege: Tribes
    -t2st2s28000Tribes 2
    -qwmqwm27000QuakeWorld master
    -q2mq2m27900Quake II master
    -hlmhlm27010Half-Life master
    -stmstm27010Half-Life master (Steam)
    -tbmtbm28000Tribes master
    -t2mt2m28002Tribes 2 master
    -q3sq3s27960Quake III
    -q3sq3s28960Call of Duty 2
    -q3mq3m27950Quake III master
    -dm3sdm3s27666Doom 3
    -dm3mdm3m27650Doom 3 master
    -bfsbfs44001BFRIS
    -kpskps31510Kingpin
    -hrshrs28910Heretic II
    -sfssfs28910Soldier of Fortune
    -gsmgsm28900Gamespy master
    -gpsgps-Game using "Gamespy style" protocol
    -gpsgs2-Game using "Gamespy2 style" protocol
    -d3md3m3445Descent 3 PXO master
    -d3pd3p2092Descent 3, PXO server
    -d3sd3s2092Descent 3, LAN server
    -d3gd3g20142Descent 3, Gamespy protocol
    -rwsrws27960Return to Castle Wolfestein
    -rwmrwm27950Return to Castle Wolfestein master
    -efsefs27960Star Trek: Elite Force
    -efmefm27953Star Trek: Elite Force master
    -efsefs29070Jedi Knight: Jedi Academy
    -efmefm29060Jedi Knight: Jedi Academy master
    -grsgrs2346Ghost Recon
    -ts2ts28767TeamSpeak


Для начала создадим файл server.lst, где будет находиться список серверов, которые будем мониторить:

qws games.utech.ru:27500
q3s games.utech.ru:27960
q4s games.utech.ru:28004
a2s games.utech.ru:27016
q3s games.utech.ru:28960
ts2,port=8767 voice.teamspeak.org:51234

Обратите внимание на параметры для сервера TeamSpeak.


Теперь создадим запускной файл qstat.bat, в который надо занести

qstat.exe -f server.lst -Ts brocTs.inc -Th brocTh.inc -Tt brocTt.inc -of qservers.php -sort l
    -f server.lst это имя файла со списком серверов
    -of qservers.php имя конечного файла, который собирается из шаблонов
    -sort l означает сортировку по списку (можно по фрагам, ип адресу, пингу - подробнее в qstatdoc.html)

    Сервер-TsШаблон с параметрами для каждого сервера
    Игрок-TpШаблон с параметрами для каждого игрока Используется с ключом -P.
    Правила-TrШаблон с параметрами настроек сервера
    Заголовок-ThСодержимое шаблона будет в начале конечного файла
    Конец-TtСодержимое шаблона будет в конце конечного файла

Теперь достаточно запустить этот bat′ник для формирования конечного файла.

Для циклического запуска скриптов через определенный интервал времени можно использовать crontab.


Примеры PHP шаблонов
    brocTh.inc
    <?php
    brocTs.inc
    $h_host[]="$HOSTNAME";
    $(IF:UP) $h_players[]="$(IFNOT:QWMASTER)$PLAYERS$(ENDIF)"; $(ENDIF)
    $(IF:DOWN) $h_players[]="<font color=#934900>down</font>"; $(ENDIF)
    $(IF:TIMEOUT) $h_players[]="<font color=#CC0000>off</font>"; $(ENDIF)
    $h_max[]="$(IFNOT:QWMASTER)$MAXPLAYERS$(ENDIF)";
    brocTt.inc
    $total="$TOTALPLAYERS";
    $servers="$TOTALUP";
    $version="$QSTATVERSION";
    $update="$NOW";
    ?>

В итоге получаем необходимые массивы и переменные для вставки мониторинга серверов на сайт.

Для создания более расширяемых шаблонов описание содержится в файле qstatdoc.html (на английском).


[AVP] Присоединенные файлы (вирусов нет):

.eif25 Июнь 2009, 06:25 | #217 
я хочу сделать мониторинг сервера(Jedi Knight: Jedi Academy - 89.108.121.27:29070)но я не могу разобраться в этой программе, почему то конечный файл не появляется... помогите кто может

eif17 Июль 2009, 08:55 | #221 
своими стараниями у меня получилось вот http://euphoria.tutsite.net/monitoring.php

eif18 Ноябрь 2010, 12:30 | #296 
http://celitel.zp.ua/files/script.php?ip=86.110.181.156&port=29070&zip=95

sssss10 Июль 2011, 06:18 | #314 
http://manitoring-ccs.ucoz.ru/

Boolinteg04 Август 2011, 16:59 | #320 
А Battlefield 2 можно мониторить?

HarpyWar05 Август 2011, 07:21 | #321 
QStat для BF2 должен работать с кодом "gs3".

Можно мониторить его через GameQ http://gameq.sourceforge.net/, или если нужен отдельный PHP класс http://www.phpclasses.org/package/2405-PHP-Query-information-from-a-Battlefield-2-game-server.html


Есть вопросы по настройке игровых серверов? Добро пожаловать на форум!

Имя: Проверка: = 8770


© 2006—2014, HarpyWar

Любое копирование информации с этого сайта - только со ссылкой на источник.
Это в одинаковой мере распространяется на любую авторскую информацию в интернете.