Ograniczamy rozmiar mapy za pomocą WorldBorder

Ten artykuł przeczytasz w około 7 minut

Za każdym razem, gdy na Twoim serwerze gracze udają się w nie odwiedzone wcześniej miejsca serwer Minecraft generuje część świata co powoduje naturalne obciążenie procesora. Domyślnie rozmiar mapy w Minecraft to 30 milionów bloków od punktu 0,0 - jest ona więc praktycznie nielimitowana. Na początkowej fazie rozgrywki w kilka lub tym bardziej kilkanaście osób może to powodować problem z wydajnością. Jeśli pozostawisz mapę bez ustalonego limitu bardzo szybko może okazać się, że zajmuje ona prawie całe dostępne miejsce na dysku.

W tym poradniku dowiesz się:

  • Jak ograniczyć rozmiar mapy bez pluginów
  • Co to jest i do czego służy służy WorldBorder
  • Jak zainstalować plugin WorldBorder
  • Jak ograniczyć rozmiar mapy pluginem WorldBorder
  • Jak wygenerować mapę, aby zwiększyć wydajność serwera
  • Jak poradzić sobie z za dużą mapą

Jak ograniczyć rozmiar mapy bez pluginów?

Minecraft od wersji 1.8 pozwala na ustalenie nieprzekraczalnej przez gracza granicy świata za pomocą komendy /worldborder set <rozmiar> (np. /worldborder set 1000). Działanie tej komendy jest proste i zwykle wystarczające. O wiele więcej opcji daje nam jednak plugin WorldBorder.

Co jeśli mój silnik nie obsługuje pluginów?

W tym poradniku opisaliśmy jak ograniczyć i wygenerować mapę za pomocą pluginu WorldBorder. Jeśli Twój silnik serwerowy nie obsługuje pluginów, ale np. wspiera obsługę modów (Forge lub Fabric) możesz skorzystać z analogicznych narzędzi w formie moda. Przykładowe mody, które sprawdzą się przy generowaniu mapy:

Do czego służy plugin WorldBorder?

WorldBorder jest pluginem dla serwerów Bukkit/Spigot. Pozwala w prosty sposób ograniczyć rozmiar dostępnej dla graczy mapy. Dzięki niemu ustalisz granicę, której przekroczenie będzie dla nich niemożliwe.

Oprócz limitowania rozmiaru mapy potrafi on również usuwać teren, który znajduje się poza ustaloną granicą. Za jego pomocą wygenerujesz również teren bez konieczności jego odwiedzania - dzięki wygenerowanej mapie znacznie ograniczysz lagi serwera, które mogą wystąpić podczas odwiedzania nowych terenów.

Jak zainstalować plugin WorldBorder?

Do prawidłowego działania plugin ten wymaga zainstalowania silnika serwerowego obsługującego pluginy Spigot lub Bukkit. Na potrzeby tego poradnika wykorzystany został silnik Paper w wersji 1.17.1 - WorldBorder jest kompatybilny nawet z bardzo starymi wersjami Minecraft.

Plugin ten można pobrać za darmo dla:

Po pobraniu odpowiedniej wersji plugin należy umieścić w folderze plugins i uruchomić ponownie serwer. Po ponownym uruchomieniu w logach serwera plugin poinformuje nas o działaniu jak na zrzucie ekranu poniżej.

Po przesłaniu pluginu na serwer nie pozostaje nam nic innego jak ustawienie odpowiadającej nam granicy świata. Aby to zrobić należy dołączyć do gry i udać się w miejsce, które będzie znajdować się po środku mapy (na przykład spawn serwerowy).

Gdy znajdziemy odpowiadające nam miejsce wystarczy użyć komendy /wb set <promień> (np. /wb set 500 jak na zrzucie ekranu poniżej). Domyślnie granica mapy ma kształt koła.

Granica świata "world" będzie znajdować się 500 kratek od miejsca, w którym stoi gracz

Komenda ta jest dostępna dla graczy posiadających uprawnienia worldborder.* lub operatorów serwera (użyj /op nick w konsoli serwera). Poprawnie ustawiona granica mapy poskutkuje informacją jak na zrzucie ekranu ("Border has been set").

