Tweaked elo for team games.
This commit is contained in:
parent
776093288a
commit
aa6d25139f
@ -21,12 +21,12 @@ public class EloManager extends MiniDbClientPlugin<EloClientData>
|
||||
_repository = new EloRepository(plugin);
|
||||
_ratingSystem = new EloRatingSystem
|
||||
(
|
||||
new KFactor(0, 1299, 30),
|
||||
new KFactor(1300, 1899, 25),
|
||||
new KFactor(1900, 2499, 20),
|
||||
new KFactor(2500, 3099, 15),
|
||||
new KFactor(3100, 3699, 10),
|
||||
new KFactor(3700, 5000, 5)
|
||||
new KFactor(0, 1299, 50),
|
||||
new KFactor(1300, 1899, 45),
|
||||
new KFactor(1900, 2499, 40),
|
||||
new KFactor(2500, 3099, 30),
|
||||
new KFactor(3100, 3699, 20),
|
||||
new KFactor(3700, 5000, 10)
|
||||
);
|
||||
}
|
||||
|
||||
@ -42,11 +42,9 @@ public class EloManager extends MiniDbClientPlugin<EloClientData>
|
||||
{
|
||||
EloTeam newTeam = new EloTeam();
|
||||
|
||||
int newTotal = _ratingSystem.getNewRating(teamA.TotalElo / teamA.getPlayers().size(), teamB.TotalElo / teamB.getPlayers().size(), result) * teamA.getPlayers().size();
|
||||
|
||||
for (EloPlayer player : teamA.getPlayers())
|
||||
{
|
||||
int newRating = (int)(player.getRating() + ((double)player.getRating() / (double)teamA.TotalElo) * (newTotal - teamA.TotalElo));
|
||||
int newRating = _ratingSystem.getNewRating(player.getRating(), (teamB.TotalElo / teamB.getPlayers().size()), result);
|
||||
EloPlayer newPlayer = new EloPlayer(player.getPlayer(), newRating);
|
||||
|
||||
newTeam.addPlayer(newPlayer);
|
||||
|
Loading…
Reference in New Issue
Block a user