Let me start off that I think that the current implementation of star rating is wholly flawed, and not very great at even doing the minimal... preventing teamstacks. The algorithm I'm proposing is zero-sum (meaning the average star rating will remain the same always, even with an influx of new players.) The obvious weakness of a zero-sum rating system that doesn't use a traditional k-value is that it is extremely easy for players at either extreme end of skill (very noob or very pro) to have volatile ratings so long as they do not continue to lose or win respectively. I dislike k-value because it inhibits a rating's ability to fluidly gauge a player's skill and relies heavily on consistent playtime and consistently low player skill growth. That being said, here's my suggestion. If you leave a game, your star rating will update to reflect the stats the moment you left, but not for calculation purposes for other players still in that game. Also, your rating is unaffected and not part of the calculations if you join within 5 minutes of a game ending. Star_Rating_Change = ((0.25*(Kills))+(0.1*(Assists))-(0.25*(Deaths))+(0.1*(Bot Kills))+(0.05*(Cash)))/(2*Std. Dev of Star Rating) All stat values are in weighted averages less 1 (to express deviance from the average) Here's a spreadsheet where you can manipulate stats to see how your star rating would be affected at the end of a match under this new algorithm.
It sounds reasonable for the most part, but assists should definitely be worth a hell of a lot more than a bot kill. It's easy to get 100 bot kills in a game, I have yet to see anyone EVER get that many assists in 1 game.
It's weighted (as are all the stats), so it's not too far off. It compensates for the fact that a very high assist ratio is probably directly related to aoe spam, or a well-placed firebase. Whilst a very high bot kill relatively... definitely takes diligence through the game. This isn't meant to be the end-all of ratings, but an already made template that is far better imo than the current iteration.
Join game, OT has already started, lasts maybe 30 seconds after I spawned Get 1 kill, 1 assist, 1 death and no botkills I lose .8 star from that and after about 4-5 games later where I've either been the MVP of the team/game or been in the top 2 I've only regained about .4/.5 o_0 Eh, people stacked by level before and even prior to the star ratings balance was screwy as hell sometimes
Well... Then remove the rating and match up players by dice rolls. Gives variety between matches, so you havent always fight against the same guys and get steamrolled / steamroll.
Stop making thoughtless suggestions not OT. Star rating, even as mishap as it is now, is better than judging from just levels. I was better than most people with prestige classes within the first week of playing. I suspect most good players that didn't start in beta have had similar experiences. I am suggesting a weighted average algorithm to keep aggregate star rating within a server stable and static. In addition to a weight in delta based on rating spread, it will lead to slower changing ratings lest very extreme performances are found. As far as latecomers, they are disregarded if they arrive more than X minutes into a match (I would say ~10 minutes, or as long as they've at least been in for 10 minutes + overtime) People who ragequit, disconnect, or otherwise leave early have their scores altered to reflect the change when they leave. In order to retain integrity of the ratings, their initial rating change will only be a proxy that is reconfirmed at the true end of match.
a match-making mode where players compete for ladder rankings is needed. matching by level might not be a good idea and star rating seems like the only option we got now. so... match-making by improving star rating (also have it hidden from users) or another system etc.