Page 3 of 4

Re: Skill based balancing instead of time based ranking (done)

Posted: 20 May 2009, 03:04
by zerver
I agree this is much better than balancing based on ingame time. It should also take clans into consideration when balancing. The skill must be counted higher somehow when multiple players from the same clan are on the same team.

Re: Skill based balancing instead of time based ranking (done)

Posted: 20 May 2009, 04:30
by 123vtemp
:/

:\

:/

Re: Skill based balancing instead of time based ranking (done)

Posted: 20 May 2009, 09:50
by Tribulexrenamed
Remind me, whats the problem with smurfs again?

Re: Skill based balancing instead of time based ranking (done)

Posted: 20 May 2009, 10:10
by Acidd_UK
There's no way of estimating their ability.

Re: Skill based balancing instead of time based ranking (done)

Posted: 20 May 2009, 10:56
by Teutooni
Springie wrote:elo rating 1581 played 45 games, has won 78% and quit 0%
Springie wrote:elo rating 1887 played 501 games, has won 69% and quit 3%
So, instead of time spent ingame we have a # of games played in autohosts - ranking? :P

Just kidding, great job Licho.

Re: Skill based balancing instead of time based ranking (done)

Posted: 20 May 2009, 11:22
by 1v0ry_k1ng
this is pretty cool
if you could get it to watch all games, not just games in springie auto, it would be pretty representitive of overall skill (and a much better ranking system than ingame time since smurfin)

Re: Skill based balancing instead of time based ranking (done)

Posted: 20 May 2009, 11:37
by Google_Frog
The ranking works on the winning players taking score from the losing players. Of course players with more games and similar percentage will have a higher score.

Re: Skill based balancing instead of time based ranking (done)

Posted: 20 May 2009, 15:14
by Licho
It should be pretty easy to implement into springlobby or spads.

Re: Skill based balancing instead of time based ranking (done)

Posted: 20 May 2009, 16:14
by 1v0ry_k1ng
ideally so you can mouse over a player and see his infomation, and for balancing teams on autohosts with !balance
this is long overdue :-)

Re: Skill based balancing instead of time based ranking (done)

Posted: 20 May 2009, 17:12
by TheFatController
If the stats were hidden there'd be less overanalysing and baawwwing

Re: Skill based balancing instead of time based ranking (done)

Posted: 20 May 2009, 17:30
by JohannesH
Teutooni wrote:
Springie wrote:elo rating 1581 played 45 games, has won 78% and quit 0%
Springie wrote:elo rating 1887 played 501 games, has won 69% and quit 3%
So, instead of time spent ingame we have a # of games played in autohosts - ranking? :P

Just kidding, great job Licho.
It doesn't depend on just the %, but also who you win and lose to. So butchering newbs will only get your rank so far.

Re: Skill based balancing instead of time based ranking (done)

Posted: 20 May 2009, 22:15
by Licho
I would like to improve reaction speed of ranking using this way:

- each player will get elo rating and "reliability" factor "w". This factor will start at 1 and grow to some max value - lets say 3 over time.

- when calculating elo of the team, it will be weighted average - weighted using factor w. So more reliable ratings will be valued more.

- when distributing elo points after battle, they will be distributed inversly to w distribution - people with lowest reliability factor will have elo substracted or added more than others.

- after each battle, reliability factor will be increased by average of other players reliability factors divided by say 30 (so it takes 10 games against fully reliable players to reach max reliability)

Re: Skill based balancing instead of time based ranking (done)

Posted: 21 May 2009, 00:26
by Licho
I now implemented it - it takes at least 50 games to reach maximum "reliability".

Springie balance is not using weighted average to determine team strength though.

Im not sure if its correct or not.

Re: Skill based balancing instead of time based ranking (done)

Posted: 22 May 2009, 07:16
by YokoZar
The assumption behind ELO ratings (and Microsoft TrueSkill, for that matter), is that a team's total skill is the sum of its members skills.

