Core API that provides an API and Utils for plugins based on Spigot.
This is the Spigot implementation of WolfyUtils. For more info see WolfyScript/WolfyUtilities
APIs & Utils
- API is plugin dependent, which means there is one instance of the API per plugin.
- Utils are plugin independent. They can be used everywhere.
- Registry is bound to the core of WolfyUtilities, but can be accessed from anywhere.
APIs
- Inventory - Functional API to create in-game GUIs.
- Language - Load JSON based language files and support multiple languages for GUIs, messages, etc.
- Chat - Send translatable messages, text click event callbacks, and more.
- (3.16.1+) KyoriPowered/adventure implementation.
- Config - Simple config utilities.
- NMS - Type specific RecipeIterator, and some Block and Inventory Utils.
- CustomItems - Create custom items with settings like custom fuel, durability, actions, etc.
Registry
The Registry is the base of all custom content in WolfyUtilities and the plugins that build on it. It allows you to register types & objects under unique namespaced keys. That not only allows the plugin to register things like CustomItems, etc., but it can be extended by other plugins too.
Utils:
- NamespacedKey - Unique key for all registrable content.
- JSON - Various Jackson utils that simplify de-/serialization
- HOCON support for a more human friendly config option.
- Custom de-/serializer for Bukkit objects
- Easy de-/serialization from Registry values
- Object (See @OptionalKeyReference)
- Type to object (See @KeyedTypeIdResolver & @KeyedTypeResolver)
- Particles - Configure custom particle effects & animations using JSON.
- RandomCollection - Weight based random collection.
- Reflection - Basic Reflection Utils.
- Player Head utils to set textures and more.
- Basic MySQL connection to run queries and updates.
- ItemBuilder to edit/create ItemStacks.
- Save player specific data.
Plugins using WolfyUtilities
CustomCrafting
CustomCrafting is heavily based on these APIs and Utils.
CustomCrafting especially makes use of the InventoryAPI to create and manage the in-game RecipeCreators.
The JSON utils are used to load/save recipes & items from/to JSON, and to allow for custom settings inside the json files.
All Versions
+ Add Version| Name | Game version | Platforms | Published | Downloads | Actions |
|---|---|---|---|---|---|
|
R
4.19.1.2
|
18h ago | 1 | |||
|
R
4.19.0.0
|
18h ago | 1 | |||
|
R
4.18.6
|
18h ago | 1 | |||
| 18h ago | 1 | ||||
| 18h ago | 1 | ||||
| 18h ago | 1 | ||||
| 18h ago | 1 | ||||
| 18h ago | 1 | ||||
| 18h ago | 1 | ||||
| 18h ago | 1 | ||||
| 18h ago | 1 | ||||
| 18h ago | 1 | ||||
| 18h ago | 1 | ||||
| 18h ago | 1 | ||||
| 18h ago | 1 | ||||
| 18h ago | 1 | ||||
| 18h ago | 1 | ||||
| 18h ago | 1 | ||||
| 18h ago | 1 | ||||
| 18h ago | 1 | ||||
| 18h ago | 1 | ||||
| 18h ago | 1 | ||||
| 18h ago | 1 | ||||
| 18h ago | 1 | ||||
| 18h ago | 1 | ||||
| 18h ago | 1 | ||||
| 18h ago | 1 | ||||
| 18h ago | 1 | ||||
| 18h ago | 1 | ||||
| 18h ago | 1 | ||||
| 18h ago | 1 |
- fix: missing itemMeta null check ([
details](https://github.com/WolfyScript/WolfyUtils-Spigot/commit/ffd24edf2776f9c86dc42e3379de09990cba1540))
## ⚙️ CI/CD
- ci: fix commit details link pointing to wrong repo ([
details](https://github.com/WolfyScript/WolfyUtils-Spigot/commit/3bc850dcc06aef2c83c92b7bd3ae03b96f8cbdcc)) - ci: force gradle 8.13 ([
details](https://github.com/WolfyScript/WolfyUtils-Spigot/commit/0c4e2db34160b0dfa622a26a96cf20a9282bc88a)) - ci: fix missing dependencies ([
details](https://github.com/WolfyScript/WolfyUtils-Spigot/commit/3b9303c2e88b562b1cb82b8a45de2fe6e8182f9a))
- feat!: deprecated CustomItem equipment settings ([
details](https://github.com/WolfyScript/dev-tools/commit/74d80bad6ac36cb2aaf904345874d7342f73e9b0)) - feat!: remove deprecated validators ([
details](https://github.com/WolfyScript/dev-tools/commit/7e4dc6dd7d7ccddaa4c0431ac6ef5218b1ab74fa)) - feat!: remove deprecated functional recipe generator ([
details](https://github.com/WolfyScript/dev-tools/commit/b5f048adfa4882a9d3ad7965735c2163f54aae8a)) - feat!: remove old reflection and nms utils ([
details](https://github.com/WolfyScript/dev-tools/commit/5169fd3018bd55dbf4707e91cf058842554259c3)) - refactor!: remove mc version checks and backwards compatibility ([
details](https://github.com/WolfyScript/dev-tools/commit/1c8e582e4728b4c2607a993346c793992859c73e)) - refactor!: remove more old deprecated code ([
details](https://github.com/WolfyScript/dev-tools/commit/9382deb1e8796d5f600df322643f774ce4225438)) - refactor!: remove functional recipe generator ([
details](https://github.com/WolfyScript/dev-tools/commit/e40ab65faa73f38a5d237d49ed10e7da65b1baf0)) - refactor!: remove broken custom ArmorEquipEvent ([
details](https://github.com/WolfyScript/dev-tools/commit/09ab4bd3c5487051fc53a4de9bc7a790f90f5565))
## 🧪 Tests
- test: update to 1.21.5 ([
details](https://github.com/WolfyScript/dev-tools/commit/91a8e7b085570170792c6b6b735902667de73125))
## ⚙️ CI/CD
- ci: remove misc from changelog ([
details](https://github.com/WolfyScript/dev-tools/commit/cea42c64e1295fcba05368f07b0338d4a346dd54)) - ci: create release as draft ([
details](https://github.com/WolfyScript/dev-tools/commit/63b5c49bb321518d9e841880ac62139e5b611570))
- Merge PR by @petulikan1 with Bug Fixes, 1.21.4 Support, and more in [#90](https://github.com/WolfyScript/WolfyUtils-Spigot/pull/90)
- Add first GitHub workflows to start automating the release to Modrinth
- Remove unused NMS utils, reducing the jar size
- Update to latest Oraxen API, PAPI, WorldEdit, WorldGuard, etc.
- Fix build issues preventing project from building in GitHub workflows
## Warning! Versions Before 1.21.4 - Not Supported Anymore!
From this update onward, WolfyUtils and CustomCrafting will only support the latest Minecraft version, including drops (minor versions)!
This will allow me to keep up with the new Minecraft update schedule, and concentrate on new features/bug fixes instead of compatibility.
LTS versions, with backported bug fixes, for the previous Minecraft version will be available to Premium. More info about it soon.
## New Contributors
- @petulikan1 made their first contribution in [#90](https://github.com/WolfyScript/WolfyUtils-Spigot/pull/90)
- Full Changelog**: [
v4.17-beta.7...v4.18.5](https://github.com/WolfyScript/WolfyUtils-Spigot/compare/v4.17-beta.7...v4.18.5)
- [#89](https://github.com/WolfyScript/WolfyUtils-Spigot/pull/89) - Fix Wind Charges causing destructive explosions
- [
b789607c](https://github.com/WolfyScript/WolfyUtils-Spigot/commit/b789607c9a375be838a408331d11a9a51fa39327) - Fix DependencyResolver trying to resolve null field values - [
a2cc2459](https://github.com/WolfyScript/WolfyUtils-Spigot/commit/a2cc24590f883b8fd1631aa7ce6b838690711956) - Bump Item-NBT-API to 2.13.2 - [
88877df0](https://github.com/WolfyScript/WolfyUtils-Spigot/commit/88877df011cf35b83822577dbed751d4e8de1871) - Add missing Bukkit NamespacedKey deserializer - No longer print NMS warning on 1.21+
- NMS implementations are no longer available on 1.21+
- Full Changelog**: [
v4.17-beta.6...v4.17-beta.7](https://github.com/WolfyScript/WolfyUtils-Spigot/compare/v4.17-beta.6...v4.17-beta.7)
Due to the removal of the Paper Plugin (and no reintroduction in the near future), this may cause load issues on Paper servers... again!
### If you encounter any issue **enable the ["legacy" plugin loading](https://docs.papermc.io/paper/reference/paper-plugins#cyclic-plugin-loading)!**
- I won't fix the loading issues caused by the new Paper loading system! If the Paper Plugins are experimental, then so is their loading system!**
## Changelog
- [#87](https://github.com/WolfyScript/WolfyUtils-Spigot/pull/87) - Paper Plugin Removal
- [
f42dc1e4](https://github.com/WolfyScript/WolfyUtils-Spigot/commit/f42dc1e43d6aa75e8aeebeba983d02510b786e22) - Update Item-NBT-API to 2.13.1
- Full Changelog**: [
v4.17-beta.5...v4.17-beta.6](https://github.com/WolfyScript/WolfyUtils-Spigot/compare/v4.17-beta.5...v4.17-beta.6)
- [#84](https://github.com/WolfyScript/WolfyUtils-Spigot/pull/84) - Potential NMSInventoryUtils Error Fix
- [
f60ef7e9](https://github.com/WolfyScript/WolfyUtils-Spigot/commit/f60ef7e9a96eb5146b379839a72a82be67bde287) - Fix RecipeIterator error when not available for the MC version - [#85](https://github.com/WolfyScript/WolfyUtils-Spigot/pull/85) - Configurable Stack Identifier Priorities
- Full Changelog**: [
v4.17-beta.4...v4.17-beta.5](https://github.com/WolfyScript/WolfyUtils-Spigot/compare/v4.17-beta.4...v4.17-beta.5)
> *It is recommended to wait for a more stable version, or to try it out on a **separate test server**!*
> #### **1.21 support was just added so issues are very likely!**
- Removed more NMS Utils and deprecated more of them for future removal
- The goal is to go NMS-Less in the near future, and rely on NMS via third-parties like Item-NBT-API only!
- CustomCrafting will need a few more updates to remove its reliance on NMS
- Improved the NMS Fallback to further support versions without NMS implementations
- I **tested 1.21 a bit** and **so far no issues**.
- 1.21 still uses the fallback with reflections
- Fix Player Head Textures in latest mc versions
- Fix MMOItemsStackIdentifier type serialization
- Don't upgrade Particle Enum on pre-1.20.5
- Fix invalid NMS package for pre-1.20
- Fix Persistent Storage Error on chunk unloading
- Full Changelog**: [
v4.17-beta.3...v4.17-beta.4](https://github.com/WolfyScript/WolfyUtils-Spigot/compare/v4.17-beta.3...v4.17-beta.4)
- [#83](https://github.com/WolfyScript/WolfyUtils-Spigot/pull/83) - Paper 1.20.5+ Mojang-Mapping Support
- [
1fc7732c](https://github.com/WolfyScript/WolfyUtils-Spigot/commit/1fc7732cf7deb59215efb59a289aa3c68af96c2f) - Fix ExecutableItemsStackIdentifier dependency - [
0ec49110](https://github.com/WolfyScript/WolfyUtils-Spigot/commit/0ec4911030bc8c2a76730f379c9e30e7bc6e58a1) - Fix missing ItemFlag HIDE_POTION_EFFECTS on 1.20.5+ - CustomCrafting will get the same fix soon
- [
02efaa36](https://github.com/WolfyScript/WolfyUtils-Spigot/commit/02efaa364d4b42db7aa3254cd475816de9f43be1) - Ignore eco wrapped custom items - [
e8f2497a](https://github.com/WolfyScript/WolfyUtils-Spigot/commit/e8f2497ab7c8f509d514e739952f6906d86a1c60) - Change StackIdentifier parser priorities - This should hopefully make it more convenient for most. Let me know if you'd like to suggest a priority change.
- 2000 - MMOItems
- 1900 - Oraxen
- 1800 - ExecutableItems
- 1700 - ExecutableBlocks
- 1600 - MythicMobs
- 1500 - ItemsAdder
- 600 - Magic
- 100 - eco
- 0 - Denizen
- Full Changelog**: [
v4.17-beta.2...v4.17-beta.3](https://github.com/WolfyScript/WolfyUtils-Spigot/compare/v4.17-beta.2...v4.17-beta.3)
- [#82](https://github.com/WolfyScript/WolfyUtils-Spigot/pull/82) - Add Dependency Management for Plugin Integrations
- Note**: CustomCrafting needs an update for these changes to apply. It'll be available soon on the CustomCrafting beta branch.
- [
54ef052c]([https://github.com/WolfyScript/WolfyUtils-Spigot/commit/54ef052ca8466817baffee7e147974a346ca9365](https://github.com/WolfyScript/WolfyUtils-Spigot/commit/54ef052ca8466817baffee7e147974a346ca9365)) - Fix compatibility with old Particle enums - [
dae5b6f7]([https://github.com/WolfyScript/WolfyUtils-Spigot/commit/dae5b6f74b81f411da7f0e7786cd2ca9048b7ae7](https://github.com/WolfyScript/WolfyUtils-Spigot/commit/dae5b6f74b81f411da7f0e7786cd2ca9048b7ae7)) - Throw error when KeyedTypeIdResolver cannot find a registered value for a given key - [
d9ab4dea]([https://github.com/WolfyScript/WolfyUtils-Spigot/commit/d9ab4deaa9d9f2b711e5277077bd054b80cfd95e](https://github.com/WolfyScript/WolfyUtils-Spigot/commit/d9ab4deaa9d9f2b711e5277077bd054b80cfd95e)) - Move PluginIntegration implementations into the proper package
- Full Changelog**: [
v4.17-beta.1...v4.17-beta.2](https://github.com/WolfyScript/WolfyUtils-Spigot/compare/v4.17-beta.1...v4.17-beta.2)
- [#80](https://github.com/WolfyScript/WolfyUtils-Spigot/pull/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](https://github.com/WolfyScript/WolfyUtils-Spigot/pull/81) - Improved StackReference Serialization
- Prioritise MMOItems StackIdentifier Parser over MythicMobs Parser (WolfyScript/CustomCrafting#362)
- [#78](https://github.com/WolfyScript/WolfyUtils-Spigot/pull/78) - Migrate Publishing Repo To Artifactory
- Full Changelog**: [
v4.16.15.1...v4.17-beta.1](https://github.com/WolfyScript/WolfyUtils-Spigot/compare/v4.16.15.1...v4.17-beta.1)
- [#76](https://github.com/WolfyScript/WolfyUtils-Spigot/pull/76) — Fix StackReference Parser Swapping
- Fixes the ItemEditor GUI in CustomCrafting unable to change the item plugin source
- [#77](https://github.com/WolfyScript/WolfyUtils-Spigot/pull/77) — Fix CustomItem Replacement & Durability Cost
- Full Changelog**: [
v4.16.15...v4.16.15.1](https://github.com/WolfyScript/WolfyUtils-Spigot/compare/v4.16.15...v4.16.15.1)
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 ⇾ StackReferenceFrom 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 ⇾ StackIdentifierAPIReferences 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.<br>
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.
## Changes
- [#66](https://github.com/WolfyScript/WolfyUtils-Spigot/pull/66) - New StackReference System to replace old APIReferences
- [#72](https://github.com/WolfyScript/WolfyUtils-Spigot/pull/72) — Replace NMS GUI Generation with GUIInventoryHolder
- Fixes GUIs not opening on Paper servers
- [#74](https://github.com/WolfyScript/WolfyUtils-Spigot/pull/74) - Update paper-plugin.yml & Add missing plugin dependencies
- Fixes ExecutableBlocks and ExecutableItems NoClassDefFoundError
- [#68](https://github.com/WolfyScript/WolfyUtils-Spigot/pull/68) - Support for 1.20.3
- [
2110329f](https://github.com/WolfyScript/WolfyUtils-Spigot/commit/2110329f3593069f85be68004b8cc9bc0ad51416) - Change nmsutil 1_20_R3 to use 1.20.4 mappings
- [
9434dee](https://github.com/WolfyScript/WolfyUtils-Spigot/commit/9434deeebcf4072ab6943035924c1416ac2e6454) — Only handle ArmorEquipEvent when CustomItems are involved - [
121cf29](https://github.com/WolfyScript/WolfyUtils-Spigot/commit/121cf292e533b723f8f34a52764cdcc85c3513dc) — Add debug agent to docker container - [
771fb79](https://github.com/WolfyScript/WolfyUtils-Spigot/commit/771fb7978eace2c4c2d4270c16bc81572d48bf6d) — Fix Smithing Recipes in 1.20.2 - [
9af73f77](https://github.com/WolfyScript/WolfyUtils-Spigot/commit/9af73f77a9fcd9c0c561396f65067f782eb66327) — Fix NPE in MythicMobsStackIdentifier for stacks without NBT tag - [
2fb08e7d](https://github.com/WolfyScript/WolfyUtils-Spigot/commit/2fb08e7dd89c525489a49c558f9c50418be9aa2c) - Remove 1_16_R3 nmsutils (1.16.5 is no longer supported!) - [
aa6a119b](https://github.com/WolfyScript/WolfyUtils-Spigot/commit/aa6a119ba5cf7f8e0ca45719af1aa56dd848cdd7) - Bump nbtapi-api & nbtapi-data to 2.12.2
- Full Changelog**: [
v4.16.14.1...v4.16.15](https://github.com/WolfyScript/WolfyUtils-Spigot/compare/v4.16.14.1...v4.16.15)
- [#75](https://github.com/WolfyScript/WolfyUtils-Spigot/pull/75) — Fix Oraxen StackIdentifier Editing Original Item Amount
- Full Changelog**: [
v4.16.15-rc.1...v4.16.15-rc.2](https://github.com/WolfyScript/WolfyUtils-Spigot/compare/v4.16.15-rc.1...v4.16.15-rc.2)
- [#74](https://github.com/WolfyScript/WolfyUtils-Spigot/pull/74) - Update paper-plugin.yml & Add missing plugin dependencies
- Fixes ExecutableBlocks and ExecutableItems NoClassDefFoundError
- Full Changelog**: [
v4.16.15-beta.12...v4.16.15-rc.1](https://github.com/WolfyScript/WolfyUtils-Spigot/compare/v4.16.15-beta.12...v4.16.15-rc.1)
- [
4772b4a5]([https://github.com/WolfyScript/WolfyUtils-Spigot/commit/4772b4a522ca41ce90c254c9a286c34d2b2a880b](https://github.com/WolfyScript/WolfyUtils-Spigot/commit/4772b4a522ca41ce90c254c9a286c34d2b2a880b)) — Keep backwards compatibility withGuiUpdate - [
705b1360]([https://github.com/WolfyScript/WolfyUtils-Spigot/commit/705b13603b4463c4b50d1a20ddbac30e97d480c4](https://github.com/WolfyScript/WolfyUtils-Spigot/commit/705b13603b4463c4b50d1a20ddbac30e97d480c4)) — Fix MythicMobsmatchesIgnoreCountnot working
- Full Changelog**: [
v4.16.15-beta.11...v4.16.15-beta.12](https://github.com/WolfyScript/WolfyUtils-Spigot/compare/v4.16.15-beta.11...v4.16.15-beta.12)
- [
ca6365aa](https://github.com/WolfyScript/WolfyUtils-Spigot/commit/ca6365aa8a04ef227ac7a6e96fae65dd663e301d) — BukkitStackIdentifier needs to check the item type - Fixes various recipe issues in CustomCrafting (like invalid recipe results)
- Full Changelog**: [
v4.16.15-beta.10...v4.16.15-beta.11](https://github.com/WolfyScript/WolfyUtils-Spigot/compare/v4.16.15-beta.10...v4.16.15-beta.11)
- [#72](https://github.com/WolfyScript/WolfyUtils-Spigot/pull/72) — Replace NMS GUI Generation with GUIInventoryHolder
- Fixes GUIs not opening on Paper servers
- [
80a53458](https://github.com/WolfyScript/WolfyUtils-Spigot/commit/80a53458ed869249960d3d9e076f85b9de75ed32) — Fix count check in StackIdentifier & Add StackIdentifier#matchesIgnoreCount - [
bf9a55d7](https://github.com/WolfyScript/WolfyUtils-Spigot/commit/bf9a55d79569afa44898fb0ab6580c10c9e06dd6) — Fix MythicMobsStackIdentifier overriding other stack identifiers
- Full Changelog**: [
v4.16.15-beta.9...v4.16.15-beta.10](https://github.com/WolfyScript/WolfyUtils-Spigot/compare/v4.16.15-beta.9...v4.16.15-beta.10)
dc982d43- Fix StackReference 'weight' property deserialization.
- Full Changelog**: [
v4.16.15-beta.8...v4.16.15-beta.9](https://github.com/WolfyScript/WolfyUtils-Spigot/compare/v4.16.15-beta.8...v4.16.15-beta.9)
- [
91b925a8](https://github.com/WolfyScript/WolfyUtils-Spigot/commit/91b925a8395004d1990f85cb106ad485ae42843d) - The ExecutableBlocksStackIdentifier should actually be registered to work...
- Full Changelog**: [
v4.16.15-beta.7...v4.16.15-beta.8](https://github.com/WolfyScript/WolfyUtils-Spigot/compare/v4.16.15-beta.7...v4.16.15-beta.8)
- [#70](https://github.com/WolfyScript/WolfyUtils-Spigot/pull/70) — Fix StackReference Not Updating & Backwards Compatibility
- [#71](https://github.com/WolfyScript/WolfyUtils-Spigot/pull/71) — Fix StackReference
matchesPerformance Issues
- Full Changelog**: [
v4.16.15-beta.6...v4.16.15-beta.7](https://github.com/WolfyScript/WolfyUtils-Spigot/compare/v4.16.15-beta.6...v4.16.15-beta.7)
StackReferences Identifier is Nullable now when the specified parser is not available (e.g. when a third-party plugin isn't available), or the parser fails to parse the item.
To reflect those changes, the
StackReference#identifier() returns an Optional instead, and you may fall back to StackReference#originalStack when it is not present.## Changelog
- [#69](https://github.com/WolfyScript/WolfyUtils-Spigot/pull/69) — Optional StackReference Identifiers
- [
4da9339c](https://github.com/WolfyScript/WolfyUtils-Spigot/commit/4da9339c95d15adc08f454a0269fc9713b9ffac2) — Fix NullPointerEexceptions in StackIdentifiers & prevent possible NPEs.
- EcoStackIdentifier
- ExecutableBlocksStackIdentifier
- ExecutableItemsStackIdentifier
- ItemsAdderStackIdentifier
- MMOItemsStackIdentifier
- MythicMobsStackIdentifier
- FancyBagsStackIdentifier
- Full Changelog**: [
v4.16.15-beta.5...v4.16.15-beta.6](https://github.com/WolfyScript/WolfyUtils-Spigot/compare/v4.16.15-beta.5...v4.16.15-beta.6)
You are only affected when using the Beta of CustomCrafting!
Soon there will be another CustomCrafting Beta that'll be compatible again.
### Changelog
- [
aa6a119b](https://github.com/WolfyScript/WolfyUtils-Spigot/commit/aa6a119ba5cf7f8e0ca45719af1aa56dd848cdd7) - Bump nbtapi-api & nbtapi-data to 2.12.2 - [
2110329f](https://github.com/WolfyScript/WolfyUtils-Spigot/commit/2110329f3593069f85be68004b8cc9bc0ad51416) - Change nmsutil 1_20_R3 to use 1.20.4 mappings
- [
4ff8ccef](https://github.com/WolfyScript/WolfyUtils-Spigot/commit/4ff8ccef5e2735209b648045a8a80142678b0557) - Add itemKey getter to WolfyUtilsStackIdentifier - [
b7620c07](https://github.com/WolfyScript/WolfyUtils-Spigot/commit/b7620c0707f519ed672cfca99caf811640309572) - Add itemKey getter to BukkitStackIdentifier - [
db035c32](https://github.com/WolfyScript/WolfyUtils-Spigot/commit/db035c329545ea9f2492a4a6de4e6ecbef3ffc3b) - Change RegistryStackIdentifierParsers#parseFrom to return an Optional
- Full Changelog**: [
v4.16.15-beta.4...v4.16.15-beta.5](https://github.com/WolfyScript/WolfyUtils-Spigot/compare/v4.16.15-beta.4...v4.16.15-beta.5)
- [#68](https://github.com/WolfyScript/WolfyUtils-Spigot/pull/68) - Support for 1.20.3
- [
2fb08e7d](https://github.com/WolfyScript/WolfyUtils-Spigot/commit/2fb08e7dd89c525489a49c558f9c50418be9aa2c) - Remove 1_16_R3 nmsutils (1.16.5 is no longer supported!) - [
e69deee1](https://github.com/WolfyScript/WolfyUtils-Spigot/commit/e69deee13e1ee64b560dff62dadbc6381380ebe4) - Fix ItemStack matching in BukkitStackIdentifier - [
15b07299](https://github.com/WolfyScript/WolfyUtils-Spigot/commit/15b07299b7a01b95ea0faede66b1531c705266e8) - Fix StackIdentifier#shrink not consuming stacks of count 1 - [
33bdaaa0](https://github.com/WolfyScript/WolfyUtils-Spigot/commit/33bdaaa03c7f58605f773a394e4eb87b975e902a) - Fix BukkitStackIdentifier stack amount to be always 1 - [
7e34264d](https://github.com/WolfyScript/WolfyUtils-Spigot/commit/7e34264d5c7ea5c46da2dc29bcc92fb8285a8a6d) - StackReference no longer fails to parse
- Full Changelog**: [
v4.16.15-beta.3...v4.16.15-beta.4](https://github.com/WolfyScript/WolfyUtils-Spigot/compare/v4.16.15-beta.3...v4.16.15-beta.4)
This is a beta update! It is highly advised to **not use it in production or on public servers!**
It is mostly untested and still very much in development, so **breaking changes may occur**.
Additionally, it **may cause game breaking issues** (disappearing items, item duplication, config corruption).
There are only a few recommended scenarios where you may use it:
- Your server is private, and you do not mind game breaking issues (like loosing items, item duplication, config corruption)
- You want to try the latest version on a test server, help test it and report issue before release.
Either way, you should **make a backup of your server/data before installing this beta**.
### Make sure to update to the latest WolfyUtils Beta version! [Download here!](https://github.com/WolfyScript/WolfyUtils-Spigot/releases/tag/v4.16.15-beta.3)
## Known Issues
- The ItemCreator in CustomCrafting is broken and does not apply changes made to an item stack
## Changelog
- [#67](https://github.com/WolfyScript/WolfyUtils-Spigot/pull/67) — Fix amount handling in StackIdentifiers & References
- 9434dee — Only handle ArmorEquipEvent when CustomItems are involved
- 121cf29 — Add debug agent to docker container
- 771fb79 — Fix Smithing Recipes in 1.20.2
- 9af73f77 — Fix NPE in MythicMobsStackIdentifier for stacks without NBT tag
- cdf73be1 — Add missing DenizenStackIdentifier
- Full Changelog**: [
v4.16.15-beta.2...v4.16.15-beta.3](https://github.com/WolfyScript/WolfyUtils-Spigot/compare/v4.16.15-beta.2...v4.16.15-beta.3)
This is a beta update! It is highly advised to **not use it in production or on public servers!**
It is mostly untested and still very much in development, so **breaking changes may occur**.
Additionally, it **may cause game breaking issues** (disappearing items, item duplication, config corruption).
There are only a few recommended scenarios where you may use it:
- Your server is private, and you do not mind game breaking issues (like loosing items, item duplication, config corruption)
- You want to try the latest version on a test server, help test it and report issue before release.
Either way, you should **make a backup of your server/data before installing this beta**.
## Changelog
- Fix StackReference#swapParser not applying new identifier
- Full Changelog**: [
v4.16.15-beta.1...v4.16.15-beta.2](https://github.com/WolfyScript/WolfyUtils-Spigot/compare/v4.16.15-beta.1...v4.16.15-beta.2)
This is a beta update! It is highly advised to **not use it in production or on public servers!**
It is mostly untested and still very much in development, so **breaking changes may occur**.
Additionally, it **may cause game breaking issues** (disappearing items, item duplication, config corruption).
There are only a few recommended scenarios where you may use it:
- Your server is private, and you do not mind game breaking issues (like loosing items, item duplication, config corruption)
- You want to try the latest version on a test server, help test it and report issue before release.
Either way, you should **make a backup of your server/data before installing this beta**.
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 ⇾ StackReferenceFrom 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 ⇾ StackIdentifierAPIReferences 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.<br>
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](https://github.com/WolfyScript/WolfyUtils-Spigot/pull/66) - New StackReference System to replace old APIReferences
- Full Changelog**: [
v4.16.14.1...v4.16.15-beta.1](https://github.com/WolfyScript/WolfyUtils-Spigot/compare/v4.16.14.1...v4.16.15-beta.1)
### Changelog
- [#65](https://github.com/WolfyScript/WolfyUtils-Spigot/pull/65) - Fix error when crafting in 1.20.2
- Full Changelog**: [
v4.16.14.0...v4.16.14.1](https://github.com/WolfyScript/WolfyUtils-Spigot/compare/v4.16.14.0...v4.16.14.1)
- Add 1.20.2 nms module
- Update Item-NBT-API to 2.12.0
- [#64](https://github.com/WolfyScript/WolfyUtils-Spigot/pull/64) - Migration to the Gradle build system
- Full Changelog**: [
v4.16.13.0...v4.16.14.0](https://github.com/WolfyScript/WolfyUtils-Spigot/compare/v4.16.13.0...v4.16.14.0)
## Changelog
- Fix CustomItem#create to work in multithreaded scenarios
- [#62](https://github.com/WolfyScript/WolfyUtils-Spigot/pull/62) - Improved Plugin Integrations
- [#63](https://github.com/WolfyScript/WolfyUtils-Spigot/pull/63) - Add Object Validator
- Full Changelog**: [
v4.16.12.1...v4.16.13.0](https://github.com/WolfyScript/WolfyUtils-Spigot/compare/v4.16.12.1...v4.16.13.0)
<br/>
### Changelog
- [#59](https://github.com/WolfyScript/WolfyUtils-Spigot/pull/59) - Update to latest SCore API (ExecutableBlocks & ExecutableItems)
- [#60](https://github.com/WolfyScript/WolfyUtils-Spigot/pull/60) - Include Fastutil library in plugin.yml
- Full Changelog**: [
v4.16.12.0...v4.16.12.1](https://github.com/WolfyScript/WolfyUtils-Spigot/compare/v4.16.12.0...v4.16.12.1)
