Thursday, October 28, 2010

How Your Rating is Determined

Will and Foup team up in for some Arena Team Doubles action.  Following the game, Will cheer's"Haha! I went +10 on that one! Suck on that Foup!" as Foup meekly stares at his 891 rating.  But how did Foup achieve this 891? Did the Halo Reach gods peer down upon him as he slayed his way through the game?  The answer is no. And actually, the system Bungie uses is a lot simpler, and based on easy math. 
Hit "read more" below to find out...







Here's how it goes:


  • Your "raw rating" is the first number generated at the end of the game. The formula Reach uses to create your raw rating is:

raw_rating = (x kills + x assists) - (x deaths/2) -(x betrayals)


  • Here we see some important things. For one, in terms of gameplay related to score, kills AND assists have the same weight.  If Foup and Will played equally in the game, except for Foup getting all kills and Will getting all assists, their ratings would be equal.  Secondly, deaths do not have a huge impact on the raw score as they are divided by two.  By no means should you choose to die because of the light repercussions, but don't kill yourself if you die a lot (?).  And, as they should, betrayals carry a decent amount of weight.  In actuality there are other variables attached to (Kills+assists) and (deaths/2), but right now they are simply = to 1. This is so that down the road, if Bungie feels like, say, the death penalty on the raw score is to harsh, they could modify the variable down to .8 or so. But as for now, this is not important.
  • Here's a slightly meatier formula that is the true determiner of score:


rating = loss_penalty * (1000 + (2000/pi * atan( raw_rating * game_normalization )))




Lets take this step by step:


  1.  Loss Penalty: It is "1" if you win. Nothing happens to your score if your team wins the game, it is just multiplied by 1. If your team loses, it is ".96". So yes, your score is technically dropped if your team loses, (4% drop), but in the grand scheme of things this will not hurt your score too much.
  2.  Game Normalization: The game normalization value is determined by taking the total number of players on your team, and dividing that by the score your team needs to win the game. For instance, a 2v2 game to 25 would give a value of 2/25. What this does is it encourages you to get the most kills/assists on your team.  This value helps out people who are paired up with a partner(s) with a much lesser skill. By having the majority of the kills, your score will not be effected that much.  This factor was not in Halo 3, and is gladly accepted in Reach.
  3. That 1000+2000/pi * atan nonsense:  That says a few things. For one, the 1000 represents your starting score at the beginning of the match.  Secondly, the 2000 represents the maximum possible achievable score in a game (though in reality this is impossible).  The pi * atan refers to the ArcTan Curve, or the Inverse of Tan, seen in the picture below.




Precalculus!



What this graph shows is that it is much harder to go from a 1750 to a 1760 than from 1100 to 1110.   As your rating gets higher and higher, it take much more effort and skill to get the next point.  The same goes for the negative end- the poles, 2000 and 0, would require so many kills/betrayals that it is impossible to achieve it in a matchmaking game.  So when your little brother boasts, "Hey bro, I just got a 2390 in a team arena  game!", you can call him out with complete certainty.

Thats all for today folks,
Will


1 comment:

  1. Thanks! i was just looking for how to determine this nice blog!

    ReplyDelete