Optymalizacja serwera Minecraft w 2026 roku: Jak osiągnąć stałe 20 TPS i niski MSPT
Kompleksowy poradnik optymalizacji serwera Minecraft w 2026 roku. Sprawdź flagi JVM Aikara dla Java 21, konfigurację Paper i Purpur, pregenerację mapy Chunky oraz diagnostykę spark.

[!TIP] Szybkie podsumowanie (TL;DR): Stabilny serwer Minecraft musi utrzymywać 20.0 TPS (Ticks Per Second) oraz MSPT < 50 ms (Milliseconds Per Tick). Jeśli MSPT przekroczy 50 ms, serwer traci klatki logiczne i zaczynają się odczuwalne opóźnienia. Aby osiągnąć maksymalną płynność, zastosuj: silnik Paper lub Purpur, flagi Aikar's Flags (Java 21 G1GC), pregenerację mapy pluginem Chunky oraz optymalizację dystansów symulacji w
server.propertiesipaper-world-defaults.yml.
Lagi na serwerze Minecraft to zmora zarówno graczy, jak i administratorów. Teleportujący się przeciwnicy, opóźnione niszczenie bloków czy zacinające się farmy zwierząt potrafią zrujnować nawet najciekawszy tryb rozgrywki. Wraz z premierą nowoczesnych aktualizacji (od 1.20 do 1.21+), światy stały się głębsze (od Y: -64 do Y: 320) i znacznie bardziej wymagające obliczeniowo.
W tym poradniku przeprowadzimy Cię przez pełny, profesjonalny proces optymalizacji serwera Minecraft w 2026 roku - od konfiguracji maszyny wirtualnej Java, przez pliki konfiguracyjne silnika, aż po pregenerację i diagnostykę wątków.
1. Zrozumieć metryki wydajności: TPS vs MSPT
Przed przystąpieniem do zmian w plikach warto zrozumieć, jak mierzyć wydajność serwera:
- TPS (Ticks Per Second): Liczba cykli obliczeniowych, jakie serwer wykonuje w ciągu jednej sekundy. Wartość idealna to 20.0 TPS. Wartość poniżej 18.0 oznacza początek lagów, a poniżej 15.0 gra staje się uciążliwa.
- MSPT (Milliseconds Per Tick): Czas potrzebny procesorowi na obliczenie jednego ticka gry. Serwer ma dokładnie 50 milisekund (50 ms) na wykonanie wszystkich obliczeń w ticku (1000 ms / 20 ticków = 50 ms).
- MSPT < 30 ms: Serwer ma ogromny zapas mocy i działa idealnie płynnie.
- MSPT 30–48 ms: Płynna gra (20 TPS), ale przy nagłym obciążeniu może dojść do mikro-przycięć.
- MSPT > 50 ms: Serwer nie mieści się w czasie - TPS automatycznie spada poniżej 20.
2. Flagi startowe JVM (Aikar's Flags dla Java 21)
Sposób, w jaki wirtualna maszyna Javy (JVM) zarządza pamięcią RAM i odśmiecaniem pamięci (Garbage Collection), ma fundamentalne znaczenie. Niewłaściwe parametry powodują tzw. GC Pauses - sekundowe zamrożenia całego serwera podczas czyszczenia nieużywanych obiektów.
Zastosuj zoptymalizowany zestaw Aikar's Flags przystosowany do Java 21 i odśmiecacza G1GC:
java -Xms6G -Xmx6G -XX:+UseG1GC -XX:+ParallelRefProcEnabled -XX:MaxGCPauseMillis=200 \
-XX:+UnlockExperimentalVMOptions -XX:+DisableExplicitGC -XX:+AlwaysPreTouch \
-XX:G1NewSizePercent=30 -XX:G1MaxNewSizePercent=40 -XX:G1ReservePercent=20 \
-XX:G1HeapRegionSize=8M -XX:G1ReservePercent=15 -XX:G1HeapWastePercent=5 \
-XX:G1MixedGCCountTarget=4 -XX:InitiatingHeapOccupancyPercent=15 \
-XX:G1MixedGCLiveThresholdPercent=90 -XX:G1RSetUpdatingPauseTimePercent=5 \
-XX:SurvivorRatio=32 -XX:+PerfDisableSharedMem -XX:MaxTenuringThreshold=1 \
-Dusing.aikars.flags=https://mcflags.emc.gs -Daikars.new.flags=true -jar server.jar nogui
[!TIP] Pamięć
-Xmsi-Xmx: Zawsze ustawiaj minimalną (-Xms) i maksymalną (-Xmx) pamięć RAM na tę samą wartość (np. obie na 6G lub 8G). Zapobiega to dynamicznemu alokowaniu pamięci przez system operacyjny w trakcie gry. Na MCHost.pl flagi Aikar's Flags są domyślnie zintegrowane w panelu!
3. Optymalizacja plików konfiguracyjnych
Domyślne pliki konfiguracyjne Minecrafta są nastawione na maksymalną jakość wizualną pojedynczego gracza, a nie na wydajność serwera wieloosobowego. Poniższe ustawienia pozwalają zaoszczędzić nawet 40–60% mocy obliczeniowej CPU.
A. Plik server.properties
view-distance=7(Domyślnie 10. Zmniejszenie do 6–8 ogranicza promień ładowania terenu bez zauważalnej straty jakości wizualnej).simulation-distance=4(Domyślnie 10. Kluczowy parametr! Definiuje odległość w chunkach, w której aktywne są moby, piece i rośliny. Wartość 4 lub 5 drastycznie odciąża procesor).network-compression-threshold=256(Optymalny próg kompresji pakietów sieciowych).sync-chunk-writes=false(Wymusza asynchroniczny zapis chunków na dysk).
B. Plik spigot.yml
W sekcji world-settings.default:
entity-activation-range:
animals: 16
monsters: 24
raiders: 32
misc: 8
water: 12
villagers: 16
flying-monsters: 24
tick-inactive-villagers: false
entity-tracking-range:
players: 48
animals: 32
monsters: 32
misc: 24
other: 48
merge-radius:
item: 4.0
exp: 6.0
Parametry te wyłączają zaawansowane kalkulacje sztucznej inteligencji mobów, jeśli gracz znajduje się poza podanym promieniem bloków.
C. Plik config/paper-world-defaults.yml
Paper oferuje najgłębsze opcje optymalizacyjne:
chunks:
max-auto-save-chunks-per-tick: 8
prevent-moving-into-unloaded-chunks: true
auto-save-interval: 6000
entities:
spawning:
despawn-ranges:
monster:
soft: 28
hard: 56
behavior:
despawn-shulker-bullets: true
should-remove-dragon: true
redstone-implementation: ALTERNATE_CURRENT
hopper:
cooldown-when-full: true
disable-move-event: true
- ALTERNATE_CURRENT: Włącza wysoce zoptymalizowany algorytm Redstone, który redukuje obciążenie procesora przy wielkich zegarach i mechanizmach nawet o 80%.
- Despawn-ranges: Zmniejsza promień, w którym moby natychmiast znikają, zapobiegając przepełnieniu jaskiń.
D. Pliki purpur.yml / pufferfish.yml (Jeśli używasz Purpura)
Jeśli wybrałeś silnik Purpur (zobacz nasz przegląd silników serwerowych), włącz dodatkowe optymalizacje wielowątkowe:
dab.enabled: true(Dynamic Activation of Brain - usypia AI mobów, które nie wykonują żadnych ważnych akcji).async-mob-spawning: true(Asynchroniczne sprawdzanie warunków odradzania potworów).
4. Pregeneracja mapy wtyczką Chunky
Generowanie nowego terenu w locie (gdy gracz leci na elitrach lub płynie łódką) to najczęstsza przyczyna nagłych spadków TPS do wartości jednocyfrowych. Generowanie skomplikowanego terenu 1.21 z jaskiniami i biomami wymaga potężnej mocy obliczeniowej.
Rozwiązaniem jest pregeneracja mapy przed startem serwera za pomocą darmowej wtyczki Chunky:
# 1. Wybierz świat do generowania
/chunky world world
# 2. Ustaw okrągły kształt granicy
/chunky shape circle
# 3. Ustaw promień pregeneracji (np. 3000 bloków od środka)
/chunky radius 3000
# 4. Uruchom zadanie pregeneracji
/chunky start
Po zakończeniu pregeneracji ustaw oficjalną granicę świata, aby gracze nie wychodzili poza przygotowany obszar:
/worldborder set 6000
5. Diagnostyka i wykrywanie winowajców: Profiler spark
Gdy serwer mimo wprowadzonych poprawek traci płynność, nie zgaduj przyczyny. Zainstaluj wtyczkę diagnostyczną spark (dostępną w naszym zestawieniu najlepszych pluginów serwerowych).
Jak przeprowadzić analizę wydajności?
- Wpisz komendę profilowania w momencie występowania lagów:
/spark profiler --timeout 60 - Po 60 sekundach na czacie pojawi się link do szczegółowego raportu webowego.
- W raporcie kliknij zakładkę Thread Dump ->
Server Thread. Drzewo procesów wskaże dokładnie, która metoda, plugin, mechanizm Redstone czy koordynaty świata (world: x, y, z) zużywają najwięcej czasu procesora.
Przydatne komendy spark:
/spark healthreport- szybki przegląd TPS, MSPT, zużycia pamięci RAM i obciążenia CPU./spark tps- dokładne podsumowanie średnich wartości ticków z ostatnich 1, 5 i 15 minut./spark gc- historia pracy odśmiecacza pamięci RAM.
Tabela kluczowych parametrów optymalizacyjnych
| Plik konfiguracyjny | Parametr | Wartość domyślna | Wartość zalecana | Oczekiwany rezultat |
|---|---|---|---|---|
server.properties |
simulation-distance |
10 |
4 lub 5 |
Redukcja obciążenia tickowego o 30–50% |
server.properties |
view-distance |
10 |
7 |
Mniejsze zużycie RAM i pasma sieciowego |
spigot.yml |
animals (activation) |
32 |
16 |
Ograniczenie lagów z wielkich farm zwierząt |
spigot.yml |
monsters (activation) |
32 |
24 |
Zmniejszenie obliczeń AI w podziemiach |
paper-world-defaults.yml |
redstone-implementation |
VANILLA |
ALTERNATE_CURRENT |
Do 80% mniejsze obciążenie z mechanizmów |
paper-world-defaults.yml |
despawn-ranges.monster.hard |
128 |
56 |
Szybsze czyszczenie potworów z jaskiń |
paper-world-defaults.yml |
max-auto-save-chunks-per-tick |
24 |
8 |
Eliminacja mikro-przycięć przy zapisie świata |
FAQ - Najczęściej zadawane pytania
Dlaczego mój serwer ma 20 TPS, a gracze nadal zgłaszają opóźnienia?
Jeśli serwer trzyma stałe 20.0 TPS, problemem nie jest wydajność procesora, lecz opóźnienie sieciowe (ping) lub wysoki czas odpowiedzi klienta. Upewnij się, że serwer znajduje się w Europie Środkowej (Polska/Niemcy), a łącze gracza jest stabilne.
Czy optymalizacja psuje mechanizmy Redstone i farmy graczy?
Zastosowanie algorytmu ALTERNATE_CURRENT nie psuje 99% standardowych mechanizmów, drzwi tłokowych i farm. Zmniejszenie simulation-distance sprawia jednak, że farmy przestają działać, gdy gracz odejdzie dalej niż na 4–5 chunków, co jest zamierzonym zabiegiem oszczędzającym zasoby.
Czy pluginy czyszczące leżące przedmioty (np. ClearLag) są potrzebne?
W 2026 roku używanie pluginów typu ClearLag jest niezalecane. Agresywne usuwanie przedmiotów irytuje graczy, a nowoczesne silniki Paper/Purpur doskonale radzą sobie z łączeniem leżących przedmiotów (merge-radius) bez konieczności instalowania zewnętrznych skryptów czyszczących.
Gdzie znaleźć oficjalną dokumentację optymalizacji?
Szczegółowe opisy wszystkich flag i parametrów silnika znajdziesz w dokumentacji PaperMC Documentation oraz na Minecraft Wiki - Server Optimization.
Podsumowanie
Optymalizacja serwera Minecraft to proces eliminacji wąskich gardeł:
- Używaj nowoczesnego silnika (Paper lub Purpur).
- Skonfiguruj pamięć za pomocą Aikar's Flags (G1GC).
- Ogranicz dystans symulacji do 4–5 chunków.
- Wykonaj pełną pregenerację świata wtyczką Chunky.
- Diagnozuj anomalie profilerem spark.
Szukasz sprzętu, który bez trudu utrzyma 20 TPS nawet przy intensywnej rozgrywce? Sprawdź ofertę serwerów NVMe na MCHost.pl z procesorami o taktowaniu do 5.0 GHz!
Więcej artykułów


