Poradniki / Budowanie i zasoby
Gąbka i blok struktur to nie ten sam plik
Plik .schem, .litematic i bedrockowy .mcstructure wyglądają na wymienne, dopóki nie przekonwertujesz jednego z nich i nie znikną wszystkie skrzynie, byty i stany bloków.
.schem i .litematic przechowują tę samą budowlę, a konwersja między nimi to moment, w którym większość graczy odkrywa, że oba formaty nigdy nie zgadzały się co do tego, czym budowla jest. Jeden przechowuje pojedynczy region bloków. Drugi może pomieścić kilka nazwanych regionów, każdy z własną paletą. Przenieś miasto między nimi, a domy przetrwają, choć ich zawartość już nie.
Co tak naprawdę przechowuje każdy format
| Format | Gdzie działa | Stany bloków | Bloki encji | Byty |
|---|---|---|---|---|
.schem | Java, WorldEdit/Sponge | tak | tak | tak |
.litematic | Java, Litematica | tak | tak | tak |
.nbt structure | Java, bloki struktur | tak | tak | tak |
.mcstructure | Bedrock | tak | tak | tak |
Kolumny wyglądają identycznie i to jest właśnie pułapka. Różnica tkwi w obsłudze palety i przestrzeni współrzędnych, a nie w liście funkcji.
Paleta to najbardziej kruchy element
Każdy z tych formatów przechowuje bloki jako indeks do palety — listy unikalnych typów bloków używanych w pliku, gdzie każda pozycja zawiera liczbę wskazującą na tę listę. Budowla wykorzystująca kilkaset różnych typów bloków nosi paletę tej wielkości, a pozycje to po prostu liczby całkowite.
Oznacza to, że plik jest czytelny tylko wtedy, gdy czytnik potrafi rozwiązać każdy wpis palety. Blok dodany w nowszej wersji Java nie ma żadnego odpowiednika w Bedrock, więc konwersja z Java do Bedrock musi go zastąpić lub pominąć. Zwykle zastępuje się go powietrzem, a ściana z tajemniczo brakującymi blokami to prawie zawsze właśnie to, a nie uszkodzenie pliku.
Java i Bedrock nazywają ten sam blok inaczej
Tu Java i Bedrock naprawdę się rozchodzą. Bedrock zapisuje stany bloków jako block_type plus zestaw stanów klucz-wartość; Java zapisuje identyfikator z przestrzenią nazw plus mapę stanów. Ten sam fizyczny blok może być minecraft:oak_stairs[facing=east,half=bottom] po jednej stronie i weirdo_direction plus upside_down_bit po drugiej — inne nazwy i wartości stanów, a nie te same w innej kolejności.
Schody, płyty, płoty, murki, drzwi i komponenty redstone to te, które się przekręcają. Schody renderujące się do góry nogami po konwersji to błąd mapowania stanów, a nie zły plik.
Bloki struktur nie przechowują tego, co myślisz
Blok struktur zapisujący do .nbt zapisuje obszar ograniczający, a ten obszar jest ograniczony do 48 bloków na oś. Gra nie dzieli większej budowli — wszystko poza obszarem po prostu nie trafia do pliku. Jeśli przekonwertowana budowla nie ma swojego dalekiego końca, sprawdź oryginalny obszar, zanim zaczniesz winić konwerter.
Byty są przechowywane oddzielnie od bloków w każdym z tych formatów. Ramki na przedmioty, stojaki na zbroję, obrazy i moby nie są blokami, a konwerter, który przechodzi tylko po palecie bloków, po cichu je pominie.
Podejrzyj, zanim zaufasz
Lista materiałów to najszybsza kontrola poprawności: jeśli liczba bloków w przekonwertowanym pliku nie zgadza się z oryginałem, coś zostało zastąpione. Podgląd warstw pokazuje to natychmiast, jeden poziomy plaster na raz, bez ładowania budowli do świata.
Konwertuj między .litematic, .schem, strukturą Java .nbt i Bedrock .mcstructure, z podglądem warstw i listą materiałów, w Konwerterze schematów.