Saltar para o conteúdo

Prefixos de rank do LuckPerms com badges em imagem (ItemsAdder)

Muitos servidores mostram pequenos badges em pixel art como VIP ou ADMIN antes dos nomes dos jogadores, em vez de texto colorido. Por trás de cada badge há uma imagem de fonte do resource pack do servidor, e o LuckPerms só guarda um placeholder para ela. Este guia mostra a cadeia toda: a config do ItemsAdder, os comandos do LuckPerms, as prioridades e os plugins de chat e de tab que tornam o badge visível.

Atualizado:

Como funcionam os prefixos em imagem

O chat do Minecraft só consegue mostrar texto. Um resource pack pode acrescentar novos caracteres a uma fonte, e o ItemsAdder transforma qualquer PNG num carácter destes, chamado font image (imagem de fonte). Depois de o pack estar carregado, o badge é só mais um carácter na linha.

Três plugins dividem o trabalho:

  • O ItemsAdder constrói o resource pack e substitui %img_<name>% (PlaceholderAPI) ou a sua própria tag :<name>: pelo carácter do badge.
  • O LuckPerms guarda que grupo usa que prefixo e decide pela prioridade quando um jogador tem vários.
  • Os teus plugins de chat e de tab leem o prefixo do LuckPerms, através do Vault ou do placeholder %luckperms_prefix% do PlaceholderAPI, e mostram-no. O LuckPerms, por si só, não formata o chat.

Passo 1: Cria as imagens dos badges

Desenha os teus ranks no gerador de prefixos de rank. Cada badge tem 8 píxeis de altura por predefinição, como pede a wiki do ItemsAdder, e a largura do seu texto. Põe os ranks por ordem: o topo da lista recebe a prioridade mais alta no LuckPerms. Define um namespace (o nome da pasta, ranks por predefinição) e carrega em Transferir todos em ZIP.

O ZIP contém um PNG por rank, um ranks.yml e um README com todos os comandos:

ranks.zip
ranks/
  configs/ranks.yml
  textures/admin.png
  textures/vip.png
README.txt

Passo 2: Adiciona as imagens de fonte ao ItemsAdder

Copia a pasta ranks para plugins/ItemsAdder/contents/. A config regista cada badge como imagem de fonte:

plugins/ItemsAdder/contents/ranks/configs/ranks.yml
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: 7
  • scale_ratio: 8 corresponde à imagem de 8 píxeis, por isso um píxel da imagem é um píxel da fonte, e y_position: 7 coloca o badge na linha de texto. Se escolheres outra altura, o gerador ajusta os dois valores. O ItemsAdder exige que y_position seja menor ou igual a scale_ratio.
  • A linha permission só decide quem pode escrever o badge como emoji no chat. Quem o usa antes do nome é decidido pelo LuckPerms.
  • path aponta para o PNG na pasta textures do namespace.

Executa /iazip na consola e espera até o resource pack ser reconstruído. Os jogadores só veem os badges depois de carregarem o novo pack.

Passo 3: Define o prefixo com o LuckPerms

Cria os grupos, se ainda não existirem, e depois define o prefixo de cada grupo. O gerador escreve estas linhas para todos os ranks de uma vez:

Consola
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
  • O número é a prioridade. Se um jogador estiver em vários grupos, o LuckPerms mostra o prefixo com a prioridade mais alta. O gerador dá ao rank do topo o número mais alto, de dez em dez.
  • setprefix substitui os prefixos existentes desse grupo no mesmo contexto. addprefix acrescentaria outro ao lado deles.
  • As aspas são necessárias porque o prefixo termina com um espaço, que separa o badge do nome.
  • Remove um prefixo com lp group vip meta removeprefix 10.

Queres vários badges seguidos, por exemplo um badge de rank e um de doador? O LuckPerms consegue empilhar prefixos com a secção meta-formatting do seu config.yml (format, duplicates, start-spacer, middle-spacer, end-spacer).

Passo 4: Mostra o badge no chat e no tab

