## Fully Customizable & Dynamic Items
Whether you want dynamic item names, lore, slots, damage, player head, shield color, banner pattern, potion effect, firework effect, light level, crossbow projectile… bundle inventory? You can have it all! And all are refreshed basically instantly thanks to TAB’s handling of placeholders (can be configured in its config).
You can also use TAB’s animations with the change-interval that you want to display custom data.

At this time, YARMM only supports converting menus from DeluxeMenus.
Almost everything is converted except for the meta action & requirement (will be added to ConditionalActions at some point)
To convert menus, simply run /yarmm convert DeluxeMenus (plugin not required on the server, only the folder) and everything in the `/plugins/DeluxeMenus/gui_menus` folder will be converted (regardless of whether they’re registered in DM’s config.yml or not)
# Dependencies
**This plugin depends on both TAB and ConditionalActions** (and by extension PAPI, yes I know that makes 3 dependencies, sorry XD)
TAB allows for instant refreshing of item properties (including material) as well as mennu title; ConditionalActions lets you execute actions on click depending on conditions.
You have access to both TAB & PlaceholderAPI placeholders.
YardWatch
# YardWatch (for server owners)
Implementation of [YardWatchAPI](https://github.com/YouHaveTrouble/YardWatchAPI) for common protection plugins. If any of supported plugins implements the API itself, then this plugin will stop providing its implementation to allow the
plugin to take over.
If you’re a developer looking for information how to implement YardWatchAPI in your plugin, see
[YardWatchAPI](https://github.com/YouHaveTrouble/YardWatchAPI)
## Plugin you’re using is not implementing YardWatchAPI?
Contact the plugin developer and send them [here](https://github.com/YouHaveTrouble/YardWatchAPI/blob/master/readme.md)!
You can also request a temporary implementation within this plugin [here](https://github.com/YouHaveTrouble/YardWatch/issues/new?assignees=&labels=enhancement&projects=&template=implementation-request.yml&title=%5BNEW+IMPLEMENTATION%5D%3A+).
# YardWatchAPI (for developers)
API to unify protection plugins for minecraft bukkit servers to allow easy protection queries without having to import
10 different plugin apis with separate implementations.
Current version: [](https://jitpack.io/#YouHaveTrouble/YardWatchAPI)
If you’re looking for a plugin implementing YardWatchAPI for common protection plugins, see [YardWatch plugin](https://github.com/YouHaveTrouble/YardWatch).
# Usage
### Import the api using dependency manager
In any case of usage you will need to import the API. Replace `VERSION` with current version tag. You should also adjust your `` to `provided` if you’re not implementing the api and just querying it.
#### Maven
“`xml jitpack.io https://jitpack.io
com.github.YouHaveTrouble YardWatchAPI VERSION compile
## For plugins wanting to see if something is protected
### Check if player can break a block
Example handling of block breaking check. There’s no need to depend on any plugins for this.
“`java
public boolean canBreakBlock(Player player, Block block) {
ServicesManager servicesManager = getServer().getServicesManager();
Collection> protections = servicesManager.getRegistrations(Protection.class);
for (RegisteredServiceProvider protection : protections) {
if (protection.getProvider().canBreakBlock(player, block.getState(true))) continue;
return false; // if any protection plugin disallowed breaking the block, return false
}
// If all protection plugins allowed breaking the block, return true
return true;
}
“`
## For protection plugins
### Depend on YardWatch plugin
You can optionally softdepend and check if YardWatch is present to add an optional integration.
“`yml
depend:
– “YardWatch”
“`
### Implement Protection interface
Implement all the methods required by the interface
“`java
public class YourPluginProtection implements Protection {}
“`
### Register your implementation as a service
“`java
@Override
public void onEnable() {
getServer().getServicesManager().register(
Protection.class,
new YourPluginProtection(),
this,
ServicePriority.Normal
);
}
“`
YAML API
# YAML API
YAML API is a specialized library that simplifies working with YAML configuration files in Bukkit/Spigot/Paper plugins. It provides a robust and consistent interface for loading, saving, updating, and managing YAML-based configurations, along with advanced mapping capabilities for configuration sections and configurable units.
—
## Overview
The **YAML API** package offers a set of tools designed to handle YAML configuration files efficiently. It abstracts the complexity of file I/O and reflection-based configuration parsing, allowing you to focus on using configuration data in your plugin.
Key components include:
– **YAMLFile**: A class to load, save, and update YAML configuration files.
– **ResourceUtils**: Utility methods for handling resources and file operations.
– **Configurable & ConfigurableFile**: Interfaces and classes that provide easy access to the underlying `FileConfiguration`.
– **ConfigurableUnit**: An interface representing a configuration unit, useful for handling permissions or groups in the configuration.
– **Mappable, SectionMappable, UnitMappable & HashMappable**: A set of interfaces and classes for mapping configuration sections and units into Java collections.
– **YAMLUpdater**: A class that updates YAML files by merging default values and preserving comments.
—
## Key Features
– **Unified Configuration Management**:
Provides a consistent API for reading, writing, and updating YAML configuration files.
– **Dynamic Mapping and Conversion**:
Supports mapping configuration sections to custom units and collections, making it easier to work with complex configuration structures.
– **Resource and File Utilities**:
Includes helper classes to simplify file loading, resource saving, and directory management.
– **Comment Preservation and Updates**:
YAMLUpdater handles merging of default configuration values while preserving existing comments.
– **Reflection-Based Parsing**:
Uses reflection to dynamically access configuration sections and values, ensuring compatibility across server versions.
—
## Usage Example
Below is an example demonstrating how to use the YAML API to load, update, and work with configuration files.
@Override
public void onEnable() {
try {
// Create a new configuration file located in the “config” folder
config = new ConfigurableFile(this, “config”, “settings”)
// Optionally, override methods to control updatability or other behaviors
{
@Override
public boolean isUpdatable() {
// Retrieve the “update” key from the configuration to decide if updates are allowed
return get(“update”, false);
}
};
// Save the default configuration if not present
config.saveDefaults();
// Update the configuration file (merges defaults and preserves comments)
config.update();
} catch (IOException e) {
e.printStackTrace();
}
// Assume we have a configuration section “advancements”
ConfigurationSection section = config.getConfiguration().getConfigurationSection(“advancements”);
if (section != null) {
// Create a SectionMappable from the configuration section
SectionMappable.Set sectionMap = SectionMappable.asSet(section.getValues(false));
// Process the mapped configuration as needed
getLogger().info(“Loaded advancements: ” + sectionMap);
}
}
}
“`
—
## Maven / Gradle Installation
To include YAML API to the project, add the following repository and dependency to your build configuration. Replace `${version}` with the desired version tag.
### Maven
Add the repository and dependency to your `pom.xml`:
Replace `${version}` with the appropriate module version.
—
## Conclusion
**YAML API** is a powerful library for managing YAML configurations in your Bukkit/Spigot/Paper plugins. It streamlines file operations, mapping, and updates while preserving comments and ensuring compatibility across server versions. Whether you are building simple configuration systems or working with complex, nested settings, YAML API provides the tools you need to efficiently manage your plugin’s configuration.
Happy coding!
— *CroaBeast*
yaay
YAAY (Yes, Another Addon for Yamipa) is a feature-rich addon for the Yamipa plugin that expands the image-claiming experience with a dedicated /imgui menu flow. Built for Paper and Folia servers, it provides a paginated inventory-based interface that makes browsing and claiming images easier and more intuitive for players.
### Key features
– **Paginated /imgui GUI** for browsing and claiming images
– **Visibility filtering** based on public and private path patterns
– **Claim cooldowns** to control how often players can claim images
– **Hourly limits** to help balance usage on busy servers
– **Anti-exploit protections** for safer image claim handling
– **Language support** with persistent per-player preferences
– **Public language sync API** for integration with other plugins
– **Per-file display overrides** through `display.yml`
– **Item overrides** for more flexible presentation
– **Multiple configuration files** for easy customization
### Configuration files
YAAY includes separate files for customizing:
– GUI behavior
– Claim limits
– Messages and translations
– Display settings
– Player locale options
YAAY is designed to extend Yamipa with a cleaner, more configurable, and more user-friendly image management experience.
xTPA
## 🚀 xTPA: The Definitive Teleportation Suite
The **xTPA** (Extended Teleport Ask) plugin is a next-generation teleportation management system built specifically for high-performance Minecraft servers running **Paper/Folia 1.21+**.
It moves beyond standard TPA functionality by offering an exceptionally feature-rich, optimized, and customizable experience for server administrators and players alike.
### ✨ Core Features & Technical Excellence
* **Asynchronous & Folia-Ready Performance:** Designed from the ground up to utilize modern multi-threading, ensuring zero lag even under heavy load by performing non-critical operations (I/O, cooldown checks) off the main server thread.
* **Deep Customization:** Every element—from messages (supporting MiniMessage gradients and clickables) to GUI layouts, particle effects, and sound cues—is fully configurable via modular YAML files.
* **Advanced Warmup System:** Features highly visual countdowns using Boss Bars and Action Bars, with fully configurable cancellation conditions (movement, damage, interaction), ensuring strategic and fair teleports.
* **Comprehensive Command Set:** Includes standard TPA/TPAHere, but extends to include safe, configurable Random Teleport (`/tpr`), multi-location History (`/back`), and admin utilities like `/tpsummon`.
* **Integrated Economy:** Seamlessly hooks into **Vault** and **PlaceholderAPI** to allow per-command costs, request fees, and acceptance rewards, transforming teleportation into an engaging economic feature.
* **Modern GUIs:** Provides inventory-based interfaces (`/tpagui`, `/tpalist`) for effortless request management and player selection, replacing cumbersome chat commands.
**xTPA is engineered to be the most reliable, flexible, and high-performance TPA solution available for the modern Minecraft ecosystem.**
A new plugin designed to **transfer players’ data between names or UUIDs**. I didn’t find any other plugin can handle this problem before, so I made my own one and uploaded it to here to help anyone who needs this feature for his/her server.
Transfers all vanilla player data:
– Player inventory and Ender Chest (`playerdata/`)
– Statistics (`stats/`)
– Advancements (`advancements/`) for 1.13+
## 1.3 Safe & Reliable
– Creates automatic backups before overwriting
– Kicks online players to prevent data overwrite (configurable)
– Asynchronous file operations – no server lag!
# 2 Commands and Permission Nodes
## 2.1 Commands
“`markdown
– /xtransfer – Show version info
– /xtransfer transfer – Transfer by player names
– /xtransfer transferuuid – Transfer by UUIDs
– /xtransfer list – List all player data files
– /xtransfer list – Show files for specific player
– /xtransfer reload – Reload configuration
– /xtransfer help – Show the help message
/xtf = /transfer = /xtransfer
“`
## 2.2 Permission Nodes
“`markdown
– xtransfer.manage – Allows using all XTransfer commands (default: op)
“`
# 3 Config
“`yaml
# Show logo when plugin enabled
show_logo: true
# World settings
world:
# Manual world name (only used if auto-detect is false)
name: “world”
# Automatically detect world name from server
auto-detect: true
# Transfer settings
transfer:
# Transfer statistics files
stats: true
# Transfer advancements files (1.13+)
advancements: true
# Backup settings
backup:
# Create backup of existing files before overwriting
create: true
# Suffix for backup files
suffix: “.old”
# Online player handling
# If true, kick online players before transfer
# If false, show warning but continue
kick-online-player: true
# Language settings
language: “en”
# Debug mode (enable only for troubleshooting)
debug: false
# Messages – You can customize all messages here
messages:
# English messages
en:
no-permission: “&cYou don’t have permission!”
usage-header: “&9&lX&f&lTransfer &f&lHelp”
usage-transfer: “&7/xtransfer transfer &f”
usage-transferuuid: “&7/xtransfer transferuuid &f”
usage-list: “&7/xtransfer list &f[player]”
usage-reload: “&7/xtransfer reload”
usage-help: “&7/xtransfer help”
reload-success: “&a✓ Configuration reloaded!”
transfer-start: “&eStarting async transfer…”
looking-up: “&eLooking up UUIDs for &f{old} &eand &f{new}&e…”
uuid-not-found: “&cCould not find UUID for: &f{name}”
try-uuid: “&7Try using /xtransfer transferuuid with direct UUIDs”
invalid-uuid: “&cInvalid UUID format! Use: /xtransfer transferuuid ”
uuid-example: “&7Example: 12345678-1234-1234-1234-123456789012”
source-data-missing: “&cSource player {name} ({uuid}) has no data file!”
transfer-from: “&7From: &f{name} &7({uuid})”
transfer-to: “&7To: &f{name} &7({uuid})”
transfer-file: “&7File: &f{file}”
backup-created: “&7Backed up existing file to: &f{file}”
transfer-success: “&a✓ Successfully transferred player data!”
transfer-stats: “&7✓ Transferred stats file”
transfer-advancements: “&7✓ Transferred advancements file”
transfer-error: “&cError during transfer: {error}”
folder-not-found: “&cPlayer data folder not found: {path}”
source-not-found: “&cSource file not found: {file}”
source-location: “&7Looked in: {path}”
player-online-warning: “&e⚠ Warning: Player {player} is online! Data may be overwritten when they log out.”
player-kicked: “&e✓ Player {player} has been kicked for data transfer.”
kick-message: “&cYour data is being transferred. Please rejoin in a few seconds.”
no-files: “&eNo player data files found”
list-header: “&6=== Player Data Files ({count}) ===”
list-more: “&7… and {count} more”
list-entry: “&7{name} &8- {uuid}”
list-unknown: “&8{uuid} &7(unknown)”
X-Socials is a professional and highly optimized solution for managing your server’s social networks. From 1.8 to 1.26.1, provide your players with a **Premium GUI Editor**, **Interactive Links**, **Automatic Rewards**, **Custom Cooldowns**, **Statistics**, and **Rich Text Formatting**. Runs natively on **Folia**, **Paper**, **Purpur**, and **Spigot**.
—
### 🚀 Premium Features
– **🪄 Auto-Config Updater** — Configs stay up-to-date automatically with every new version.
– **🖥️ Professional GUI Editor** — Create, edit and delete social networks from an intuitive in-game interface.
– **💬 Interactive Links** — Clickable URLs with hover tooltips via Bungee Chat API.
– **🎁 Reward System** — Console commands executed on first visit (UUID-based, one-time).
– **⏱️ Custom Cooldowns** — Per-social network cooldown configuration.
– **🔊 Custom Sounds** — Play different sounds for each social network.
– **📺 Custom Titles** — Show titles when players use social commands.
– **📊 Statistics System** — Track total and per-social network usage with placeholders.
– **🎨 Rich Text** — RGB colors, gradients, MiniMessage support.
– **🌍 Universal Compatibility** — Native support for Folia, Paper, Purpur, Spigot, and Bukkit.
– **🌐 Multi-Language** — Bundled support for ES, EN, PT, JA, RU.
– **📡 Broadcast System** — Automatic multi-line announcements.
– **🧩 PlaceholderAPI** — Native expansion with multiple placeholders.
—
### 💻 Commands
| Command | Description | Permission |
| :— | :— | :— |
| `/xs -gui` | Open the premium GUI editor | `xsocials.gui` |
| `/xs reload` | Reload configurations | `xsocials.admin` |
| `/xs list` | List all social networks | `xsocials.use` |
| `/xs update` | Check for updates | `xsocials.admin` |
| `/xs version` | Show plugin version | `xsocials.use` |
**Dynamic Social Commands** — `/discord`, `/youtube`, `/[your-network]`…
# **X-SetSpawn**
### *Manage your server’s spawn point professionally*
### 📝 **Description**
X-SetSpawn is a lightweight, feature-rich plugin designed to manage spawn points on your server. From simple global spawns to premium visual effects, economy integration, and proxy network support — all packed into one plugin. Compatible with Minecraft 1.8.8 to 26.1+.
### ✨ **Features**
– **Fireworks on arrival:** Launch a firework when a player teleports to spawn. Color and power configurable.
– **Combat & Falling checks:** Block `/spawn` while in combat or falling. Supports CombatLogX, PvPManager, DeluxeCombat.
– **Multi-database storage:** Save spawns to YAML (local), MySQL, MariaDB, H2 or MongoDB for cross-server sync.
– **Custom command aliases:** Define `/hub`, `/lobby` or any alias directly from `config.yml` — no need to edit `plugin.yml`.
– **Economy Integration (Vault):** Charge players to use `/spawn`. Money only deducted if the teleport completes.
– **First-Join Spawn:** Set a unique spawn point for newly joining players with `/setspawn firstjoin`.
– **Smart Respawn:** On death, respects the player’s Bed or Respawn Anchor before falling back to spawn.
– **Void-Teleport:** Automatically teleport players who fall below a configurable Y-level.
– **Post-Teleport Protection:** Temporary invulnerability after teleporting while chunks load.
– **Advanced Proxy Sync:** Dedicated lightweight plugins for Velocity and BungeeCord. Use `/setlobby` to sync your lobby server automatically.
– **Intelligent Proxy Teleport:** Automatically detects if a player is already on the target server and performs a local teleport.
– **Visual Countdown:** ActionBar, BossBar, Titles and particle effects during the delay — each individually toggleable.
– **Countdown sounds:** “Tic-Tac” click sounds each second during the teleport delay.
– **PlaceholderAPI:** Full PAPI support. Exposes `%xsetspawn_cooldown%`, `%xsetspawn_delay%`, `%xsetspawn_is_pending%`, `%xsetspawn_spawn_set%`.
– **Config auto-updater:** Detects outdated configs, creates a backup and rebuilds automatically.
– **100% Customizable:** 6 language files (EN, ES, JA, PT, RU, CUSTOM), per-world spawns, and full config control.
**`/spawn`**
Teleports the player to the established spawn point.
**`/setspawn [x y z] [world] [yaw pitch]`**
Sets the spawn point. Use without arguments for your location, or specify coordinates (supports `~`). Console compatible.
**`/delspawn `**
Deletes a specific named spawn point if named spawns are enabled.
**`/back`**
Teleports the player back to their last location before using a spawn command.
**`/setlobby`**
Sets the lobby coordinates for the proxy network and syncs the configuration with BungeeCord/Velocity.
**`/xss [subcommand]`**
– **`help`** – Shows the help menu.
– **`reload`** – Reloads the plugin configuration.
– **`version`** – Shows the current version info.
– **`update`** – Manually check for updates.
– **`setspawn`** – Sets the spawn point (alias for /setspawn).
– **`delspawn`** – Deletes a spawn (alias for /delspawn).
### 🛡️ **Permissions**
– **`xsetspawn.spawn`** – Use `/spawn`. *(default: everyone)*
– **`xsetspawn.setspawn`** – Use `/setspawn`. *(default: op)*
– **`xsetspawn.admin`** – Admin commands and update notifications. *(default: op)*
– **`xsetspawn.reload`** – Reload the configuration. *(default: op)*
– **`xsetspawn.update`** – Check for updates. *(default: op)*
– **`xsetspawn.bypass.cooldown`** – Skip the teleport cooldown. *(default: op)*
– **`xsetspawn.bypass.delay`** – Skip the teleport delay. *(default: op)*
– **`xsetspawn.bypass.economy`** – Teleport for free. *(default: op)*
> **Tip:** Explicitly denying a node (`-xsetspawn.spawn`) will block the player even if they are OP.
Need help? Join our [Discord](https://discord.com/invite/Yb6GsfGWmd) or report issues in the discussion section.
xSetHome
🏡 xSetHome
A modern, lightweight, and highly customizable home system for your Minecraft server.
* **Interactive GUI Menu:** Let players view and manage their homes through a clean, fully customizable `/homes` inventory. Includes built-in support for empty states and custom buttons.
* **Dynamic Custom Icons:** Players can personalize how their homes look in the menu! Simply **Right-Click** a home icon while holding a block to update its appearance.
* **Safe Teleportation:** Configure a safe teleport delay. If a player moves during the countdown, the teleportation is automatically canceled.
* **Immersive Visuals & Audio:** Enhance the player experience with highly customizable ActionBars, on-screen Titles, sound effects, and particles during teleportation.
* **100% Customizable:** Tailor every single message, prefix, and menu item. Features native support for HEX colors (e.g., `&#FAEDCB`).
* **Custom Head Support:** Use Base64 textures to decorate your menus (perfect for custom “Close Menu” buttons or specific icons).
* **PlaceholderAPI Integration:** Extract data from your players’ homes to display on scoreboards, holograms, or custom UI menus.
—
## 📝 Commands & Permissions
| Command | Description | Permission |
| :— | :— | :— |
| `/sethome ` | Saves your current location as a home. | `xsethome.use.sethome` |
| `/home ` | Teleports you to a saved home. | `xsethome.use.home` |
| `/homes` | Opens the visual homes GUI. | *None (Free for all)* |
| `/delhome ` | Deletes a saved home. | `xsethome.use.delhome` |
| `/xsethome reload` | Reloads the configuration files. | *Admin Only* |
| `/xsethome help` | Displays admin commands. | *Admin Only* |
> **Note:** The default home limit for standard players is **3** (fully adjustable in the `config.yml`).
—
## 🔗 PlaceholderAPI Variables
You can use the following placeholders in your menus, scoreboards, or chat formatting.
*(Make sure to replace `` with the exact name of the home)*:
* `%xsethome__name%` ▸ Returns the name of the home.
* `%xsethome__world%` ▸ Returns the world where it is located.
* `%xsethome__x%` ▸ X coordinate of the home.
* `%xsethome__y%` ▸ Y coordinate of the home.
* `%xsethome__z%` ▸ Z coordinate of the home.
* `%xsethome__date%` ▸ Exact date of creation.
—
## 🚀 Installation Guide
1. **Download** the latest version of `xSetHome.jar`.
2. **Move** the downloaded file into your server’s `plugins` folder.
3. *(Optional but recommended)* Install **PlaceholderAPI** to utilize the custom variables.
4. **Restart** your server to generate the configuration files.
5. **Configure** `config.yml` and `menu.yml` to your liking, then run `/xsethome reload` in-game or from the console.
6. Enjoy!
# **X-Rooms**
### *Advanced BoxPVP room management for your server*
### 📝 **Description**
X-Rooms is a powerful, all-in-one plugin for creating and managing PvP rooms (BoxPVP) on your server. Define combat zones with WorldEdit, set up custom kits, potion effects, rewards, holograms and winner destinations — all from an intuitive in-game GUI. Compatible with Minecraft 1.8.8 to 1.21.x+.
### ✨ **Features**
– **WorldEdit Integration:** Select a region with WorldEdit/FAWE and instantly create a PvP room with `/xr create`.
– **Full GUI Management:** Edit every room property (name, sounds, abilities, equipment, rewards) from a clean visual interface — no config editing needed.
– **10 Configurable Abilities:** Strength, Speed, Resistance, Haste, Regeneration, Fire Resistance, Jump Boost, Saturation, Absorption, and Fly — each with adjustable levels per room.
– **Ability Level Limits:** Set global maximum levels for each ability in `config.yml` to prevent overpowered setups.
– **Custom Equipment & Rewards:** Define kit items players receive on match start and reward items for the winner, all via GUI.
– **Automatic Inventory Management:** Player inventories are backed up and restored automatically. No items lost.
– **Combat Logging Protection:** Configurable punishment for players who disconnect during PvP — keep or delete their backup inventory.
– **Winner Teleport Location:** Set a custom destination for the match winner per room, or let them stay in the room.
– **Configurable End Delay:** A customizable delay after the match ends before players are teleported out. Players are invulnerable and locked in the room during this period.
– **PvP Countdown:** Visual countdown (Titles + Sounds) before combat begins with a configurable timer.
– **Hologram Support:** Automatic holograms showing room name, player count and time remaining. Supports DecentHolograms and HolographicDisplays.
– **Per-Room Permissions:** Enable or disable permission requirements per room. Rooms are public by default.
– **Anti-Escape System:** Players cannot walk or teleport out of a room during active PvP.
– **Barrier Material:** Configure a visible or invisible barrier material during countdowns.
– **Entry Titles & Sounds:** Custom welcome titles, subtitles and sounds when entering a room region.
– **PlaceholderAPI:** Full PAPI integration for holograms and messages. Supports both internal and global placeholders.
– **HEX Color Support:** Use `&#RRGGBB` colors in messages and titles (1.16+). Falls back gracefully on older versions.
– **Multi-Language:** 3 built-in language files (English, Spanish, French) with automatic config updater.
– **Folia Support:** Full compatibility with Folia’s regionized threading — all teleports and tasks use async-safe methods.
– **Config Auto-Updater:** Detects outdated configs and updates them automatically without losing your settings.