Minecraft Server Performance optimieren

TPS-Optimierung, Aikar's Flags, view-distance und simulation-distance richtig einstellen für einen lagfreien Minecraft-Server.

Minecraft Server Performance optimieren

Ein flüssiges Spielerlebnis hängt direkt von der Server-Performance ab. Dieser Guide zeigt dir, wie du die TPS (Ticks per Second) auf 20 hältst, Lag identifizierst und deinen Minecraft-Server optimal konfigurierst.

Grundlagen: TPS verstehen

Minecraft läuft mit 20 Ticks pro Sekunde. Ein Tick entspricht 50 Millisekunden. Wenn der Server die Arbeit für einen Tick nicht in 50 ms schafft, sinkt die TPS:

TPSZustandSpielergefühl
20,0PerfektKein Lag
18-20GutKaum spürbar
15-18AkzeptabelGelegentliche Verzögerungen
10-15SchlechtSpürbares Lag, Mobs teleportieren
Unter 10KritischStarke Verzögerungen, Blöcke verschwinden

Du kannst die TPS mit dem Befehl /tps prüfen (erfordert EssentialsX oder ähnliches Plugin) oder mit dem Spark-Profiler.

JVM-Flags optimieren

Die Java Virtual Machine (JVM) startet mit Standard-Einstellungen, die für Minecraft nicht optimal sind. Paper wendet bereits sinnvolle Flags standardmäßig an. Wenn du die Flags manuell setzen möchtest oder einen Vanilla/Forge-Server verwendest, nutze die bewährten Aikar’s Flags.

Aikar’s Flags (Referenz)

Die folgenden Flags sind der Standard für Minecraft-Server. Passe -Xms und -Xmx an deinen RAM-Bedarf an:

-XX:+UseG1GC -XX:+ParallelRefProcEnabled -XX:MaxGCPauseMillis=200
-XX:+UnlockExperimentalVMOptions -XX:+DisableExplicitGC
-XX:G1NewSizePercent=30 -XX:G1MaxNewSizePercent=40
-XX:G1HeapRegionSize=8M -XX:G1ReservePercent=20
-XX:G1HeapWastePercent=5 -XX:G1MixedGCCountTarget=4
-XX:InitiatingHeapOccupancyPercent=15 -XX:G1MixedGCLiveThresholdPercent=90
-XX:G1RSetUpdatingPauseTimePercent=5 -XX:SurvivorRatio=32
-XX:+PerfDisableSharedMem -XX:MaxTenuringThreshold=1
-Daikars.new.flags=true
-Xms4G -Xmx4G

Bei RespawnHost werden diese Flags automatisch für Paper-Server gesetzt. Bei Forge- oder Fabric-Servern musst du sie eventuell manuell in den Startparametern konfigurieren.

view-distance und simulation-distance

Seit Minecraft 1.18 sind Sichtweite und Simulationsweite getrennt konfigurierbar. Das ist eine der wirksamsten Optimierungen.

view-distance

Bestimmt, wie viele Chunks um den Spieler gesendet werden. Betroffen sind Netzwerkbandbreite und RAM, nicht primär die CPU.

simulation-distance

Bestimmt, in welchem Radius Mobs spawnen, Redstone tickt, Pflanzen wachsen und Entities verarbeitet werden. Dies ist der Hauptfaktor für die CPU-Last.

Empfohlene Kombinationen

Setupview-distancesimulation-distanceRAM-Bedarf
Klein, privat8-104Gering
Mittel, öffentlich10-124-6Moderat
Groß, viele Spieler8-104Moderat
Redstone-Fokus106-8Hoch

Konfiguriert wird dies in der server.properties:

view-distance=10
simulation-distance=4

Chunky: Welten vorab generieren

Das Generieren neuer Chunks während Spieler erkunden, verursacht starke TPS-Einbrüche. Die Lösung: Generiere die Welt vorab mit dem Plugin Chunky.

Chunky einrichten

  1. Installiere Chunky auf deinem Paper-Server
  2. Generiere die Welten vorab:
/chunky world normal
/chunky radius 5000
/chunky start
  1. Warte, bis die Generierung abgeschlossen ist (dauert je nach Radius)
  2. Für den Nether und das Ende wiederholen:
/chunky world nether
/chunky radius 2500
/chunky start
/chunky world end
/chunky radius 1500
/chunky start

Nach der Generierung deaktivierst du Chunky oder entfernst es. Die Chunks sind nun gespeichert und müssen nicht mehr zur Laufzeit generiert werden.

Spark: Performance-Profiling

Spark ist das wichtigste Werkzeug zur Diagnose von Performance-Problemen. Es zeigt genau, welche Threads, Plugins oder Welten die meiste CPU-Zeit verbrauchen.

Spark nutzen

  1. Installiere Spark als Plugin
  2. Starte einen Profiler:
/spark profiler start
  1. Warte 1-5 Minuten (oder bis Lag auftritt)
  2. Beende den Profiler:
/spark profiler stop
  1. Spark generiert einen Link zu einem detaillierten Web-Report

