This is a brief primer on how MythicHUD supports many client versions with a single resource pack.
MythicHUD supports multiple client version via a flexible pack build system based upon Creative. When necessary, the plugin generates additional folders in the resource pack. These folders are called overlays and are critical for the pack to function properly on configured versions.
An overlay consists of two parts: configuration in the pack's mcmeta and the aforementioned folder. An overlay is a "pack in a pack" and overrides or provides additional assets on a version-by-version basis.
Take for example the following pack structure:
MythicHUD
└── built-pack
├── assets
├── mythichud-example-overlay
│ └── assets
├── pack.mcmeta
└── pack.png
And in pack.mcmeta
,
"overlays": {
"entries": [{
"formats": {
"min_inclusive": 32,
"max_inclusive": 34
},
"directory": "mythichud-example-overlay"
}]
}
This configures the mythichud-example
overlay applied for client versions 1.20.5 to 1.21.1. See the MCW page for a table of pack versions. As explained, overlays are simply resource packs inside of resource packs, so the mythichud-example
folder contains an assets
subfolder just as a typical resource pack would. The only exception to this is the lack of pack.mcmeta
inside.
The plugin will automatically generate overlays necessary to support the configured target client version range. If you are using another plugin to manage your server's assets, it is imperative that it properly supports resource pack overlays. If it does not, then configure the plugin to generate a resource pack which targets a single client version. Otherwise, you will need to manually merge your resource pack by hand.
If you are using an external plugin to manage your pack and it fails to load when merging MythicHUD's pack, there is an incompatibility on the part of the other plugin. MythicHUD will always generate a resource pack loadable by clients within the configured version range. Deleting files, especially anything in the shaders/
folder will never result in a properly functioning resource pack.