Netsettings

Tatsächlich sind Netsettings in CS:GO ein Thema, das dich als normalen Spieler gar nicht so sehr interessieren sollte. Trotzdem stößt fast jeder Spieler früher oder später auf Begriffe wie Tickrate und Interpolation, die durchaus Fragen aufwerfen können. Dieser Artikel macht die Grundlagen verständlich, so dass du direkt weißt, ob du etwas umstellen solltest. Außerdem werden die wichtigsten Fragen zu diesem Thema beantwortet. Danach können dich andere Guides nicht mehr in die Irre führen.

Netsettings-Grundlagen

Ein bisschen was hat sich im Vergleich zu früheren Spielen der Counter-Strike-Reihe verändert. Es ist ratsam vermeintlich perfekte Einstellungen nicht einfach blind zu übernehmen. Dadurch kann sich dein Spielgefühl auch verschlechtern. Vor allem da du dir das nötige Grundwissen innerhalb kürzester Zeit selbst aneignen kannst.

Standard-Einstellungen

Die Standard-Netsettings von CS:GO sind:

rate 196608
cl_updaterate 64
cl_cmdrate 64
cl_interp_ratio 2
cl_interp 0
fps_max 300

Mit diesen Netsettings fährt ein Großteil der Spieler ziemlich gut. Wenn du dich mit der Thematik nicht auskennst oder versehentlich etwas verstellt hast, dann verwende einfach diese Werte. Damit machst du nichts falsch.

Seit dem CS:GO Update vom 30.05.13 können bestimmte Netsettings während des Spielens nicht mehr geändert werden. Das betrifft die Interpolation und die Updaterate.

Möchtest du diese Werte ändern, musst du dich im Hauptmenü befinden oder in den Zuschauermodus wechseln. Und du benötigst dafür die Entwicklerkonsole.

net_graph: Die wichtigsten Angaben

Mit dem Konsolenbefehl “net_graph 1” kannst du den Network Graph aufrufen. Dieser zeigt dir aktuelle Informationen zu deiner Verbindung an. Dort siehst du ein paar wichtige Werte, die mit deinen Netsettings in Verbindung stehen.

Loss

Steht bei “Loss” etwas anderes als 0, dann gibt es offenbar Probleme beim Datentransfer zwischen Server und Client. Dieser Wert gibt Auskunft über die prozentual verlorengegangenen Pakete. Leidest du unter Packetloss, solltest du sicherstellen, dass “cl_interp_ratio” auf 2 eingestellt ist. Dadurch steht immer ein zusätzliches Datenpaket als Reserve bereit. Wenn das nicht hilft, kannst du noch versuchen durch Senken der “rate” den Paketverlust zu vermeiden. Mit diesem Befehl teilst du dem Server deine eingehende Bandbreite in Bytes/s mit.

Choke

“Choke” kann man als eine Art Datenstau verstehen, Er tritt auf, wenn der Client mehr Datenpakete anfordert, als verarbeitet werden können. Der Server ist dann gezwungen beim Senden einige Datenpakete auszulassen. Sollte man Choke angezeigt bekommen, muss das nicht zwangsläufig negative Auswirkungen haben. Es kann auch einfach nur bedeuten, dass die cl_updaterate zu hoch eingestellt ist. Treten Verbindungsprobleme auf, dann kann man durch Herabsetzen der cl_updaterate den Choke reduzieren.

Updaterate und cmdrate

Die “snapshot update rate” (cl_updaterate) ist die Anzahl an Paketen, die du pro Sekunde an den Server schickst. Die “user command rate” (cl_cmdrate) ist dagegen die Menge der Pakete, die du vom Server anforderst. Beide Werte werden von der Tickrate des Servers limitiert.

Der Net Graph zeigt die eingestellten Werte von cl_updaterate und cl_cmdrate an und ob diese sich im Rahmen der Server-Tickrate befinden (weiß = gut, gelb = mittel, rot = schlecht).

