'kills', 'Damage' => 'damageDealt', 'Headshots' => 'headshotKills', 'Wins' => 'wins', 'Top10s' => 'top10s' ]; // Determine selected game mode (using GET for consistency) $selected_mode = isset($_GET['game_mode']) && in_array($_GET['game_mode'], $availableModes) ? $_GET['game_mode'] : 'squad'; // Load player lifetime data $dataPath = './data/player_lifetime_data.json'; if (file_exists($dataPath)) { $jsonData = file_get_contents($dataPath); $players_data = json_decode($jsonData, true); if (!is_array($players_data)) { $dataError = "Error decoding player lifetime data."; $players_data = null; // Ensure it's null if decoding failed } else { $lastUpdated = htmlspecialchars($players_data['updated'] ?? 'N/A'); // Check if the selected mode exists in the data if (isset($players_data[$selected_mode]) && is_array($players_data[$selected_mode])) { // Calculate averages for each player in the selected mode foreach ($players_data[$selected_mode] as $player_name => $player_details) { $account_id = array_key_first($player_details); if ($account_id && isset($player_details[$account_id])) { $stats = $player_details[$account_id]; // Ensure necessary stats exist before calculation $wins = $stats['wins'] ?? 0; $losses = $stats['losses'] ?? 0; $totalGames = $wins + $losses; $averages = []; foreach ($metrics as $metricKey) { $statValue = $stats[$metricKey] ?? 0; $averages[$metricKey] = ($totalGames > 0) ? round($statValue / $totalGames, 2) : 0; } $playerAverages[$player_name] = $averages; } } if (empty($playerAverages)) { $dataError = "No player stats found to calculate averages for mode: " . htmlspecialchars($selected_mode); } } else { $dataError = "Selected game mode (" . htmlspecialchars($selected_mode) . ") not found in data."; } } } else { $dataError = "Player lifetime data file not found."; } ?>

Average User Stats


$metric): ?> $averages): ?>
Player Average

No average stats to display for the selected mode.

Last update: