Index: branches/proxy/src/lib/network/monitor/network_monitor.cc
===================================================================
--- branches/proxy/src/lib/network/monitor/network_monitor.cc	(revision 9281)
+++ branches/proxy/src/lib/network/monitor/network_monitor.cc	(revision 9282)
@@ -80,4 +80,16 @@
 
 
+void NetworkMonitor::addNode(PeerInfo* pInfo)
+{
+  return;
+
+  if( pInfo->isClient())
+    this->localNode->addClient(pInfo);
+  else if( pInfo->isProxyServer())
+    this->localNode->addProxyServer(pInfo);
+  else if( pInfo->isMasterServer())
+    this->localNode->addMasterServer(pInfo);
+}
+
 /**
  * this displays the network monitor gui
Index: branches/proxy/src/lib/network/monitor/network_monitor.h
===================================================================
--- branches/proxy/src/lib/network/monitor/network_monitor.h	(revision 9281)
+++ branches/proxy/src/lib/network/monitor/network_monitor.h	(revision 9282)
@@ -34,6 +34,12 @@
     void removeNetworkNode(NetworkNode* node);
 
+    void addNode(PeerInfo* pInfo);
+    void addNode(NetworkNode* node, PeerInfo* pInfo) {}
+
+    /** adds to @param node a network node @param pInfo a new client */
     inline void addClient(NetworkNode* node, PeerInfo* pInfo) { node->addClient(pInfo); }
+    /** adds to @param node a network node @param pInfo a new proxy server */
     inline void addProxyServer(NetworkNode* node, PeerInfo* pInfo) { node->addProxyServer(pInfo); }
+    /** adds to @param node a network node @param pInfo a new master server*/
     inline void addMasterServer(NetworkNode* node, PeerInfo* pInfo) { node->addMasterServer(pInfo); }
 
@@ -54,4 +60,5 @@
   private:
     NetworkStream*               networkStream;              //!< reference to the one networkstream of the network
+    NetworkNode*                 localNode;                  //!< reference to the local node
     std::list<NetworkNode*>      nodeList;                   //!< list of all network nodes
 
Index: branches/proxy/src/lib/network/network_stream.cc
===================================================================
--- branches/proxy/src/lib/network/network_stream.cc	(revision 9281)
+++ branches/proxy/src/lib/network/network_stream.cc	(revision 9282)
@@ -79,5 +79,5 @@
   this->peers[0].socket = new UdpSocket( host, port );
   this->peers[0].userId = 0;
-  this->peers[0].isMasterServer = true;
+  this->peers[0].nodeType = NET_MASTER_SERVER;
   this->peers[0].connectionMonitor = new ConnectionMonitor( 0 );
 }
@@ -306,5 +306,5 @@
       peers[clientId].handshake->setUniqueID(clientId);
       peers[clientId].userId = clientId;
-      peers[clientId].isMasterServer = false;
+      peers[clientId].nodeType = NET_CLIENT;
     }
     else
@@ -321,5 +321,5 @@
       peers[clientId].connectionMonitor = new ConnectionMonitor( clientId );
       peers[clientId].userId = clientId;
-      peers[clientId].isMasterServer = false;
+      peers[clientId].nodeType = NET_CLIENT;
 
       PRINTF(0)("num sync: %d\n", synchronizeables.size());
@@ -454,4 +454,5 @@
 //               PRINTF(0)("remote host is a %i\n", it->second.handshake->getRemoteNodeType());
               it->second.nodeType = it->second.handshake->getRemoteNodeType();
+              this->networkMonitor->addNode(&it->second);
 
               this->networkGameManager = NetworkGameManager::getInstance();
@@ -719,5 +720,5 @@
           }
 
-          if ( !peers[peer->second.userId].isMasterServer )
+          if ( !peers[peer->second.userId].isMasterServer() )
           {
             offset += syncDataLength;
Index: branches/proxy/src/lib/network/network_stream.h
===================================================================
--- branches/proxy/src/lib/network/network_stream.h	(revision 9281)
+++ branches/proxy/src/lib/network/network_stream.h	(revision 9282)
@@ -56,7 +56,7 @@
     /* functions for the peerInfo information retreival */
     inline bool isUserIdActive( int userID ) { return (peers.find(userID) != peers.end()); }
-    inline bool isUserMasterServer( int userID ){ if ( !isUserIdActive(userID) ) return false; return peers[userID].isMasterServer; }
-    inline bool isUserProxyServer( int userID ){ if ( !isUserIdActive(userID) ) return false; return peers[userID].isProxyServer; }
-    inline bool isUserClient( int userID ){ if ( !isUserIdActive(userID) ) return false; return peers[userID].isClient; }
+    inline bool isUserMasterServer( int userID ){ if ( !isUserIdActive(userID) ) return false; return peers[userID].isMasterServer(); }
+    inline bool isUserProxyServer( int userID ){ if ( !isUserIdActive(userID) ) return false; return peers[userID].isProxyServer(); }
+    inline bool isUserClient( int userID ){ if ( !isUserIdActive(userID) ) return false; return peers[userID].isClient(); }
 
 
Index: branches/proxy/src/lib/network/peer_info.cc
===================================================================
--- branches/proxy/src/lib/network/peer_info.cc	(revision 9281)
+++ branches/proxy/src/lib/network/peer_info.cc	(revision 9282)
@@ -44,7 +44,4 @@
   this->userId = 0;
   this->nodeType = NET_CLIENT;
-  this->isMasterServer = false;
-  this->isProxyServer = false;
-  this->isClient = false;
   this->socket = NULL;
   this->handshake = NULL;
Index: branches/proxy/src/lib/network/peer_info.h
===================================================================
--- branches/proxy/src/lib/network/peer_info.h	(revision 9281)
+++ branches/proxy/src/lib/network/peer_info.h	(revision 9282)
@@ -21,10 +21,15 @@
 
 
+    inline bool isMasterServer() { return this->nodeType == NET_MASTER_SERVER; }
+    inline bool isProxyServer() { return this->nodeType == NET_PROXY_SERVER; }
+    inline bool isClient() { return this->nodeType == NET_CLIENT; }
+
+
   public:
     int                 userId;
     int                 nodeType;
-    bool                isMasterServer;
-    bool                isProxyServer;
-    bool                isClient;
+//     bool                isMasterServer;
+//     bool                isProxyServer;
+//     bool                isClient;
     NetworkSocket *     socket;
     Handshake *         handshake;
