"Blöcke" über UDP senden
Übersicht

![]() |
BlacksideBetreff: "Blöcke" über UDP senden |
![]() Antworten mit Zitat ![]() |
---|---|---|
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 ![]() Habt ihr Vll. Ideen für dei Umsetzung? MFG Blackside |
||
Hier sollte eigentlich eine Signatur stehen! |
Fredko |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
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 |
![]() Antworten mit Zitat ![]() |
---|---|---|
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 |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
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 |
![]() Antworten mit Zitat ![]() |
---|---|---|
Ok, danke ich werde es mal versuchen ![]() |
||
Hier sollte eigentlich eine Signatur stehen! |
![]() |
The_Nici |
![]() Antworten mit Zitat ![]() |
---|---|---|
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 ![]() ![]() MfG |
||
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group