Sueta

WolfyUtilities | Core API [1.17.1 - 1.21.1]

4.17-beta.1

Inventory GUI API, JSON/HOCON Serialization, Plugin Compatibility Utils, etc.

·Plugin
  1. 4.17-beta.1latestUpdate to 1.20.6 & Improvements | v4.17-beta.1May 2, 2024
    Changelog · #80 - Update to 1.20.6 · 1.17.0 is no longer supported! · This plugin is still compiled on Java 17, but also works on Java 21 · Many NMSUtils were removed and/or delegated to third-party plugins like Item-NBT-API (See #80) · #81 - Improved StackReference Serialization · Prioritise MMOItems StackIdentifier Parser over MythicMobs Parser (WolfyScript/CustomCrafting#362) · #78 - Migrate Publishing Repo To Artifactory Full Changelog: v4.16.15.1...v4.17-beta.1
    103 downloads
  2. 4.16.15.1Bug Fixes | v4.16.15.1Mar 5, 2024
    Changelog · #76 — Fix StackReference Parser Swapping · Fixes the ItemEditor GUI in CustomCrafting unable to change the item plugin source · #77 — Fix CustomItem Replacement & Durability Cost Full Changelog: v4.16.15...v4.16.15.1
    1704 downloads
  3. 4.16.15StackReferences, Bug Fixes & 1.20.4 Support | v4.16.15Mar 3, 2024
    Custom Item Stack Changes This update introduces the new StackReference and StackIdentifier classes, that provide a lot of features to reference external Items (from like Oraxen, MMOItems, etc.) and replace the old very limited APIReference. CustomItem ⇾ StackReference From this update onward CustomItems are no longer used to reference external Items, instead that is the task of the StackReference. The only purpose of the CustomItem is to represent the well... CustomItem created via WolfyUtils. They do use a StackReference to wrap external stacks, but are no longer used as a plain reference. APIReference ⇾ StackIdentifier APIReferences are now replaced by StackIdentifiers, and no longer keep track of the amount and weight, because those properties are now part of the StackReference. StackIdentifiers only contain the info required to identify the external item stack, like an ID or name. So in return, plugins requiring references to external stacks no longer have to use CustomItems everywhere and no longer need to accept the overhead that comes with it. Instead, it only requires the StackReference, which contains a lot less data, and has a lot less overhead. Changelog · #66 — New StackReference System to replace old APIReferences · #72 — Replace NMS GUI Generation with GUIInventoryHolder · Fixes GUIs not opening on Paper servers · #74 — Update paper-plugin.yml & Add missing plugin dependencies · Fixes ExecutableBlocks and ExecutableItems NoClassDefFoundError · #68 — Support for 1.20.3 · 2110329 - Change nmsutil 1_20_R3 to use 1.20.4 mappings This should still work with 1.20.3, because of the very minor changes, but realistically there is no reason to still use 1.20.3! · 9434dee — Only handle ArmorEquipEvent when CustomItems are involved · 121cf29 — Add debug agent to docker container · 771fb79 — Fix Smithing Recipes in 1.20.2 · 9af73f7 — Fix NPE in MythicMobsStackIdentifier for stacks without NBT tag · 2fb08e7 — Remove 1_16_R3 nmsutils (1.16.5 is no longer supported!) · aa6a119 — Bump nbtapi-api & nbtapi-data to 2.12.2 Full Changelog: v4.16.14.1...v4.16.15
    165 downloads
  4. 4.16.15-beta.10More Bug Fixes | v4.16.9-beta.10Jan 26, 2024
    Changes since beta.5 · #72 — Replace NMS GUI Generation with GUIInventoryHolder · Fixes GUIs not opening on Paper servers · #70 — Fix StackReference Not Updating & Backwards Compatibility · #71 — Fix StackReference matches Performance Issues · #69 — Optional StackReference Identifiers · 80a5345 — Fix count check in StackIdentifier & Add StackIdentifier#matchesIgnoreCount · bf9a55d — Fix MythicMobsStackIdentifier overriding other stack identifiers · dc982d4 - Fix StackReference 'weight' property deserialization This fixes loading issues of older configs. · 91b925a - The ExecutableBlocksStackIdentifier should actually be registered to work... · 4da9339 — Fix NullPointerEexceptions in StackIdentifiers & prevent possible NPEs This fixes & prevents NPEs in: · EcoStackIdentifier · ExecutableBlocksStackIdentifier · ExecutableItemsStackIdentifier · ItemsAdderStackIdentifier · MMOItemsStackIdentifier · MythicMobsStackIdentifier · FancyBagsStackIdentifier
    1138 downloads
  5. 4.16.15-beta.5Update to 1.20.4 | v4.16.15-beta.5Dec 15, 2023
    This update includes a breaking change affecting StackReferences. You are only affected when using the Beta of CustomCrafting! CustomCrafting got another beta update that is compatible again. Changelog · aa6a119 - Bump nbtapi-api & nbtapi-data to 2.12.2 · 2110329 - Change nmsutil 1_20_R3 to use 1.20.4 mappings This should still work with 1.20.3, because of the very minor changes, but realistically there is no reason to still use 1.20.3! · 4ff8cce - Add itemKey getter to WolfyUtilsStackIdentifier · b7620c0 - Add itemKey getter to BukkitStackIdentifier · db035c3 - Change RegistryStackIdentifierParsers#parseFrom to return an Optional Full Changelog: v4.16.15-beta.4...v4.16.15-beta.5
    1390 downloads
  6. 4.16.12.1Update to latest SCore API & Fix Crash on 1.17, and prior | v4.16.12.1Jul 25, 2023
    Changelog · #59 - Update to latest SCore API (ExecutableBlocks & ExecutableItems) · #60 - Include Fastutil library in plugin.yml Full Changelog: v4.16.12.0...v4.16.12.1
    7064 downloads
  7. 4.16.12.0Update to 1.20 / 1.20.1 | v4.16.12.0Jun 25, 2023
    Changelog · Added NMS support for 1.20.1 · Removed FunctionalRecipe support for 1.20+ · Replaced NMS Inventory Title Update util with Spigots new InventoryView#setTitle in 1.20+ · Added RecipeUtil#setCurrentRecipe NMS util used to apply recipes internally for crafting, smithing and cooking recipes. · Removed NMS support for versions prior to 1.16.5 · Always unmark blocks with block storage to drop items properly Full Changelog: v4.16.11.0...v4.16.12.0
    5803 downloads
  8. 4.16.10.11.19.4 Support & Paper Plugin integrationApr 9, 2023
    Changelog · Added 1.19.4 support · #51 - Paper Plugin Implementation · #52 - ExecutableBlocks Item Reference Implementation · #53 - Fix priority and other APIReference related issue · #54 - Bypass Classloader debug logging on Paper to prevent StackOverflow Full Changelog: v4.16.9.8...v4.16.10.0
    3328 downloads
  9. 4.16.9.6Hocon and Json Deserialization Fixes | v4.16.9.6Dec 28, 2022
    Changelog · #46 - Remove Invalid CustomPlayerData when fetching it · Updated to latest WolfyScript/jackson-dataformat-hocon build · Implemented missing OptionalValueSerializer.SerializerModifier.Serializer#serializeWithType Full Changelog: v4.16.9.5...v4.16.9.6
    4558 downloads
  10. 4.16.9.5Various Bug Fixes & NBT-API 2.11.1 | v4.16.9.5Dec 20, 2022
    Changelog · Updated to NBT-API to 2.11.1 · Fixed FunctionalRecipeGenerator#recipeChoiceToNMS converter for 1.16 · Fixed invalid mapping of NMS CraftingManager#getRecipe in 1.17 and below. · Fixed ValueProvider serialization from value. · Added BoolOperatorConst (backported from v5), to easily provide boolean values in configs. Full Changelog: v4.16.9.4...v4.16.9.5
    750 downloads
  11. 4.16.9.2Oraxen API Update & Bug Fixes | v4.16.9.2Nov 27, 2022
    Changelog · #43 - Oraxen API Update · #39 - Fixed Recursive Calls of BlockStorageEvents · The PlayerStorage no longer fails when the data it tries to load is null. · Made GuiMenuComponent.ButtonBuilder public · This way, button builders can be more easily created.
    1231 downloads
  12. 4.16.9.0New Custom Persistent Player Data System & more | v4.16.9.0Nov 18, 2022
    Changelog · #33 - Set Current Recipe of Inventories · #36 - Better Persistent Custom Player Data Storage · #37 - Fixed Missing ItemsAdder Wrapper Implementations · #38 - Updated & Merged ItemsAdder Event Listener · Fixed QueryNodeCompound not including tags when includeAll is true · Rearranged register order & added more log messages Full Changelog: v4.16.6.1...v4.16.9.0
    555 downloads
  13. 4.16.6.1HOCON Format SupportSep 10, 2022
    This update implements the WolfyUtilities API v4.16.1 to support the HOCON format. HOCON stands for Human-Optimized Config Object Notation and is made by Typesafe. HOCON is the official configuration method for Sponge servers and plugins and provides an easier to use configuration format. Files using HOCON are saved as .conf files. A good introduction to hocon can be found in the Sponge docs. https://docs.spongepowered.org/stable/en/server/getting-s… More detailed info about the format can be found here: https://github.com/lightbend/config Using WolfyScript/jackson-dataformat-hocon Jackson is able to parse and generate .conf files. Note: Plugins that depend on WolfyUtilities will still need to implement the HOCON changes to support that new format. Changelog · Optimized default De-/Serializers (They no longer depend on separate ObjectMappers) · Fixed StackOverflow in ExecutableItemsRef#getLinkedItem · #26 - HOCON Format Support · Fixed MultipleChoiceButton.Builder missing stateBuilders list · Removed deprecated WolfyUtilities#getItemUtils · Deprecated GuiHandler#getApi and replaced it with #getWolfyUtils · Added various more javadoc to ButtonBuilders Full Changelog: v4.16.5.1...v4.16.6.1
    2468 downloads
  14. 4.16.5.1Persistent Block Data & More Third-Party Plugin Support | v4.16.5 + v4.16.5.1Aug 25, 2022
    ChunkStorage Memory Usage & PluginIntegration Improvements | v4.16.5.1 Changelog · ChunkStorages are cleared correctly when the Chunks are unloaded now. · PluginIntegrations can be ignored now when plugins fail to load. · Changed loading phase to Startup · Exclude third-party libs from jar More info on GitHub: https://github.com/WolfyScript/WolfyUtils-Spigot/releases… Persistent Block Data & More Third-Party Plugin Support | v4.16.5 This update introduces a whole new way of storing persistent data on blocks. The previous CustomItemStore system, as the name suggests, was limited to storing the ID of CustomItem, that was placed at the block position. That system is now deprecated and replaced with the new, more modular system. Changelog · #25 – More Third-Party Plugin Support · #24 – Improved CustomItem Block Storage More Info on GitHub: https://github.com/WolfyScript/WolfyUtils-Spigot/releases…
    990 downloads
  15. 4.16.4.1New NBTQuery Util & Plugin Integration Improvements | v4.16.4.0 + v4.16.4.1Jun 27, 2022
    The new NBTQuery makes it possible to query specified data from NBT. The query constructs a NBTCompound with all the specified data it fetched, and can be used for all the things you need like merging it into another NBTCompound, display the data, etc. It is fully based on the Item-NBT-API, so the NBTCompounds etc. are part of that. For more info, see #21 Changelog · #20 – Fixed Plugin Integration Detection & Initialisation · #21 – NBTQuery System to fetch specific NBT components Player Head Texture Bug Fix | v4.16.4.1 Changelog · #23 – Fixed Player Head textures not applying to items More info on GitHub: https://github.com/WolfyScript/WolfyUtils-Spigot/releases
    3497 downloads
  16. 4.16.3.01.19 Update & Bug FixesJun 14, 2022
    Changelog · #16 – Better Player Head Texture apply method · #17 – Added Support for 1.19 · #18 – Fixed ExecutableItems ItemRef Issues · #19 – Changed the reset of chat input prompts · Updated Item-NBT-API to 2.10.0 · Fixed – AbstractItemBuilder including MiniMessage in JSON More info on GitHub: https://github.com/WolfyScript/WolfyUtils-Spigot/releases…
    912 downloads
  17. 3.16.3.2ItemsAdder Wrapper & Eco fixMar 13, 2022
    Changelog · #83 – Eco items are not correctly compared in recipes · #82 – ItemsAdder CustomStack wrapper Full Changelog: v3.16.3.1...v3.16.3.2
    4080 downloads
  18. 3.16.3.1Better ValueProviders & LangNode Bug FixesMar 7, 2022
    Changelog · #80 – Better ValueProviders · #81 – Fixed LanguageNode & Placeholder issues Full Changelog: v3.16.3.0...v3.16.3.1
    456 downloads
  19. 3.16.31.18.2 Support and JSON Value Providers + ComparatorsMar 3, 2022
    Changelog · #77 – Fixed Rendering of ButtonState icons · #78 – Updated NMS to 1.18.2 · #76 – JSON Value Providers & Operators · #79 – Updated Adventure to 4.10.0 Full Changelog: v3.16.2.0...v3.16.3.0
    409 downloads
  20. 3.16.2Various Bug Fixes & Adventure upgradeFeb 27, 2022
    Changelog · #74 – Fixed ChatInputButton Legacy Color · #75 – ItemInputButton renders incorrect item · #73 – Updated Adventure to latest dev Full Changelog: v3.16.1.0...v3.16.2.0 ————————————— Previous Update (3.16.1): KyoriPowered/adventure & Eco implementation This update implements adventure to replace the legacy colour keys using §, with a new Component based API. Because text components are massively integrated in chat messages and items, this update overhauled the whole Button API too. (More info #71) Kept backwards compatibility, so calls of the old methods will convert them and redirects to the new API. Changelog · #65 – Implement JUnit tests · #67 – Player Store compression improvements · #66 – Plugin Adapters & Plugins implementation fixes · #68 – CustomItem Events & Actions · #69, #70 – NamespacedKey improvements · #72 – Eco integration · #71 – KyoriPowered/adventure implementation & migration Full Changelog: v3.16.0.0...v3.16.1.0
    326 downloads
  21. 3.16Revert library changes & Updatable GUI titlesJan 4, 2022
    Due to lots of issues regarding the previous library changes, this updates reverts those changes. The Jackson library is again shaded and relocated. The usage of the libraries feature in the plugin.yml was removed. That will prevent conflicts with other plugins that are not using their libraries correctly and resolves the 1.16 incompatibility. Updateable GUI Titles & PlaceholderAPI support GuiWindows can now update their titles without being reopened or language reload. For that there are a few new methods: · onUpdateTitle(String originalTitle, @Nullable GUIInventory<C> inventory, GuiHandler<C> guiHandler) - Called each title update. · setTitleUpdateDelay(int titleUpdateDelay) - Set the initial delay after the inventory was opened. · setTitleUpdatePeriod(int titleUpdatePeriod) - Set the delay of each title update. Using these methods you can change the title dependent on your data. You can also set a repeating task that updates the title each specified period. Additionally, the titles support PlaceholderAPI now. Placeholders and BracketPlaceholders will be replaced if the PlaceholderAPI plugin is available. For that there is a new PluginIntegration called PlaceholderAPIIntegration that allows you to call PlaceholderAPI methods without hooking into it on your own. Code (Java): PlaceholderAPIIntegration integration = wuCore. getCompatibilityManager ( ). getPlugins ( ). getIntegration ( "PlaceholderAPI", PlaceholderAPIIntegration. class ) ; if (integration != null ) { //PlaceholderAPI is available //use the integration e.g. integration.setPlaceholders(player, yourString); } or via the functional usage Code (Java): wuCore. getCompatibilityManager ( ). getPlugins ( ). runIfAvailable ( "PlaceholderAPI", PlaceholderAPIIntegration. class, integration -> { //PlaceholderAPI is available //use the integration e.g. integration.setPlaceholders(player, yourString); //of course you need to use Atomics to edit variables outside of this lambda. } ) ;
    2689 downloads
  22. 2.16.2API & Registry revamp, and better plugin compatibilityDec 26, 2021
    This update improves the structure of the API, the way registries are handled, and introduces a new system for plugin compatibility. For CustomCrafting users! Only CustomCrafting v2.16.6+ is compatible! This version is not backwards compatible with CustomCrafting due to the breaking changes listed below. Breaking changes It is mostly backwards compatible, but there are some parts, that if they were used before will break. Jackson library WolfyUtilities no longer uses the shaded version of Jackson! Instead, it makes use of the libraries feature in the plugin.yml by Spigot to load the original artifacts and use the correct class paths! If you made use of these libraries, you need to migrate to the original Jackson dependency and add it to your dependencies besides WolfyUtilities. APIReferences APIReferences that are dependent on other plugins (ItemsAdderRef, MagicRef, MMOItemsRef, OraxenRef) were moved to me.wolfyscript.utilities.compatibility.plugins and are from now on interfaces with few or no methods. API changes To interface with the API, you should use the core maven artifact from now on. Code (Text): <dependencies> <dependency> <groupId>com.wolfyscript.wolfyutilities</groupId> <artifactId>core</artifactId> <version>2.16.0.0</version> <scope>provided</scope> </dependency> </dependencies> To get an instance of the API ( WolfyUtilities) you use the new WolfyUtilCore class. WolfyUtilCore.getInstance().getAPI(plugin); Once you have your API instance, it is recommended to use the WolfyUtilities#getCore() instead of the static WolfyUtilCore#getInstance() whenever possible. This makes sure that you follow a well-structured design, instead of referencing static instances everywhere. That means you should pass your API instance to other Objects (like listeners, handlers, etc.) via the constructors. Registry If you wanted to register custom objects in previous versions, you had to do that via static constants in the Registry interface, and for registering classes another interface… Not only was this system confusing, but the constants in the interfaces itself made it really confusing when implementing them. Because of this, the registry interfaces and classes have been redone and the new Registries class combines all registries into one. First, the new registry classes have their own package me.wolfyscript.utilities.registry. The Registry itself got a new hierachy: · IRegistry · TypeRegistry - Used to register types, from which objects can be created, serialized, deserialized, etc. · TypeRegistrySimple - Simple implementation of the TypeRegistry. · Registry - Used to register objects. · RegistrySimple - Simple implementation of the Registry. All registries can be accessed via the Registries instance: Registries registries = yourAPIInstance.getRegistries(); or via a static reference: Registries registries = WolfyUtilCore.getInstance().getRegistries(); Even though the new registry structure is backwards compatible, it is highly recommended that you update to the non-static registries! Plugin Compatibility Plugin implementations are split into separate modules now. That means that only the specific module requires the dependencies of the corresponding plugin. Additionally, those modules can be removed from the building process, if necessary. Module structure: · wolfyutilities-parent [pom] · core [jar] - The core features, including the API, etc. · nmsutil [pom] · nmsutil-v<mc_version> [jar] · nmsutil-artifact [jar] - Combines all available "nmsutil-v" modules. · plugin-compatibility-module [pom] · <plugin_name> [jar] · plugin-compatibility-artifact [jar] - Combines all available plugin modules. · wolfyutilities [jar] - Combines all artifacts (core, nmsutil-artifact, plugin-compatibility-artifact) from above, producing the plugin jar. The main purpose of this new system is to make sure that plugins that WolfyUtilities depends on are all done with loading their data before any process tries to access that data. This is quite important as some plugins might load their data asynchronously. To make this system work, WolfyUtilities will look for all available plugins, for which it can find a PluginIntegration. Once a plugin is enabled, WolfyUtilities will create a new instance of the corresponding PluginIntegration and initialize it. That way, there is one PluginIntegration per plugin, that acts as an API layer between the plugin dependent module and core. At this point, the system needs to take async loading into account. Each PluginIntegration has a method to check if the corresponding plugin is done loading (PluginIntegration#isDoneLoading()). When a plugin is done loading, its integration will be marked as done. Once all PluginIntegrations are done, the DependenciesLoadedEvent is being called to notify other plugins. Getting the PluginIntegrations All the necessary methods are available via the Plugins instance. Code (Java): Plugins plugins = yourAPIInstance. getCore ( ). getCompatibilityManager ( ). getPlugins ( ) ; //or via a static reference: Plugins plugins = WolfyUtilCore. getInstance ( ). getCompatibilityManager ( ). getPlugins ( ) ; There are quite a few methods to get PluginIntegrations and/or run callbacks, etc. Version number update To better represent the compatibility of the plugin with Minecraft and other plugins, the version number was changed. <MAJOR>.<MC>.<MINOR>.<PATCH> The numbers represent the following: · MAJOR - These updates contain breaking changes and are most of the time major rewrites. · MC Compatibility - The lowest compatible Minecraft version without MCs major version, e.g. 1.16 → 16, 1.17 → 17 · MINOR - New features and functionality without breaking backwards compatibility. · PATCH - Bug fixes with backwards compatibility. Bug Fixes · Fixed ParticleContent backwards compatibility · Fixed - CustomItem#checkOldMetaSettings field is included in serialized json. · Fixed - WUVersion#parse doesn't work if the version has something appended with "-". · Fixed - PlayerUtils crash the plugin if it fails to load a player .store file. · Various minor bug fixes.
    654 downloads
  23. 1.8.0.01.18 SupportDec 2, 2021
    This update implements support for Minecraft 1.18, including the NBT API, NMS utils, and other nms dependent things. As always, make sure to back up your server data before updating! I cannot guarantee that everything will go smoothly! Don't risk your data being corrupted, deleted, or lost! Changelog · Added NMS support for Minecraft 1.18. This includes the GUIInventory, NBTUtil, and other features. · Added 1.18 to MinecraftVersions.
    1114 downloads
  24. 1.7.3.0Better NBTItem API & ClassRegistry | v1.7.3.0Aug 17, 2021
    Changelog · Added NBTUtil#getDirectItem to directly edit the NBT of items. This makes it possible to get an NBTItem instance which directly edits the NBT of the specified item without the need to run NBTItem#create. · Added a ClassRegistry to register classes instead of default objects. The main use case of this registry would be to prevent using the Registry with default objects and prevents unwanted usage of those values, as this registry enforces to create new instances.
    3982 downloads
  25. 1.7.2.0Moved Download to CurseForgeJul 19, 2021
    The plugins now also available on CurseForge. As it's easier to upload the file to just one place, the download here will link to CurseForge. Older versions can be still be downloaded via the Version History tab.
    2611 downloads
  26. 1.7.1.1CustomItem improvements | v1.7.1.1Jul 9, 2021
    Changelog · Added ignoreAmount to CustomItem#isSimilar · Added FuelSettings object to better structure the CustomItem. · Added CustomItem#removeUnStackableItem(ItemStack, boolean) to toggle the craft remains. (default always on) · Renamed CustomItem#consumeItem to CustomItem#remove · Added CustomItem#remove with an additional setting to toggle the craft remains. · Added more and better JavaDoc for CustomItem and APIReferences. · Added Custom Deserializer/Serializer for CustomData. · Added a weight option to the APIReference, which can override the CustomItem weight setting if it is bigger than 0. · Added Environment property to distinguish between dev and prod. (Start argument: -Dcom.wolfyscript.env=<DEV|PROD>) · Removed Custom Serializer/Deserializer of the CustomItem for better and easier structure using Jackson annotations. · Fixed CustomItem craft remains not clearing the ItemMeta if applied. So Water Buckets with NBT like names, etc. will no longer transfer that to the Bucket they are replaced with. · Improved RandomCollection to use the ThreadLocalRandom whenever possible. It can be overridden by using RandomCollection(Random) or RandomCollection#next(Random)
    563 downloads
  27. 1.7.1.0Jackson TypeResolver integration | v1.7.1.0Jun 21, 2021
    Changelog · Added KeyedTypeResolver and KeyedTypeIdResolver to make it easier to serialize/deserialize custom Keyed objects.
    1878 downloads
  28. 1.7.0.2Bug Fixes | v1.7.0.1Jun 18, 2021
    Changelog · Fixed WolfyScript/CustomCrafting-Wiki#12: Workbench issue
    668 downloads
  29. 1.7.0.1Bug Fixes | v1.7.0.1Jun 17, 2021
    Changelog · Fixed util used to format shapes for shaped recipes.
    314 downloads
  30. 1.7.0.0Minecraft 1.17 & Java 16 | v1.7.0.0Jun 15, 2021
    This update requires Java 16 to function! Please make sure you use that version of Java. This update implements compatibility with Minecraft 1.17 and uses Java 16. Additionally, there are some bug fixes and improvements. Changelog · Updated to Java 16! Older java versions will not work! · Updated to Spigot and NMS 1.17 · Rewritten and improved ArmorEquipEvent. It is more consistent than before and can be correctly canceled. Canceling the event cancels the equip or unequip action no matter if it's a vanilla item or CustomItem with a set equipment slot. · Removed javax imports wherever possible. · Removed deprecated InventoryUtil#setCurrentRecipe. · Removed functionality from the ScriptUtil. It will now throw a UnsupportedOperationException! · Improved GuiHandler, and more using Java 16 features. · Fixed that armor couldn't be dropped out of the armor slots in the player inventory.
    371 downloads
  31. 1.6.4.2Bug Fixes | v1.6.4.2May 24, 2021
    Changelog · Fixed NullPointerException when initiating block effects.
    2619 downloads
  32. 1.6.4.1Critical Bug Fix | v1.6.4.1May 22, 2021
    Changelog · Fixed an issue that allowed you to collect items from the GUI to the bottom inventory.
    408 downloads
  33. 1.6.4.0Bug Fixes, Improvements & MCByteBuf | v1.6.4.0May 17, 2021
    CustomCrafting notice: This update is only compatible with the latest CustomCrafting v1.6.6.0 or later! Breaking changes ( I will create a wiki entry for this soon for more detail!): The CustomCache no longer extends the TreeMap, so any methods depending on it will no longer work! The init method of the Button class for GuiClusters has been replaced: -> Button#init(String, WolfyUtilities) was replaced with Button#init(GuiCluster) Changelog · Added MCByteBuf to wrap Minecraft's ByteBuf (This allows to write ItemStacks, etc. into Packets and send them) · Replaced io.netty v5 dependency with v4 (as that's the version MC uses!) · Improved performance of the consumption of CustomItems. · Improved BlockListener · Improved NMSUtil class by combining duplicate code. · Fixed Custom Items resetting specific NBT data when checked for similarity. (This should fix the issues of heads resetting and other possible issues.) · Fixed WorldUtils timer loading placed CustomItems instead of saving them. (This should fix Advanced & Elite Crafting Tables resetting or keeping their particles when broken.) · Minor fixes and changes
    604 downloads
  34. 1.6.3.25Bug Fixes & Improvements | v1.6.3.25Apr 26, 2021
    Changelog · Added clone methods and copy constructors to CustomItem and its values. · Fixed setting the amount of the cloned CustomItem applies it to the original APIReference. · Fixed CustomData not being cloned correctly (but only if the CustomData overrides the clone method! Upcoming CC update) · Fixed #25 by canceling the event if the edge case happens (still looking for the edge case). · Removed old CustomItem clone method & Cloneable interface
    1847 downloads
  35. 1.6.3.24Console API & Improvements | v1.6.3.24Apr 21, 2021
    Changelog · Added separate Console API to replace console message methods of the Chat API and make use of the Logger. · Added new ButtonState constructors to use NamespacedKeys instead of Strings. · Reduced the number of tasks that are run on each GUI update. · Minor Bug Fixes
    549 downloads
  36. 1.6.3.23Bug Fixes | v1.6.3.23Apr 15, 2021
    Changelog · Fixed FileInputStream is not closed in WorldUtils. · Fixed CustomItems with NamespacedKey not ignoring the rest of the meta. · Updated README on GitHub and added first documentation.
    627 downloads
  37. 1.6.3.22Optimizations & Code clean-up | v1.6.3.22Apr 11, 2021
    Changelog · Reformatted GUIInventory click- and drag events. They now use one Listener instead of a Listener for each InventoryAPI. · Added StateFunction to ToggleButton and MultipleChoiceButton to easily set the state depending on data in the cache, etc. · Added more docs to Buttons and other classes. · Added new Button#init(GuiCluster) to pass the GuiCluster instance directly. · Improved the Inventory Close method of the GuiHandler. Outsourced the InventoryCloseEvent to one Listener instead of registering one for each Player! · Deprecated old Button#init(String, WolfyUtilities). · Deprecated some DummyButton constructors that used ButtonActions even though they can't execute them. · Deprecated ScriptUtil because it's unnecessary. Use the ScriptManager or Context of GraalVM directly! · Code clean-up
    458 downloads
  38. 1.6.3.21Item NBT check changes & ItemsAdder support | v1.6.3.21Apr 7, 2021
    Changelog · Added ItemAdder support · Improved NBT check of CustomItems. Items from external plugins will only be checked for their contained id. (MythicMobs items require the AppendType option to be enabled so the items contain the id!). Vanilla items, or CustomItems of WolfyUtilities, that have specific Meta options, will be checked for NBT equality. · Preparations for JavaDocs and bug fixes to fix issues that prevented them from generating.
    524 downloads
  39. 1.6.3.20Bug Fixes & Improvements | v1.6.3.20Apr 6, 2021
    Changelog · Fixed Global Buttons overriding the custom cluster ID of the ButtonState · Fixed RecipeIterator not finding the Recipe Registry. · Added ButtonAction to the ChatInputAction · Added some constructors to ChatInputButton with ChatTabComplete
    221 downloads
  40. 1.6.3.19Reverted Changes from previous update | v1.6.3.19Apr 5, 2021
    Reverted changes, that broke backward compatibility, from the last update.
    212 downloads
  41. 1.6.3.18New RecipeUtil & Bug Fixes | v1.6.3.18Apr 4, 2021
    Changelog · Added RecipeUtil to the NMSUtil API. The new RecipeUtil allows to get Recipe Type-specific Iterators instead of using the Bukkit#recipeIterator which contains all types of recipes. · Fixed ChatInputButton not using the correct language path when registered globally. · Minor Bug Fixes
    188 downloads
  42. 1.6.3.16Backwards compatibility fix | v1.6.3.16Mar 28, 2021
    This update fixes the backward compatibility of the API
    568 downloads
  43. 1.6.3.15Better chat input via command & Improvements | v1.6.3.15Mar 28, 2021
    Changelog · WolfyUtilities API instances can now be created in the plugin's constructor. · Added ChatTabComplete to set custom Tab completions on chat input. · Improved the /wui command. The command can now be used by players to input text instead of typing it straight into the chat. This makes it possible to use tab completions and doesn't interfere with any other chat plugin. The old way of typing input into the chat still works and will be passed to the command, but in the future, it's recommended to use the command directly. · Improved RandomCollection: It now extends TreeMap to open up more methods to values etc. RandomCollection#next now returns null if no value is available. · Bug fixes · Code clean up & Refactoring
    139 downloads
  44. 1.6.3.14Improvements & InventoryUtils additions | v1.6.3.14Mar 21, 2021
    Changelog · Moving Items from the Bottom Inventory into ItemInputButtons will now call all the available ItemInputButtons and is canceled if one button cancels the action. · Added new InventoryUtils methods · InventoryUtils#getInventorySpace(ItemStack[], ItemStack) allows to check custom ItemStack Arrays for space. · InventoryUtils#calculateClickedSlot calculates and places items into slots of the inventory of the Event. This code was moved from CustomCrafting into WU to fix issues regarding it more easily and prevent duplicate code.
    509 downloads
  45. 1.6.3.13Fixed WorldCustomItemStore Error | v1.6.3.13Mar 9, 2021
    Changelog · Fixed #21 - NullPointerException while loading world_custom_item.store
    822 downloads
  46. 1.6.3.12Bug Fixes & Improvements | v1.6.3.12Mar 6, 2021
    Changelog · Fixed possible NullPointerException in WorldCustomItemStore · Changes NamespacedKey terms of use to enforce a better way to register CustomItems. e.g. to prevent duplicate namespaces across multiple plugins. · Preparations for Custom Tags support.
    336 downloads
  47. 1.6.3.11Minor Performance ImprovementsFeb 25, 2021
    Changelog · Minor performance improvements of comparing ItemStacks to CustomItems
    653 downloads
  48. 1.6.3.10Bug Fixes | v1.6.3.10Feb 19, 2021
    Changelog · Fixed issues with CustomItems breaking if their linked item doesn't exist.
    518 downloads
  49. 1.6.3.9Bug fixes & NBT API additions | v1.6.3.9Feb 17, 2021
    This update fixes some issues regarding the API change of MMOItems to MythicLibs. MythicMobs Items should be correctly detected again. Remember to enable the type information for your items to let WolfyUtilities automatically update the items in other plugins like CC. Code (YAML): Options: AppendType : true The NBT API was improved and got new additions. For example, you can now read and edit the values of the NBTTagList. Full example how to use the basic API here on GitHub. Code (Java): NBTTagList customList = nbt. getTag ( ). list ( ) ; customList. add ( 0, nbt. getTag ( ). ofIntArray ( new int [ ] { 4, 543654, 235, 223, 423, 32 } ) ) ; customList. add ( 0, nbt. getTag ( ). ofIntArray ( new int [ ] { 543, 345, 76, 21, 8, 65, 456, 4 } ) ) ; customList. add ( 0, nbt. getTag ( ). ofIntArray ( new int [ ] { 897, 567, 98, 899, 878712, 12 } ) ) ; wolfyCompound. set ( "IntArrayList", customList ) ; //Read values NBTTagList nbtTagList = (NBTTagList ) wolfyComp. get ( "IntArrayList" ) ; for ( int i = 0 ; i < nbtTagList. size ( ) ; i ++ ) { System. out. println ( "- " + nbtTagList. getTag (i ) ) ; } Changelog · Fixed issue with CustomItems breaking in 1.14 · Added options to the NBTTagList · Fixed MMOItems not working with the new MythicLibs · Fixed the detection of MythicMobs items
    305 downloads
  50. 1.6.3.8Bug Fixes & NBT API Beta | v1.6.3.8Feb 11, 2021
    This update tries to fix an issue where it isn't correctly loaded before CustomCrafting. It also adds a new NBT Tag API, that makes it easy to read and edit the NBT Tags of items. All you need to use this in your code is an instance of the WolfyUtilities API. Note that this NBT API was not fully tested on all Minecraft versions yet and lacks some features e.g. NBT Tag Lists have no methods yet to read/edit their value. Code (Java): ItemBuilder itemBuilder = new ItemBuilder (Material. DIAMOND_SWORD ) ; itemBuilder. addLoreLine ( "Test Sword" ) ; itemBuilder. addEnchantment (Enchantment. DAMAGE_ALL, 5 ) ; itemBuilder. addItemFlags (ItemFlag. HIDE_ENCHANTS ) ; ItemStack itemStack = itemBuilder. create ( ) ; //Build the example ItemStack. Of course any ItemStack can be used! NBTUtil nbt = wolfyUtilities. getNmsUtil ( ). getNBTUtil ( ) ; //Get the NBTUtil from your plugins WolfyUtilities instance. NBTItem nbtItem = nbt. getItem (itemStack ) ; //Creates a wrapper for the ItemStack //Directly set Tags to the item nbtItem. setTag ( "test_string", nbt. getTag ( ). ofString ( "Test String!" ) ) ; //Get the Tag of the item for more advanced options NBTCompound compound = nbtItem. getCompound ( ) ; compound. setInt ( "Test_Int", 10 ) ; //Create a new Compound Tag using the NBTTag API NBTCompound wolfyCompound = nbt. getTag ( ). compound ( ) ; //There are tons of options to add/edit any kind of NBT Tag wolfyCompound. setByte ( "Byte", ( byte ) 4 ) ; wolfyCompound. setBoolean ( "Boolean", true ) ; wolfyCompound. setDouble ( "Double", 2d ) ; wolfyCompound. setFloat ( "Float", 7f ) ; wolfyCompound. setInt ( "Int", 9 ) ; wolfyCompound. setLong ( "Long", 9999 ) ; wolfyCompound. setShort ( "Short", ( short ) 200 ) ; wolfyCompound. setString ( "String", "TestString" ) ; wolfyCompound. setByteArray ( "ByteArray", new byte [ ] { 9, 9, 5, 2, 3 } ) ; wolfyCompound. setIntArray ( "IntArray", new int [ ] { 9, 3543, 2134, 123 } ) ; wolfyCompound. setLongArray ( "LongArray", new long [ ] { 54, 65, 23244343, 1000000000000000000L } ) ; NBTCompound nestedComp = nbt. getTag ( ). compound ( ) ; nestedComp. setString ( "LUL", "xD this is a nested Text!" ) ; nestedComp. setBoolean ( "Funny", false ) ; //Set nested compounds wolfyCompound. set ( "Nested", nestedComp ) ; //Setting values to the items root tag will automatically be applied to the NBTItem instance compound. set ( "wolfy", wolfyCompound ) ; //Get the ItemStack with the updated NBT Tags ItemStack newItem = nbtItem. create ( ) ;
    524 downloads
  51. 1.6.3.7Reupload with a few small changesFeb 8, 2021
    The previous version didn't work for many people, because CC didn't find a file in WolfyUtilities, even though the file existed. I hope that this update fixes it.
    397 downloads
  52. 1.6.3.6Final fix for MMOItemsFeb 5, 2021
    The previous update was a bit hurried. So if you plan to use MMOItems... this update fixes a mistake I made, where it doesn't save the id of the MMOItem but the actual object. This will be hopefully the final fix for the MMOItems integration
    449 downloads
  53. 1.6.3.5MMOItems Implementation FixFeb 5, 2021
    Changelog · Fixed the implementation of MMOItems not correctly saving/loading the items.
    146 downloads
  54. 1.6.3.4Rewrite, Bug Fixes & new GUI system | APIv3 - v1.6.3.4Feb 3, 2021
    WolfyUtilities was mainly rewritten and reworked to fix many issues and make it modular, easy to extend, and especially develop. The core is now split into two packages /api and /util. /api contains all the APIs that are only available via an instance of the WolfyUtilites API linked to the specific plugin. /util contains all the static utils, which can be used anywhere without any additional instances. This update will be available directly on SpigotMC temporarily, while my website is in development. GUI The GUI was completely rewritten to provide a more responsive and stable GUI. To make this work the GUI API now uses NMS to create custom Inventories that are based on the internal Bukkit Inventory and are completely compatible with Bukkits Inventory API like events, etc. The API provides new methods and life cycles for custom GUI menus to further customize them and also provides a new way to manage custom caches and make sure you are always using the correct one. The Buttons are also reworked to require less Boilerplate code and provide more lifecycles like preRender or postExecute, which allows you to better prepare and process data for buttons. Registry WolfyUtilities now uses a Registry to register all the custom objects that implement the Keyed interface. This makes it easier to scale data like CustomItems and other data and receive it in code. Versions Comparing versions is now easier and doesn’t use weird values anymore. The API for it is part of the /util package and therefore is available everywhere. The methods to check for mc version can be found in ServerVersion. NMSUtil The new NMSUtil is part of the /api subpackage and requires a WolfyUtilities to be accessed. Once you got the instance of it you can use some util classes, that make use of CraftBukkit and NMS without any reflection. Note that this API lacks a lot of features at this point, but will be extended in the future. Current features include a way to serialize/deserialize items in the vanilla JSON format, create GUIInventories (Extends the Inventory interface to include additional WU objects. Completely compatible with Bukkit and is accessible in InventoryClickEvents, etc.), get the NMSBrewingStand to edit values of the tile entity directly (instead of Bukkit, which edits a copy). Custom Items The main goal with custom items in this update was to make them modular, meaning that you can easily register your own custom data, meta checks, etc. Additionally to this, the meta checks are no longer limited to one value (ignore, exact, etc.), but can also be configured with even more options. To register your own data and meta checks you need to use the Registry. Code (Java): //These should be put into your plugins load(); method so you can make sure it is registered before items are loaded. //Register Meta checks Registry. META_PROVIDER. register (NamespacedKey. of (“namespace”,”key” ), YourMeta. class ) ; //Register CustomData for CustomItems Registry. CUSTOM_ITEM_DATA. register ( <A provider of your custom data > ) ; //The provider is created using a class that extends it. It’s used to provide new instances and them to custom items. 3rd party API support MMOItems APIReference is now implemented to add support items from MMOItems. ItemsAdder support was removed due to incompatibility with other plugins like CustomCrafting. Bug Fixes · Fixed critical issues in the GUI that caused errors and allowed players to take out items sometimes. · Fixed the consuming settings of CustomItems. Like "consumed", "replacement" and "durability cost" · Fixed CustomItemBreakEvent still dropping items if dropsItems is false · Chat Clicks are no longer executed in the CommandPreprocessCommand to be inline with Spigots API · The cached Click Actions are no longer plugin dependent · Fixed custom durability namespaced keys containing invalid characters. · Fixed and cleaned up AbstractItemBuilder to make sure that it uses the correct type.
    303 downloads
  55. 1.6.2.19Spigot 1.14/1.15 incompatibility fixesNov 24, 2020
    This update fixes some issues in the GUI management that caused issues on pre-1.16 versions. Changelog · Fixed 1.15 incompatibility (commit: b9262ea) · Added in bounds checks when opening previous GUI Windows, to prevent issues. (commit: 8bd9695) · Code clean up (commit: fa2549b)
    3055 downloads
  56. 1.6.2.17New button state life-cycle & GUI force sync updatesNov 20, 2020
    This update adds a new Button state life-cycle to make it easier to prepare data before rendering and a new forceSyncUpdate to force a GUI to be updated in sync. When forcedSyncUpdate is enabled it will also update sync even if you use the onUpdateAsync(). Changelog · Added ButtonPrepareRender method, which makes it easier to prepare data for render. (commit: 3ab90d0) · Implemented prepareRender method in ActionButton, ItemInputButton, etc. (commit: 01039ed) · Added forceSyncUpdate option to GuiWindow. (This option forces any updates, also async render, to be executed in sync. This should be used when using ItemInputButtons to prevent item duplication!) (commit: 12ff065) · Added explanation to the render method (commit: 1621e18)
    1617 downloads
  57. 1.6.2.16More CustomItems methods & Experimental featureNov 15, 2020
    This is an update, which further adds features required for future CustomCrafting updates (or current Patreon version). It also adds a small experimental feature, that can be enabled via the custom item config. Changelog · Added experimental feature to CustomItem, that allows the item to ignore every single NBT, but the namespaced key (Setting the advanced option to false will enable it and meta ignore settings are also ignored). (commit: 782969c) · Added more methods to the CustomItems utils, to get namespaces or a list of custom items of a namespace. (commit: 37aca6d) · Smaller changes to MetaSettings and code clean up (commit: 26f2a93) · Update 1.6.2.16 (commit: 9952c4c)
    619 downloads
  58. 1.6.2.15Bug Fixes & ImprovementsNov 10, 2020
    This update fixes some important Bug fixes for PlotSquared and other fixes. Changelog · Added old default particle effects to a new file · Improved the permission check algorithm · Removed the Rhino JavaScript engine · Removed unnecessary files · Fixed try-catch blocks catching Throwable · Fixed issues with PlotSquared plot checks · Minor improvements
    665 downloads
  59. 1.6.2.14New Particle system, Database improvements, and Bug fixesNov 6, 2020
    In this update, the particle system was mainly reworked with a new JavaScript engine for the particle animations and more improvements. All that's left is a custom particle implementation for CustomCrafting. The Database handler is now correctly handling queries and connections. This update will redirect to my new website. If you got any problems downloading it from there let me know here or on my discord server. Changelog · Added custom Vector Serializer for Jackson. · Added new test particle effects and particles. · Added animation script for the test particle effects. · Rewritten the MySQLDataBase Util, so it now handles connections better. · Rewritten the system that executes the scripts of the particle effects. · Updated to the Nashorn JavaScript engine (Unsupported in Java 15+). · Reverted Quick Fix for ItemsAdder Items, as it is now redundant on the latest Patreon CC version. · Removed Gson custom serializer classes. · Fixed GuiUpdate.setItem not applying items to queue inventory. · Fixed custom particle effects on blocks not reinitializing after server restart. · Fixed custom particle effects on items not being canceled when item is dropped. · Fixed custom particle effects not spawning on players.
    532 downloads
  60. 1.6.2.11GUI Bug Fixes | v1.6.2.11Oct 24, 2020
    Changelog · Fixed GUI not responding when reopened after chat input and possibly other edge cases. · GuiHandler now saves the UUID instead of the Player instance
    918 downloads
  61. 1.6.2.10Bug Fixes & ImprovementsOct 23, 2020
    Changelog · Fixed ArmorEquipEvent issues: NullPointerExceptions and Players being able to equip any item · Fixed Gui items flashing in the inventory when rendered Buttons are now rendered into a virtual inventory, which acts as a queue and transfers the items to the actual inventory when all render operations are done (including async operations). · Renamed the Main class of the plugin to make it more unique (Main.class isn't really unique) · Rearranged and renamed contents of the main class · Removed debug plugin message of ChatInputButton
    322 downloads
  62. 1.6.2.9Small changesOct 20, 2020
    removed some debug messages I just found
    361 downloads
  63. 1.6.2.8GUI Improvements & new CustomItems features | v1.6.2.8Oct 19, 2020
    This update was designed to reduce the amount of Boilerplate required to create Buttons, fix issues with the async rendering and languages. Buttons Render & Action interfaces They are now separated to make use of lambda and make it more flexible and should replace the old ButtonRenderAction as it is now deprecated! CustomItems MythicMobs Integrated MythicMobs to automatically the item names and update them if they change in MythicMobs. This requires the MM Items to include the Options.AppendType to be enabled, so WU can read the name from the NBT data. Vanilla Features: · Block placement · Block use of item inside vanilla recipes (only crafting recipes!) ItemStack Serialization Uses a new way so serialize/deserialize ItemStacks. This however still doesn't fix load issues with some items using invalid NBT Tags. Potion Effects The JacksonUtil ObjectMapper now contains a Serializer/Deserializer for PotionEffect and PotionEffectType. Bug Fixes · Fixed GUI not responding and updating after opening input and going back. · Fixed sync updating of GUIs not working · Fixed previous GuiWindow updating when the Window was changed inside a ButtonAction. · Fixed LanguageAPI error if the String, it tried to translate, didn't contain a language key. · Removed backward compatibilities with old 1.13 custom durability, as it was saved inside the lore and wasn't efficient. · Removed unused files · Minor changes to prevent NullPointer when updating GUIs
    325 downloads
  64. 1.6.1.2Removed Debug messagesAug 27, 2020
    Removed debug messages
    2116 downloads
  65. 1.6.1.1Bug Fixes & Improvements | v1.6.1.1Aug 24, 2020
    This update fixes issues with 1.16.2 and improved the execution and rendering of Buttons. Changelog · Fixed loading of ItemCategories in latest Minecraft versions · Added try-catch to Button execution and rendering to prevent Buttons from causing GUIs to break when an error occurs.
    348 downloads
  66. 1.6.1.0Async GUI rendering | v1.6.1.0Aug 22, 2020
    This update introduces a new method to render GuiWindows async, sync or both mixed. The GuiWindow has two new methods: onUpdateSync() and onUpdateAsync(). First the GuiUpdateEvent is called after the execution of it the onUpdateSync() method will be called and the inventory is being opened if not already open. At the end the onUpdateAsync() is called. Changelog · Added the ability to render GuiWindows async, sync or both mixed
    312 downloads
  67. 1.6.0.5Bug Fixes | v1.6.0.5Aug 12, 2020
    This update will fix some issues in WU, but will not fix the current CustomCrafting issues! Changelog · InventoryAPI.reset() now clears all the registered buttons · Added Reflection.getMethod and Reflection.getDeclaredMethod with boolean param to toggle the stacktrace. If true no stacktrace is printed when it fails. · Minor improvements
    706 downloads
  68. 1.6.0.4Minecraft 1.16 Update | v1.6.0.4Aug 10, 2020
    It's finally here!! Update 1.6 introduces a completely redone internal custom item system and rearranged API. The way JSON files are saved and loaded is also redone, so old json files might not work as intended (This affects plugins using this API! See the changelog of CustomCrafting). The new Custom Item system integrates Oraxen and ItemsAdder into WolfyUtilities and CustomCrafting. Changelog · Changed the json library from Gson to Jackson · JsonConfiguration still uses Gson, but might not be as stable as using Jackson. · The Language no longer uses the JsonConfiguration - LanguageAPI now uses a fallback Language when the specific key isn't found in the active language - Languages now cache previous used keys for faster access · Changed the CustomItem class: - it no longer extends Bukkits ItemStack - it now extends AbstractItemBuilder that allows for easier creation of Items - it is now contains a APIReference variable that can be a VanillaRef, WolfyUtilitiesRef, OraxenRef or ItemsAdderRef. - get the ItemStack via: getItemStack() - gets the item, linked to the APIReference without amount changes. create() - creates a copy of the linked item and uses the custom amount setting. · All the classes are now using custom Jackson Serializer/Deserializer instead of Gson. · Many other changes and rewritten parts of the API. · Added many comments to code to explain the methods. (this is unfortunately not yet available) · Added equals() method to many classes to check for equality. · Added NamespacedKey to the CustomItem that is added to it when it's saved. That way you can now know when an CustomItem is actually saved by invoking hasNamespacedKey(). · Added back the Custom Equipment Listeners. It now supports equiping from items in the hotbar via right-clicking and full coverage of Inventory clicks like dropping one item, switch items, numberkeys, etc. · Added new method CustomItem.getReferenceByItemStack() to get a new instance linked to the specific API/Item it's bound to. e.g. If the ItemStack is part of Oraxen this method returns a new CustomItem with the OraxenRef. If the ItemStack has no reference it returns a new CustomItem with the VanillaRef. · Fixed the check of Player Head textures. · Fixed that Custom Durability is not completely repairable with Mending · Minor Bug Fixes
    402 downloads
  69. 1.5.6.20More important duplication Fixes!Jun 7, 2020
    Changelog · Fixed duplication issue with elytra, pumpkin and player head · Performance improvements
    2485 downloads
  70. 1.5.6.19Very important Duplication Bug Fix! | v1.5.6.19Jun 3, 2020
    Changelog · Fixed an Armor duplication bug. The duplication occurred when pressing a number key 1-9 + left click at the same time to unequip armor pieces. I've tested many other edge cases to make sure there isn't any other problem that might happen. If you however encounter any other duplications please let me know on Discord, as I check Discord more often than SpigotMC!
    427 downloads
  71. 1.5.6.18MySQL Bug Fixes & Clean Up | v1.5.6.18May 21, 2020
    Changelog · Fixed UTF-8 issues with MySQL · Fixed MySQL reconnecting issues · Changed the use of the SQLDataBase.openConnection(). It no longer opens the connection async! Instead use SQLDataBase.openConnectionAsync()! · Deprecated SQLDataBase.openConnectionOnMainThread()! It's replaced by SQLDataBase.openConnection()! · Fixed some ButtonState constructors for MC 1.13 · Added a few JavaDocs to some methods of the CustomItem class
    930 downloads
  72. 1.5.6.161.13 incompatibility fix | v1.5.6.16Apr 26, 2020
    Changelog · Fixed 1.13 compatibility issues
    2066 downloads
  73. 1.5.6.15CustomItem system changes & Bug fixes | v1.5.6.15Apr 26, 2020
    Changelog · Changed the id system of CustomItems as well as the CustomConfig. It will no longer use the String ids, they are replaced by a new custom Object called NamespacedKey which consists of a namespace and key. · Fixed ArmorEquipEvent ignoring the Curse of Binding of items and making it possible to unequip them.
    171 downloads
  74. 1.5.6.13Incompatibility fix for chat input | v1.5.6.13Apr 14, 2020
    Changelog · Fixed incompatibility of the chat input with ChatColor2 and other potential plugins that manipulate chat messages.
    772 downloads
  75. 1.5.6.12Bug FixesApr 9, 2020
    Changelog · Added CustomModelData option to ButtonState constructor · Fixed the extra tag of CustomItems not being correctly ignored when comparing it to other items. · Fixed ClickActions not working correctly and sometimes printing the text in the chat (e.g. wu::af634e2c-...). The same applies to chat input not being usable. · Added soft depend mcMMO and method to check if it is installed
    474 downloads
  76. 1.5.6.11Changes to CustomItems | v1.5.6.11Mar 26, 2020
    Changelog · The similarity check of CustomItems can now ignore the id tag, which is added to CustomItems that are saved. Right now this has to be done via the config and there isn't an option in CustomCrafting yet.
    950 downloads
  77. 1.5.6.10Bug Fix | v1.5.6.10Mar 18, 2020
    Changelog · Fixed issue with saving recipes causing invalid key exceptions
    730 downloads
  78. 1.5.6.9Bug Fixes and Changes | v1.5.6.9Mar 18, 2020
    This update will only work with the latest and future CustomCrafting updates! Changelog · Added more reflection utils to get declared methods and fields. · CustomConfigs and ItemConfigs are now Json only! · Fixed issues with CustomItems resetting when equipped.
    150 downloads
  79. 1.5.6.6Quick fix...Mar 2, 2020
    Sorry about that... just a quick fix. That should fix all the problems running this plugin once and for all.
    902 downloads
  80. 1.5.6.5Bug Fixes | v1.5.6.5Mar 1, 2020
    Changelog · Fixed issues regarding the relocation of org.mozilla · More minor improvements
    226 downloads
  81. 1.5.6.4Bug Fixes and ImprovementsFeb 20, 2020
    Changelog · Fixed #3 CustomItems location isn't updated when moved by Pistons, etc. · Fixed #4 CustomItems placed down as blocks are not unregistered and/or dropped when exploding · Relocated org.mozilla package to me.wolfyscript.utililities.org.mozilla to prevent it from interfering with other plugins using org.mozilla.
    689 downloads
  82. 1.5.6.3Changed FileFeb 15, 2020
    Uploaded the wrong file. Sorry about that.
    431 downloads
  83. 1.5.6.2Changes for CustomItem placement | v1.5.6.2Feb 15, 2020
    Changelog · CustomItem container (shulkerbox, chest, etc.) that are saved, no longer drop the default CustomItem when placed and broken. That means the when you take out the items out of a shulkerbox and break it, it drops the shulkerbox with the new inventory without the items. This also prevents duplication problems that occurred before.
    157 downloads
  84. 1.5.6.1Bug FixFeb 14, 2020
    Changelog · Fixed some problems when placing blocks causing errors, because of missing checks of CustomItems.
    272 downloads
  85. 1.5.6.0Bug Fixes | v1.5.6.0Feb 10, 2020
    Changelog · Fixed equipping items in creative cause them to drop and duplicate when inventory is closed · Added missing carved pumpkin to equipable items
    397 downloads
  86. 1.5.5.0Bug Fixes | v1.5.5.0Feb 9, 2020
    Changelog · Fixed the consumption of unstackable items for 1.13.2 - 1.14.x causing recipes in Customcrafting to break.
    293 downloads
  87. 1.5.4.0Bug Fixes | v1.5.4.0Feb 6, 2020
    Changelog · Fixed elytra not being able to be equipped. · Minor improvements
    328 downloads
  88. 1.5.3.0Bug Fixes | v1.5.3.0Feb 5, 2020
    · Fixed that players were able to equip the armor in the wrong armor slots e.g. boots as a helmet.
    268 downloads
  89. 1.5.2.0Improvements, Bug Fixes & Particle System | v1.5.2.0Feb 4, 2020
    · Added tag to CustomItems to make them equipable on armor slots. · Implemented experimental custom particle system. · Create custom particle effects via JSON configs. · Use JavaScript to further customize the particle effects · JavaScript is executed with the help of Rhino by Mozilla check it out here · CustomItem blocks no longer drop when broken in creative mode. · Added more default replacements for items like Honey bottle, potions, soup, etc. · Fixed items with durability cost not checking if the item needs to break · Fixed custom replacement not being removed when the item is set to Air or null · Fixed problem with click actions printing the code into the chat when it's invalid. It now displays an error only for the player that clicked on it.
    266 downloads
  90. 1.5.0.2Bug Fixes | v1.5.0.2Jan 6, 2020
    Changelog · Fixed custom durability not correctly converting to the new format. · Fixed the method to open Books not working on the latest spigot builds, because of changes to the book meta.
    1362 downloads
  91. 1.5.0.1Bug Fixes | v1.5.0.1Jan 5, 2020
    Changelog · Changed some classes that interfered with the recent Java versions.
    229 downloads
  92. 1.5.0.0WolfyUtilities 1.5.0.0Jan 2, 2020
    WolfyUtilities 1.5.0.0 This update adds many new features and fixes a lot of bugs. The biggest change is that the CustomItem management from CustomCrafting is migrated into WolfyUtilities, to further improve compatibility across multiple plugins. This update is required for the latest CustomCrafting 1.5.0.0 update!​ Changelog​ · Added CustomItems to WolfyUtilities, which allows other plugins to use them too. · CustomItems can now be placed down without loosing their MetaData when broken. · Added the ability to add CustomData to CustomItems that is going to be saved. · Added CustomItemBreakEvent and CustomItemPlaceEvent · Added GuiCloseEvent · Added support for Json Serialization and Deserialization. Register custom TypeAdapter to WolfyUtilites GsonUtil onLoad. · Added first custom TypeAdapter for the Location object. · Added Item categories containing the corrresponding materials based on Minecraft's creative menu categories. They are loaded out of the Server libraries on startup. · Added new ItemStack serialization that saves items in NMS json text rather than encrypted in base64. · Added new Custom Durability option to Custom Items which is compatible with 1.14+ · Added CustomCache implementation for GuiHandler to allow you to create your own cache and save values directly into the GuiHandler cache. · Improved the trimming algorithm for shapes and ingredients · CustomDurability is now compatible with mending · Rewrote the JsonConfiguration to make it compatible with UTF-8 and custom TypeAdapter. · Fixed some bugs occuring on Minecraft 1.13 servers ​ ​
    437 downloads
  93. 1.4.0.2Fixed Custom DurabilitySep 23, 2019
    · Fixed the bug where items with custom durability didn't break and instead the durability got negative.
    3697 downloads
  94. 1.4.0.1Bug FixSep 8, 2019
    Fixed dragging items across inventories is being blocked erverywhere.
    1073 downloads
  95. 1.4.0.0Rewritten GUI management & new UtilsSep 8, 2019
    · Rewritten the whole GUI sytem. It now uses buttons to more easily manage GUIs. · Added ItemBuilder class (still WIP) · Added Inventory Utils and randomCollection for creating probability lists with weight. · Fixed bugs with configs. This update breaks all the older versions of plugins using WolfyUtilities! So only use it if the plugin is updated to this new WU version!
    269 downloads

Similar projects

Plugin →