Guest User

Untitled

a guest
Jul 21st, 2018
79
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.52 KB | None | 0 0
  1. app.get('/battle/:winner/:loser', function(req, res){
  2. if (req.params.winner && req.params.loser) {
  3. var winner = req.params.winner;
  4. var loser = req.params.loser;
  5. db.mget('image:' + winner + ':rating',
  6. 'image:' + loser + ':rating',
  7. function (err, ratings) {
  8. if (err) { throw err; }
  9. ratings[0] = ratings[0] ? parseFloat(ratings[0]) : 1000;
  10. ratings[1] = ratings[1] ? parseFloat(ratings[1]) : 1000;
  11. var winnerExpected = 1 / (1 + (Math.pow(10,(ratings[1] - ratings[0]) / 400)));
  12. var loserExpected = 1 / (1 + (Math.pow(10,(ratings[0] - ratings[1]) / 400)));
  13. var k = 30;
  14. var winnerAdjustment = Math.round(ratings[0] + (k * (1 - winnerExpected)));
  15. var loserAdjustment = Math.round(ratings[1] + (k * (0 - loserExpected)));
  16. db.mset('image:' + winner + ':rating', winnerAdjustment,
  17. 'image:' + loser + ':rating', loserAdjustment,
  18. function (err, newRatings) {
  19. if (err) { throw err; }
  20. res.redirect('/');
  21. });
  22. });
  23. } else { res.redirect('/'); }
  24. });
Add Comment
Please, Sign In to add comment