netzwerk

Anfängerfragen zum Programmieren mit PureBasic.
Benutzeravatar
Killfrog
Beiträge: 12
Registriert: 20.06.2006 21:04

Beitrag von Killfrog »

mittlerweise läuft das alles ganz gut, nur fällt mir nicht wirklich ein wie ich die spieler synchronisiert bekomme ^^

derzeit läuft mein "host" programm schneller als mein "client" und da bei beiden dinge berechnet werden (oh man ich arbeite ab jetz nurnoch mit dedicated server /:-> ) kann im mom der host schneller laufen als der client :lol:

also hat wer eine idee um die beiden zu synchronisieren?
PB:3.92
Benutzeravatar
Thalius
Beiträge: 476
Registriert: 17.02.2005 16:17
Wohnort: Basel / Schweiz

Beitrag von Thalius »

Ich bin imo an ner netzwerklib am basteln ( schon seit nem Jahr nebenher ;) genau für Spiele - aber bevor ich das Ding als Lib rausgeb kommt noch Threadsafety rein - und ein paar Beispiele muessen auch noch her. Eine einfach synchronisation kannst du erreichen indem du eine art "Zeitstempel" verwendest. Elapsedmilliseconds() ist dafür ganz ok.

Server schickt seinen Timeindex zu client
Client schickt bei antwort seinen timeindex .. beide indexes und deren Differenz wird jeweils beim Empfang je Seite ausgerechnet - schlussendlich erhälzt du die Latenzzeit welche du dann zb. für Animatoren als Faktor/Modifikator für die Geschwindigkeit von bewegten Objekten verwenden kannst. Wobei du je nach Anwendung dem Server immer "recht" geben willst oder ned .. ;)

Als Zuckerguss kannst am ende noch n "SPline-Algorythmus" hinzufügen um eine runde/fliessende Bewegung zu erzielen...

Thalius
Antworten