Create an account


Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
"Global player stats tracking system, supporting anonymous player as well"

#1
Hi,

I would like to write this part. Are there already any ideas for this one?
Reply

#2
Well currently there are only plans to have an (optional) player auth mechanism. Main problem is making it safe and incorporating crypto stuff in the engine and then some infrastructure to create accounts and stats to them. IIRC there is a "todo" item over at the dev tracker (dev.xonotic.org) maybe its best to sign up there, wait for approval and then monitor that item and coordinate with the guy doing the base work. Guess that would be divVerent Smile
Real signature is still in production!
Reply

#3
I'm already signed there for few days now and I didn't find anything about that player stats & auth server yet.
Reply

#4
atheros, go to the wiki on the dev website and read through the link that says "IRC log". That was the very beginning conversation that we had regarding this fork. In that initial discussion, I talked at length with divVerent about a central user authentication system. He shared his ideas and concerns there. It's a lot of reading, but it will give you more insight into the idea he came up with.

Since then, I know he has had further discussions with other people. Yesterday, he had a chat with Lordhavoc a way for Darkplaces to support this system. For more details, you'll have to discuss it more with divVerent in IRC.
Reply

#5
Oh.. sorry then, i thought there would already be some feature/todo/wish item Wink
Real signature is still in production!
Reply

#6
thanks Dokujisan
Oh crap... 1h talk about privacy....

So to sum things up:
1. colors in player names only for registered users,
2. a prefix/suffix for unregistered users (I would propose a simple ~ prefix),
3. 1 default model for unregistered users, (this may actually suck),
4. no tell command so NADZ would stop spamming,
5. super untraceable authorization systems, so div doesn't feel traced by anyone Smile

xsax changes nicks every time he plays, so he won't be affected the auth server anyway. The only way for him could be kickban, unless he has a dynamic IP.

I think the only servers that should require auth should be ladder servers and private servers. FFA is FFA, that shouldn't change.

As for stats, I think the Stats server should be separated from the auth server. The stats would only be maintained per nick, not per account. An easy way would be a log file created by the server and uploaded to the statistics server. Only trusted server admins would be allowed to do so.

Such logs could be uploaded by a cronjob hourly or daily (at 5am or so).

Example format:
Code:
mode CTF
join blue nick1
join red nick2
nohit nick1 crylink
hit nick1 nick2 crylink 50
kill nick1 nick2 crylink
suicide nick1

This would allow to gather a lot of statistics, wouldn't harm any fakenicker's privacy and would be easily extensible. Xsax would be able to see his stats on his every nick (like on DCC) but not in realtime.
Reply

#7
There was already a stats project started well over a year ago by -z- and alpha that got really far but stalled because of a lack of a central user system. We'll likely resume development of that for collecting the stats.

Quote:I think the only servers that should require auth should be ladder servers and private servers. FFA is FFA, that shouldn't change.

I don't agree with that. I think having stats is a feature that a lot of players would enjoy. If they want to connect with their registered account and opt-in to stat collection (which is one of the ideas also discussed...players choosing what info gets collected), then they can.

Quote:The stats would only be maintained per nick, not per account.

Not entirely true, the way I understand it. Each account will only have one registered player name that can track stats. The other names that they use (aliases) would be limited in features, including not tracking stats.

Anyway, you could discuss technical details further with divverent in the freenode xonotic channel.
Reply

#8
A method of measuring a players skill level i propose some time back that could be used with a stat tracking system in addition to weapon accuracy. Strategy games measure a players skill with clicks per minute. In a fps game a players skill can be measured many ways such as kills, caps or highest score.

Although I propose a system which measures a players skill based on 3 factors, with loosely thought out variables:

Strength - based on the players decision to collect the weapons and ammo and kills, flag carrier kills and saves.

Agility - based on the players to capture the flag time, amount of laser/rl jumps, and top speed

Endurance - based on players average health and amount of damage taken without dying
All theses could be disputed on how they are determined but this is just a rough example...

A small bar graph showing a players playing style could be generated showing the true nature of there skill, for examlple.

Player who caps a lot

Strength----
Agility----------------------
Endurance------

All rounder

Strength-----------------
Agility------------
Endurance---------

Nex whore/camper

Strength------------
Agility---
Endurance---------------

Player N00b

Strength---
Agility--
Endurance-

This would show you exactly what area the player is focusing on and what needs to be improved. If this is implemented later on this data could be recorded to the players account and skill could be accumulated to make a skill level ect ect.
One problem with Nexuiz was, is that it is to hard for someone with little experience with the game to want to continue to play online, if they're just getting pwned non stop by regular high skill players. This means that the community doesn't grow as fast as it should because n00bs are constantly getting bashed away from the game. So this could also be used to measure skill to determine what server they should go to like Quake LIVE.

