## ElitePets 1.6.5
### Fixed
- Pet chest contents are saved back to the correct pet. The chest was written to
whatever item the player happened to be holding when they closed the inventory,
so closing while holding anything other than the pet could stamp the chest data
onto the wrong item — and lose it from the pet.
- The pet-item guard in the chest actually checks the pet now. Both the click
handler and the save path compared an item's UUID tag against itself, which is
always true, so the check never did anything: any tagged item was blocked from
being moved, and the "is this the right pet" test always passed.
- Chest contents no longer get rearranged on open. Items were re-added with
`addItem`, which stacks and shifts them into the first free slot; they are now
restored to the slot they were saved in.
- A chest that fails to deserialize no longer opens empty and then overwrites the
saved data with nothing on close. The player is told the contents could not be
loaded, the failure is logged, and the chest does not open.
- Players who log out with a pet chest open are cleaned up, instead of leaving a
stale entry behind.
- Item NBT is written through the current NBT-API path, fixing pet tags being
dropped on newer server versions.
### Changed
- Added Minecraft 26.2 Support.
- Chest serialization moved off SnakeYAML's internal `Base64Coder` — which newer
server builds no longer expose — and onto `java.util.Base64`. Existing chest data
still loads: reads go through a MIME decoder, which accepts the line-wrapped
output the old code wrote.
- Streams in the serializer are closed via try-with-resources, so a failed read or
write no longer leaks them.
### Build
- 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`; the unused `EliteArmor.jar` dependency was dropped.
- Version is sourced from the root `versions.properties` and templated into
`plugin.yml`.
![]()
Change Log:
- Renamed REMOVE_HEARTS effect to REMOVE_HEALTH as it makes more sense
- Some dependency updates and small reworks on code
Change Log:
- Added 1.20.6 Support
- Fixed a bunch of issues with egg hatching
- Updated bunch of old dependencies
- Removed ACTIVATE_ENCHANT effect due to it being out of date
![]()
Change Log:
- Fixed issue with commands not being able to be executed from console
![]()
Change Log:
- Added 1.20 Support
- Fixed issue with flight still after quitting game