Konfiguration
Hauptdatei: plugins/KGInfoServs-BQBetterHud/config.yml
Ziel dieser Seite: jede nützliche Konfigurationszeile erklären und was Sie damit tun können.
BetonQuest-Konfiguration (erforderlich)
In plugins/BetonQuest/config.yml:
conversation:
default_io: kg_bqhud,menu,chest
In jedem Gespräch können Sie auch erzwingen:
conversationIO: kg_bqhud
Wenn Sie noch kg_hud in default_io sehen, ersetzen Sie es durch kg_bqhud.
Globale Struktur
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
| Schlüssel | Standard | Wirkung |
|---|---|---|
language | "en" | Sprache der Plugin-Nachrichten (en oder fr) |
Resource Pack (standalone.resource-pack)
| Schlüssel | Standard | Wirkung |
|---|---|---|
output-mode | "folder" | Export-Modus des Packs: folder (Ordnergenerierung) oder self-host (direkter Versand an Spieler) |
self-host-port | 8164 | HTTP-Port, der in self-host verwendet wird |
public-url | "" | Öffentliche URL des Packs in self-host (in Produktion empfohlen) |
output-folder | "plugins/KGInfoServs-BQBetterHud/resourcepack" | Ausgabeordner im Modus folder |
force-pack | false | Erzwingt die Annahme des Packs auf Client-Seite |
pack-prompt | "Resource pack required for dialogue display." | Nachricht, die vor dem Download angezeigt wird |
regenerate-on-startup | false | Pack bei jedem Start automatisch neu generieren |
Globale Position (standalone)
| Schlüssel | Standard | Wirkung |
|---|---|---|
x-offset | 0 | Verschiebt das gesamte HUD auf der horizontalen Achse (rechts/links) |
y-offset | -200 | Verschiebt das gesamte HUD auf der vertikalen Achse |
Layout (standalone.layout)
Sie können die Elemente mit x und y verschieben.
Elemente, die einen scale unterstützen:
dialogue-bg.scaleanswer-bg.scaleavatar.scale
Vollständige Referenz:
| Schlüssel | Standard | Wirkung |
|---|---|---|
dialogue-bg.x | 0 | X-Position des Dialoghintergrunds |
dialogue-bg.y | 20 | Y-Position des Dialoghintergrunds |
dialogue-bg.scale | 1.0 | Größe des Dialoghintergrunds |
answer-bg.x | 180 | X-Position des Antwortenhintergrunds |
answer-bg.y | -30 | Y-Position des Antwortenhintergrunds |
answer-bg.scale | 1.0 | Größe des Antwortenhintergrunds |
npc-name.x | 10 | X-Position des NPC-Namens (Popup mit Optionen) |
npc-name.y | 19 | Y-Position des NPC-Namens (Popup mit Optionen) |
npc-name-spoken.x | 6 | X-Position des NPC-Namens (Popup ohne Optionen) |
npc-name-spoken.y | 23 | Y-Position des NPC-Namens (Popup ohne Optionen) |
name-bg.x | 0 | X-Position des Namenshintergrunds |
name-bg.y | 14 | Y-Position des Namenshintergrunds |
dialogue-text.x | 10 | X-Position des Dialogtexts (mit Optionen) |
dialogue-text.y | 32 | Y-Position des Dialogtexts (mit Optionen) |
dialogue-text.split-width | 166 | Umbruchbreite (automatischer Zeilenumbruch) des Dialogtexts |
dialogue-text-spoken.x | 10 | X-Position des Dialogtexts (ohne Optionen) |
dialogue-text-spoken.y | 36 | Y-Position des Dialogtexts (ohne Optionen) |
options-scroll.x | 226 | X-Position der Optionen im Modus scroll |
options-scroll.y | -25 | Y-Position der Optionen im Modus scroll |
options-scroll.line-height | 14 | Vertikaler Zeilenabstand der Optionen in scroll |
options-fixed.x | 190 | X-Position der Optionen im Modus fixed |
options-fixed.y | -25 | Y-Position der Optionen im Modus fixed |
options-fixed.line-height | 8 | Vertikaler Zeilenabstand der Optionen in fixed |
options-fixed.split-width | 160 | Maximale Breite des Optionstexts in fixed |
hand.x | 175 | X-Position der Auswahlhand |
hand.y | -26 | Y-Basisposition der Hand |
hand.spacing | 8 | Vertikaler Abstand zwischen den Händen |
avatar.x | -20 | X-Position des NPC-Avatars |
avatar.y | 0 | Y-Position des NPC-Avatars |
avatar.scale | 0.75 | Größe des NPC-Avatars |
text-height | 8 | Renderhöhe des Textes. Wert in Pixeln. Erhöhen für größeren Text, verringern für kompakteren Text. |
Hinweis: Die Parameter
hand.*werden nur im Modusselection-mode: fixedverwendet.
Textausrichtung (standalone.text-alignment)
Mögliche Werte: left, center, right
| Schlüssel | Standard | Wirkung |
|---|---|---|
dialogue | "center" | Ausrichtung des Dialogtexts |
speaker | "left" | Ausrichtung des NPC-Namens |
options | "left" | Ausrichtung des Optionstexts |
Text Fonts (standalone.text-fonts)
| Schlüssel | Standard | Wirkung |
|---|---|---|
dialogue | "" | Reserviert für die Schriftartauswahl pro Zone |
speaker | "" | Reserviert für die Schriftartauswahl pro Zone |
options | "" | Reserviert für die Schriftartauswahl pro Zone |
Wichtiger Hinweis: Im aktuellen Build verwendet das Rendering hauptsächlich die Standardschrift aus fonts.yml.
Option Sound (option-sound)
| Schlüssel | Standard | Wirkung |
|---|---|---|
key | "minecraft:ui.button.click" | Sound, der beim Wechsel der Option abgespielt wird |
volume | 1.0 | Lautstärke des Sounds |
pitch | 1.0 | Tonhöhe des Sounds |
Typewriter (typewriter)
| Schlüssel | Standard | Wirkung |
|---|---|---|
enabled | true | Aktiviert/deaktiviert den Schreibmaschineneffekt |
speed | 30 | Anzeigegeschwindigkeit des Textes (Zeichen pro Sekunde) |
Leistungshinweise:
Das Plugin verwendet ein mehrstufiges Optimierungssystem für den Typewriter-Effekt:
- Sofortige Übergänge zwischen Dialogschritten (kein Lag)
- Optimiertes Rendering mit 5 Leistungsstufen
- Fast Path für kurze Dialoge
Diese Optimierungen erfolgen automatisch und erfordern keine Konfiguration.
Selection Mode (selection-mode)
| Schlüssel | Standard | Wirkung |
|---|---|---|
selection-mode | "scroll" | Auswahlmodus: scroll oder fixed |
Unterschiede zwischen den Modi
Modus scroll (Standard):
- Klassische Bildlaufliste
- Die ausgewählte Option bleibt stets sichtbar
- Automatisches Scrollen, wenn mehr Optionen als verfügbarer Platz vorhanden sind
- Position wird über
standalone.layout.options-scrollkonfiguriert
Modus fixed:
- Feste Liste mit Handanzeiger
- Alle Optionen werden gleichzeitig angezeigt
- Gleitendes Fenster für unbegrenztes Scrollen
- Automatischer Zeilenumbruch gemäß
split-width - Position wird über
standalone.layout.options-fixedkonfiguriert
Empfehlung:
scroll: ideal für 2-5 kurze Optionenfixed: ideal für 3-10 Optionen mit langem Text
Selection Indicator (selection-indicator)
| Schlüssel | Standard | Wirkung |
|---|---|---|
prefix | "" | Text, der vor der ausgewählten Option eingefügt wird (z. B. "▶ " oder "> ") |
selected-color | "<#97deaa>" | Farbe der ausgewählten Option |
unselected-color | "<gray>" | Farbe der übrigen Optionen |
hand-base-y | -25 | Y-Basiswert zur Berechnung der Auswahlhand |
hand-line-height | 10 | Y-Abstand zwischen 2 Zeilen für die Hand |
max-option-length | 0 | Maximale Länge der Option (0 = unbegrenzt) |
Updater (updater)
| Schlüssel | Standard | Wirkung |
|---|---|---|
auto-download | false | Automatischer Download von Updates bei Verfügbarkeit |
Änderungen übernehmen
config.ymlbearbeiten./bqhud reloadausführen.- Im Spiel überprüfen.
Bei visuellen Änderungen (layout, x-offset, y-offset, Avatare/Hintergründe) sollten Sie immer unter realen Bedingungen testen.
Erweiterte Fonts (fonts.yml)
Datei: plugins/KGInfoServs-BQBetterHud/fonts.yml
Das Plugin verwendet Java AWT für das Font-Rendering, was maximale Flexibilität ermöglicht.
Rendering-System
Das Plugin unterstützt zwei Text-Rendering-Modi:
- Java AWT (Standard): Rendering mit System-Fonts oder benutzerdefinierten TTF
- Minecraft Fonts: verwendet die Bitmap-Fonts von Minecraft (
ascii.pngusw.)
Standardkonfiguration
default:
# Schriftgröße in Pixeln (16 = normale Minecraft-Größe)
scale: 16
# Pfad zur TTF-Datei (relativ zu plugins/KGInfoServs-BQBetterHud/fonts/)
# Beispiele: "font.ttf", "minecraft.ttf", "custom/myfont.ttf"
# Leer lassen, um die Standard-Java-Systemschriftart zu verwenden
file: ""
# Minecraft-Fonts anstelle des Java-AWT-Renderings verwenden
# true = verwendet minecraft:font/ascii.png (Bitmap-Fonts)
# false = Rendering mit Java AWT (TTF oder System)
use-unifont: false
# Mit den Minecraft-Bitmap-Fonts zusammenführen (Sonderzeichen)
# Enthält: ascii.png, accented.png, nonlatin_european.png
# Wird nur verwendet, wenn use-unifont auf true steht
merge-default-bitmap: true
# Sprachfilter (nicht verwendet mit Java AWT)
include: []
Ladepriorität der Fonts
Das Plugin lädt die Fonts in dieser Reihenfolge:
- Wenn
fileangegeben ist und existiert → lädt die TTF-Datei - Wenn
fileleer oder nicht vorhanden ist → verwendet die Java-System-Schriftart - Wenn
use-unifontauf true steht → verwendet ausschließlich die Minecraft-Fonts
Benutzerdefinierte Fonts
Sie können mehrere benannte Schriftarten definieren:
fonts:
# Benutzerdefinierte TTF-Schriftart
custom_ttf:
file: "font.ttf" # In plugins/KGInfoServs-BQBetterHud/fonts/ ablegen
scale: 16
use-unifont: false
merge-default-bitmap: false
include: []
# Kleine Schriftart für Untertitel
small_text:
file: ""
scale: 12
use-unifont: false
merge-default-bitmap: false
include: []
# Große Schriftart für Titel
large_title:
file: ""
scale: 24
use-unifont: false
merge-default-bitmap: false
include: []
Eine Schriftart in config.yml referenzieren
Wichtiger Hinweis: In der aktuellen Version verwendet das Rendering hauptsächlich die Schriftart default, die in fonts.yml definiert ist.
Die Schlüssel standalone.text-fonts in config.yml sind für zukünftige Funktionen reserviert:
# Reserviert für die Schriftartauswahl pro Zone (zukünftige Funktion)
standalone:
text-fonts:
dialogue: "" # Zukünftig: Referenz auf fonts.custom_ttf
speaker: ""
options: ""
Anwendungsbeispiele
Eine Systemschriftart verwenden
default:
scale: 16
file: "" # Leer = Systemschriftart
use-unifont: false
Eine benutzerdefinierte TTF-Schriftart verwenden
- Platzieren Sie Ihre Datei
meineschrift.ttfinplugins/KGInfoServs-BQBetterHud/fonts/ - Konfigurieren Sie
fonts.yml:
default:
scale: 16
file: "meineschrift.ttf"
use-unifont: false
- Neu laden:
/bqhud reload
Die Minecraft-Fonts verwenden
default:
scale: 16
file: ""
use-unifont: true
merge-default-bitmap: true
Empfohlene Größen
| Scale | Größe | Empfohlene Verwendung |
|---|---|---|
| 8 | Sehr klein | Nebentext, Anmerkungen |
| 12 | Klein | Untertitel |
| 16 | Normal | Standard-Dialogtext (Minecraft-Standard) |
| 20 | Groß | Titel |
| 24 | Sehr groß | Wichtige Titel |
Kompatible Schriftarten
Das Java-AWT-System unterstützt:
- TTF (TrueType Font) ✅
- OTF (OpenType Font) ✅
- Installierte Systemschriftarten ✅
Fehlerbehebung Fonts
Die benutzerdefinierte Schriftart wird nicht angezeigt
Mögliche Ursachen:
- TTF-Datei falsch platziert (überprüfen Sie den Ordner
fonts/) - Falscher Dateiname in
fonts.yml - Beschädigte TTF-Datei
Lösung:
# Logs nach dem Reload überprüfen
/bqhud reload
# Achten Sie auf die Meldungen "[FontManager]" in der Konsole
Der Text ist zu klein/groß
Passen Sie den scale in fonts.yml an:
default:
scale: 20 # Erhöhen, um zu vergrößern
Dann neu laden: /bqhud reload
Fehlende Sonderzeichen
Wenn Sie eine TTF-Schriftart verwenden, die nicht alle Zeichen enthält, aktivieren Sie das Merge:
default:
file: "meineschrift.ttf"
use-unifont: false
merge-default-bitmap: true # Fügt die Minecraft-Zeichen hinzu
Performance
Das Java-AWT-Rendering ist optimiert:
- Generierung der Glyphen bei der Erstellung des Resource Packs (nicht in Echtzeit)
- Textur-Cache im Pack
- Keine Serverlast während der Dialoge