Du darfst dich von der farblichen Kennzeichnung aber nicht irritieren lassen. Die Farbe zeigt nur an inwiefern du die vom Server bereitgestellte Leistung nutzt und deutet nicht zwangsläufig auf Probleme hin. Spielst du beispielsweise mit normalen Netsettings auf einem Server mit Tickrate 128, dann werden die Werte rot dargestellt. Das heißt sie sind zu niedrig eingestellt, dramatisch ist das aber nicht.

Generell gilt, dass cl_updaterate und cl_cmdrate nach Möglichkeit so hoch wie die Tickrate des Servers eingestellt sein sollten. Heutzutage ist das auch kaum mehr ein Problem und es macht nur in den seltensten Fällen Sinn diese Werte niedriger einzustellen.

Tickrate

Ein Server simuliert das Spiel in separaten Zeitschritten. Diese Zeitschritte werden als “ticks” angegeben. In CS:GO ist eine Tickrate von 64 oder 128 vorgesehen.

Eine höhere Tickrate sorgt für eine präzisere Simulation und damit ein besseres Spielerlebnis, erfordert aber sowohl mehr Rechenleistung als auch eine höhere Bandbreite (beim Server und beim Spieler).

Schwache Leitungen (z.B. DSL 1000) sind deshalb mit einer hohen Tickrate überfordert und es müssen niedrigere Netsettings verwendet werden. Problematisch wird es, wenn der Server hohe Einstellungen erzwingt.

Du kannst problemlos mit Netsettings für Tickrate 64 auch auf Servern mit Tickrate 128 spielen. Du nutzt dann eben die Leistung des Servers nicht vollständig und hast gegebenenfalls einen kleinen Verbindungsnachteil gegenüber anderen Spielern. Wie spürbar das letztendlich ist, darüber wird nach wie vor gestritten. Für den normalen Hobby-Spieler ist es aber nicht wirklich relevant.

Umgekehrt kannst du mit Einstellungen für 128 Tickrate bedenkenlos auf 64-Tick-Servern spielen. Deine Werte werden denn vom Server automatisch heruntergesetzt, da sie über das technische Limit des Servers hinausgehen. Ein Server kann dir nicht mehr als ein Datenpaket pro Tick schicken.

FPS

Je mehr Bilder pro Sekunde (engl. “frames per second”, kurz “FPS”), desto besser. Hier spielt vor allem deine Hardware eine entscheidende Rolle. Du kannst aber natürlich auch durch das Herabsetzen der Grafikeinstellungen mehr FPS bekommen.

Es gibt die Möglichkeit mit dem Konsolenbefehl “fps_max” eine künstliche Obergrenze zu setzen. Die Standardeinstellung ist 300 und es gibt eigentlich auch keinen Grund diese zu ändern. Manche Spieler möchten gerne eine konstante Framerate haben, weil sie damit ein besseres Spielgefühl haben. Inwiefern das wirklich zutrifft ist fraglich.

Jedenfalls solltest du fps_max niemals unter den Wert von cl_cmdrate setzen, weil du deine Verbindung zum Server damit limitieren würdest. Denn es können nicht mehr Informationen gesendet werden, als das Spiel produziert. Spielst du also mit auf einem Server mit 128 Tick und hast cl_cmdrate entsprechend auch auf 128 gestellt, dann muss fps_max mindestens 128 (oder besser noch etwas höher) sein.

Netsettings FAQ

Netsettings sind ein komplexes Thema und unsere Grundlagen gehen natürlich nicht allzu sehr ins Detail. Deshalb soll die folgende FAQ einige der am häufigsten aufkommenden Fragen beantworten.

Allgemeines

Was bedeuten die verschiedenen Befehle?
rate (Standard: 196608) – Maximale Download-Bandbreite in Bytes pro Sekunde.
cl_cmdrate (Standard: 64) – Maximale Anzahl an Paketen, die pro Sekunde an den Server gesendet werden.
cl_updaterate (Standard: 64) – Maximale Anzahl an Paketen, die pro Sekunde vom Server erhalten werden.
cl_interp (Standard: 0) – Interpolationszeit in ms. Wert nicht verändern, wird automatisch berechnet!
cl_interp_ratio (Standard: 2) – Verhältnis der Interpolationszeit. cl_interp_ratio / cl_updaterate = cl_interp

