WolfyUtils

WolfyUtils

Plugin

Core API & Utils for Spigot based plugins. Inventory GUI, Language, JSON (Jackson), and many more utils

Server LibraryManagementUtility

24.9k downloads
25 followers
Createda year ago
Updated13 days ago

Follow Save
Host your Minecraft server on BisectHosting - get 25% off your first month with code MODRINTH.
Filter loader...
Filter versions...
Filter channels...
  • #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

  • #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

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.

Changes

  • #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
  • 2110329f - 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
  • 9af73f77 — Fix NPE in MythicMobsStackIdentifier for stacks without NBT tag
  • 2fb08e7d - Remove 1_16_R3 nmsutils (1.16.5 is no longer supported!)
  • aa6a119b - Bump nbtapi-api & nbtapi-data to 2.12.2

Full Changelog: v4.16.14.1...v4.16.15

  • #75 — Fix Oraxen StackIdentifier Editing Original Item Amount

Full Changelog: v4.16.15-rc.1...v4.16.15-rc.2

  • #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

  • 4772b4a5 — Keep backwards compatibility with GuiUpdate
  • 705b1360 — Fix MythicMobs matchesIgnoreCount not working

Full Changelog: v4.16.15-beta.11...v4.16.15-beta.12

  • ca6365aa — 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

  • #72 — Replace NMS GUI Generation with GUIInventoryHolder
    • Fixes GUIs not opening on Paper servers
  • 80a53458 — Fix count check in StackIdentifier & Add StackIdentifier#matchesIgnoreCount
  • bf9a55d7 — Fix MythicMobsStackIdentifier overriding other stack identifiers

Full Changelog: v4.16.15-beta.9...v4.16.15-beta.10

Changelog

  • dc982d43 - Fix StackReference 'weight' property deserialization.
    This fixes loading issues of older configs.

Full Changelog: v4.16.15-beta.8...v4.16.15-beta.9

Changelog

  • 91b925a8 - The ExecutableBlocksStackIdentifier should actually be registered to work...

Full Changelog: v4.16.15-beta.7...v4.16.15-beta.8

Changelog

  • #70 — Fix StackReference Not Updating & Backwards Compatibility
  • #71 — Fix StackReference matches Performance Issues

Full Changelog: v4.16.15-beta.6...v4.16.15-beta.7

StackReference Breaking Change

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 — Optional StackReference Identifiers
  • 4da9339c — Fix NullPointerEexceptions in StackIdentifiers & prevent possible NPEs. This fixes & prevents NPEs in:
    • EcoStackIdentifier
    • ExecutableBlocksStackIdentifier
    • ExecutableItemsStackIdentifier
    • ItemsAdderStackIdentifier
    • MMOItemsStackIdentifier
    • MythicMobsStackIdentifier
    • FancyBagsStackIdentifier

Full Changelog: v4.16.15-beta.5...v4.16.15-beta.6

This update includes a breaking change affecting StackReferences. You are only affected when using the Beta of CustomCrafting! Soon there will be another CustomCrafting Beta that'll be compatible again.

Changelog

  • aa6a119b - Bump nbtapi-api & nbtapi-data to 2.12.2
  • 2110329f - 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!
  • 4ff8ccef - Add itemKey getter to WolfyUtilsStackIdentifier
  • b7620c07 - Add itemKey getter to BukkitStackIdentifier
  • db035c32 - Change RegistryStackIdentifierParsers#parseFrom to return an Optional

Full Changelog: v4.16.15-beta.4...v4.16.15-beta.5

  • #68 - Support for 1.20.3
  • 2fb08e7d - Remove 1_16_R3 nmsutils (1.16.5 is no longer supported!)
  • e69deee1 - Fix ItemStack matching in BukkitStackIdentifier
  • 15b07299 - Fix StackIdentifier#shrink not consuming stacks of count 1
  • 33bdaaa0 - Fix BukkitStackIdentifier stack amount to be always 1
  • 7e34264d - StackReference no longer fails to parse

Full Changelog: v4.16.15-beta.3...v4.16.15-beta.4


!! Beta Update !!

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!

Known Issues

  • The ItemCreator in CustomCrafting is broken and does not apply changes made to an item stack

Changelog

  • #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


!! Beta Update !!

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


!! Beta Update !!

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 ⇾ 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

Full Changelog: v4.16.14.1...v4.16.15-beta.1

A quick fix for Recipes causing errors due to an invalid method mapping in 1.20.2.

Changelog

  • #65 - Fix error when crafting in 1.20.2

Full Changelog: v4.16.14.0...v4.16.14.1

Changelog

  • Add 1.20.2 nms module
  • Update Item-NBT-API to 2.12.0
  • #64 - Migration to the Gradle build system

Full Changelog: v4.16.13.0...v4.16.14.0

This update adds a few new features that will be required by the upcoming CustomCrafting 4.16.9-beta update, to support multithreaded data loading and improved data validation.

Changelog

  • Fix CustomItem#create to work in multithreaded scenarios
  • #62 - Improved Plugin Integrations
  • #63 - Add Object Validator

Full Changelog: v4.16.12.1...v4.16.13.0

External resources



Project members

WolfyScript

Owner


Technical information

License
GPL-3.0-or-later
Project ID