Przejdź do treści
Wróć do bloga

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.

Optymalizacja serwera Minecraft w 2026 roku: Jak osiągnąć stałe 20 TPS i niski MSPT

[!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.properties i paper-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ęć -Xms i -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?

  1. Wpisz komendę profilowania w momencie występowania lagów:
    /spark profiler --timeout 60
    
  2. Po 60 sekundach na czacie pojawi się link do szczegółowego raportu webowego.
  3. 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ł:

  1. Używaj nowoczesnego silnika (Paper lub Purpur).
  2. Skonfiguruj pamięć za pomocą Aikar's Flags (G1GC).
  3. Ogranicz dystans symulacji do 4–5 chunków.
  4. Wykonaj pełną pregenerację świata wtyczką Chunky.
  5. 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

Duże farmy w Minecraft bez lagów: inżynieria i optymalizacja serwera 2026
optymalizacja

Duże farmy w Minecraft bez lagów: inżynieria i optymalizacja serwera 2026

· 7 min
Ile RAM potrzebuje serwer Minecraft? Kompletna tabela i kalkulator 2026
minecraft

Ile RAM potrzebuje serwer Minecraft? Kompletna tabela i kalkulator 2026

· 8 min
Minecraft Java 26.3 Wilderness Bound: co nowego w aktualizacji? Przewodnik i serwery
minecraft

Minecraft Java 26.3 Wilderness Bound: co nowego w aktualizacji? Przewodnik i serwery

· 13 min

Więcej artykułów

Duże farmy w Minecraft bez lagów: inżynieria i optymalizacja serwera 2026
optymalizacja

Duże farmy w Minecraft bez lagów: inżynieria i optymalizacja serwera 2026

· 7 min
Ile RAM potrzebuje serwer Minecraft? Kompletna tabela i kalkulator 2026
minecraft

Ile RAM potrzebuje serwer Minecraft? Kompletna tabela i kalkulator 2026

· 8 min
Minecraft Java 26.3 Wilderness Bound: co nowego w aktualizacji? Przewodnik i serwery
minecraft

Minecraft Java 26.3 Wilderness Bound: co nowego w aktualizacji? Przewodnik i serwery

· 13 min