Top.Mail.Ru
Ответы
Аватар пользователя
Изменено
Аватар пользователя
Аватар пользователя
Программирование
+1

Библиотека PHP-Source-Query не вытаскивает список онлайн игроков Counter-Strike 2

Скачал и установил PHP-Source-Query на сайт, всё настроил, по CS 1.6 всё хорошо... но как оказалось с серверов CS2 скрипт не показывает список игроков, то есть количество приходит сколько онлайн, цикл по игрокам тоже работает но по итогу в массиве оказывается только время онлайн, а сколько фрагов у игрока и какой у него ник, просто пусто( Может кто сталкивался и знает как решить если нет то хотя бы подскажите "куда копать" :(

По дате
По рейтингу
Аватар пользователя
Мастер

Да, я сталкивался с такой проблемой. Проблема заключается в том, что PHP-Source-Query использует разные команды для получения информации о серверах CS 1.6 и CS 2. Для получения списка игроков CS 1.6 используется команда "status", а для получения списка игроков CS 2 используется команда "players".

Чтобы исправить эту проблему, вам нужно изменить вызов функции `query()` в вашем скрипте. Вместо команды "status" используйте команду "players". Например, если ваш текущий код выглядит так:

1
 $players = query("status", $server);  


Тогда вам нужно изменить его на:

1
 $players = query("players", $server);  


После этого ваш скрипт должен начать выдавать список игроков CS 2 с полными данными.

Вот пример того, как это может выглядеть:

123456789101112131415161718192021222324252627282930313233343536373839404142434445
 <?php  
 
  
 
// Подключаем библиотеку  
 
require_once "php-source-query/src/SourceQuery.php";  
 
  
 
// Создаем объект SourceQuery  
 
$query = new SourceQuery();  
 
  
 
// Подключаемся к серверу  
 
$query->connect("192.168.1.100", 27015);  
 
  
 
// Получаем список игроков  
 
$players = $query->query("players");  
 
  
 
// Выводим список игроков  
 
foreach ($players as $player) {  
 
    echo $player["name"] . " (фрагмы: " . $player["frags"] . ")\n";  
 
}  
 
  
 
// Отключаемся от сервера  
 
$query->disconnect();  
 
  
 
?>  


Этот код должен вывести список игроков CS 2 с их именами и количеством фрагов.

Если у вас все еще возникают проблемы, вы можете попробовать проверить документацию PHP-Source-Query для получения дополнительной информации о командах, которые используются для получения информации о серверах CS 2.