Перейти в начало страницы

Здравствуйте, гость ( Авторизация | Регистрация )

Gameru.net останавливает работу в связи с вторжением армии РФ в Украину. Следите за дальнейшими анонсами.
Support Gameru!
4 страниц V   1 2 3 > »   
Тема закрытаНачать новую тему
> Мониторинг сервера, Мониторинг PHP WEB
segal
сообщение 04.04.2007, 07:46
Сообщение #1


Почти Игрок
**

Репутация:   9  
Группа: Только зарегистрировался
Сообщений: 28
Регистрация: 15.02.2006




Вставить ник Цитировать выделенное в форуму быстрого ответа


сделал основную работу, а вы уж дизайн сами мастерите...

Код
<?php
$address="localhost";
$port="5447";

$socket = fsockopen(("udp://" . $address),$port,$errno,$errdesc,$maxwait);
$query = "\xFE\xFD\x00\xE5\xA9\x2A\x02\xFF\xFF\xFF\x01";

fwrite($socket,$query);
@socket_set_timeout($socket, 2);
$reply = @fread($socket, 2048);
fclose($socket);
/*
$Infoarray = explode(chr(0), $reply);
echo "<pre>";
print_r($Infoarray);
echo "</pre>";
*/
if($reply != '')
{
    $Infoarray = explode(chr(0), $reply);
    $querysuccess = true;
    $servername = $Infoarray[4];
    $serverversion = $Infoarray[8];
    $numplayers = $Infoarray[10];
    $maxplayers = $Infoarray[12];
    $gametype = $Infoarray[14];
    $players = "
    <td wight=100% nowrap align=center>$Infoarray[74]</td>\n
    <td wight=100% nowrap align=center>$Infoarray[78]</td>\n
    <td wight=100% nowrap align=center>$Infoarray[82]</td>\n
    <td wight=100% nowrap align=center>$Infoarray[86]</td>\n
    <td wight=100% nowrap align=center>$Infoarray[90]</td>\n
    ";
};

echo "
Сервер: $servername<br>
Версия: $serverversion<br>
Сейчас на сервере: $numplayers/$maxplayers<br>
Режим: $gametype<br>
Список игроков:<br>

<table border=0 wight=100 width=100% bgcolor=000000 cellpadding=1 cellspacing=1>\n
    <tr bgcolor=white align=center>\n
 <td wight=100% nowrap>player_</td>\n
 <td wight=100% nowrap>score_</td>\n
 <td wight=100% nowrap>deaths_</td>\n
 <td wight=100% nowrap>skill_</td>\n
 <td wight=100% nowrap>team_</td>\n
    </tr>\n
    <tr bgcolor=white>\n
 $players
    </tr>\n
</table>";
?>
Перейти в начало страницы
 
Mechanic
сообщение 04.04.2007, 07:54
Сообщение #2


Продвинутый геймер
********

Репутация:   242  
Группа: Только зарегистрировался
Сообщений: 448
Награды: 1
Регистрация: 17.07.2004




Вставить ник Цитировать выделенное в форуму быстрого ответа


Гмм...на основе этого можно сделать прожку-пингер спокойно..)
В некоторых мп-играх подобные пакеты сжимаются в бинарку или еще хуже, энкрипт.

+1 в репу.


--------------------
^_^ Core2Duo E8600 3.33, 4GB, Radeon HD4850 ^_^
Перейти в начало страницы
 
segal
сообщение 04.04.2007, 14:51
Сообщение #3


Почти Игрок
**

Репутация:   9  
Группа: Только зарегистрировался
Сообщений: 28
Регистрация: 15.02.2006




Вставить ник Цитировать выделенное в форуму быстрого ответа


подходим, не стесняемся, ставим плюсы biggrin.gif
Перейти в начало страницы
 
Mechanic
сообщение 04.04.2007, 21:17
Сообщение #4


Продвинутый геймер
********

Репутация:   242  
Группа: Только зарегистрировался
Сообщений: 448
Награды: 1
Регистрация: 17.07.2004




Вставить ник Цитировать выделенное в форуму быстрого ответа


segal, можеш повторить этотже трюк, но на делфи?
Я с байтами не возился, незнаю как объеденить в строку их...


--------------------
^_^ Core2Duo E8600 3.33, 4GB, Radeon HD4850 ^_^
Перейти в начало страницы
 
AlexIT
сообщение 04.04.2007, 22:26
Сообщение #5


Новичок
*************

Репутация:   342  
Группа: Участник
Сообщений: 1526
Награды: 2
Регистрация: 12.03.2005




Вставить ник Цитировать выделенное в форуму быстрого ответа


Респект!! Сейчас потестим, сделаю страничку со списком серверов и буду ее пополнять, если кому нужно - дам ссылку.. wink.gif

Was added in 6 minutes 39 seconds:

Мм, что то не пашет ]]>http://stalker.sanfm.ru/]]>
Ты на какой версии PHP его тестил? smile.gif

