Optymalizacja TPS na serwerze Minecraft: pełny poradnik
Czym jest TPS i dlaczego to ważne
TPS (Ticks Per Second) to puls twojego serwera Minecraft. Każdy tick to jeden cykl aktualizacji świata gry: ruch mobów, wzrost roślin, obsługa redstone, fizyka bloków, rejestracja akcji graczy. W idealnym przypadku serwer wykonuje 20 ticków na sekundę, czyli każdy tick zajmuje nie więcej niż 50 milisekund.
Gdy TPS spada poniżej 20, wszystko zaczyna się ciąć. Moby ruszają się skokowo, bloki łamią się z opóźnieniem, gracze narzekają na "lagi serwera". Przy TPS 15 gra jest już zauważalnie nieprzyjemna. Przy TPS 10 i niżej serwer praktycznie nie nadaje się do gry.
Ważne, żeby rozumieć różnicę między TPS a pingiem. Ping to opóźnienie sieciowe między graczem a serwerem. TPS to wydajność samego serwera. Gracz może mieć idealny ping 10ms, ale jeśli TPS serwera wynosi 12, lagi i tak będą. I odwrotnie: serwer może trzymać stabilne 20 TPS, ale gracz ze słabym internetem będzie lagował przez wysoki ping.
Główne przyczyny niskiego TPS
Zanim zaczniesz optymalizować, trzeba zrozumieć, co konkretnie obciąża serwer. Oto najczęstsze przyczyny.
Za dużo encji
Każdy mob, upuszczony przedmiot, strzała, łódka, wagonik to encja, którą serwer obsługuje co tick. Farma z setkami krów w jednej zagrodzie zabija TPS szybciej niż cokolwiek innego. Upuszczone przedmioty, których nikt nie podnosi, kumulują się i obciążają serwer.
Ciężkie pluginy
Nie wszystkie pluginy są napisane równie dobrze. Niektóre wykonują skomplikowane obliczenia w głównym wątku serwera, blokując obsługę ticków. Dynamiczna mapa, złożone pluginy ekonomiczne, pluginy z częstymi zapytaniami do bazy danych - wszystko to potencjalni zabójcy TPS.
Ładowanie chunków
Generacja nowych chunków to jedna z najbardziej kosztownych operacji. Gdy kilku graczy jednocześnie eksploruje nowe tereny, serwer musi generować dziesiątki chunków na sekundę. To kolosalne obciążenie.
Redstone
Złożone mechanizmy redstone, szczególnie zegary (clock circuits) i duże systemy, generują tysiące aktualizacji bloków na tick. Jeden gracz z nieskończonym zegarem redstone może położyć cały serwer.
Rozmiar świata
Im więcej załadowanych chunków, tym więcej roboty dla serwera. Każdy chunk zawiera bloki, które trzeba aktualizować: woda płynie, lawa płynie, plony rosną, moby się spawnują.
Optymalizacja paper.yml / paper-global.yml
Paper (i jego forki jak Purpur) dają ogromną liczbę ustawień do optymalizacji. Oto kluczowe parametry.
Dla Paper 1.19.4+ (paper-global.yml i paper-world-defaults.yml)
# paper-world-defaults.yml
# Zmniejszamy dystans aktywacji mobów
entities:
spawning:
despawn-ranges:
monster:
hard: 96
soft: 28
creature:
hard: 96
soft: 28
ambient:
hard: 64
soft: 28
# Ograniczamy spawn mobów
spawn-limits:
monsters: 50 # vanilla: 70
animals: 8 # vanilla: 10
water-animals: 3 # vanilla: 5
ambient: 1 # vanilla: 15
# Optymalizacja chunków
chunks:
max-auto-save-chunks-per-tick: 8
delay-chunk-unloads-by: 10s
entity-per-chunk-save-limit:
experience_orb: 16
arrow: 8
item: 32
# Ograniczenie redstone
redstone-implementation: ALTERNATE_CURRENT
Kluczowe ustawienia Purpur
Jeśli używasz Purpur (fork Paper z dodatkowymi optymalizacjami):
# purpur.yml
settings:
dont-send-useless-entity-packets: true
world-settings:
default:
mobs:
zombie:
aggressive-towards-villager-when-lagging: false
villager:
lobotomize:
enabled: true # wyłącza złożone AI u zacięgnionych mieszkańców
Audyt pluginów: szukamy ciężkich pluginów
Ślepa optymalizacja configów nie pomoże, jeśli jeden plugin zżera 60% tick serwera. Trzeba znaleźć winnego.
Spark - najlepsze narzędzie profilowania
Zainstaluj plugin Spark. To najdokładniejszy profiler dla Minecraft.
/spark profiler start # Rozpocząć profilowanie
/spark profiler stop # Zatrzymać i dostać raport
/spark tps # Obecny TPS
/spark health # Ogólny stan serwera
Spark pokaże, które pluginy i jakie konkretnie operacje zajmują najwięcej czasu. Szukaj pluginów, które zajmują więcej niż 10-15% tick serwera.
Timings (wbudowane w Paper)
/timings on # Włączyć zbieranie danych
# Poczekaj 5-10 minut
/timings paste # Dostać link do raportu
Raport Timings pokaże każdy plugin i każdy handler eventów z dokładnym czasem wykonania. Czerwone linie to problematyczne miejsca.
Co robić z ciężkim pluginem
Jeśli znalazłeś plugin, który spowalnia serwer, masz trzy opcje: zastąpić go bardziej zoptymalizowanym odpowiednikiem, skonfigurować (zwiększyć interwały aktualizacji, wyłączyć zbędne funkcje) lub usunąć, jeśli nie jest krytyczny.
View Distance i Simulation Distance
Te dwa parametry mają ogromny wpływ na wydajność.
View Distance - ile chunków wokół gracza wysyła się klientowi do renderowania. Simulation Distance - ile chunków wokół gracza jest realnie obsługiwanych przez serwer (moby, redstone, wzrost roślin).
# server.properties
view-distance=7 # vanilla: 10
simulation-distance=4 # vanilla: 10
Obniżenie simulation-distance z 10 do 4 to skrócenie obsługiwanego obszaru o ponad 6 razy. Efekt na TPS kolosalny.
Jeśli graczom zależy na ładnym widoku, można trzymać view-distance wyższy (7-8), a simulation-distance niski (4-5). Dalekie chunki będą widoczne, ale nie będą obciążać serwera.
Pre-generacja świata
Generacja chunków w locie to droga operacja. Rozwiązanie: wygenerować wszystkie chunki zawczasu.
Plugin Chunky robi to sprawnie:
/chunky radius 5000 # Promień w blokach od centrum
/chunky start # Rozpocząć generację
/chunky pause # Pauza (w razie potrzeby)
/chunky continue # Kontynuować
Generuj świat, gdy na serwerze jest mało graczy, albo w ogóle offline. Po pre-generacji ustaw granicę świata, żeby gracze nie wychodzili poza wygenerowany obszar:
/worldborder set 10000 # Granica świata 10000 bloków
Ataki DDoS a TPS: ukryty związek
Oto o czym rzadko mówi się w poradnikach optymalizacji TPS: ataki DDoS bezpośrednio zabijają wydajność serwera, nawet jeśli nie kładą go całkowicie.
Jak atak wpływa na TPS
Przy ataku DDoS na serwer Minecraft dzieje się tak. Tysiące podrobionych połączeń zapychają stos sieciowy. Serwer marnuje czas procesora na obsługę fałszywych pakietów zamiast ticków gry. Bot-ataki tworzą setki fałszywych graczy, a każdy z nich to obciążenie serwera. Nawet jeśli atak nie "kładzie" serwera w pełni, TPS leci do 10-15 i gracze doświadczają koszmarnych lagów.
Możesz idealnie skonfigurować Paper, wyczyścić ciężkie pluginy, pre-generować świat, ale jeden bot-atak wyzeruje wszystkie twoje wysiłki.
Jak rozwiązujemy ten problem
W MineGuard filtrujemy szkodliwy ruch, zanim dotrze do twojego serwera. Nasz filtr odsiewa boty, fałszywe połączenia i śmieciowe pakiety na poziomie sieciowym. Twój serwer dostaje tylko legitny ruch od prawdziwych graczy.
Efekt: nawet w trakcie aktywnego ataku DDoS twój serwer trzyma stabilne 20 TPS, bo całe obciążenie od ataku spada na nasz filtr, a nie na twój sprzęt. Widzieliśmy przypadki, gdy serwery z idealnie skonfigurowanym Paper spadały do 5 TPS przy bot-atakach, a po podłączeniu naszej ochrony trzymały stabilne 19.9-20.0 nawet pod atakiem.
Monitoring TPS: trzymamy rękę na pulsie
Optymalizacja to nie jednorazowa akcja. Trzeba stale pilnować stanu serwera.
Spark do stałego monitoringu
/spark tps # Obecny TPS (1m, 5m, 15m)
/spark health # CPU, pamięć, TPS w jednym raporcie
/spark profiler start --timeout 300 # Profilowanie na 5 minut
Uruchamiaj profilowanie w godzinach szczytu, żeby złapać realne problemy.
Automatyczne alerty
Skonfiguruj powiadomienia o spadku TPS. Wiele paneli zarządzania (Pterodactyl, AMP) wspiera to out-of-the-box. Jeśli masz customową konfigurację, użyj pluginu, który wysyła webhook na Discord przy spadku TPS poniżej progu.
Na co patrzeć
- TPS 19.5-20.0 - super, serwer działa idealnie
- TPS 18.0-19.5 - normalnie, nieznaczne spadki
- TPS 15.0-18.0 - trzeba optymalizacji, gracze zaczynają zauważać lagi
- TPS poniżej 15.0 - poważne problemy, trzeba pilnie się tym zająć
Checklista optymalizacji
Podsumujmy. Przejdź po tej liście:
- Zaktualizuj rdzeń do Paper lub Purpur najnowszej wersji
- Skonfiguruj paper-world-defaults.yml: limity mobów, despawn-ranges, ALTERNATE_CURRENT
- Ustaw simulation-distance 4-5, view-distance 7-8
- Pre-generuj świat przez Chunky i ustaw granicę
- Zrób audyt pluginów przez Spark - znajdź i zastąp ciężkie
- Ogranicz encje: limity na farmy, auto-czyszczenie dropu
- Podłącz ochronę DDoS, żeby ataki nie wpływały na TPS
- Skonfiguruj monitoring TPS przez Spark
- Regularnie sprawdzaj raporty Timings po aktualizacjach pluginów
Optymalizacja TPS to kompleksowy proces. Nie ma jednego magicznego ustawienia, które wszystko naprawi. Ale jeśli systemowo przejdziesz przez każdy punkt, różnica będzie ogromna. Serwery, które stabilnie trzymają 20 TPS, utrzymują graczy. Serwery z lagami - tracą ich.
Chroń swój serwer przed atakami DDoS
Darmowa ochrona z konfiguracją w 5 minut. 1 TB ruchu w zestawie.
Wypróbuj za darmoPowiązane artykuły
Velocity + ochrona DDoS: pełny poradnik konfiguracji bezpiecznej sieci Minecraft
Instrukcja krok po kroku konfiguracji proxy Velocity z ochroną DDoS MineGuard. Architektura, modern forwarding, Proxy Protocol, firewall.
DecentHolograms vs Holographic Displays: który plugin hologramów wybrać w 2026
Holographic Displays był standardem przez dekadę, potem padł na 1.20+ przez zależność od ProtocolLib. DecentHolograms działa bez niego i jest obecnie domyślnym wyborem. Porównujemy funkcje, migrację i prawdziwe configi.
Najlepsze anticheaty dla Minecraft 2026: Grim, Vulcan, Matrix, AAC, NCP
KillAura, Reach, Fly, Scaffold - cheaterzy niszcza PvP i ekonomie serwera. Porownujemy Grim, Vulcan, Matrix, AAC i NCP: ceny, wersje, false positive i ktory wybrac pod swoj serwer.