← Blog

TPS na serwerze Minecraft — jak wykryć i naprawić spadki wydajności

Par Benjamin D. · PDG

· Mis à jour le 22 września 2026 · Lecture 5 min

Spis treści

Spadki TPS serwera Minecraft to jeden z najczęstszych problemów zgłaszanych przez administratorów społeczności, zwłaszcza gdy rośnie liczba graczy, a instalacja modów i pluginów zaczyna się rozrastać. Zanim sięgniesz po drastyczne rozwiązania, warto zrozumieć, co faktycznie wpływa na płynność rozgrywki i gdzie szukać wąskiego gardła.



Co to jest TPS serwera Minecraft i dlaczego spada

TPS (Ticks Per Second) to liczba cykli logiki gry wykonywanych w ciągu sekundy. Docelowa wartość to 20 TPS, co oznacza, że każdy tick powinien trwać maksymalnie 50 ms. Kiedy TPS serwera Minecraft spada poniżej tej wartości, gracze odczuwają opóźnienia w otwieraniu skrzynek, teleportacji mobów, działaniu redstone czy respawnie potworów.

Przyczyny spadku TPS dzielą się zwykle na trzy grupy: przeciążenie CPU pojedynczym wątkiem (Minecraft nie skaluje się dobrze na wiele rdzeni), zbyt duża liczba encji i chunków przetwarzanych jednocześnie oraz błędnie skonfigurowany silnik lub plugin generujący nadmierne obciążenie logiki tick. Diagnozę zawsze zaczynaj od komendy /tps lub raportu /spark profiler, jeśli masz zainstalowany plugin Spark.

/tps
/spark profiler --timeout 60
/timings report

Raport Timings (Spigot/Paper) pokazuje dokładnie, które pluginy, encje lub światy zjadają najwięcej czasu tick. To pierwszy krok przed jakąkolwiek zmianą konfiguracji.

Jeśli dopiero planujesz środowisko pod większą społeczność, warto od razu zestawić parametry maszyny z realnymi wymaganiami modpacka – więcej informacji znajdziesz na stronie hosting Minecraft, gdzie opisane są dostępne konfiguracje procesora i pamięci.



Rola taktowania jednordzeniowego procesora

Minecraft (zarówno Vanilla, jak i Paper) opiera główną pętlę tick na jednym wątku. Oznacza to, że liczba rdzeni CPU ma dużo mniejsze znaczenie niż taktowanie pojedynczego rdzenia i architektura procesora. Serwer z ośmioma rdzeniami o niskim zegarze będzie gorszy w praktyce niż jednostka z mniejszą liczbą rdzeni, ale wyższą częstotliwością taktowania na rdzeń.

Procesory z rodziny Ryzen o wysokim taktowaniu jednordzeniowym radzą sobie lepiej z generowaniem chunków, obsługą redstone i dużą liczbą encji, ponieważ główny wątek gry nie jest wąskim gardłem tak szybko jak na starszych architekturach. Jeśli zauważasz, że TPS serwera Minecraft spada mimo niskiego obciążenia RAM, to zwykle sygnał, że limitem jest właśnie moc pojedynczego rdzenia, a nie pamięć.

Jak sprawdzić obciążenie CPU pod Linuxem

top -H -p $(pgrep -f java)
htop

Polecenie top -H pokazuje wątki procesu Java osobno – jeśli główny wątek serwera (zwykle oznaczony jako "Server thread") stale wykorzystuje 100% jednego rdzenia, to potwierdza, że problem leży po stronie taktowania, a nie liczby rdzeni.



Silnik serwera: Vanilla, Spigot i Paper

Wybór silnika ma bezpośredni wpływ na stabilność TPS. Vanilla nie posiada żadnej optymalizacji tick pętli i szybko zaczyna się dławić przy większej liczbie graczy lub mobów. Spigot wprowadza podstawowe optymalizacje i kompatybilność z pluginami Bukkit, natomiast Paper idzie o krok dalej – oferuje asynchroniczne przetwarzanie chunków, konfigurowalne limity encji oraz wiele przełączników w plikach paper-world-defaults.yml i paper-global.yml pozwalających ograniczyć obciążenie bez utraty rozgrywki.

Przykładowa konfiguracja Paper ograniczająca obciążenie tick

entities:
  spawning:
    per-player-mob-spawns: true
  entity-limits:
    mob-spawner-tick-rate: 4

chunks:
  max-auto-save-chunks-per-tick: 6
  entity-per-chunk-save-limit:
    experience_orb: 8

