Pular para o conteúdo principal

Customização Visual

Este guia explica como personalizar a aparência visual do HUD de diálogo.

🎨 Visão geral

O sistema de renderização standalone permite personalizar:

  • Backgrounds: fundos de interface (diálogo, respostas, nome NPC)
  • Avatares: imagens dos NPCs
  • Layout: posições X/Y de cada elemento
  • Scale: tamanho dos elementos visuais

📁 Estrutura das pastas

plugins/KGInfoServs-BQBetterHud/
├── avatars/ # Avatares dos NPCs (PNG)
├── backgrounds/ # Fundos de interface (PNG)
├── fonts/ # Fontes personalizadas (TTF)
└── resourcepack/ # Pack gerado (modo folder)

🖼️ Backgrounds (fundos de interface)

Arquivos disponíveis

Os backgrounds são globais (não vinculados a um NPC específico):

ArquivoUsoDimensões recomendadas
dialogue.pngFundo da caixa de diálogoVariável
answer.pngFundo da zona de respostasVariável
hand.pngIndicador de seleção (mão)8x8 pixels
name_start.pngInício do fundo do nome NPCVariável
name_mid.pngMeio do fundo do nome NPCVariável
name_end.pngFim do fundo do nome NPCVariável

Processo de customização

  1. Criar seus PNG com as dimensões desejadas
  2. Colocar os arquivos em plugins/KGInfoServs-BQBetterHud/backgrounds/
  3. Recarregar com /bqhud reload
  4. Testar no jogo
Dica

Os arquivos name_start.png, name_mid.png, name_end.png formam um sistema de "9-slice" para adaptar a largura do fundo ao nome do NPC.

Exemplo: Tema escuro

Para criar um tema escuro personalizado:

# Estrutura dos seus arquivos
backgrounds/
├── dialogue.png # Fundo preto semi-transparente
├── answer.png # Fundo cinza escuro
├── hand.png # Mão branca para contraste
├── name_start.png # Borda esquerda preta
├── name_mid.png # Fundo preto repetível
└── name_end.png # Borda direita preta

Após adicionar:

/bqhud reload
Modo folder vs self-host
  • Modo folder: após /bqhud reload, você deve reconstruir e republicar seu resource pack de servidor
  • Modo self-host: após /bqhud reload, o pack é automaticamente regenerado e reenviado aos jogadores

🎭 Avatares NPC

Veja a página Avatares e Backgrounds para o sistema de avatares.

📐 Layout: Posicionar os elementos

Sistema de coordenadas

O HUD usa um sistema de coordenadas em pixels:

  • Origem (0, 0): ponto de referência da BossBar
  • X positivo: para a direita
  • X negativo: para a esquerda
  • Y positivo: para cima
  • Y negativo: para baixo

Offsets globais

Antes de posicionar os elementos individuais, você pode mover todo o HUD:

standalone:
x-offset: 0 # Move tudo horizontalmente
y-offset: -200 # Move tudo verticalmente

Exemplos:

  • x-offset: 50 → HUD deslocado 50 pixels para a direita
  • y-offset: -250 → HUD mais baixo na tela
  • y-offset: -150 → HUD mais alto na tela

Elementos configuráveis

Fundos de interface

standalone:
layout:
dialogue-bg:
x: 0
y: 20
scale: 1.0 # Tamanho (1.0 = 100%, 1.5 = 150%)

answer-bg:
x: 180
y: -30
scale: 1.0

name-bg:
x: 0
y: 14

Texto e nome NPC

standalone:
layout:
# Nome NPC (com opções)
npc-name:
x: 10
y: 19

# Nome NPC (sem opções, "spoken")
npc-name-spoken:
x: 6
y: 23

# Texto diálogo (com opções)
dialogue-text:
x: 10
y: 32
split-width: 166 # Largura antes da quebra de linha

# Texto diálogo (sem opções, "spoken")
dialogue-text-spoken:
x: 10
y: 36

# Altura do texto
text-height: 8

Opções de resposta

Dois modos disponíveis: scroll e fixed

Modo scroll (lista rolável):

standalone:
layout:
options-scroll:
x: 226
y: -25
line-height: 14 # Espaçamento entre as linhas

Modo fixed (lista fixa com indicador):

standalone:
layout:
options-fixed:
x: 190
y: -25
line-height: 8
split-width: 160 # Largura máxima antes da quebra de linha

