Tente isso.. 
  
1º Para arrumar esse bug do ''Server Offline'', va ate seu "layout.php" e nele, encontre  
  
if($config['status']['serverStatus_online'] == 1) 
  
2º substituia por 
  
if($config['status']['serverStatus_online'] >= 0) 
Pronto! Problema do Server Offline Resolvido! mais pera aí ! de que adianta se agora ta aparecendo 0 players online? 
  
3º Agora, adicione ainda no layout.php, antes da tag <head> o seguinte script: 
  
	   <?PHP 
$update_interval = 10; 
if(count($config['site']['worlds']) > 1) 
{ 
	$worlds .= '<i>Select world:</i> '; 
	foreach($config['site']['worlds'] as $id => $world_n) 
	{ 
		$worlds .= ' <a href="?subtopic=whoisonline&world='.$id.'">'.$world_n.'</a> , '; 
		if($id == (int) $_GET['world']) 
		{ 
			$world_id = $id; 
			$world_name = $world_n; 
		} 
	} 
	$main_content .= substr($worlds, 0, strlen($worlds)-3); 
} 
if(!isset($world_id)) 
{ 
	$world_id = 0; 
	$world_name = $config['server']['serverName']; 
} 
$order = $_REQUEST['order']; 
if($order == 'level') 
	$orderby = 'level'; 
elseif($order == 'vocation') 
	$orderby = 'vocation'; 
if(empty($orderby)) 
	$orderby = 'name'; 
$tmp_file_name = 'cache/whoisonline-'.$orderby.'-'.$world_id.'.tmp'; 
if(file_exists($tmp_file_name) && filemtime($tmp_file_name) > (time() - $update_interval)) 
{ 
	$tmp_file_content = explode(",", file_get_contents($tmp_file_name)); 
	$number_of_players_online = $tmp_file_content[0]; 
	$players_rows = $tmp_file_content[1]; 
} 
else 
{ 
	$players_online_data = $SQL->query('SELECT * FROM players WHERE world_id = '.(int) $world_id.' AND online > 0 ORDER BY '.$orderby); 
	$number_of_players_online = 0; 
	foreach($players_online_data as $player) 
	{ 
		$number_of_players_online++; 
		$acc = $SQL->query('SELECT * FROM '.$SQL->tableName('accounts').' WHERE '.$SQL->fieldName('id').' = '.$player['account_id'].'')->fetch(); 
		if(is_int($number_of_players_online / 2)) 
			$bgcolor = $config['site']['darkborder']; 
		else 
			$bgcolor = $config['site']['lightborder']; 
			 $rs = ""; 
if ($player['skulltime'] > 0 && $player['skull'] == 3) 
				$rs = "<img style='border: 0;' src='./images/whiteskull.gif'/>"; 
		elseif ($player['skulltime'] =  $player['skull'] == 4) 
				$rs = "<img style='border: 0;' src='./images/redskull.gif'/>"; 
		elseif ($player['skulltime'] =  $player['skull'] == 5) 
				$rs = "<img style='border: 0;' src='./images/blackskull.gif'/>"; 
  
		$players_rows .= '<TR BGCOLOR='.$bgcolor.'><TD WIDTH=10%><image src="images/flags/'.$acc['flag'].'.png"/></TD><TD WIDTH=70%><A HREF="?subtopic=characters&name='.urlencode($player['name']).'">'.$player['name'].$rs.'</A></TD><TD WIDTH=10%>'.$player['level'].'</TD><TD WIDTH=20%>'.$vocation_name[$world_id][$player['promotion']][$player['vocation']].'</TD></TR>'; 
	} 
  
} 
  
?> 
  
  
  
4º E onde estiver (em baixo do if que você alterou no passo 1) 
  
echo $config['status']['serverStatus_players'].'<br />Players Online'; 
  
Substitua por 
  
echo ''.$number_of_players_online.'<br />Players Online';