How It Works
BetterHud displays HUD elements using a clever technique:Convert images to font glyphs
PNG images from your
images/ directory are converted into custom font charactersPackage into resource pack
All assets are compiled into a standard Minecraft resource pack (
.zip file)BetterHud uses boss bars as the rendering surface because they’re always visible and positioned consistently across clients.
Resource Pack Location
The generated resource pack is saved in:The resource pack is regenerated automatically whenever you
/hud reload or restart the server.Resource Pack Contents
Inside the generated pack:Font Provider Files
BetterHud generates font JSON files that map characters to images:BetterHud uses Unicode Private Use Area characters (
\uE000 - \uF8FF) to avoid conflicts with normal text.Distribution Methods
Players need to download the resource pack to see your HUD. There are several ways to distribute it:- Server Resource Pack
- Plugin-based Distribution
- Manual Distribution
- Velocity Proxy
Automatic Download
Configure Minecraft to automatically send the pack to players:1. Host the pack publiclyUploadpack.zip to:- GitHub Releases
- Dropbox / Google Drive (direct download link)
- Your own web server
- MC-Packs.net
Pack Versioning
BetterHud includes metadata inpack.mcmeta:
Pack Format by Version
| Minecraft Version | Pack Format |
|---|---|
| 1.20.4 | 22 |
| 1.20.3 | 18 |
| 1.20-1.20.2 | 15 |
| 1.19.4 | 13 |
| 1.19.3 | 12 |
BetterHud automatically sets the correct
pack_format based on your server version.Custom Assets
Add your own images and fonts to the resource pack:Adding Custom Images
1. Create image file Place PNG files in:Image Requirements
Format
Format
- Must be PNG format
- Supports transparency (alpha channel)
- 32-bit RGBA recommended
Size
Size
- Must be power of 2 dimensions (e.g., 16x16, 32x32, 64x64, 128x128)
- Maximum recommended: 512x512
- Larger images = larger resource pack size
Optimization
Optimization
- Use smallest size that looks good
- Compress with tools like PNGGauntlet
- Remove unnecessary metadata
Custom Fonts
BetterHud supports custom font files: 1. Add font fileTTF and OTF font formats are supported. Fonts are converted to bitmap fonts in the resource pack.
Troubleshooting
Players don't see HUD
Players don't see HUD
Symptoms: HUD elements invisible or showing as blank barsSolutions:
- Ensure players have downloaded the resource pack
- Check if resource pack prompt was declined
- Verify
require-resource-pack=truein server.properties - Confirm pack URL is publicly accessible
- Check SHA1 hash matches
Resource pack not generating
Resource pack not generating
Symptoms:
/hud reload succeeds but no pack.zip createdSolutions:- Check console for errors during reload
- Verify image files are valid PNG format
- Ensure file permissions allow writing to
plugins/BetterHud/pack/ - Check disk space
Images appear corrupted
Images appear corrupted
Symptoms: Images display incorrectly or with artifactsSolutions:
- Verify PNG files are valid (open in image editor)
- Check image dimensions are power of 2
- Remove non-standard PNG metadata
- Ensure transparency is properly configured
Pack too large to download
Pack too large to download
Symptoms: Players timeout downloading the packSolutions:
- Compress images (use smaller dimensions)
- Remove unused images from
images/directory - Use external hosting with fast CDN
- Consider splitting into multiple packs
Updating the Pack
When you modify HUD configurations:Players won’t automatically re-download the pack unless they reconnect or the SHA1 hash changes.
Advanced: Pack Overlays
Combine BetterHud packs with other resource packs: 1. Extract BetterHud packproviders arrays in font JSON files:
Best Practices
Performance
Performance
- Keep total pack size under 50 MB
- Use smallest viable image dimensions
- Compress images without quality loss
- Remove unused images and fonts
Distribution
Distribution
- Use CDN or fast hosting for large packs
- Enable
require-resource-packto ensure all players have it - Provide fallback download links
- Test pack download speed from different regions
Maintenance
Maintenance
- Version your packs (e.g.,
pack-v1.2.3.zip) - Keep backup copies of working packs
- Document pack changes in changelog
- Test pack thoroughly before distributing
Next Steps
Images
Configure HUD images and animations
Fonts
Set up custom fonts for text displays
Shaders
Add advanced rendering effects
Architecture
Understand how BetterHud’s internals work
