Erkennung von Skriptverzögerungen (MS) mit der Resmon-Funktion auf FiveM-Servern
Der Hauptgrund für sofortiges Einfrieren (Stottern) und FPS-Einbrüche bei Spielern auf FiveM-PVP-Servern ist nicht die Maschinenhardware, sondern falsch optimierte Skripte (Ressource), die dem Server hinzugefügt wurden. Angeboten von der FiveM-Game-Engine Ressourcenmonitor (Resmon) Dank seiner Schnittstelle können Sie sofort erkennen, welches Skript den Prozessor (CPU) beansprucht. In diesem Leitfaden erfahren Sie mehr über die MS-Optimierung.
Schritt 1: Aktivieren der Resmon-Schnittstelle
Um die Verbrauchswerte von Skripten auf Ihrem Server während des Spiels anzuzeigen, gehen Sie folgendermaßen vor:
- von Ihrer Tastatur aus
F8Öffnen Sie die FiveM-Konsole, indem Sie die Taste drücken. - zur Konsole
resmon 1Geben Sie ein und drücken Sie die Eingabetaste. In der oberen rechten Ecke des Bildschirms öffnet sich ein Panel, in dem alle Skripte aufgelistet sind. (Zum Schließenresmon 0du kannst schreiben).
Schritt 2: Werte lesen (CPU ms und Speicher)
Im geöffneten Bereich gibt es zwei kritische Spalten. Für den Zustand Ihres Servers sollten Sie diese Spalten wie folgt analysieren:
- CPU ms (Mil Sekunden): Dabei handelt es sich um die Prozessorzeit, die ein Skript pro Zyklus benötigt. Der Betrag, den ein fehlerfreies Skript im Leerlauf verbringt 0,01 ms bis 0,05 ms Es sollte zwischen liegen.
- Auch wenn Sie in der Liste untätig herumsitzen 0,50 ms, 1,0 ms oder höher Wenn Sie ein Skript sehen, das Werte verbraucht, ist dieses Skript falsch codiert. Im Allgemeinen ist der Code offen
Citizen.CreateThreadoder jeden Sekundenbruchteil arbeitenCitizen.Wait(0)Zyklen verursachen dies. - Erinnerung: Dies ist der vom Skript belegte Speicherplatz im RAM. Wenn es zu einem Speicherverbrauch (Memory Leak) kommt, der im Laufe der Zeit ständig zunimmt, verbraucht dieses Skript RAM, solange der Server geöffnet bleibt, und führt schließlich zum Absturz des Servers.
Schritt 3: Exakte Lösung und Optimierung
- Durch Untersuchen der Codeblöcke von Skripten, die viel MS verbrauchen, fügen Sie Distanzkontrollen (While-Schleifen) oder Schleifenwartezeiten hinzu (die nur ausgeführt werden, wenn der Spieler interagiert (z. B. wenn er sich einer Markierung nähert)).
Wait(1000)usw.) - Wenn Sie nicht optimieren können, entscheiden Sie sich für die Verwendung alternativer, optimierter aktualisierter Versionen dieses Skripts, um die Belastung Ihres Systems zu verringern.
Dieser Artikel ist speziell für PvPServer vorbereitet.