add an autoscreenshot method
[xonotic/xonotic.git] / Docs / eventlog.txt
1 cvars:
2 ______________
3
4    sv_eventlog                    master switch (default: 0)
5    sv_eventlog_files              print frags, scores and captures for separate files each match (default: 0)
6    sv_eventlog_console            print frags, scores and captures to serverconsole during the match (default: 1)
7    sv_logscores_bots              choose whether bot are included in stats or not (default: 0)
8                                 
9    sv_eventlog_files_counter      number of matches logged until now
10    sv_eventlog_files_nameprefix   file name prefix to be used (default: nexuiz)
11    sv_eventlog_files_namesuffix   file name extension to be used (default: .log)
12    sv_eventlog_files_timestamps   prefix log lines in the files with :time events (default: 1)
13
14 log format:
15 ______________
16
17    :logversion:3
18    :gamestart:<gametype>_<mapname>:<matchid>
19    :gameinfo:mutators:LIST:mutator1:mutator2:...
20
21       (note that mutators are listed by their cvar name with g_ removed,
22       unless such a cvar is 1 by default - then the mutator is listed with
23       a no_ prefix if the cvar is 0)
24
25    :gameinfo:end
26    :join:<ID>:<slot>:<ip>:<nickname>
27    :join:<ID>:<slot>:bot:<nickname>
28    :name:<ID>:<nickname>
29    :part:<ID>
30    :team:<ID>:<team>:<jointype>
31    :kill:frag:<ID of killer>:<ID of victim>:type=<death type>:items=<itemstring of killer>:victimitems=<itemstring of victim>
32    :kill:tk:<ID of killer>:<ID of victim>:type=<death type>:items=<itemstring of killer>:victimitems=<itemstring of victim>
33    :kill:suicide:<ID>:<ID>:type=<death type>:items=<itemstring>
34    :kill:accident:<ID>:<ID>:type=<death type>:items=<itemstring>
35    :ctf:steal:<flagcolor>:<ID of attacker>
36    :ctf:dropped:<flagcolor>:<ID of dropper>
37    :ctf:pickup:<flagcolor>:<ID of attacker>
38    :ctf:capture:<flagcolor>:<ID of attacker>
39    :ctf:return:<flagcolor>:<ID of defender>
40    :ctf:returned:<flagcolor>
41    :dom:taken:<previouscolor>:<ID of player>
42    :keyhunt:capture:<ID of player>:<points for player>:<ID of key owner>:<points for key owner>:<name of key>
43    :keyhunt:carrierfrag:<ID of player>:<points for player>:<ID of key owner>:<points for key owner>:<name of key>
44    :keyhunt:collect:<ID of player>:<points for player>:<ID of key owner>:<points for key owner>:<name of key>
45    :keyhunt:destroyed:<ID of player>:<points for player>:<ID of key owner>:<points for key owner>:<name of key>
46    :keyhunt:destroyed_holdingkey:<ID of player>:<points for player>:<ID of key owner>:<points for key owner>:<name of key>
47    :keyhunt:dropkey:<ID of player>:<points for player>:<ID of key owner>:<points for key owner>:<name of key>
48    :keyhunt:losekey:<ID of player>:<points for player>:<ID of key owner>:<points for key owner>:<name of key>
49    :keyhunt:push:<ID of player>:<points for player>:<ID of key owner>:<points for key owner>:<name of key>
50    :keyhunt:pushed:<ID of player>:<points for player>:<ID of key owner>:<points for key owner>:<name of key>
51    :scores:<gametype>_<mapname>:<map runtime>
52    :labels:player:<head1><flags>,<head2><flags>,...
53    :player:see-labels:<score1>,<score2>,...:<playtime>:<team>:<ID>:<nickname>
54    :player:see-labels:<score1>,<score2>,...:<playtime>:spectator:<ID>:<nickname>
55    :labels:teamscores:<head1><flags>,<head2><flags>,...
56    :teamscores:see-labels:<score1>,<score2>,...:<team>
57    :end
58    :restart
59    :gameover
60    :vote:suggested:<mapname>:<playerid>
61    :vote:keeptwo:<mapname>:<mapvotes>:<mapname>:<mapvotes>:::<mapname>:<mapvotes>:...:didn't vote:<notvoters>
62    :vote:finished:<mapname>:<mapvotes>:::<mapname>:<mapvotes>:<mapname>:<mapvotes>:...:didn't vote:<notvoters>
63    :vote:suggestion_accepted:<mapname>
64    :vote:vcall:<ID of player>:<vote command display string>
65    :vote:vyes:<yescount>:<nocount>:<abstaincount>:<notvoters>:<mincount>
66    :vote:vno:<yescount>:<nocount>:<abstaincount>:<notvoters>:<mincount>
67    :vote:vtimeout:<yescount>:<nocount>:<abstaincount>:<notvoters>:<mincount>
68    :vote:vstop:<ID of stopper>
69    :vote:vlogin:<ID of player>
70    :vote:vdo:<ID of player>:<do command display string>
71    :time:<YYYY-MM-DD HH:MM:SS>
72    :recordset:<ID of player>:<time in seconds>
73
74    Note that only the :join and :player lines ever contain player names. The
75    :time event only appears in the log files if sv_eventlog_files_timestamps
76    is 1; there is no way to log these time stamps to the console (for console
77    timestamps, set timestamps to 1).
78
79 team colors:
80     1 = No Team (Domination)
81     5 = Red Team
82    14 = Blue Team
83    13 = Yellow Team
84    10 = Pink Team
85
86 join types:
87     1 = connect
88     2 = auto
89     3 = manual
90     4 = spectating
91     6 = adminmove
92
93 label flags:
94    !! = primary sorting key
95    <!! = primary sorting key, lower is better
96    ! = secondary sorting key
97    <! = secondary sorting key, lower is better
98    < = lower is better
99
100 itemstring:
101    <weaponid><flags>
102    or
103    <weaponid><flags>|<runes>
104
105    where flags can contain:
106          F = player carries the flag
107          S = player has strength
108          I = player has the shield
109          T = player is typing (console, menu or chat)
110    
111    and weapon IDs are:
112          1 = Laser
113                  2 = Shotgun
114                  3 = Uzi
115          4 = Mortar
116          5 = Electro
117          6 = Crylink
118          7 = Nex
119          8 = Hagar
120          9 = Rocket Launcher
121         10 = Port-O-Launch
122         11 = MinstaNex
123         12 = Grappling Hook
124         13 = Heavy Laser Assault Cannon
125         14 = T.A.G. Seeker
126
127    runes/curses are stored as a bit mask with the following values:
128          1 = Strength
129          2 = Defense
130          4 = Regeneration
131          8 = Speed
132         16 = Vampire
133       8192 = Weakness
134      16384 = Vulnerability
135      32768 = Venom
136      65536 = Slow
137     131072 = Empathy
138
139 death type:
140    either a weapon ID ORed with weapon death flags, or one of:
141      10000 = fallen to death
142      10001 = telefragged
143      10002 = drowned
144      10003 = killed by a trap / fallen into the void
145      10004 = lava
146      10005 = slime
147      10006 = console kill
148      10007 = (MinstaGib) out of ammo
149      10008 = swamp
150      10009 = team change
151      10010 = auto team change
152      10011 = camping protection
153          10012 = player became too fast (should never happen)
154          10013 = health rot
155          10014 = mirror damage
156          10015 = g_touchexplode
157          10100 = turret
158         10150 = spiderbot miniguns
159         10151 = spiderbot rocket
160         10152 = spiderbot, cushed by
161         10300 = custom deathmessage
162
163    weapon death flags are:
164        256 = secondary fire
165            512 = splash damage
166           1024 = bounced projectile
167           2048 = head shot (MinstaNex only)
168           4096 = unused flag
169
170 There will be a log analyzer parsing this file format soon. Note that weapon
171 IDs are below 10000.