Voxel Shop beta is live. Expect occasional bugs. Learn more
Customisable Masks that you can apply to your armor to gain buffs and effects WITH CUSTOM VISUALS
## EliteMasks 1.6.8
### Added
- Mask effects now fire when a mask is put on a player's head by a dispenser, not
just when they equip it by hand (1.13.1+).
- Equip events now carry the method used — shift-click, drag, hotbar swap, hand
interact, dispenser, respawn, resurrect, or a durability break — so effects can
tell how the mask went on.
### Fixed
- Masks are visible to other players again on modern servers. Version detection
read the server version out of the Bukkit package name (`v1_20_R1`), which newer
builds no longer include — so every version check fell through to the wrong
packet layout and the equipment packet was silently malformed. The version is
now taken from ProtocolLib's `MinecraftVersion`.
- Mask effects (Fly, Health, Hunger, Potion, Immunity, AntiPumpkin, Command) are
reapplied when a player is revived by a Totem of Undying. A totem never fires
PlayerDeathEvent, so the mask stayed on and the effect stayed "applied", but
vanilla wiped every active potion effect on the way through — leaving the player
wearing a mask that did nothing until they re-equipped it.
- Mask packets are no longer sent from an async task. Sending packets off the main
thread was unsafe and could throw under load.
- Mask packets are now only sent to players in the same world as the wearer who can
actually see them, instead of to every player on the server.
- The packet is skipped if the wearer logged out during the 2-tick delay.
- Item NBT is written through the current NBT-API path, fixing mask tags being
dropped on newer server versions.
### Changed
- Added Minecraft 26.2 Support.
- `MaskPacket` rewritten: one version check at load instead of a chain of string
comparisons per packet, and the three packet layouts (1.8, 1.9–1.15, 1.16+) are
now selected by explicit version constants.
- Armor equip/unequip handling moved into PluginAPI. It used to be a separate
bundled `armorequip` dependency, pinned at a different version in each plugin;
all the Elite plugins now share one copy.
### Build
- ProtocolLib updated from 5.1.0 to 5.4.0.
- Underlying libraries updated with PluginAPI: Spigot API 1.20 -> 1.21.11,
NBT-API 2.12.2 -> 2.15.7, XSeries 9.9.0 -> 13.7.0. Now targets Java 17.
- `EliteEnchantments` is now a Gradle project dependency instead of a prebuilt jar
in `/jars`.
- Version is sourced from the root `versions.properties` and templated into
`plugin.yml`.
Change Log:
Change Log:
Change Log:
Change Log:
Change Log:
Fixed issue with FLY effect throwing error
Fixed issue with effects bugging out if the helmet broke
Change Log:
I'm going to be real, the spigot was 2 versions behind but I have no clue what I added... this is what I remember
Change Log:
Added 1.19.2 Support
The plugin now requires ProtocolLib for it to work as I tried to add support myself for 1.19.2 but it wasn't working