online,multiplayer,2buffer?
- captain third
- Beiträge: 194
- Registriert: 12.12.2004 13:14
- Kontaktdaten:
online,multiplayer,2buffer?
Hallo mit ein ander...
ich hab mir überlegt,wenn ich ein onlinespiel machen will...also von client to server prinzip....wäre es logisch mit 2 buffern zu hantiern? ich hab gedacht den einen buffer zum senden und den andren zum empfangen.Auf die idee kam ich als ich überlegt,und zwar,wenn ich nur einen buffer benutze,und ich sende die ganze zeit,kann ich doch rein theoretisch nix empfangen....
achja und noch ne frage,wenn ich ein onlinespiel mache,muss dann wenn ich die ganze zeit sende,SendNetworkData oder SendNetworkString benutzen?
bedanke mich schonmal im vorraus für ne Antwort
ich hab mir überlegt,wenn ich ein onlinespiel machen will...also von client to server prinzip....wäre es logisch mit 2 buffern zu hantiern? ich hab gedacht den einen buffer zum senden und den andren zum empfangen.Auf die idee kam ich als ich überlegt,und zwar,wenn ich nur einen buffer benutze,und ich sende die ganze zeit,kann ich doch rein theoretisch nix empfangen....
achja und noch ne frage,wenn ich ein onlinespiel mache,muss dann wenn ich die ganze zeit sende,SendNetworkData oder SendNetworkString benutzen?
bedanke mich schonmal im vorraus für ne Antwort
natoll,jetzt muss ich noch einen Rechner zusammenbaun der 24 stunden am Tag online ist und meinen Server für mein Projekt Order of Blance laufen lässt
Moin
Natürlich kannst du mit 2 Puffern arbeiten. Und wenn du auf der einen Seite dauernd sendest, wäre wirklich praktisch, einen zweiten Puffer als Empfang zu haben.
Zur zweiten Frage: Rein vom Prinzip ist es egal, ob du SendNetworkData() oder SendNetworkString() benutzt, weil beide eigendlich dasselbe machen. Ich würde aber SendNetworkData() verwenden, weil die Daten dann gleich in einem Puffer liegen und es einige PB-Befehle gibt, die auf Pufferdaten zurückgreifen (zB die Packer-Lib). So spart man sich später andauerndes hin- und herkopieren der Daten.
Greetz Laurin
PS: "mit ein ander" schreibt man eigendlich "miteinander"
Natürlich kannst du mit 2 Puffern arbeiten. Und wenn du auf der einen Seite dauernd sendest, wäre wirklich praktisch, einen zweiten Puffer als Empfang zu haben.
Zur zweiten Frage: Rein vom Prinzip ist es egal, ob du SendNetworkData() oder SendNetworkString() benutzt, weil beide eigendlich dasselbe machen. Ich würde aber SendNetworkData() verwenden, weil die Daten dann gleich in einem Puffer liegen und es einige PB-Befehle gibt, die auf Pufferdaten zurückgreifen (zB die Packer-Lib). So spart man sich später andauerndes hin- und herkopieren der Daten.
Greetz Laurin
PS: "mit ein ander" schreibt man eigendlich "miteinander"

Now these points of data make a beautiful line.
And we're out of beta. We're releasing on time.
And we're out of beta. We're releasing on time.
- captain third
- Beiträge: 194
- Registriert: 12.12.2004 13:14
- Kontaktdaten:
- captain third
- Beiträge: 194
- Registriert: 12.12.2004 13:14
- Kontaktdaten:
ai....mir fällt grade auf das ich kein plan habe wie ich das machen soll...des läuft ja alles über client to server...aber der andere client muss doch wissen wo der andere client ist,was er macht,wohin er will und so...wie mache ich des am dümmsten?
natoll,jetzt muss ich noch einen Rechner zusammenbaun der 24 stunden am Tag online ist und meinen Server für mein Projekt Order of Blance laufen lässt
- remi_meier
- Beiträge: 1078
- Registriert: 29.08.2004 20:11
- Wohnort: Schweiz
ok Remi hast recht
Hier korrigiert:
Client1-> SendNetworkString(SID,"COORD 10,20") //Er sagt dem Server dass er bei den Koords 10|20 ist.
Server-> SendNetworkString(CID,"C1 COORD 10,20") //Server gibt client 2 bescheid
Client2 -> Nimmt daten entgegen und stellt gegnerfigur da....

mfg
125
Hier korrigiert:
Client1-> SendNetworkString(SID,"COORD 10,20") //Er sagt dem Server dass er bei den Koords 10|20 ist.
Server-> SendNetworkString(CID,"C1 COORD 10,20") //Server gibt client 2 bescheid
Client2 -> Nimmt daten entgegen und stellt gegnerfigur da....

mfg
125
Zuletzt geändert von 125 am 04.02.2005 23:29, insgesamt 1-mal geändert.
- captain third
- Beiträge: 194
- Registriert: 12.12.2004 13:14
- Kontaktdaten:
mmmh,das ist das was ich mir schon gedacht habe...mit sendnetworkstring einfach des ma so hinschreiben...der server leitets weiter und der näxte client siehts...nur bei einer "welt" (sagn wirs mal so) in einer "Welt" sind mehrere kleine maps (ca. 2000,2000 groß) und denn? das heist ja praktisch das ein client auf jeder map von der welt zu sehen ist...oder nicht???
natoll,jetzt muss ich noch einen Rechner zusammenbaun der 24 stunden am Tag online ist und meinen Server für mein Projekt Order of Blance laufen lässt
hmm
ich hoffe ich ärklär das jetzt richtig
Also wen du es so ungetrennt machst ja aber kanst ja weitere Parameter mitgeben z.B. so:
Client1-> SendNetworkString(SID,"WELT 1,COORD 10,20") //Er sagt dem Server dass er bei den Koords 10|20 ist in der Welt 1.
Server-> SendNetworkString(CID,"C1 COORD 10,20") //Server gibt client 2 bescheid wen dieser in derselben Welt hockt...
Client2 -> Nimmt daten entgegen und stellt gegnerfigur dar.
Gruss Ground0


Also wen du es so ungetrennt machst ja aber kanst ja weitere Parameter mitgeben z.B. so:
Client1-> SendNetworkString(SID,"WELT 1,COORD 10,20") //Er sagt dem Server dass er bei den Koords 10|20 ist in der Welt 1.
Server-> SendNetworkString(CID,"C1 COORD 10,20") //Server gibt client 2 bescheid wen dieser in derselben Welt hockt...
Client2 -> Nimmt daten entgegen und stellt gegnerfigur dar.
Gruss Ground0