GameHosting.pl

Notatki operatora

Optymalizacja serwera Minecraft: serwer laguje, co robić

Spadające TPS, gumowe moby, opóźnione otwieranie skrzyń. Zanim dorzucisz RAM albo obwinisz łącze, warto zdiagnozować, co faktycznie obciąża serwer. Ten poradnik prowadzi przez naprawę lagów od pomiaru, przez Paper i Purpur, ustawienia zasięgu, flagi Javy, encje i redstone, aż po pre-generację świata.

Opublikowano · ~9 min czytania

W skrócie: Zdrowy serwer trzyma 20 TPS. Najszybsze wygrane po kolei: przejdź z vanilla na Paper lub Purpur, obniż view-distance i simulation-distance, ustaw sensowne flagi Javy i Xms=Xmx, ogarnij encje i redstone, a świat pre-generuj. Dosypanie RAM rzadko naprawia lagi, bo Minecraft najpierw upiera się o mocny, wysoko taktowany procesor.

Najpierw zdiagnozuj, nie zgaduj

Optymalizacja na ślepo kończy się zmienianiem dziesięciu rzeczy naraz i brakiem pojęcia, która pomogła. Zacznij od liczb. Kluczowe pojęcia:

Zainstaluj mod lub wtyczkę spark i wpisz /spark tps oraz wygeneruj pełny raport przez /spark profiler. Raport pokaże czarno na białym, co zjada czas ticka: konkretna wtyczka, generowanie chunków, encje czy redstone. Dopiero z tą wiedzą zmieniasz ustawienia celowo, a nie po omacku.

Zmień jar na Paper albo Purpur

Jeśli stoisz na czystym serwerze vanilla, to najprawdopodobniej twoja największa pojedyncza wygrana. Paper to serwer bazujący na oficjalnym Minecraft, rozwijany pod kątem wydajności, z setkami optymalizacji i rozbudowaną konfiguracją. Purpur rozszerza Paper o kolejne opcje strojenia. Nowsze wersje gry dodatkowo odchudziły pętlę ticka po stronie serwera, więc aktualny Paper na bieżącej wersji potrafi zauważalnie mniej obciążać procesor niż vanilla sprzed roku.

Przejście jest bezbolesne: zatrzymaj serwer, podmień plik na paper.jar lub purpur.jar w docelowej wersji, uruchom. Świat i wtyczki zostają. Różnice między wariantami rozpisaliśmy w przeglądzie trybów serwerów Minecraft.

Najważniejsze ustawienia: zasięg widzenia i symulacji

W server.properties dwa parametry mają największy wpływ na obciążenie:

W Paperze i Purpurze masz dodatkowo osobne pliki konfiguracyjne, gdzie można dostroić między innymi łączenie przedmiotów, aktywację moby na odległość czy zachowanie odświeżania. Zmieniaj po jednym ustawieniu i sprawdzaj wpływ w spark, żeby wiedzieć, co dało efekt.

Z doświadczenia: większość ludzi ustawia view-distance na 10 lub 12, bo tak jest domyślnie, i płaci za to spadkiem TPS. Dla większości serwerów survivalowych 8 wygląda praktycznie tak samo, a odciąża zauważalnie. To zmiana jednej linijki, która często robi więcej niż dosypanie RAM.

RAM i flagi Javy

Tu panuje najwięcej mitów. Dwie zasady, które warto zapamiętać:

Przykładowy start dla 6 GB wygląda z grubsza tak: java -Xms6G -Xmx6G [flagi Aikara] -jar paper.jar nogui. Pamiętaj też o Javie 21 pod bieżące wersje gry, o czym piszemy w poradniku o aktualizacji serwera Minecraft. Na hostingu zarządzanym flagi i wersję Javy zwykle ustawia się z listy w panelu.

Lagi od encji i redstone

Gdy serwer działał dobrze, a z czasem zaczął przycinać, winowajcą prawie zawsze są encje. Najczęstsze źródła:

Raport spark wskaże konkretny chunk i typ encji, więc nie musisz zgadywać, która budowla zabija TPS.

Pre-generuj świat

