zEssentials now loads as a Paper plugin (paper-plugin.yml):
Dependencies are declared through Paper's dependencies.server system (zMenu and PlaceholderAPI required, every hook optional) with explicit classpath access
The MariaDB JDBC driver is now downloaded by a Paper plugin loader (ZEssentialsPluginLoader) instead of the libraries section; the PAPER_DEFAULT_CENTRAL_REPOSITORY mirror is honored
Spigot fallback: on Spigot the plugin stays inactive (no commands, modules or API) and logs a warning; players with zessentials.paper.warning (default op) are told on join that Paper is required
zEssentials now fails fast with an explicit error when a zMenu service (InventoryManager, ButtonManager, PatternManager) is unavailable, and handles a partial shutdown cleanly (buttons and services are unregistered)
Updated FastBoard to 2.2.2 — fixes the scoreboard on recent versions (final scoreboard packet field mutation) while preserving the scoreboard API
Removed duplicate teleport translation keys in messages.yml
Optimized command lowercasing in the command manager and the cooldown lookup
Updated the Gradle wrapper to 9.8.1 and the foojay resolver to 1.0.0 (builds with Java 25)