protected function queryServer($server, &$response) { $error_level = error_reporting(E_ALL & ~E_USER_NOTICE); $lib_path = gameservers_get_path_library('steam-condenser') . '/lib'; set_include_path(get_include_path() . PATH_SEPARATOR . $lib_path); require_once 'steam/servers/SourceServer.php'; try { $config = $server->config['query']; if ($config['gametype'] == 'goldsrc') { $server = new GoldSrcServer(new InetAddress($server->hostname), $server->port); } else { $server = new SourceServer(new InetAddress($server->hostname), $server->port); } $server->initialize(); $response['raw'] = array('server' => $server->getServerInfo(), 'players' => $server->getPlayers(), 'rules' => $server->getRules(), 'ping' => $server->getPing()); $response['address'] = $server->hostname; $response['port'] = $response['raw']['server']['serverPort']; $response['online'] = $response['raw']['ping'] ? TRUE : FALSE; $response['protocol'] = $config['gametype']; $response['game'] = $response['raw']['server']['gameDir']; $response['servername'] = $response['raw']['server']['serverName']; $response['mapname'] = $response['raw']['server']['mapName']; $response['numplayers'] = $response['raw']['server']['playerNumber']; $response['maxplayers'] = $response['raw']['server']['maxPlayers']; $response['extra'] = $server->getRules(); foreach ($server->getPlayers() as $steam_player) { $player = new stdClass(); $player->name = check_plain($steam_player->getName()); $player->score = $steam_player->getScore(); $player->time = $steam_player->getConnectTime(); $response['players'][] = $player; } } catch (Exception $ex) { drupal_set_message($ex->__toString(), 'error'); } error_reporting($error_level); return TRUE; }
public function testRandomSourceServer() { $masterServer = new MasterServer(MasterServer::SOURCE_MASTER_SERVER); $serverArray = $masterServer->getServers(MasterServer::REGION_ALL, "\\type\\d\\empty\\1\\full\\1\\gamedir\\tf"); $serverAddress = $serverArray[array_rand($serverArray)]; $server = new SourceServer(new InetAddress($serverAddress[0]), $serverAddress[1]); $server->initialize(); $server->updatePlayerInfo(); $server->updateRulesInfo(); $this->assertNotNull($server->getPing()); $this->assertNotNull($server->getPlayers()); $this->assertNotNull($server->getRules()); $this->assertNotNull($server->getServerInfo()); echo $server; }
echo $serverData['gameDesc']; ?> <br/> <?php echo $serverData['mapName']; ?> <?php echo $serverData['playerNumber']; ?> /<?php echo $serverData['maxPlayers']; ?> <?php // $server->getRcon() To new Steam_Comunity version when they fix rcon conecction $SteamPlayers = $serverSC->getPlayers(); if (count($SteamPlayers) > 0) { $usersOnlineTable = "<div class='tborder'>"; $usersOnlineTable .= "<div id='tableHead'>"; $usersOnlineTable .= $LAN_SERVERLIST_004; $usersOnlineTable .= "</div>"; $usersOnlineTable .= "<table class='bordercolor' width='100%'' cellspacing='1' cellpadding='5' border='0' style='margin-top: 1px;'>"; $usersOnlineTable .= $LAN_SERVERLIST_005; foreach ($SteamPlayers as $SteamPlayer) { if ($i % 2 == 0) { $usersOnlineTable .= "<tr class='rowColor1'>"; } else { $usersOnlineTable .= "<tr class='rowColor2'>"; } $usersOnlineTable .= "<td>"; $usersOnlineTable .= $SteamPlayer->getId();
<style type="text/css"> tr.d0 td { background-color: #D3D3D3; color: black; } tr.d1 td { background-color: #C0C0C0; color: black; } </style> <? $ipAddress = $ip; $server = new SourceServer($ipAddress, $portNumber); echo '<link rel="stylesheet" href="css/main.css">'; try { $players = $server->getPlayers($rconpass); } catch (Exception $e) { echo 'Server unreachable.'; exit; } if (empty($players)) { echo 'No active players found on server'; exit;} if ($settings['usestats']['config'] == 'yes') { $statsinfo[0] = $settings['statsprogram']['config']; $statsinfo[1] = $settings['statsurl']['config']; } echo "<table>"; echo "<tr bgcolor=FF8C00><th width=14%>Name</th><th width=25%>Score</th><th width=14%>Ping</th><th width=14%>steamid</th><th width=14%>connect time</th><th width=14%>state</th><th width=14%>ip</th><th width=14% nowrap=nowrap>Quick Info</th></tr>"; $i=0; foreach($players as $player) { $steamid = $player->getsteamid();