QStat - программа для мониторинга игровых серверов.
Ознакомившись с qstatdoc.html, видим, что QStat поддерживает большинство популярных игровых серверов:
Option | Type String | Default Port | Game Server
|
---|
-qs | qs | 26000 | Quake
| -h2s | h2s | 26900 | Hexen II
| -qws | qws | 27500 | QuakeWorld
| -hws | hws | 26950 | HexenWorld
| -q2s | q2s | 27910 | Quake II
| -uns | uns | 7777 | Unreal
| -ut2s | ut2s | 7777 | Unreal Tournament 2003
| -ut2004m | ut2004m | 28902 | Unreal Tournament 2004 Master requires CD Key
| -hls | hls | 27015 | Half-Life
| -sns | sns | 22450 | Sin
| -sgs | sgs | 27888 | Shogo: Mobile Armor Division
| -tbs | tbs | 28001 | Starsiege: Tribes
| -t2s | t2s | 28000 | Tribes 2
| -qwm | qwm | 27000 | QuakeWorld master
| -q2m | q2m | 27900 | Quake II master
| -hlm | hlm | 27010 | Half-Life master
| -stm | stm | 27010 | Half-Life master (Steam)
| -tbm | tbm | 28000 | Tribes master
| -t2m | t2m | 28002 | Tribes 2 master
| -q3s | q3s | 27960 | Quake III
| -q3s | q3s | 28960 | Call of Duty 2
| -q3m | q3m | 27950 | Quake III master
| -dm3s | dm3s | 27666 | Doom 3
| -dm3m | dm3m | 27650 | Doom 3 master
| -bfs | bfs | 44001 | BFRIS
| -kps | kps | 31510 | Kingpin
| -hrs | hrs | 28910 | Heretic II
| -sfs | sfs | 28910 | Soldier of Fortune
| -gsm | gsm | 28900 | Gamespy master
| -gps | gps | - | Game using "Gamespy style" protocol
| -gps | gs2 | - | Game using "Gamespy2 style" protocol
| -d3m | d3m | 3445 | Descent 3 PXO master
| -d3p | d3p | 2092 | Descent 3, PXO server
| -d3s | d3s | 2092 | Descent 3, LAN server
| -d3g | d3g | 20142 | Descent 3, Gamespy protocol
| -rws | rws | 27960 | Return to Castle Wolfestein
| -rwm | rwm | 27950 | Return to Castle Wolfestein master
| -efs | efs | 27960 | Star Trek: Elite Force
| -efm | efm | 27953 | Star Trek: Elite Force master
| -efs | efs | 29070 | Jedi Knight: Jedi Academy
| -efm | efm | 29060 | Jedi Knight: Jedi Academy master
| -grs | grs | 2346 | Ghost Recon
| -ts2 | ts2 | 8767 | TeamSpeak
|
Для начала создадим файл 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 шаблонов
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)";
В итоге получаем необходимые массивы и переменные для вставки мониторинга серверов на сайт.
Для создания более расширяемых шаблонов описание содержится в файле qstatdoc.html (на английском).
Присоединенные файлы (вирусов нет):
|