All alot of work but maybe something to do with it in the future Smile
There's nothing better than getting off you butt and contributing to a community. There is no excuse when it comes to computers. Spend a little of you playing time, giving back Smile
Reply

#9
GET (currently) requests are sent from Darkplaces, no matter the gameplay. Server can opt out sending data and also player can opt out sending his nickname. Stats server tracks users against their ID, which are protected by sertificates Div0's auth server issues. Global ID system would be used to arrange players in balanced teams if they are not anonymous.
Reply

#10
The stat server and the auth server separation doesn't mean you can't join that information. You can request stats for you account nick name.

Registered nick: atheros
Unregistered fakenick: ~atheros

So you can always retrieve the stats for an account but not if someone was fakenicking (unless you know the nick)

Dokujisan, where can I fiind the code for that server?

I like Cuinnton's idea.
Reply

#11
Stats are queried not by a nick, but by an id. As I said, people can opt out sending their nicks so it's not reliable. Auth system is developed by div0.s

Statistic systems purpose is to collect data (this means numbers). Web frontend can show them whatever way it likes.
Reply

#12
Yes it can, as far as I understood, div doesn't want his games be trackable. If you register an account with the name nick, no one will be able to play on that nick. If they don't auth, they will be visible as ~nick not nick. So stats for the real nick will be safe. And if div decides to play anonymously, he just fakenicks as foobar (visible as ~foobar) and those stats won't be associated with his real account.
Reply

#13
Hey, i was playing a game lately called "Live for Speed" (short LFS , racing game) . They have got a nice stats system. You have to register at the site and if you want to play online, you have to log in with that name in game when you click Multiplayer. But you can use another nick in game still.
It looks like this if you join a server.
Code:
INGAMENICK (ONLINENICK) joined the server.
Mirio (mirio)
or: xyz (mirio)
So people could use your name in game but that does not effect the stats (unless they got your password and log in with your online account Tongue).
Then it tracks everything like 1st,2nd,3rd places , how many Laps and stuff.

You can check out the statistics page here: http://www.lfsworld.net/
You can doubleclick "Online Racer Stats" and type in my name "mirio" and you will see an example. I think its pretty nice..

I don't have a clue how this works though.


It could show Fastest Capture time in CTF for a map. Or Fastest Time in Nexrun..
[Image: 21.png]
IRC (QuakeNet): #bot.xonotic | #xonotic.pickup | #xonotic | #xonotic.cup
Steam | Twitch.tv | YouTube
Movies: Mirification #1 | #2 | Mirificaption #1 | #3 | #4 | [BOT] Clan #3 | #5 | #6 | #7 | [BOT] Clan #4 | #8

Reply

