Discord
Wiki - Pluginy

Multiverse-Core - zarządzanie wieloma światami na serwerze

Multiverse-Core to najpopularniejszy plugin do obsługi wielu światów jednocześnie na serwerze Minecraft. Twórz światy normalne, nether, end i płaskie, zarządzaj teleportacją, ustawiaj zasady per świat i rozbuduj serwer o portale oraz oddzielne ekwipunki dla każdego wymiaru.

Czas czytania: ~7 min Platforma: Paper / Spigot / Purpur

Co to jest Multiverse-Core

Multiverse-Core to darmowy, open-source plugin serwerowy, który pozwala administratorowi zarządzać wieloma niezależnymi światami Minecraft z poziomu jednego serwera. Zamiast stawiać osobne instancje dla każdego trybu gry, wszystkie światy działają razem - gracze przechodzą między nimi bez opuszczania serwera.

Plugin jest rozwijany od 2011 roku i należy do ścisłej czołówki najpobierańszych pluginów na SpigotMC. Działa na Spigot, Paper i Purpur w wersjach od 1.13 do 1.21.x. Kod źródłowy jest dostępny na GitHub.

Sam Multiverse-Core to rdzeń całego ekosystemu. Do niego dołącza się opcjonalne moduły:

  • Multiverse-Portals - tworzenie własnych, niestandardowych portali między światami
  • Multiverse-NetherPortals - powiązanie portali netheru i końca z konkretnymi światami
  • Multiverse-Inventories - oddzielny ekwipunek, zdrowie i głód dla każdego świata

Typowe zastosowania na polskich serwerach to serwery z oddzielnym survivatem i kreacją, serwery hubowe z lotniskiem (lobby) i kilkoma trybami gry, sieci serwerów z próbnym światem PvP, sezonowe resety mapy bez usuwania starych danych oraz światy eventowe pojawiające się cyklicznie.

Tworzenie światów

Tworzenie nowego świata to jedna komenda. Podstawowa składnia:

/mv create [nazwa] [środowisko]

Środowisko określa klimat świata - możliwe wartości to normal, nether i the_end. Przykłady użycia:

/mv create survival normal
/mv create kreatywny normal
/mv create podziemia nether
/mv create kres the_end
/mv create ploskie normal -t flat

Parametr -t (type) określa typ generacji terenu. Dostępne typy to:

  • normal - standardowa generacja Minecrafta
  • flat - płaski świat (jak w trybie kreatywnym)
  • amplified - wyolbrzymiony teren, bardzo wysokie góry
  • large_biomes - powiększone biomy, rzadsze przejścia

Aby załadować już istniejący świat, który znajduje się w folderze serwera, użyj komendy /mv import:

/mv import NazwaFolderu normal

Jeśli chcesz usunąć świat z Multiverse (bez kasowania plików z dysku):

/mv remove NazwaSwiata

Aby trwale usunąć świat razem z plikami - co jest nieodwracalne:

/mv delete NazwaSwiata

Lista wszystkich zarządzanych światów z ich statusem:

/mv list

Typy generatorów i światy specjalne

Multiverse-Core obsługuje zewnętrzne generatory terenu - pluginy, które zastępują domyślną generację Minecrafta własnym algorytmem. Popularne generatory kompatybilne z Multiverse to Iris World Generator, Terra oraz EpicWorldGenerator (płatny). Żeby stworzyć świat z zewnętrznym generatorem:

/mv create NazwaSwiata normal -g NazwaGeneratora

Na przykład dla Iris:

/mv create piękne normal -g Iris:overworld

Seed świata ustawia się parametrem -s:

/mv create survival normal -s 123456789

Ten sam seed na różnych serwerach da identyczną mapę, co przydaje się przy resetach sezonu - możesz podać graczom seed poprzedniego sezonu, żeby mogli go odwiedzić w trybie singleplayer.

Płaskie światy możesz dostosować przez Minecraft Superflat preset. Multiverse przekazuje preset do silnika gry przez parametr -g lub poprzez bezpośrednią edycję pliku worlds.yml:

kreatywny_flat:
  generator: ""
  seed: 0
  type: FLAT
  generateStructures: false

Wyłączenie generowania struktur (generateStructures: false) przyspiesza generację i jest zalecane dla płaskich światów kreatywnych, gdzie wioski i twierdze nie mają sensu.

Teleportacja między światami

Podstawowa komenda teleportacji do świata:

/mv tp [gracz] [świat]

Gracz teleportuje samego siebie:

/mv tp survival

Admin teleportuje konkretnego gracza:

/mv tp Rabus kreatywny

Każdy świat ma własny spawn, który ustawia się komendą:

/mv setspawn

Wykonaj ją stojąc dokładnie tam, gdzie chcesz, żeby gracze lądowali po teleportacji do tego świata. Spawn świata jest niezależny od spawna globalnego serwera (EssentialsX zarządza tym przez /setspawn).

Gracz może sprawdzić, w jakim świecie aktualnie przebywa:

/mv who

Lista graczy posortowana według światów, w których przebywają:

