Kilka pytań odnośnie serwera minecraft

Cześć!
Tak jak w tytule!

1. Dlaczego timingi zapisują mi się w plikach, a nie na stronce spigota? (paper 1.8.8)
2. Jest sposób na sprawdzenie ile graczy uniesie serwer? (paper 1.8.8, pregen świata, 25-30 pluginów, EasyHC)

Z góry dziękuję :wink:

Hej. Co do timingów, to nie wiem w jaki sposób je robisz, ale po ich uruchomieniu, aby uzyskać link do raportu wpisujesz /timings paste. Jeśli nie generuje linku, pokaż jaki komunikat się pojawia lub ewentualnie logi z konsoli jeśli czymś sypie.
Jeśli chodzi o ilość graczy, to podaj jakie zasoby masz dostępne. Tak dokładnie nie będzie dało się nigdy wyliczyć, bo to zależy od wielu zmiennych jak ilość entities, zachowanie graczy na mapie, optymalizacja pluginów itp.

Timingi działają tylko czasami. Mam 8 gb ramu France i 3 core.

Oto moja lista pluginów:

PS: Podpowiesz, co tu można zmienić/zoptymalizować?

Dodatkowo link do timingów >> https://timings.aikar.co/?id=4feb6c258a674178bc3697553f033e7a

NoPlugins do wywalenia, można zablokować każdą komendę negując po prostu uprawnienie dla danej grupy do /plugins, /help itp. Matrix to bardzo kiepski antycheat, testowaliśmy na wersji 1.15.2 na publicznym serwerze i graczy wywalało za nic (przynajmniej w podstawowej konfiguracji). ExploitFixer prawie nic nie łata, większość inteligentnych botów z wieloma metodami ataku na serwer (spam pakietami NBT i nie tylko) i tak wywali serwer. FunnyGuilds sobie zaktualizuj do najnowszej wersji 4.7.0, kilka ważnych poprawek było (patrz changelog na GitHubie). CustomRecipes masz dwie wersje nie wiedzieć dlaczego, a ColoredSigns też niepotrzebne, bo w Essentials jest opcja włączenia kolorowych tabliczek.

Z tymi timingami to dziwna sprawa, może ktoś jeszcze się wypowie. Nie korzystałem dawno z tak starej wersji, na 1.12+ wszystko mi śmigało.

8GB RAM FR powinno utrzymać przy tej wersji i odpowiedniej optymalizacji (możesz zerknąć na mój poradnik, jest pisany dla wersji 1.13+, ale nada się też część rzeczy np. związanych z konfiguracją silnika pod 1.8). 150 osób. Jeśli nikt Ci nie będzie kradł CPU na węźle i nie wiem, czy jeszcze jakieś usługi hostujesz na tej samej maszynie (TeamSpeak 3, Apache czy coś). A i czemu 1.8.8, a nie 1.8.9?

Mam jeszcze forum serwera, ts’a raczej nie będzie. Mamy dc

1.8.8, bo gracze chcą grać na bp.

Jeśli timingi wygenerowane przy pustym serwerze, to i tak niewiele dadzą, a pełny ogląd dadzą jeszcze dokładniejsze narzędzia. Z tego co wysłałeś, to jak zawsze entities na szczycie zużycia, ale to standard, ważne, żeby czyścić często pozostawione itemy z mapy + ograniczyć spawn mobów per chunk, ograniczyć view-distance i reszta opisana w poradniku. Przetestuj na żywym organiźmie jak będą gracze, obserwuj ich zachowanie. Dobrą opcją jest też zrobienie dropu bezpośrednio do ekwipunku (OtherDrops tego nie posiada domyślnie, więc musiałbyś sobie dopisać plugin na to, jedyny dostępny publicznie jest na 1.12, ale można łatwo przepisać).

powiem ci tak mozna dac 1.8,1.8.8,1.8.9 ja mam 1.8.9 a gram na 1.8 wiec spokojne najlepiej 1.8x

Mam plugin na /otchlan, co 3 minutki zbiera wszystkie ity z ziemi i gracze mogą sobie je wziąć. Dodam jeszcze, że już dużo optymalizowałem, renderdistance mam na 4 lub 6. Optymalizowałem z poradnika od craftserve - serwer robiony na craftserve i przeniesiony na lvlup.

