Multiverse-Core: wiele światów na jednym serwerze Minecraft

Multiverse-Core: wiele światów na jednym serwerze Minecraft

Jeden serwer, cztery światy: główny survival, creative do budowania, świat zasobów, mini-gry albo mapy eventowe. Multiverse-Core trzyma całą tę konstrukcję w porządku bez osobnych proxy i BungeeCord. Ten przewodnik obejmuje instalację, komendy, rozdzielenie ekwipunków, łączenie portalami i prawdziwe pułapki wydajnościowe.

Czym jest Multiverse i po co go używać

Multiverse-Core powstał w 2011 roku i do dziś pozostaje standardem zarządzania światami na rdzeniach kompatybilnych z Bukkit. Działa na CraftBukkit, Spigot, Paper, Purpur i większości forków. W skrócie: vanilla Minecraft obsługuje trzy światy (overworld, nether, end), Multiverse pozwala stworzyć dowolną liczbę własnych, skonfigurować każdy osobno i teleportować graczy między nimi.

Bez wtyczki każdy dodatkowy świat trzeba by ręcznie wpisać do bukkit.yml, bez UI i bez zarządzania ustawieniami w locie. Multiverse rozwiązuje to jedną komendą /mv create i stosem opcji ponad nią.

Wtyczka składa się z czterech modułów. Multiverse-Core jest wymagany, reszta opcjonalna:

  • Multiverse-Core - baza, zarządzanie światami, teleporty, ustawienia.
  • Multiverse-Portals - bloki portali teleportujące do skonfigurowanego świata przy wejściu.
  • Multiverse-Inventories - osobne ekwipunki, XP, głód, efekty per świat lub grupa światów.
  • Multiverse-NetherPortals - łączy vanilla portale nether/end z parami światów.

Na serwerach z rozdzielonymi trybami zwykle stoją wszystkie cztery. Prosty build survival wystarcza z samym Core.

Instalacja

Pliki jar pobieramy z Modrinth lub SpigotMC. Na 2026 rok aktualna jest gałąź 4.x dla 1.20+ oraz 5.0 w becie dla najnowszych Paper.

Wrzucamy do plugins/:

plugins/Multiverse-Core.jar
plugins/Multiverse-Portals.jar
plugins/Multiverse-Inventories.jar
plugins/Multiverse-NetherPortals.jar

Restart serwera. Po starcie pojawią się foldery plugins/Multiverse-Core/, plugins/Multiverse-Portals/ itd. z konfigami. Domyślne ustawienia działają, nie trzeba od razu w nie wchodzić.

Sprawdzenie instalacji:

/mv version
/mv list

Na liście będą domyślne world, world_nether, world_the_end które Multiverse importuje automatycznie.

Podstawowe komendy

Pełna lista przez /mv help. W praktyce używa się około dziesięciu.

/mv create <name> <env>      utwórz świat (env: NORMAL, NETHER, THE_END)
/mv import <name> <env>      zaimportuj istniejący folder świata
/mv list                     lista załadowanych światów
/mv tp <world>               teleportacja do świata
/mv unload <world>           wyładuj świat z pamięci
/mv load <world>             załaduj z powrotem
/mv remove <world>           usuń wpis z konfigu (folder ręcznie)
/mv delete <world>           usuń świat całkowicie (z folderem)
/mv modify <prop> <val>      zmień parametr aktualnego świata
/mv setspawn                 ustaw spawn świata na pozycji gracza
/mv info <world>             pokaż wszystkie parametry świata

Tworzenie świata creative z płaską generacją:

/mv create creative NORMAL -t FLAT -g VoidGen

Flagi: -t typ generacji (NORMAL, FLAT, AMPLIFIED, LARGEBIOMES), -g nazwa pluginu generatora, -s seed.

Import świata wgranego ręcznie:

/mv import skyblock_arena NORMAL

Jeśli folder już jest w world_container, Multiverse podchwyci go i wpisze do swojej konfiguracji.