/mv who all

Możesz ograniczyć dostęp do świata tylko dla określonych rang przez uprawnienia. Domyślnie każdy gracz może wejść do każdego świata przez /mv tp, ale możesz to zmienić przez plugin do uprawnień, np. LuckPerms - usuwając uprawnienie multiverse.access.NazwaSwiata dla danej rangi.

Konfiguracja per świat

Każdy świat można skonfigurować osobno. Komendy /mv modify pozwalają zmieniać właściwości świata w czasie rzeczywistym:

/mv modify set gamemode creative KreatywnySwiat
/mv modify set pvp false MirnySwiat
/mv modify set allowweather false LobbySwiat
/mv modify set difficulty hard SurvivalSwiat

Możliwe właściwości do ustawienia:

Właściwość Wartości Opis
gamemode survival, creative, adventure, spectator Domyślny tryb gry przy wejściu
pvp true / false Czy gracze mogą atakować innych graczy
allowweather true / false Czy w świecie występuje pogoda (deszcz, burza)
difficulty peaceful, easy, normal, hard Poziom trudności
hunger true / false Czy gracze tracą głód
keepspawninsection true / false Czy spawn chunk pozostaje załadowany
spawnanimalrates liczba całkowita Częstotliwość spawnowania zwierząt
spawnmonsterrates liczba całkowita Częstotliwość spawnowania potworów

Wszystkie ustawienia są zapisywane w pliku plugins/Multiverse-Core/worlds.yml. Możesz też edytować go ręcznie, gdy serwer jest wyłączony - na przykład żeby skonfigurować wiele światów naraz. Po ręcznej edycji konieczny jest restart lub komenda /mv reload.

Przykładowy fragment worlds.yml dla świata lobby:

lobby:
  pvp: false
  scale: 1.0
  respawnWorld: lobby
  allowWeather: false
  difficulty: PEACEFUL
  animals:
    spawn: false
    exceptions: []
  monsters:
    spawn: false
    exceptions: []
  currency: -1
  price: 0.0
  gameMode: ADVENTURE
  autoLoad: true

Multiverse-Portals

Multiverse-Portals to osobny moduł (osobny plik .jar), który dodaje możliwość tworzenia własnych, niestandardowych portali między światami. Zamiast naturalnych portali nether (obsydian + ogień), możesz zbudować portal z dowolnych bloków i zdefiniować, dokąd prowadzi.

Instalacja jest prosta - wrzuć plik Multiverse-Portals.jar obok Multiverse-Core.jar do folderu plugins/ i uruchom serwer.

Tworzenie portalu:

  1. Zbuduj strukturę portalu z dowolnych bloków (np. ramka z kamienia)
  2. Wybierz dwa narożne bloki portalu przez /mvp wand - otrzymasz "różdżkę" do zaznaczania
  3. Kliknij lewym przyciskiem na pierwszy narożnik i prawym na drugi
  4. Utwórz portal komendą /mvp create NazwaPortalu
  5. Ustaw cel - świat, do którego prowadzi portal: /mvp modify dest w:NazwaSwiata NazwaPortalu

Typy celów portalu (prefiks przed nazwą):

  • w:NazwaSwiata - teleportacja do spawnu wskazanego świata
  • w:NazwaSwiata:x,y,z - teleportacja do konkretnych współrzędnych
  • w:NazwaSwiata:x,y,z:yaw:pitch - teleportacja z określonym kierunkiem patrzenia
  • e:NazwaPortalu - teleportacja do innego portalu Multiverse

Portal możesz zabezpieczyć uprawnieniem, żeby tylko gracze z określoną rangą mogli z niego korzystać:

/mvp modify safe false NazwaPortalu

Możesz też ustawić opłatę za użycie portalu (wymaga Vault):

/mvp modify price 100 NazwaPortalu
/mvp modify currency GOLD_NUGGET NazwaPortalu

Multiverse-NetherPortals

Domyślnie, gdy gracz wchodzi w portal nether w świecie survival, Minecraft teleportuje go do świata o nazwie survival_nether (jeśli istnieje) albo do globalnego netheru. Multiverse-NetherPortals pozwala precyzyjnie kontrolować te powiązania.

Po zainstalowaniu modułu każdy świat ma dwie właściwości:

  • nether - do jakiego świata prowadzi portal nether
  • end - do jakiego świata prowadzi portal końca (End portal)

Ustawiasz je komendą:

/mvnp set nether survival_nether survival
/mvnp set end survival_the_end survival

Dzięki temu możesz mieć:

  • survival → nether: survival_nether, end: survival_the_end
  • survival_sezon2 → nether: nether_sezon2, end: end_sezon2
  • event → nether: survival_nether (gracze eventowi korzystają ze wspólnego netheru)

Bez tego modułu portale nether na serwerach z wieloma światami zachowują się nieprzewidywalnie - gracze często lądują w złym świecie lub nie mogą skorzystać z portalu w ogóle.

Plik konfiguracyjny modułu (plugins/Multiverse-NetherPortals/config.yml) pozwala też ustawić globalne zachowanie portali gdy brakuje przypisania oraz kontrolować, czy portale mogą generować nowe portale po drugiej stronie:

