Autor Beitrag
Tobi17
Hält's aus hier
Beiträge: 2



BeitragVerfasst: Di 16.07.02 12:56 
Hoi!

Will ja eure Sichtweise nicht einschränken, aber Halflife hat schon nen sehr guten Netzwerk-Code, wenn man nur ingame-Kommunikation beurteilt und rcon und server queries außer Acht lässt.
Die Interpolation lässt es eigentlich für alle spielbar werden, wobei man mit nem guten Ping natürlich höhere Siegchanchen hat ;)
Cs hat nur ein problem mit ihren Servern. Der Ressourcenverbracuh dieser grenzt an Frechheit und ist bis dato ungetoppt.

Natürlich geht sowas nur über udp, in solchen Fällen tcp zu verwenden grenzt schlicht an Zeitverschwendung :)
Brauche ich bei udp wirklich einmal Sicherheit, dann bilde ich vorher eine
Checksumme aus dem zu sendenden udp Packet und der Server schickt dem Clienten seine Checksumme zurück. Diese beiden werden nun verglichen und ich weiss 100% genau, ob das Packet richtig und vollständig angekommen ist oder nicht, sonst verschicke ich es nochmal.
Diese Variante hat im Gegensatz zu tcp einen enormen Speed-Vorteil.

Das "eigentliche" Problem bei udp ist, dass Packete nicht in der richtigen Reihenfolge ankommen müssen. In Spielen müssen Packete, die beispielsweise für die Positionsangaben von Spielern sind und später ankommen, verworfen oder rein zu statistischen Zwecken gespeichert werden (prediction).
Interessant wird es aber dann, wenn die Packete gesplittet sind. Hier muss man die Packete buffern und in der richten Reihenfolge zusammensetzen und das kann haarig werden ;)

Als Delphi-Kapselung der WinSock kann ich nur die ICS-Komponenten von F.Piette empfehlen, finde ich besser als Indy, allein schon wegen der Lizenz :P
overbyte.delphicenter.com/frame_index.html


Meine bescheidene Meinung
cya Tobi