Ich bräuchte mal eure Einschätzung / Überlegungen:
Hobby-mäßig bastle ich oft an kleinen Spielen.
Nun stehe ich vor einer Frage die ich mir selbst nicht richtig beantworten kann:
Es geht um ein Multiplayerspiel - Strategie. Der Spieler kann also Agents auf einer Karte steuern.
Thema: Pathfinding.
Was macht mehr Sinn? Die Berechnung der Wege auf dem Server laufen zu lassen oder Clientseitig?
Auf dem Server könnte dann relativ hoher Aufwand erzeugt werden, gerade wenn 4 Spieler gleichzeitig a 200 Einheiten auf einer großen Karte durch die Gegend schicken. Natürlich kann man über Gruppenberechnungen etc optimieren aber dennoch bleibt da ein realtiv hoher workload auf dem server. So wäre die Berechnung aber auch steuerbar, sprich die Anfragen könnten gebuffert werden und nacheinander abgearbeitet werden.
Würde ich das Clientseitig machen, sprich ich teile nur mit Einheit A von Spieler B möchte nach Position C, würde das die Workload auf jeden Client schmeißen, aber der netcode wäre schlanker.
Wie würdet ihr dabei vorgehen? Ich hoffe ich konnte halbwegs formulieren, worum es mir geht.
Frage
Alaric
Ich bräuchte mal eure Einschätzung / Überlegungen:
Hobby-mäßig bastle ich oft an kleinen Spielen.
Nun stehe ich vor einer Frage die ich mir selbst nicht richtig beantworten kann:
Es geht um ein Multiplayerspiel - Strategie. Der Spieler kann also Agents auf einer Karte steuern.
Thema: Pathfinding.
Was macht mehr Sinn? Die Berechnung der Wege auf dem Server laufen zu lassen oder Clientseitig?
Auf dem Server könnte dann relativ hoher Aufwand erzeugt werden, gerade wenn 4 Spieler gleichzeitig a 200 Einheiten auf einer großen Karte durch die Gegend schicken. Natürlich kann man über Gruppenberechnungen etc optimieren aber dennoch bleibt da ein realtiv hoher workload auf dem server. So wäre die Berechnung aber auch steuerbar, sprich die Anfragen könnten gebuffert werden und nacheinander abgearbeitet werden.
Würde ich das Clientseitig machen, sprich ich teile nur mit Einheit A von Spieler B möchte nach Position C, würde das die Workload auf jeden Client schmeißen, aber der netcode wäre schlanker.
Wie würdet ihr dabei vorgehen? Ich hoffe ich konnte halbwegs formulieren, worum es mir geht.
5 Antworten auf diese Frage
Empfohlene Beiträge
Erstelle ein Benutzerkonto oder melde Dich an, um zu kommentieren
Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können
Benutzerkonto erstellen
Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!
Neues Benutzerkonto erstellenAnmelden
Du hast bereits ein Benutzerkonto? Melde Dich hier an.
Jetzt anmelden