Сообщение отредактировал AlexIT - 04.04.2007, 22:33
Перейти в начало страницы
 
segal
сообщение 04.04.2007, 22:40
Сообщение #6


Почти Игрок
**

Репутация:   9  
Группа: Только зарегистрировался
Сообщений: 28
Регистрация: 15.02.2006




Вставить ник Цитировать выделенное в форуму быстрого ответа


php 5.1.6
к дельфи близко неподходил, только msvc++
Перейти в начало страницы
 
AlexIT
сообщение 04.04.2007, 22:44
Сообщение #7


Новичок
*************

Репутация:   342  
Группа: Участник
Сообщений: 1526
Награды: 2
Регистрация: 12.03.2005




Вставить ник Цитировать выделенное в форуму быстрого ответа


На 5.1.4 и 4.4.2 не пашет, странно, ошибок никаких не выводит вообще..

Сообщение отредактировал AlexIT - 04.04.2007, 22:45
Перейти в начало страницы
 
Mechanic
сообщение 04.04.2007, 22:55
Сообщение #8


Продвинутый геймер
********

Репутация:   242  
Группа: Только зарегистрировался
Сообщений: 448
Награды: 1
Регистрация: 17.07.2004




Вставить ник Цитировать выделенное в форуму быстрого ответа


segal, Если можно, буду благодарен за примерчик и на msvc, я с ним тоже работал немного.


--------------------
^_^ Core2Duo E8600 3.33, 4GB, Radeon HD4850 ^_^
Перейти в начало страницы
 
KoMMyHuCT
сообщение 04.04.2007, 23:22
Сообщение #9


Геймер
******

Репутация:   18  
Группа: Только зарегистрировался
Сообщений: 126
Награды: 1
Регистрация: 29.03.2006




Вставить ник Цитировать выделенное в форуму быстрого ответа


могу на дельфи забацать


--------------------
КоммунизмЪ - светлое прошлое народа!
Перейти в начало страницы
 
Mechanic
сообщение 05.04.2007, 09:56
Сообщение #10


Продвинутый геймер
********

Репутация:   242  
Группа: Только зарегистрировался
Сообщений: 448
Награды: 1
Регистрация: 17.07.2004




Вставить ник Цитировать выделенное в форуму быстрого ответа


KoMMyHuCT, Отлично, попробуй. smile.gif


--------------------
^_^ Core2Duo E8600 3.33, 4GB, Radeon HD4850 ^_^
Перейти в начало страницы
 
_777_
сообщение 06.04.2007, 14:29
Сообщение #11


Игрок
***

Репутация:   6  
Группа: Участник
Сообщений: 35
Награды: 1
Регистрация: 05.03.2007




Вставить ник Цитировать выделенное в форуму быстрого ответа


спасибо за инфу
]]>вот]]> наваял прогу проверки сервера и подключения по лану
Перейти в начало страницы
 
Mechanic
сообщение 06.04.2007, 14:37
Сообщение #12


Продвинутый геймер
********

Репутация:   242  
Группа: Только зарегистрировался
Сообщений: 448
Награды: 1
Регистрация: 17.07.2004




Вставить ник Цитировать выделенное в форуму быстрого ответа


Хотелось-бы увидеть кишки, и метод работы с пакетами.


--------------------
^_^ Core2Duo E8600 3.33, 4GB, Radeon HD4850 ^_^
Перейти в начало страницы
 
destiny
сообщение 09.04.2007, 08:24
Сообщение #13




Репутация:   3  
Группа: Только зарегистрировался
Сообщений: 2
Регистрация: 26.03.2007




Вставить ник Цитировать выделенное в форуму быстрого ответа


