score-based-elo

1.0.2 • Public • Published

Score-based Elo system

Score-based Elo is a rating system similar to classical Elo used in different sports like chess or go, but this calculates ratings by the players' score proportion.

Installation

In the console:

npm install --save score-based-elo

In node.js:

const elo = require('score-based-elo');

Usage

  • First of all you need to import the package as seen above.

  • Create a new Elo system with the EloSystem constructor, with the k factor as an argument:

let eloSystem = new elo(32); //argument is the k factor

k factor can vary depending on the game, in chess is commonly set to 32. More info about Elo system and k factor in this link.

EloSystem class

  • Method eloSystem.getNewElo(player1, player2) Receives two objects representing the players that are competing. player object must have two properties:
  • Number player.score, representing the game score obtained.
  • Number player.rating, the current Elo rating.

Return the new player1 rating.

  • Method eloSystem.setKFactor(number) Reset Elo K factor, a common value is 32. Always returns undefined.

Example

const elo = require('score-based-elo');
 
let eloSystem = new elo(32); // k factor
 
let player1 = {
        score: 800,
        rating: 2000
    },
    player2 = {
        score: 500,
        rating: 2200
    }
;
 
player1.rating = eloSystem.getNewElo(player1, player2);
 
// now player1 rating is 2012.0042093450425

Readme

Keywords

Package Sidebar

Install

npm i score-based-elo

Weekly Downloads

0

Version

1.0.2

License

MIT

Unpacked Size

2.83 kB

Total Files

4

Last publish

Collaborators

  • juliansotop