Ich kenne mich mit Netsettings nicht gut aus, was soll ich einstellen?
Alle, die sich mit dem Thema Netsettings nicht auskennen, sollten die Standardeinstellungen beibehalten. Diese sind für den Großteil der Spieler optimal.
rate 196608
cl_cmdrate 64
cl_updaterate 64
cl_interp_ratio 2
cl_interp 0
fps_max 300

In CS:Source hatte ich andere Netsettings. Kann ich die nicht auch in CS:GO verwenden?
Nein, davon ist abzuraten. Diese Einstellungen passen in CS:GO nicht mehr zu 100% und sorgen in den meisten Fällen für ein schlechteres Ergebnis. Zudem existieren einige der damaligen Befehle in CS:GO nicht mehr.

Verbindung, Loss & Choke

Gibt es einen Grund die “rate” zu verändern?
Durch die rate wird die für CS:GO zur Verfügung stehende Bandbreite festgelegt. Wenn du eine DSL-Verbindung mit mindestens 1,5 Mbit/s Downstream besitzt, dann machst du mit der Standardeinstellung von 196608 nichts falsch.

Für den Fall, dass du eine schlechtere Leitung besitzt, kannst du durch Herabsetzen der rate eventuell Verbindungsproblemen beim Spielen entgegenwirken.

Besitzt du eine gute Leitung, dann kannst du den Wert auf bis zu 786432 erhöhen. Für diesen Maximalwert wird ein Downstream von 6 Mbit/s benötigt. Du musst aber stets bedenken, dass auch andere Programme, die im Hintergrund laufen, die Bandbreite beanspruchen können.

Wie kann ich meine Verbindungsinformationen anzeigen lassen?
Mit dem Konsolenbefehl “net_graph 1” bekommst du aktuelle Verbindungsinformationen zu sehen. Unter anderem die Bilder pro Sekunde, den Ping, die Tickrate des Servers und die eingestellten Werte bei cl_updaterate und cl_cmdrate. Auch Paketverluste werden dir angezeigt.

Warum ist mein Ping im Net Graph höher als im Scoreboard?
Auf die Anzeige im Scoreboard solltest du dich nicht zu sehr verlassen. Im Net Graph wird der reale Ping angezeigt. Zum Ping gehört nämlich auch immer die Zeit, die gebraucht wird, um die Informationen zu verarbeiten. Diese Zeit wird im Scoreboard Ping nicht mit eingerechnet.

Was ist wenn ich Loss habe?
Dieser Wert zeigt an wieviel Prozent der Daten, die der Server sendet, bei dir nicht ankommen. Wenn der Server seine Datenpakete mit einer höheren Datenrate sendet, als die Verbindung des Spielers hergibt, dann kommt es zum Loss.

Bei den schnellen Internetverbindungen heutzutage sollte das eigentlich kein Problem mehr sein. Leidest du unter Packetloss, solltest du sicherstellen, dass cl_interp_ratio auf 2 eingestellt ist und nicht auf 1. Das kann helfen, den Loss zu reduzieren.

Wenn das nicht hilft, kannst du noch versuchen durch Senken der rate den Paketverlust zu vermeiden. Mit diesem Befehl teilst du dem Server deine eingehende Bandbreite in bytes/s mit. Der eingestellte Wert gilt als Maximum und wird nicht überschritten.

Davon abgesehen ist natürlich auch die Qualität deiner Internetverbindung ein Faktor. Benutzt du WLAN? Die Funkwellen sind störanfällig und deine Distanz zum Router bestimmt ebenso die Verbindungsqualität. Falls möglich solltest du PC und Router mit einem Netzwerkkabel und dann überprüfen, ob du immer noch Loss hast.

