Index: binary-improvements/MapRendering/Web/API/GetPlayersLocation.cs
===================================================================
--- binary-improvements/MapRendering/Web/API/GetPlayersLocation.cs	(revision 314)
+++ binary-improvements/MapRendering/Web/API/GetPlayersLocation.cs	(revision 315)
@@ -14,4 +14,9 @@
             user = user ?? new WebConnection ("", "", 0L);
 
+			bool listOffline = false;
+			if (req.QueryString ["offline"] != null) {
+				bool.TryParse (req.QueryString ["offline"], out listOffline);
+			}
+
             bool bViewAll = WebConnection.CanViewAllPlayers (permissionLevel);
 
@@ -27,28 +32,30 @@
                 Player p = playersList [sid, false];
 
-                ulong player_steam_ID = 0L;
-                if (!ulong.TryParse (sid, out player_steam_ID))
-                    player_steam_ID = 0L;
+				if (listOffline || p.IsOnline) {
+	                ulong player_steam_ID = 0L;
+	                if (!ulong.TryParse (sid, out player_steam_ID))
+	                    player_steam_ID = 0L;
 
-                if ((player_steam_ID == user.SteamID) || bViewAll) {
-                    JSONObject pos = new JSONObject ();
-                    pos.Add("x", new JSONNumber (p.LastPosition.x));
-                    pos.Add("y", new JSONNumber (p.LastPosition.y));
-                    pos.Add("z", new JSONNumber (p.LastPosition.z));
+	                if ((player_steam_ID == user.SteamID) || bViewAll) {
+	                    JSONObject pos = new JSONObject ();
+	                    pos.Add("x", new JSONNumber (p.LastPosition.x));
+	                    pos.Add("y", new JSONNumber (p.LastPosition.y));
+	                    pos.Add("z", new JSONNumber (p.LastPosition.z));
 
-                    JSONObject pJson = new JSONObject ();
-                    pJson.Add("steamid", new JSONString (sid));
-					pJson.Add("entityid", new JSONNumber (p.EntityID));
-                    pJson.Add("ip", new JSONString (p.IP));
-                    pJson.Add("name", new JSONString (p.Name));
-                    pJson.Add("online", new JSONBoolean (p.IsOnline));
-                    pJson.Add("position", pos);
+	                    JSONObject pJson = new JSONObject ();
+	                    pJson.Add("steamid", new JSONString (sid));
+	//					pJson.Add("entityid", new JSONNumber (p.EntityID));
+	//                    pJson.Add("ip", new JSONString (p.IP));
+	                    pJson.Add("name", new JSONString (p.Name));
+	                    pJson.Add("online", new JSONBoolean (p.IsOnline));
+	                    pJson.Add("position", pos);
 
-					pJson.Add ("totalplaytime", new JSONNumber (p.TotalPlayTime));
-					pJson.Add ("lastonline", new JSONString (p.LastOnline.ToString ("s")));
-					pJson.Add ("ping", new JSONNumber (p.IsOnline ? p.ClientInfo.ping : -1));
+	//					pJson.Add ("totalplaytime", new JSONNumber (p.TotalPlayTime));
+	//					pJson.Add ("lastonline", new JSONString (p.LastOnline.ToString ("s")));
+	//					pJson.Add ("ping", new JSONNumber (p.IsOnline ? p.ClientInfo.ping : -1));
 
-					playersJsResult.Add (pJson);
-                }
+						playersJsResult.Add (pJson);
+	                }
+				}
             }
 
