Elo Formula

Catch-all for all development not having a specific forum.
Aoreias
Posts: 39
Joined: Fri Feb 06, 2004 8:00 am
Location: Monterey, CA

Post by Aoreias »

tmc wrote:QUOTE (tmc @ Oct 21 2006, 05:39 PM) I propose the following changes to make ELO converge:

1. There should be no penalty from "bailing". The amount of ELO lost should be directly related to the amount of the game that the player played. If someone leaves a game after 5 minutes, and his team ends up losing after a 3-hour game, he should not lose much ELO as he had absolutely nothing to do with the loss. Similarly, imagine having a lone vet in a team of newbs. The vet, however, is so good, that while he's there, he manages to single-handedly give his team the advantage. He's about to single-handedly beat the enemy team when his wife comes home and he has to leave. His team proceeds to lose, and he is deducted ELO. This prevents convergence.

2. Having vets in your team early is more valuable than late in the game. ELO should be weighed against a time-decaying function in order to calculate the odds of winning for each team.

3. Commanders are more important than pilots, and their win% should be calculated into the team's ELO (maybe as a multiplicative coefficient; somewhere between 0.8-1.25 might work). This would require ELO to be able to know who the commander is and take care of commander changes midgame.

4. We need to Calculate an actual value for the parameter which assigns an expected value to the team's ELO. We have enough data to do this already; divide up the ELO differences we have, and plot them against their win%. Find the equation, and use that.
Think thats it for now.

A commanders should use a seperate elo count applying only to commanders. This elo count would be subject to similar restrictions with regards to the effect of a stack.

I can think of no reason to include stacked games when measuring a commander's skill.
No, pants are still optional. But for you, recommended.

--Aoreias (Gap_Dragon/Gappy)
Aoreias
Posts: 39
Joined: Fri Feb 06, 2004 8:00 am
Location: Monterey, CA

Post by Aoreias »

Code: Select all

-- DON'T COUNT GAMES WITH LESS THAN 10 FOR AT LEAST HALF THE GAME
IF (SELECT COUNT(*) FROM @Accounts WHERE ABS(@GameDuration - GameTime) < (@GameDuration / 2)) < 10
BEGIN
  SET @GameCounted = 0
  SET @GameReason = 'Less than 10 players for at least half of the game'
END
This code isn't doing quite what it's supposed to do. This will return true if there's <10 people who played more than half the game, but not if there are <10 people for at least half the game.

Say 9 people play a 15 minute game, and a different person A plays 5 minutes. Then person B plays another 5 minutes. Finally Person C plays the last 5 minutes. Said game would not count on the above code.

I don't know my SQL very well, but the following code should work.

Code: Select all

IF (SELECT SUM (GameTime) from @Accounts WHERE 1 < @GameDuration * 10)
BEGIN
  SET @GameCounted = 0
  SET @GameResaon = 'Less than 10 players for at least half of the game'
END
Edit: The above code won't quite work either, as having <10 players for half the game, but say >20 players for 1/3rd the game will flag as true. Any ideas?
Last edited by Aoreias on Sun Oct 22, 2006 12:14 am, edited 1 time in total.
No, pants are still optional. But for you, recommended.

--Aoreias (Gap_Dragon/Gappy)
Pook
Posts: 1758
Joined: Tue Aug 13, 2002 7:00 am
Location: Texas, USA

Post by Pook »

No, I believe it's correct... at least to the extent it can be.

I want to only count the game if there are 10 individuals who were there for at least half the duration of the game.

The game / player information in these tables doesn't contain the individual join/leave information - so I can't do sums over intervals like you're suggesting be done.

QUOTE This will return true if there's <10 people who played more than half the game[/quote]

Code: Select all

IF (SELECT COUNT(*) FROM @Accounts WHERE ABS(@GameDuration - GameTime) < (@GameDuration / 2)) < 10
in English is:

