Minecraft Server Lag reduzieren: Chunk-Loading und View Distance optimieren
# Minecraft Server Lag reduzieren: Chunk-Loading und View Distance optimieren
Einer der häufigsten Gründe für Lag auf Minecraft-Servern ist nicht mangelnder RAM oder eine schwache CPU — es ist ineffizientes Chunk-Loading. Wenn dein Server ständig neue Chunks generiert, lädt und entlädt, bricht die TPS ein und Spieler beschweren sich über Stotter und Freezes. In diesem Guide erfährst du, wie du Chunk-Loading systematisch optimierst.
Was ist Chunk-Lag und warum entsteht er?
Minecraft teilt die Welt in 16×16-Block-Segmente auf, die sogenannten Chunks. Für jeden Spieler muss der Server eine bestimmte Anzahl von Chunks im Speicher halten, rendern und bei Bedarf neu generieren. Das Problem:
- View Distance bestimmt, wie viele Chunks um jeden Spieler herum geladen werden
- Jeder neu generierte Chunk verbraucht erheblich mehr CPU als das bloße Laden eines bestehenden
- Zu viele gleichzeitig geladene Chunks fressen RAM und verlangsamen Tick-Verarbeitung
Bei 20 Spielern mit einer View Distance von 10 können über 12.000 Chunks gleichzeitig geladen sein. Das ist für die meisten Server zu viel.
View Distance und Simulation Distance richtig einstellen
Die wichtigste Stellschraube ist die view-distance in deiner server.properties:
view-distance=6
simulation-distance=4
Die Simulation Distance (seit 1.18) ist dabei oft wichtiger als die View Distance. Sie bestimmt, wie weit entfernt Mobs, Redstone und Crop-Wachstum simuliert werden. Ein niedriger Wert hier spart enorm viel CPU.
Empfohlene Werte nach Servergröße:
| Spieleranzahl | view-distance | simulation-distance |
|---|---|---|
| 1–10 | 8–10 | 5–6 |
| 10–30 | 6–8 | 4–5 |
| 30–100 | 4–6 | 3–4 |
| 100+ | 3–5 | 2–3 |
Paper-spezifische Chunk-Einstellungen
Wenn du Paper verwendest (was du solltest), hast du in der paper-world-defaults.yml deutlich mehr Kontrolle:
chunks:
auto-save-interval: 6000
delay-chunk-unloads-by: 10s
entity-per-chunk-save-limit:
experience_orb: 16
arrow: 16
fixed-chunk-inhabited-time: -1
max-auto-save-chunks-per-tick: 24
prevent-moving-into-unloaded-chunks: true
Der Parameter prevent-moving-into-unloaded-chunks ist besonders wichtig: Er verhindert, dass Spieler in noch nicht geladene Chunks rennen und damit Chunk-Generierung erzwingen.
Welt-Pregenerierung: Der größte Performance-Gewinn
Der mit Abstand effektivste Weg, Chunk-Lag zu beseitigen, ist die Vorausgenerierung der Spielwelt. Wenn alle Chunks bereits existieren, muss der Server sie nur noch laden — nicht generieren. Das ist bis zu 10× schneller.
Chunky verwenden
Das Plugin Chunky ist der aktuelle Standard für Welt-Pregenerierung:
/chunky radius 5000
/chunky start
Das generiert einen Bereich von 5.000 Blöcken Radius um den Spawn. Für die meisten Survival-Server reicht ein Radius von 3.000–5.000 Blöcken aus. Lass die Pregenerierung am besten nachts oder zu Zeiten laufen, wenn wenige Spieler online sind — sie beansprucht temporär viel CPU.
Wichtig: Setze eine Weltgrenze (/worldborder set 10000), damit Spieler nicht in ungenerierte Bereiche laufen.
No-Tick-View-Distance in Paper
Paper bietet eine clevere Funktion: Die No-Tick-View-Distance. Damit können Spieler weiter sehen, ohne dass entfernte Chunks vollständig simuliert werden:
In paper-world-defaults.yml:
viewdistances:
no-tick-view-distance: 12
Du kannst damit simulation-distance=4 und no-tick-view-distance=12 kombinieren. Spieler sehen bis zu 12 Chunks weit, aber nur 4 Chunks werden aktiv simuliert. Das gibt optisch ein großzügiges Spielgefühl bei deutlich weniger Server-Last.
Async Chunk Loading mit Paper und Folia
Standard-Spigot lädt Chunks synchron — das bedeutet, der Hauptthread blockiert, während ein Chunk geladen wird. Paper hat dies mit asynchronem Chunk-Loading weitgehend behoben.
Wenn du einen Server mit vielen Spielern (50+) betreibst und maximale Chunk-Performance brauchst, ist Folia von PaperMC einen Blick wert. Folia verteilt die Chunk-Verarbeitung auf mehrere Threads. Allerdings: Viele Plugins sind noch nicht Folia-kompatibel, also prüfe die Kompatibilität vorher.
Entity-Cramming und Mob-Spawning im Blick behalten
Chunk-Lag wird oft durch übermäßiges Mob-Spawning verschlimmert. In bukkit.yml:
spawn-limits:
monsters: 50
animals: 10
water-animals: 5
water-ambient: 10
water-underground-creature: 3
ambient: 3
ticks-per:
animal-spawns: 400
monster-spawns: 10
water-spawns: 400
water-ambient-spawns: 400
ambient-spawns: 400
Reduziere monsters von 70 (Standard) auf 40–50. Die meisten Spieler bemerken keinen Unterschied, aber dein Server wird es danken.
In spigot.yml kannst du zusätzlich Mob-Spawn-Ranges anpassen:
world-settings:
default:
mob-spawn-range: 6
entity-activation-range:
animals: 16
monsters: 24
raiders: 48
misc: 8
Chunk-Performance überwachen
Optimierung ohne Monitoring ist Blindflug. Tools wie Spark (als Plugin oder in Paper integriert) zeigen dir genau, welche Chunks und welche Prozesse deine TPS belasten:
/spark profiler --only-ticks-over 100
Wenn du dauerhaft im Blick behalten willst, wie sich deine Chunk-Optimierungen auf TPS, RAM und CPU auswirken, hilft [PulseNode](https://pulsenode.tech) mit automatischem Performance-Monitoring — du siehst Anomalien sofort, ohne manuell Logs durchsuchen zu müssen.
Zusammenfassung: Die wichtigsten Maßnahmen
- View Distance auf 6–8 reduzieren in
server.properties - Simulation Distance auf 3–5 senken für weniger CPU-Last
- No-Tick-View-Distance aktivieren in Paper für optisch gute Sichtweite
- Weltgrenze setzen und Welt voraus generieren mit Chunky
- Mob-Spawn-Limits anpassen in
bukkit.yml - Paper statt Spigot für async Chunk-Loading nutzen
Chunk-Optimierung ist keine einmalige Sache — überprüfe deine Werte regelmäßig, besonders wenn die Spielerzahl wächst oder du neue Welten hinzufügst. Mit den richtigen Einstellungen läuft dein Server deutlich flüssiger, ohne dass du teure Hardware upgraden musst.
---
*Möchtest du wissen, ob deine Optimierungen wirklich wirken? [PulseNode](https://pulsenode.tech) überwacht deinen Minecraft-Server in Echtzeit und zeigt dir TPS, RAM und Performance-Metriken auf einen Blick.*