portal-search-radius: 128
use-only-nether-portals-in-nether: true

Multiverse-Inventories

Multiverse-Inventories to jeden z najpotężniejszych modułów w ekosystemie Multiverse. Sprawia, że każdy świat (lub grupa światów) ma osobny ekwipunek, paski serca, głód, poziom doświadczenia i efekty statusu. Gracz przechodzący z survivalu do świata kreatywnego nie przenosi ze sobą swoich diamentowych narzędzi - każdy świat to osobna "postać".

Kluczowy koncept to grupy (groups) - zestawy światów współdzielących ekwipunek. Domyślna konfiguracja tworzy jedną grupę dla świata głównego i jedną globalną. Możesz tworzyć własne:

/mvinv addgroup survival survival survival_nether survival_the_end

Powyższa komenda tworzy grupę survival obejmującą trzy światy - overworld, nether i end należące do tego samego sezonu. Gracz zachowuje ekwipunek między tymi trzema wymiarami, ale traci go przechodząc do innej grupy.

Dodawanie i usuwanie światów z grupy:

/mvinv addworld survival event_world
/mvinv removeworld survival event_world

Udostępnianie ekwipunku globalnie (bez izolacji):

/mvinv togglesharing survival

Konfiguracja zaawansowana znajduje się w plugins/Multiverse-Inventories/config.yml. Ważna opcja to first_run - gdy ustawiasz moduł na działającym serwerze, istniejące ekwipunki graczy mogą wymagać migracji. Plugin oferuje mechanizm zachowania ich przez default_ungrouped_world.

Popularne przypadki użycia Multiverse-Inventories na polskich serwerach:

  • Oddzielenie trybu przetrwania od trybu kreatywnego - gracze nie przenoszą surowców między trybami
  • Świat minigier z osobnym ekwipunkiem startowym - każdy turniej zaczyna się "od zera"
  • Próbna mapa przed sezoonowym resetem - gracze testują bez ryzyka utraty postępów
  • Świat eventowy z pre-generowanym ekwipunkiem - gracz wchodzi, dostaje zestaw, nie traci własnych rzeczy

Komendy

Pełna lista najważniejszych komend Multiverse-Core:

Komenda Opis
/mv create [nazwa] [env] Tworzy nowy świat
/mv import [nazwa] [env] Importuje istniejący folder jako świat
/mv remove [świat] Usuwa świat z Multiverse (pliki zostają)
/mv delete [świat] Trwale usuwa świat wraz z plikami (NIEODWRACALNE)
/mv tp [gracz] [świat] Teleportuje gracza do świata
/mv list Lista wszystkich zarządzanych światów
/mv info [świat] Szczegółowe informacje o świecie
/mv setspawn Ustawia spawn aktualnego świata
/mv spawn [gracz] Teleportuje na spawn aktualnego świata
/mv modify set [właściwość] [wartość] [świat] Zmienia właściwość świata
/mv conf Globalna konfiguracja pluginu
/mv reload Przeładowuje konfigurację
/mv unload [świat] Wyładowuje świat z pamięci (pliki zostają)
/mv load [świat] Ładuje wcześniej wyładowany świat
/mv who [świat] Lista graczy w danym świecie
/mv version Wersja pluginu i diagnostyka

Uprawnienia

Multiverse-Core używa precyzyjnego systemu uprawnień. Najważniejsze węzły do przypisania przez WorldGuard lub LuckPerms:

Uprawnienie Co daje
multiverse.access.NazwaSwiata Wejście do konkretnego świata przez portal/teleport
multiverse.teleport.self.w Teleportacja samego siebie do świata (/mv tp)
multiverse.teleport.other.w Teleportacja innych graczy do świata
multiverse.core.spawn.self Użycie /mv spawn dla siebie
multiverse.core.spawn.other Teleportacja innych na spawn świata
multiverse.core.list.worlds Wyświetlenie listy światów (/mv list)
multiverse.core.info Wyświetlenie informacji o świecie (/mv info)
multiverse.core.create Tworzenie nowych światów
multiverse.core.import Importowanie światów z dysku
multiverse.core.delete Trwałe usuwanie światów
multiverse.core.modify Modyfikacja właściwości światów
multiverse.core.setspawn Ustawianie spawnu świata

Zwykłym graczom wystarczy multiverse.access.NazwaSwiata dla każdego świata, który ma być dla nich dostępny, oraz multiverse.teleport.self.w. Uprawnienia tworzenia, usuwania i modyfikowania zarezerwuj wyłącznie dla zaufanych administratorów - usunięty świat to nieodwracalna utrata danych.

Jeśli chcesz, żeby konkretny świat był dostępny dla wszystkich bez żadnych uprawnień, możesz to ustawić w konfiguracji świata:

/mv modify set access default NazwaSwiata

Powiązane poradniki: EssentialsX (teleportacja, warpy), WorldGuard (ochrona regionów per świat), katalog wszystkich pluginów.