Osoby, które spróbują przekroczyć granicę zostaną cofnięte w jej miejsce oraz poinformowane o tym na czacie (komunikat ten można zmienić w pliku plugins/WorldBorder/config.yml):

Gracz dotarł na koniec mapy i nie może przejść dalej

Ustalenie granicy świata nie oznacza, że mapa znajdująca się w jej zasięgu została wygenerowana. Oznacza to, że gracze nadal mogą generować świat oraz zwiększać zużycie dysku - z tym wyjątkiem, że zrobią to do ustalonego limitu.

Ile będzie zajmować mapa po wygenerowaniu jej w całości? Dowiemy się tego dopiero, gdy gracze wygenerują ją w całości lub jeśli wygenerujemy ją sami - tu z pomocą znów przychodzi nam plugin WorldBorder.

Jak i po co wygenerować mapę za pomocą WorldBorder?

Ustalenie granicy mapy to skuteczny sposób na ograniczenie zużycia miejsca na dysku. Problem w tym, że dopóki gracze nie wygenerują całego obszaru mapy ciężko oszacować ile może ona ważyć. Generując mapę w obszarze granicy dowiemy się tego dużo szybciej.

Generowanie mapy przez graczy oprócz miejsca na dysku w znacznym stopniu obciąża też procesor Twojego serwera. W zależności od jego zasobów całkiem możliwe, że podczas eksploracji świata przez graczy mogą wystąpić zauważalne spadki w jego wydajności (lagi). Wcześniejsze wygenerowanie mapy zwykle rozwiązuje ten problem.

Aby wygenerować mapę za pomocą WordlBorder:

  • Jeśli jeszcze tego nie zrobiłeś ustal granicę mapy - np. /wb set 500
  • Ustaw prędkość generowania mapy za pomocą komendy /wb fill 20 (generowanie 20 chunków na sekundę)
  • Potwierdź generowanie komendą /wb fill confirm

Ważne: generowanie mapy nie zostanie zatrzymane po ponownym uruchomieniu serwera - jeśli chcesz je zatrzymać użyj komendy /wb fill cancel

Zależnie od wielkości granicy mapy oraz prędkości generowania operacja ta może zająć nawet kilka godzin. Podczas generowania mapy obciążenie serwera może bardzo wzrosnąć. Jeśli chcesz zmienić prędkość generowania mapy możesz je przerwać komendą /wb fill cancel - uruchamiając je ponownie wcześniej generowane tereny nie zostaną usunięte.

Postęp generowania mapy

Po wygenerowaniu mapy zalecane jest ponowne uruchomienie serwera.

Jak poradzić sobie z za dużą mapą?

Samo ustalenie granicy na serwerze może nie wystarczyć jeśli mapa poza granicą została już odwiedzona przez graczy (jak na obrazku poniżej). Plugin WorldBorder pozwala pozbyć się mapy, która znajduje się poza granicą. Usunięte tereny nie zostaną zastąpione powietrzem - jeśli za jakiś czas zdecydujesz się na powiększenie granicy usunięty teren wygeneruje się ponownie (oczywiście wszelkie budowle utworzone przez graczy nie wygenerują się ponownie).

Ważne: Jeśli zdecydujesz się na ten krok zalecamy utworzenie kopii zapasowej mapy, operacja ta jest nieodwracalna.

Po lewo mapa z granicą ustaloną za późno - po prawo mapa jaką chcemy uzyskać

Aby usunąć teren poza granicą mapy należy:

  • ustalić granicę pluginem WorldBorder
  • użyć komendy /wb trim 20 (usunie 20 chunków na sekundę)
  • zatwierdzić operację komendą /wb trim confirm

Usuwanie terenów poza ustaloną granicą może trwać bardzo długo. Operacja ta może również wpłynąć na wydajność serwera.

Ważne: usuwanie części mapy nie zostanie zatrzymane po ponownym uruchomieniu serwera - jeśli chcesz je zatrzymać użyj komendy /wb fill cancel

Po całej operacji zalecane jest ponowne uruchomienie serwera.

Działanie komendy /wb trim

Logo BedrockHost.pl
BedrockHost.pl
© IBC-GAMES 2024
Nasze dane
  • BedrockHost.pl jest własnością firmy:
  • Remigiusz Machula - IBC-GAMES
  • NIP: 8842583035
  • REGON: 366776613