Verfasst: 21.07.2006 13:42
Was genau steht denn schon in deinem Multiplayer?
Möchtest du ein Server_Client-Modell machen, oder Client-Client?
Wieviele Spieler sollen daran teilnehmen können?
Ich würde einfach alle deine Bewegungen- die sich aus den Tastendrücken ja erschließen lassen- zum Server senden, und dieser kopiert Diese dann an alle anderen Teilnehmer.
Es wird sozusagen bei jeder Bewegung etwas gesendet, und der Server wartet, bis "alle" ihren "letzten Zug in dieser Millisekunde" zum Server gesendet haben, und broadcastet diese dann.
So würde ich das rein logisch angehen. Die technischen Hintergründe sollte sich eigentlich aus der Hilfe erschließen lassen-
das Problem ist und bleibt bei Realtime-Spielen die Synchronisation.
Es darf natürlich der mit dem schnelleren PC nicht 5-mal pro 100tel Sekunde eine Bewegung zum Server senden, und der mit dem langsameren PC nur 3 mal, bzw der Server muss immer "mitzählen" und somit immer gleich viele Aktionen der Kontrahenten wieder übermitteln.
Eine Möglichkeit dabei wäre der Fairnis halber, dass auch der einzelnen Spieler ihre eigenen Spieldaten nur ausgewertet vom Server sehen. Das heißt, dass ich immer nur wirklich das sehe, was der Server auch interpretiert hat. Ansonsten könnte es durch leichte "ruckler" oder so immer mal kleine Verschiebungen geben. Diese Lags würden dann dazu führen, dass Client A mit dem schnelleren PC Spieler B erledigt hat, aber Spieler B aufgrund seines langsameren PCs noch "weglaggen" konnte.
Soviel von meiner Idee dazu,
Gr33tz
Tafkadasom2k5
Möchtest du ein Server_Client-Modell machen, oder Client-Client?
Wieviele Spieler sollen daran teilnehmen können?
Ich würde einfach alle deine Bewegungen- die sich aus den Tastendrücken ja erschließen lassen- zum Server senden, und dieser kopiert Diese dann an alle anderen Teilnehmer.
Es wird sozusagen bei jeder Bewegung etwas gesendet, und der Server wartet, bis "alle" ihren "letzten Zug in dieser Millisekunde" zum Server gesendet haben, und broadcastet diese dann.
So würde ich das rein logisch angehen. Die technischen Hintergründe sollte sich eigentlich aus der Hilfe erschließen lassen-
das Problem ist und bleibt bei Realtime-Spielen die Synchronisation.
Es darf natürlich der mit dem schnelleren PC nicht 5-mal pro 100tel Sekunde eine Bewegung zum Server senden, und der mit dem langsameren PC nur 3 mal, bzw der Server muss immer "mitzählen" und somit immer gleich viele Aktionen der Kontrahenten wieder übermitteln.
Eine Möglichkeit dabei wäre der Fairnis halber, dass auch der einzelnen Spieler ihre eigenen Spieldaten nur ausgewertet vom Server sehen. Das heißt, dass ich immer nur wirklich das sehe, was der Server auch interpretiert hat. Ansonsten könnte es durch leichte "ruckler" oder so immer mal kleine Verschiebungen geben. Diese Lags würden dann dazu führen, dass Client A mit dem schnelleren PC Spieler B erledigt hat, aber Spieler B aufgrund seines langsameren PCs noch "weglaggen" konnte.
Soviel von meiner Idee dazu,
Gr33tz
Tafkadasom2k5