A myślisz, że dobrym rozwiązaniem będzie zastąpienie essentials czymś innym?
Z niego używam tylko msg, tpa, warpy, spawn i kity.

Możesz, ale Essentials generalnie nie jest jakimś bardzo źle zoptymalizowanym pluginem. Nawet jeśli teraz używasz tylko kilku funkcji, to kiedyś możesz wykorzystać inne. Nie wiem czy jest jakaś sensowna alternatywa z tylko podstawowymi komendami.

Dzięki, a jakiego polecasz darmowego antycheata na 1.8.8?

PS: Mam się martwić, jeżeli jeszcze przed startem serwera tps czasami spada do 19.99?

Edit: Mam kilka skryptów, na np. /pomoc, rzucane tnt, wyłączenie pvp, drewniarki, autowiadomości, kit po śmierci i piorun po śmierci. Może one trochę przeszkadzają w pracy serwera?

Skrypty nie przeszkadzają jak są dobrze napisane.

Mam się martwić, jeżeli jeszcze przed startem serwera tps czasami spada do 19.99?

Nie, to normalne.
Zacząć interesować się możesz 19.00, a martwić przy 17 :smile:

Skrypty nie przeszkadzają jak są dobrze napisane.

Wszedłbym w polemikę. Może i małe skrypty jak na komendę wypluwającą wiadomość nie będą w cudzysłowie “zabijać” serwera, ale jeśli możemy, to przenośmy jednak wszystkie funkcje do dobrze napisanych pluginów. Autor jednak wspomniał np. o rzucanym TNT, czyli skrypt już być może oblicza jakieś wektory itp. Skrypty wszystko wykonują w głównym wątku serwera bez jakiejkolwiek asynchroniczności i koszt “tłumaczenia” w locie tych linijek skryptu na konkretne zdarzenia czy inne metody jest stosunkowo mało opłacalny. Nie demonizujmy, ale naprawdę kilka obszerniejszych skryptów może freezować serwer właśnie przez ten natłok danych do przetworzenia i fatalną implementację tego.

Zamieniłem skrypt na rzucane tnt na plugin. Znalazłem z większą ilością funkcji. Ale jak to bywa nadszedł kolejny problem… Nie da się założyć gildii:

Caused by: java.lang.NullPointerException
        at sun.reflect.GeneratedMethodAccessor118.invoke(Unknown Source) ~[?:?]
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:1.8.0_252]
        at java.lang.reflect.Method.invoke(Method.java:498) ~[?:1.8.0_252]
        at net.dzikoysk.funnyguilds.util.commons.spigot.ItemComponentUtils.getItemComponent(ItemComponentUtils.java:107) ~[?:?]
        at net.dzikoysk.funnyguilds.util.commons.spigot.ItemComponentUtils.translateComponentPlaceholder(ItemComponentUtils.java:76) ~[?:?]
        at net.dzikoysk.funnyguilds.command.util.Executor.playerHasEnoughItems(Executor.java:38) ~[?:?]
        at net.dzikoysk.funnyguilds.command.ExcCreate.execute(ExcCreate.java:189) ~[?:?]
        at net.dzikoysk.funnyguilds.command.util.ExecutorCaller.call(ExecutorCaller.java:126) ~[?:?]
        at net.dzikoysk.funnyguilds.command.util.ExecutorCaller.onCommand(ExecutorCaller.java:164) ~[?:?]
        at net.dzikoysk.funnyguilds.command.util.Performer.execute(Performer.java:22) ~[?:?]
        at org.bukkit.command.SimpleCommandMap.dispatch(SimpleCommandMap.java:146) ~[mc.jar:git-PaperSpigot-"4c7641d"]
        ... 14 more

Prawdopodobnie masz źle ustawione przedmioty wymagane do założenia gildii i dlatego sypie nullem i nie może wykonać komendy. Sprawdź nazwy poszczególnych itemów, w FunnyGuilds dodaje się je w bardzo specyficzny sposób.