Complete.Org: Mailing Lists: Archives: freeciv: October 2003:
[Freeciv] summary of ranking problems/questions
Home

[Freeciv] summary of ranking problems/questions

[Top] [All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index] [Thread Index]
To: Freeciv <freeciv@xxxxxxxxxxx>
Subject: [Freeciv] summary of ranking problems/questions
From: Horn Gábor <Horn.Gabor@xxxxxxxxxxx>
Date: Mon, 20 Oct 2003 02:10:03 +0200

Hi!

I'd like to summarize a bit the problems regarding to the ranking on
pubserver, and the solutions which i etiher know about or suggest. I
think the goal is to have a fair and representative ranking system,
which motivates all players from newbies to tops, and doesn't make them
turn away from certain type of games. The current system is based on the
ELO, and a nice one, but it has a few problems:

1, some obvious things, like AI and dead player scoring. They now affect
the score of players and make the system not closed (althougth en ELO
sytem is supposed to be that).

2, There's no authentication, so anybody can pick any (ranked) name and
play with that.

3, Players can use more nicks to cheat their ranking (only use 'primary'
in games when they're almost sure they'll win, eg againts much weaker
players). It's forbidden in every 'serious' ranking system afaik, and
usually means a ban from the system if somebody does this.

4, Alliances in games aren't handled.

5, There's no ranking decay (it's part of ELO again, and would have good
affect on gameplay too i think).

6, would be nice to have separated ranking for team, duel, ffa (we can
keep the current 'overall' too as one of the rankings).

I think if we eliminate these we'll have a better system. Now about
solutions (where is the error, how it can be solved imo):

(0, We should separate ranked and non ranked games. The easiest way
might be to make ports for ranked games and fun games. Fun ports would
work just like the current ports, except that their result wouldn't get
recorded into the ranking base. Sometimes people would like to practice
or play w/o being ranked, so no need for rank all the games. But if we
rank, would should do it as fair as possible).

1, It's the doranking script's mistake, i fixed it.

2, As i know CVS already can do it, althought it need some work to make
it fit w/ the pubserver. I think a simple nickname/password
authentication for joining the pregame is enough. And when games start,
players would be forced to use their ranked names (or the gamelog should
be changed to contains the real nicks of them too). Dunno which is
easier to implement, but i think we need it or the authentication became
useless.

3, It's very hard to prevent this, so i think we should aim to make it
useless. Ranking decay partly does this, but not completely. I think we
shouldn't provide info about the name of players of the ranking ports'
pregames. Only the number of them. So if a player join, he can decide if
he wanna plays or not, but cannot use the playerlist info w/o connecting
to decide what nick he use in that game. If he leaves and reconnects w/
the same ip in a few mins, players should recognize it and could tell it
to the admin. It needs modification of the client/server code i think.
It's not a 100% protection still, but might be enough againts 90 percent
of these cheats. If somebody really wants cheat he can, i see no way to
prevent that. And i think if somebody is cought on cheating, he should
be deleted from the ranking and banned permanently from the ranking. For
this doranking script has to be changed to save more detailed data from
every game, so ranking would be recountable w/o the cheaters points (i
can do this modification if we agree). I think no serious player would
risk this.

4, both doranking and server code has to be changed to handle this.
Server has to produce more detailed gamelog files, which provide info
about diplomatic actions. Doranking has to handle it properly.
'Properly' isn't well defined in this case, as ELO doesn't support this
kind of events during a game (it handles separated individuals or
teams). I partly solved it in doranking, but i'll work on it more to be
better (i have a solution now what DDD suggested and i think is good,
but haven't time to implement it yet).

5, It's not hard and can be done as a separated program, no need for
change in the client or server code. I'll make a small program for it.

6, it's doranking script's job and needs some modification for the
webpages that shows the ranking table(s), i will do it.

Well now i'd like to ask if you agree w/ the above, and if yes, there's
a chance to implement the needed things for the client and server? I
know it would be better if i could send patches for them, but i have
very limited time sorry :( But i'll do my best to do the needed changes
for the doranking and it's database and other related stuff.

bye, hirisov





[Prev in Thread] Current Thread [Next in Thread]