O prefixo contém agora %img_admin%. Alguma coisa tem de substituir esse placeholder pelo badge. O plugin de chat ou de tab tem de mostrar o prefixo do LuckPerms e interpretar os placeholders do PlaceholderAPI que estão lá dentro.

  1. Instala o PlaceholderAPI e a expansão do LuckPerms: /papi ecloud download LuckPerms e depois /papi reload.
  2. Usa %luckperms_prefix% no formato do teu chat, ou deixa o plugin de chat ler o prefixo através do Vault.
  3. Para a lista do tab, a wiki do ItemsAdder mostra o plugin TAB com o placeholder da imagem diretamente no prefixo do grupo, seguido de /tab reload:
plugins/TAB/config.yml (groups)
  Admin:
    tabprefix: '%img_admin%  '
    tagprefix: '%img_admin%  '

A tag própria do ItemsAdder :admin: funciona onde o ItemsAdder substitui o texto ele mesmo. Os plugins que só entendem o PlaceholderAPI precisam antes de %img_admin%, e é por isso que o gerador usa a forma de placeholder.

Prefixos de texto sem resource pack

Se não quiseres um resource pack, os prefixos de texto coloridos também funcionam. O gerador também os escreve com cores hex &# e negrito:

Consola
lp group vip meta setprefix 10 "&#0599AD&lVIP &r"

As cores hex precisam do Minecraft 1.16 ou mais recente e de um plugin de chat que entenda &#RRGGBB. Para plugins de chat que leem MiniMessage, copia antes as linhas MiniMessage com <gradient>. Há mais sobre formatos de cor no guia de cores de MOTD, hex e gradientes.

Erros comuns e soluções

O que vêsCausa e solução
%img_vip% aparece como textoO plugin de chat ou de tab não interpreta o PlaceholderAPI no prefixo, ou falta o PlaceholderAPI.
Uma caixa vazia em vez do badgeO pack não foi reconstruído com /iazip, ou o jogador ainda tem o pack antigo. Volta a entrar depois da reconstrução.
Nenhum prefixoO plugin de chat não mostra o prefixo do LuckPerms. Verifica o Vault ou %luckperms_prefix% no formato dele.
Aparece o badge erradoPrioridades. O número mais alto ganha, por isso verifica-as com lp group <name> meta info.
Dois badges para um jogadorO grupo tem dois prefixos por causa do addprefix. Usa setprefix, ou configura o empilhamento de propósito.
O badge fica alto ou baixo demaisOutro resource pack desloca a fonte do chat. Altera o y_position (não acima do scale_ratio) e executa /iazip outra vez.

A mesma técnica de imagens de fonte também desenha fundos de menu inteiros: vê fundos de GUI personalizados no DeluxeMenus com ItemsAdder. E se os teus ranks vierem com vantagens de voto, o guia de recompensas de voto com VotingPlugin mostra como as distribuir.

Perguntas frequentes

Como é que os servidores mostram imagens de rank no chat?

Com um resource pack. Cada badge é uma imagem de fonte, um carácter personalizado. O ItemsAdder coloca-o no pack e substitui um placeholder como %img_vip%, que colocas no prefixo do LuckPerms.

Os jogadores precisam de transferir alguma coisa?

Os badges em imagem precisam do resource pack do servidor, que o ItemsAdder pode enviar quando os jogadores entram. Os prefixos de texto com códigos de cor não precisam de nada.

Que prefixo ganha se um jogador tiver vários grupos?

Por predefinição, o que tem a prioridade mais alta, o número em meta setprefix. Com a secção meta-formatting da config do LuckPerms também podes mostrar vários prefixos seguidos.

Que tamanho devem ter os ícones de rank?

A wiki do ItemsAdder pede imagens de 8 píxeis. O gerador define scale_ratio como a altura da imagem (8) e y_position como 7, para que a imagem seja desenhada 1:1 e fique nítida. A largura segue o texto.

Fontes

Verificado com a documentação oficial: