Architectury mod to jedna z tych bibliotek, które nie zmieniają samego Minecrafta, ale potrafią mocno uprościć życie twórcom modów. Zamiast utrzymywać kilka osobnych wersji tej samej logiki, pozwala zbudować wspólny rdzeń i dopiąć do niego warianty dla różnych loaderów. Dla gracza oznacza to częściej lepszą kompatybilność paczek, a dla autora moda mniej powielania kodu i mniej nerwowego pilnowania, co działa na Fabric, Forge albo NeoForge.
W skrócie Architectury upraszcza mody na kilka loaderów
- To nie jest loader, tylko warstwa łącząca różnice między Fabric, Forge, NeoForge i Quilt.
- Najlepiej działa przy modach multiplatformowych, gdzie ten sam kod ma żyć na kilku środowiskach.
- W praktyce opiera się na module wspólnym i małych fragmentach kodu zależnych od platformy.
- Jeśli instalujesz mod, zwykle szukasz po prostu właściwej wersji zależności, a nie konfigurujesz samego Architectury.
- Stary Example Mod jest już archiwalny, więc do startu lepsze są aktualne szablony projektu.
Czym jest Architectury i po co w ogóle istnieje
Najprościej mówiąc, Architectury porządkuje różnice między modloaderami. Jeden koncept w Fabric i ten sam koncept w Forge potrafią być zaimplementowane inaczej, więc bez dodatkowej warstwy twórca musi dublować kod albo obsługiwać każdą platformę osobno. Tu właśnie wchodzi biblioteka, która abstrahuje wywołania związane z API loaderów i daje wspólny język dla rejestracji, sieci czy zdarzeń.
Z mojego punktu widzenia ważne jest rozróżnienie: Architectury nie zastępuje Fabric ani Forge. To nie kolejny loader, tylko narzędzie nad nimi. W ekosystemie projektu obok samego API istnieje też Gradle plugin, który spina multiplatformowy układ, a samo API bywa opcjonalne w zależności od tego, jak zbudowany jest projekt.
To dlatego o Architectury myśli się raczej jak o warstwie organizacyjnej niż o osobnym trybie gry. Gdy to dobrze zrozumiesz, łatwiej ocenisz, czy w twoim przypadku rzeczywiście coś zyskasz, czy tylko dokładasz sobie kolejny poziom złożoności.
Aby zobaczyć, skąd bierze się ta wygoda, warto rozebrać projekt na moduły i spojrzeć, co dzieje się pod spodem.

