Create an account


Poll: Skillmatching?
You do not have permission to vote in this poll.
Yes!
0%
0 0%
Yes, but this solution needs changes.
29.41%
5 29.41%
Yes, but this solution is no good at all.
5.88%
1 5.88%
Waste of time.
64.71%
11 64.71%
Total 17 vote(s) 100%
* You voted for this item. [Show Results]

Thread Rating:
  • 1 Vote(s) - 5 Average
  • 1
  • 2
  • 3
  • 4
  • 5
[SUGGESTION] Skillmatching

#1
Playing with much more skilled than you - daunting.
Playing with much less skilled than you - boring.
Playing with skilled comparably to you - challenging.

Third option is what I'm aiming for.

How this could work:

Calculating average skill of a player:

Clients should collect data about frags, deaths and suicides in text files. Last 25 matches should be taken into account while calculating the average skill level.

FPM - frags per minute
DPM - deaths per minute
SPM - suicides per minute


( FPM * 2 ) / ( DPM + SPM * 1.5 )

Now clients would recalculate this value after each match completed and send it to the server. Server would collect this data and then calculate average skill level on the server and the max-min spread.
Here's a pseudopython code:

Code:
MinSkill = Players[x].skill
MaxSkill = Players[x].skill
AverageSkill = 0

for x in Players:
     AverageSkill = AverageSkill + Players[x].skill

     if Players[x].skill < MinSkill:
          MinSkill = Players[x].skill

     if Players[x].skill > MaxSkill:
          MaxSkill = Players[x].skill

AverageSkill = AverageSkill / Players.count()

Now server would send AverageSkill, MinSkill and MaxSkill to the query server so players searching for servers can get this info.

Clients would need additional three colums in the server browser:
  • Skill Matching - how close is your skill to average server's skill
  • Avarage Skill - what is the average skill level on this server
  • Balance - how balanced is the skill level on this server

These filed should be hidable in case someone don't care.

Balance is calculated this way:

- ( MaxSkill - MinSkill ) / 1

The higher this value is (closer to 0), the more balanced game (equal skill level among all players). Balance is the perfect state. Everything below is smaller or bigger disbalance. If we removed the "-" from our formula we'd need to call this value "disbalance".

Skill Matching:

Code:
#SAS - Server's Average Skill
#CAS - Client's Average Skill
#SM - Skill Matching factor

if CAS > SAS:
     SM = CAS / SAS
else:
     SM = SAS / CAS

The better is the skill matching, the close r is the value to 1.
Let's sort this from lowerst to highest and we have servers best matching our skill on the top of the list.

The problem is this solution only will show us relative skill levels of players. It would go down while playing with more skilled and up while playing with less skilled players. If anyone can think of some way of finding an absolute skill level - please share!

Anyone interested implementing?
I'm making Liblast - a FOSS online FPS game made with Godot 4 and a 100% open-source toolchain
Reply

#2
Generally it is a great idea. But like you already said it´s difficult to calculate the actual skill level of the player. When I´m testing a map, for example, the scoreboard doesn´t really represent my skills.
Reply

#3
I don't really think this is a good idea for several reasons:
- Unskilled players can never learn to play from skilled players, they can't even get in the same server.
- I think many people will start checkingvout the difference between their skills and from other people, and I think a lot of players will start saying things like: "Haha, I'm better then you are!" or just calling others noob. I think it will just make Xonotic too competive.
- I might happen that you can't join servers that you like just because there are playing people there with an other average skill level.
- ATM there are very little people really playing Xonotic on public servers, it does not happen often that there are enough people to play with. If you would really do this, there would be even less playdrs per server.

The idea is nice, but I do not ghink this is a good idea.
Reply

#4
I like the idea of a universal 'skill level', but I think it needs to take more factors into account, particularly kill/death ratio and weapon accuracy.
[Image: 370.png] AKA [~] John Smith on Nexuiz
Reply

#5
Well i like it too. i think unfa we played a couple of games the other day in DCC DM server.
I consider myself highly skilled in DM. DM and Minsta, and generally all each-man-forhimself mods are highly dependant on the "field" skilled variance. Its impossible to enjoy a DM with 4 beginners and 2 ppl massacring them all the time. even the dynamics of the game are different, as i ve seen ppl (makes total sense) to try to evade a confrontation with a better player and wipe out the noobs to rack up their frags.

Bottom line-I like your idea , and e.g at least a warning message when a "lower" skilled person tries to enter a bloodbath server.or vice versa. Then again, there is only 1 DM regular server in nexuiz (only 1 really since ever...)

ps. ffs the sg is still sick.sick.sickly strong in nexuiz. thank god for the new balance in xonotic.
Reply

