DirectionHUD
DirectionHUD is a fully customizable Minecraft Fabric mod that enhances the vanilla navigation experience. With the mod, you can save coordinates, track other players, see death locations, all with full customization with the /hud and /destination commands.
Help localize DirectionHUD on Crowdin!

Where does the mod work? - DirectionHUD both works on client and server, but for now the client side only supports single player & DirectionHUD servers. As with anything, that can change with time.
\
How do I set custom destinations? - You can use /dest set
Check out my other Projects!
Features
Press H to toggle the hud.
HUD Customization
Toggle and customize HUD modules to your liking, while sorting them to be perfect for you.

Saving Coordinates
Tired of writing down base locations? \ Save, set, convert, and edit coordinates easily using the chat UI.

Tracking
Having trouble hunting down keeping up with your friends?
\
Send a tracking request and start your adventures!
Death Saving
Which cave did I die in... \ See your past previous deaths (customizable in the config)
Command Settings
CUSTOMIZATION? MORE \ Toggle destination & HUD settings, like bossbar color or autoclear status.
\

Color Perfection
Need to find the perfect color combination? \ Use the included presets, make a custom preset with the name of your choice, or use the color picker to set your favorite colors!
\

Config Settings
Change default player configs and DirectionHUD settings using the config file when running on server, or use ModMenu & YetAnotherConfigLib when running on client.
Future Goals - GitHub
All Versions
+ Add Version| Name | Game version | Platforms | Published | Downloads | Actions |
|---|---|---|---|---|---|
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 |
#### Changes:
- bumped OtterLib support to 0.4, for plugin support
- ported the new version to paper and spigot
## Past Changes
- nothing yet*
#### Changes:
- bumped OtterLib support to 0.4, for plugin support
- ported the new version to paper and spigot
## Past Changes
- nothing yet*
#### Changes:
- bumped OtterLib support to 0.4, for plugin support
- ported the new version to paper and spigot
## Past Changes
- nothing yet*
#### Changes:
- bumped OtterLib support to 0.4, for plugin support
- ported the new version to paper and spigot
## Past Changes
- nothing yet*
#### Changes:
- changed the maximum version to be up to 26.2 to account for the small patches
## Past Changes
### v1.8.3.1
#### Fixes
- fixed an issue with simple action bars crashing the game or kicking players off of the server
- fixed and issue with the time module not syncing up to the world time
### v1.8.3.0
OtterLib support if finally here!
This update has been a long time coming, but since the scope was so big, working on it was a pain.
There is going to be some issues with some of the messages displayed in the mod so please let me know if y'all find any.
Hopefully after this update smooths out, I can go back to adding cool features!
Thank you all for the support over the years!
#### Additions
- added OtterLib as a required dependency
- (probably) added a bunch of text related bugs 🥲
#### Changes:
- changed the maximum version to be up to 26.2 to account for the small patches
## Past Changes
### v1.8.3.1
#### Fixes
- fixed an issue with simple action bars crashing the game or kicking players off of the server
- fixed and issue with the time module not syncing up to the world time
### v1.8.3.0
OtterLib support if finally here!
This update has been a long time coming, but since the scope was so big, working on it was a pain.
There is going to be some issues with some of the messages displayed in the mod so please let me know if y'all find any.
Hopefully after this update smooths out, I can go back to adding cool features!
Thank you all for the support over the years!
#### Additions
- added OtterLib as a required dependency
- (probably) added a bunch of text related bugs 🥲
#### Fixes
- fixed an issue with simple action bars crashing the game or kicking players off of the server
- fixed and issue with the time module not syncing up to the world time
## Past Changes
### v1.8.3.0
OtterLib support if finally here!
This update has been a long time coming, but since the scope was so big, working on it was a pain.
There is going to be some issues with some of the messages displayed in the mod so please let me know if y'all find any.
Hopefully after this update smooths out, I can go back to adding cool features!
Thank you all for the support over the years!
#### Additions
- added OtterLib as a required dependency
- (probably) added a bunch of text related bugs 🥲
#### Fixes
- fixed an issue with simple action bars crashing the game or kicking players off of the server
- fixed and issue with the time module not syncing up to the world time
## Past Changes
### v1.8.3.0
OtterLib support if finally here!
This update has been a long time coming, but since the scope was so big, working on it was a pain.
There is going to be some issues with some of the messages displayed in the mod so please let me know if y'all find any.
Hopefully after this update smooths out, I can go back to adding cool features!
Thank you all for the support over the years!
#### Additions
- added OtterLib as a required dependency
- (probably) added a bunch of text related bugs 🥲
OtterLib support if finally here!
This update has been a long time coming, but since the scope was so big, working on it was a pain.
There is going to be some issues with some of the messages displayed in the mod so please let me know if y'all find any.
Hopefully after this update smooths out, I can go back to adding cool features!
Thank you all for the support over the years!
#### Additions
- added OtterLib as a required dependency
- (probably) added a bunch of text related bugs 🥲
## Past Changes
nothing here...
#### Fixes
- fixed height of origin for particles that show up when pointing from the player
## Past Changes
### v1.8.2.3
- made the respawn dimension getter async, hopefully preventing a crash on folia [Paper]
### v1.8.2.2
- fixed jitteriness of the speed module [Paper, Spigot]
### v1.8.2.1
- added the DirectionHUD prefix to the language file
### v1.8.2.0 The Config Update
Added 2 new config options!
\
Hud module toggles, and a toggle for allowing anyone to add and edit global destinations.
- added a new config group
globalunderdestination - added a new toggle
public-editingwhich allows anyone to add and edit global destinations - added a new config group
enabled-modulesunderhud - each module under this group is a toggle to enable or disable that module globally
- fixed an issue where the HUD module edit UI would not open when all modules were disabled
- updated translations from Crowdin
- made the respawn dimension getter async, hopefully preventing a crash on folia [Paper]
## v1.8.2.2
- fixed jitteriness of the speed module [Paper, Spigot]
## v1.8.2.1
- added the DirectionHUD prefix to the language file
# v1.8.2.0 The Config Update
Added 2 new config options!
\
Hud module toggles, and a toggle for allowing anyone to add and edit global destinations.
- added a new config group
globalunderdestination - added a new toggle
public-editingwhich allows anyone to add and edit global destinations - added a new config group
enabled-modulesunderhud - each module under this group is a toggle to enable or disable that module globally
- fixed an issue where the HUD module edit UI would not open when all modules were disabled
- updated translations from Crowdin
- fixed jitteriness of the speed module [Paper, Spigot]
## v1.8.2.1
- added the DirectionHUD prefix to the language file
# v1.8.2.0 The Config Update
Added 2 new config options!
\
Hud module toggles, and a toggle for allowing anyone to add and edit global destinations.
- added a new config group
globalunderdestination - added a new toggle
public-editingwhich allows anyone to add and edit global destinations - added a new config group
enabled-modulesunderhud - each module under this group is a toggle to enable or disable that module globally
- fixed an issue where the HUD module edit UI would not open when all modules were disabled
- updated translations from Crowdin
- fixed jitteriness of the speed module [Paper, Spigot]
## v1.8.2.1
- added the DirectionHUD prefix to the language file
# v1.8.2.0 The Config Update
Added 2 new config options!
\
Hud module toggles, and a toggle for allowing anyone to add and edit global destinations.
- added a new config group
globalunderdestination - added a new toggle
public-editingwhich allows anyone to add and edit global destinations - added a new config group
enabled-modulesunderhud - each module under this group is a toggle to enable or disable that module globally
- fixed an issue where the HUD module edit UI would not open when all modules were disabled
- updated translations from Crowdin
- added the DirectionHUD prefix to the language file
# v1.8.2.0 The Config Update
Added 2 new config options!
\
Hud module toggles, and a toggle for allowing anyone to add and edit global destinations.
- added a new config group
globalunderdestination - added a new toggle
public-editingwhich allows anyone to add and edit global destinations - added a new config group
enabled-modulesunderhud - each module under this group is a toggle to enable or disable that module globally
- fixed an issue where the HUD module edit UI would not open when all modules were disabled
- updated translations from Crowdin
- added the DirectionHUD prefix to the language file
# v1.8.2.0 The Config Update
Added 2 new config options!
\
Hud module toggles, and a toggle for allowing anyone to add and edit global destinations.
- added a new config group
globalunderdestination - added a new toggle
public-editingwhich allows anyone to add and edit global destinations - added a new config group
enabled-modulesunderhud - each module under this group is a toggle to enable or disable that module globally
- fixed an issue where the HUD module edit UI would not open when all modules were disabled
- updated translations from Crowdin
- added the DirectionHUD prefix to the language file
# v1.8.2.0 The Config Update
Added 2 new config options!
\
Hud module toggles, and a toggle for allowing anyone to add and edit global destinations.
- added a new config group
globalunderdestination - added a new toggle
public-editingwhich allows anyone to add and edit global destinations - added a new config group
enabled-modulesunderhud - each module under this group is a toggle to enable or disable that module globally
- fixed an issue where the HUD module edit UI would not open when all modules were disabled
- updated translations from Crowdin
- added the DirectionHUD prefix to the language file
# v1.8.2.0 The Config Update
Added 2 new config options!
\
Hud module toggles, and a toggle for allowing anyone to add and edit global destinations.
- added a new config group
globalunderdestination - added a new toggle
public-editingwhich allows anyone to add and edit global destinations - added a new config group
enabled-modulesunderhud - each module under this group is a toggle to enable or disable that module globally
- fixed an issue where the HUD module edit UI would not open when all modules were disabled
- updated translations from Crowdin
- added the DirectionHUD prefix to the language file
# v1.8.2.0 The Config Update
Added 2 new config options!
\
Hud module toggles, and a toggle for allowing anyone to add and edit global destinations.
- added a new config group
globalunderdestination - added a new toggle
public-editingwhich allows anyone to add and edit global destinations - added a new config group
enabled-modulesunderhud - each module under this group is a toggle to enable or disable that module globally
- fixed an issue where the HUD module edit UI would not open when all modules were disabled
- updated translations from Crowdin
- added the DirectionHUD prefix to the language file
# v1.8.2.0 The Config Update
Added 2 new config options!
\
Hud module toggles, and a toggle for allowing anyone to add and edit global destinations.
- added a new config group
globalunderdestination - added a new toggle
public-editingwhich allows anyone to add and edit global destinations - added a new config group
enabled-modulesunderhud - each module under this group is a toggle to enable or disable that module globally
- fixed an issue where the HUD module edit UI would not open when all modules were disabled
- updated translations from Crowdin
- added the DirectionHUD prefix to the language file
# v1.8.2.0 The Config Update
Added 2 new config options!
\
Hud module toggles, and a toggle for allowing anyone to add and edit global destinations.
- added a new config group
globalunderdestination - added a new toggle
public-editingwhich allows anyone to add and edit global destinations - added a new config group
enabled-modulesunderhud - each module under this group is a toggle to enable or disable that module globally
- fixed an issue where the HUD module edit UI would not open when all modules were disabled
- updated translations from Crowdin
Added 2 new config options!
\
Hud module toggles, and a toggle for allowing anyone to add and edit global destinations.
- added a new config group
globalunderdestination - added a new toggle
public-editingwhich allows anyone to add and edit global destinations - added a new config group
enabled-modulesunderhud - each module under this group is a toggle to enable or disable that module globally
- fixed an issue where the HUD module edit UI would not open when all modules were disabled
- updated translations from Crowdin
Added 2 new config options!
\
Hud module toggles, and a toggle for allowing anyone to add and edit global destinations.
- added a new config group
globalunderdestination - added a new toggle
public-editingwhich allows anyone to add and edit global destinations - added a new config group
enabled-modulesunderhud - each module under this group is a toggle to enable or disable that module globally
- fixed an issue where the HUD module edit UI would not open when all modules were disabled
- updated translations from Crowdin
Added 2 new config options!
\
Hud module toggles, and a toggle for allowing anyone to add and edit global destinations.
- added a new config group
globalunderdestination - added a new toggle
public-editingwhich allows anyone to add and edit global destinations - added a new config group
enabled-modulesunderhud - each module under this group is a toggle to enable or disable that module globally
- fixed an issue where the HUD module edit UI would not open when all modules were disabled
- updated translations from Crowdin
Added 2 new config options!
\
Hud module toggles, and a toggle for allowing anyone to add and edit global destinations.
- added a new config group
globalunderdestination - added a new toggle
public-editingwhich allows anyone to add and edit global destinations - added a new config group
enabled-modulesunderhud - each module under this group is a toggle to enable or disable that module globally
- fixed an issue where the HUD module edit UI would not open when all modules were disabled
- updated translations from Crowdin
Added 2 new config options!
\
Hud module toggles, and a toggle for allowing anyone to add and edit global destinations.
- added a new config group
globalunderdestination - added a new toggle
public-editingwhich allows anyone to add and edit global destinations - added a new config group
enabled-modulesunderhud - each module under this group is a toggle to enable or disable that module globally
- fixed an issue where the HUD module edit UI would not open when all modules were disabled
- updated translations from Crowdin
Added 2 new config options!
\
Hud module toggles, and a toggle for allowing anyone to add and edit global destinations.
- added a new config group
globalunderdestination - added a new toggle
public-editingwhich allows anyone to add and edit global destinations - added a new config group
enabled-modulesunderhud - each module under this group is a toggle to enable or disable that module globally
- fixed an issue where the HUD module edit UI would not open when all modules were disabled
- updated translations from Crowdin
Added 2 new config options!
\
Hud module toggles, and a toggle for allowing anyone to add and edit global destinations.
- added a new config group
globalunderdestination - added a new toggle
public-editingwhich allows anyone to add and edit global destinations - added a new config group
enabled-modulesunderhud - each module under this group is a toggle to enable or disable that module globally
- fixed an issue where the HUD module edit UI would not open when all modules were disabled
- updated translations from Crowdin
- fixed the coordinates module's y level being off by 1 (now matches the vanilla f3 screen)
## v1.8.1.2
- fixed all other module's order not being adjusted correctly when disabling a module
- removed testing console prints when using the
/hud modulecommand - increased the efficiency of
/hud modulecommands by not reading from the file as much - updated hud module reset confirmation with a generic, more readable message
- now removes duplicate module settings on load, as a precaution
## v1.8.1.1
- fixed module cloning error
- fixed stack overflow error when updating playerdata
- fixed minimum version being too low on 1.21.6
## v1.8.1.0 Modular Modules pt.2
Modular Modules? What about MORE modularity? \
This update adds more to the base update that came before, with the backend changes that add dynamic module settings and display settings.
### Modules
#### New light level module!
This module includes an option to choose between viewing the light level at the player's target block or below the player with the light_target setting.
The other setting for this module is the light_display setting. It can be used to choose between displaying skylight, block light, or both.
#### Module Settings
Changed module setting names to be more unique. This change is made for the new settings system. \
Setting that are on / off now can be toggled with true / false
#### New HUD Module UI
With the new Module Edit UI introduced in 1.8, there was going to be an issue when more modules got added.
To fix this, disabled modules and enabled modules are now split! \
Disabled modules now are orderless, and their order will automatically be the last in the module order when enabled / re-enabled.
#### Module Text File
The module-text.json file is now on version 1.1, and has gotten a structure change.
Every module has been moved from the root to the "modules" node on the root.
Each module now has a "displays" and an "assets" node to better distinguish what is what. \
The new system doesn't populate every module entry on load, and only loads what is entered to the file.
To help, a new toggle, "load-missing" was added for loading missing entries to the file.
#### Backend rework
Adding new modules was always a pain because of the way I first wrote them a good 4 years ago.
Everything was hardcoded, down to how they were displayed.
DirectionHUD 1.8 helped lighten the issue with the module text system, and a new way of registering modules.
That wasn't enough though, and now, with 1.8.1, *most* everything to do with modules are easier with a registration system!
### Changelog:
- added light module, defaults to off
- added light_target setting, defaults to eye
- added light_display setting, defaults to block
- added show-name setting to destination module
- changed the module setting names to be more unique
- angle
- display -> angle_display
- tracking
- hybrid -> tracking_hybrid
- target -> tracking_target
- display-type -> tracking_display
- show-elevation -> tracking_show-elevation
- time
- 24hr-clock -> time_24hr
- speed
- 2d-calculation -> speed_2d-calculation
- display-pattern -> speed_display-pattern
- coordinates
- xyz-display -> coordinates_xyz-display
- tweaked the module edit UI
- added a new section for disabled modules
- hud edit UI now only shows enabled modules
- removed hud order from disabled modules
- added support for entering true / false for toggleable settings
- added module display and setting registration system
- added module reset confirmation before actually resetting
- reverted language file capitalization change (en_US -> en_us)
- added support for overriding the language file via the configs
- put the custom language file in the
config/directionhud/lang/folder - bumped packet version
- more backend changes
- module-text version 1.01 -> 1.1
- playerdata & default-playerdata version 2.1 -> 2.3
- config version 1.61 -> 1.7
- other bug fixes and optimizations
- fixed the coordinates module's y level being off by 1 (now matches the vanilla f3 screen)
## v1.8.1.2
- fixed all other module's order not being adjusted correctly when disabling a module
- removed testing console prints when using the
/hud modulecommand - increased the efficiency of
/hud modulecommands by not reading from the file as much - updated hud module reset confirmation with a generic, more readable message
- now removes duplicate module settings on load, as a precaution
## v1.8.1.1
- fixed module cloning error
- fixed stack overflow error when updating playerdata
- fixed minimum version being too low on 1.21.6
## v1.8.1.0 Modular Modules pt.2
Modular Modules? What about MORE modularity? \
This update adds more to the base update that came before, with the backend changes that add dynamic module settings and display settings.
### Modules
#### New light level module!
This module includes an option to choose between viewing the light level at the player's target block or below the player with the light_target setting.
The other setting for this module is the light_display setting. It can be used to choose between displaying skylight, block light, or both.
#### Module Settings
Changed module setting names to be more unique. This change is made for the new settings system. \
Setting that are on / off now can be toggled with true / false
#### New HUD Module UI
With the new Module Edit UI introduced in 1.8, there was going to be an issue when more modules got added.
To fix this, disabled modules and enabled modules are now split! \
Disabled modules now are orderless, and their order will automatically be the last in the module order when enabled / re-enabled.
#### Module Text File
The module-text.json file is now on version 1.1, and has gotten a structure change.
Every module has been moved from the root to the "modules" node on the root.
Each module now has a "displays" and an "assets" node to better distinguish what is what. \
The new system doesn't populate every module entry on load, and only loads what is entered to the file.
To help, a new toggle, "load-missing" was added for loading missing entries to the file.
#### Backend rework
Adding new modules was always a pain because of the way I first wrote them a good 4 years ago.
Everything was hardcoded, down to how they were displayed.
DirectionHUD 1.8 helped lighten the issue with the module text system, and a new way of registering modules.
That wasn't enough though, and now, with 1.8.1, *most* everything to do with modules are easier with a registration system!
### Changelog:
- added light module, defaults to off
- added light_target setting, defaults to eye
- added light_display setting, defaults to block
- added show-name setting to destination module
- changed the module setting names to be more unique
- angle
- display -> angle_display
- tracking
- hybrid -> tracking_hybrid
- target -> tracking_target
- display-type -> tracking_display
- show-elevation -> tracking_show-elevation
- time
- 24hr-clock -> time_24hr
- speed
- 2d-calculation -> speed_2d-calculation
- display-pattern -> speed_display-pattern
- coordinates
- xyz-display -> coordinates_xyz-display
- tweaked the module edit UI
- added a new section for disabled modules
- hud edit UI now only shows enabled modules
- removed hud order from disabled modules
- added support for entering true / false for toggleable settings
- added module display and setting registration system
- added module reset confirmation before actually resetting
- reverted language file capitalization change (en_US -> en_us)
- added support for overriding the language file via the configs
- put the custom language file in the
config/directionhud/lang/folder - bumped packet version
- more backend changes
- module-text version 1.01 -> 1.1
- playerdata & default-playerdata version 2.1 -> 2.3
- config version 1.61 -> 1.7
- other bug fixes and optimizations
- fixed the coordinates module's y level being off by 1 (now matches the vanilla f3 screen)
## v1.8.1.2
- fixed all other module's order not being adjusted correctly when disabling a module
- removed testing console prints when using the
/hud modulecommand - increased the efficiency of
/hud modulecommands by not reading from the file as much - updated hud module reset confirmation with a generic, more readable message
- now removes duplicate module settings on load, as a precaution
## v1.8.1.1
- fixed module cloning error
- fixed stack overflow error when updating playerdata
- fixed minimum version being too low on 1.21.6
## v1.8.1.0 Modular Modules pt.2
Modular Modules? What about MORE modularity? \
This update adds more to the base update that came before, with the backend changes that add dynamic module settings and display settings.
### Modules
#### New light level module!
This module includes an option to choose between viewing the light level at the player's target block or below the player with the light_target setting.
The other setting for this module is the light_display setting. It can be used to choose between displaying skylight, block light, or both.
#### Module Settings
Changed module setting names to be more unique. This change is made for the new settings system. \
Setting that are on / off now can be toggled with true / false
#### New HUD Module UI
With the new Module Edit UI introduced in 1.8, there was going to be an issue when more modules got added.
To fix this, disabled modules and enabled modules are now split! \
Disabled modules now are orderless, and their order will automatically be the last in the module order when enabled / re-enabled.
#### Module Text File
The module-text.json file is now on version 1.1, and has gotten a structure change.
Every module has been moved from the root to the "modules" node on the root.
Each module now has a "displays" and an "assets" node to better distinguish what is what. \
The new system doesn't populate every module entry on load, and only loads what is entered to the file.
To help, a new toggle, "load-missing" was added for loading missing entries to the file.
#### Backend rework
Adding new modules was always a pain because of the way I first wrote them a good 4 years ago.
Everything was hardcoded, down to how they were displayed.
DirectionHUD 1.8 helped lighten the issue with the module text system, and a new way of registering modules.
That wasn't enough though, and now, with 1.8.1, *most* everything to do with modules are easier with a registration system!
### Changelog:
- added light module, defaults to off
- added light_target setting, defaults to eye
- added light_display setting, defaults to block
- added show-name setting to destination module
- changed the module setting names to be more unique
- angle
- display -> angle_display
- tracking
- hybrid -> tracking_hybrid
- target -> tracking_target
- display-type -> tracking_display
- show-elevation -> tracking_show-elevation
- time
- 24hr-clock -> time_24hr
- speed
- 2d-calculation -> speed_2d-calculation
- display-pattern -> speed_display-pattern
- coordinates
- xyz-display -> coordinates_xyz-display
- tweaked the module edit UI
- added a new section for disabled modules
- hud edit UI now only shows enabled modules
- removed hud order from disabled modules
- added support for entering true / false for toggleable settings
- added module display and setting registration system
- added module reset confirmation before actually resetting
- reverted language file capitalization change (en_US -> en_us)
- added support for overriding the language file via the configs
- put the custom language file in the
config/directionhud/lang/folder - bumped packet version
- more backend changes
- module-text version 1.01 -> 1.1
- playerdata & default-playerdata version 2.1 -> 2.3
- config version 1.61 -> 1.7
- other bug fixes and optimizations