Was bedeutet Choke im Net Graph?
Choke ist die prozentuale Anzahl an Datenpaketen, die vom Spieler angefordert werden, aber nicht verarbeitet werden können.

Je nach eingestellter cl_updaterate forderst du eine bestimmte Anzahl an Paketen pro Sekunde vom Server an. Wenn die Menge an Datenpaketen das über andere Einstellungen festgelegte Bandbreitenlimit überschreitet, dann kommt es zum Choke. Aufgrund der eingestellten rate, cl_updaterate und der Größe der Pakete ist der Server dazu gezwungen beim Senden einige Datenpakte auszulassen.

Choke muss nicht zwangsläufig negative Auswirkungen haben. Es kann auch einfach nur bedeuten, dass die cl_updaterate zu hoch eingestellt ist. Und geringe Choke-Werte bis zu 10% sind völlig normal (v.a. beim Rundenstart, da hier mehr Daten verarbeitet werden müssen). Auch höhere Choke-Werte müssen nicht unbedingt schlimm sein. Solange genug Daten ankommen, damit ein synchroner Spielfluss garantiert ist, gibt es keinen Handlungsbedarf.

Sollten sichtbare Verbindungsprobleme auftreten, kannst du versuchen den Choke durch Herabsetzen der cl_updaterate zu reduzieren. Dann werden weniger Pakete vom Server angefordert.

Interpolation

Was ist Interpolation?
Interpolation bedeutet, dass das Spielgeschehen clientseitig gepuffert wird. Die Interpolationszeit (“lerp” – Wert von cl_interp) ist die Zeit, die das Geschehen auf deinem PC gepuffert wird, bevor ein neues Paket vom Server ankommt.

Eine niedrigere Interpolationszeit bedeutet, dass weniger Milisekunden gepuffert werden, bevor die erhalten Informationen vom Spiel tatsächlich dargestellt werden. Umso geringer die Zeit, desto besser. Jedoch kann es zu Paketverlusten kommen, wenn die Verbindung zu schwach ist oder der Server nicht genug Leistung hat. Der Vorteil, den du durch eine kürzere Interpolation hast, ist so gering, dass er praktisch nicht spürbar ist.

Interpolation hat nichts mit dem Ping zu tun! Es ist nur ein grafischer Puffer.

Auf was soll ich cl_interp einstellen?
Dieser Befehl gibt an wieviel Millisekunden vom Spiel vorausberechnet werden. An cl_interp solltest du nie etwas verstellen, sondern es immer auf 0 lassen. Das Spiel berechnet den optimalen Wert nämlich selbst. Die Formel dafür lautet cl_interp_ratio / cl_updaterate = cl_interp. Möchtest du die Interpolation verändern, solltest du also an den beiden anderen Werten (cl_interp_ratio und cl_updaterate) schrauben.

Was macht cl_interp_ratio genau?
cl_interp_ratio hat mit der Interpolationszeit zu tun. Mit der Standardeinstellung von 2 erhältst du einen Puffer, der fehlende Datenpakete ausgleichen kann und so zu einem reibungslosen Spielgefühl beiträgt.

Die Interpolation wird folgendermaßen berechnet: cl_interp_ratio / cl_updaterate = cl_interp.
Wenn du eine höhere Interpolation hast, dann bist du theoretisch leicht im Nachteil gegenüber anderen Spielern, die mit niedrigerer Interpolation spielen. Du siehst nämlich alles minimal später. Dabei befinden wir uns aber in einem Bereich von ~7,8ms bis 23,5ms, die du praktisch nicht merkst.

Im Gegenzug setzt cl_interp_ratio 1 sowohl eine gute Leitung, als auch einen stabilen und leistungsfähigen Server voraus. Wenn du Probleme mit Paketverlusten (“packetloss”) hast, dann solltest du lieber mit cl_interp_ratio 2 spielen.

Frames per Second (FPS)