#6
I don't understand how this is supposed to work. Calculating by fpm/dpm/spm doesn't make sense to me. I figure that if you have a good skill balance those rates would be similar for a server with noobs playing on it and with Pros playing (with the sole exception that noobs might do more suicides...) how should the calculation work if skill balancing actually would work??
My Xonstats Profile
Latest track on soundcloud: Farewell - to a better Place (piano improvisation)
New to Xonotic? Check out the Newbie Corner!

Reply

#7
I object to skillmatching for the simple reason that Xonotic doesn't have enough players to justify it. That said, if you want a good ranking system you could use something from chess. Think Glicko or Elo. You could count a player as having "won" over another player whenever they kill them, or when they beat them in a duel or CTF match (the latter is harder because of match lengths and scores, though).
[Image: vN3NkMA]
(Idea stolen from Mr. Bougo. Hehehehe)
Reply

#8
IM THE BEST PLAYER EVER

ONLY COS ITS MY BIRTHDAY TOMORROW :p

* chooksta head grows

t

:^
Reply

#9
I think its a good idea when playing one on one.

Obviously its been going on for quite some time with console games anyway e.g. Dead or Alive Ultimate earliest possibly and its been successful. However thats a fighting game and is thus one on one. You don't need a large numbers of players as a prerequisite for one on one matches.

As long as people have the option to play not to play matches that aren't skillmatched then that's cool.

I also agree with with CLANCLANCLAN that there aren't enough players online at the moment to warrant skillmatching anyway.
Reply

#10
Q:
(08-25-2011, 04:05 PM)Mepper Wrote: - Unskilled players can never learn to play from skilled players, they can't even get in the same server.
&
(08-25-2011, 04:05 PM)Mepper Wrote: - I might happen that you can't join servers that you like just because there are playing people there with an other average skill level.
A: Skillmatching is just an option, a mechanism to help players find enjoyable games on. You can still just join any server you like. It's not limiting players in any way.

Q:
(08-25-2011, 04:05 PM)Mepper Wrote: - I think many people will start checkingvout the difference between their skills and from other people, and I think a lot of players will start saying things like: "Haha, I'm better then you are!" or just calling others noob. I think it will just make Xonotic too competive.
A: Well you might be right but I'd personally not care about someone claiming he's better than me. If he is, I can see it on the scoretab.

Q:
(08-25-2011, 04:05 PM)Mepper Wrote: - ATM there are very little people really playing Xonotic on public servers, it does not happen often that there are enough people to play with. If you would really do this, there would be even less playdrs per server.
A: Right now I don't see enough people to play a mere duel. Of course the more players we have the more usefull this system can be. I'm thinking with future in mind.

(08-25-2011, 04:05 PM)Mepper Wrote: The idea is nice, but I do not think this is a good idea.
Hahaha! Well ok, whatever Big Grin

Q:
(08-25-2011, 04:26 PM)ThePWTULN Wrote: I like the idea of a universal 'skill level', but I think it needs to take more factors into account, particularly kill/death ratio and weapon accuracy.
A:Yeah you're right. I think also won DM matches can count (the shorter time the better). I think it could be done as a scoring system. Game adds you skill points (experience?) for doing stuff these sum up and they give a number that can be used to compare your skills to others's skills. That can be connected with achievement system if finished. I think another thread could be spawned to discuss only this aspect of the skillmatching system

(08-25-2011, 07:27 PM)booo Wrote: Well i like it too. i think unfa we played a couple of games the other day in DCC DM server.
Might be Smile I don't know what's your in-game name.

(08-25-2011, 07:27 PM)booo Wrote: I consider myself highly skilled in DM. DM and Minsta, and generally all each-man-forhimself mods are highly dependant on the "field" skilled variance. Its impossible to enjoy a DM with 4 beginners and 2 ppl massacring them all the time. even the dynamics of the game are different, as i ve seen ppl (makes total sense) to try to evade a confrontation with a better player and wipe out the noobs to rack up their frags.
This system could both prevent this and help such people find newbies to chop.

(08-25-2011, 07:27 PM)booo Wrote: Bottom line-I like your idea , and e.g at least a warning message when a "lower" skilled person tries to enter a bloodbath server.or vice versa. Then again, there is only 1 DM regular server in nexuiz (only 1 really since ever...)
Which one? Big Grin

(08-25-2011, 07:27 PM)booo Wrote: ps. ffs the sg is still sick.sick.sickly strong in nexuiz. thank god for the new balance in xonotic.
Um... I don't understand. What's ffs and sg?

(08-26-2011, 06:37 AM)chooksta Wrote: IM THE BEST PLAYER EVER

I think I have my max on the scale Big Grin
I'm making Liblast - a FOSS online FPS game made with Godot 4 and a 100% open-source toolchain
Reply

#11
Although this thread is mighty old, I dare to reply to it, anyway.