Do tego dochodzi view-distance i simulation-distance w server.properties – zmniejszenie ich z 10 na 6-8 potrafi realnie odciążyć generowanie i tickowanie chunków bez drastycznego wpływu na odczuwalność rozgrywki.

view-distance=8
simulation-distance=6

Warto też pamiętać o fladze JVM znanej jako "Aikar's flags" – zestaw parametrów startowych zoptymalizowanych pod garbage collector G1GC, który redukuje mikro-zacięcia (tzw. lag spikes) wynikające z czyszczenia pamięci.

java -Xms4G -Xmx8G -XX:+UseG1GC -XX:+ParallelRefProcEnabled \
-XX:MaxGCPauseMillis=200 -XX:+UnlockExperimentalVMOptions \
-XX:+DisableExplicitGC -jar paper.jar nogui


Ilość RAM a liczba graczy – jak dobrać pamięć bez marnowania zasobów

Nadmierna ilość przydzielonej pamięci RAM nie poprawia TPS serwera Minecraft – wręcz przeciwnie, zbyt duża sterta (heap) wydłuża pauzy garbage collectora. Kluczowe jest dopasowanie RAM do liczby graczy, załadowanych światów i modpacka, a nie maksymalizacja wartości -Xmx.

Liczba graczyTyp rozgrywkiZalecany RAM
1-5Vanilla / Paper, mała ilość pluginów2-4 GB
5-15Paper z pluginami ekonomicznymi/RPG4-6 GB
15-30Modpack (Forge/NeoForge) średniej wielkości6-10 GB
30+Duży modpack lub sieć skyblock/survival10-16 GB

Powyższe wartości to punkt startowy – rzeczywiste zużycie zależy od liczby załadowanych chunków, entity ticking range i liczby zainstalowanych modów. Dobrą praktyką jest monitorowanie zużycia heap przez /spark heap i korekta wartości -Xmx dopiero na podstawie realnych danych, a nie szacunków.

Kiedy problem nie leży w RAM

Jeśli po zwiększeniu pamięci TPS serwera Minecraft nadal spada, sprawdź:

  • liczbę encji na chunk (farmy mobów, itemy na ziemi) – ogranicz przez despawn-rate i limity w Paper;
  • pluginy generujące zapytania do bazy danych w głównym wątku zamiast asynchronicznie;
  • redstone loops i zegary działające bez przerwy w niezaładowanych obszarach;
  • automatyczne zapisywanie świata (autosave) skonfigurowane zbyt agresywnie.

Regularne kopie zapasowe i panel administracyjny typu Pterodactyl ułatwiają szybkie testowanie zmian konfiguracji – możesz przywrócić stan sprzed zmiany, jeśli optymalizacja pogorszy zachowanie serwera zamiast je poprawić. Zarządzanie plikami konfiguracyjnymi i restart usługi bezpośrednio z panelu, opisane w VPS Pterodactyl, pozwala testować parametry JVM i pliki Paper bez ryzyka utraty danych.

Więcej materiałów o konfiguracji poszczególnych trybów rozgrywki znajdziesz w Blog Fly-Serv, a pełną dokumentację panelu opisuje Source.



Stabilne TPS serwera Minecraft to wynik dopasowania taktowania procesora, wyboru odpowiedniego silnika i realistycznego przydziału RAM do liczby graczy, a nie jednego uniwersalnego ustawienia. Diagnoza przez Timings i Spark oraz stopniowe testowanie zmian to najskuteczniejsza droga do płynnej rozgrywki.



FAQ

Jak sprawdzić aktualny TPS bez instalowania dodatkowych pluginów?

Wpisz w konsoli komendę /tps na Paper lub Spigot – wyświetli ona średnią z ostatnich 1, 5 i 15 minut. Wartości poniżej 18-19 przez dłuższy czas oznaczają realny problem wymagający dalszej diagnozy.

Czy zwiększenie liczby rdzeni CPU poprawi TPS serwera Minecraft?

Nie zawsze. Główna pętla tick działa na jednym wątku, więc kluczowe jest taktowanie pojedynczego rdzenia, a nie ich liczba. Dodatkowe rdzenie pomagają jedynie przy procesach pobocznych, takich jak kompresja chunków czy operacje sieciowe.

Czy Paper zawsze daje lepsze TPS niż Spigot?

W większości przypadków tak, dzięki asynchronicznemu przetwarzaniu chunków i dodatkowym opcjom konfiguracyjnym w plikach paper-global.yml oraz paper-world-defaults.yml. Różnica jest szczególnie widoczna przy dużej liczbie graczy i encji.