WolfyUtils

WolfyUtils

Plugin

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

Server LibraryManagementUtility

23.1k downloads
24 followers
Created10 months ago
Updated2 months ago

Follow Save
Host your Minecraft server on BisectHosting - get 25% off your first month with code MODRINTH.
WolfyUtilities Banner

bstats_server github_commit

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

External resources



Project members

WolfyScript

Owner


Technical information

License
GPL-3.0-or-later
Project ID