Migracja do Sponge

Celem tych artykułów jest pomoc aktualnym właścicielom serwerów w przenoszeniu ich z innych platform na Sponge.

Ostrzeżenie

Wykonaj kopię zapasową plików serwera przed rozpoczęciem migracji. Gdyby coś poszło nie tak, nadal będziesz miał wtedy swoje pliki!

Migracja do Sponge

Aby przenieść serwer na SpongeForge lub SpongeVanilla przejrzyj poniższe sekcje. Większość instrukcji dla tych implementacji jest taka sama, wszelkie ewentualne różnice są zaznaczone.

Migracja z CraftBukkit lub Spigot

Informacja

Spigot jest zmodyfikowaną wersją CraftBukkit.

Światy

Forge i tym samym SpongeForge (oraz SpongeVanilla), korzystają z tej samej struktury folderów świata co zwykły Minecraft. Umieszcza on wymiary nether (zwykle world_nether) i end (zwykle world_the_end) wewnątrz folderu world. Natomiast Bukkit i Spigot nie używaj tego systemu do zapisu światów, przez co konieczna jest migracja.

SpongeForge i SpongeVanilla zapewniają w pełni zautomatyzowany skrypt, który przekonwertuje Twoje światy. Oto jak z niego skorzystać:

  1. Wyłącz Twój serwer Bukkit lub Spigot i zrób kopię zapasową całego folderu.

  2. Zainstaluj SpongeForge lub SpongeVanilla w folderze, w którym uruchamiałeś swój stary serwer, usuń pliki jar Bukkita lub Spigota. Jeśli nie jesteś pewien jak poprawnie zainstalować SpongeForge lub SpongeVanilla, przeczytaj ten artykuł.

  3. Uruchom serwer Sponge, migrator powinien zostać uruchomiony automatycznie.

  4. Migrator pobierze z pliku bukkit.yml wartość world-container i przejrzy ten folder szukając światów to przetransferowania. Jeśli nie znajdzie tego pliku (lub nie będzie w stanie go odczytać) to przeszuka za światami główny folder serwera (co jest domyślnym ustawieniem CraftBukkita).

  5. W tym momencie rozpoczyna się migracja. Światy są kopiowane z miejsca, które nazywamy kontenerem światów do folderu zdefiniowanego w pliku Plik server.properties za pomocą klucza level-name. Oryginalne pliki w kontenerze światów pozostają niezmienione, podczas migracji jest wykonywana ich kopia.

  6. Bukkit umieszcza rzeczy w dziwnych miejscach (i dziwnie je nazywa), przez co muszą zostać wprowadzone 2 ważne zmiany. Poprawki te są oparte tylko na założeniach (ze względu na strukturę Bukkita).

    • Pierwszą poprawką jest zmiana nazwy każdego folderu, którego nazwa zaczyna się od właściwości level-name i kończy nazwą wymiaru (_nether/_the_end) na odpowiednio DIM-1 i DIM1.

    • The second fix is to migrate up the region data within a Bukkit Vanilla nether/the_end. Bukkit puts this data into DIM-1\region and DIM1\region respectively whereas Vanilla/Forge expect region to be in the root of the world’s folder structure.

Migrator nie jest w stanie zdobyć wszystkich potrzebnych wartości konfiguracji. Z tego powodu należy zmienić kilka opcji ręcznie, aby świat poprawnie działał po załadowaniu go na SpongeForge lub SpongeVanilla. Zaleca się skorzystać z wtyczki do zarządzania światami aby ustawić odpowiednie opcje i faktycznie załadować świat.

Informacja

Jak już wcześniej zostało wspomniane, migracja światów opiera się na kilku założeniach (które w niektórych przypadkach mogą okazać się nie do końca poprawne). Dlatego Sponge nie załaduje światów bezpośrednio, musisz skorzystać z wtyczki aby to zrobić.

Jeśli wszystko poszło dobrze, to logi generowane w konsoli podczas migracji powinny wyglądać mniej więcej tak:

