Releases: Bram1903/AntiHealthIndicator
v2.3.1
What's Changed
- [Fix] Vehicles, like horses, when riding are now properly showing health again
- [Fix] Do not spoof broken elytra by @Pantera07 in #15
- [Fix] Resolve Build Failures by Updating JVM Toolchain from 8 to 21 by @Pantera07 in #16
- [Fix] Additional Durability Conditions by @Pantera07 in #18
New Contributors
- @Pantera07 made their first contribution in #15
Full Changelog: v2.3.0...v2.3.1
v2.3.0
New Features
- 1.21.2 & 1.21.3 Compatibility: Updated to support Minecraft versions 1.21.2 and 1.21.3.
- Sponge Platform Support: AntiHealthIndicator now runs seamlessly on Sponge-powered servers.
- PacketEvents 2.6.0 Compatibility: Compatibility with PacketEvents 2.6.0.
- BetterReload Integration: Added support for BetterReload.
Improvements
- Runtime Configuration Reload: Use
/ahi reload
to dynamically reload configurations without server restarts. - Rewritten Command Logic: Commands have been completely rewritten.
Fixes
- Scoreboard Packet Bypass: Resolved an issue where some clients could bypass protections through scoreboard packets (triggered by certain bad plugins).
Permissions
- New Permission Node: Added
AntiHealthIndicator.Reload
for managing reload access.
Full Changelog: v2.2.4...v2.3.0
v2.2.4
v2.2.3
Minecraft 1.21 Support
- Added Minecraft 1.21 Support
- Fixed an issue on Bungeecord where the wrong indexes were being applied.
- Fixed the Bungeecord version of AHI didn't require PacketEvents as a dependency
- Reworked the UpdateChecker and version class
- Removed unnecessary commands
Full Changelog: v2.2.2...v2.2.3
v2.2.2
v2.2.1
v2.2.0
New Release: Proxy Support and Cache Rewrite
Proxy Support
We are happy to announce that our plugin now supports proxy servers, including Velocity and BungeeCord! To use the plugin on your proxy server, simply download the latest release and place it into the plugins directory of your proxy. Ensure that the PacketEvents plugin is also installed on your platform. Once set up, the plugin will automatically take care of all your backends. You won't need the plugin on your backend once installed upon the proxy.
Cache Rewrite
This update also introduces a significant overhaul of our cache management system. Previously, a single cache was maintained for the entire server, retaining entities until they were explicitly removed. This led to inefficiencies, especially when entities remained cached unnecessarily due to the potential for client-side demand.
To support proxy servers, we completely rewrote the cache manager. Now, each user has their own cache, addressing the challenge of server-specific entity IDs and user server-hopping. This user-centric caching relies entirely on packets, eliminating the need for platform-specific methods to track entity spawning and removal. Entities are promptly removed from the cache when your client receives a packet indicating they are out of render distance, etc, dramatically improving cache size and lookup speeds.
With this new approach, we no longer require the Caffeine Library, reducing the plugin size from 1.06MB (1006KB) to a mere 74KB. As the saying goes, "Size doesn't matter, but rather what you do with it." We have surely taken that seriously.
1 Jar, 3 Platforms (and forks), hundreds of different versions across all platforms. All of that is in a single jar of 74KB.
Acknowledgments
This release wouldn't have been possible without the invaluable contributions of the following individuals:
- @Tofaa2: Instrumental in supporting Velocity and redesigning the cache system.
- @booky10: Provided essential tips and insights for developing the packet-based entity tracker.
- @AbhigyaKrishna: Assisted in redesigning the Gradle Build Chain.
- @alexdev03: Offered numerous optimization suggestions and guided the configuration manager rewrite.
Thank you to everyone involved for your support in making this release possible!
Kind regards,
Bram
Full Changelog: v2.1.0...v2.2.0
v2.1.0
Changes
- Added: Support for 1.20.5 & 1.20.6 (we now support 1.8.8-1.20.6)
- Added:
/AntiHealthIndicator
or/ahi
command, which displays the current plugin version. - Updated: PacketEvents from
2.2.1
->2.3.0
- Fixed: Possible temporary netty thread freeze upon entering or leaving a vehicle.
- Removed:
FoliaScheduler
, because it has been merged upstream into PacketEvents.
Full Changelog: v2.0.1...v2.1.0
v2.0.1
v2.0.0
AntiHealthIndicator Plugin v2.0.0
Introduction
We're excited to announce the release of AntiHealthIndicator version 2.0.0! This major update brings significant improvements and enhancements to the plugin.
-
Modular Architecture: Instead of a single module, we've split the logic into a common module and platform-specific implementations. This approach makes maintenance easier and sets the stage for future support of additional platforms like Velocity.
-
Dependency Shading: Removed Adventure, Gson, and BStats from the dependencies and moved PacketEvents to provided. The reason I choose to no longer shade PacketEvents myself is because the library is greatly growing in popularity and if each plugin shades their version of PacketEvents the server performance will be heavily impacted because of that. The total plugin size has been reduced from 2.9MB to 1.07MB! 😄
-
Platform Independence: Our goal was to be as platform-independent as possible. To achieve this, we've moved away from Bukkit Events and now rely solely on raw packets. This change ensures better compatibility across different server software.
-
Performance Boost: We've achieved extreme performance improvements and fixed memory leak issues throughout the codebase. The new CacheManager is much more efficient and reliable.
-
Enhanced Vehicle Bypass: Now, all ridable entities (not just horses) are excluded from being spoofed when a player rides them.
-
Players Only Option: You can now choose to hide health and other metadata only from other players, greatly reducing the cache size.
PacketEvents
Make sure that because we no longer shade PacketEvents ourselves you install the latest version found here:
https://ci.codemc.io/job/retrooper/job/packetevents/lastSuccessfulBuild/artifact/spigot/build/libs/packetevents-spigot-2.2.1.jar
Changelog
Full Changelog: v1.1.3...v2.0.0
Credits
Big thanks to @Tofaa2 for making this release possible. He helped me with all my stupid questions and has contributed a lot to this project!