Tras una partida terminada, la API carga elo_before, promedios de equipo y K/D/A de cada jugador, luego ejecuta la fórmula de abajo. Los resultados se guardan en match_player_stats y se aplican vía batch_update_elo.
Victoria o derrota fija actual en 1.0 o 0.0. La puntuación expected usa promedios Elo de equipo estándar (divisor 400). Tu modificador de rendimiento compara tu línea de stats con compañeros—limitado entre 0.5× y 1.5×, invertido en derrotas.
expected = 1 / (1 + 10^((opp_avg - team_avg) / 400))
perf_score = kills + assists * 0.5 - deaths
perf_factor = clamp(0.5, 1.5, 1 + (perf - team_avg) / team_std)
elo_delta = round(K * (actual - expected) * perf_factor)
divisor = 400 · actual = 1.0 win / 0.0 loss · expected = 1 / (1 + 10^((opp_avg − team_avg) / 400)) · perf = kills + assists×0.5 − deaths · delta = round(K × (actual − expected) × perf_factor)