[17:32:29] [Server thread/INFO] [Sponge]: Checking for worlds that need to be migrated...
[17:32:29] [Server thread/INFO] [Sponge]: Migrating [world_lol] from [.].
[17:32:29] [Server thread/INFO] [Sponge]: Migrated world [world_lol] from [.] to [.\world\world_lol]
[17:32:29] [Server thread/INFO] [Sponge]: Migrating [world_nether] from [.].
[17:32:29] [Server thread/INFO] [Sponge]: Migrated world [world_nether] from [.] to [.\world\DIM-1]
[17:32:29] [Server thread/INFO] [Sponge]: Migrating [world_the_end] from [.].
[17:32:29] [Server thread/INFO] [Sponge]: Migrated world [world_the_end] from [.] to [.\world\DIM1]
[17:32:29] [Server thread/INFO] [Sponge]: [3] worlds have been migrated back to Vanilla's format.

Po zakończeniu migracji powinieneś mieć kopię Twoich światów w strukturze, którą Sponge może odczytać. Oryginalne pliki światów pozostają nietknięte w swoich dotychczasowych lokacjach, na wypadek gdyby coś poszło źle.

Pliki konfiguracji serwera i świata

Zarówno CraftBukkit jak i Sponge wykorzystują pliki, które są dostępne przez Minecraft. Pliki te mogą być ponownie użyte, jeżeli są obecne w aktualnej instalacji CraftBukkit:

  • server.properties

  • banned-ips.json

  • banned-players.json

  • ops.json

  • usercache.json

  • whitelist.json

Poniższe pliki są używane jedynie przez CraftBukkit więc mogą zostać usunięte jako, że nie są wykorzystywane przez Sponge:

  • bukkit.yml

  • commands.yml

  • help.yml

  • permissions.yml

Osoby migrujące ze Spigot mogą wykorzystać istniejący plik spigot.yml. Niektóre elementy w spigot.yml mają swoje odpowiedniki w global.conf i możliwe jest przeniesienie wartości elementów, które występują w obydwu plikach.

Pluginy

Sponge nie ma wbudowanej obsługi pluginów Bukkit. Jendak kilku członków społeczności re-implementuje Bukkit API za pomocą specjalnej wtyczki Sponge, która ma umożliwić funkcjonowanie pluginów Bukkit na serwerze Sponge. Wtyczka ta jednak nie została jeszcze wydana.

Ore jest oficjalnym repozytorium pluginów Sponge i to właśnie pobieranie pluginów z niego jest zalecane. Podczas szukania zamienników dla pluginów Bukkit, weź pod uwagę poniższe kwestie:

  • Nie wszyscy deweloperzy pluginów na Bukkit zdecydowali się przenieść ich plugin na Sponge. W międzyczasie, może ktoś stworzy odpowiednik.

  • Nie wszystkie pluginy przeniesione na z Bukkit dokonają automatycznej konwersji plików konfiguracyjnych. To od twórców danego pluginu zależy czy zdecydują się oni na automatyczną konwersje czy nie.

  • Niektóre pluginy przeniesione z Bukkit, mogą mieć zmienioną funkcjonalność lub nawet korzystać z innej struktury konfiguracji.

Migracja z Canary

Światy

Forge i tym samym SpongeForge (oraz SpongeVanilla), korzystają z tej samej struktury folderów świata co zwykły Minecraft. Umieszcza on wymiary nether (zwykle world_nether) i end (zwykle world_the_end) wewnątrz folderu world.

Canary relocates the nether and end dimensions outside of the world folder, which must be remedied if it is desired to retain the nether and end dimensions when running Sponge. However, Canary provides an easy method to convert Canary worlds to a structure usable by Sponge with the /makevanilla command. If the world conversion is successful, the output will be placed in the vanilla folder.

Pliki konfiguracji serwera i świata

Sponge uses many files that are made available by vanilla Minecraft, such as server.properties. Canary, however, does not; the only file it has in common with vanilla Minecraft is usercache.json. Thus, usercache.json is the only file from Canary that can be reused on Sponge.

Nevertheless, it is possible to manually migrate some Canary configuration files to their Sponge counterparts, which have been provided below.

