Index: code/branches/multiplayerFS15/data/gui/scripts/MultiplayerMenu.lua
===================================================================
--- code/branches/multiplayerFS15/data/gui/scripts/MultiplayerMenu.lua	(revision 10324)
+++ code/branches/multiplayerFS15/data/gui/scripts/MultiplayerMenu.lua	(revision 10334)
@@ -93,4 +93,5 @@
         local servername = ""
         local serverip = ""
+        local serverrtt = ""
         while true do
             servername = discovery:getServerListItemName(index)
@@ -102,10 +103,12 @@
                 break
             end
-            table.insert(P.serverList, {servername, serverip})
+            serverrtt = discovery:getServerListItemRTT(index)
+
+            table.insert(P.serverList, {servername, serverip, serverrtt})
             index = index + 1
         end
         index = 1
         for k,v in pairs(P.serverList) do
-            local item = CEGUI.createListboxTextItem( v[1] .. ": " .. v[2] )
+            local item = CEGUI.createListboxTextItem( v[1] .. ": " .. v[2] .. " Ping: " .. v[3] .."ms" )
             item:setID(index)
             index = index + 1
@@ -125,4 +128,5 @@
         local servername = ""
         local serverip = ""
+        local serverrtt = ""
         while true do
             servername = discovery:getServerListItemName(index)
@@ -134,10 +138,12 @@
                 break
             end
-            table.insert(P.serverList, {servername, serverip})
+            serverrtt = discovery:getServerListItemRTT(index)
+
+            table.insert(P.serverList, {servername, serverip, serverrtt})
             index = index + 1
         end
         index = 1
         for k,v in pairs(P.serverList) do
-            local item = CEGUI.createListboxTextItem( v[1] .. ": " .. v[2] )
+            local item = CEGUI.createListboxTextItem( v[1] .. ": " .. v[2] .. " Ping: " .. v[3] .."ms" )
             item:setID(index)
             index = index + 1
@@ -150,3 +156,2 @@
 
 return P
-
Index: code/branches/multiplayerFS15/src/libraries/network/LANDiscovery.cc
===================================================================
--- code/branches/multiplayerFS15/src/libraries/network/LANDiscovery.cc	(revision 10324)
+++ code/branches/multiplayerFS15/src/libraries/network/LANDiscovery.cc	(revision 10334)
@@ -124,4 +124,15 @@
   }
 
+  std::string LANDiscovery::getServerListItemRTT(unsigned int index)
+  {
+    if( index >= this->servers_.size() )
+      return BLANKSTRING;
+    else{
+      uint32_t serverrtt = this->servers_[index].getServerRTT();
+      return Ogre::StringConverter::toString(serverrtt);
+    }
+
+  }
+
 
 } // namespace orxonox
Index: code/branches/multiplayerFS15/src/libraries/network/LANDiscovery.h
===================================================================
--- code/branches/multiplayerFS15/src/libraries/network/LANDiscovery.h	(revision 10324)
+++ code/branches/multiplayerFS15/src/libraries/network/LANDiscovery.h	(revision 10334)
@@ -33,4 +33,5 @@
 #include "packet/ServerInformation.h"
 #include "util/Singleton.h"
+#include <OgreStringConverter.h>
 
 #include <vector>
@@ -51,6 +52,7 @@
       std::string getServerListItemName( unsigned int index ); // tolua_export
       std::string getServerListItemIP( unsigned int index ); // tolua_export
+      std::string getServerListItemRTT( unsigned int index ); // tolua_export
       static LANDiscovery& getInstance(){ return Singleton<LANDiscovery>::getInstance(); } // tolua_export
-      
+
     private:
       static LANDiscovery* singletonPtr_s;
Index: code/branches/multiplayerFS15/src/libraries/network/ServerList.cc
===================================================================
--- code/branches/multiplayerFS15/src/libraries/network/ServerList.cc	(revision 10324)
+++ code/branches/multiplayerFS15/src/libraries/network/ServerList.cc	(revision 10334)
@@ -30,5 +30,5 @@
 
 namespace orxonox
