NysxlUtilities - Core Server Utilities
A foundational utility plugin providing essential backend features for Spigot servers.
A foundational utility plugin providing essential backend features for Spigot servers.
⚠️ Developer API Disclaimer ⚠️
NysxlUtilities is primarily designed for internal use by Nysxl plugins (like PPLootChests).
It is not intended as a stable public API for other developers.
Internal code structure and features change frequently and without notice, which will break external plugins depending on it.
NysxlUtilities is primarily designed for internal use by Nysxl plugins (like PPLootChests).
It is not intended as a stable public API for other developers.
Internal code structure and features change frequently and without notice, which will break external plugins depending on it.
Note: While primarily an internal library, this plugin also includes some standalone admin commands.
✨ Core Features ✨
- Multi-Currency Economy: Manage multiple custom currencies via the EconomyManager. Features include setting/getting balances, deposits, withdrawals, transfers, and tax management. Includes Vault integration check and MySQL database support for persistence. (Requires Vault)
- ⚡ Advanced Command Framework: Utilizes powerful internal command builders (DynamicCommandBuilder, FluentCommandBuilder) for creating complex, validated commands with tab-completion support.
- ️ Dynamic GUI Manager: A backend system (DynamicInventoryHolder & related listeners) for creating interactive, custom inventory GUIs with simplified event handling for developers.
- Advanced Text Formatting: Includes utilities (TextUtils, ClickableTextHandler) for creating richly formatted text components with custom colors (including hex like #RRGGBB), styles, hover text, and clickable actions (run command, suggest command, open URL). Features automatic text centering approximation.
- PlaceholderAPI Support (Optional): Registers custom placeholders using its own PlaceholderRegistry if PlaceholderAPI is installed. Example provided: %nysxlserverutils_announcement%.
- ⚙️ Dynamic Configuration Manager: Simplifies loading, saving, and accessing custom configuration files (DynamicConfigManager).
- ✋ Item Interaction Manager: Provides a system (ItemInteractionManager) for defining and handling custom actions when players interact with specific items.
- Language/Localization System: Includes a basic Language class framework for managing translatable messages.
- ️ MySQL Integration Helper: Simple utility class (MySQL) for connecting to and interacting with MySQL databases from config, including automatic table initialization.
- Admin Commands: Includes commands like /currency, /tax, and /ServerAnnouncement for direct server management (permissions required).
- Player Chat Input Getter: Utility (PlayerChatGetter) potentially used for retrieving direct player input via chat.
Dependencies
- Vault: (Required) This plugin requires Vault for all economy features (/currency, /tax) to function correctly. You must have Vault installed along with a compatible economy plugin (e.g., EssentialsX Economy).
- PlaceholderAPI: (Optional) Required only if you want to use the custom placeholders (like %nysxlserverutils_announcement%) provided by this plugin.
Included Commands (Detailed)
- /tax - Base Permission: (Assumed myapp.tax.use from code)
Description: Manages tax rates and viewing collected tax per currency. (Requires Vault)- set rate <currency> <percentage>
Description: Sets the tax percentage (0.0 to 1.0) for a currency.
Permission: NysxlServerUtils.tax.admin - set <currency> <amount>
Description: Manually sets the total amount recorded as paid tax for a currency.
Permission: NysxlServerUtils.tax.admin - get rate <currency>
Description: Shows the current tax rate percentage for a currency.
Permission: Base permission (e.g., myapp.tax.use) - get <currency>
Description: Shows the total amount recorded as paid tax for a currency.
Permission: Base permission (e.g., myapp.tax.use)
- set rate <currency> <percentage>
- /currency
Description: Manages player balances and currency types. (Requires Vault)- set <currency> <player> <amount>
Description: Sets a player's balance for a specific currency.
Permission: NysxlServerUtils.currency.admin - get <currency> <player>
Description: Checks a player's balance for a specific currency.
Permission: NysxlServerUtils.currency.admin - add <currency> <player> <amount>
Description: Adds an amount to a player's balance.
Permission: NysxlServerUtils.currency.admin - subtract <currency> <player> <amount>
Description: Subtracts an amount from a player's balance (checks funds).
Permission: NysxlServerUtils.currency.admin - pay <currency> <player> <amount>
Description: Transfers amount from your balance to another player. (Player command)
Permission: (Player must have sufficient funds; no specific node found beyond base command access) - create <currency> <aliase>
Description: Creates a new currency type.
Arguments: <currency> = New name, <aliase> = Symbol/short name.
Permission: NysxlServerUtils.currency.admin
- set <currency> <player> <amount>
- /ServerAnnouncement
Description: Manages the server announcement message.- set <message>
Description: Sets the announcement text (supports multiple words).
Arguments: <message> = The full announcement text.
Permission: serverutils.announcement
- set <message>
Placeholders (Requires PlaceholderAPI)
- %nysxlserverutils_announcement%: Displays the current server announcement message.
- (More placeholders may be registered depending on configuration/use)
NysxlUtilities serves as a core library, providing robust and reusable components essential for other Nysxl plugins and offering useful standalone utilities.
Quick facts
- Edition: Minecraft Java
- File type: .jar
- Minecraft versions listed: 1.20, 1.20.6, 1.21
- How to install: Install the matching mod loader (Forge, Fabric or NeoForge) for your Minecraft version. → Download the .jar. → Put it in the .minecraft/mods folder and launch that loader profile.
- Where to get it: Opens on Spigot — not every file is mirrored on our own servers.
Install steps are the general flow for this file type — How to install Minecraft Java mods & modpacks walks through it step by step.
NysxlUtilities is a free Minecraft Java mod. Compatible with Minecraft 1.20, 1.20.6, 1.21. Downloaded 435 times (via Spigot). Download it and open it directly in the game.