anchor.diff:    JoinTick := 0;
     fPlayersList.Add(fNetwork.MyIPString); //Add self
     fNetwork.StartListening;
  -  fNetwork.OnRecieveKMPacket := PacketRecieveHost; //Start listening
  +  fNetwork.OnRecieveKMPacket := PacketRecieve; //Start listening
   end;
   
   
  
positive.code:       fOnTextMessage:TStringEvent;
  
        procedure SendPlayerList;
        procedure PacketRecieveHost(const aData: array of byte; aAddr:string);
        procedure PacketRecieveJoin(const aData: array of byte; aAddr:string);
        procedure PacketSend(const aAddress:string; aKind:TMessageKind; const aData:string='');
      public
        constructor Create;
  
negative.code: 
  
  procedure TKMNetworking.SendPlayerList;
  var s:string; i:integer;
  begin
    s := Format('%.2d',[fPlayersList.Count-1]); //Exclude self from overall count
  
    for i:=1 to fPlayersList.Count-1 do
      s := s + fPlayersList[i] + #0; //15chars each
  
    for i:=1 to fPlayersList.Count-1 do
      PacketSend(fPlayersList[i], mkHandshaking_SendPlayersList, s);
  end;
  
  
  procedure TKMNetworking.PacketRecieve(const aData: array of byte; aAddr:string);
  var Kind:TMessageKind; MyString: string;
  begin
    Kind := TMessageKind(aData[0]);
  