UDP,TCP Problem ERLEDIGT

Übersicht BlitzMax, BlitzMax NG Allgemein

Neue Antwort erstellen

Mathias-Kwiatkowski

Betreff: UDP,TCP Problem ERLEDIGT

BeitragDo, Apr 10, 2008 20:09
Antworten mit Zitat
Benutzer-Profile anzeigen
ich habe ein problem, und zwar mache ich ein game, die wichtigen daten sollen mit TCP gesendet werden, dies funktioniert PERFEKT, aber das senden peer udp funktioniert nicht , naje jedenfalls kommt NIE was an, woran kann es liegen, Firewaal usw. sind offen zu 100%.

client erstellung
Code: [AUSKLAPPEN]
Import vertex.BNetEx

Global Socket:TSocket
Global StreamTCP:TStream
Global StreamUDP:TUDPStream

   Socket:TSocket = CreateTCPSocket()
   StreamTCP:TStream = CreateSocketStream(Socket)
   Socket.Connect(HostIp("purechannel.ath.cx"), 2010)
      
   StreamUDP = New TUDPStream
   If Not StreamUDP.Init() Then Throw("Can't create socket")
   StreamUDP.SetRemoteIP(TNetwork.IntIP(DottedIP(HostIp("purechannel.ath.cx"))))
   StreamUDP.SetRemotePort(6001)


senden TCP vom clienten , funktioniert!
Code: [AUSKLAPPEN]
WriteLine StreamTCP, "Informationen|"


senden UDP vom clienten , funktionier =?
Code: [AUSKLAPPEN]
StreamUDP.WriteLine("MyPosi|" + PlayerName + "|" + Player.x + "|" + Player.y + "|" + Player.winkel + "|") StreamUDP.SendMsg()



Server
Code: [AUSKLAPPEN]
Import BRL.Stream
Import BRL.linkedlist
Import BRL.retro
Import vertex.BNetEx

Global StreamUDP:TUDPStream
StreamUDP= New TUDPStream
If Not StreamUDP.Init() Then Throw("Can't create socket")
StreamUDP.SetLocalPort(6001)



lesen von UDP sachen
Code: [AUSKLAPPEN]

If StreamUDP.RecvAvail() Then
   
      While StreamUDP.RecvMsg() ; Wend

      If StreamUDP.Size() > 0 Then
         While Not StreamUDP.Eof()

            StreamIncomming:String = StreamUDP.ReadLine()+"~n"
            'WriteStdout StreamIncomming


         Befehl$=Mid(ankunft$,0,Instr(ankunft$,"|",0))
         Ankunft$=Mid(ankunft$,Instr(ankunft$,"|",0)+1,Len(ankunft$))
         
         
         If Befehl$="MyPosi" Then
            Name$=Mid(ankunft$,0,Instr(ankunft$,"|",0))
            Ankunft$=Mid(ankunft$,Instr(ankunft$,"|",0)+1,Len(ankunft$))
            x=Int(Mid(ankunft$,0,Instr(ankunft$,"|",0)))
            Ankunft$=Mid(ankunft$,Instr(ankunft$,"|",0)+1,Len(ankunft$))
            y=Int(Mid(ankunft$,0,Instr(ankunft$,"|",0)))
            Ankunft$=Mid(ankunft$,Instr(ankunft$,"|",0)+1,Len(ankunft$))
            w=Int(Mid(ankunft$,0,Instr(ankunft$,"|",0)))
            Ankunft$=Mid(ankunft$,Instr(ankunft$,"|",0)+1,Len(ankunft$))

            For player:Tplayer = EachIn playerList
               If Lower(player.name)=Lower(name$) Then
                  player.x=x
                  player.y=y
                  player.winkel=w
               EndIf
            Next

            For player:Tplayer = EachIn playerList
               If Lower(player.name)=Lower(name$) Then
               Else
                  Streamudp.SetRemoteIP(Int(player.ip)) Streamudp.SetRemotePort(player.port)
                  Streamudp.WriteLine("UserPosi|"+name$+"|"+x+"|"+y+"|"+w+"|")
                  Streamudp.SendMsg()
                  Print "UDP"
               EndIf
            Next
         EndIf
         
         
         
         
         
         
         
         
         
         
       Wend

      EndIf
   EndIf
[/code][/quote]

Neue Antwort erstellen


Übersicht BlitzMax, BlitzMax NG Allgemein

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group