[PHP] Мониторинг игровых серверов
Пользователи, просматривающие топик: none
|
Зашли как: Guest
|
Имя |
Сообщение |
<< Старые топики Новые топики >> |
|
|
[PHP] Мониторинг игровых серверов - 2010-01-24 15:56:30.700000
|
|
|
oRb
Сообщений: 4044
Оценки: 597
Присоединился: 2007-03-28 18:45:06.630000
|
Набор классов для мониторинга игровых серверов. Поддерживаемые игры: Counter-Strike 1.6 (48, 47, dproto) Counter-Strike: Source Counter-Strike: Condition Zero Day of Defeat Day of Defeat Source Half Life (1, 2) Garry's Mod Team Fortress (1, 2) Zombie Panic Quake (2, 3) Скрипт должен работать со всеми играми на движках Source, GoldSource, Tech 2, Tech 3. Так же есть класс для RCON'a серверов CS 1.6. Скачать: http://narod.ru/disk/20398828000/monitoring.zip.html ps: 1. на юкозе и подобных системах нет поддержки php скриптов. Мониторинг там работать не будет! 2. Для серваков на движке сурс может понадобиться библиотека bzip2. 3. PHP 5 4. Помощь в установке и настройке не осуществляю.
|
|
|
RE: [PHP] Мониторинг игровых серверов - 2010-01-24 19:45:08.220000
|
|
|
va5il
Сообщений: 1
Оценки: 0
Присоединился: 2010-01-21 18:52:28.913333
|
О… е… Спасибо ;)
|
|
|
RE: [PHP] Мониторинг игровых серверов - 2010-02-15 19:41:48.256666
|
|
|
LudV1X
Сообщений: 2
Оценки: 0
Присоединился: 2009-12-02 19:43:23.573333
|
я переделал ваш класс для учета пинга на сервере и добавил свой таймаут при соединении функция conect в ServerQueries.php quote:
public function connect($address, $port) { self::disconnect(); $this->port = (int)$port; $this->ip = @gethostbyname($address); //My global $timeout; ///// if($this->resource = @fsockopen('udp://' . $this->ip, $this->port, $errno, $errstr, 1 ) ) { $this->connected = true; stream_set_timeout($this->resource, 0, $timeout); } return $this->connected; } функция getInfo в SourceServerQueries.php quote:
public function getInfo() { if( !$this->connected ) return false; $return = array(); //My $this->timeStart = $this->getmicrotime(); //==== $this->send("\xFF\xFF\xFF\xFFTSource Engine Query\x00"); if($tmp = $this->read(true)) { //My $return['ping'] = (int)(($this->getmicrotime() - $this->timeStart)*1000); //==== и т.д. quote:
public function getmicrotime() { list($usec, $sec) = explode(" ", microtime()); return ((float)$usec + (float)$sec); } в результате у меня выдает пинг по 400 хотя при пинговке из командной строки выдает 45-55 $timeout был 350 000 затем поставил $timeout 100 000 - выдает 140 а в коммандной строке все те же 45-55 НЕ пойму в чем дело. в предыдущей версси, которую вы выкладыали я делал схожим образом все было норм. Подскажите пожйлуста. Я думаю что все дело в protected function read($many_packets = false) . ЛИБО Я СИЛЬНО ТУПЛЮ. Заранее благодарен.
|
|
|
RE: [PHP] Мониторинг игровых серверов - 2010-02-15 21:53:32.583333
|
|
|
LudV1X
Сообщений: 2
Оценки: 0
Присоединился: 2009-12-02 19:43:23.573333
|
исправил, но так и не понял в чем ошибка. Заменил quote:
//My $this->timeStart = $this->getmicrotime(); //==== $this->send("\xFF\xFF\xFF\xFFTSource Engine Query\x00"); if($tmp = $this->read(true)) { //My $return['ping'] = (int)(($this->getmicrotime() - $this->timeStart)*1000); //==== и т.д. на quote:
$this->timeStart=$this->getmicrotime(); fwrite( $this->resource, "\xFF\xFF\xFF\xFFTSource Engine Query\0" ); fread( $this->resource, 4 ); $status = socket_get_status( $this->resource ); if( $status['unread_bytes'] > 0 ) { $this->raw = fread( $this->resource, $status['unread_bytes'] ); $return['ping'] = (int)(($this->getmicrotime() - $this->timeStart)*1000); $tmp = $this->getByte(); пинги прошли
|
|
|
RE: [PHP] Мониторинг игровых серверов - 2010-02-15 22:11:37.443333
|
|
|
oRb
Сообщений: 4044
Оценки: 597
Присоединился: 2007-03-28 18:45:06.630000
|
Там будет задержка из мультипротокола. Тк обычные сервера посылают только 1 ответ, мультипротокольные серваки отсылают целых 3! Поэтому я решил считывать информацию из сокета до истечения таймаута. Из-за этого и получается польшой пинг. Если вы не используете мультипротокол или не собираетесь посылать еще запросы к серверу, тогда просто замените if($tmp = $this->read(true)) { на if($tmp = $this->read()) {
|
|
|
RE: [PHP] Мониторинг игровых серверов - 2010-02-16 00:08:37.483333
|
|
|
Agent Smith
Сообщений: 976
Оценки: 0
Присоединился: 2007-04-10 21:56:49.593333
|
http://forum.xakep.ru/m_1470939/mpage_1/key_%d0%bc%d0%be%d0%bd%d0%b8%d1%82%d0%be%d1%80%d0%b8%d0%bd%d0%b3%d0%b0/tm.htm#1471237 :)
|
|
|
RE: [PHP] Мониторинг игровых серверов - 2010-03-02 22:32:10.396666
|
|
|
RFXX
Сообщений: 5
Оценки: 0
Присоединился: 2010-03-02 22:26:25.860000
|
Можно как-то получить террористов, контров и спектатров которые находятся на сервере?
|
|
|
RE: [PHP] Мониторинг игровых серверов - 2010-03-03 09:39:00.386666
|
|
|
oRb
Сообщений: 4044
Оценки: 597
Присоединился: 2007-03-28 18:45:06.630000
|
нет.
|
|
|
RE: [PHP] Мониторинг игровых серверов - 2010-03-03 10:48:44.036666
|
|
|
AdReNaL1Ne
Сообщений: 8027
Оценки: 350
Присоединился: 2005-09-11 06:38:05
|
Этим скриптом - нет, нужен бот, который будет висеть на сервере
|
|
|
RE: [PHP] Мониторинг игровых серверов - 2010-03-04 07:17:06.106666
|
|
|
RFXX
Сообщений: 5
Оценки: 0
Присоединился: 2010-03-02 22:26:25.860000
|
А можно еще получить текущий пинг игрока и количество смертей? Или для этого тоже бот нужен?
|
|
|
RE: [PHP] Мониторинг игровых серверов - 2010-03-04 11:03:51.916666
|
|
|
oRb
Сообщений: 4044
Оценки: 597
Присоединился: 2007-03-28 18:45:06.630000
|
Пинг можно получить через команду status, используя rcon.
|
|
|
RE: [PHP] Мониторинг игровых серверов - 2010-03-04 16:36:00.046666
|
|
|
RFXX
Сообщений: 5
Оценки: 0
Присоединился: 2010-03-02 22:26:25.860000
|
Так для команды status вроде ркон не нужен. Можете сделать если не затруднит, сделал бы сам, но в пхп несилен. fwrite( $this->resource, "\xFF\xFF\xFF\xFFTSource Engine Query\0" ); Если я правильно понял, то здесь мы отправляем запрос серверу, а через fread получаем ответ сервера, не могу понять что мы отправляем серверу - "\xFF\xFF\xFF\xFFTSource Engine Query\0" Разъясните пожалуйста, может и сам смогу сделать)
|
|
|
RE: [PHP] Мониторинг игровых серверов - 2010-03-04 17:35:47.613333
|
|
|
oRb
Сообщений: 4044
Оценки: 597
Присоединился: 2007-03-28 18:45:06.630000
|
http://developer.valvesoftware.com/wiki/Server_queries
|
|
|
RE: [PHP] Мониторинг игровых серверов - 2010-03-04 17:53:48.306666
|
|
|
RFXX
Сообщений: 5
Оценки: 0
Присоединился: 2010-03-02 22:26:25.860000
|
Не доглядел, нашел как получить через rcon). Без ркона я так понимаю никак?
|
|
|
RE: [PHP] Мониторинг игровых серверов - 2010-03-04 22:00:44.770000
|
|
|
AdReNaL1Ne
Сообщений: 8027
Оценки: 350
Присоединился: 2005-09-11 06:38:05
|
Да почему никак-то? Ты же в кс когда пишешь status в консоле, у тебя норм отображается статистика
|
|
|
RE: [PHP] Мониторинг игровых серверов - 2010-03-05 10:32:25.823333
|
|
|
RFXX
Сообщений: 5
Оценки: 0
Присоединился: 2010-03-02 22:26:25.860000
|
Значит можно). Помогите переделать, я пробывал, в функции connect убирал 3 параметр - пароль, изменял пакет, но что-то не получилось <?php
class cstrikeRcon extends ServerQueries{
protected $password;
protected $challenge_number;
final public function connect($address, $port, $password) {
$this->password = $password;
return parent::connect($address, $port);
}
public function command($command) {
if(!$this->connected)
return false;
if(empty($this->challenge_number))
$this->challenge_number = $this->getChallenge();
$packet = "\xff\xff\xff\xffrcon " . $this->challenge_number
. " \"" . $this->password . "\" " . $command . "\n";
$this->send($packet);
$this->read(true);
$this->raw = str_replace("\xFF\xFF\xFF\xFF\x6c", '', $this->raw);
$this->getByte();
return $this->raw;
}
private function getChallenge() {
if( !$this->connected )
return false;
$this->send("\xff\xff\xff\xffchallenge rcon\n");
$this->read();
$return = explode(' ', $this->raw);
return trim($return[2]);
}
protected function read($many_packets = false) {
if($many_packets) {
parent::read(true);
$this->getLong();
} else {
parent::read();
if($this->getLong() == -2) {
$requestId = $this->getLong();
$pacets = $this->getByte();
$tmp = $this->getLong();
if($requestId < 0) {
$this->getLong();
$this->getByte();
$this->raw = substr(bzdecompress($this->raw), 4);
} elseif(($tmp < 0) && (substr($this->raw, 0, 3) == "\xFF\xFF\xFF"))
$this->raw = substr($this->raw, 3);
$tmp = $this->raw;
for ($i = 1; $i < $pacets; $i++) {
parent::read();
$this->raw = $tmp . substr($this->raw, 9);
$tmp = $this->raw;
}
}
}
return true;
}
}
?>
|
|
|
RE: [PHP] Мониторинг игровых серверов - 2010-05-04 16:14:20.413333
|
|
|
rbt2008
Сообщений: 1
Оценки: 0
Присоединился: 2010-05-04 16:12:26.260000
|
А можно перезалить скрипты, по ссылке http://www.x2b.ru/get/72368 ничего не находит.
|
|
|
RE: [PHP] Мониторинг игровых серверов - 2010-05-04 20:53:26.263333
|
|
|
oRb
Сообщений: 4044
Оценки: 597
Присоединился: 2007-03-28 18:45:06.630000
|
обновил первый пост
|
|
|
RE: [PHP] Мониторинг игровых серверов - 2010-05-08 23:44:15.636666
|
|
|
john smith2
Сообщений: 6
Оценки: 0
Присоединился: 2010-05-08 23:28:48.293333
|
Орб, подскажи такую штуку. Юзаю вот такой кусок скрипта:
$server="91.211.116.10"; //сдесь ip сервера
$qw=chr(32);
$fp = fsockopen ("udp://".$server,27017, $errno, $errstr);
if (!$fp) {
echo "ERROR: $errno - $errstr<br>\n";
} else {
fwrite($fp,"\xFF\xFF\xFF\xFFTSource Engine Query\0");
stream_set_timeout($fp,6);
$st=fread($fp,1);
$r=socket_get_status($fp);
$r=$r["unread_bytes"];
$st.=fread($fp,$r); В итоге получаю string(98) "����m127.0.0.1:27016�NoN-STOP Server�aim_aggro�cstrike�Counter-Strike�/dw��������������" 14 это если скрипт запускаю на хостинге. Если же на локалке (Апач 2.2 + пхп 5 свежие), то такое: string(117) "����m127.0.0.1:27016\0NoN-STOP Server\0aim_aggro\0cstrike\0Counter-Strike\0/dw\0\0\0\0\0\0\0\0\0\0\0\0\0\0" 48 как видишь - разная длина строки. изза чего это? распарсить не получается изза этого. Кодировка файла утф. Настройки как у хостера.
|
|
|
RE: [PHP] Мониторинг игровых серверов - 2010-05-09 09:38:17.406666
|
|
|
oRb
Сообщений: 4044
Оценки: 597
Присоединился: 2007-03-28 18:45:06.630000
|
Выполните var_dump(ini_get('mbstring.func_overload')); на обоих серверах. Если где-то будет не ноль, тогда надо будет поменять эту настройку в конфиге.
|
|
|
RE: [PHP] Мониторинг игровых серверов - 2010-05-09 09:47:11.600000
|
|
|
john smith2
Сообщений: 6
Оценки: 0
Присоединился: 2010-05-08 23:28:48.293333
|
string(1) "0" возвращает и хостер, и локалный. Хотя библиотека mbstring и там и там включена. В этом проблема? Просто должно же быть какоето однообразие - или и там и там не работает (раз оба ноль возвращают) или и там и там пашет.
|
|
|
RE: [PHP] Мониторинг игровых серверов - 2010-05-09 15:02:13.150000
|
|
|
oRb
Сообщений: 4044
Оценки: 597
Присоединился: 2007-03-28 18:45:06.630000
|
Кстати, в вашем первом посте вывод не соответствует коду. Только что пришло в голову: у вас локале похоже включено magic_quotes_runtime.
|
|
|
RE: [PHP] Мониторинг игровых серверов - 2010-05-09 20:26:16.320000
|
|
|
john smith2
Сообщений: 6
Оценки: 0
Присоединился: 2010-05-08 23:28:48.293333
|
Да елки-палки))) БОЛЬШОЕ спасибо, точняк про кавычки забыл. Почемуто не подумал, что данные с сокета тоже будут экранироваться. Еще раз спасибо, многих спрашивал - никто не догадался ;)
|
|
|
RE: [PHP] Мониторинг игровых серверов - 2010-06-03 23:15:12.660000
|
|
|
john smith2
Сообщений: 6
Оценки: 0
Присоединился: 2010-05-08 23:28:48.293333
|
oRb Привет. Еще одна проблемка. \xFF\xFF\xFF\xFF\x55\xFF\xFF\xFF\xFF \xFF\xFF\xFF\xFF\x57 \xFF\xFF\xFF\xFF\x70\x6C\x61\x79\x65\x72\x73 Любым из этих запросов пытаюсь получиться инфу о игроках (cs 1.6), но серв ничего не возвращает. Точнее так - иногда все норм отдает, а иногда полностью ничего . Имею ввиду, что один определенный сервер как бы "не против" отдавать такую инфу на один из этих запросов, а другие как будто запретили это. (50 на 50). Серв точно доступен, захожу на него, вижу что норм работает, но инфу с него не отдает. Именно траблы с инфой о игроках, о серве инфа - нормально отдается. Для теста, нашел тот же серв (да и много тех которые не "отзывают) на game-monitor.com, у них все пашет. В чем вобщем проблема? В твоем скрипте тоже самое 50 на 50. function get_players2($ip, $port) { $fp = @fsockopen("udp://".$ip, $port); if (!$fp) { return false; } else { stream_set_timeout($fp, 0, 400000); stream_set_blocking($fp, true); $getchallengenumber = "\xFF\xFF\xFF\xFF\x57"; fwrite($fp, $getchallengenumber); $tmp = fread($fp, 12); if(empty($tmp)) { return false; } Вот одни на условие if(empty($tmp)) возвращают false, а другие нормально дальше продолжают читать.
|
|
|
RE: [PHP] Мониторинг игровых серверов - 2010-06-04 10:53:02.213333
|
|
|
oRb
Сообщений: 4044
Оценки: 597
Присоединился: 2007-03-28 18:45:06.630000
|
john smith2, когда задаете вопрос, постарайтесь сообщить больше информации. Вы хотя бы написали бы адреса серверов, а то я могу только гадать, что у вас за проблема возникла. http://developer.valvesoftware.com/wiki/Server_Queries http://developer.valvesoftware.com/wiki/Talk:Server_Queries#A2S_SERVERQUERY_GETCHALLENGE_not_working_since_last_HLDS_update Если в этом дело, то тогда вы где-то ошиблись, так как моя библиотека нормально работает с 48 протоколом (только что перепроверил).
|
|
|
RE: [PHP] Мониторинг игровых серверов - 2010-06-04 14:22:20.596666
|
|
|
john smith2
Сообщений: 6
Оценки: 0
Присоединился: 2010-05-08 23:28:48.293333
|
Потестил еще раз, все также. Сервера, на которых НЕ рабботает правильно (отдает только инфу о сервере, о игроках - пустой массив): 78.26.165.60:27015 Array ( [version] => 7 [name] => SD [Odessa] Public CS:S Server (.:HISHNIK:.) [map] => cs_assault [directory] => cstrike [desсriрtion] => Counter-Strike: Source [players] => 25 [max_players] => 26 [bots] => 0 [os] => Windows [password] => no [secure] => yes ) Array ( ) Array ( ) 91.208.65.66:27015 Array ( [name] => ALFA-STRIKE | CLASSIC [map] => de_cbble [directory] => cstrike [desсriрtion] => CLASSIC [players] => 26 [max_players] => 32 [version] => 47 [os] => Linux [password] => no [secure] => yes [bots] => 0 ) Array ( ) Array ( ) 91.198.83.42:27015 Array ( [name] => ITK CS SERVER [map] => de_aztec [directory] => cstrike [desсriрtion] => [Public 24/7] [players] => 25 [max_players] => 32 [version] => 47 [os] => Windows [password] => no [secure] => no [bots] => 0 ) Array ( ) Array ( ) 77.120.114.60:27015, 91.211.116.10:27022, 217.147.162.214;27015 А на вот этих все норм - игроки, инфа, рулесы: 77.120.121.158:27015, 195.5.17.163:27015 Вдобавок настройки приведу: DefaultLanguage ru AddDefaultCharset utf-8 Order Deny,Allow Deny from all Allow from 127.0.0.1 php_flag magic_quotes_gpc Off php_flag magic_quotes_runtime Off php_flag register_globals Off Options -Indexes RewriteEngine on Options +FollowSymLinks По поводу ссылок выше - то инфу по запросам брал с http://int64.org/docs/gamestat-protocols/
|
|
|
RE: [PHP] Мониторинг игровых серверов - 2010-06-04 15:31:53.180000
|
|
|
oRb
Сообщений: 4044
Оценки: 597
Присоединился: 2007-03-28 18:45:06.630000
|
видимо у вас проблемы с соединением, так как у меня работает: 78.26.165.60:27015 Array
(
[version] => 7
[serverName] => SD [Odessa] Public CS:S Server (.:HISHNIK:.)
[mapName] => cs_italy_tactik2
[gameDir] => cstrike
[gameDesc] => Counter-Strike: Source
[playerNumber] => 22
[maxPlayers] => 26
[botNumber] => 0
[operatingSystem] => Windows
[passwordProtected] =>
[secureServer] => 1
)
Array
(
[0] => Array
(
[name] => \\po-50\\ <<::FRAG::>>
[score] => 5
[time] => 00:13:00
)
[1] => Array
(
[name] => ХруМ ХруМ
[score] => -1
[time] => 00:07:16
)
[2] => Array
(
[name] => АГЕНТ™
[score] => 1
[time] => 00:20:10
)
[3] => Array
(
[name] => q_23 aka Belka
[score] => 4
[time] => 00:08:11
)
[4] => Array
(
[name] => [H.A.W.K.] team | M!X@
[score] => 14
[time] => 01:11:16
)
[5] => Array
(
[name] => \\po-50\\Sm@ckdown!
[score] => 9
[time] => 00:29:07
)
[6] => Array
(
[name] => *<>*
[score] => 1
[time] => 00:07:29
)
[7] => Array
(
[name] => _XO4Y_HA_KYBY_
[score] => 36
[time] => 01:11:14
)
[8] => Array
(
[name] => [The Joker]
[score] => 6
[time] => 00:15:48
)
[9] => Array
(
[name] => Leila
[score] => 26
[time] => 01:03:56
)
[10] => Array
(
[name] => Бомж-в-атаке | DertaS
[score] => 23
[time] => 00:38:52
)
[11] => Array
(
[name] => ¸,ø¤º°MǻNđRξK°º¤ø,
[score] => 10
[time] => 00:30:00
)
[12] => Array
(
[name] => ExTaz
[score] => 36
[time] => 01:11:12
)
[13] => Array
(
[name] => samlab
[score] => 10
[time] => 00:38:15
)
[14] => Array
(
[name] => ىn1kØ^™
[score] => 3
[time] => 00:31:49
)
[15] => Array
(
[name] => Abver*
[score] => 25
[time] => 00:53:25
)
[16] => Array
(
[name] => \\sanias{by eX}//
[score] => 16
[time] => 00:46:40
)
[17] => Array
(
[name] => RAMZES
[score] => 3
[time] => 00:11:09
)
[18] => Array
(
[name] => the Game
[score] => 0
[time] => 00:09:22
)
[19] => Array
(
[name] => \\po-50\\ KILLER
[score] => 3
[time] => 00:26:32
)
[20] => Array
(
[name] =>
[score] =>
[time] => 00:00:00
)
[21] => Array
(
[name] =>
[score] =>
[time] => 00:00:00
)
)
Array
(
[sm_tick100mapfix_version] => 1.4.36
[res_ver] => 1.4.1 beta
[addon_manager_ver] => 1.5
[hostage_godmode] => v1.0
[hailmary_version] => 1.5
[exploit] => 3.0
[sd_version] => 2.0 by L'In20Cible
[knifep3n] => 4.6.2
[DeToCs] => 1.2
[es_corelib_ver] => 2.0.0.250i
[mattie_eventscripts] => 1
[eventscripts_ver] => 2.0.0.250
[est_version] => 0.420
[daf_version] => Version 3 of SourceOP.com DoS Attack Fix Plugin
[mp_teamplay] => 0
[mp_fraglimit] => 0
[mp_falldamage] => 1
[mp_weaponstay] => 0
[mp_forcerespawn] => 1
[mp_footsteps] => 1
[mp_flashlight] => 1
[mp_autocrosshair] => 0
[decalfrequency] => 10
[mp_teamlist] => hgrunt,scientist
[mp_allowNPCs] => 1
[mp_friendlyfire] => 1
[sv_gravity] => 800
[sv_stopspeed] => 75
[sv_noclipaccelerate] => 5
[sv_noclipspeed] => 5
[sv_specaccelerate] => 3
[sv_specspeed] => 3
[sv_specnoclip] => 1
[sv_maxspeed] => 320
[sv_accelerate] => 5
[sv_airaccelerate] => 10
[sv_wateraccelerate] => 10
[sv_waterfriction] => 1
[sv_footsteps] => 1
[sv_rollspeed] => 200
[sv_rollangle] => 0
[sv_friction] => 4
[sv_bounce] => 0
[sv_stepsize] => 18
[r_VehicleViewDampen] => 1
[r_JeepViewDampenFreq] => 7.0
[r_JeepViewDampenDamp] => 1.0
[r_JeepViewZHeight] => 10.0
[r_AirboatViewDampenFreq] => 7.0
[r_AirboatViewDampenDamp] => 1.0
[r_AirboatViewZHeight] => 0.0
[mp_timelimit] => 0
[sv_alltalk] => 0
[mp_dynamicpricing] => 1
[nextlevel] =>
[mp_autoteambalance] => 1
[mp_maxrounds] => 0
[mp_roundtime] => 2
[mp_freezetime] => 2
[mp_c4timer] => 35
[mp_limitteams] => 1
[mp_hostagepenalty] => 0
[sm_nextmap] => de_cbble
[sourcemod_version] => 1.2.3
[mani_reserve_slots] => 1
[mani_admin_plugin_version] => 1.2T SMM
[mani_tickrate] => 100
[mani_nextmap] => cs_office
[stripper_version] => 1.2.1
[dosp_version] => 1.0.0.0
[detox_version] => 1.1
[detox_ruleversion] => 10
[detox_build] => 24
[metamod_version] => 1.8.1
[sv_voiceenable] => 1
[sv_contact] =>
[sv_pausable] => 0
[sv_cheats] => 0
[coop] => 0
[deathmatch] => 1
[tv_password] => 0
[tv_relaypassword] => 0
[sv_password] => 0
)
91.208.65.66:27015 Array
(
[serverName] => ALFA-STRIKE | CLASSIC
[mapName] => de_dust4ever
[gameDir] => cstrike
[gameDesc] => CLASSIC
[playerNumber] => 24
[maxPlayers] => 32
[version] => 47
[operatingSystem] => Linux
[passwordProtected] =>
[secureServer] => 1
[botNumber] => 0
)
Array
(
[0] => Array
(
[name] => Drop Dead
[score] => 1
[time] => 00:09:37
)
[1] => Array
(
[name] => MAK-7--KA
[score] => 0
[time] => 00:46:15
)
[2] => Array
(
[name] => ~.:SerPent is wicked Joker:.~
[score] => 3
[time] => 00:04:17
)
[3] => Array
(
[name] => -=Valerik_[UA]=-
[score] => 3
[time] => 01:07:50
)
[4] => Array
(
[name] => [Unregistered]QQTYU
[score] => 1
[time] => 00:04:22
)
[5] => Array
(
[name] => .::tartarus::.
[score] => 0
[time] => 00:19:50
)
[6] => Array
(
[name] => the Fray
[score] => 0
[time] => 00:09:31
)
[7] => Array
(
[name] => emerson
[score] => 0
[time] => 00:04:24
)
[8] => Array
(
[name] => COKOLKA
[score] => 1
[time] => 00:22:47
)
[9] => Array
(
[name] => noobik*
[score] => 5
[time] => 00:05:57
)
[10] => Array
(
[name] => GsyBe
[score] => 0
[time] => 00:04:06
)
[11] => Array
(
[name] => T.H.T
[score] => 2
[time] => 01:09:50
)
[12] => Array
(
[name] => GrayCardinal
[score] => 1
[time] => 00:44:58
)
[13] => Array
(
[name] => Storm
[score] => 8
[time] => 01:21:30
)
[14] => Array
(
[name] => balbs
[score] => 6
[time] => 00:18:28
)
[15] => Array
(
[name] => DnBproducer
[score] => 0
[time] => 00:03:37
)
[16] => Array
(
[name] => Shelist.
[score] => 3
[time] => 00:16:08
)
[17] => Array
(
[name] => [Black Legion]~*wtf?*s3'zErO*~
[score] => 4
[time] => 00:25:05
)
[18] => Array
(
[name] => Lee^
[score] => 3
[time] => 01:50:51
)
[19] => Array
(
[name] => KucLb1u
[score] => 1
[time] => 00:18:27
)
[20] => Array
(
[name] => Pa36ouHIK
[score] => 0
[time] => 00:09:26
)
[21] => Array
(
[name] => ( ( ( FUNNY ) ) ) - Tra ta ta
[score] => 1
[time] => 00:02:36
)
[22] => Array
(
[name] => jeff.
[score] => 9
[time] => 00:41:39
)
[23] => Array
(
[name] => GAMER
[score] => 3
[time] => 00:06:33
)
)
Array
(
[_tutor_bomb_viewable_check_interval] => 0.5
[_tutor_debug_level] => 0
[_tutor_examine_time] => 0.5
[_tutor_hint_interval_time] => 10.0
[_tutor_look_angle] => 10
[_tutor_look_distance] => 200
[_tutor_message_character_display_time_coefficient] => 0.07
[_tutor_message_minimum_display_time] => 1
[_tutor_message_repeats] => 5
[_tutor_view_distance] => 1000
[aesp_version] => 1.5b_mini
[aimbot_detection] => 1.4beta
[allow_spectators] => 1
[amx_client_languages] => 0
[amx_language] => ru
[amx_nextmap] => de_nuke
[amx_ptb_version] => 1.8b3
[amx_timeleft] => 15:22
[amxbans_version] => 5.1rc
[amxmodx_version] => 1.8.1.3746
[antimat_version] => 2.1
[atac_version] => 3.0.1
[bhpk_version] => 2.6
[coop] => 0
[deathmatch] => 1
[decalfrequency] => 60
[dp_version] => 0.4.8
[edgefriction] => 2
[hlg_cfgversion] => HLG 1.80.03 (Lan)
[hlg_checkversion] => 1.80.05
[hlg_sbsrv_version] => 1.2
[hlg_setting] => 01111011
[hlg_version] => 1.8
[hostage_debug] => 0
[hostage_stop] => 0
[humans_join_team] => any
[kf_version] => 1.5
[map_spawns] => T(20) CT(20)
[max_queries_sec] => 1
[max_queries_sec_global] => 1
[max_queries_window] => 1
[metamod_version] => 1.19p32
[mp_allowmonsters] => 0
[mp_autokick] => 0
[mp_autoteambalance] => 1
[mp_buytime] => 0.35
[mp_c4timer] => 35
[mp_chattime] => 10
[mp_consistency] => 0
[mp_fadetoblack] => 0
[mp_flashlight] => 1
[mp_footsteps] => 1
[mp_forcecamera] => 2
[mp_forcechasecam] => 1
[mp_fragsleft] => 0
[mp_freezetime] => 3
[mp_friendlyfire] => 1
[mp_ghostfrequency] => 0.1
[mp_hostagepenalty] => 2
[mp_kickpercent] => 100
[mp_limitteams] => 1
[mp_logdetail] => 3
[mp_logfile] => 1
[mp_logmessages] => 1
[mp_mapvoteratio] => 0.66
[mp_maxrounds] => 0
[mp_mirrordamage] => 0
[mp_playerid] => 0
[mp_roundtime] => 2.2
[mp_startmoney] => 800
[mp_timeleft] => 0
[mp_timelimit] => 20
[mp_tkpunish] => 0
[mp_windifference] => 1
[mp_winlimit] => 0
[pausable] => 0
[pbk_version] => 1.5
[prometheus] => 0.12
[reportabuse_version] => 1.0
[rhlg_version] => 2.8
[sanksounds_version] => 1.6.6b
[sv_accelerate] => 5
[sv_aim] => 0
[sv_airaccelerate] => 10
[sv_airmove] => 1
[sv_allowupload] => 0
[sv_alltalk] => 1
[sv_bounce] => 1
[sv_cheats] => 0
[sv_clienttrace] => 1
[sv_clipmode] => 0
[sv_contact] => www.alfa-strike.net
[sv_friction] => 4
[sv_gravity] => 800
[sv_logblocks] => 0
[sv_maxrate] => 25000
[sv_maxspeed] => 900
[sv_minrate] => 0
[sv_password] => 0
[sv_proxies] => 0
[sv_region] => 3
[sv_restart] => 0
[sv_restartround] => 0
[sv_stepsize] => 18
[sv_stopspeed] => 75
[sv_uploadmax] => 0.5
[sv_voiceenable] => 0
[sv_wateraccelerate] => 10
[sv_waterfriction] => 1
[wallblocker_enable] => 1
)
91.198.83.42:27015 Array
(
[serverName] => ITK CS SERVER
[mapName] => de_russka
[gameDir] => cstrike
[gameDesc] => [Public 24/7]
[playerNumber] => 23
[maxPlayers] => 32
[version] => 47
[operatingSystem] => Windows
[passwordProtected] =>
[secureServer] =>
[botNumber] => 0
)
Array
(
[0] => Array
(
[name] => conflicT
[score] => 26
[time] => 00:26:20
)
[1] => Array
(
[name] => -=_SpoRteXS_=- |*Legioner*
[score] => 12
[time] => 00:34:18
)
[2] => Array
(
[name] => Sha1tan
[score] => 1
[time] => 00:07:30
)
[3] => Array
(
[name] => D.O.N.B.A.S.S
[score] => 4
[time] => 00:26:36
)
[4] => Array
(
[name] => KOCOu =-)
[score] => 24
[time] => 00:19:21
)
[5] => Array
(
[name] => 6uc-6uc_gbImucb-kaHa6ucb*
[score] => 1
[time] => 00:03:30
)
[6] => Array
(
[name] => FITER
[score] => 1
[time] => 00:05:29
)
[7] => Array
(
[name] => |sTaLiN|2010|NsK|KpAbO|
[score] => 6
[time] => 01:01:34
)
[8] => Array
(
[name] => INTxKORF
[score] => 0
[time] => 00:01:45
)
[9] => Array
(
[name] => Sn@ke_VinN
[score] => 8
[time] => 01:18:04
)
[10] => Array
(
[name] => ~CenturiON~
[score] => 0
[time] => 00:29:21
)
[11] => Array
(
[name] => L1ber
[score] => 4
[time] => 00:02:42
)
[12] => Array
(
[name] => AMIGO**
[score] => 1
[time] => 00:04:55
)
[13] => Array
(
[name] => 0Fzero^
[score] => 4
[time] => 00:07:24
)
[14] => Array
(
[name] => Dimon4ik
[score] => 1
[time] => 00:03:05
)
[15] => Array
(
[name] => *Antares
[score] => 1
[time] => 00:59:04
)
[16] => Array
(
[name] => f1rst*
[score] => 8
[time] => 00:16:16
)
[17] => Array
(
[name] => <<<4IPON>>>
[score] => 10
[time] => 00:44:38
)
[18] => Array
(
[name] => 7 Sky l [AK-47]*_GALARDO_*
[score] => 20
[time] => 00:29:29
)
[19] => Array
(
[name] => ov3r*ADI
[score] => 6
[time] => 00:07:37
)
[20] => Array
(
[name] => a.k.o.|-.-|
[score] => 0
[time] => 00:00:58
)
)
Array
(
[_tutor_bomb_viewable_check_interval] => 0.5
[_tutor_debug_level] => 0
[_tutor_examine_time] => 0.5
[_tutor_hint_interval_time] => 10.0
[_tutor_look_angle] => 10
[_tutor_look_distance] => 200
[_tutor_message_character_display_time_coefficient] => 0.07
[_tutor_message_minimum_display_time] => 1
[_tutor_message_repeats] => 5
[_tutor_view_distance] => 1000
[allow_spectators] => 1
[amx_client_languages] => 0
[amx_contactinfo] =>
[amx_language] => en
[amx_nextmap] => de_russka
[amx_timeleft] => 05:32
[amxmodx_version] => 1.8.1.3746
[coop] => 0
[deathmatch] => 1
[decalfrequency] => 60
[dp_version] => 0.4.8
[edgefriction] => 2
[hostage_debug] => 0
[hostage_stop] => 0
[humans_join_team] => any
[max_queries_sec] => 1
[max_queries_sec_global] => 1
[max_queries_window] => 1
[metamod_version] => 1.19
[mp_allowmonsters] => 0
[mp_autokick] => 0
[mp_autoteambalance] => 1
[mp_buytime] => 0.25
[mp_c4timer] => 35
[mp_chattime] => 10
[mp_consistency] => 1
[mp_fadetoblack] => 0
[mp_flashlight] => 1
[mp_footsteps] => 1
[mp_forcecamera] => 0
[mp_forcechasecam] => 0
[mp_fragsleft] => 0
[mp_freezetime] => 3
[mp_friendlyfire] => 1
[mp_ghostfrequency] => 0.1
[mp_hostagepenalty] => 0
[mp_kickpercent] => 0.66
[mp_limitteams] => 2
[mp_logdetail] => 3
[mp_logfile] => 1
[mp_logmessages] => 1
[mp_mapvoteratio] => 0.66
[mp_maxrounds] => 0
[mp_mirrordamage] => 0
[mp_playerid] => 1
[mp_roundtime] => 1.75
[mp_startmoney] => 800
[mp_timeleft] => 0
[mp_timelimit] => 35
[mp_tkpunish] => 0
[mp_windifference] => 1
[mp_winlimit] => 0
[pausable] => 0
[sv_accelerate] => 5
[sv_aim] => 0
[sv_airaccelerate] => 10
[sv_airmove] => 1
[sv_allowupload] => 1
[sv_alltalk] => 0
[sv_bounce] => 1
[sv_cheats] => 0
[sv_clienttrace] => 1
[sv_clipmode] => 0
[sv_contact] =>
[sv_friction] => 4
[sv_gravity] => 800
[sv_logblocks] => 0
[sv_maxrate] => 25000
[sv_maxspeed] => 900
[sv_minrate] => 25000
[sv_password] => 0
[sv_proxies] => 1
[sv_region] => 255
[sv_restart] => 0
[sv_restartround] => 0
[sv_stepsize] => 18
[sv_stopspeed] => 75
[sv_uploadmax] => 0.5
[sv_voiceenable] => 1
[sv_wateraccelerate] => 10
[sv_waterfriction] => 1
)
|
|
|
RE: [PHP] Мониторинг игровых серверов - 2010-06-04 16:11:11.173333
|
|
|
john smith2
Сообщений: 6
Оценки: 0
Присоединился: 2010-05-08 23:28:48.293333
|
oRb Кинул на хостинг твою библиотеку - результат тот же - инфу о сервере выдает (вышеприведенные IP), о игроках нет. Ну не в интернете же дело. Юзаю класс ServerInfo, в этот же файл инклудом подключаю все файлы, которые в архиве прикреплены. [&:] Не понимаю чего не "вываливает" серв про игроков данные, еще больше не понимаю почему у тебя оно работает)) Ладно бы там я както криво пхп с апачем поставил, еще может быть, но не на хостинге ведь. Я не хочу тупо копировать твой класс, делаю свое. В твой код решил посмотреть когда у меня не захотело работать. Но и с твоим те же траблы вот получились.
|
|
|
RE: [PHP] Мониторинг игровых серверов - 2010-08-10 04:36:20.343333
|
|
|
djalexx
Сообщений: 23
Оценки: 0
Присоединился: 2010-08-09 14:32:09.106666
|
реализовывал подобное в Dbscript 4 - http://cs9958.vkontakte.ru/u15551257/92678536/x_6da18191.jpg отсюда можно скачать - dj.chg.su/dbscript PS. вообще в проекте помощи ищу.
|
|
|
RE: [PHP] Мониторинг игровых серверов - 2012-05-02 21:06:41.490000
|
|
|
popen021
Сообщений: 7
Оценки: 0
Присоединился: 2011-11-03 23:53:55.110000
|
а как вообще сделать вывод, пустые страницы вообще, не подскажите?
|
|
|
RE: [PHP] Мониторинг игровых серверов - 2012-05-03 03:00:51.956666
|
|
|
jdam
Сообщений: 199
Оценки: -20
Присоединился: 2012-03-11 01:34:16.840000
|
скорее всего никак
|
|
|
|
|