DecentHolograms vs Holographic Displays: który plugin hologramów wybrać w 2026
Hologramy na serwerze to pływający tekst powitalny przy spawnie, ceny nad sklepowymi skrzyniami, leaderboardy na arenie, panele info obok NPC. Przez dziesięć lat standardem był Holographic Displays od filoghosta. Potem 1.19, 1.20, 1.21 jedna po drugiej rozwalały ProtocolLib, na którym HD trzymał się całością, i plugin de facto wypadł z obiegu. W 2026 na praktycznie każdym serwerze Paper 1.21 stoi DecentHolograms. To nie moda, to zwykła inżynieria.
Artykuł tłumaczy techniczną różnicę między DH a HD, pokazuje jak wyglądają ich configi w realu, jak zmigrować z HD na DH bez utraty hologramów i co łapać, gdy coś idzie nie tak.
Krótka historia pluginów hologramowych
W 2013 i 2014 hologramy na serwerach robiło się przez niewidzialne konie z tabliczką nad głową. Hack działał, ale jadł ticki i sypał się przy każdej zmianie wersji. W 2014 filoghost wypuścił HolographicDisplays, pierwszy porządny plugin: przez ProtocolLib słał klientowi sfałszowane armor stand entity i renderował czysty pływający tekst bez bagażu encji.
HD przez lata był standardem. Miał jednak jeden architektoniczny haczyk: plugin zależał od ProtocolLib. Za każdym razem gdy Mojang wypuszczał nową wersję Minecrafta, ProtocolLib musiał zaktualizować mappingi pakietów, potem HD musiał się zaktualizować pod nowy ProtocolLib, i dopiero wtedy serwer z HD jechał na nową wersję.
Od 1.13 (the flattening) ten łańcuch zaczął regularnie pękać. Przy 1.19 ProtocolLib przeskakiwał między legacy a nowym API, HD dostawał aktualizacje mniej więcej raz na pół roku, a na 1.20 projekt praktycznie stanął. Na GitHubie filoghosta ostatnie poważne wydanie HolographicDisplays to początek 2023 roku, wersja 3.0.x, a od tamtej pory serwis chodzi w trybie "działa jak działa, na nowe wersje szybko nie liczcie".
Równolegle w 2021 DecentSoftware-eu wypuścił DecentHolograms. Pomysł techniczny jest prosty: w ogóle wyrzucić ProtocolLib z zależności. DH samodzielnie manipuluje pakietami przez NMS reflection z własnymi adapterami pod każdą wersję Minecrafta. Gdy wychodzi 1.21.4, twórcy DH dodają adapter w tym samym tygodniu. ProtocolLib nie ma tu nic do gadania.
To zamieniło DH w plugin, który ląduje na nowej wersji Minecrafta jeden do trzech dni po release. HolographicDisplays na tej samej wersji może w ogóle nie wylądować.
Dlaczego DH jest technicznie lepszy od HD
Linia podziału to nie lista funkcji, tylko architektura. Funkcja po funkcji HD przegrywa tylko w jednej rzeczy: animacje nie są natywne, trzeba dokładać addon w stylu HolographicExtension. Cała reszta jest też w HD, czasem nawet zgrabniej.
Architektonicznie DH wygrywa w czterech punktach:
- Brak ProtocolLib w łańcuchu zależności. Jeden plugin mniej, jedno słabe ogniwo mniej, na 1.21+ to kluczowe
- Natywne animacje tekstu przez pliki w animations/, bez zewnętrznych addonów
- Natywne click actions: COMMAND, MESSAGE, TELEPORT, SOUND z pudełka
- Per-player widoczność i treść przez PAPI: hologram może pokazywać różny tekst różnym graczom bez hacków
Do tego dochodzi prosty fakt: DH żyje. Najnowsza 2.8.x wychodzi pod 1.21+, wspiera Folia, jest testowana na Paper i Purpur. HD 3.0.x jeszcze chodzi na 1.20.6 ze starannie dobranym ProtocolLib, a na 1.21 sytuacja mówi sama za siebie.
Macierz funkcji
Cały porównanie w jednej tabeli:
| Kryterium | DecentHolograms 2.8.x | Holographic Displays 3.0.x |
|---|---|---|
| Wersje Minecrafta | 1.8 do 1.21.x | 1.8 do 1.20.x (1.21 niestabilne) |
| Zależność od ProtocolLib | Nie | Tak, obowiązkowa |
| Wsparcie Folia | Tak | Nie |
| Animacje tekstu | Natywne (pliki animations/) | Tylko przez addon |
| Click actions | COMMAND, MESSAGE, TELEPORT, SOUND, PAGE | Tylko przez addon lub API |
| ItemStack lines | Tak, z enchant glow i custom data | Tak |
| Head lines (głowy graczy, custom skiny) | Tak | Tak |
| PlaceholderAPI | Głęboka integracja, per-player placeholders | Przez CommandHolograms lub addon |
| Hologramy per-player | W standardzie, /dh hologram show <player> | Tylko przez API |
| Strony (/dh hologram page) | Tak, hologram wielostronicowy | Nie |
| Edytor GUI w grze | /dh gui | Nie |
| Społeczność i aktualizacje | Aktywne wydania 2024 do 2026 | Zamrożony od 2023 |
| Licencja | GPL-3.0 | GPL-3.0 |
| Rozmiar jara | Około 1 MB | Około 1.5 MB plus ProtocolLib 5+ MB |
W skrócie: HD nadaje się na statyczny tekst na starych wersjach, ale gdy tylko wchodzi interaktywność, animacje albo aktualna wersja Minecrafta, wybór jest dokonany.
Instalacja DecentHolograms
DH to pojedynczy jar bez zależności. Bierzemy release z GitHub albo Modrinth i wrzucamy do plugins/.
# Paper 1.21+
cd /your/server/plugins
wget https://github.com/DecentSoftware-eu/DecentHolograms/releases/latest/download/DecentHolograms-2.8.X.jar
Albo z Modrinth, ten sam jar, inne CDN:
# z modrinth.com/plugin/decentholograms
wget -O DecentHolograms.jar \\
\"https://cdn.modrinth.com/data/.../DecentHolograms-2.8.X.jar\"
Restart serwera. Plugin zbuduje plugins/DecentHolograms/ z taką strukturą:
plugins/DecentHolograms/
├── config.yml
├── animations/
│ ├── rainbow.yml
│ ├── scroll.yml
│ └── wave.yml
├── holograms/
│ └── (pliki hologramów pojawią się po /dh create)
└── lang/
└── en.yml
Pod PlaceholderAPI potrzebny jest sam PAPI plus rozszerzenia, których chcemy użyć:
wget https://github.com/PlaceholderAPI/PlaceholderAPI/releases/latest/download/PlaceholderAPI.jar
# potem w konsoli serwera
papi ecloud download Player
papi ecloud download Server
papi reload
Po tym DH automatycznie rozpoznaje PAPI i każdy %placeholder% w liniach hologramu zaczyna się rozwiązywać na żywo.
Pierwsze /dh create
Robimy prosty hologram na spawnie. Stajemy w docelowym miejscu i piszemy:
/dh create welcome &aWitamy na serwerze
Pojawia się jedna linia. Dodajemy drugą:
/dh line add welcome &7Online: %server_online%/%server_max_players%
Jeśli PAPI jest zainstalowane i rozszerzenia zassane, placeholder od razu zamienia się na żywe liczby.
Trzecia linia z przedmiotem:
/dh line add welcome ICON:DIAMOND
W hologramie pojawia się pływający diament. Można też wstawić głowę gracza:
/dh line add welcome HEAD:Notch
Edycja przez GUI:
/dh gui welcome
Otwiera się ekwipunek z liniami hologramu, przyciskami w górę i w dół, edit, delete oraz przyciskiem dodaj nową linię. Wygodne, gdy poprawiasz w locie i nie chcesz wbijać długich komend.
Animacje bez addonów
DH szuka plików animacji w plugins/DecentHolograms/animations/. Każdy plik to YAML opisujący klatki. Minimalny przykład, fala:
# animations/wave.yml
name: wave
type: INTERNAL
text:
- \"&aWave\"
- \"&2Wave\"
- \"&aWave\"
- \"&fWave\"
speed: 5
speed w tickach na klatkę. 5 daje cztery klatki na sekundę. Po reloadzie:
/dh reload
Wstawiamy animację w linię z prefiksem #ANIMATION:
/dh line add welcome #ANIMATION: wave
Można też wbić efekty inline przez placeholdery DH:
/dh line add welcome %animation: rainbow%Server Name
Z pudełka są rainbow, scroll, wave. Własne piszesz z dowolną liczbą klatek. Na Folia animacje działają, na 1.21.4 nic nie sypie.
Klikalne hologramy i actions
Hologram z TELEPORT na prawy klik:
/dh hologram setclickable welcome true
/dh hologram action add welcome RIGHT_CLICK TELEPORT 100 65 -200
Komenda jako gracz:
/dh hologram action add welcome LEFT_CLICK COMMAND warp shop
Komenda jako konsola:
/dh hologram action add welcome RIGHT_CLICK COMMAND_AS_CONSOLE eco give %player_name% 100
Wiadomość:
/dh hologram action add welcome RIGHT_CLICK MESSAGE &aCześć %player_name%!
Dźwięk:
/dh hologram action add welcome RIGHT_CLICK SOUND minecraft:entity.experience_orb.pickup 1.0 1.5
Actions układają się po kolei. Dodajesz kilka, klikasz hologram, odpalają się w sekwencji. To w praktyce klikalny NPC, tylko bez modelu.
PlaceholderAPI na maksa
Głęboka funkcja DH to per-player placeholdery. Hologram wie, który konkretny gracz patrzy, i podstawia %player_name%, %vault_eco_balance%, %luckperms_prefix% indywidualnie.
Pasek konta nad sklepem:
/dh create shop_info
/dh line add shop_info &aSklep
/dh line add shop_info &7Twoje saldo: &e%vault_eco_balance%$
/dh line add shop_info &7Prefix: %luckperms_prefix%
Każdy gracz widzi własne saldo i własny prefix. Przy 100 online to 100 różnych renderów tekstu, ale obciążenie minimalne, bo wszystko liczy się lokalnie.
Top bogaczy:
/dh create top_money
/dh line add top_money &6&l[Top Bogaczy]
/dh line add top_money &e1. %ajleaderboards_pos_1_money%
/dh line add top_money &e2. %ajleaderboards_pos_2_money%
/dh line add top_money &e3. %ajleaderboards_pos_3_money%
Z AJLeaderboards (lub alternatywą) top aktualizuje się sam. Bez addona można skorzystać z CMI lub wbudowanych wariantów %vault_eco_balance_top1%.
Migracja z HD na DH
DecentHolograms ma wbudowaną komendę importu. To główny powód, dla którego migracja nie jest straszna: komenda czyta starą database.yml HolographicDisplays i przenosi wszystkie hologramy.
Kroki:
- Serwer powinien stać z oboma pluginami obok siebie. HD nie musi nawet sensownie startować na nowej wersji MC, DH czyta tylko pliki, nie woła API HD
- Wrzucamy stary folder plugins/HolographicDisplays/ na serwer z DH (configi wystarczą, jara HD można zostawić)
- Odpalamy import
/dh ImportFromHD
DH przechodzi przez database.yml i dla każdego hologramu zakłada YAML w plugins/DecentHolograms/holograms/. Nazwy zostają. Animacje ze starego addonu HolographicExtension nie przechodzą (DH go nie zna), ale tekst statyczny, linie ItemStack i placeholdery z CommandHolograms migrują.
Po imporcie:
/dh reload
/dh list
Powinna pojawić się pełna stara lista. Usuwamy jara HolographicDisplays i ProtocolLib, restart serwera. Na nowej wersji wszystko leci.
Pułapki migracji:
- Jeśli stare hologramy używały placeholderów HolographicExtension typu {animation: ...}, nie przejdą. Po imporcie przejdź po liście i zamień na składnię DH
- CommandHolograms (stary addon HD do action) importuje się częściowo. Skomplikowane multi-action hologramy lepiej zrobić od nowa przez /dh hologram action add
- Hologramy per-player z kodu własnego pluginu pisanego pod HD-API nie migrują, idą tylko pliki
Wydajność
DH jest szybszy od HD z dwóch powodów:
- Nie pcha pakietów przez ProtocolLib (na dużym online sam ProtocolLib zjada 5 do 10 procent TPS)
- Używa view distance per hologram: poza default-display-range w ogóle nie wysyła pakietów
W config.yml DH jest default-display-range: 48. To znaczy, że gracz dalej niż 48 bloków nie dostaje pakietów dla tego hologramu. Pod statyczne hologramy spawnowe można zejść do 32 albo niżej. Pod arenowe leaderboardy dać 64, jeśli arena jest duża.
# plugins/DecentHolograms/config.yml
default-display-range: 48
default-update-range: 48
default-update-interval: 20
update-interval w tickach. 20 to raz na sekundę. Z tanimi placeholderami PAPI (server_online) 20 jest okej. Pod rzadko zmieniające się (top_money) opłaca się 100 do 200 (raz na 5 do 10 sekund), to oszczędza wywołania PAPI.
Bench na testowym Paper 1.21.4 z 50 online i 30 hologramami przy spawnie:
- HD 3.0.0 plus ProtocolLib 5.3.0: średnie TPS 19.4, skoki przy przeliczaniu placeholderów
- DH 2.8.10 bez ProtocolLib: średnie TPS 19.95, płaski wykres
Liczby z domowej maszyny, nie naukowy pomiar, ale kierunek widać.
Typowe błędy i jak je łapać
Hologram się nie pokazuje:
- Sprawdź /dh list, czy w ogóle jest na liście
- Sprawdź display-range, może za małe
- Sprawdź czy hologram nie jest wyłączony: /dh hologram disable welcome potem /dh hologram enable welcome
- Sprawdź permissions na podgląd (jeśli YAML wymaga uprawnienia)
Placeholder się nie rozwija:
- Czy PlaceholderAPI jest zainstalowany: /papi list
- Czy rozszerzenie zassane: /papi ecloud list installed
- Reload: /dh reload i /papi reload
Animacja nie idzie:
- Plik animacji leży w animations/, nie w korzeniu pluginu
- Nazwa animacji zgadza się z nazwą pliku bez .yml
- speed większe od 0
- Po edycji /dh reload
Hologram znika po /reload:
- /reload w Bukkit psuje rzeczy, nie używaj. Tylko /stop i start serwera. To zasada dla każdego pluginu, nie tylko DH
ItemStack się nie renderuje:
- Material musi być prawidłowy dla twojej wersji MC (DIAMOND, IRON_INGOT, GRASS_BLOCK)
- Głowa gracza po nicku działa tylko gdy Mojang ma profil. Offline-serwery muszą używać custom-textures
Hologram miga albo drży:
- view-distance w server.properties jest mniejszy niż display-range hologramu. Ustaw display-range pod render distance klientów
- Kilka hologramów nakłada się na jeden punkt, przesuń współrzędne lub usuń duplikaty
Co wybrać w 2026
Świeży serwer na Paper 1.21+: instalujesz DecentHolograms i koniec dyskusji. Na aktualnych wersjach nie zostało żadnego argumentu za HD, poza ewentualnie "zawsze tego używałem". Przyzwyczajenie nie jest warte zepsutego pluginu po następnej aktualizacji.
Stary serwer 1.16 do 1.18 z HD, który działa: można nie ruszać, hologramy na tych wersjach są stabilne. Ale gdy tylko pojawi się decyzja o aktualizacji do 1.20+, migracja przez /dh ImportFromHD zajmie pięć minut i zostawi działający, wspierany, szybszy plugin z animacjami i click actions z pudełka.
DH dziś nie jest "alternatywą" dla HD, tylko wstecznie kompatybilnym zamiennikiem. HolographicDisplays zarobił sobie miejsce w historii serwerowego Minecrafta. Ale wieszanie nowego projektu na nim w 2026 to świadomy ślepy zaułek.
FAQ
Czy DH i HD mogą działać razem?
Technicznie tak, pluginy mają osobne namespace i nie kolidują w komendach. Jedyny sensowny powód to migracja: ładujesz oba, robisz /dh ImportFromHD, wyłączasz HD. Trzymanie dwóch pluginów hologramów na stałe nie ma sensu.
Czy DecentHolograms wspiera BungeeCord i proxy?
Hologramy są funkcją server-side, proxy (BungeeCord, Velocity) ich nie widzą i nie powinny. DH działa na każdym backendzie osobno. Hologramy nie synchronizują się między serwerami, to normalne, każdy świat ma swoje.
Co z wydajnością przy 200+ hologramach?
Działa bez problemów. Każdy hologram kosztuje niewiele. Wąskim gardłem zwykle nie jest liczba hologramów, tylko koszt aktywnych placeholderów PAPI. %ajleaderboards_pos_1_money% jest cache`owany po stronie AJLeaderboards i praktycznie darmowy. Własny placeholder, który co tick uderza w bazę, zje CPU.
Można ukryć hologram przed konkretnymi graczami?
Tak, przez permission albo per-player widoczność. W YAML hologramu można wpisać permission: server.vip i bez tego permu gracz nie zobaczy. Przez API: DH.getInstance().getHologramManager().getHologram("name").hide(player).
Czy DH działa na Folia?
Tak, od 2.8.0 jest wsparcie dla Folia (regionalny wielowątkowy Paper). Kolejny punkt dla DH, bo HD na Folia nie działa w ogóle, ProtocolLib nie dogaduje się z modelem regionalnym.
Skąd brać animacje poza wbudowanymi?
W repo DecentSoftware-eu na GitHub jest folder example-animations z dziesiątkami gotowych plików. Wrzucasz do animations/, /dh reload, leci. Można też pisać swoje, format jest na tyle prosty, że poradzi sobie każdy edytor tekstu.
DH nie jest tymczasowym wyjściem, jest standardem na najbliższe lata na Paper i Purpur. Pod przygotowanie na nowe wersje Minecrafta, pod Folia, pod projekty z interaktywnymi hologramami i live leaderboardami wybór jest oczywisty. Holographic Displays zostaje w księdze jako plugin, który przez dekadę trzymał poziom, ale w 2026 czas się grzecznie pożegnać i ruszyć dalej.
Chroń swój serwer przed atakami DDoS
Darmowa ochrona z konfiguracją w 5 minut. 1 TB ruchu w zestawie.
Wypróbuj za darmoPowiązane artykuły
Pterodactyl vs Crafty vs MCSManager: porownanie paneli Minecraft 2026
Pterodactyl, Crafty Controller i MCSManager w porownaniu 2026: architektura, instalacja, bezpieczenstwo, backupy i kiedy wybrac ktory panel.
BetonQuest: konfiguracja questow na serwerze Minecraft (2026)
Pelny poradnik BetonQuest 2.x: instalacja, uklad pakietow, dialogi, objectives, conditions, eventy, dziennik, migracja z 1.x i waskie gardla TPS.
Jak stworzyc serwer Minecraft od zera
Krok po kroku: jak zbudowac serwer Minecraft. Wybor wersji Javy, pobranie jar serwera, konfiguracja server.properties, przekierowanie portow, akceptacja EULA, pierwsze uruchomienie, instalacja pluginow i podstawowa optymalizacja.