Ustawienia świata

Nowy świat dostaje domyślne parametry. Zmieniamy przez /mv modify:

/mv modify set gamemode CREATIVE
/mv modify set pvp false
/mv modify set monsters false
/mv modify set animals true
/mv modify set difficulty PEACEFUL
/mv modify set keepspawninmemory false
/mv modify set hunger false

Przydatne parametry:

  • gamemode - SURVIVAL / CREATIVE / ADVENTURE / SPECTATOR. Gracz przełącza się automatycznie przy wejściu.
  • pvp - true/false, vanilla PvP.
  • monsters / animals - spawn wrogich i pasywnych mobów. W creative monstery wyłączamy, inaczej budowle ucierpią.
  • keepspawninmemory - czy 19x19 chunków spawnu ma być stale w pamięci. Więcej o tym poniżej.
  • hunger - czy spada głód. Wygodne do wyłączania na serwerach budowlanych.
  • respawnworld - w którym świecie gracz odradza się po śmierci.

Wszystkie ustawienia leżą w plugins/Multiverse-Core/worlds.yml. Można edytować ręcznie, po edycji /mv reload.

Multiverse-Inventories: rozdzielanie ekwipunków

Jeśli na serwerze są survival i creative bez rozdzielonych ekwipunków, gracze przeniosą diamenty z creative do survivalu w 30 sekund. Multiverse-Inventories rozwiązuje to przez grupy światów.

Tworzymy grupę dla survivalu:

/mvinv group add survival_group
/mvinv group addworld survival_group world
/mvinv group addworld survival_group world_nether
/mvinv group addworld survival_group world_the_end

Osobna grupa dla creative:

/mvinv group add creative_group
/mvinv group addworld creative_group creative

W ramach jednej grupy ekwipunek jest wspólny, między grupami rozdzielony. Domyślnie rozdziela się wszystko: przedmioty, XP, głód, zdrowie, efekty, statystyki. Aby rozdzielić tylko ekwipunek, a XP zostawić wspólne, w plugins/Multiverse-Inventories/groups.yml poprawiamy shares:

groups:
  survival_group:
    worlds:
    - world
    - world_nether
    - world_the_end
    shares:
    - inventory
    - armor
    - ender_chest

Bez experience na liście shares XP pozostaje globalne. Wygodne dla serwerów z ekonomią XP albo wspólną progresją.

Multiverse-Portals: bloki portali

Vanilla obsydianowy portal prowadzi do standardowego nethera. Jeśli mamy drugi nether albo chcemy portal do huba, potrzebne jest Multiverse-Portals.

Tworzenie portalu:

  1. Bierzemy wand, domyślnie drewniany topór: /mvp wand.
  2. Zaznaczamy obszar między dwoma punktami jak w WorldEdit (LPM pierwszy, PPM drugi).
  3. Wykonujemy /mvp create <name> <destination>.

Przykład - portal z huba do creative:

/mvp create hub_to_creative w:creative

Prefix w: oznacza, że celem jest świat. Można podać współrzędne:

/mvp create spawn_portal w:world:100,64,100

Albo inny portal po nazwie:

/mvp create return_portal p:hub_to_creative

Portal wywołuje się przy wejściu gracza w zaznaczony obszar. Wewnątrz może być dowolny blok: woda, powietrze, pajęczyna, light block. Często stosuje się light blocki albo pajęczyny dla niewidzialnych portali.

Ograniczenie dostępu przez uprawnienia:

/mvp modify access add donor hub_to_creative

Teleport zadziała tylko dla graczy z multiverse.access.hub_to_creative albo z permem donor przez plugin uprawnień.

World Generators: niestandardowa generacja

