3D UDP Problem
Übersicht

![]() |
ToeBBetreff: 3D UDP Problem |
![]() Antworten mit Zitat ![]() |
---|---|---|
Ich wollte mal wasa übers internet in 3D machen, nur ich krig iwie die Daten nicht rübergeschickt... Woran liegt das ? Was mache ich falsch ?
Code: [AUSKLAPPEN] Graphics3D 800,600,16,1
SetBuffer BackBuffer() Dim name$(1) Color 0,255,150 Print "3D EgoShooter ONLINE" Color 255,150,0 Delay 1000:FlushKeys() Print "Gib bitte die IP des anderen Spielers ein ! " Color 150,0,255 Global IP = INT_IP(Input("[>]")) Color 255,150,0 Print "Gib bitte deinen gewünschten Name ein !" Color 150,0,255 name(0) = Input("[>]") Color 150,255,50 Print "" Print "IP : "+DottedIP(IP) Print "Name : "+name(0) Color 255,150,0 Print "Erstelle ein Spiel ..." Global stream = CreateUDPStream(8000) Delay 1000 If stream <> 0 Print "Spiel Erstellt !" Print "Sende Paket alle 30ms" Delay 1000 Else Color 255,0,0 Print "Spiel konnte nicht erstellt werden !" Print "Timeout !" Delay 3000 End EndIf If KeyHit(1) Then End Global c = CreateCamera() Global mm = LoadMesh("Models\Fig1.b3d"):ScaleEntity mm,0.05,0.05,0.05 Global send_ms = MilliSecs() Repeat TurnEntity c,MouseYSpeed()/3,0,0 TurnEntity c,0,-MouseXSpeed()/3,0,0 If KeyDown(17) Then MoveEntity c,0,0,0.1 MoveMouse 400,300 UpdateWorld() RenderWorld() If send_ms <= MilliSecs() - 30 Then WriteByte(stream,1) WriteFloat(stream,EntityX(c)) WriteFloat(stream,EntityY(c)) WriteFloat(stream,EntityZ(c)) WriteFloat(stream,EntityPitch(c)) WriteFloat(stream,EntityYaw(c)) WriteFloat(stream,EntityRoll(c)) SendUDPMsg(stream,IP,8000) send_ms = MilliSecs() EndIf If RecvUDPMsg(stream) Then byte = ReadByte(stream) Select Byte Case 1 x = ReadFloat(stream) y = ReadFloat(stream) z = ReadFloat(stream) p = ReadFloat(stream) yw = ReadFloat(stream) r = ReadFloat(stream) PositionEntity mm,x,y,z RotateEntity mm,p,yw,r End Select EndIf Flip Cls Until KeyHit(1) End Function INT_IP(IP_$) If CountB(IP_$,".") = 3 A1 = Int(Left(IP_$,Instr(IP_$,".")-1)) : IP_$ = Right(IP_$,Len(IP_$)-Instr(IP_$,".")) A2 = Int(Left(IP_$,Instr(IP_$,".")-1)) : IP_$ = Right(IP_$,Len(IP_$)-Instr(IP_$,".")) A3 = Int(Left(IP_$,Instr(IP_$,".")-1)) : IP_$ = Right(IP_$,Len(IP_$)-Instr(IP_$,".")) A4 = Int(IP_$) Return (A1 Shl 24) + (A2 Shl 16) + (A3 Shl 8 ) + A4 Else Return 0 EndIf End Function Function CountB(tt$,Zeich$) Local Count = 0 For i = 1 To Len(tt) If Mid(tt$,i,1) = Zeich$ Then Count = Count + 1 Next Return Count End Function thx und mfg Crack93 |
||
Religiöse Kriege sind Streitigkeiten erwachsener Männer darum, wer den besten imaginären Freund hat.
Race-Project - Das Rennspiel der etwas anderen Art SimpleUDP3.0 - Neuste Version der Netzwerk-Bibliothek Vielen Dank an dieser Stelle nochmal an Pummelie, welcher mir einen Teil seines VServers für das Betreiben meines Masterservers zur verfügung stellt! |
Dreamora |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
ist beim Server der UDP Port im Router auf die Server Maschine geforwardet?
Weil ohne wird UDP nicht durch den router durchkommen. |
||
Ihr findet die aktuellen Projekte unter Gayasoft und könnt mich unter @gayasoft auf Twitter erreichen. |
![]() |
ToeB |
![]() Antworten mit Zitat ![]() |
---|---|---|
Wie "geforwardet" ? Was ist das und was mus ich da machen ?
thx und mfg Crack93 |
||
Religiöse Kriege sind Streitigkeiten erwachsener Männer darum, wer den besten imaginären Freund hat.
Race-Project - Das Rennspiel der etwas anderen Art SimpleUDP3.0 - Neuste Version der Netzwerk-Bibliothek Vielen Dank an dieser Stelle nochmal an Pummelie, welcher mir einen Teil seines VServers für das Betreiben meines Masterservers zur verfügung stellt! |
Dreamora |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Das heisst alle UDP packete die auf einem bestimmten Port am Router ankommen müssen weitergeleitet werden an den Server.
Für das wie, lies einfach deine Router anleitung, das ist auf jedem Router anders. |
||
Ihr findet die aktuellen Projekte unter Gayasoft und könnt mich unter @gayasoft auf Twitter erreichen. |
![]() |
ToeB |
![]() Antworten mit Zitat ![]() |
---|---|---|
Das komische ist aber dass ich schonmal was mit UDP gemacht habe, auch mit dem Port 8000 und es hat funtzioniert.... Warum dass nicht ? | ||
Religiöse Kriege sind Streitigkeiten erwachsener Männer darum, wer den besten imaginären Freund hat.
Race-Project - Das Rennspiel der etwas anderen Art SimpleUDP3.0 - Neuste Version der Netzwerk-Bibliothek Vielen Dank an dieser Stelle nochmal an Pummelie, welcher mir einen Teil seines VServers für das Betreiben meines Masterservers zur verfügung stellt! |
Dreamora |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
weiss ich nicht, finds raus, du bist der entwickler ![]() das Portforwarding muss auf dem Server eingerichtet sein, nicht beim User. Das nur so am Rande. |
||
Ihr findet die aktuellen Projekte unter Gayasoft und könnt mich unter @gayasoft auf Twitter erreichen. |
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group