Guides / Building & Resources

Pakiet skórek Bedrock to cztery pliki, a dwa z jego trybów awarii są ciche

Dwa UUID, które muszą się różnić, plik językowy, który nie jest opcjonalny, oraz klucze skórek, które usuwają znaki interpunkcyjne — więc „Moja skórka!” i „Moja skórka?” stają się jedną skórką bez błędu.

.mcpack to zip z innym rozszerzeniem, a pakiet skórek w środku wymaga dokładnie czterech rodzajów plików:

manifest.json      a header and a skin_pack module, each with its own UUID
skins.json         one entry per skin: texture, geometry, and a KEY
texts/en_US.lang   the display names — skins.json holds only keys
*.png              the textures themselves

Trzy z czterech łatwo jest zrobić poprawnie. Ciekawe awarie wynikają z relacji między nimi.

Dwa UUID muszą się różnić

manifest.json zawiera UUID w swoim header i kolejny w swoim module skin_pack:

{
  "format_version": 1,
  "header":  { "name": "…", "uuid": "…", "version": [1, 0, 0] },
  "modules": [ { "type": "skin_pack", "uuid": "…", "version": [1, 0, 0] } ]
}

Są to dwie oddzielne tożsamości — pakiet i zawartość pakietu — a ponowne użycie jednej wartości dla obu jest prawdziwym błędem, mimo że nic nie zgłasza problemu podczas kompilacji.

Istnieje druga, bardziej subtelna konsekwencja: ponowny import z tymi samymi UUID jest traktowany jako ten sam pakiet, a Minecraft cicho zachowuje kopię, którą już posiada. Edycja pakietu, ponowna kompilacja z tymi samymi identyfikatorami i ponowny import wygląda, jakby nic się nie stało. Każda kompilacja z tej strony otrzymuje nowe UUID dokładnie z tego powodu, dlatego też ponowny import edytowanego pakietu wymaga nowego pobrania, a nie ponownego spakowania starego.

Plik językowy nie jest opcjonalny

skins.json nigdy nie zawiera nazwy wyświetlanej. Zawiera klucz, a texts/en_US.lang mapuje ten klucz na tekst:

skinpack.<PackKey>=My Pack
skin.<PackKey>.<SkinKey>=My First Skin

Wyślij pakiet bez pliku językowego, a nic się nie stanie — każda skórka po prostu pojawi się w grze pod swoim surowym kluczem. Jest to najczęstszy powód, dla którego ręcznie złożony pakiet wygląda na uszkodzony, mimo że jest poprawny.

Klucze usuwają znaki interpunkcyjne, a duplikaty się łączą

Klucz musi być alfanumeryczny. Wszystko inne jest usuwane:

Twoja nazwaklucz
My Skin!MySkin
My Skin?MySkin
Skin #2Skin2
!!!Skin1 (awaryjny, według pozycji)

Pierwsze dwa wiersze to pułapka. Dwie skórki nazwane odrębnie przez człowieka stają się jednym kluczem, a zduplikowany klucz nie powoduje błędu — cicho łączy się w jedną skórkę w grze. Przesyłasz dwanaście skórek, dostajesz jedenaście, i nic nie mówi ci, która zaginęła.

Kompilator tutaj broni się przed tym, dodając licznik do każdego klucza, którego już użył, więc drugi MySkin staje się MySkin1. Warto wiedzieć, jeśli składasz pakiet ręcznie: sprawdzenie, którego potrzebujesz, dotyczy oczyszczonych nazw, a nie tych, które wpisałeś.

Nazwa składająca się wyłącznie ze znaków interpunkcyjnych nie pozostawia nic, więc wraca do Skin plus jej pozycja na liście.

Slim potrzebuje odpowiedniego ciągu geometrii

Każdy wpis nazywa model, a są dwa:

  • geometry.humanoid.custom — klasyczny, ramiona 4-pikselowe
  • geometry.humanoid.customSlim — slim, ramiona 3-pikselowe

Błąd w tym jest zwykłą przyczyną skórki o proporcjach Alex pojawiającej się z kanciastymi ramionami Steve'a. Tekstura jest w porządku; model jest tym, o który proszono. Kreator pakietów wnioskuje to, próbując czwartą kolumnę ramienia, ale ręcznie napisany skins.json musi to wyraźnie określić, a dwa ciągi różnią się czterema znakami na końcu.

Wpisy zawierają również "type": "free", a peleryna to opcjonalny dodatkowy plik PNG, do którego odwołuje się ten sam wpis — peleryna podróżuje wewnątrz pakietu skórek, a nie jako osobne pobieranie.

Kreator paczek skórek →

More guides

Browse all →

Szukasz innych narzędzi do Minecrafta?

Zestaw generatorów, podglądów i konwerterów działających w przeglądarce — wszystkie za darmo.