Görsel prefix’ler nasıl çalışır
Minecraft sohbeti yalnızca metin gösterebilir. Bir kaynak paketi bir fonta yeni karakterler ekleyebilir; ItemsAdder da herhangi bir PNG’yi böyle bir karaktere, yani font görseline (font image) dönüştürür. Paket yüklendikten sonra rozet, satırdaki bir karakter daha olur.
İşi üç eklenti paylaşır:
- ItemsAdder kaynak paketini oluşturur ve
%img_<name>%(PlaceholderAPI) ya da kendi:<name>:etiketini rozet karakteriyle değiştirir. - LuckPerms hangi grubun hangi prefix’i taşıdığını saklar ve bir oyuncunun birden fazla prefix’i varsa önceliğe göre karar verir.
- Sohbet ve tab eklentilerin LuckPerms prefix’ini Vault üzerinden ya da
%luckperms_prefix%PlaceholderAPI placeholder’ıyla okuyup gösterir. LuckPerms sohbeti kendisi biçimlendirmez.
1. adım: Rozet görsellerini hazırla
Rütbelerini Rütbe Prefix Oluşturucu’da tasarla. Her rozet, ItemsAdder wiki’sinin istediği gibi varsayılan olarak 8 piksel boyunda ve yazısı kadar geniştir. Rütbeleri sıraya koy: listenin en üstündeki en yüksek LuckPerms önceliğini alır. Bir namespace (klasör adı, varsayılan ranks) belirle ve Hepsini ZIP olarak indir’e bas.
ZIP’te her rütbe için bir PNG, bir ranks.yml ve tüm komutları içeren bir README bulunur:
ranks/
configs/ranks.yml
textures/admin.png
textures/vip.png
README.txt2. adım: Font görsellerini ItemsAdder’a ekle
ranks klasörünü plugins/ItemsAdder/contents/ içine kopyala. Config her rozeti bir font görseli olarak kaydeder:
info:
namespace: ranks
font_images:
admin:
permission: "ranks.admin"
show_in_gui: true
suggest_in_command: false
path: "admin.png"
scale_ratio: 8
y_position: 7
vip:
permission: "ranks.vip"
show_in_gui: true
suggest_in_command: false
path: "vip.png"
scale_ratio: 8
y_position: 7scale_ratio: 88 piksellik resme uyar, böylece bir resim pikseli bir font pikseli olur,y_position: 7de rozeti yazı satırına oturtur. Başka bir yükseklik seçersen oluşturucu iki değeri de onunla birlikte değiştirir. ItemsAddery_positiondeğerininscale_ratiodeğerinden küçük veya ona eşit olmasını ister.permissionsatırı yalnızca rozeti kimin sohbette emoji olarak yazabileceğini belirler. İsmin önünde kimin taşıdığına LuckPerms karar verir.path, namespace’intexturesklasöründeki PNG’yi gösterir.
Konsolda /iazip çalıştır ve kaynak paketi yeniden oluşana kadar bekle. Oyuncular rozetleri ancak yeni paketi yükledikten sonra görür.
3. adım: Prefix’i LuckPerms ile ayarla
Gruplar henüz yoksa oluştur, ardından her grubun prefix’ini ayarla. Oluşturucu bu satırları tüm rütbeler için tek seferde yazar:
lp creategroup admin
lp creategroup vip
lp group admin meta setprefix 20 "%img_admin% "
lp group vip meta setprefix 10 "%img_vip% "
lp user Steve parent add vip- Sayı öncelik değeridir. Bir oyuncu birden fazla gruptaysa LuckPerms en yüksek öncelikli prefix’i gösterir. Oluşturucu en üst rütbeye onar onar artan en yüksek sayıyı verir.
setprefix, o grubun aynı context’teki mevcut prefix’lerini değiştirir.addprefixise yanlarına bir tane daha ekler.- Tırnaklar gerekli, çünkü prefix rozeti isimden ayıran bir boşlukla bitiyor.
- Bir prefix’i
lp group vip meta removeprefix 10ile kaldırırsın.
Yan yana birden fazla rozet mi istiyorsun, örneğin bir rütbe rozeti ve bir bağışçı rozeti? LuckPerms, config.yml dosyasındaki meta-formatting bölümüyle (format, duplicates, start-spacer, middle-spacer, end-spacer) prefix’leri üst üste dizebilir.
4. adım: Rozeti sohbette ve tab listesinde göster
Prefix artık %img_admin% içeriyor. Bir şeyin bu placeholder’ı rozetle değiştirmesi gerekiyor. Sohbet veya tab eklentisi LuckPerms prefix’ini göstermeli ve içindeki PlaceholderAPI placeholder’larını işlemeli.
- PlaceholderAPI’yi ve LuckPerms expansion’ını kur:
/papi ecloud download LuckPerms, ardından/papi reload. - Sohbet formatında
%luckperms_prefix%kullan ya da sohbet eklentisinin prefix’i Vault üzerinden okumasına izin ver. - Tab listesi için ItemsAdder wiki’si, görsel placeholder’ını doğrudan grup prefix’ine yazılmış hâliyle TAB eklentisini ve ardından
/tab reloadkomutunu gösteriyor:
Admin:
tabprefix: '%img_admin% '
tagprefix: '%img_admin% 'ItemsAdder’ın kendi :admin: etiketi, ItemsAdder’ın metni kendisinin değiştirdiği yerlerde çalışır. Yalnızca PlaceholderAPI anlayan eklentiler bunun yerine %img_admin% ister; oluşturucunun placeholder biçimini kullanmasının sebebi bu.
Kaynak paketi olmadan yazı prefix’leri
Kaynak paketi istemiyorsan renkli yazı prefix’leri de işe yarar. Oluşturucu bunları da &# hex renkleri ve kalın yazıyla üretir:
lp group vip meta setprefix 10 "ɗAD&lVIP &r"Hex renkler Minecraft 1.16 veya daha yenisini ve &#RRGGBB biçimini anlayan bir sohbet eklentisini gerektirir. MiniMessage okuyan sohbet eklentileri için bunun yerine <gradient> içeren MiniMessage satırlarını kopyala. Renk formatları hakkında daha fazlası MOTD renkleri, hex ve gradyanlar rehberinde.
Sık görülen hatalar ve çözümleri
| Ne görüyorsun | Neden ve çözüm |
|---|---|
%img_vip% metin olarak görünüyor | Sohbet veya tab eklentisi prefix içindeki PlaceholderAPI’yi işlemiyor ya da PlaceholderAPI eksik. |
| Rozet yerine boş bir kutu | Paket /iazip ile yeniden oluşturulmamış ya da oyuncuda hâlâ eski paket var. Yeniden oluşturduktan sonra tekrar gir. |
| Hiç prefix yok | Sohbet eklentisi LuckPerms prefix’ini göstermiyor. Vault’u veya formatındaki %luckperms_prefix% ifadesini kontrol et. |
| Yanlış rozet gösteriliyor | Öncelikler. En yüksek sayı kazanır, lp group <name> meta info ile kontrol et. |
| Bir oyuncuda iki rozet | Grubun addprefix yüzünden iki prefix’i var. setprefix kullan ya da dizmeyi bilerek ayarla. |
| Rozet çok yukarıda veya aşağıda | Başka bir kaynak paketi sohbet fontunu kaydırıyor. y_position değerini değiştir (scale_ratio değerinden yüksek olmasın) ve /iazip komutunu tekrar çalıştır. |
Aynı font görseli tekniği bütün menü arka planlarını da çizer, bkz. ItemsAdder ile DeluxeMenus’te özel GUI arka planları. Rütbelerin oy avantajlarıyla geliyorsa VotingPlugin ile oy ödülleri rehberi bunları nasıl dağıtacağını gösteriyor.