O projekcie
Bedrockus wyciąga z mapy Minecrafta Bedrock cały tekst, pozwala go przetłumaczyć i składa mapę z powrotem.
Co robi
Mapa to archiwum: świat w bazie LevelDB, paczki zasobów i zachowań, funkcje, skrypty. Tekst siedzi w kilkunastu miejscach: tabliczki, książki, nazwy przedmiotów, opisy, dialogi i przyciski NPC, komendy, tablice wyników, pliki językowe paczek. Bedrockus obchodzi je wszystkie, wyjmuje tekst i pokazuje jedną listą, z informacją, skąd pochodzi każdy wiersz.
Tłumaczenie odkłada z powrotem według reguł samej gry. To, co gra potrafi odczytać z pliku językowego, trafia do .lang i dostaje klucz; czego odczytać nie potrafi, wpisywane jest w mapę zwykłym tekstem. Przy okazji komendy w rodzaju say i tell są przepisywane na tellraw — inaczej tłumaczenie nigdy by się w nich nie pojawiło.
Na wyjściu jest zwykły .mcworld: otwiera się w grze jak zawsze i idzie za językiem, który ustawił gracz.
Jak to działa
- Wysyłka. Plik jest rozbierany na serwerze: LevelDB, NBT, archiwa paczek. Wynikiem jest lista wierszy ze współrzędnymi, kategorią i wyjaśnieniem, gdzie każdy wiersz trafi.
- Tłumaczenie. Cała reszta dzieje się w przeglądarce: filtry, szkice, własne klucze. Można tłumaczyć wprost na stronie albo wyeksportować CSV, XLIFF lub .lang, popracować w swoim programie i wczytać plik z powrotem.
- Składanie. Serwer buduje nowy świat: zapisuje pliki językowe, wstawia klucze w tabliczki i książki, wpisuje zwykły tekst tam, gdzie klucze nie działają, i oddaje gotowy .mcworld.
Co wie o samej grze
Części reguł Bedrocka nie ma nigdzie opisanej i zostały sprawdzone w samej grze — to na nich opiera się cały rozkład tłumaczenia.
Tabliczki, książki i dialogi NPC przyjmują tłumaczenie wyłącznie przez rawtext z tłumaczonym kluczem. Przyciski NPC są wyjątkiem: biorą goły klucz i ucinają go na 16 znakach, dlatego klucze przycisków są krótkie.
Nazwy przedmiotów i nazwa świata nie rozumieją kluczy w ogóle — tam tekst trafia taki, jaki jest. Dlatego przy składaniu osobno wybiera się język, który zostanie wpisany wprost w świat.
Plik en_US.lang musi istnieć zawsze: gra sięga po niego zapasowo, a bez niego w miejscu tłumaczenia widać sam klucz.
Czego nie robi
- Nie przechowuje map: wysłany plik żyje na serwerze najwyżej godzinę i znika razem z analizą.
- Nie zakłada kont i nie wymaga rejestracji.
- Nie tłumaczy za ciebie: nie ma tu tłumaczenia maszynowego — tekst piszesz ty albo twój tłumacz.
- Niczego nie publikuje: złożony świat dostaje tylko ten, kto wysłał plik źródłowy.
Kwestie prawne
Bedrockus to nieoficjalny projekt fanowski. Nie jest powiązany z Mojang Studios ani Microsoftem, nie jest przez nie zatwierdzony ani wspierany.
Minecraft jest znakiem towarowym Mojang Synergies AB. Prawa do gry, jej zawartości, nazw i oryginalnych tekstów należą do ich właścicieli.
Prawa do samych map należą do ich autorów. Pracując nad cudzą mapą, sam odpowiadasz za to, że masz do tego prawo.
Ikony w interfejsie pochodzą z Tabler Icons (© Paweł Kuna), biblioteki SVG GitLaba i Material Symbols (© Google LLC), flagi języków z flag-icons (© Panayiotis Lipiridis). Dwa pierwsze zestawy i flagi są na licencji MIT, Material Symbols na Apache 2.0.