Jak działa wspólny kod między loaderami
Najczytelniejszy model to podział na część wspólną i część platformową. W module common trafia to, co ma działać wszędzie: logika gry, wspólne dane, większość rejestracji i wszystko, co nie zależy bezpośrednio od konkretnego loadera. Do modułów Fabric, Forge albo NeoForge trafiają tylko te elementy, które muszą znać ich własne klasy, entrypointy i sposób uruchamiania.
| Część projektu | Co zwykle tam trafia | Dlaczego to ważne |
|---|---|---|
common |
logika, dane, współdzielone zasoby | jedno źródło prawdy dla kilku platform |
fabric / forge / neoforge
|
kod specyficzny dla loadera | tam trafiają różnice, których nie da się ujednolicić |
| mostki i adnotacje | np. @ExpectPlatform
|
pozwalają podstawić inną implementację bez rozjechania architektury |
To właśnie adnotacja @ExpectPlatform jest jednym z najpraktyczniejszych elementów całego podejścia. W skrócie deklarujesz metodę w kodzie wspólnym, a osobne implementacje dostarczasz dla konkretnych platform. Dzięki temu nie piszesz ciężkiego ifowania typu „jeśli Fabric, to... jeśli Forge, to...”, tylko trzymasz logikę w przewidywalnym układzie. W dokumentacji projektu wprost podkreśla się też, że API ma dziś ponad 90 hooków zdarzeń, warstwę sieciową i abstrakcję wywołań loaderów, więc to nie jest pusty szkielet.
W praktyce dobrze zaprojektowany projekt Architectury ogranicza się do jednej decyzji: co naprawdę musi być platformowe, a co może zostać wspólne. Im uczciwiej to rozdzielisz na starcie, tym mniej ręcznego łatania później.
Gdy ten podział jest sensowny, rozwiązanie zaczyna realnie oszczędzać czas. I właśnie od tego zależy, czy warto po nie sięgać w danym projekcie.
Kiedy to rozwiązanie naprawdę pomaga
Architectury ma sens przede wszystkim wtedy, gdy tworzysz mod, który ma żyć na kilku loaderach naraz. Jeśli chcesz wypuścić tę samą funkcję na Fabric i Forge, zamiast utrzymywać dwa osobne projekty, możesz odciąć wspólny rdzeń i zostawić tylko małe różnice platformowe. To oszczędza czas nie dlatego, że wszystko robi samo, tylko dlatego, że porządkuje architekturę.
| Sytuacja | Czy Architectury ma sens | Dlaczego |
|---|---|---|
| Jeden mod na Fabric i Forge | tak | jedna baza kodu, dwa warianty uruchomieniowe |
| Mały mod wyłącznie na jeden loader | raczej nie | warstwa pośrednia może być zbędnym narzutem |
| Rozbudowany projekt z eventami i siecią | tak | tu najbardziej czuć mniej powielania kodu |
| Paczka modów bez własnego kodu | zwykle nie | jako gracz tylko spełniasz zależność narzuconą przez inne mody |
Dla gracza Architectury najczęściej jest po prostu biblioteką, której wymaga inny mod. Wtedy nie instalujesz jej dlatego, że chcesz Architectury, tylko dlatego, że bez niej dany mod nie wystartuje. To ważne rozróżnienie, bo wiele osób myli bibliotekę z contentem i oczekuje, że sama w sobie doda jakieś funkcje do gry.
Jeśli projekt opiera się na specyficznych rozwiązaniach jednego loadera, Architectury nie zawsze pomoże. Czasem szybciej i czyściej jest zostać przy jednej platformie niż udawać, że wszystko da się ujednolicić. I właśnie ten moment wyboru jest ważniejszy niż sam branding narzędzia.
Żeby z niego skorzystać bez frustracji, trzeba dobrze zacząć i nie pomylić wersji, szablonów ani zależności.
Jak zacząć bez potykania się o wersje
Najczęstszy błąd na starcie to mieszanie dwóch porządków: wersji Minecrafta i wersji loadera. Mod może być zgodny z jedną gałęzią gry, ale tylko z konkretnym wydaniem Fabric, Forge albo NeoForge, więc sama liczba przy Minecraft nie wystarcza. Ja zawsze sprawdzam najpierw loader, potem dopiero bibliotekę i dopiero na końcu resztę zależności.
Jeśli instalujesz moda
- Sprawdź, czy paczka działa na Fabric, Forge, NeoForge albo Quilt, a nie na innym loaderze.
- Dobierz wariant moda i biblioteki do tej samej gałęzi wersji Minecrafta.
- Nie mieszaj plików przygotowanych dla różnych loaderów w jednym katalogu, jeśli mod nie jest do tego wyraźnie przeznaczony.
- Jeżeli gra zgłasza brak zależności, najpierw uzupełnij bibliotekę, a dopiero potem szukaj bardziej złożonych konfliktów.
Przeczytaj również: Jak zrobić łódkę w Minecraft i kiedy dodać skrzynię
Jeśli tworzysz własny projekt
- Zacznij od aktualnego szablonu projektu, a nie od starego przykładu.
- Trzymaj wspólną logikę, dane i zasoby w module współdzielonym.
- Kod zależny od platformy zapisuj osobno, zamiast wciskać go do jednej klasy.
- Testuj osobno uruchomienie klienta i serwera, bo część błędów wychodzi dopiero na tej granicy.
W oficjalnym repozytorium projektu stary Example Mod jest już oznaczony jako archiwalny, więc do startu lepiej brać aktualne szablony niż kopiować stary wzorzec. To oszczędza walki z przestarzałym układem plików i daje lepszy punkt wyjścia pod obecne wydania.
Gdy już wiesz, jak wejść w projekt, dobrze jest jeszcze zrozumieć, czym Architectury różni się od samych loaderów i od narzędzi niższego poziomu.
Architectury a Fabric, Forge, NeoForge i Quilt
To porównanie warto mieć w głowie, bo właśnie tu rodzi się najwięcej nieporozumień. Fabric, Forge i NeoForge to platformy uruchomieniowe. Architectury stoi wyżej i ma sprawić, że ten sam kod nie będzie wyglądał inaczej w każdej z nich. Na Modrinth widać zresztą osobne wydania dla kilku platform, co dobrze pokazuje, że nadal trzeba pilnować konkretnego środowiska, a nie tylko nazwy moda.
| Rozwiązanie | Rola | Czego nie robi |
|---|---|---|
| Fabric / Forge / NeoForge / Quilt | uruchamia mod i określa ekosystem | nie ujednolica samego kodu między platformami |
| Architectury Plugin | spina projekt i moduły | nie zastępuje loadera |
| Architectury API | daje wspólne hooki, sieć i abstrakcje | nie usuwa potrzeby testów na każdej platformie |
| Mixin | pozwala ingerować w kod gry na niskim poziomie | nie jest wygodną warstwą multiplatformową |
Z tej tabeli płynie jedna praktyczna myśl: Architectury rozwiązuje problem organizacji, a nie problem wszystkiego. Jeśli brakuje ci hooka, czasem i tak sięgniesz po Mixin. Jeśli projekt ma bardzo twarde zależności od jednego loadera, nie da się go po prostu przenieść na inny bez kosztów. Mnie takie rozdzielenie pomaga uniknąć fałszywych oczekiwań jeszcze zanim zacznę kodować.
Najwięcej błędów nie bierze się jednak z samej koncepcji, tylko z tego, jak łatwo jest źle poskładać projekt albo paczkę modów.
Najczęstsze błędy przy modach opartych na Architectury
W praktyce problemy zwykle nie wynikają z samej biblioteki, tylko z tego, jak projekt został poukładany. Najbardziej kosztowne błędy są powtarzalne i da się je wyłapać wcześniej, jeśli wiesz, czego szukać.
- Zły loader - mod został pobrany dla Fabric, a paczka działa na Forge albo odwrotnie.
- Rozjazd wersji - numer Minecrafta się zgadza, ale nie zgadza się gałąź moda albo biblioteki.
- Za dużo logiki w części platformowej - kod, który mógł być wspólny, został niepotrzebnie rozdzielony.
- Za mało testów - wszystko startuje lokalnie, ale wywala się na serwerze albo w innym loaderze.
- Stary szablon projektu - kopiowanie archiwalnego Example Mod często wciąga stare założenia i zbędne obejścia.
- Przekonanie, że biblioteka naprawi konflikt - Architectury nie usunie problemu z innymi modami, jeśli one same są niekompatybilne.
Jeśli objawy pojawiają się już na starcie gry, najpierw sprawdzam zależności, potem loader, a dopiero na końcu sam kod. W przypadku modów Minecrafta to zwykle najszybsza droga do prawdziwej przyczyny, a nie do kolejnej godziny zgadywania.
Na końcu zostaje jeszcze praktyczna lista kontrolna, która pomaga ocenić, czy projekt albo paczka są rzeczywiście gotowe do użycia.
Co sprawdzić przed wrzuceniem moda do paczki
Zanim uznasz projekt za gotowy, przejdź przez krótką listę kontrolną. Ona nie wygląda efektownie, ale w modach to właśnie ona najczęściej odróżnia działający projekt od takiego, który sypie błędami dopiero u użytkownika.
- Czy mod ma wydanie dokładnie pod twój loader i gałąź Minecrafta.
- Czy biblioteka Architectury jest obecna tam, gdzie wymaga jej zależność.
- Czy kod wspólny nie odwołuje się do klas dostępnych tylko na jednej platformie.
- Czy testowałeś klienta i serwer osobno.
- Czy w projekcie nie został stary szablon zamiast aktualnego template'u.
- Czy nie ma dwóch kopii tej samej biblioteki w paczce modów.
Jeżeli potraktujesz Architectury jako most między loaderami, a nie jako magiczną naprawę kompatybilności, oszczędzisz sobie większości typowych problemów. Najlepsze efekty daje nie sama biblioteka, tylko dyscyplina w rozdzielaniu kodu, wersji i zależności.