hand: # Indicador de seleção
x: 175
y: -26
spacing: 8 # Espaçamento vertical entre mãos

Avatar NPC

standalone:
layout:
avatar:
x: -20
y: 0
scale: 0.75 # Tamanho do avatar (0.5 = 50%, 1.0 = 100%)

Exemplos de layouts personalizados

Layout centralizado

standalone:
x-offset: 0
y-offset: -180
layout:
dialogue-bg:
x: 0
y: 20
scale: 1.2
dialogue-text:
x: 15
y: 35
split-width: 180
avatar:
x: -25
y: 5
scale: 1.0

Layout deslocado para a direita

standalone:
x-offset: 100
y-offset: -200
layout:
dialogue-bg:
x: 0
y: 20
scale: 1.0
answer-bg:
x: 200
y: -30
scale: 1.0

Layout compacto (tela pequena)

standalone:
x-offset: 0
y-offset: -220
layout:
dialogue-bg:
x: 0
y: 15
scale: 0.8
dialogue-text:
x: 8
y: 25
split-width: 140
avatar:
x: -15
y: 0
scale: 0.6

🎨 Alinhamento do texto

Você pode escolher o alinhamento para cada seção:

standalone:
text-alignment:
dialogue: center # left, center, right
speaker: left # Nome do NPC
options: left # Opções de resposta

Exemplos de uso:

  • dialogue: center → Texto centralizado para um estilo cinemático
  • dialogue: left → Texto alinhado à esquerda para um estilo clássico
  • options: right → Opções alinhadas à direita

🔧 Workflow de customização

Passo 1: Preparar seus assets

  1. Crie seus PNG em um software de edição de imagem (GIMP, Photoshop, Paint.NET)
  2. Use a transparência (canal alpha) para as zonas vazias
  3. Respeite as dimensões recomendadas

Passo 2: Testar localmente

  1. Coloque seus arquivos nas pastas apropriadas
  2. Execute /bqhud reload
  3. Teste com um diálogo BetonQuest no jogo
  4. Ajuste as posições em config.yml

Passo 3: Iteração

Repita até obter o resultado desejado:

# 1. Modificar config.yml
# 2. Recarregar
/bqhud reload
# 3. Testar no jogo
# 4. Ajustar e recomeçar

Passo 4: Implantação

Modo folder:

  1. A pasta plugins/KGInfoServs-BQBetterHud/resourcepack contém os assets gerados
  2. Integre este conteúdo no seu resource pack de servidor
  3. Rebuild e redistribua seu pack

Modo self-host:

  1. O pack é automaticamente regenerado
  2. Os jogadores recebem a atualização ao reconectar

📊 Tabela resumida dos scales

ElementoChave configScale padrãoEfeito do scale
Fundo diálogodialogue-bg.scale1.0Aumenta/reduz o fundo
Fundo respostasanswer-bg.scale1.0Aumenta/reduz o fundo
Avatar NPCavatar.scale0.75Aumenta/reduz o avatar

Valores recomendados:

  • 0.5: Muito pequeno (50%)
  • 0.75: Pequeno (75%)
  • 1.0: Normal (100%)
  • 1.25: Grande (125%)
  • 1.5: Muito grande (150%)

🚀 Dicas de performance

Otimização dos PNG

Para melhores performances:

  1. Comprima seus PNG com ferramentas como TinyPNG ou pngquant
  2. Use dimensões razoáveis (máx 512x512 para os backgrounds)
  3. Evite imagens enormes que sobrecarregam o resource pack

Tamanho do resource pack

O plugin gera um pack otimizado:

  • Compressão automática em ZIP
  • Sem arquivos inúteis
  • Cache SHA-1 para evitar re-downloads

❓ Perguntas frequentes

O layout não se aplica após /bqhud reload

Solução:

  1. Verifique a sintaxe YAML em config.yml
  2. Veja os logs do servidor para detectar erros
  3. No modo folder, você deve rebuild seu pack de servidor

Os backgrounds não são exibidos

Causas possíveis:

  1. Arquivos PNG mal nomeados (respeite a caixa exata)
  2. Arquivos corrompidos ou formato inválido
  3. Resource pack não carregado pelo cliente

Solução:

/bqhud reload
# Verifique os logs para ver se os backgrounds são detectados

Como voltar ao layout padrão?

Apague suas modificações em config.yml e restaure os valores padrão, depois:

/bqhud reload

📖 Veja também