Tutorial Lagprävention

Status
Für weitere Antworten geschlossen.

Snaffelomg

Admin
PluginTeam
EventTeam
6 Juni 2016
933
1.724

Lagprävention

Einleitung

In diesem Beitrag möchten wir erklären, welche Faktoren in Minecraft die Rechenleistung beeinflussen und wie dadurch Laggs entstehen können. Wir zeigen, welche Maßnahmen wir als Serverteam durch Regeln und Einstellungen umsetzen und was ihr als Spieler tun könnt, um sicherzustellen, dass eure Farmen und Maschinen weniger Rechenressourcen beanspruchen. Da die Ursachen oft nicht direkt ersichtlich sind, haben wir hier die wichtigsten Punkte für euch zusammengefasst.

Problem: Clocks

Clocks sind Redstone-Schaltungen, die ständig ihren Zustand ändern. Jede dieser Zustandsänderungen hat zur Folge, dass benachbarte Blöcke und Mechaniken wie Redstone-Leitungen, Lampen, Kolben oder andere Redstone-Komponenten ebenfalls aktualisiert werden. Minecraft muss für jede dieser Aktualisierungen neu berechnen, ob sich etwas geändert hat. Diese Berechnungen sind sehr CPU-intensiv, insbesondere wenn sie häufig oder kontinuierlich durchgeführt werden.

Serverteam:​

  • Wir schalten Clocks ab, falls sie den Server zu sehr belasten.

Lösung:​

  • Vermeide schnelle Clocks und nutze stattdessen langsamere Takte, um die Häufigkeit der Updates zu verringern.
  • Deaktiviere Clocks, wenn sie nicht gebraucht werden, durch Schalter oder Timer.
  • Verwende Alternativen zu Clocks, z.B. Timer-Schaltungen oder Trigger-basierte Mechaniken, um die Notwendigkeit von kontinuierlichen Updates zu reduzieren.

Problem: Schwebende Items

Schwebende Items werden von Minecraft als Entities behandelt, genau wie Mobs oder Fahrzeuge (z.B. Boote, Loren). Entities sind dynamische Objekte, die sich in der Spielwelt bewegen oder von Spielern aufgenommen werden können, und das bedeutet, dass der Server ständig Berechnungen anstellen muss, um ihre Position, Kollisionen und andere Eigenschaften zu aktualisieren.

Serverteam:​

  • Wir passen die Despawnzeit der Items an. Aktuell liegt der Wert auf 5 Minuten.

Lösung:​

  • Sammle die Items möglichst schnell ein.
  • Vernichte nicht benötigte Items statt sie vom Inventar auf den Boden zu werfen. /trash und /disposal ist dafür sehr nützlich.
  • Farmen: Teile, wenn möglich große Farmen in kleinere Einheiten auf, die zeitverzögert ausgeführt werden, um große Mengen aufeinmal zu vermeiden.
  • Farmen: Transportiere Items schnell ab. Je schneller sie verschwinden, desto weniger Positionsberechnungen sind nötig.

Problem: Trichter und Trichterketten

Trichter und Trichterketten verursachen Lags, weil sie ständig nach Items suchen, selbst wenn sie leer sind. Jeder Trichter überprüft kontinuierlich das Inventar über sich, was unnötige Rechenlast erzeugt. Bei verketteten Trichtern, die Items über lange Strecken transportieren, erhöht sich diese Last, da jeder Trichter den Status des nächsten überprüft. Die Interaktion mit Inventaren, wie Kisten oder Öfen, erfordert zusätzliche Berechnungen, besonders beim Verschieben von Items. Auch leere Trichter, die keine Items transportieren, belasten den Server, da sie trotzdem regelmäßig ihre Umgebung nach Items absuchen.

Serverteam:​

Lösung:​

  • Alternative für Sortier- und Lagersysteme: UpgradableHoppers
  • Bevorzuge Wasser- und Eistransportsysteme um Items zu transportieren.
  • Platziere einen vollen Block(Deckel) auf die Trichter, die keine Items aufsammeln und nur zum Transport da sind. Dadurch wird nicht mehr geprüft, ob Items auf dem Trichter liegen.
  • Trichter abschalten. Erhält ein Trichter ein Redstone-Signal schaltest du ihn ab. Wenn möglich, solltest du Trichter versuchen abzuschalten, wenn du sie nicht benötigst.

Problem: Kreaturen und Pfadfindung

Alle Kreaturen besitzen ein sogenanntes Pathfinding, was den Algorithmus beschreibt der die nächste Bewegung oder das nächste Ziel der Kreatur berechnet. Diese Berechnungen benötigen viel Rechenleistung. Vorallem Dorfbewohner haben einen besonders komplizierten Algorithmus der die Suche nach dem Bett und nach der Arbeitsstation sowie die Interaktion mit Spielern und anderen Dorfbewohnern beinhaltet.

Serverteam:

  • Einschränkungen durch Plugin:
    • Bei mehr als 15 Mobs (Tiere, Monster, Fische, Ambiente) innerhalb von 5 Blöcken zueinander, wird die Mob-Aktivität (AI) eingeschränkt.
    • Bei mehr als 11 Villagern per Chunk werden zufällige getötet.
    • Bei mehr als 51 Tieren innerhalb von 160 Blöcken zueinander, werden zufällige getötet.

Lösung:

  • Halte nicht zu viele Tiere, wenn du sie nicht unbedingt brauchst.
  • Halte die Anzahl von Kreaturen (Dorfbewohner, Tiere, Monster) in einem Gebiet gering, um die Pfadfindungsberechnungen zu minimieren.
  • Regionsbesitzer können den Spawn bestimmter Kreaturen über die Regionsflags verhindern.
  • Setze deine Dorfbewohner, wenn möglich auf einen 1x1 Bereich. Das blockiert ihr Pathfinding.

Weitere Probleme werden bald ergänzt:

  • Entities
  • Geladene Chunks
  • Explosionen
  • Lichtberechnungen


(Zuletzt geprüft 13.10.2024)
 
Zuletzt bearbeitet:
Status
Für weitere Antworten geschlossen.