Parametr -g w /mv create przyjmuje nazwę pluginu generatora. Popularne opcje:

  • TerraformGenerator - realistyczne krajobrazy, góry, biomy.
  • EpicWorldGenerator - płatny, bardzo szczegółowa generacja.
  • Terralith przez data pack - rozszerzone biomy na vanilli.
  • VoidGenerator - pusty świat dla skybloku albo build serwera.
  • IrisWorlds - zaawansowana modułowa generacja.

Przykład z Terra:

/mv create wild_world NORMAL -g Terra:OVERWORLD

Po nazwie generatora po dwukropku idzie preset. Nazwy presetów są w dokumentacji konkretnego pluginu.

Ważne: świat utworzony z customowym generatorem wymaga, by ten plugin pozostał zainstalowany. Po usunięciu Terra albo TerraformGenerator świat dalej się ładuje, ale nowe chunki generują się vanilla, co tworzy brzydkie ściany na styku.

Integracja z WorldGuard

WorldGuard trzyma regiony osobno per świat w plugins/WorldGuard/worlds/<world_name>/regions.yml. Multiverse nic tu nie psuje: nowy świat i WorldGuard sam go podchwyci przy pierwszym /rg.

Globalne flagi ustawiamy per świat. Przykład - wyłączenie PvP w creative i blokada griefa creeperów w survivalu:

/rg flag __global__ -w creative pvp deny
/rg flag __global__ -w creative creeper-explosion deny
/rg flag __global__ -w world creeper-explosion deny

Bez -w <world> komenda zadziała tylko w świecie, w którym stoi gracz. Na backendzie to dalej osobne pliki regionów, nie mylić.

Poprawne usuwanie świata

Usuwanie świata to częsty błąd nowicjuszy. /mv remove <world> usuwa tylko wpis z konfigu, folder zostaje na dysku i przy ponownym tworzeniu świata o tej samej nazwie wyskoczą stare chunki.

Poprawna kolejność:

/mv unload <world>
/mv remove <world>

Następnie do world_container i usunięcie folderu:

rm -rf /opt/minecraft/server/old_world

Albo jedną komendą Multiverse, która sama wszystko czyści:

/mv delete <world>

/mv delete jest niebezpieczny - bez potwierdzenia, bez sprawdzania backupu. Na produkcji bezpieczniej unload + backup + remove + ręczne usunięcie folderu.

Default nether albo end też można usunąć przez /mv delete world_nether. Bukkit przy następnym restarcie może odtworzyć vanilla światy z level-name w server.properties i allow-nether=true. Aby temu zapobiec, w bukkit.yml znajdujemy sekcję worlds: i czyścimy stary nether, w server.properties ustawiamy allow-nether=false jeśli nether nie jest potrzebny.

Wydajność: liczenie RAM

Każdy załadowany świat zużywa zasoby. Główne punkty obciążenia:

  • Spawn chunks - 19x19 chunków (361 sztuk) wokół spawnu każdego świata zostaje w pamięci stale, jeśli keepspawninmemory: true. To około 50-80 MB RAM na świat plus stały koszt TPS od ticków bytów.
  • Chunki załadowane przez graczy - view-distance pomnożone przez liczbę graczy i światów.
  • Tickowanie bytów i bloków - każdy świat tickuje osobno. 5 światów z mobami i redstone to pięciokrotnie większa praca.

Co robić na serwerze z 8 światami:

keepspawninmemory: false

Ustawiamy przez /mv modify set keepspawninmemory false dla każdego świata pomocniczego. Główny survival ze spawnem może zostać domyślnie.

W paper.yml albo paper-world-defaults.yml (zależnie od wersji Paper) zmniejszamy simulation-distance dla creative do 4-6, w survivalu zostawiamy 8-10. Na Paper 1.20+ ustawienie przeniesione do per-world paper-world.yml, co jest wygodne.

Obniżamy mob-cap dla creative i światów gier:

spawn-limits:
  monsters: 0
  animals: 0
  water-animals: 0

Jeśli w creative moby nie są potrzebne, wszystko na zero i CPU może odetchnąć.

Backupy

