Vorab: Ich bin kein Informatiker, Gaming-Experte oder dergleichen - auf diesem Gebiet also als Laie einzustufen. Falls ich also etwas falsch auslege, dann bitte korrigieren, da es relativ theoretisch wird und ich überwiegend aus praktischer Erfahrung spreche.
In meinem vorherigen Post habe ich im übrigen vom Ingame-Ping (Latenz) gesprochen, nicht von dem Browser-Ping in der Serverliste. Wollte das nur nochmal klarstellen, damit es später keine Missverständnisse gibt.
Zur "falschen Hitbox": Dieser Effekt ist so gut wie jedem bekannt. Z.B. muss man als Scharfschütze einem zur Seite rennenden Feind nicht in den Kopf schießen, um ihm einen Kopfschuss zu verpassen, sondern etwas weiter hinten (in die Luft, wo sich die Hitbox in dem Moment befindet).
Das ist natürlich von Fall zu Fall unterschiedlich, es gibt noch einige Faktoren die berücksichtigt werden wollen wie Laufrichtung, Geschwindigkeit, Entfernung, Latenz, RenderAheadLimit usw. Aber grob trifft es schon zu. Auch kann man Feinde töten, die um die Ecke gerannt sind, weil nur die Grafik hinter einer Wand verschwindet, nicht die Hitbox. Und es gibt noch dutzende weitere Beispiele.
Wir differenzieren also die sichtbare Grafik von der eigentlichen Hitbox. Und es muss auf die Hitbox geschossen werden, nicht auf die Grafik, welche für unsere Beispiele lediglich als eine Art Orientierungshilfe dient, um die eigentliche Hitbox lokalisieren zu können.
Mit anderen Worten: Die für das Spielen relevante Hitbox hinkt der Grafik hinterher.
Jedoch stellt sich mir eine Frage. Ich habe schon öfters erlebt, dass man selbst Feinde, die über eine längere Strecke auf einen blind zurennen, nicht treffen kann. Theoretisch müssten in solch einem Fall trotz Unterschiede zwischen Grafik und Hitbox keine "Gummigeschosse" auftreten, weil doch Grafik und Hitbox in einer geraden Linie zur eigenen Position stehen. Wieso treten trotzdem diese "Fehler" auf?
Oder noch besser: Der Feind döst einfach vor sich hin, bewegt sich über längeren Zeitraum keinen Millimeter, weil er die vorbeiziehenden Wolken so schön findet. Man rennt, bemerkt ihn, reagiert schnell und fängt an auf ihn zu schießen. Hier müsste doch der Server/Rechner genug Zeit gehabt haben, um Grafik und Hitbox auf eine Position zu bringen. Doch trotzdem kann man vergebens ein halbes Magazin in seinen Schädel feuern. Wie kommt das? Ich vermute, dass seine Hitbox mit der Grafik übereinstimmt, jedoch die eigene Hitbox erst nach wenigen (Milli-)Sekunden nachgezogen wird. Das heißt, wenn wir schnell reagieren, dann sehen wir zwar grafisch, dass wir treffen, aber die eigene Hitbox muss ebenfalls erst vom Server "nachgezogen" werden, um dann tatsächlich die Schüsse abzugeben und die Kollision zu berechnen. Immerhin ist relevant, was auf dem Server geschieht und berechnet wird, nicht auf unserem Rechner. Wir halten also fest, dass unsere eigene Hitbox auch zögerlich reagiert.
Damit wären wir beim Ingame-Ping: Je geringer der Ping ist, umso schneller werden Datenpakete vom Server zu uns und dann wieder zum Server zurückgeschickt. Ich weiß jetzt nicht genau, was der Ping angibt. Z.B. ob ein Ping von 60 bedeutet, dass ein Datenpaket vom Rechner zum Server 60ms braucht und vom Server zum Rechner nochmal 60ms (insgesamt also 120ms) oder ob die gesamte Strecke von Rechner zu Server und wieder zurück zum Rechner nur 60ms dauert. Gehen wir für das folgende Beispiel vom letzteren aus, weil ich vermute, dass das die richtige Variante ist.
Zum Beispiel: Spieler A hat einen Ping von 60 und Spieler B einen Ping von 240. Beide stehen regungslos auf dem Server, die jeweiligen Hitboxen und Grafiken sind richtig ausgerichtet. Im selben Moment rennen beide mit der selben Geschwindigkeit los und nach einer Laufstrecke bzw. Laufdauer von 1000ms werden sich beide an einer Hausecke begegnen. Der Server empfängt nun von beiden Spielern die jeweiligen Datenpakete, bestimmt die Position der Spieler und schickt sie wieder zurück.
Nach den ersten 120ms hat Spieler A bereits eine gewisse Strecke zurückgelegt, der Server hat seine neue Position registriert. Aber was würde Spieler B sehen? Auf dem Monitor von B würde A immer noch regungslos dargestellt werden, da er nach 120ms noch keine Angaben zur Position von A erhalten hat, denn er benötigt 240ms bis er eine Antwort vom Server erhalten hat. Richtig?
Jetzt müssten sich um 1000ms beide an der Hausecke treffen. Gäbe es keine Verzögerung, so müssten sich beide nach 1000ms gleichzeitig begegnen und das Feuer eröffnen können. Es passiert aber was anderes. Nach 960ms hat der Server die Datenpakete beider Spieler erwidert (A=60x16 und B=240x4) und auf den jeweiligen Monitoren werden die Position richtig angezeigt. Was passiert jetzt im entscheidendem Moment nach weiteren 40ms (Gesamt 1000ms) wenn sich beide begegnen werden? Spieler A rennt um die Ecke und fängt an zu schießen. Er zielt dabei auf die Grafik. Das Risiko besteht nun darin, dass seine Schüsse nicht gewertet werden, da er erst in weiteren 20ms an der eigentlichen Position sein wird, die er auf seinem Monitor sieht. Und zum anderen schießt er auf die Grafik (sprich in die Luft), weil sich die Hitbox von Spieler B noch an der Position von vor 40ms befindet.
Das selbe Szenario aus der Sicht von Spieler B: Wie bereits erwähnt befinden sich nach 960ms beide an der selben Position. Spieler B will nun um die Ecke rennen, bemerkt den Feind und stirbt bevor er reagieren konnte. Wieso? Weil A bereits um 1020ms seine Schüsse an den Server senden konnte (kleiner Ping), Spieler B hat aber zu dem Zeitpunkt 1020ms noch gar keine Datenpakete zurückerhalten (das nächste würde erst um 1200ms folgen), weshalb er auch nicht sehen konnte, wie er eigentlich schon vorher angeschossen wurde. Das heißt, dass B mit einem hohen Ping gegenüber A mit dem kleineren Ping einen Nachteil hat. Für A ist das natürlich auch nicht sonderlich angenehm, da er durch diese Verzögerung ins "Nichts" schießen könnte, aber dennoch sieht er alles um einige Millisekunden früher als Spieler B.
Es handelt sich hier zwar um Millisekunden, es ist also alles relativ fein ausgelegt, aber dennoch können diese Millisekunden eine entscheidende Rolle spielen. Je größer der Ping ist, umso größer erscheinen dann die Unterschiede zwischen Grafik und Hitbox. Ich glaube auch, dass gerade so diese "teleportierenden" Spieler zu erklären sind, wenn der Ping zu hoch wird (etwa ab 300), weil der Server einfach zu lange auf den Spieler warten muss.
Wie kommt es also, dass z.B. MAR_JA mit einem Ping von 250-300 so schnell reagieren kann, ja sogar alles viel früher zu sehen scheint, obwohl sein System länger braucht um Datenpakete zu empfangen/zu senden? Natürlich davon ausgehend, dass keine Cheats/Hacks oder andere faulen Tricks benutzt werden und das der Ingame-Ping richtig angegeben wird. Denn gerade durch die Annahme, dass er einen wesentlichen Nachteil haben sollte aber trotzdem wie ein 40-er Ping spielt, entsteht ja der Eindruck, dass mit ihm etwas faul ist. Wie gesagt, ich habe noch nie erlebt, dass jemand mit einem Ping von +180 so flüssig spielen kann, deswegen auch diese Skepsis ihm gegenüber.
( Ich hoffe das Beispiel mit Spieler A, B und den ganzen Millisekunden hat niemanden verwirrt.
)