Migracja do Sponge

The purpose of the articles within this section is to help current server owners to migrate from other server platforms to 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 is a modified fork of 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

CraftBukkit and Sponge both share files that are made available by vanilla Minecraft. These files can thus be reused on Sponge, if they are already present in your CraftBukkit installation:

  • server.properties
  • banned-ips.json
  • banned-players.json
  • ops.json
  • usercache.json
  • whitelist.json

The following files are used by CraftBukkit only, and can be removed because Sponge does not use them:

  • bukkit.yml
  • commands.yml
  • help.yml
  • permissions.yml

Users who are migrating from Spigot may wish to compare spigot.yml to global.conf in Sponge. Some keys in spigot.yml have counterparts in global.conf, and it may be desirable to copy over the values of any keys that are present in both files.

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 is Sponge’s official repository for finding plugins, and it is recommended to download all Sponge plugins from Ore. When finding replacements for your Bukkit plugins, there are a few points to keep in mind:

  • Not all Bukkit developers have chosen to port their plugins to Sponge. Over time, however, someone else may create a suitable replacement.
  • Not all Sponge plugins that are ported from Bukkit will automatically convert configuration files. Individual plugin developers make the decision on whether or not to automatically convert configuration files.
  • Some Sponge plugins that are ported from Bukkit may change in functionality, or may not even use the same configuration structure.

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 Instalowanie SpongeForge i Installing SpongeVanilla zapewniają instrukcje na temat instalacji Sponge podczas migracji.