Configuração
Arquivo principal: plugins/KGInfoServs-BQBetterHud/config.yml
Objetivo desta página: explicar cada linha útil de configuração e o que você pode fazer com ela.
Configuração BetonQuest (obrigatório)
Em plugins/BetonQuest/config.yml:
conversation:
default_io: kg_bqhud,menu,chest
Em cada conversa, você também pode forçar:
conversationIO: kg_bqhud
Se você ainda vê kg_hud em default_io, substitua por kg_bqhud.
Estrutura global
language: "en"
standalone:
resource-pack:
output-mode: "folder"
self-host-port: 8164
public-url: ""
output-folder: "plugins/KGInfoServs-BQBetterHud/resourcepack"
force-pack: false
pack-prompt: "Resource pack required for dialogue display."
regenerate-on-startup: false
x-offset: 0
layout: ...
text-alignment: ...
text-fonts: ...
y-offset: -200
option-sound:
key: "minecraft:ui.button.click"
volume: 1.0
pitch: 1.0
typewriter:
enabled: true
speed: 30
selection-mode: "scroll"
selection-indicator:
prefix: ""
selected-color: "<#97deaa>"
unselected-color: "<gray>"
hand-base-y: -25
hand-line-height: 10
max-option-length: 0
updater:
auto-download: false
language
| Chave | Padrão | Efeito |
|---|---|---|
language | "en" | Idioma das mensagens do plugin (en ou fr) |
Resource Pack (standalone.resource-pack)
| Chave | Padrão | Efeito |
|---|---|---|
output-mode | "folder" | Modo de exportação do pack: folder (geração de pasta) ou self-host (envio direto aos jogadores) |
self-host-port | 8164 | Porta HTTP usada em self-host |
public-url | "" | URL pública do pack em self-host (recomendado em prod) |
output-folder | "plugins/KGInfoServs-BQBetterHud/resourcepack" | Pasta de saída no modo folder |
force-pack | false | Força a aceitação do pack do lado do cliente |
pack-prompt | "Resource pack required for dialogue display." | Mensagem exibida antes do download |
regenerate-on-startup | false | Regenerar automaticamente o pack a cada inicialização |
Posição Global (standalone)
| Chave | Padrão | Efeito |
|---|---|---|
x-offset | 0 | Move todo o HUD no eixo horizontal (direita/esquerda) |
y-offset | -200 | Move todo o HUD no eixo vertical |
Layout (standalone.layout)
Você pode mover os elementos com x e y.
Os elementos que suportam um scale:
dialogue-bg.scaleanswer-bg.scaleavatar.scale
Referência completa:
| Chave | Padrão | Efeito |
|---|---|---|
dialogue-bg.x | 0 | Posição X do fundo do diálogo |
dialogue-bg.y | 20 | Posição Y do fundo do diálogo |
dialogue-bg.scale | 1.0 | Tamanho do fundo do diálogo |
answer-bg.x | 180 | Posição X do fundo das respostas |
answer-bg.y | -30 | Posição Y do fundo das respostas |
answer-bg.scale | 1.0 | Tamanho do fundo das respostas |
npc-name.x | 10 | Posição X do nome NPC (popup com opções) |
npc-name.y | 19 | Posição Y do nome NPC (popup com opções) |
npc-name-spoken.x | 6 | Posição X do nome NPC (popup sem opções) |
npc-name-spoken.y | 23 | Posição Y do nome NPC (popup sem opções) |
name-bg.x | 0 | Posição X do fundo do nome |
name-bg.y | 14 | Posição Y do fundo do nome |
dialogue-text.x | 10 | Posição X do texto do diálogo (com opções) |
dialogue-text.y | 32 | Posição Y do texto do diálogo (com opções) |
dialogue-text.split-width | 166 | Largura de corte (quebra de linha auto) do texto do diálogo |
dialogue-text-spoken.x | 10 | Posição X do texto do diálogo (sem opções) |
dialogue-text-spoken.y | 36 | Posição Y do texto do diálogo (sem opções) |
options-scroll.x | 226 | Posição X das opções no modo scroll |
options-scroll.y | -25 | Posição Y das opções no modo scroll |
options-scroll.line-height | 14 | Espaçamento vertical das linhas de opções em scroll |
options-fixed.x | 190 | Posição X das opções no modo fixed |
options-fixed.y | -25 | Posição Y das opções no modo fixed |
options-fixed.line-height | 8 | Espaçamento vertical das linhas de opções em fixed |
options-fixed.split-width | 160 | Largura máxima do texto de opções em fixed |
hand.x | 175 | Posição X da mão de seleção |
hand.y | -26 | Posição Y base da mão |
hand.spacing | 8 | Espaçamento vertical entre mãos |
avatar.x | -20 | Posição X do avatar NPC |
avatar.y | 0 | Posição Y do avatar NPC |
avatar.scale | 0.75 | Tamanho do avatar NPC |
text-height | 8 | Altura de renderização do texto |
Text Alignment (standalone.text-alignment)
Valores possíveis: left, center, right
| Chave | Padrão | Efeito |
|---|---|---|
dialogue | "center" | Alinhamento do texto do diálogo |
speaker | "left" | Alinhamento do nome NPC |
options | "left" | Alinhamento do texto das opções |
Text Fonts (standalone.text-fonts)
| Chave | Padrão | Efeito |
|---|---|---|
dialogue | "" | Reservado para seleção de fonte por zona |
speaker | "" | Reservado para seleção de fonte por zona |
options | "" | Reservado para seleção de fonte por zona |
Nota importante: na build atual, a renderização usa principalmente a fonte padrão de fonts.yml.
Option Sound (option-sound)
| Chave | Padrão | Efeito |
|---|---|---|
key | "minecraft:ui.button.click" | Som tocado ao mudar de opção |
volume | 1.0 | Volume do som |
pitch | 1.0 | Tom do som |
Typewriter (typewriter)
| Chave | Padrão | Efeito |
|---|---|---|
enabled | true | Ativa/desativa o efeito máquina de escrever |
speed | 30 | Velocidade de exibição do texto (caracteres por segundo) |
Notas de performance:
O plugin usa um sistema de otimização multi-níveis para o efeito typewriter:
- Transições instantâneas entre etapas de diálogo (sem lag)
- Renderização otimizada com 5 níveis de performance
- Fast path para diálogos curtos
Essas otimizações são automáticas e não requerem nenhuma configuração.
Selection Mode (selection-mode)
| Chave | Padrão | Efeito |
|---|---|---|
selection-mode | "scroll" | Modo de seleção: scroll ou fixed |
Diferenças entre os modos
Modo scroll (padrão):
- Lista rolável clássica
- A opção selecionada permanece sempre visível
- Rolagem automática se mais opções do que o espaço disponível
- Posição configurada via
standalone.layout.options-scroll
Modo fixed:
- Lista fixa com indicador de mão
- Todas as opções exibidas simultaneamente
- Janela deslizante para scroll ilimitado
- Quebra de linha automática segundo
split-width - Posição configurada via
standalone.layout.options-fixed
Recomendação:
scroll: ideal para 2-5 opções curtasfixed: ideal para 3-10 opções com texto longo
Selection Indicator (selection-indicator)
| Chave | Padrão | Efeito |
|---|---|---|
prefix | "" | Prefixo adicionado à opção selecionada |
selected-color | "<#97deaa>" | Cor da opção selecionada |
unselected-color | "<gray>" | Cor das outras opções |
hand-base-y | -25 | Base Y de cálculo da mão de seleção |
hand-line-height | 10 | Diferença Y entre 2 linhas para a mão |
max-option-length | 0 | Comprimento máximo da opção (0 = ilimitado) |
Updater (updater)
| Chave | Padrão | Efeito |
|---|---|---|
auto-download | false | Download automático de atualizações quando disponíveis |
Como aplicar as mudanças
- Modificar
config.yml. - Executar
/bqhud reload. - Verificar no jogo.
Para mudanças visuais (layout, x-offset, y-offset, avatares/backgrounds), sempre faça um teste em condição real.
Fontes avançadas (fonts.yml)
Arquivo: plugins/KGInfoServs-BQBetterHud/fonts.yml
O plugin usa Java AWT para renderização de fontes, o que permite máxima flexibilidade.
Sistema de renderização
O plugin suporta dois modos de renderização de texto:
- Java AWT (padrão): renderização com fontes do sistema ou TTF personalizadas
- Minecraft fonts: usa as fontes bitmap do Minecraft (
ascii.png, etc.)
Configuração padrão
default:
# Tamanho da fonte em pixels (16 = tamanho normal Minecraft)
scale: 16
# Caminho para arquivo TTF (relativo a plugins/KGInfoServs-BQBetterHud/fonts/)
# Exemplos: "font.ttf", "minecraft.ttf", "custom/myfont.ttf"
# Deixe vazio para usar a fonte do sistema Java padrão
file: ""
# Usar as fontes Minecraft em vez da renderização Java AWT
# true = usa minecraft:font/ascii.png (fontes bitmap)
# false = renderização com Java AWT (TTF ou sistema)
use-unifont: false
# Mesclar com as fontes bitmap Minecraft (caracteres especiais)
# Inclui: ascii.png, accented.png, nonlatin_european.png
# Usado apenas quando use-unifont é true
merge-default-bitmap: true
# Filtros de idioma (não usados com Java AWT)
include: []
Prioridade de carregamento das fontes
O plugin carrega as fontes nesta ordem:
- Se
fileé especificado e existe → Carrega o arquivo TTF - Se
fileestá vazio ou ausente → Usa a fonte do sistema Java - Se
use-unifonté true → Usa apenas as fontes Minecraft
Fontes personalizadas
Você pode definir várias fontes nomeadas:
fonts:
# Fonte TTF personalizada
custom_ttf:
file: "font.ttf" # Colocar em plugins/KGInfoServs-BQBetterHud/fonts/
scale: 16
use-unifont: false
merge-default-bitmap: false
include: []
# Fonte pequena para legendas
small_text:
file: ""
scale: 12
use-unifont: false
merge-default-bitmap: false
include: []
# Fonte grande para títulos
large_title:
file: ""
scale: 24
use-unifont: false
merge-default-bitmap: false
include: []
Referenciar uma fonte em config.yml
Nota importante: Na versão atual, a renderização usa principalmente a fonte default definida em fonts.yml.
As chaves standalone.text-fonts em config.yml são reservadas para funcionalidades futuras:
# Reservado para seleção de fonte por zona (recurso futuro)
standalone:
text-fonts:
dialogue: "" # Futuro: referência a fonts.custom_ttf
speaker: ""
options: ""
Exemplos de uso
Usar uma fonte do sistema
default:
scale: 16
file: "" # Vazio = fonte do sistema
use-unifont: false
Usar uma fonte TTF personalizada
- Coloque seu arquivo
minhafonte.ttfemplugins/KGInfoServs-BQBetterHud/fonts/ - Configure
fonts.yml:
default:
scale: 16
file: "minhafonte.ttf"
use-unifont: false
- Recarregue:
/bqhud reload
Usar as fontes Minecraft
default:
scale: 16
file: ""
use-unifont: true
merge-default-bitmap: true
Tamanhos recomendados
| Scale | Tamanho | Uso recomendado |
|---|---|---|
| 8 | Muito pequeno | Texto secundário, anotações |
| 12 | Pequeno | Legendas |
| 16 | Normal | Texto de diálogo padrão (padrão Minecraft) |
| 20 | Grande | Títulos |
| 24 | Muito grande | Títulos importantes |
Fontes compatíveis
O sistema Java AWT suporta:
- TTF (TrueType Font) ✅
- OTF (OpenType Font) ✅
- Fontes do sistema instaladas ✅
Troubleshooting fonts
A fonte personalizada não é exibida
Causas possíveis:
- Arquivo TTF mal colocado (verifique a pasta
fonts/) - Nome de arquivo incorreto em
fonts.yml - Arquivo TTF corrompido
Solução:
# Verificar os logs após reload
/bqhud reload
# Veja as mensagens "[FontManager]" no console
O texto está muito pequeno/grande
Ajuste o scale em fonts.yml:
default:
scale: 20 # Aumentar para ampliar
Depois recarregue: /bqhud reload
Caracteres especiais faltando
Se você usa uma fonte TTF que não tem todos os caracteres, ative o merge:
default:
file: "minhafonte.ttf"
use-unifont: false
merge-default-bitmap: true # Adiciona os caracteres Minecraft
Performance
A renderização Java AWT é otimizada:
- Geração dos glifos na criação do resource pack (não em tempo real)
- Cache das texturas no pack
- Sem sobrecarga no servidor durante os diálogos