EP
EpicPluginLib
3.0A general library to help use configurations, languages, commands, updates, and reflection.
3.0latestEpicPluginLib v3.0Jun 14, 2026 EpicPluginLib changelog: · Add partial support for MC 26.1.2 (no Reflection) · Update to yaml-handler 1.5.3 · Add PathLocker class that allows locks for each path currently being worked on, without the need to call system file locks. · Rename ConfigurationLoader to ConfigurationManager (deprecating the previous one), and use PathLocker to lock configuration files while being loaded. · ConfigurationManager will load the configurations concurrently in a parallel stream. · ConfigurationHolder method names were simplified, deprecating the older ones. · Downloader Runnable class was deprecated in favor of using a Callable Downloader class. · Downloader class redirect resolver will now detect redirect loops, too many redirects and relative URLs. · Version class was deprecated in favor of using maven-artifact's ComparableVersion. · Add TaskFactory interface and BukkitTaskFactory, FoliaTaskFactory and SpongeTaskFactory implementations, to simplify use of schedulers across platforms. · Deprecate GitHubUpdateChecker and SpigotUpdateChecker in favor of a new GitHubUpdateChecker and a new SpigotUpdateChecker that use TaskFactory for its HTTP requests. · Use LURE instead of DURABILITY for GUI item glowing effect. · Fix circular static initialization when using PackageType before ReflectionUtil. · Add NMSVersion class. · Classes extending Command can now be registered in CommandManager. · Make isNumeric accept decimal numbers. Full Changelog: 2.7...3.0 Yaml-Handler changelog: · Add support for comments. · Add support for custom serializers. · Add support for spigot's ConfigurationSerializable. · Add support for NULL values. · Rewrite most of the node getting/setting code. · Move YamlConfigurationLoader to loaders package. · Remove constructor that used the parameter YamlConfigurationLoader from Configuration class, and add one that uses ConfigurationLoader interface instead. · Maps will be automatically converted to configuration sections on set. · Equals and hashCode from ConfigurationSection will no longer use the Configuration root, and the ones from Configuration will no longer take the file path into account. · Add compat module, for plugins that depend on an older version of yaml-handler.2.7EpicPluginLib v2.7Feb 13, 2024 · Add support for Folia! · Add EpicPluginLib.Platform#isFolia method, to check is server is Folia/a fork of Folia. · Fix a vulnerability that would allow players to steal items from GUIs if InventoryOpenEvent was cancelled by another plugin while a GUI was already open. Now every time InventoryCloseEvent is called for EpicPluginLib's GUIs, Player#closeInventory will be called again to ensure the inventory is closed. · Clean open GUI inventories once the plugin disables, to prevent players from taking items from anvils (or other inventories that takes items on close) once the server disables/reloads. · Move breakLore method to core StringUtils and deprecate breakLore in bukkit InventoryUtils due to no need for bukkit API. · Key not found message will actually tell you the key that was not found.2.6.1EpicPluginLib v2.6.1Jan 20, 2024 Fix sendPacket method not working on newer versions.2.6EpicPluginLib v2.6Oct 25, 2023 Server Owners: · Item Lore lines can also be broken with \n now. You can use this example for a more clear lore in your configuration. Code (YAML): Item: Lore : |- This is the new way to set an item's lore. It's much easier and you don't need to keep adding '<line>' everytime you break a line anymore. Developers: · Add InventoryUtils#breakLore method, for automatically breaking lines when the words don't fit in a single line. · Add EpicPluginLib.Platform#isPaper method, to check if server is Paper/a fork of Paper. · Add InputGetterUtils class, for helping to retrieve input from a player when using GUIs. · Update GitHub link of update checker.2.5EpicPluginLib v2.5Jun 10, 2023 Because of SnakeYAML changes, this update will drop support to Spigot versions older than 1.16.5. · Add support for Spigot 1.20 · Add GitHub update checker · Add InventoryUtils class, a helper class for creating GUIs easily · Made command aliases mutable, add #setAliases method · Update to bStats 3.0.1 · Update to yaml-handler 1.4 with SnakeYAML 2.02.4.2EpicPluginLib v2.4.2Jan 19, 2023 · Add ObjectUtils#splitIntoPages utility method.2.4.1EpicPluginLib v2.4.1Nov 3, 2022 Make so sendPacket throws unsupported exception if PlayerConnection#sendPacket could not be found2.4EpicPluginLib v2.4Oct 8, 2022 · Add ConsoleLogger#simpleLogger method · Fix extra space when you don't specify a logger for bukkit's logger2.3.2EpicPluginLib 2.3.2Sep 1, 2022 Changes: · Add message-specific properties, you can now add properties to the start of the message to tell how it's going to behave. · Properties are enclosed with <> at the start at the message. · The first space of the message will be used to tell there are no other properties. · There are 2 currently available properties: · <noprefix>: Prevents the prefix from being added to the message. · <cooldown=TIME>: Prevents the message from being sent if another message was sent within the specified TIME in milliseconds. · Example: '<noprefix><cooldown=5000> This is a message!' · The message output will be 'This is a message!', if another message was not sent within 5 seconds. · Move most logic of MessageSender to LanguageHolder2.3.1EpicPluginLib v2.3.1Jul 16, 2022 · Add PathUtils#getDirectory to get a path to a created directory, if a regular file exists in this path, then a different path is used to create a directory. · Bukkit's Logger#setLogger now accepts null parameter, to default to bukkit's logger. · Optimize PathUtils#getUniquePath. · Update available message will go away if you disable "Check for updates" boolean in config.2.3EpicPluginLib v2.3May 11, 2022 · Add more utility methods to ReflectionUtil. · Make ReflectionUtil#sendPacket version independent.2.2.1EpicPluginLib v2.2.1Feb 28, 2022 · Add warning when you try to run the lib without bukkit or sponge. · Add way of knowing which platform and version of the platform the lib is running on. · Rename lib main classes for bukkit and sponge. · ZipUtils#zipFiles will copy file attributes when zipping.2.2EpicPluginLib v2.2Feb 12, 2022 · Add support for command arguments tab completion · Add support for Sponge API version 8.0.0 · Update bStats to version 3.0.02.1EpicPluginLib v2.1Dec 3, 2021 Add support for 1.17 reflection2.0EpicPluginLib v2.0Jun 23, 2021 · Add an utility to create or extract zip files. · Fix getUniquePath not working for paths without file extensions. · Change license to GNU GPLv31.6.7EpicPluginLib v1.6.7Nov 21, 2020 · Fix outdated configuration path not being unique, making so if there was already a file in that path an error to be thrown.1.6.6EpicPluginLib v1.6.6Nov 16, 2020 · Add support for older versions of bukkit1.6.5EpicPluginLib v1.6.5Nov 9, 2020 · Add min and max versions to restore configurations that have versions out of this range on ConfigLoader.1.6.4EpicPluginLib v1.6.4Oct 30, 2020 · Add async update checker.1.6.2EpicPluginLib v1.6.2Oct 29, 2020 · Add a version field so plugins can check EpicPluginLib version before starting. · Add platform independant log message level. · Add support for yaml-handler v1.3 · Change sponge initialization time to GameInitializationEvent · Implement bStats metrics collecting.1.61.6 - Fixes and improvementsJun 25, 2020 Warning: This updates breaks the plugins depending on the previous version, make sure they support this version before updating. Changes: · Added an updater that will check for updates when your server starts, if you don't wanna check for updates, you can disable this feature in configuration. · Added Version checking API: You can now check for versions greater, lower or equal instead of just greater. · Fixed Downloader not redirecting to the final page before downloading, resulting in a corrupted download. · Fixed error that configurations could not have defaults before having comments. · Sponge Logger now implements ConsoleLogger.1.5.1Jun 20, 2020
Similar projects
Config →Let Me Despawn
Improves performance by tweaking mob despawn rules. Say bye to pesky unintentional persistent mobs.
26.2MSueta
JourneyMap
Real-time map used for mapping in-game or your browser as you explore.
14.7MSueta
Emotecraft
Create your own emotes in Minecraft.
7.9MSueta
Simple Tpa
A simple tpa plugin which sends requests
5.4MSueta
Common Network
Forge and Fabric Unified Networking Solution
4.7MSueta
Set Home
A lightweight plugin for players to set their homes.
3.8MSueta