Generowanie nowego terenu to jedno z najcięższych zadań serwera. Gdy gracze eksplorują świeże chunki, serwer liczy je na bieżąco, co widać jako skoki lagów przy podróżowaniu. Rozwiązaniem jest wcześniejsze wygenerowanie mapy do ustalonego promienia wtyczką lub modem, na przykład Chunky. Robisz to raz, przy pustym serwerze, a potem gracze poruszają się po gotowym terenie. Proces opisaliśmy we wpisie o pre-generacji chunków wtyczką Chunky.

Audyt wtyczek i modów

Każda wtyczka i mod to dodatkowy kod wykonywany na serwerze. Nie zakładaj, że wszystkie są niewinne. W raporcie spark posortuj po czasie ticka i przyjrzyj się największym pozycjom. Wtyczki bez aktualizacji od dawna, słabo napisane dodatki i mody dodające ciężką automatyzację to typowi kandydaci. Usuwaj i podmieniaj po jednym, sprawdzając wpływ. Przy modpackach, które wywalają się lub tną od startu, zajrzyj też do wpisu o naprawie crashującego modpacka.

Kiedy to sprzęt, a nie ustawienia

Bywa, że przeszedłeś przez całą listę, a serwer i tak nie wyrabia. Wtedy problemem jest procesor. Minecraft dla pojedynczego świata korzysta w praktyce głównie z jednego wątku, więc liczy się taktowanie rdzenia, a nie liczba rdzeni. Tani VPS z dużą liczbą wolnych rdzeni potrafi lagować bardziej niż maszyna z mniejszą liczbą, ale szybszych. Dobór maszyny pod grę opisaliśmy w doborze sprzętu pod serwer gry.

Jeśli nie chcesz sam dobierać procesora ani stroić flag, prostą drogą jest serwer na hostingu zarządzanym, gdzie maszyny są dobrane pod Minecraft, a wersję Javy i podstawowe optymalizacje ustawiasz z panelu. Gotową opcję opisaliśmy w hostingu serwera Minecraft.

Kolejność działań w skrócie

KrokEfekt
1. Zmierz TPS i zrób raport sparkWiesz, co faktycznie obciąża serwer, zamiast zgadywać.
2. Przejdź na Paper lub PurpurZwykle największy pojedynczy skok wydajności.
3. Obniż view-distance i simulation-distanceDuże odciążenie, gracze rzadko zauważają różnicę.
4. Ustaw Xms=Xmx i flagi JavyKrótsze pauzy pamięci, płynniejszy tick.
5. Ogarnij encje i redstoneUsuwasz najczęstsze źródło narastających lagów.
6. Pre-generuj światKoniec skoków lagów przy eksploracji.
7. Sprawdź procesorGdy reszta nie pomaga, potrzebny wyżej taktowany rdzeń.

Najczęstsze pytania

Dlaczego mój serwer Minecraft laguje?

Zwykle przez zbyt wysoki view-distance i simulation-distance, serwer vanilla zamiast Paper, nadmiar encji, ciężki redstone lub słaby procesor. Zacznij od pomiaru TPS i raportu spark, żeby wskazać realną przyczynę.

Ile RAM potrzebuje serwer Minecraft?

2 do 4 GB dla małego serwera Paper, 4 do 6 GB z wtyczkami i większą grupą, 6 do 10 GB i więcej dla dużych modpacków. Za dużo RAM nie przyspiesza, a bywa, że szkodzi przez dłuższe pauzy pamięci.

Co to jest TPS?

Ticks per second, liczba cykli logiki gry na sekundę. Zdrowy serwer trzyma 20. Spadek oznacza, że serwer nie wyrabia z symulacją i wszystko zwalnia.

Czy Paper przyspiesza serwer?

Tak, zwykle wyraźnie. To najczęściej największy skok wydajności bez zmiany sprzętu. Purpur dokłada dodatkowe opcje strojenia.

Jak zmniejszyć lagi od modów?

Zrób raport spark, znajdź mod zjadający tick, dorzuć mody optymalizacyjne po stronie serwera, obniż zasięg i pre-generuj świat. Jeśli modpack i tak zajmuje cały procesor, potrzebny mocniejszy rdzeń.

Powiązane