Yes Xonotic has few players yet. Yes a rankingsystem isn't very effective with this little players.
But I think it is inevitable for a good and broad playerbasis, in a distant future, to work out a good system to rate and match skills.

The Idea of Skillmatching is quite old, I have discussed it years ago on the servers with some people, it's probably even older.

To sum it up a little:
Main advantages:
-weaker players are not bound to be butchered
-too strong players can be excluded from certain protected areas (like Noob-Server)
-some people will have more fun playing smoother matches with equals

Main disadvantages:
-one can hardly calculate skill
-this system isn't fail-safe in any open source game, without registration


Personally I don't even necessarily want to play with equal players. Although I suck really hard, I like to group around the elite and profit from their knowledge and skill.
However I also tried to get rid of the progamers on a Beginners Only Server, who were butchering the Noobs. Several dozend bans per day wouldn't help, since they just keep joining after the IP-change. Thus I learned how important an effective rankingsystem is.
What I also learned, is that you can barely do anything against dynamic IPs.
It is of vital importance that we can guarantee a smooth gameexperience with as little frustration as possible, if we want to attract new players. The main problem with Nexuiz was that new players were repelled by the enormous skillgap. It is rather hard to motivate oneself to learn the skills, if you see how much you still need to learn and most people just refuse to go deeper into it. Commercial games offer their players a good tutorial and a slowly increasing difficulcy, hence being motivating, demanding and yet not frustrating. I see just two ways to achieve that in Xonotic:
1. working rankingsystem
2. mentoring system: offer a platform to match experienced palyers to noobs, in order to help them.

An attempt to a global, minimum-fail, ranking system could be achieved through a partly-registration approach.
If we could have two independant, trustworthy servers (one to be redundant -> safety) we could choose some trustworthy, well-known, well-reputated, active players to register there and gain the privilage to modify player ratings. The two servers would get data from the gameservers and save it into a databank. The Moderators could have a watch over those ratings and modify obviously false settings (e.g. booo decides to trick the system and play with the new nick buuu). I think the rating should be bound to the ip (in case its static), to a specific number, randomly generated with the client-download and maybe to the nick. The mods would have to have a look at the dynamic ips and the recently-joined numbers. This is not failsafe, but as close as we can get.

As for the rating mathematics, I'd strongly recommend to not forget ctf and tdm either. You'd need to have the playernumbers and each player's skill in mind, too. Maybe a quotient would be a good approach. Something like:
won*((Total_elo_of_enemy_team/Total_elo_of_own_team)^won)+own_elo
with won being a variable containing either 1 for won or -1 for lost. But obviously this is just a vague, spontanous idea. One should also keep the statistical dispersion of the Elo withing a team. Is a team with one 800Elo and five 200Elo players better or worse than a team with six 300Elo players?

Edit: If you guys decide that we do need a rankingsystem and if you want to make it real for xon 1.0, I can put some effort in it and work out a better formula as basis to discuss this issue.
Reply

#12
I enjoy playing with better players.

At UrbanTerror I used to play on servers for very high skilled players to get better.
Reply

#13
Actually I don't think skill matching would work nor make sense. On the other hand I agree that it's not desireable to have pro players raid beginners' servers. Only thing I can think of would be to make raping players fullbright and forcibly increasing their handicap server side after warning. Note that this should exclusively be implemented for dedicated beginners' servers. In any case I don't think bans would be the way to go.

For identification you can probably make use of the authorization system that's in place for storing race results I guess.
My Xonstats Profile
Latest track on soundcloud: Farewell - to a better Place (piano improvisation)
New to Xonotic? Check out the Newbie Corner!

Reply

#14
(09-21-2011, 06:14 AM)Halogene Wrote: Only thing I can think of would be to make raping players fullbright and forcibly increasing their handicap server side after warning.
That's what the server in question does. Doesn't help. The pros still rock the server. Ask Maddin for his experiences as a victim.
Reply

#15
The problem with skill matching is it will cause players to never get good at the game and seriously limit the skill ceiling by keeping them from meeting tougher players. This same problem exists in Quake Live, StarCraft II, and many other games.
Reply

#16
(09-21-2011, 06:37 AM)Lee_Stricklin Wrote: The problem with skill matching is it will cause players to never get good at the game.
This doesn't seem to affact chess players at all.
Anyway: the idea is not to prohibit people joining, but to warn them if the average skill is way too high or too low. Blocks only on protected servers for beginners, where they can learnt their first steps.
Reply

#17
(09-21-2011, 06:36 AM)killgenerals Wrote:
(09-21-2011, 06:14 AM)Halogene Wrote: Only thing I can think of would be to make raping players fullbright and forcibly increasing their handicap server side after warning.
That's what the server in question does. Doesn't help. The pros still rock the server. Ask Maddin for his experiences as a victim.

