]> git.xonotic.org Git - xonotic/xonotic-data.pk3dir.git/blobdiff - qcsrc/server/playerstats.qc
document the expected response format of xonstat (currently not used yet)
[xonotic/xonotic-data.pk3dir.git] / qcsrc / server / playerstats.qc
index 3533b4882e4b94264cb3dcf4a4c6b3fa1337f9e8..87220328fb8a58ba5aa435bbc274cdb6d62002aa 100644 (file)
@@ -189,6 +189,7 @@ void PlayerStats_TeamScore(float t, string event_id, float value) // TODO: doesn
        P: player ID of an existing player; this also sets the owner for all following "n", "e" and "t" lines (lower case!)
        n: nickname of the player (optional)
        t: team ID
+       i: player index
        e: followed by an event name, a space, and the event count/score
                event names can be:
                        alivetime: total playing time of the player
@@ -198,13 +199,31 @@ void PlayerStats_TeamScore(float t, string event_id, float value) // TODO: doesn
                        scoreboardvalid: set to 1 if the player was there at the end of the match
                        total-<scoreboardname>: total score of that scoreboard item
                        scoreboard-<scoreboardname>: end-of-game score of that scoreboard item (can differ in non-team games)
-                       achievement-<achievementname>: achievement counters
+                       achievement-<achievementname>: achievement counters (their "count" is usually 1 if nonzero at all)
+                       kills-<index>: number of kills against the indexed player
                        rank <number>: rank of player
                        acc-<weapon netname>-hit: total damage dealt
                        acc-<weapon netname>-fired: total damage that all fired projectiles *could* have dealt
                        acc-<weapon netname>-cnt-hit: amount of shots that actually hit
                        acc-<weapon netname>-cnt-fired: amount of fired shots
                        acc-<weapon netname>-frags: amount of frags dealt by weapon
+
+       Response format (not used yet):
+
+       V: format version (always 1) - this MUST be the first line!
+       #: comment (MUST be ignored by any parser)
+       R: release information on the XonStat server
+       T: current time
+       S: in case of a stats submit request, the human readable xonstat URL for the submitted match
+       P: player ID of an existing player; this also sets the owner for all following "n", "e" and "t" lines (lower case!)
+       e: followed by an event name, a space, and the event count/score, and - if this is a reply to a stats submit request - a space, and the delta of the event count/score caused by this match
+               event names can be the same as above (they then are either sums, or minimum/maximum values, depending on context), as well as:
+                       elo: current Elo calculated by the stats server
+                       rank <number>: global rank of player for this game type (for stats submit requests)
+                       rank-<gametype> <number>: global rank of player for any game type (for non stats submit requests)
+               not all events need to be included, of course
+               if an event is counted additively from unprocessed submitted data, it should not be sent as part of stats submit response
+               achievement-<achievementname> events may be generated by the xonstat server and reported as part of stats submit responses!
 */
 
 void PlayerStats_ready(entity fh, entity pass, float status)