
DynamicHUD
A HUD library to create, display, load, save, interact and do much more with HUD elements (aka - widgets).
DynamicHUD for Minecraft Fabric
DynamicHUD is a library for mod creators using Fabric (Minecraft 1.19.4+). It lets developers create customizable HUD elements that players can modify and interact with, making visuals and gameplay more interesting. It is an API for developers.
Features
- Automatic Loading & Saving: Widgets automatically save their state and reload upon game restart, providing a seamless experience for players.
- Dynamic Values: Widgets can display real-time information, adapting to in-game events and data changes.
- Inbuilt Widgets: Start with
TextWidgetfor easy text display and expand with more specialized widgets. - Utility Classes: Utilize
DrawHelper,ColorHelper, andTextureHelperfor efficient and streamlined development. - ContextMenu: A general context menu featuring boolean, slider, runnable, color options, and list/enum selections for widget customization.
- Screen Border Control: Keeps widgets within screen boundaries.
- Snapping: Hold
Shiftto snap widgets to an imaginary grid. - Multi-Mod Support: Built for compatibility across mods.
- Easy Integration: Simple setup for quick implementation into your projects.
- Comprehensive Wiki: A detailed guide and reference for all features of DynamicHUD, available at https://tanishisherewith.gitbook.io/dynamic-hud.
DynamicHUD has a dedicated settings button when you open the option screen beside the 'FOV' slider which you can use to customise your widgets and menus.
Keybinds
Currently these keybinds are unmodifiable. These keybinds are only available version
4.0.0onwards.
1. Grouping and multi-selection
Keyboard shortcuts
- Drag selection window: Click and drag on empty space to draw a selection window. Any widget that overlaps this area will be selected.
CTRL + Left Clickmulti-selection: HoldCTRLand left click on individual widgets to toggle their selection state.- Group or ungroup toggle: Press
CTRL + Gto group the selected widgets. PressCTRL + Gagain to ungroup them.
Notes
- Dragging any widget in a group moves all unlocked widgets in that group.
- Locked widgets with
isLockedset totruedo not move with the group. - Hovering a group shows a dashed green bounding box around all grouped widgets.
2. Scaling widgets
Widgets can be scaled individually in the editor in two ways:
- Scaling keybind: Hover a widget and use
CTRL + Mouse Wheel Scrollto increase or decrease its local scale. - Scale dot: Selected widgets render a small scale dot in the bottom-right corner. Drag that dot to scale the widget.
Disclaimer
DynamicHUD provides tools for developers but does not add HUD elements by itself.
Users looking for in-game HUD elements should refer to mods that use DynamicHUD like
Fabric only — no plans for Forge support.
Showcase
Showcase Video
Installation for Users
To ensure mods that depend on DynamicHUD work correctly, follow these steps to add DynamicHUD to your Minecraft installation:
- Make sure you have Fabric and Fabric-API installed. You may also need to install YACL.
- Download the
dynamichud-<version>.jarfile from the official release page. - OPen your Minecraft directory's mod folder.
- Place the downloaded DynamicHUD
.jarfile into themodsfolder. - Run Minecraft. DynamicHUD will now be loaded, and any mods with DynamicHUD as a dependency can function properly. Enjoy :)
Getting Started For Developers
Visit our wiki for more detailed documentation.
To get started, begin with adding DynamicHUD as a dependency in your build.gradle file:
allprojects {
repositories {
maven { url 'https://jitpack.io' }
}
maven {
name 'Xander Maven'
url 'https://maven.isxander.dev/releases'
}
}
dependencies {
// Dynamic HUD
modImplementation 'com.github.V-Fast:DynamicHUD:<Version>'
}
Contributing
Contributions are welcome! If you’re interested in improving DynamicHUD or adding new features, please review our contributing guidelines. I myself am a solo developer in college and still learning to code. Updating to latest versions may take time. Any help will be greatly appreciated!
License
DynamicHUD is released under the MIT License. Feel free to use and modify it in your mods, with proper attribution back to this repository.
Support
Need assistance or have suggestions? Join our Discord community or submit an issue on our GitHub repository.
