"Blöcke" über UDP senden

Übersicht BlitzBasic Blitz3D

Neue Antwort erstellen

Blackside

Betreff: "Blöcke" über UDP senden

BeitragMo, Nov 10, 2008 15:37
Antworten mit Zitat
Benutzer-Profile anzeigen
Hallo,
Ich Programmiere gerade ein kleines Netzwerkspiel(3D), wo man aus einzelnen Blöcken sachen
bauen kann(wie Fort-Wars), nun bin ich gerade dabei das Netwerk zu programmieren, die Koordinatenübertragung der Spieler usw. klappt uach schon, nur weiß ich nicht wie ich es machen soll das auch die Blöcke die man baut übertragen werden. Diese sind in einen Type gespeichert, welcher die koordinaten und das model beinhaltet.
Habt ihr Vll. Ideen für dei Umsetzung?
MFG Blackside
Hier sollte eigentlich eine Signatur stehen!
 

Fredko

BeitragMo, Nov 10, 2008 15:42
Antworten mit Zitat
Benutzer-Profile anzeigen
Eine Nachricht schicken, wo angegeben wird, was gemacht wird , in diesem Fall das erstellen eines Würfels/Blocks/was auch immer.

Zum Beispiel, wenn du mit zahl|... den Typ angibst, nimm eine Zahl und leg diese z.B. auf das erstellen des Würfels fest. Beim auslesen wird dann je nach Typ verschiedene Parameter benutzt oder eine andere Art es auszulesen.
!

Blackside

BeitragMo, Nov 10, 2008 15:46
Antworten mit Zitat
Benutzer-Profile anzeigen
Ja, aber wenn nur beim erstellen eines Blockes das gesendet wird,
gibt es ein Problem mit UDP, da dort öfters mal Daten verloren gehen, und
wenn ein Spieler während des laufendes Spiels joint, er keine Blöcke sieht...
Wenn ich dich richtig verstanden habe...
Hier sollte eigentlich eine Signatur stehen!
 

Fredko

BeitragMo, Nov 10, 2008 15:50
Antworten mit Zitat
Benutzer-Profile anzeigen
Dann sendet einfach der Host alle Daten der vorherigen Blöcke UND benutzt TCP, was von vielen Strategie spielen genutzt werden muss, da auch Daten verloren gehen können bei dem Einsatz von UDP, was bei TCP nicht der Fall ist, also wichtige Sachen per TCP schicken, die unwichtigen, z.B. Chat per UDP.

Edit:
Paar mal vertippt.
!

Blackside

BeitragMo, Nov 10, 2008 15:53
Antworten mit Zitat
Benutzer-Profile anzeigen
Ok, danke ich werde es mal versuchen Wink
Hier sollte eigentlich eine Signatur stehen!

The_Nici

BeitragMo, Nov 10, 2008 18:33
Antworten mit Zitat
Benutzer-Profile anzeigen
Einen zweiten Stream mit TCP? Ich finde das irgendwie unnötig.
Bau dir ein Paketsystem. d.h. ein Paket wird immer durchnummeriert.
Wenn der Server/Client ein Paket erhält, sieht er, ob das Paket auch das letzte Paket angekommen ist.
Ein Paket könnte so aussehen:
nummer|x|y|newblock|blockx|blocky|blockw|blockh
Um herauszufinden, ob das letzte Paket ankam, kann man das letzte Paket, welches in einer Variable gespeichert ist, abfragen, also die Nummer davon nehmen, und dann schaut man ob die Nummer des neuen Pakets - 1 = Die Nummer des alten Pakets ist. Sollte dies nicht zutreffen wird eine Anfrage für das entsprechende Paket gesendet. Das ganze würde ich mit einem 32-er Dim-Feld machen (Dim Pakete(31)) machen, wenn das Dim-Feld voll ist wird einfach von vorne begonnen.

MfG

Neue Antwort erstellen


Übersicht BlitzBasic Blitz3D

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group