Pliki Canary

Odpowiedniki Sponge

server.cfg <świat>_<wymiar>.cfg

Plik server.properties

<świat>_<wymiar>.cfg

global.conf <wymiar>/dimension.conf

ops.cfg

ops.json

db.cfg

Brak odpowiednika

motd.txt

Brak odpowiednika

Pluginy

SpongeVanilla i SpongeForge nie posiadają wbudowanej obsługi pluginów Canary. Może być jednak możliwa re-implementacja Canary API za pomocą specjalnej wtyczki Sponge.

Ore to oficjalne repozytorium Sponge, w którym można znaleźć wtyczki. Zalecane jest pobierać wtyczki Sponge tylko z Ore. Szukając zamienników dla Twoich pluginów Canary, miej na uwadze, że:

  • Nie wszyscy twórcy pluginów Canary zdecydowali się przepisać swoje pluginy na Sponge API. W między czasie ktoś inny mógł jednak stworzyć wygodny ich odpowiednik.

  • Nie wszystkie wtyczki, które zostały przepisane z Canary automatycznie przekonwertują swoje pliki konfiguracyjne. To czy to zrobią zależy od decyzji poszczególnych twórców.

  • Niektóre z pluginów Sponge przepisanych z Canary mogą zmienić swoją funkcjonalność albo mogą korzystać z całkiem innej struktury konfiguracji.

Migracja z Forge

Migrating from a plain Forge server to a SpongeForge or SpongeVanilla server is a fairly simple process that needs little-to-no preparatory work.

Migracja na SpongeForge

You must first ensure you are running a version of Forge that is compatible with the version of SpongeForge your plan to use. You may find recommended builds of Forge at Forge Downloads. If you are using any other mods, they must also be updated.

When you are ready to install SpongeForge, you may proceed with the following steps:

  1. Wyłącz swój serwer Forge jeśli jest uruchomiony.

  2. Pobierz SpongeForge ze strony Sponge i Forge ze strony MinecraftForge.

  3. Umieść SpongeForge.jar w folderze mods.

  4. Uruchom serwer i baw się dobrze!

Informacja

Jeśli SpongeForge jest jedynym modem na serwerze, gracze będą mogli zalogować się korzystając z domyślnego clienta. Inne mody mogą wymagać od graczy instalacji Forge.

Migracja na SpongeVanilla

Ostrzeżenie

Jeśli migrujesz na SpongeVanilla: Stracisz wszystkie dane modów, bloki i moby - SpongeVanilla nie obsługuje modów Forge. Miej to na uwadze podczas wyboru pomiędzy SpongeForge i SpongeVanilla.

Proces migracji jest prawie identyczny jak powyżej:

  1. Wyłącz swój serwer Forge jeśli nadal jest uruchomiony.

  2. Pobierz SpongeVanilla i domyślny serwer od Mojang.

  3. Umieść swoje światy i pliki konfiguracyjne w folderze serwera.

  4. Włącz serwer uruchamiając plik spongevanilla.jar.

Migracja z Vanilla

Administrators of vanilla Minecraft servers can migrate to Sponge easily because Forge, and thus SpongeForge (and SpongeVanilla), use the same world structure as vanilla Minecraft. Sponge also uses the same files used by vanilla Minecraft, such as server.properties.

Na początku powinieneś zdecydować czy chcesz korzystać z SpongeForge czy z SpongeVanilla.

Informacja

Obie implementacje Sponge potrafią obsłużyć niezmodyfikowane clienty. Miej na uwadze, że do SpongeForge odnosi się to tylko dopóki nie zainstalujesz modów, które wymagają modyfikacji clienta.

  1. Wyłącz swój serwer Vanilla jeśli nadal jest uruchomiony.

  2. Pobierz SpongeVanilla lub SpongeForge.

  3. Umieść swoje światy i pliki konfiguracyjne w folderze serwera.

  4. Uruchom swój nowy serwer.

Instalowanie Sponge

Poradniki Instalacja SpongeForge i Instalacja SpongeVanilla zapewniają instrukcje na temat instalacji Sponge podczas migracji.