#14
I am working on a global player authentication system to help with such stats, allowing both anonymous tracking of stats (so only you can see them, and on the website you'd show as an "anonymous"), and of course also public tracking, as option settable by the player.

Also, it will be possible to ENFORCE that players must authenticate on a server, either completely, or by IP range (basically, an authenticated player is allowed to come from a banned IP range anyway).

However, all this is still some months in the future, and not necessarily in the first release. I have designed a protocol for it and an implementation, which unfortunately used a library that cannot be legally linked into the engine (namely, OpenSSL).
Reply

#15
Then I guess there is nothing to do for me here
Reply

#16
So is it going to be like IRC? Where you can have whatever nick you want but auth with the original one?
Reply

#17
In my mind, one of the best things of Nexuiz/Xonotic was that you didnt have to register for playing online with a cool nick (with colors).
What may be an idea is to make an ID dependent (!!!) stats system. I dont think that there are loads of players that change their IP whole the time.
So guys like xsax could be found easy...But noone has to register for a nice nick and you can still have other nicks with the same stats!
What can be improved here is maybe a menu of the current server you are in where you can see the stats of each player who´s here at the moment. If you are on this stats menu of a player you may can see his other nicks he uses or he has used. (May for privacy that should not be done)

So I would prefer a system that still has as much privacy as the old Nexuiz/Xonotic had.
Would be better/would be prefered for a lot of players...
Reply

#18
if you read DivVerents posts again the planned system will allow players to dis/enable tracking and i'm sure servers will still allow unauthed players (if the admin wants to)
Real signature is still in production!
Reply

#19
Anonymous and aliasing players definitely should be allowed, in a way that aliasing players can still be associated with their real nicks (but only in terms of things like stats, people shouldn't be able to see their nicks). Also, I think that stats, in addition to things like endurance, etc. described already, should include plain ol' weapon accuracy, like what we have now. All information should be clearable in a secure fashion ("hold ctrl, alt, and shift and click here to clear this stat").
Reply

#20
IIRC the original plan was to display a icon beside a 'authed' player in the scoreboard. So even if someone would use the same player name that one would not get the icon.
Holding three buttons and clicking? Heh, a popup asking "are you sure" should be easier to handle Wink
Real signature is still in production!
Reply

#21
Theres already a "master" server of sorts, and is opensource. Is the one the game use to search games: dpmaster.
http://freshmeat.net/projects/dpmaster

It could be buffed to let it search "players".
- What server is dude XYZ playing?
- What name/ rank/ stuff is that dude ? (stats)

Yet another route, maybe easier, is to make so servers generate logs, and the "stat server" is a just a server that download and process lots of logs. The reason could be easier, is that such stuff could be written in PHP in a webserver, so is a direct approach and one that use something easier than C. Probably more apropiate than C, since most stuff is string handling.

What stats to save?
hours played by gamemode (dirname of the modfolder), frags by gamemode, stuff.
and achievements.

Make it simple, make it feel finished, make it expandable (by programmers).
Reply

#22
More stats for storage:
player's achievements such as
1.To the last drop of blood - to kill the enemy, having less than 5 hp
2.Last hit - kill 5/10/15/more players in a row, fired on them once
3.Will power - to kill the enemy with Laser
4.Flag deliverer - to win the game, bringing more than half of flags
5.God - finish the game, having not less than 25% of murders and 0 deaths
6.Lucky - 2/3/4 players to kill with one shot
and others ...

In addition, you can store rating murder / death. You can create "levels" of players based on their skill and play time. Levels can be used to search for optimal game - the server will show the average level of players and games with the closest level will be listed first
I use google translator to write the message, so do not blame me in my illiterate speech
Reply

#23
Some interesting numbers:
Total stats (basically, all entries in scoreboards added together, i.e. total caps, total frags, total deaths)
Average stats (the above, except an average: average caps per game, average deaths per game)
Frag to death ratio for all time
Total time playing
Total time speccing
Favorite/most hated weapon (gun out most/least of the time)
Most/least deadly weapon (gun with most/least frags)
Most accurate/inaccurate weapon (most accurate/inaccurate gun)

Some of these are already recorded with the current game stats, they just need to be averaged or recorded.
Reply

#24
I already suggested using logs to generate statistics. It seams however that Div has already some code and wants to use it.
Reply

#25
Seen discussion about this on IRC. I completely support the idea as long as it remains optional (at least by default for new servers) and the software to run a stats server is also available, so this doesn't become a non-replicable dependency that will make Xonotic depend on a certain service or website for the feature to exist. If that does apply though, I think the idea is awesome and can't wait to see this when it's ready Smile
<spackObot> Congratulations to Samual and Taoki, your lovescore is 98.463%!
Samual (~dioteckte@...) quit #xonotic.pickup (gonna kill myself now)
Reply



Possibly Related Threads...
Thread Author Replies Views Last Post
  A Garry's Mod / sandbox system MirceaKitsune 20 26,107 01-05-2019, 10:52 PM
Last Post: 3agle427
  CTS stats BuddyFriendGuy 16 1,781 11-01-2018, 04:39 AM
Last Post: Smilecythe
  Spawn system Mirio 57 19,544 05-28-2016, 03:49 AM
Last Post: Smilecythe
  [SOLVED] Correct way to make entity with opacity depending on distance to player Penguinum-tea 2 2,174 04-03-2015, 02:18 PM
Last Post: Penguinum-tea
  [plan] A single-player game creation toolkit using the Xonotic framework MirceaKitsune 21 21,778 06-18-2013, 10:15 AM
Last Post: Zeo
Lightbulb Easy to configure *map* balance system Samual 8 7,946 11-17-2012, 04:14 AM
Last Post: Mr. Bougo
  Bone based damage system (feature vote and debate) MirceaKitsune 42 28,155 05-17-2012, 01:29 AM
Last Post: CuBe0wL
  How do I use the newer 48 slot weapon system? May Epper 1 2,370 04-20-2012, 01:28 AM
Last Post: Mr. Bougo
  We need more alien and robot player models! MirceaKitsune 25 19,462 11-17-2011, 10:03 PM
Last Post: Lee_Stricklin
Question How do I create IQM player models for Xonotic? Ihsan 4 5,524 06-20-2011, 06:53 PM
Last Post: nifrek

Forum Jump:


Users browsing this thread:
1 Guest(s)

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