Welchen Zusammenhang gibt es zwischen cl_cmdrate und fps_max?
Hierbei gilt grundlegend: Die Bilder pro Sekunde (Frames per second = FPS) sollten immer höher sein als die eingestellte cl_cmdrate.

Du kannst nicht mehr Informationen an den Server senden (cl_cmdrate,) als das Spiel produziert (FPS). Die Einstellung von fps_max muss also immer höher sein als die cl_cmdrate, alles andere wäre sinnlos.

Bringt es dann überhaupt etwas mehr als 128 FPS zu haben?
Ja, die Mausbewegungen fühlen sich dadurch reibungsloser an, weil das Spiel die Eingabe mit jedem gerenderten Frame verarbeitet.

Muss ich meine FPS begrenzen?
Nein, natürlich nicht. Umso mehr Frames, desto besser. Allerdings möchten einige Spieler gerne eine konstante Framerate haben und Einbrüche vermeiden, deshalb limitieren sie die Frames mit fps_max auf einen Wert, den der PC durchgehend halten kann.

Auf welchen Wert soll ich fps_max einstellen?
Eigentlich kannst du die Standardeinstellung von 300 belassen. Wenn du die Einstellung trotzdem ändern willst, dann hängt das ganz von deinem PC ab. Umso mehr Leistung deine Hardware bringt, desto höher kannst du fps_max setzen.

Dabei solltest du beachten, dass fps_max immer etwas höher sein sollte als cl_cmdrate. Wenn du also mit cl_cmdrate 128 spielst, sollte fps_max bei 135 oder höher sein.

Tickrate

Was ist die Tickrate?
Die Tickrate gibt an in wieviele einzelne Zeitschritte (“ticks”) der Server eine Sekunde unterteilt. Je mehr “ticks” pro Sekunde, desto präziser simuliert der Server das Spielgeschehen. In CS:GO gibt es Tickrate 64 und 128.

Warum gibt es zwei verschiedene Tickrates?
Eine höhere Tickrate erfordert sowohl beim Spieler als auch beim Server mehr Rechenleistung und mehr Bandbreite. Weil diese Leistung nicht immer erbracht werden kann, laufen Internetserver im Normalfall mit einer Tickrate von 64, die für normales Spielen auch völlig ausreicht.

Eine Tickrate von 128 ist natürlich genauer und bietet zumindest theoretisch ein besseres Spielgefühl, erfordert aber deutlich mehr Leistung. Im LAN ist diese Tickrate problemlos nutzbar. Im Internet dagegen gibt es viele Spieler mit einer schwachen Leitung oder einem schwachen PC, die eine derart hohe Tickrate nicht nutzen können und dadurch auf entsprechenden Servern im Nachteil sind.

Das ist auch der Grund warum Valve seine offiziellen Server ausschließlich mit Tickrate 64 betreibt. Es soll verhindert werden, dass manche Spieler einen technischen Nachteil haben. Davon abgesehen ist der Unterschied von Tickrate 64 auf 128 für reguläre Spieler kaum bis gar nicht spürbar und nicht relevant.

Ab wann soll ich mit 128er Settings spielen?
Wenn deine Internetverbindung gut genug ist, um den hohen Datentransfer problemlos zu bewältigen (ab DSL3000). Außerdem solltest du während des Spielens konstant über 128 FPS haben.

Beachte aber, dass solche Netsettings nur dann etwas bringen, wenn du auf einem Server mit Tickrate 128 spielst.

Was ist wenn ich mit 128er Settings auf 64-Tick-Servern spiele? Gibt es da irgendwelche Probleme oder Nachteile?
Nein, es gibt dabei keine Probleme. Spielst du mit höheren Settings auf einem Server mit Tickrate 64, dann werden cl_cmdrate und cl_updaterate automatisch auf 64 heruntergeregelt, da der Server bei diesen Werten sein technisches Limit erreicht hat. Nachteile gegenüber anderen Spielern hast du dadurch nicht.

Quelle: Valve Developer Wiki