Schon wieder UDP Probleme
Übersicht

Gehe zu Seite Zurück 1, 2, 3 Weiter
Darkbyte |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
bist du dir sicher? Ich probier das ganze mal aus. Achja wie hast du das eignetlich mit deinem 3D onlinespiel gemacht? | ||
BlackTermi |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Ja genau, zeig uns doch gleich mal den Code?
/edit Junge ging das aber schnell ![]() @Darkbyte Du könntest dir aber auch, zum Verständnis, z.B. Codes aus dem Archiv angucken, dort findest du einige gute Beispiele, wie zum Beispiel ein kleiner Chat aufgebaut ist: Link |
||
- Zuletzt bearbeitet von BlackTermi am Di, Apr 03, 2007 14:12, insgesamt einmal bearbeitet
![]() |
Tankbuster |
![]() Antworten mit Zitat ![]() |
---|---|---|
Ich habe EINEN port genommen!
Das prog reagiert nur, wenn es "Hallo" empfängt, aber das kannst du sicher schnell ändern^^ Zum testen musst du also "Hallo" an port 7777 schicken... Ich hoffe ma, das geht, weil ichs so aus der hand geschrieben hab (konnte net testen) Zitat: stream=createudpstream(7777);stream auf port 7777 erstellen While Not Keydown(1) If RecvUDPMsg(stream);wenn er etwas empfängt While ReadAvail(stream) ;während dem auslesen ant$=ReadString$(stream) if ant$="Hallo" Print "Es das Wort Hallo empfangen xDDDDDD" Print "wäre net, wenn du mich in die credits schreiben würdest ^^" endif Wend EndIf Wend |
||
Twitter
Download Jewel Snake! Windows|Android |
Darkbyte |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Ich will ja nicht immer Hallo hin und her schicken sondern nachrichten bzw. später dann auch in Spielen Koordinaten.
(Wieso kann das nicht so einfach gehen? Man nimmt einfach 2 Ports und Basta aber nein wie das Schicksal so will gehts bei mir nicht ^^). |
||
![]() |
The_Nici |
![]() Antworten mit Zitat ![]() |
---|---|---|
Schreibe in den Sream einfach die Koordinaten.
Also EntityX(Player), EntityY(Player), EntityZ(Player) Weiteres erklährt sich von selbst. |
||
Darkbyte |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
kann ich einfach die ganze zeit senden und empfangen z.b ich sende die Ganze zeit eine 1 (Partner gegenüber auch) und ich würde das mit einen Port machen würde das dann Fehlerfrei gehen und ich würde die Ganze Zeit eine 1 auf meinem Bildschirm sehen? (Müsste gehen weil ich sende ja dann logischerweise in jedem schleifendurchlauf meine Daten) (Ich Progge in 2D ^^) | ||
Darkbyte |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Ach ja Tankbuster ich würde dich gerne in die Credits aufnehmen muss das aber erst mit dem besprechen mit dem ich das Spiel Programmiere. | ||
![]() |
The_Nici |
![]() Antworten mit Zitat ![]() |
---|---|---|
Darkbyte hat Folgendes geschrieben: kann ich einfach die ganze zeit senden und empfangen z.b ich sende die Ganze zeit eine 1 (Partner gegenüber auch) und ich würde das mit einen Port machen würde das dann Fehlerfrei gehen und ich würde die Ganze Zeit eine 1 auf meinem Bildschirm sehen? (Müsste gehen weil ich sende ja dann logischerweise in jedem schleifendurchlauf meine Daten) (Ich Progge in 2D ^^)
Ne, der andere muss erst den Stream auslesen und dann anzeigen. |
||
Darkbyte |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
schon klar aber ich meine im Prinzip wäre das möglich dasich das die ganze Zeit schicke? | ||
![]() |
The_Nici |
![]() Antworten mit Zitat ![]() |
---|---|---|
In eine Schleife einfach SendUDPMessage Stream, IP [Port] schreiben. | ||
Darkbyte |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Das weis ich doch alles ^^. Ich möchte doch nur wissen ob es möglich ist z.B X die ganze Zeit zu senden / der Partner gegenüber sendet z.B auch die ganze Zeit X an micht ist das möglich das wir uns beide gleichzeitig z.B wie oben die X daten senden? | ||
![]() |
Tankbuster |
![]() Antworten mit Zitat ![]() |
---|---|---|
Natürlich ist das möglich!
Zitat: x=19
Writeint(stream,x) SendUDPMessage Stream, IP,Port. o0 |
||
Twitter
Download Jewel Snake! Windows|Android |
Darkbyte |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Das beide gleichzeitig empfangen und senden können über einen Port? | ||
![]() |
Tankbuster |
![]() Antworten mit Zitat ![]() |
---|---|---|
Also.... Alles in einem Prog! Du kannst es nur nicht 2 mal auf einem PC laufen lassen, denn dann ist der Port schon belegt!
Es empfängt X, und wenn du enter drückst wird X um 1 erhöht, und weitergeschickt! Ich hoffe das hilft PS: zum test kannst du das Prog über 2 verschiedene Ports laufen lassen ( natürlich bei SendUDPMessage den port des anderen progs eingeben) Zitat: stream=createudpstream(7777);stream auf port 7777 erstellen
While Not Keydown(1) If RecvUDPMsg(stream);wenn er etwas empfängt While ReadAvail(stream) ;während dem auslesen X=ReadInt$(stream) print X If KeyHit(28) X=X+1 print X Writeint(stream,x) SendUDPMessage Stream, IP,Port endif endif Wend EndIf Wend |
||
Twitter
Download Jewel Snake! Windows|Android |
Darkbyte |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
ok danke für die Antworten ich Probier das ganze gleich mal aus | ||
Darkbyte |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Geht leider immer noch nicht
Code: [AUSKLAPPEN] Graphics 640,480,16,2 SetBuffer BackBuffer() IP$ = Input$("IP: ") Port = 8888 seem = CreateUDPStream(Port) Repeat ;Nachricht lesen If RecvUDPMsg(seem) Then Antwort$ = ReadLine(seem) EndIf Print Antwort$ ;Nachricht schreiben N$ = Input$("Nachricht: ") WriteLine seem, N$ SendUDPMsg seem, IP(IP$), Port Until KeyHit(1) Function IP(IP$) 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 End Function Ich habe es so gemacht wie Tankbuster es mir gesagt hat. Ich soll das ganze einfach so machen nur mit einem Port. Geht aber immer noch nicht. |
||
![]() |
Tankbuster |
![]() Antworten mit Zitat ![]() |
---|---|---|
OK! also ES GEHT!
NIMM MA DIESE PROGRAMME, und lass beide laufen! mit dem einen kannst du dem anderen nachrichten schicken o0 Zitat: Graphics 640,480,16,2
SetBuffer BackBuffer() IP$ = "127.0.0.1" Port = 8888 Port_auf_den_gesendet_wird=8000 seem = CreateUDPStream(Port) Repeat ;Nachricht lesen If RecvUDPMsg(seem) Then Antwort$ = ReadLine(seem) EndIf Print Antwort$ ;Nachricht schreiben N$ = Input$("Nachricht: ") WriteLine seem, N$ SendUDPMsg seem, IP(IP$), Port_auf_den_gesendet_wird Until KeyHit(1) Function IP(IP$) 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 End Function Zitat: IP$ = "127.0.0.1" Port = 8000 seem = CreateUDPStream(Port) Repeat ;Nachricht lesen If RecvUDPMsg(seem) Then Antwort$ = ReadLine(seem) If antwort<>0 Then Print Antwort$ EndIf ;Nachricht schreiben Until KeyHit(1) Function IP(IP$) 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 End Function |
||
Twitter
Download Jewel Snake! Windows|Android |
Darkbyte |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Ich möchte aber nicht nur den einen Was schicken sondersn eine Nachricht hin und her. | ||
Dreamora |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Und wo ist das Problem?
Das ist nichts anderes als einem was schicken, denn der eine tut nichts anderes als auch einem (nämlich dir) was schicken. Es gibt in dem Sinne kein Hin und Her. Daten haben einen genauen Zielpunkt. |
||
Ihr findet die aktuellen Projekte unter Gayasoft und könnt mich unter @gayasoft auf Twitter erreichen. |
Darkbyte |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Aber wie mache ich das dann bei einem OnlineSpiel? um den gegner zu Zeichnen brauche ich seine X und Y Koordinaten und er braucht meine ja auch.
Heist das nicht dann das ich doch mit 2 Ports arbeien muss oder? |
||
Gehe zu Seite Zurück 1, 2, 3 Weiter
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group