Jupp, da dachte ich auch dran. Aber habe ich erstmal nicht geändert. Der Typ des Records steht ja im ersten Send(), und weil beide Programme eine
Unit für Datentypen benutzen wissen beide wie Groß die Daten sind. Ist auch egal wieviele Pakete das werden, alles kommt in einen Stream und anhand der Größe finde ich heraus, ob der Datensatz komplett ist. Das macht auch keine Probleme, ich will es ja nur funktionierend haben ersteinmal... Im Handshake werden auch die Versionen abgeglichen, da können sich die Records ruhig ändern, solange der THandshakeMessage-Record gleichbleibt denke ich.
Was mich wirklich interessiert ist jetzt eigentlich nur noch, wie stark die Daten bei UDP durcheinander gewürfelt ankommen können. Ich meine, wenn die verschiedenen Daten (=Records), die ich an Send() übergeben habe, in falscher Reihenfolge ankommen, ist das relativ egal. Brauche ich nur für den Handshake und das kann ich mir wohl zurechtbiegen. Wenn aber die Daten, die in einem Send() geschickt wurden, gemischt ankommen (nicht erst das Byte für den Record-Typ, sondern z.B. zuerst das Byte für die Spieler-ID), ist das ja völlig sinnlos, darum kann das eigentlich nicht sein, oder?
Ja, das mit dem "Client bewegt selbstständig, dann gibt es kein Ruckeln" werde ich auch beherzigen. Werde da gleich mal ein paar Experimente machen.
Erstmal danke an euch alle!