From: Martin Taibr <taibr.martin@gmail.com>
Date: Sat, 30 Jun 2018 21:52:22 +0000 (+0200)
Subject: unix2dos
X-Git-Tag: xonotic-v0.8.5~153^2
X-Git-Url: https://git.rm.cloudns.org/?a=commitdiff_plain;h=refs%2Fmerge-requests%2F39%2Fhead;p=xonotic%2Fxonotic.git

unix2dos
---

diff --git a/Docs/eventlog.txt b/Docs/eventlog.txt
index eab6d56d..6a9ca84f 100644
--- a/Docs/eventlog.txt
+++ b/Docs/eventlog.txt
@@ -1,139 +1,139 @@
-cvars (see xonotic.org/tools/cacs for more up-to-date information):
-______________
-
-   sv_eventlog                    master switch
-   sv_eventlog_files              print frags, scores and captures for separate files each match
-   sv_eventlog_console            print frags, scores and captures to serverconsole during the match
-   sv_logscores_bots              choose whether bot are included in stats or not
-                                
-   sv_eventlog_files_counter      number of matches logged until now
-   sv_eventlog_files_nameprefix   file name prefix to be used 
-   sv_eventlog_files_namesuffix   file name extension to be used
-   sv_eventlog_files_timestamps   prefix log lines in the files with :time events
-
-log format:
-______________
-
-   :logversion:3
-   :gamestart:<gametype>_<mapname>:<matchid>
-   :gameinfo:mutators:LIST:mutator1:mutator2:...
-
-      (note that mutators are listed by their cvar name with g_ removed,
-      unless such a cvar is 1 by default - then the mutator is listed with
-      a no_ prefix if the cvar is 0)
-
-   :gameinfo:end
-   :join:<ID>:<slot>:<ip>:<nickname>
-   :join:<ID>:<slot>:bot:<nickname>
-   :name:<ID>:<nickname>
-   :part:<ID>
-   :team:<ID>:<team>:<jointype>
-   :kill:frag:<ID of killer>:<ID of victim>:type=<death type>:items=<itemstring of killer>:victimitems=<itemstring of victim>
-   :kill:tk:<ID of killer>:<ID of victim>:type=<death type>:items=<itemstring of killer>:victimitems=<itemstring of victim>
-   :kill:suicide:<ID>:<ID>:type=<death type>:items=<itemstring>
-   :kill:accident:<ID>:<ID>:type=<death type>:items=<itemstring>
-   :ctf:steal:<flagcolor>:<ID of attacker>
-   :ctf:dropped:<flagcolor>:<ID of dropper>
-   :ctf:pickup:<flagcolor>:<ID of attacker>
-   :ctf:capture:<flagcolor>:<ID of attacker>
-   :ctf:return:<flagcolor>:<ID of defender>
-   :ctf:returned:<flagcolor>
-   :dom:taken:<previouscolor>:<ID of player>
-   :keyhunt:capture:<ID of player>:<points for player>:<ID of key owner>:<points for key owner>:<name of key>
-   :keyhunt:carrierfrag:<ID of player>:<points for player>:<ID of key owner>:<points for key owner>:<name of key>
-   :keyhunt:collect:<ID of player>:<points for player>:<ID of key owner>:<points for key owner>:<name of key>
-   :keyhunt:destroyed:<ID of player>:<points for player>:<ID of key owner>:<points for key owner>:<name of key>
-   :keyhunt:destroyed_holdingkey:<ID of player>:<points for player>:<ID of key owner>:<points for key owner>:<name of key>
-   :keyhunt:dropkey:<ID of player>:<points for player>:<ID of key owner>:<points for key owner>:<name of key>
-   :keyhunt:losekey:<ID of player>:<points for player>:<ID of key owner>:<points for key owner>:<name of key>
-   :keyhunt:push:<ID of player>:<points for player>:<ID of key owner>:<points for key owner>:<name of key>
-   :keyhunt:pushed:<ID of player>:<points for player>:<ID of key owner>:<points for key owner>:<name of key>
-   :scores:<gametype>_<mapname>:<map runtime>
-   :labels:player:<head1><flags>,<head2><flags>,...
-   :player:see-labels:<score1>,<score2>,...:<playtime>:<team>:<ID>:<nickname>
-   :player:see-labels:<score1>,<score2>,...:<playtime>:spectator:<ID>:<nickname>
-   :labels:teamscores:<head1><flags>,<head2><flags>,...
-   :teamscores:see-labels:<score1>,<score2>,...:<team>
-   :end
-   :restart
-   :gameover
-   :vote:suggested:<mapname>:<playerid>
-   :vote:keeptwo:<mapname>:<mapvotes>:<mapname>:<mapvotes>:::<mapname>:<mapvotes>:...:didn't vote:<notvoters>
-   :vote:finished:<mapname>:<mapvotes>:::<mapname>:<mapvotes>:<mapname>:<mapvotes>:...:didn't vote:<notvoters>
-   :vote:suggestion_accepted:<mapname>
-   :vote:vcall:<ID of player>:<vote command display string>
-   :vote:vyes:<yescount>:<nocount>:<abstaincount>:<notvoters>:<mincount>
-   :vote:vno:<yescount>:<nocount>:<abstaincount>:<notvoters>:<mincount>
-   :vote:vtimeout:<yescount>:<nocount>:<abstaincount>:<notvoters>:<mincount>
-   :vote:vstop:<ID of stopper>
-   :vote:vlogin:<ID of player>
-   :vote:vdo:<ID of player>:<do command display string>
-   :time:<YYYY-MM-DD HH:MM:SS>
-   :recordset:<ID of player>:<time in seconds>
-
-   Note that only the :join and :player lines ever contain player names. The
-   :time event only appears in the log files if sv_eventlog_files_timestamps
-   is 1; there is no way to log these time stamps to the console (for console
-   timestamps, set timestamps to 1).
-
-team colors:
-    1 = No Team (Domination)
-    5 = Red Team
-   14 = Blue Team
-   13 = Yellow Team
-   10 = Pink Team
-
-join types:
-    1 = connect
-    2 = auto
-    3 = manual
-    4 = spectating
-    6 = adminmove
-
-label flags:
-   !! = primary sorting key
-   <!! = primary sorting key, lower is better
-   ! = secondary sorting key
-   <! = secondary sorting key, lower is better
-   < = lower is better
-
-itemstring:
-   <weaponid><flags>
-   or
-   <weaponid><flags>|<runes>
-
-   where flags can contain:
-         F = player carries the flag
-         S = player has strength
-         I = player has the shield
-         T = player is typing (console, menu or chat)
-   
-   and weapon IDs are:
-         1 = Laser
-		 2 = Shotgun
-		 3 = Machine Gun
-         4 = Mortar
-         5 = Electro
-         6 = Crylink
-         7 = Vortex
-         8 = Hagar
-         9 = Rocket Launcher
-        10 = Port-O-Launch
-        11 = Vaporizer
-        12 = Grappling Hook
-        13 = Heavy Laser Assault Cannon
-        14 = T.A.G. Seeker
-
-death type:
-   either a weapon ID ORed with weapon death flags, or one of
-   the notifications in common/deathtypes.qh in the form of a string.
-
-   weapon death flags are:
-       256 = secondary fire
-	   512 = splash damage
-	  1024 = bounced projectile
-	  2048 = head shot (MinstaNex only)
-	  4096 = unused flag
-
-There will be a log analyzer parsing this file format soon. Note that weapon
-IDs are below 10000.
+cvars (see xonotic.org/tools/cacs for more up-to-date information):
+______________
+
+   sv_eventlog                    master switch
+   sv_eventlog_files              print frags, scores and captures for separate files each match
+   sv_eventlog_console            print frags, scores and captures to serverconsole during the match
+   sv_logscores_bots              choose whether bot are included in stats or not
+                                
+   sv_eventlog_files_counter      number of matches logged until now
+   sv_eventlog_files_nameprefix   file name prefix to be used 
+   sv_eventlog_files_namesuffix   file name extension to be used
+   sv_eventlog_files_timestamps   prefix log lines in the files with :time events
+
+log format:
+______________
+
+   :logversion:3
+   :gamestart:<gametype>_<mapname>:<matchid>
+   :gameinfo:mutators:LIST:mutator1:mutator2:...
+
+      (note that mutators are listed by their cvar name with g_ removed,
+      unless such a cvar is 1 by default - then the mutator is listed with
+      a no_ prefix if the cvar is 0)
+
+   :gameinfo:end
+   :join:<ID>:<slot>:<ip>:<nickname>
+   :join:<ID>:<slot>:bot:<nickname>
+   :name:<ID>:<nickname>
+   :part:<ID>
+   :team:<ID>:<team>:<jointype>
+   :kill:frag:<ID of killer>:<ID of victim>:type=<death type>:items=<itemstring of killer>:victimitems=<itemstring of victim>
+   :kill:tk:<ID of killer>:<ID of victim>:type=<death type>:items=<itemstring of killer>:victimitems=<itemstring of victim>
+   :kill:suicide:<ID>:<ID>:type=<death type>:items=<itemstring>
+   :kill:accident:<ID>:<ID>:type=<death type>:items=<itemstring>
+   :ctf:steal:<flagcolor>:<ID of attacker>
+   :ctf:dropped:<flagcolor>:<ID of dropper>
+   :ctf:pickup:<flagcolor>:<ID of attacker>
+   :ctf:capture:<flagcolor>:<ID of attacker>
+   :ctf:return:<flagcolor>:<ID of defender>
+   :ctf:returned:<flagcolor>
+   :dom:taken:<previouscolor>:<ID of player>
+   :keyhunt:capture:<ID of player>:<points for player>:<ID of key owner>:<points for key owner>:<name of key>
+   :keyhunt:carrierfrag:<ID of player>:<points for player>:<ID of key owner>:<points for key owner>:<name of key>
+   :keyhunt:collect:<ID of player>:<points for player>:<ID of key owner>:<points for key owner>:<name of key>
+   :keyhunt:destroyed:<ID of player>:<points for player>:<ID of key owner>:<points for key owner>:<name of key>
+   :keyhunt:destroyed_holdingkey:<ID of player>:<points for player>:<ID of key owner>:<points for key owner>:<name of key>
+   :keyhunt:dropkey:<ID of player>:<points for player>:<ID of key owner>:<points for key owner>:<name of key>
+   :keyhunt:losekey:<ID of player>:<points for player>:<ID of key owner>:<points for key owner>:<name of key>
+   :keyhunt:push:<ID of player>:<points for player>:<ID of key owner>:<points for key owner>:<name of key>
+   :keyhunt:pushed:<ID of player>:<points for player>:<ID of key owner>:<points for key owner>:<name of key>
+   :scores:<gametype>_<mapname>:<map runtime>
+   :labels:player:<head1><flags>,<head2><flags>,...
+   :player:see-labels:<score1>,<score2>,...:<playtime>:<team>:<ID>:<nickname>
+   :player:see-labels:<score1>,<score2>,...:<playtime>:spectator:<ID>:<nickname>
+   :labels:teamscores:<head1><flags>,<head2><flags>,...
+   :teamscores:see-labels:<score1>,<score2>,...:<team>
+   :end
+   :restart
+   :gameover
+   :vote:suggested:<mapname>:<playerid>
+   :vote:keeptwo:<mapname>:<mapvotes>:<mapname>:<mapvotes>:::<mapname>:<mapvotes>:...:didn't vote:<notvoters>
+   :vote:finished:<mapname>:<mapvotes>:::<mapname>:<mapvotes>:<mapname>:<mapvotes>:...:didn't vote:<notvoters>
+   :vote:suggestion_accepted:<mapname>
+   :vote:vcall:<ID of player>:<vote command display string>
+   :vote:vyes:<yescount>:<nocount>:<abstaincount>:<notvoters>:<mincount>
+   :vote:vno:<yescount>:<nocount>:<abstaincount>:<notvoters>:<mincount>
+   :vote:vtimeout:<yescount>:<nocount>:<abstaincount>:<notvoters>:<mincount>
+   :vote:vstop:<ID of stopper>
+   :vote:vlogin:<ID of player>
+   :vote:vdo:<ID of player>:<do command display string>
+   :time:<YYYY-MM-DD HH:MM:SS>
+   :recordset:<ID of player>:<time in seconds>
+
+   Note that only the :join and :player lines ever contain player names. The
+   :time event only appears in the log files if sv_eventlog_files_timestamps
+   is 1; there is no way to log these time stamps to the console (for console
+   timestamps, set timestamps to 1).
+
+team colors:
+    1 = No Team (Domination)
+    5 = Red Team
+   14 = Blue Team
+   13 = Yellow Team
+   10 = Pink Team
+
+join types:
+    1 = connect
+    2 = auto
+    3 = manual
+    4 = spectating
+    6 = adminmove
+
+label flags:
+   !! = primary sorting key
+   <!! = primary sorting key, lower is better
+   ! = secondary sorting key
+   <! = secondary sorting key, lower is better
+   < = lower is better
+
+itemstring:
+   <weaponid><flags>
+   or
+   <weaponid><flags>|<runes>
+
+   where flags can contain:
+         F = player carries the flag
+         S = player has strength
+         I = player has the shield
+         T = player is typing (console, menu or chat)
+   
+   and weapon IDs are:
+         1 = Laser
+		 2 = Shotgun
+		 3 = Machine Gun
+         4 = Mortar
+         5 = Electro
+         6 = Crylink
+         7 = Vortex
+         8 = Hagar
+         9 = Rocket Launcher
+        10 = Port-O-Launch
+        11 = Vaporizer
+        12 = Grappling Hook
+        13 = Heavy Laser Assault Cannon
+        14 = T.A.G. Seeker
+
+death type:
+   either a weapon ID ORed with weapon death flags, or one of
+   the notifications in common/deathtypes.qh in the form of a string.
+
+   weapon death flags are:
+       256 = secondary fire
+	   512 = splash damage
+	  1024 = bounced projectile
+	  2048 = head shot (MinstaNex only)
+	  4096 = unused flag
+
+There will be a log analyzer parsing this file format soon. Note that weapon
+IDs are below 10000.
diff --git a/Docs/mapdownload.txt b/Docs/mapdownload.txt
index d52e4537..13376aa6 100644
--- a/Docs/mapdownload.txt
+++ b/Docs/mapdownload.txt
@@ -1,98 +1,98 @@
-map download:
-______________
-
-
-CLIENT SIDE:
-
-Should already work without configuration. You can however use the following
-cvars for further tuning (see xonotic.org/tools/cacs for more up-to-date information):
-
-   cl_curl_enabled              download support enabled (master switch)
-   cl_curl_maxdownloads         maximum number of downloads at once
-   cl_curl_maxspeed             maximum total speed in KiB/s
-
-Downloaded packages end up in |Xonotic/data/dlcache/| or
-|~/.xonotic/data/dlcache/| and are only used till you exit Xonotic.
- If you want to play them localy or use them to setup a server of your
-own you can "accept" the packages by moving it one level up - right
-next to your config.cfg.
-
-You should regularily clean up your cache to save space and make the maps
-you really want available from the menu.
-
-
-SERVER SIDE:
-
-First of all, you need a HTTP or FTP server to host your PK3s. You can either
-use some web space provider, or set up your own. For this, use any FTP or HTTP
-server software you want (HTTP: lighttpd, Apache, thttpd; FTP: Filezilla,
-vsftpd). HTTP is to be preferred because it works better for firewalled
-players.
-
-On the server, you need to set up where to download the PK3s of the maps you
-are running. You can either use the cvar
-
-   sv_curl_defaulturl           default download URL
-
-to set it to some site, or put a file named "curl_urls.txt" in the data
-directory of the following format:
-
-   pattern        url
-   pattern        url
-   pattern        url
-   ...
-
-where always the first wildcard pattern match is taken.
-
-   data*          -
-   strale*        http://stralemaps.invalid/
-   *              http://all.the.other.stuff.invalid/id/here.php?pak=
-   foo*           http://wont.get.here.invalid/
-
-The pk3 name will be appended to the URL by DarkPlaces. Note that you NEED to
-append a trailing slash if you refer to a directory. If you specify a "-" as
-URL, the package will not be offered for download.
-
-
-INFORMATION FOR MIRROR/MAP SERVER ADMINS:
-
-The Referer is always set to dp://serverhost:serverport/, the User-Agent
-always starts with "Xonotic". Look at this sample log line:
-
-141.2.16.3 - - [06/Jun/2006:19:43:14 +0000] "GET /~polzer/temp/nexmaps.php?filename=o-fun.pk3 HTTP/1.1" 302 - "dp://141.2.16.3:26000/" "Xonotic Linux 21:26:17 Jun  6 2006"
-
-
-If you want to set up a redirection service, here is a sample PHP code for you
-to start from:
-
-<?
-
-function findmap($filename)
-{
-    # insert your database query or whatever you want here
-    if($filename == "foo.pk3")
-        return "http://barserver.invalid/foo.pk3";
-    return FALSE;
-}
-
-function bailout($code, $title, $message)
-{
-    header("HTTP/1.1 $code $title");
-    echo "<html><title>$title</title><h1>$title</h1>$message</html>";
-    exit(0);
-}   
-
-$filename = $_GET['filename'];
-
-$useragent = getenv("HTTP_USER_AGENT");
-if(strpos($useragent, "Xonotic ") !== 0)
-    bailout(403, "Forbidden", "You're not a Xonotic client.");
-    
-$url = findmap($filename);
-if(!$url)
-    bailout(404, "Not Found", "Well... try another file name?");
-    
-header("HTTP/1.1 302 Moved Temporarily");
-header("Location: $url");
-
-?>
+map download:
+______________
+
+
+CLIENT SIDE:
+
+Should already work without configuration. You can however use the following
+cvars for further tuning (see xonotic.org/tools/cacs for more up-to-date information):
+
+   cl_curl_enabled              download support enabled (master switch)
+   cl_curl_maxdownloads         maximum number of downloads at once
+   cl_curl_maxspeed             maximum total speed in KiB/s
+
+Downloaded packages end up in |Xonotic/data/dlcache/| or
+|~/.xonotic/data/dlcache/| and are only used till you exit Xonotic.
+ If you want to play them localy or use them to setup a server of your
+own you can "accept" the packages by moving it one level up - right
+next to your config.cfg.
+
+You should regularily clean up your cache to save space and make the maps
+you really want available from the menu.
+
+
+SERVER SIDE:
+
+First of all, you need a HTTP or FTP server to host your PK3s. You can either
+use some web space provider, or set up your own. For this, use any FTP or HTTP
+server software you want (HTTP: lighttpd, Apache, thttpd; FTP: Filezilla,
+vsftpd). HTTP is to be preferred because it works better for firewalled
+players.
+
+On the server, you need to set up where to download the PK3s of the maps you
+are running. You can either use the cvar
+
+   sv_curl_defaulturl           default download URL
+
+to set it to some site, or put a file named "curl_urls.txt" in the data
+directory of the following format:
+
+   pattern        url
+   pattern        url
+   pattern        url
+   ...
+
+where always the first wildcard pattern match is taken.
+
+   data*          -
+   strale*        http://stralemaps.invalid/
+   *              http://all.the.other.stuff.invalid/id/here.php?pak=
+   foo*           http://wont.get.here.invalid/
+
+The pk3 name will be appended to the URL by DarkPlaces. Note that you NEED to
+append a trailing slash if you refer to a directory. If you specify a "-" as
+URL, the package will not be offered for download.
+
+
+INFORMATION FOR MIRROR/MAP SERVER ADMINS:
+
+The Referer is always set to dp://serverhost:serverport/, the User-Agent
+always starts with "Xonotic". Look at this sample log line:
+
+141.2.16.3 - - [06/Jun/2006:19:43:14 +0000] "GET /~polzer/temp/nexmaps.php?filename=o-fun.pk3 HTTP/1.1" 302 - "dp://141.2.16.3:26000/" "Xonotic Linux 21:26:17 Jun  6 2006"
+
+
+If you want to set up a redirection service, here is a sample PHP code for you
+to start from:
+
+<?
+
+function findmap($filename)
+{
+    # insert your database query or whatever you want here
+    if($filename == "foo.pk3")
+        return "http://barserver.invalid/foo.pk3";
+    return FALSE;
+}
+
+function bailout($code, $title, $message)
+{
+    header("HTTP/1.1 $code $title");
+    echo "<html><title>$title</title><h1>$title</h1>$message</html>";
+    exit(0);
+}   
+
+$filename = $_GET['filename'];
+
+$useragent = getenv("HTTP_USER_AGENT");
+if(strpos($useragent, "Xonotic ") !== 0)
+    bailout(403, "Forbidden", "You're not a Xonotic client.");
+    
+$url = findmap($filename);
+if(!$url)
+    bailout(404, "Not Found", "Well... try another file name?");
+    
+header("HTTP/1.1 302 Moved Temporarily");
+header("Location: $url");
+
+?>
diff --git a/Docs/scorelog.txt b/Docs/scorelog.txt
index 00876568..b1e6b851 100644
--- a/Docs/scorelog.txt
+++ b/Docs/scorelog.txt
@@ -1,43 +1,43 @@
-cvars (see xonotic.org/tools/cacs for more up-to-date information):
-______________
-
-   sv_logscores_console		print scores to serverconsole after each match (set to 1 to enable)
-   sv_logscores_file		print scores to a file after each match 
-   sv_logscores_filename	filename of the output file if sv_logscores_file is enabled (the file will be stored in Xonotic/data/data or ~/.xonotic/data/data)
-   sv_logscores_bots		choose whether bot are included in stats or not
-
-
-commands:
-______________
-
-   printstats			print current scores to file/console (requires sv_logscores_console and/or 
-				  sv_logscores_file to be enabled)
-
-
-log format:
-______________
-
-example:
-   
-   :scores:dm_nexdm01:131
-   :player:1:7:129:1:GrooveMachine
-   :player:1:4:129:1:DanceWithMe
-   :player:10:1:130:3:Player
-   :end
-   
-   start of a new section:	:scores:<gametype>_<mapname>:<map runtime>		(if the dump was triggered
-   				   by "printstats", the line starts with :status:)
-   player entry:		:player:<frags>:<deaths>:<playtime>:<team>:<nickname>	(playername might contain ":",
-   				   so be sure your parser doesn't split them, playtime is messured in seconds)
-   section end:			:end
-
-team colors:
-   Red Team	=  5
-   Blue Team	= 14
-   Yellow Team	= 13
-   Pink Team	= 10
-
-   other team numbers may appear in free for all games
-
-   for an example parser (written in php, thanks to tChr) have a look at:
-      http://excalibur.nvg.ntnu.no/nexuiz/statsparser
+cvars (see xonotic.org/tools/cacs for more up-to-date information):
+______________
+
+   sv_logscores_console		print scores to serverconsole after each match (set to 1 to enable)
+   sv_logscores_file		print scores to a file after each match 
+   sv_logscores_filename	filename of the output file if sv_logscores_file is enabled (the file will be stored in Xonotic/data/data or ~/.xonotic/data/data)
+   sv_logscores_bots		choose whether bot are included in stats or not
+
+
+commands:
+______________
+
+   printstats			print current scores to file/console (requires sv_logscores_console and/or 
+				  sv_logscores_file to be enabled)
+
+
+log format:
+______________
+
+example:
+   
+   :scores:dm_nexdm01:131
+   :player:1:7:129:1:GrooveMachine
+   :player:1:4:129:1:DanceWithMe
+   :player:10:1:130:3:Player
+   :end
+   
+   start of a new section:	:scores:<gametype>_<mapname>:<map runtime>		(if the dump was triggered
+   				   by "printstats", the line starts with :status:)
+   player entry:		:player:<frags>:<deaths>:<playtime>:<team>:<nickname>	(playername might contain ":",
+   				   so be sure your parser doesn't split them, playtime is messured in seconds)
+   section end:			:end
+
+team colors:
+   Red Team	=  5
+   Blue Team	= 14
+   Yellow Team	= 13
+   Pink Team	= 10
+
+   other team numbers may appear in free for all games
+
+   for an example parser (written in php, thanks to tChr) have a look at:
+      http://excalibur.nvg.ntnu.no/nexuiz/statsparser