Код
<?php
//settings
define("STSERVER","83.172.18.162");
define("STPORT","5447");
?>
<html>
<head>
<title>Stalker Server Monitor v0.6b</title>
</head>
<body>
<h1 align=center>Stalker Server Monitor</h1>
<h3 align=center><?=STSERVER.':'.STPORT ?></h3>
<table width=40% align=center>
<tr><td aling=center><b>Players</b></td><td align=center><b>Map</b></td><td align=center><b>Gametype</b></td></tr>
<?php
/*
here will be cash check
*/
//
$fp = @fsockopen("udp://".STSERVER, STPORT, $errno, $errstr, 1);
if (!$fp) {
echo"Can't connect to server (".STSERVER.":".STPORT.")";die;
}
fputs($fp,"\xFE\xFD\x00\xFB\xD8\x07\x01\xFF\xFF\xFF");
@socket_set_timeout($socket, 2);
$buffer = trim(fread($fp, 2048));
fclose($fp);
//
$ssquery = explode("\x00",$buffer);
$mpl=$ssquery[9]; $npl=$ssquery[7];
$mapn=$ssquery[3]; $hostn=$ssquery[1];
$gtype=$ssquery[11];
$ssquery=str_replace("\x00","|",$buffer);
$ssquery=explode("artefacts_",$ssquery);
$scores=$ssquery[1]; $ssquery=explode("||",$scores);
$teamscores=$ssquery[count($ssquery)-1];
unset($ssquery[count($ssquery)-1]); unset($ssquery[count($ssquery)-1]);
//
echo'<tr><td aling=center>'.$npl.'/'.$mpl.'</td><td align=center>'.$mapn.'</td><td align=center>'.$gtype.'</td></tr>';
echo'</table><table width=60% align=center>';
#echo'<tr><td colspan=4 align=center><h5>PLAYERS LIST</h5></td></tr>';
echo'<tr><td align=center><b>Name</b></td><td align=center><b>Score</b></td><td align=center><b>Deaths</b></td><td align=center><b>Skill</b></td><td align=center><b>Team</b></td></tr>';
foreach ($ssquery as $keys=>$player) {
if($keys=="0"){
continue;
}
$player = explode('|',$player);
if($player[4]=="1"){$player[4]="Freedom";}
if($player[4]=="2"){$player[4]="Mercs";}
if($player[5]=="1"){$player[4]="Spectator";}
?>
<tr><td align=center><?=$player[0]?></td><td align=center><?=$player[1]?></td><td align=center><?=$player[2]?></td><td align=center><?=$player[3]?></td><td align=center><?=$player[4]?></td></tr>
<?php } ?>
</table>
<h5 align=center>by Drake 2007 Tomsk</h5>
</body>
</html>

Мой вариант. Идея с разбиением по нулевому символу взята у segala, остальное все свое. Работает без сбоев при teamdeathmatch. На остальных не тестировалась.
Перейти в начало страницы
 
Shot
сообщение 09.04.2007, 09:20
Сообщение #14


Почти Мастер
***********

Репутация:   316  
Группа: Участник
Сообщений: 1136
Награды: 3
Регистрация: 23.11.2005




Вставить ник Цитировать выделенное в форуму быстрого ответа


Молодцы, а текущию карту он не показывает?
Перейти в начало страницы
 
destiny
сообщение 09.04.2007, 10:19
Сообщение #15




Репутация:   3  
Группа: Только зарегистрировался
Сообщений: 2
Регистрация: 26.03.2007




Вставить ник Цитировать выделенное в форуму быстрого ответа


Показывает. Счас работаю над новой версией с поддержкой дезматча и кеширования.
Перейти в начало страницы
 
BoGuS
сообщение 09.04.2007, 12:05
Сообщение #16


Опытный Игрок
****

Репутация:   14  
Группа: Только зарегистрировался
Сообщений: 63
Регистрация: 25.02.2007




Вставить ник Цитировать выделенное в форуму быстрого ответа


Вот моя версия программки на делфи... ]]>http://www.filekeeper.org/download/a188-bo...ogus/st_mon.exe]]> это пока только наброски, планирую сделать что-то наподобие HLSW, ноб разумееться многих фич там небудет т.к. в сталкере много чего нету...
Перейти в начало страницы
 
BoGuS
сообщение 09.04.2007, 13:54
Сообщение #17


Опытный Игрок
****

Репутация:   14  
Группа: Только зарегистрировался
Сообщений: 63
Регистрация: 25.02.2007




Вставить ник Цитировать выделенное в форуму быстрого ответа


Вот немного доделал программку... ]]>http://www.filekeeper.org/download/a188-bo...ogus/st_mon.rar]]> но есть 2 недоработки:
1) Нельзя получить инфу 2й раз или инфу с другого сервера
2) Нельзя подключиться к серверу с программы, он просто запускает игру...
Перейти в начало страницы
 
AlexIT
сообщение 09.04.2007, 15:16
Сообщение #18


Новичок
*************

Репутация:   342  
Группа: Участник
Сообщений: 1526
Награды: 2
Регистрация: 12.03.2005




Вставить ник Цитировать выделенное в форуму быстрого ответа


Народ, а кто то php скрипт тестил, как у вас - работает?
Перейти в начало страницы
 
BoGuS
сообщение 09.04.2007, 16:35
Сообщение #19


Опытный Игрок
****

Репутация:   14  
Группа: Только зарегистрировался
Сообщений: 63
Регистрация: 25.02.2007




Вставить ник Цитировать выделенное в форуму быстрого ответа


Я тестил, работает нормально.
Перейти в начало страницы
 
BoGuS
сообщение 09.04.2007, 18:33
Сообщение #20


Опытный Игрок
****

Репутация:   14  
Группа: Только зарегистрировался
Сообщений: 63
Регистрация: 25.02.2007




Вставить ник Цитировать выделенное в форуму быстрого ответа


Жаль что тут нельзя редактировать свои посты sad.gif программа теперь нормально запускает сталкера + нету начальных заставок при запуске. ]]>http://www.filekeeper.org/download/a188-bo...ogus/st_mon.rar]]>
Перейти в начало страницы
 

4 страниц V   1 2 3 > » 
Тема закрытаНачать новую тему
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 



Текстовая версия Сейчас: 19.04.2024, 10:28