We should ask if this makes sense. Other possibilities:
* The team with the worst player will be the team that loses (here, only minimum skill matters)
* The team with the best player will be the team that wins (here, only max skill matters)
* Total team ability is the product of team members skills. (geometric mean)
* Somewhere in between product and sum, eg with a cobb-douglas function

Re: Skill based balancing instead of time based ranking (done)

Posted: 22 May 2009, 07:24
by YokoZar
Licho wrote:I would like to improve reaction speed of ranking using this way:

- each player will get elo rating and "reliability" factor "w". This factor will start at 1 and grow to some max value - lets say 3 over time.

- when calculating elo of the team, it will be weighted average - weighted using factor w. So more reliable ratings will be valued more.

- when distributing elo points after battle, they will be distributed inversly to w distribution - people with lowest reliability factor will have elo substracted or added more than others.

- after each battle, reliability factor will be increased by average of other players reliability factors divided by say 30 (so it takes 10 games against fully reliable players to reach max reliability)
This sounds fine in principle, however you should be a bit more specific about what "inverse to w distribution" means. Will I get 3 times the ELO change my first game than I will on my 100th, assuming I still have the same ELO rating? How will ELO be distributed differently when I'm above my team average vs below the team average -- is it just assumed that each individual player lost/won a game against a single opponent of ELO equal to the enemy average?

Re: Skill based balancing instead of time based ranking (done)

Posted: 22 May 2009, 13:12
by Licho
Inverse is w_min + w - w_max
And its distrubted using weighted avarage again..

It means that if new player joins your game, his ELO rating will be less important than elo of well established players, but he will recieve or lose higher fraction of elo points after battle.

This improves reaction speed of the system.

I tried several variants of this setup and checked final result. I was checking well established players, smurfs of good players and real newbies that played just few games. This original setup gave me best results.

Re: Skill based balancing instead of time based ranking (done)

Posted: 31 Aug 2009, 22:53
by bibim
Licho, now that account IDs are available in the lobby, do you plan to index your ELO rating on it instead of player names ?
If so, and if match reporting isn't too much work (how do you prevent fake match reports btw ?), maybe I will add support for it in SPADS...

Re: Skill based balancing instead of time based ranking (done)

Posted: 01 Sep 2009, 00:27
by Licho
Yeah i plan to support those IDs..
Problem will be converting existing data..

Security is achived by each autohost having unique account. When they first connect to stats server, they generate random password and save it - this is bound with their account..

When they submit data, they must provide correct password.

This ensures that no autohost can pose as another one.

If someone submits fake data, it cannot infect other autohost accounts and so can be easilly cleansed simply by deleting data from those new accounts and leaving only valid, uneffected account data.

This way I can be sure that data claimed to be from "Springie" are data from springie and not fakes.

Data submission is simple i can dig some details for you. After game end you just provide list of players along with small set of data for each player like when they died or if they dropped etc..

Re: Skill based balancing instead of time based ranking (done)

Posted: 01 Sep 2009, 01:20
by bibim
Licho wrote:If someone submits fake data, it cannot infect other autohost accounts and so can be easilly cleansed simply by deleting data from those new accounts and leaving only valid, uneffected account data.

This way I can be sure that data claimed to be from "Springie" are data from springie and not fakes.
Yeah I understand you can easily discard a set of reports when fake data are detected. But imho the main problem is how to detect these fake data ? Players won't check their ELO every time to see if someone didn't report a fake game where they would have lost :/
Licho wrote:Data submission is simple i can dig some details for you. After game end you just provide list of players along with small set of data for each player like when they died or if they dropped etc..
Ok thank you, I will take a look when accountIDs are supported by this system.

Re: Skill based balancing instead of time based ranking (done)

Posted: 01 Sep 2009, 01:25
by Licho
If you design a better system suitable for open source autohost and which needs only autohost to submit data, let me know :)

You can even hand issue each account to autohosts if you want to have some more direct control over them, but thats about it imo..