Multiverse nie robi backupów. To zadanie osobnego systemu albo pluginu jak DriveBackupV2. Backupować trzeba WSZYSTKIE foldery światów, nie tylko główny.

Minimalny shell na cron:

#!/bin/bash
SERVER=/opt/minecraft/server
BACKUP=/var/backups/minecraft
DATE=$(date +%Y%m%d_%H%M)
cd "$SERVER"
tar -czf "$BACKUP/worlds_$DATE.tar.gz" world world_nether world_the_end creative resource_world
find "$BACKUP" -name 'worlds_*.tar.gz' -mtime +7 -delete

Przed tar na żywym serwerze warto wysłać save-off i save-all flush przez RCON, potem save-on. Inaczej ryzyko pół-zapisanych chunków w archiwum.

FAQ

Czy Multiverse działa na Folii?

Na 2026 - częściowo. Folia wymaga regionalnego tickowania i nie wspiera całego API Bukkit. Multiverse-Core 5.x jest aktywnie przerabiany pod Folię, 4.x crashuje przy niektórych komendach. Jeśli serwer na Folii, sprawdzaj aktualne release i issue tracker.

Jak usunąć domyślny nether?

/mv unload world_nether, potem /mv remove world_nether. W server.properties ustawiamy allow-nether=false, inaczej Bukkit odtworzy. Folder world_nether usuwamy ręcznie.

Czy mogę mieć różne gamemody w różnych światach?

Tak, przez /mv modify set gamemode CREATIVE. Gracz przełącza się automatycznie przy wejściu. Jeśli EssentialsX albo inny plugin obsługuje /gamemode, upewnij się, że Multiverse ma priorytet, inaczej gracze sami zmienią tryb.

Multiverse vs MyWorlds - co lepsze?

MyWorlds jest lżejszy, prostszy, bez zbędnych modułów. Multiverse to standard z dużym ekosystemem - WorldGuard, EssentialsX i kompatybilność z BungeeCord są pisane pod niego. Do szybkiego dodania paru światów MyWorlds wystarczy. Do serwera z portalami, ekwipunkami i złożoną logiką Multiverse nie ma realnej alternatywy.

Jak sprawić, by gracz odradzał się w konkretnym świecie po śmierci?

/mv modify set respawnworld lobby na świecie źródłowym. Śmierć w tym świecie wyśle gracza do lobby. Domyślny respawnworld to bieżący świat.

Czy mogę sklonować świat ze wszystkimi budowlami?

Tak: /mv clone <source> <target>. Multiverse skopiuje folder, zmieni nazwę, zaimportuje do konfigu. Wygodne dla aren i kopii szablonów.

Co jeśli serwer nie startuje po stworzeniu nowego świata?

Sprawdzamy logs/latest.log. Najczęstsza przyczyna to plugin generatora, który nie został zainstalowany albo jest nieaktualny. Cofamy świat usuwając folder i wpis w worlds.yml, instalujemy odpowiedni generator, tworzymy świat na nowo.

Co dalej

Jeśli stawiasz multi-world serwer pierwszy raz, trzymaj trzy praktyczne uwagi. Pierwsza: pełny backup przed utworzeniem drugiego świata - oszczędza dobę odtwarzania przy błędzie. Druga: ustaw keepspawninmemory: false na wszystkich światach pomocniczych od razu, nie czekaj aż RAM się skończy. Trzecia: kombo Multiverse + Inventories testuj na staging serwerze przed produkcją, logika grup ekwipunków nie jest najbardziej intuicyjna.

Serwer z wieloma światami to atrakcyjny cel DDoS, zwłaszcza przy eventach i dużej publice. MineGuard filtruje ataki L4/L7 przed portem gry i utrzymuje światy dostępne podczas burzy.


Chroń swój serwer przed atakami DDoS

Darmowa ochrona z konfiguracją w 5 minut. 1 TB ruchu w zestawie.

Wypróbuj za darmo


Powiązane artykuły