IF (Total number of People) WHERE ((Amount of time they didn't play) < (50% of total game time) < 10)

So, for someone who played 50 minutes of a 60 minute game:

... WHERE (60-50 = 10) < (60 / 2 = 30)

Returns True.

For someone who played 25 minutes of a 60 minute gameL

... WHERE (60-25 = 35) < (60 / 2 = 30)

Returns False.

So, the COUNT is only incremented for each person who played at least half ... so if the count is < 10, there were less than 10 people who played at least half the game.

EDIT: nm - I think I misread what you were trying to say. In any case, like I said at the beginning - I would have to measure the number of players at intervals over the game's duration and I don't have the individual start / end times in this table. It COULD be done but would require bringing in all the game event data which is a LARGE table and could result in a negative performance impact.
Last edited by Pook on Sun Oct 22, 2006 2:28 am, edited 1 time in total.
Image
apochboi
Posts: 1744
Joined: Sun May 28, 2006 7:00 am
Location: Dundee, Scotland

Post by apochboi »

Okay so ELO isnt finished but, please explain something for me. Cuculet, spitzen and a few others have went from there ranks of intermediate 8 ect, down to nov 4 and nov7. Why does something like that just happen ?. Im probably going to answer my own question, but i guess its because you guys are resolving some of the issues with peoples rank being what it shouldnt be. It just seems odd one day Inter/Vet, next day Novice.
takingarms1
Posts: 3052
Joined: Fri Feb 20, 2004 8:00 am

Post by takingarms1 »

Stop caring so much about your rank and go kill some miners.
"You give my regards to St. Peter. Or, whoever has his job, but in hell!"
- - - -
MrChaos
Posts: 8352
Joined: Tue Mar 21, 2006 8:00 am

Post by MrChaos »

over the last 30-40 days I went from a 16 down to a 14 then a 5 then a 4 and now about a 9. I did however miss out on the kills equals rank change and Im SURE my rank would have been horrible.

I was also a one for so long I was hoping I would have it forever.

@#(! because of something to do with my connection ( I believe ) I RARELY get the kill if someone gets even a single shot on the fighter. [ no need to give lectures on hit boxes etc ] So if I dont kill the darn thing completely myself, 95% of the time I dont get the KB ( Ive had a number of games with double digit assists and no kills ).

Ive not posted it as an issue since it observational, across games, and if truly an issue something I cant see a developer working on since it appears Im just one lucky guy [ sarcasm].

In the big scheme of things * shrug * what does it matter whether my rank is accurate. However the ranking system as a whole needs to be accurate. So Apochi's question, if sincere and not an attempt to stir the pot, is legitimate if taken in the larger sense of things. If it's a case of my ranking seems to be wrong take heart in the fact you get your kills unlike the lucky, lucky MrChaos

BTW Apochi ranking based on time in ASGS IIRC. I think it's fine and Im a guy who was playing six years ago and is considered a single digit in ank.

MrChaos is one lucky person
Last edited by MrChaos on Thu Dec 28, 2006 5:21 pm, edited 1 time in total.
Ssssh
Tigereye
Posts: 4952
Joined: Mon Jul 28, 2003 7:00 am
Location: Toronto, Ontario

Post by Tigereye »

I didn't respond to Apochboi because the answer was posted on the frontpage as a news item, and there were also at least 5 other topics started by others asking the same question, who were pointed at the same answer. But, since it seems people still don't know why the ranks changed...

They changed because all of the Elo data was reset back to 0 when R3 went out, and currently ranks are based on age and not elo.

--TE
Last edited by Tigereye on Wed Jan 03, 2007 6:16 am, edited 1 time in total.


The Allegiance community currently hates their sysadmin because he is doing: [Too Much] [____________|] [Too Little]
Current reason: Removing the PayPal contribute page. Send Bitcoin instead: 1EccFi98tR5S9BYLuB61sFfxKqqgSKK8Yz. This scale updates regularly.
apochboi
Posts: 1744
Joined: Sun May 28, 2006 7:00 am
Location: Dundee, Scotland

Post by apochboi »

Actually Tiger, you and Pook did not respond to my post which was away back in November well before that post by Pook about the age based ranks was up.

It was mearly an observation at the time, people would log out and come back 6 ranks less overnight. The current age based ranks were not subject to my observation at that time.

Please look at the date posted.

Either way, that varying overnight rank bug or wotever isnt happening now.

edit:sp
Last edited by apochboi on Wed Jan 03, 2007 2:49 pm, edited 1 time in total.
Pook
Posts: 1758
Joined: Tue Aug 13, 2002 7:00 am
Location: Texas, USA

Post by Pook »

1) Y'all should stop necroposting. /wink.gif" style="vertical-align:middle" emoid=";)" border="0" alt="wink.gif" />

2) It wasn't a bug, the ranking algo was being adjusted based on player feedback.
Image
apochboi
Posts: 1744
Joined: Sun May 28, 2006 7:00 am
Location: Dundee, Scotland

Post by apochboi »

Yeh thats wot i said in the old post.

and yeh please stop the necro's.
Post Reply