Oraxen - niestandardowe przedmioty i bloki
Oraxen pozwala tworzyć zupełnie nowe przedmioty, bloki, meble, czapki i narzędzia na serwerach Minecraft bez wymagania modów po stronie gracza. Wykorzystuje resource packi i CustomModelData do wyświetlania niestandardowych modeli 3D.
Co to jest Oraxen
Oraxen to plugin, który umożliwia tworzenie niestandardowych przedmiotów, bloków, mebli i wyposażenia na serwerach Minecraft. Nie wymaga modów po stronie klienta - zamiast tego generuje resource pack, który automatycznie wysyła graczom przy połączeniu.
Plugin korzysta z mechanizmu CustomModelData (od Minecraft 1.14) i item components (1.20.5+), aby istniejące przedmioty vanilla wyglądały jak zupełnie nowe elementy. Serwerowo każdy niestandardowy przedmiot to nadal item Minecrafta (np. drewniany miecz z CustomModelData 1001), ale klient wyświetla go z niestandardową teksturą i modelem 3D.
Oraxen jest open-source i dostępny na GitHub. Można go pobrać ze SpigotMC lub Modrinth.
Jak działa pod spodem
Oraxen łączy trzy mechanizmy Minecrafta:
- CustomModelData / Item Components - pozwala przypisać niestandardowy model 3D do istniejącego przedmiotu. Klient widzi model z resource packa zamiast domyślnego
- Resource pack - Oraxen automatycznie generuje paczkę zasobów z teksturami i modelami. Serwer hostuje ją i wymusza pobranie przy połączeniu
- Note Block / Mushroom Block states - niestandardowe bloki wykorzystują nieużywane stany bloków note block lub mushroom block do wyświetlania unikatowych tekstur
Dzięki temu podejściu gracz nie musi instalować żadnych modów - wystarczy zaakceptować resource pack serwera. Plugin jest w pełni kompatybilny z klientem vanilla Minecraft.
Tworzenie przedmiotów
Niestandardowe przedmioty definiuje się w plikach YAML w plugins/Oraxen/items/:
# ruby_sword.yml
ruby_sword:
displayname: "&cRubiowy miecz"
material: DIAMOND_SWORD
Pack:
generate_model: true
parent_model: item/handheld
textures:
- ruby_sword.png
Mechanics:
durability:
value: 2000
AttributeModifiers:
attack_damage:
amount: 12
slot: MAINHAND
attack_speed:
amount: 1.6
slot: MAINHAND Umieszczasz teksturę ruby_sword.png w plugins/Oraxen/pack/textures/, a Oraxen automatycznie:
- Tworzy model JSON z podanej tekstury
- Przypisuje unikalne CustomModelData
- Generuje resource pack z modelem
- Rejestruje przedmiot w systemie
Dawanie przedmiotów graczom: /oraxen give [gracz] ruby_sword. Można też dodawać je do kitów, sklepów i loot tables za pomocą Oraxen API lub placeholderów.
Niestandardowe bloki i meble
Oraxen obsługuje cztery typy niestandardowych bloków:
- NoteBlock - bloki pełnowymiarowe z własnymi teksturami (wykorzystuje stany note blocka). Mogą mieć hardness, drop i narzędzie wymagane do zniszczenia
- StringBlock - transparentne bloki (np. kwiaty, trawa, dekoracje) wykorzystujące tripwire
- Furniture - meble 3D oparte na display entities (1.19.4+) lub armorstandach. Krzesła, stoły, lampy, telewizory - dowolne modele
- MushroomBlock - starszy system bloków, kompatybilny z wcześniejszymi wersjami
Przykład definicji mebla:
lamp:
displayname: "&eLampa"
material: PAPER
Pack:
generate_model: true
textures:
- lamp.png
Mechanics:
furniture:
type: DISPLAY_ENTITY
hitbox:
width: 1
height: 2
light: 14
placeable_on:
- FLOOR Gracz stawia meble prawym klikiem z przedmiotem w ręce. Meble mogą emitować światło, mieć hitboxy do interakcji i animacje.
Resource pack
Oraxen automatycznie generuje i dystrybuuje resource pack. Konfiguracja w settings.yml:
Pack:
generation:
auto-generated: true # automatyczne generowanie
compression: BEST_COMPRESSION # kompresja paczki
upload:
type: polymath # hosting paczki
dispatch:
send_pack: true # wysyłanie graczom
mandatory: true # wymuszenie pobrania Opcje hostingu resource packa:
- Polymath - darmowy hosting od Oraxen (domyślny)
- Self-host - własny serwer HTTP
- Amazon S3 / DigitalOcean Spaces - chmura
Po każdej zmianie tekstur lub przedmiotów uruchom /oraxen reload all - plugin przebuduje paczkę i wyśle zaktualizowaną wersję graczom.
Porady i integracje
- Modele 3D - Oraxen obsługuje niestandardowe modele JSON z Blockbench. Eksportuj model jako Java Block/Item, umieść w pack/models/
- Receptury craftingu - definiuj niestandardowe receptury bezpośrednio w konfiguracji przedmiotu
- Integracja z MythicMobs - niestandardowe przedmioty Oraxen jako drop z bossów
- Integracja ze sklepami - ShopGUI+ i inne pluginy sklepowe obsługują przedmioty Oraxen
- Kompatybilność - Oraxen współpracuje z ProtocolLib dla starszych wersji i natywnie z Paper 1.20.5+
Alternatywy: Nova (framework do niestandardowej zawartości), ItemsAdder (płatny, podobna funkcjonalność). Oraxen wyróżnia się open-source charakterem i aktywnym rozwojem.