Then maybe the handicap doesn't get increased enough?

I don't think, however, there is a specific need for enabling turret style gameplay with lousy aim to score comparably to a nuclear jackrabbit on speed, no matter how high the handicap is. Even absolute beginners should not expect they can score significantly in a game like this by standing still, looking around and occasionally firing a weapon. Quite to the contrary they should be aware that you actually CAN move as fast as a nuclear jackrabbit on speed with some practice.

Edit: I am just voting against automatic blocks/bans here, whereas I think an automatic handicap system would actually make sense for dedicated beginners' servers (but only there).
My Xonstats Profile
Latest track on soundcloud: Farewell - to a better Place (piano improvisation)
New to Xonotic? Check out the Newbie Corner!

Reply

#18
You could also use skillmatching for the autobalance. This would only work for mods as ctf, tdm, ons etc.

But if you work with that Elo system, you could just let the autobalance make both teams have more or less the same Elo.
That would help a lot to not get unbalanced games, which are now quite a big problem.
Reply

#19
But why don't you guys want a global rating system to help people choose servers and to improve the ladder?
Reply

#20
(09-21-2011, 06:52 AM)Mepper Wrote: But if you work with that Elo system, you could just let the autobalance make both teams have more or less the same Elo. That would help a lot to not get unbalanced games, which are now quite a big problem.

thats the only way to get a proper balance. the normal autobalance is completely broken.

all in all the elo system is a very good way, for an improved ladder.

(09-21-2011, 06:46 AM)Halogene Wrote: Edit: I am just voting against automatic blocks/bans here, whereas I think an automatic handicap system would actually make sense for dedicated beginners' servers (but only there).

a notification like 'you joined a server with players above your elo level' is in my opinion the best way. this way you prevent unnecessary frustration, for everybody.
for example a player who has much experience in games like quake and starts to play xonotic.
<Samual> I am the most unprofessional developer ever
<bluez> halogene, you make awesome music, but you have no clue about ctf.
<Halogene> I didn't know mappers include some mysterious waypoints so members of the BOT clan can navigate a map?
<divVerent> if you don't pay for a premium account, your movement speed is limited to 100qu/s
Reply

#21
I actually would like to see some kinda global player tracking system. So that you have to login with some kinda account, and where also your stats can be seen, just like in CoD for example.

I think you still have to be able to change the colors etc. in your name, but that players can click on your name and see on which account you play, so that there would be no problems with fakenicking.

You should be able to make some minda account there for your clans. So that the clan gets a page, and the admin can invite people in the clan, so that nobody can fake clantags. And in that clan clan-page you must be able to see which players are in it, and for example things like the average Elo of the players.

It would also be handy, if you could send pm's to players, if you're logged in. This way you can easily contact players if they are not logged in.

And such a system would have many more possibilities.
Reply

#22
(09-21-2011, 07:09 AM)Mepper Wrote: And such a system would have many more possibilities.
But it's quite hard and expensive to maintain. Too much data. Too many laws you have to watch.

Also a registration is a very repelling thing, particularly if most people who try it out, do so because they discovered that goofy name in their linux repositories.
Reply

#23
(09-21-2011, 07:09 AM)Mepper Wrote: I actually would like to see some kinda global player tracking system. So that you have to login with some kinda account, and where also your stats can be seen, just like in CoD for example.
player stats are in development.

(09-21-2011, 07:09 AM)Mepper Wrote: I think you still have to be able to change the colors etc. in your name, but that players can click on your name and see on which account you play, so that there would be no problems with fakenicking.
a unique player id. something like that runs on the cts server. i think expanding this system would be rather easy, but still complicated because xonotic lacks of coders (well not only coders, but only coders are needed for this one)
<Samual> I am the most unprofessional developer ever
<bluez> halogene, you make awesome music, but you have no clue about ctf.
<Halogene> I didn't know mappers include some mysterious waypoints so members of the BOT clan can navigate a map?
<divVerent> if you don't pay for a premium account, your movement speed is limited to 100qu/s
Reply

#24
Yes, but it is especially really handy to prevent fakenicking, for example you can make my name so easy, just:

^1{^7dear^1}^7Mepper

I only made quite some keybinds, and I can change my name to (totally edited and unreadeble) {dear}Xaverioz.

But you can easily fake so many players. That shouldn't be so.
Reply

#25
(09-21-2011, 07:17 AM)Cortez666 Wrote: a unique player id. something like that runs on the cts server.
A unique ID is not the same as "global tracking" [Image: 316zrocegIL._SL500_AA300_.jpg] or enforced registration.
Reply



Forum Jump:


Users browsing this thread:
1 Guest(s)

Forum software by © MyBB original theme © iAndrew 2016, remixed by -z-