-{ 
+{
   ServerList::ServerList()
   { /* create a new list */ }
@@ -39,24 +39,24 @@
   }
 
-  int 
+  int
   ServerList::addServer( packet::ServerInformation toadd,
     ENetPeer *peer )
-  { 
+  {
     ServerListElem toAdd;
     toAdd.ServerInfo = toadd;
     toAdd.peer = peer;
 
-    this->serverlist.push_back( toAdd ); 
+    this->serverlist.push_back( toAdd );
     return 0;
   }
 
-  bool 
+  bool
   ServerList::delServerByName( std::string name )
-  { 
+  {
     /* get an iterator */
     std::list<ServerListElem>::iterator i;
 
     /* loop through list elements */
-    for( i = serverlist.begin(); i != serverlist.end(); ++i ) 
+    for( i = serverlist.begin(); i != serverlist.end(); ++i )
       if( (*i).ServerInfo.getServerName() == name )
       { /* found this name, remove and quit */
@@ -68,10 +68,10 @@
 
   bool ServerList::delServerByAddress( std::string address )
-  { 
+  {
     /* get an iterator */
     std::list<ServerListElem>::iterator i;
 
     /* loop through list elements */
-    for( i = serverlist.begin(); i != serverlist.end(); ++i ) 
+    for( i = serverlist.begin(); i != serverlist.end(); ++i )
       if( (*i).ServerInfo.getServerIP() == address )
       { /* found this name, remove and quit */
@@ -90,5 +90,5 @@
 
     /* loop through list elements */
-    for( i = serverlist.begin(); i != serverlist.end(); ++i ) 
+    for( i = serverlist.begin(); i != serverlist.end(); ++i )
       if( (*i).ServerInfo.getServerIP() == address )
       { /* found the target, return it */
@@ -110,7 +110,7 @@
     /* iterate, return when name found */
     /* loop through list elements */
-    for( i = serverlist.begin(); i != serverlist.end(); ++i ) 
+    for( i = serverlist.begin(); i != serverlist.end(); ++i )
       if( (*i).ServerInfo.getServerName() == name )
-      { 
+      {
         ServerListSearchResult res = { (*i), true };
         return res;
@@ -124,23 +124,23 @@
   /* SORTING */
   /* sort by name */
-  bool sub_compare_names( ServerListElem no1, 
+  bool sub_compare_names( ServerListElem no1,
     ServerListElem no2 )
   { return no1.ServerInfo.getServerName() > no2.ServerInfo.getServerName(); }
 
   void ServerList::sortByName()
-  { 
-    this->serverlist.sort( sub_compare_names ); 
+  {
+    this->serverlist.sort( sub_compare_names );
   }
-  
+
   /* sort by ping */
-  bool sub_compare_pings( ServerListElem no1, 
+  bool sub_compare_pings( ServerListElem no1,
     ServerListElem no2 )
-  { 
-    return no1.ServerInfo.getServerName() > no2.ServerInfo.getServerName();
+  {
+    return no1.ServerInfo.getServerRTT() > no2.ServerInfo.getServerRTT();
   }
 
   void ServerList::sortByPing()
   {
-    this->serverlist.sort( sub_compare_pings ); 
+    this->serverlist.sort( sub_compare_pings );
   }
 
Index: code/branches/multiplayerFS15/src/libraries/network/packet/ServerInformation.cc
===================================================================
--- code/branches/multiplayerFS15/src/libraries/network/packet/ServerInformation.cc	(revision 10324)
+++ code/branches/multiplayerFS15/src/libraries/network/packet/ServerInformation.cc	(revision 10334)
@@ -39,10 +39,10 @@
   namespace packet
   {
-    
+
     ServerInformation::ServerInformation()
     {
-      
+
     }
-    
+
     ServerInformation::ServerInformation(ENetEvent* event)
     {
@@ -69,5 +69,5 @@
     ServerInformation::~ServerInformation()
     {
-      
+
     }
 
@@ -81,8 +81,8 @@
       ENetPacket* packet = enet_packet_create( temp, size, 0 );
       enet_peer_send(peer, 0, packet);
-      
+
       delete[] temp;
     }
-  
+
   } // namespace packet
 
@@ -95,3 +95,2 @@
   }
 } // namespace orxonox
-
Index: code/branches/multiplayerFS15/src/libraries/network/packet/ServerInformation.h
===================================================================
--- code/branches/multiplayerFS15/src/libraries/network/packet/ServerInformation.h	(revision 10324)
+++ code/branches/multiplayerFS15/src/libraries/network/packet/ServerInformation.h	(revision 10334)
@@ -45,5 +45,5 @@
         ServerInformation(ENetEvent* event);
         ~ServerInformation();
-        
+
         void          send( ENetPeer* peer );
         std::string   getServerIP() { return this->serverIP_; }
@@ -52,5 +52,5 @@
         void          setServerIP( std::string IP ) { this->serverIP_ = IP; }
         uint32_t      getServerRTT() { return this->serverRTT_; }
-        
+
       private:
         std::string   serverName_;
