EloCalculator

open class EloCalculator(var impactFactor: Double = 32.0, var rangeFactor: Double = 400.0, var logisticBase: Double = 10.0)

Calculates and updates player ratings based on the Elo rating system. This class uses a logistic distribution to predict the outcome of a match between two players and adjusts their ratings based on the difference between the actual and expected results.

Since

1.0.0-beta.8

Author

lunalobos

Constructors

Link copied to clipboard
constructor(impactFactor: Double = 32.0, rangeFactor: Double = 400.0, logisticBase: Double = 10.0)

Properties

Link copied to clipboard

The K-factor that determines how much a single match affects the rating. A higher value leads to faster rating changes. Default is 32.0.

Link copied to clipboard

The base of the exponent in the logistic function. Standard Elo uses base 10.

Link copied to clipboard

The scale factor used to determine win probability. Default is 400.0.

Functions

Link copied to clipboard
fun calculate(white: Player, black: Player, outcome: Outcome)

Calculates the new Elo ratings for both participants and updates their Player.currentElo properties directly.