Der Report zeigt dir Call-Stacks, Tick-Verbrauch pro Plugin und potenzielle Engpässe. Nutze diese Daten, um gezielt zu optimieren statt zu raten.

paper-global.yml und paper-world-defaults.yml optimieren

Paper verwendet ab neueren Versionen eine aufgeteilte Konfigurationsstruktur: paper-global.yml für serverweite Einstellungen und paper-world-defaults.yml für weltbezogene Einstellungen. Die wichtigsten Optimierungen:

Chunk-Loading

chunk-loading:
  max-auto-chunks-per-second: 12
  player-max-chunk-load-rate: 16
  player-max-concurrent-chunk-loads: 8

Entity-Optimierung

entity:
  entity-cramming:
    max-entity-cramming: 8
  armor-stands:
    tick: false
  experience-orb:
    merge-radius: 3.0
  item:
    merge-radius: 2.5

Mob-Spawning

spawn-limits:
  monster: 30
  creature: 5
  ambient: 2
  axolotls: 3
  underground_water_creature: 3
  water_creature: 3

Reduziere die Spawn-Limits, wenn zu viele Mobs Lag verursachen. Die Spieler merken den Unterschied meist nicht, solange die Werte nicht zu niedrig sind.

Weitere Optimierungs-Tipps

Redstone-Optimierung

Paper bietet Einstellungen zur Redstone-Optimierung. In der paper-world-defaults.yml:

redstone-implementation: alternate-current

alternate-current reduziert die Anzahl der Redstone-Updates signifikant, ohne das Verhalten für die meisten Konstruktionen zu verändern.

Hopper-Optimierung

Hopper sind eine häufige Ursache für Lag bei großen Farmen:

hopper:
  cooldown: 8
  disable-move-event: true

disable-move-event: true deaktiviert das InventoryMoveItemEvent, das Plugins aufrufen können. Wenn kein Plugin dieses Event nutzt, ist diese Einstellung sicher und spart CPU.

Netzwerk-Optimierung

In der server.properties:

network-compression-threshold=256

Ein Wert von 256 (statt dem Standard 64) reduziert die CPU-Last durch Kompression, erhöht aber die Bandbreite minimal. Bei Servern mit guter Netzwerkanbindung (wie RespawnHost in Frankfurt und Salt Lake City) ist das vernachlässigbar.

FAQ

Frage: Mein Server laggt — wo fange ich an?

Installiere Spark, starte einen Profiler und analysiere den Report. Die häufigsten Ursachen sind: zu viele Entities, zu hohe view-distance, ineffiziente Plugins oder ungenerierte Chunks. Siehe auch RAM-Empfehlungen für ausreichend Speicher.

Frage: Wie erkenne ich, welches Plugin Lag verursacht?

Der Spark-Profiler zeigt den CPU-Verbrauch pro Plugin im Tick-Thread. Alternativ kannst du Plugins einzeln deaktivieren und die TPS beobachten.

Frage: Brauche ich Aikar’s Flags bei Paper?

Paper nutzt bereits optimierte Standard-Flags. Aikar’s Flags können die Garbage-Collection jedoch weiter verbessern. Bei RespawnHost werden sinnvolle Flags standardmäßig gesetzt.

Frage: Was bringt pre-generation mit Chunky?

Chunky generiert Chunks im Voraus, sodass der Server sie zur Laufzeit nicht mehr berechnen muss. Das verhindert die häufigste Ursache für TPS-Einbrüche beim Erkunden neuer Gebiete. Einmal generiert, bleibt der Performance-Gewinn dauerhaft.

Frage: Hilft ein Server-Reset gegen Lag?

Nur kurzfristig. Wenn die Ursache der Lag nicht behoben ist (zu hohe view-distance, ineffiziente Plugins), tritt das Problem nach kurzer Zeit wieder auf. Nutze Spark, um die Ursache zu finden.

Frage: Sollte ich Vanilla statt Paper für bessere Performance nutzen?

Nein. Paper ist in fast allen Szenarien performanter als Vanilla. Die Optimierungen in Paper reduzieren CPU-Last und RAM-Verbrauch erheblich. Vanilla hat nur den Vorteil, dass es keine Inkompatibilitäten durch Modifikationen gibt.

Frage: Wie viel CPU braucht ein Minecraft-Server?

Minecraft ist primär Single-Threaded. Ein Kern mit hoher Single-Core-Performance ist wichtiger als viele Kerne. Ausnahme: Folia nutzt Multi-Threading für Chunk-Verarbeitung. RespawnHost-Server bieten hochtaktende CPUs, die für Minecraft optimiert sind.

Frage: Was ist der Unterschied zwischen Netzwerk-Lag und Server-Lag?

Server-Lag zeigt sich durch niedrige TPS — Blöcke verschwinden, Mobs bewegen sich ruckartig. Netzwerk-Lag zeigt sich durch hohe Ping-Werte — Aktionen werden verzögert ausgeführt, aber die TPS bleibt bei 20. Bei RespawnHost sind beide Standorte (Frankfurt und Salt Lake City) an große Internet-Knoten angebunden für minimale Latenz.