Zyvera TicTacToe
# ⚔ Zyvera-TicTacToe
### Classic TicTacToe as a fully GUI-based Lobby Minigame.





**by Thomas U. & Zyvera-Systems**
—
## Overview
Zyvera-TicTacToe adds a complete TicTacToe minigame to your Minecraft server — fully inventory-based, with automatic matchmaking, direct challenges, persistent ranked stats, and crafting table binding. No dependencies, no setup hassle. Just drop and play.
—
## Features
### 🎮 Game Modes
– **Queue (Ranked)** — Join the matchmaking queue and get paired automatically. Wins, losses, draws, streaks — everything is tracked.
– **Challenge (Unranked)** — Challenge any online player directly. No stats, just fun.
– **Workbench Binding** — Bind TicTacToe to crafting tables in your world. Right-click toggles the queue (1s cooldown).
### 🖥️ GUI System
– **Compact 3×3 Board** — Clean layout in a 36-slot inventory
– **Real Player Heads** — Actual Minecraft skins displayed via SkullMeta
– **Win Highlight** — Winning line turns green at the end
– **Main Menu** — Queue, stats, and leaderboard in one place
– **Stats GUI** — Wins, losses, draws, winrate, total moves, streaks
– **Top 10 Leaderboard** — Gold, silver, bronze for the best players
### ⏱️ Timeout System
– **No moves placed + 120s idle** → Game gets cancelled (no stats affected)
– **Ranked + moves placed + 120s idle** → Inactive player loses automatically
– **Challenge (Unranked)** → Timeout has no effect
### 🔮 Holograms
Bound crafting tables display a floating hologram above them:
> **TicTacToe**
> [Click Me]
—
## Commands
| Command | Description | Permission |
|———|————-|————|
| `/ttt` | Open main menu | `zyvera.ttt.use` |
| `/ttt play` | Join the queue | `zyvera.ttt.use` |
| `/ttt leave` | Leave the queue | `zyvera.ttt.use` |
| `/ttt challenge ` | Challenge a player | `zyvera.ttt.use` |
| `/ttt accept` | Accept a challenge | `zyvera.ttt.use` |
| `/ttt deny` | Deny a challenge | `zyvera.ttt.use` |
| `/ttt stats [name]` | View stats (GUI) | `zyvera.ttt.use` |
| `/ttt top` | Top players (GUI) | `zyvera.ttt.use` |
| `/ttt quit` | Leave active game | `zyvera.ttt.use` |
| `/ttt bind` | Bind a crafting table | `zyvera.ttt.bind` |
| `/ttt unbind` | Unbind a crafting table | `zyvera.ttt.bind` |
| `/ttt reload` | Reload config | `zyvera.ttt.admin` |
**Alias:** `/tictactoe`
—
## Permissions
| Permission | Description | Default |
|———–|————-|———|
| `zyvera.ttt.use` | Basic TicTacToe access | everyone |
| `zyvera.ttt.bind` | Bind/unbind workbenches | OP |
| `zyvera.ttt.stats.others` | View other players’ stats | everyone |
| `zyvera.ttt.admin` | Admin commands (reload) | OP |
—
## Compatibility
| Platform | Supported |
|———-|———–|
| Bukkit | ✅ 1.13+ |
| Spigot | ✅ 1.13+ |
| Paper | ✅ 1.13+ |
| Purpur | ✅ 1.13+ |
| Folia | ✅ Regionized Scheduler |
– **Java:** 8+
– **Dependencies:** None
– Material fallbacks ensure compatibility across all versions (e.g. `RED_CONCRETE` → `STAINED_CLAY` on legacy)
– Folia support is fully reflection-based — no compile-time dependency
—
## Configuration
Everything is customizable — messages, colors, materials, timeouts, and hologram text.
“`yaml
prefix: “&8[&6&lTTT&8] ”
game:
turn-timeout: 120
challenge-timeout: 60
workbench-cooldown: 1000
gui:
symbol-x-material: RED_CONCRETE
symbol-o-material: BLUE_CONCRETE
hologram:
line1: “&6&lTicTacToe”
line2: “&8[&aKlick Mich&8]”
offset-y: 1.5
“`
—
## Installation
1. Drop the JAR into your `plugins/` folder
2. Start or restart the server
3. Config generates automatically
4. Done — `/ttt` and play!
—
**Made with ❤️ by Thomas U. & Zyvera-Systems**
⭐ *Enjoying TicTacToe? Leave a review!*
ZyloLotto
# ZyloLotto – GUI-Based Lottery System for Minecraft 1.21
**Note:** This version supports **multiple languages**. Currently, **German (`de_DE`)** and **English (`en_US`)** are available.
Set your preferred language in `config.yml`. Additional languages will be added in future updates.
ZyloLotto brings a complete, easy-to-use lottery system to your server.
Players can buy tickets, watch live drawings, and enjoy massive winnings.
Everything is fully GUI-based – no complicated commands required.
—
## Features
### Ticket System
– Players buy tickets directly through a GUI – each ticket is a randomly generated 5-digit code.
– All tickets are saved automatically and increase the jackpot.
### Jackpot & Economy System
– Fully Vault-compatible, including automatic payout handling.
– The jackpot grows with every ticket purchased or via optional autofill.
### Animated Drawing
– Winning numbers are displayed through a multi-stage animation with sound effects.
### Intelligent Winner Detection
– Automatically detects 2 to 5 correct numbers in the correct positions.
– Winnings are distributed based on configurable percentage values.
### Drawing & Winner History
– Clean GUIs show past draws, winners, dates, and payout amounts.
– All data is stored permanently.
### Player Ticket Overview
– Players can browse their tickets in a paginated GUI.
– Admins can view or delete tickets directly.
### Admin Menu
– Complete lottery management through a dedicated admin menu.
– Change jackpot, ticket price, delete winners or draws, modify autofill, enable/disable rollback, and more.
### Automatic Drawing
– Optional auto-draw that starts a drawing at regular intervals.
– Interval can be set live via chat.
### Test Drawing
– Admins can run a test draw with any 5-digit number.
– Perfect for testing or events.
### SQLite Database
– No setup required – `lotto.db` is created automatically.
– The plugin handles saving tickets, drawings, winners, and jackpot values on its own.
—
## Commands
| Command | Description |
|——————|———————————————-|
| `/lotto` | Opens the main lottery GUI |
| `/lottodraw` | Starts a regular lottery drawing |
| `/lottotest <12345>` | Starts a test drawing with fixed numbers |
—
## LuckPerms Permissions
| Permission | Description | Default |
|———————|—————————————————————|———|
| `zylolotto.admin` | Access to the full admin menu and all admin functions | `op` |
| `zylolotto.draw` | Allows executing the official lottery draw (`/lottodraw`) | `op` |
| `zylolotto.test` | Allows executing test drawings (`/lottotest`) | `op` |
| *(no permission)* | Opens the lottery menu via `/lotto` | `everyone` |
—
## Required Plugins
– **Vault (1.7.3)** – For economy integration
*(SpigotMC: Vault Plugin)*
– **LuckPerms** – For permissions management
*(Modrinth: LuckPerms)*
ZStaffChatPro Bridge (Addon)
# ZStaffChatPro Bridge
Server-side addon for [ZStaffChatPro](https://modrinth.com/plugin/zstaffchatpro) that connects your Spigot/Paper/Folia backends to the proxy.
## What it does
– **Vanish Sync** — Syncs PremiumVanish/SuperVanish status to BungeeCord/Velocity so vanished players are hidden from /stafflist across the network
– **AFK Detection** — Sends player movement data (throttled to 30s per player) to the proxy for accurate AFK tracking
– **Activity Bridging** — Enables proxy-side features like in-game activity log and /staffafk to work with real player data
## Setup
1. Install ZStaffChatPro on your BungeeCord/Velocity proxy
2. Install this Bridge addon on each Spigot/Paper/Folia backend
3. No configuration needed — it connects automatically via plugin messaging
## Requirements
– ZStaffChatPro on the proxy (BungeeCord or Velocity)
– Spigot, Paper, or Folia 1.16+
– Optional: PremiumVanish or SuperVanish for vanish sync
ZSpawn
**Command Description Permission**
**/spawn**
**/setspawn**
**/zsetspawn**
**/zshelp**
**ZSpawn** is a Minecraft plugin designed to manage player spawn locations. It provides commands to teleport to spawn, set or update the spawn point, and view a help menu. Features include **countdown teleportation with movement cancellation**, ActionBar messages, sound effects, and automatic teleport on first join or respawn
zQuests
[](https://minestrator.com/a/GROUPEZ)
**Attention, this is a free version of zQuests, you can use it but you must buy the paid version to get help!**
—
# **Features**
## ✅ 30 quest types
* **[BLOCK_BREAK](https://zquests.groupez.dev/configurations/quests#block_break)**
* **[BLOCK_PLACE](https://zquests.groupez.dev/configurations/quests#block_place)**
* **[ENTITY_KILL](https://zquests.groupez.dev/configurations/quests#entity_kill)**
* **[FARMING](https://zquests.groupez.dev/configurations/quests#farming)**
* **[FISHING](https://zquests.groupez.dev/configurations/quests#fishing)**
* **[TAME](https://zquests.groupez.dev/configurations/quests#tame)**
* **[ENCHANT](https://zquests.groupez.dev/configurations/quests#enchant)**
* **[BREW](https://zquests.groupez.dev/configurations/quests#brew)**
* **[SMELT](https://zquests.groupez.dev/configurations/quests#smelt)**
* **[CRAFT](https://zquests.groupez.dev/configurations/quests#craft)**
* **[VOTE](https://zquests.groupez.dev/configurations/quests#vote)**
* **[SELL](https://zquests.groupez.dev/configurations/quests#sell)** *(requires [zShop](https://www.spigotmc.org/resources/zshop-advanced-shop-plugin.74073/))*
* **[PURCHASE](https://zquests.groupez.dev/configurations/quests#purchase)** *(requires [zShop](https://www.spigotmc.org/resources/zshop-advanced-shop-plugin.74073/))*
* **[ENTITY_DAMAGE](https://zquests.groupez.dev/configurations/quests#entity_damage)**
* **[EXPERIENCE_GAIN](https://zquests.groupez.dev/configurations/quests#experience_gain)**
* **[HATCHING](https://zquests.groupez.dev/configurations/quests#hatching)**
* **[ITEM_CONSUME](https://zquests.groupez.dev/configurations/quests#item_consume)**
* **[ITEM_BREAK](https://zquests.groupez.dev/configurations/quests#item_break)**
* **[ITEM_MENDING](https://zquests.groupez.dev/configurations/quests#item_mending)**
* **[RESURRECT](https://zquests.groupez.dev/configurations/quests#resurrect)**
* **[JOB_LEVEL](https://zquests.groupez.dev/configurations/quests#job_level)** *(requires [zJobs](https://zjobs.groupez.dev/))*
* **[JOB_PRESTIGE](https://zquests.groupez.dev/configurations/quests#job_prestige)** *(requires [zJobs](https://zjobs.groupez.dev/))*
* **[SMITHING](https://zquests.groupez.dev/configurations/quests#smithing)**
* **[ISLAND](https://zquests.groupez.dev/configurations/quests#island)** *(requires [SuperiorSkyBlock](https://www.spigotmc.org/resources/87411/))*
* **[COMMAND](https://zquests.groupez.dev/configurations/quests#command)**
* **[CUBOID](https://zquests.groupez.dev/configurations/quests#cuboid)**
* **[CUSTOM](https://zquests.groupez.dev/configurations/quests#custom)**
* **[INVENTORY_OPEN](https://zquests.groupez.dev/configurations/quests#inventory_open)**
* **[INVENTORY_CONTENT](https://zquests.groupez.dev/configurations/quests#inventory_content)**
* **[SHEAR](https://zquests.groupez.dev/configurations/quests#shear)**
* **[LOOK_AT_BLOCK](https://zquests.groupez.dev/configurations/quests#look_at_block)**
* **[LOOK_AT_ENTITY](https://zquests.groupez.dev/configurations/quests#look_at_entity)**
—
## ✅ Integrations & extras
* **Holograms support** *(via [zEssentials](https://www.spigotmc.org/resources/zessentials-best-essentials-cmi-sunlight-alternative.118014/))*
* **Scoreboard support** *(via zEssentials)*
* **WayPoints support (1.21.8+)** *(via zEssentials)*
* **Toast messages**
* **Endless customization** – every detail is configurable
* **Optimized inventories** powered by [zMenu](https://www.spigotmc.org/resources/zmenu-ultra-complete-menu-plugin.110402/)
* **Texture-pack–friendly inventories**
* **16+ powerful [placeholders](https://zquests.groupez.dev/configurations/placeholders)**
* **Favorites & display options for players**
* **Fully configurable rewards**
* **100% open source**
* **Try before you buy** via our [Discord](http://discord.groupez.dev/)
* **Complete [documentation](https://zquests.groupez.dev/)**
* **Powerful API** to create custom quests
* **Dozens of admin & player [commands](https://zquests.groupez.dev/configurations/commands-and-permissions)**
—
# **How to install zQuests**
## Requirements
* **Java**: 21+
* **Minecraft**: 1.20.4 → 1.21.8+
* **Server software**: Spigot, Paper, Folia (and Paper forks)
* **Required plugin**: [zMenu](https://www.spigotmc.org/resources/zmenu-ultra-complete-menu-plugin.110402/)
* **Optional**: [PlaceholderAPI](https://www.spigotmc.org/resources/placeholderapi.6245/) (Folia-compatible version available)
> ⚠️ Modded server software is **not supported**.
## Installation steps
1. Download **zQuests** and required plugins
2. Place the `.jar` files in the `plugins/` folder
3. Start or restart the server
4. Configure the plugin
5. Restart again – **zQuests is ready!**
—
# **Example**
This showcase demonstrates a full **zQuests** configuration with a custom texture pack.
* First video: the beginning of the **[FairySky](https://www.fairysky.fr/)** tutorial
* Second video: custom inventories powered by **zQuests + zMenu**
FairySky is a **Skyblock 1.21.8** server, fully developed and configured by myself, featuring most of my plugins.
ZPython
# 🐍 ZPython
**ZPython** is a combination of a **Minecraft plugin** (Paper/Spigot 1.20.1) and a **web panel** for managing Python projects on your Minecraft server.
🧩 The plugin handles **starting and stopping scripts**.
🌐 The panel provides **easy management of projects, files, logs, and access controls**.
—
[](https://zpython.zdev.website/)
[](https://discord.gg/53HpgxpzrX)
—
## ✨ Key Features of the Plugin
– 🚀 **Start and stop projects**
Launch Python scripts from the web panel with unified logic.
– ⌨️ **Management commands:**
/zpython projects — list projects
/zpython create — create a project
/zpython run — start a project
/zpython stop — stop the current project
/zpython status [] — get project status
– 🌍 **Localization:** RU/EN (set in `config.yml`)
– ⚡ **Server optimization:** the `optimizeMode` disables unnecessary game features and can restrict player access.
– 🤫 **Silent synchronization:** update files and projects without cluttering the console.
– 🛠 **Compatibility:** Paper 1.20.1
—
## 🖥 Web Panel Features
– 📦 **Project management**
Create/delete, upload files, configure dependencies, start/stop projects.
– 📊 **Real-time status**
– 🔑 **Discord authorization**
– 🌐 **Bilingual panel:** RU/EN + translated tooltips.
—
## 💡 Why use ZPython?
– ⚙ **Fast deployment of Python projects**.
– 💤 **Minimal load** and “silent” mode.
– 🌏 **Multilingual support**.
ZPvPToggle
# ZPvPToggle
A lightweight Minecraft plugin that allows players to toggle their PvP status on and off. Players can only engage in PvP when both parties have PvP enabled.



## Features
– **Toggle PvP**: Players can enable or disable their PvP status
– **Visual Indicators**: Customizable particle rings show which players have PvP enabled
– **Cooldowns:** Configurable cooldown for toggling PvP after a player enters PvP combat.
– **Custom Indicators:** Players can choose their own indicators. Access to indicators is permission-based.
– **Admin Controls**: Staff can toggle PvP for other players
– **Fully Customizable**: All messages and particle effects can be configured
– **Folia Support**: Works with Folia server software
– **Permissions-Based**: Granular permission system for different commands
## Commands
| Command | Description | Permission |
|———|————-|————|
| `/pvp` | Toggle your PvP status | zpvptoggle.user |
| `/pvp toggle` | Toggle your PvP status | zpvptoggle.user |
| `/pvp on` | Enable your PvP status | zpvptoggle.user |
| `/pvp off` | Disable your PvP status | zpvptoggle.user |
| `/pvp hide` | Hide PvP particle indicators | zpvptoggle.user |
| `/pvp show` | Show PvP particle indicators | zpvptoggle.user |
| `/pvp indicator ` | Change your PvP indicator | zpvptoggle.indicator. |
| `/pvp help` | Display the help message | zpvptoggle.user |
| `/pvp reload` | Reload plugin configuration | zpvptoggle.admin |
| `/pvp ` | Toggle PvP for another player | zpvptoggle.admin |
| `/pvp bypass ` | Toggle PvP Bypass status for you or another player | zpvptoggle.admin |
## Permissions
| Permission | Description | Default |
|————|————-|———|
| `zpvptoggle.user` | Allows players to toggle their own PvP status | true |
| `zpvptoggle.indicator.` | Give access to specific indicators. | multiple |
| `zpvptoggle.admin` | Allows staff to toggle PvP status for other players | op |
## Configuration
### config.yml
“`yaml
# Whether to disable PvP when a player dies
disable-pvp-on-death: true
# Whether to show a warning message when a player first toggles PvP
warning-message-enabled: true
# Whether to apply pvp-toggle protections to pets of players too
protect-pets: true
# Duration of the cooldown for players toggling pvp or since their last pvp interaction
pvp-cooldown: 10.0
particle-indicator:
# Interval in ticks to show the ring of particles. 20 ticks = 1 second.
interval-ticks: 60
# Maximum distance (in blocks) at which players can see PvP indicators.
max-view-distance: 32
# The default indicator to use (must match one of the keys in the indicators section)
default-indicator: default
# Define multiple particle ring indicators
indicators:
# Default ring – red circle around feet
default:
type: REDSTONE
points: 32
random-particle-positions: false
radius: 0.8
y-offset: 0.1
interval: 5
random-offset-vertical: 0.0
random-offset-horizontal: 0.0
speed: 0.01
color: RED
dust-size: 1.0
“`
## Compatibility
– Paper 1.21+
– Folia-compatible
– Java 21+
## Dependencies
– [MCKotlin](https://modrinth.com/plugin/mckotlin)
## Installation
1. Download the latest version of ZPvPToggle from [Modrinth](https://modrinth.com/plugin/zpvptoggle/versions).
2. Download MCKotlin from [Modrinth](https://modrinth.com/plugin/mckotlin)
3. Place the downloaded `.jar` files into your server’s `plugins/` folder.
4. Restart your server.
5. Configure the plugin to your liking by editing the `.yml` files in the `plugins/ZPvPtoggle/` folder.
Zones
# Zones
This plugin allows server administrators and players to create and manage protected regions within their Minecraft
world. It provides a flexible system for defining areas, setting permissions, and controlling interactions within those
areas.
## Features
* **Region Creation:** Create regions using in-game selection or manual coordinates.
* **Sub-Regions:** Create sub-regions within existing regions for more granular control.
* **Permission Management:** Set detailed permissions for players within regions, controlling actions like breaking,
placing, interacting, and more.
* **Member Management:** Add and remove members from regions with specific permissions.
* **Region Overlap Control:** Configure whether regions can overlap.
* **Bypass Permissions:** Allow specific players to bypass region restrictions.
* **Configuration:** Customize messages and region settings through configuration files.
* **Beacon Visualization:** Visualize selected regions using temporary beacons.
## Commands
The plugin provides the following commands:
* `/zone create`: Creates a new region using the currently selected locations.
* Usage: `/zone create`
* Requires two locations to be selected using left and right click, starts selection if not present.
* Prevents creation if the new region would overlap an existing region, unless the `zones.create.overlap`
permission is set.
* `/zone subcreate`: Creates a new sub-region within an existing region using the currently selected
locations.
* Usage: `/zone subcreate [regionKey]`
* `regionKey` is optional, if not provided, the region at the player’s location will be used.
* Requires two locations to be selected using left and right click, starts selection if not present.
* Player needs to be considered an admin in the region, or have the `zones.subcreate.other` permission
* `/zone delete`: Deletes an existing region.
* Usage: `/zone delete `
* Requires the `regionKey` of the region to be deleted.
* Player needs to be the owner of the region, or have the `zones.delete.other` permission
* `/zone expand`: Expands an existing region by a specified amount.
* Usage: `/zone expand [overlap]`
* Player needs to be an admin of the region, or have the `zones.expand.other` permission
* If `overlap` is set to `true` and the player has the `zones.expand.overlap` permission,
* the region will be expanded even if it overlaps with other regions.
* `/zone info`: Displays information about a region.
* Usage: `/zone info [regionKey]`
* If `regionKey` is not provided, the region at the player’s location will be used.
* To show region members, the player needs to be an admin of the region, or have the `zones.info.other` permission
* `/zone list`: Lists all regions the player is a member of.
* Usage: `/zone list`
* Only shows regions the player is a member of, unless the player has the `zones.list.other` permission
* `/zone cancel`: Cancels the current region selection.
* Usage: `/zone cancel`
* `/zone set`: Sets a permission for a member of a region.
* Usage: `/zone set `
* `` is the key of the region.
* `` who to set the permission for.
* e.g., `Player1` – to create or modify a group, use `+group-GROUPNAME`, where GROUPNAME can be any name.
* `` is the permission to set (e.g., `role`, `break`, `place`, `interact`).
* `` is the value to set for the permission (
* e.g., `owner`, `true`, `false`, `*`, `!*`, `GRASS_BLOCK`, `!GRASS_BLOCK`).
* `/zone rename`: Renames a region.
* Usage: `/zone rename `
* `` is the key of the region, `` is the new name of the region.
* Player needs to be an admin of the region, or have the `zones.rename.other` permission
* `/zone select`: Selects a region.
* Usage: `/zone select [regionKey]`
* If `regionKey` is not provided, the region at the player’s location will be used.
* Visually highlights the region in the world using particles.
* Player needs to be a member of the region, or have the `zones.select.other` permission
* `/zone mode`: Changes the selection mode.
* Usage: `/zone mode `
* `` is the new mode to set the player to.
* e.g., `3d` for 3D selection mode, `2d` for 2D selection mode.
* `/zone save`: Manually saves all regions to file.
* Usage: `/zone save`
* Admin only, requires the `zones.save` permission (not given by default)
* `/zone load`: Manually loads all regions from file.
* Usage: `/zone load`
* Admin only, requires the `zones.load` permission (not given by default)
* `/zone import`: Imports regions from another plugin.
* Usage: `/zone import `
* Currently only supports WorldGuard.
* Admin only, requires the `zones.import` permission (not given by default)
## Usage
### Creating a Region
1. Use the `/zone create` command to start the creation process.
2. Use left-click on a block to set the first corner of the region. A green beacon will appear.
3. Use right-click on a block to set the second corner of the region. A red beacon will appear.
4. Use the `/zone create` command to create the region.
### Creating a Sub-Region
1. Use the `/zone subcreate` command to start the creation process.
2. Select the two corners of the sub-region as described above.
3. Use the `/zone subcreate` command to create the sub-region within the region you are standing in or
use `/zone subcreate ` to create a sub-region within the specified region.
### Setting Permissions
1. Use the `/zone set ` command to set permissions for a member of a region.
* Example: `/zone set Player1 break true` allows “Player1” to break blocks in the specified region.
* Example: `/zone set Player2 break GRASS_BLOCK` allows “Player2” to break only `GRASS_BLOCK` blocks
in the specified region.
* Example: `/zone set Player3 interact !OAK_DOOR` denies “Player3” to interact with `OAK_DOOR`in
the specified region.
* Example: `/zone set Player4 place *` allows “Player4” to place all blocks in the specified region.
* Example: `/zone set Player5 break !*` denies “Player5” to break all blocks in the specified region.
* Groups:
* To assign a group, set the value of the permission `group` to the group name.
* e.g.: Create a group and assign permission: `/zone set +group-some-group-name break true`
* e.g. `/zone set ExamplePlayer group some-group-name`
* ExamplePlayer now inherits the permission `break` from the group `some-group-name`
### Viewing Region Information
1. Use the `/zone info` command to view information about the region you are standing in.
2. Use the `/zone info ` command to view information about a specific region.
## Integrations
### WorldGuard
Zones supports importing WorldGuard regions via the `/zone import WorldGuard` command. To use this feature,
you must have WorldGuard installed and enabled. Zones will automatically import all Cuboid regions, including
their members.
### WorldEdit
WorldEdit can only be used to modify blocks in a region if the executing player would be allowed to manually
modify the region.
### PlaceholderAPI
Zones provides multiple placeholders for use with the PlaceholderAPI plugin, displaying region information for the
region the player is standing in. It currently supports the following placeholders:
* `%zones_get_name%`
* `%zones_get_key%`
* `%zones_get_members%`
* `%zones_get_owner%`
* `%zones_get_min%`
* `%zones_get_min_x%`
* `%zones_get_min_y%`
* `%zones_get_min_z%`
* `%zones_get_max%`
* `%zones_get_max_x%`
* `%zones_get_max_y%`
* `%zones_get_max_z%`
* `%zones_is_member%`
* `%zones_can_place_hand%`
* `%zones_can_break_target%`
* `%zones_can__%`
## Design Choices
* **YAML Configuration:** The plugin uses YAML files for configuration and storage, making it easy to read and modify.
Additional storage options are planned for future releases.
* **Permission System:** The permission system is designed to be flexible and granular, allowing for fine-grained
control over player interactions.
* **Event-Driven:** The plugin uses Bukkit’s event system to handle player interactions, making it efficient and
responsive.
* **Caching:** The plugin uses a caching system to improve performance when checking permissions.
## Contributing
Contributions to the plugin are welcome! If you have any ideas for new features, bug fixes, or improvements, please feel
free to submit a pull request or open an issue.
## License
This plugin is distributed under the MIT License.
ZoneRental
# ZoneRental – Complete WorldGuard Region Rental System
**A comprehensive Minecraft plugin for managing rental regions with clickable signs, multi-world support, and complete lifecycle automation.**



## What is ZoneRental?
ZoneRental is a feature-rich rental management plugin that allows players to rent WorldGuard regions through clickable signs. The plugin handles the complete rental lifecycle including automatic expiration, block restoration, item storage, and economy integration.
Perfect for servers with player shops, market stalls, or any rentable spaces where you need automatic management and restoration.
## Why Download This?
– **Zero Manual Management** – Everything is automated from rental to expiration
– **WorldEdit Restoration** – Regions automatically restore to original state
– **Item Safety** – All items from containers are saved and retrievable
– **Multi-World Support** – Works across overworld, nether, end, and custom worlds
– **Flexible Configuration** – Per-region pricing, durations, and settings
– **Economy Integration** – Full Vault support with any economy plugin
– **Member System** – Allow friends to access your rented regions
– **Extension System** – Players can extend rentals with configurable limits
– **Complete Refund Tracking** – Full transaction history for all refunds
– **EzChestShop Integration** – Automatic shop removal on expiration
## Essential Information Before Downloading
### Requirements
**Required Dependencies:**
– Vault (economy API)
– WorldGuard 7.0.14+ (region management)
– WorldEdit 7.3.16+ (block restoration)
– Any economy plugin (EssentialsX, CMI, etc.)
**Optional Dependencies:**
– LuckPerms (advanced permissions)
– EzChestShop (automatic shop removal)
### Compatibility
– **Server Software:** Paper, Spigot, or any Paper-based fork
– **Minecraft Version:** 1.21+
– **Java Version:** Java 21 required (OpenJDK recommended)
### Installation Steps
1. Install required dependencies (Vault, WorldGuard, WorldEdit, Economy plugin)
2. Download ZoneRental JAR file
3. Place in `plugins/` folder
4. Restart server (configuration files will be auto-generated)
5. Configure `config.yml` to your preferences
6. Create WorldGuard regions: `/rg define `
7. Place signs and create rental signs: `/zrcreatesign `
## Core Features
### Rental Management
– **Clickable Signs** – Right-click to rent, shift-click to extend
– **Multi-World Support** – Same region names work independently across worlds
– **Automatic Expiration** – Regions automatically expire and restore
– **Extension System** – Players can extend rentals up to configured limits
– **Member Management** – Add/remove members to share rented regions
– **Teleportation** – Players can teleport to their rented regions
### Economy & Pricing
– **Vault Integration** – Works with any economy plugin
– **Per-Region Pricing** – Set custom prices for specific regions
– **Extension Pricing** – Configurable extension costs
– **Permission-Based Discounts** – VIP pricing through permissions
– **Full Refund System** – Admin resets provide 100% refunds
– **Extension Refunds** – Optional refunds when duration is reset
### Block Restoration
– **WorldEdit Integration** – Captures and restores block states
– **Entity Restoration** – Optionally restore entities (mobs, armor stands)
– **Biome Restoration** – Optionally restore biome data
– **Auto-Cleanup** – Configurable automatic schematic deletion
– **World-Aware** – Restoration happens in the correct world
### Item Storage
– **Container Scanning** – Automatically saves items from all containers
– **Player Retrieval** – `/zrretrieve` command to get stored items
– **Notification System** – Players notified when items are stored
– **Auto-Cleanup** – Items removed after retrieval
### Admin Tools
– **Command-Based Config** – All per-region settings via `/zroverride` commands
– **Region Groups** – Group regions for mass configuration changes
– **Duration Management** – Add, remove, set, or reset rental time
– **Auto-Verification** – Startup verification of region configurations
– **Refund History** – Complete transaction tracking per rental
– **Sign Protection** – Signs and support blocks are protected from breaking
### Integration Features
– **EzChestShop** – Automatic chest shop removal on expiration
– **WorldGuard** – Automatic member management
– **LuckPerms** – Full permission system integration
– **Notification System** – Configurable expiration warnings
## User Commands
– `/zr help` – Show help menu
– `/zrinfo ` – View rental information
– `/zrlist [player]` – List active rentals
– `/zrextend ` – Extend a rental
– `/zrretrieve` – Get stored items from expired rentals
– `/zrmember add/remove ` – Manage members
– `/zrmembers ` – List members of rented region
– `/zrtp ` – Teleport to rented region
## Admin Commands
– `/zrcreatesign ` – Create rental sign
– `/zrreload` – Reload configuration
– `/zrreset ` – Reset rental with full refund
– `/zrduration [time]` – Modify duration
– `/zroverride ` – Per-region settings
– `/zrgroup ` – Manage region groups
– `/zrremove ` – Remove rental setup completely
– `/zrrefundhistory ` – View refund transaction history
– `/zrverify` – Verify region configurations
## Permissions
**User Permissions (default: true):**
– `ZoneRental.rent` – Rent regions
– `ZoneRental.extend` – Extend rentals
– `ZoneRental.retrieve` – Retrieve stored items
– `ZoneRental.info` – View rental info
– `ZoneRental.list` – List your rentals
– `ZoneRental.member` – Manage members
– `ZoneRental.members` – View members
– `ZoneRental.tp` – Teleport to rentals
**Admin Permissions (default: op):**
– `ZoneRental.admin.*` – All admin permissions
– `ZoneRental.admin.reload` – Reload plugin
– `ZoneRental.admin.createsign` – Create rental signs
– `ZoneRental.admin.reset` – Reset rentals
– `ZoneRental.admin.duration` – Modify durations
– `ZoneRental.admin.override` – Per-region settings
– `ZoneRental.admin.remove` – Remove rental setup
– `ZoneRental.admin.refundhistory` – View refund history
– `ZoneRental.admin.verify` – Verify configurations
– `ZoneRental.admin.bypass` – Bypass restrictions
– `ZoneRental.admin.breaksign` – Break rental signs
– `ZoneRental.admin.list.others` – List others’ rentals
– `ZoneRental.admin.group` – Manage region groups
## Configuration Files
The plugin creates six configuration files:
1. **config.yml** – Main configuration (economy, durations, messages)
2. **regions.yml** – Per-region overrides (managed via commands)
3. **groups.yml** – Region group definitions
4. **signs.yml** – Sign locations and support blocks
5. **storage.yml** – Item storage from expired rentals
6. **rentals.yml** – Active rental data (runtime)
Plus a `schematics/` folder for WorldEdit region snapshots.
## Quick Start Guide
1. **Install dependencies** (Vault, WorldGuard, WorldEdit, Economy plugin)
2. **Restart server** to generate configs
3. **Configure settings** in `config.yml`
4. **Create a WorldGuard region:** `/rg define shop1`
5. **Place a sign** where you want players to interact
6. **Create rental sign:** `/zrcreatesign shop1`
7. **Optionally customize:** `/zroverride price shop1 500.0`
8. **Done!** Players can now right-click the sign to rent
## Support & Documentation
– **Full Documentation:** See repository README.md
– **Build Instructions:** See BUILDING.md
– **Version History:** See CHANGELOG.md
## Source Code & License
– **Repository:** https://github.com/Warstorm548/ZoneRental
– **License:** AGPL-3.0 (open source)
## Development Note
– this plugin was Developed utilizing claude code, ai-assisted Development
– The plugin is tested manually in a test server environment to ensure minimal bugs and reduce issues that may be persent in the code.
ZonePractice Pro Duels
# ZonePractice Pro The Ultimate Minecraft PvP Duels Plugin
Elevate your Minecraft server with ZonePractice Pro, the most advanced practice / duels and matchmaking plugin available. Designed for high performance and total customizability, ZonePractice Pro delivers a next generation PvP experience. Players can unlock custom armor trims, shield patterns, and unique death effects. Navigate lobbies in style using wind charges, tridents, elytras, or spears.
## Key Features of ZonePractice Pro
### ⚔️ Modern PvP Ladder Types
+ TnT Sumo, MLGRush, Crystals, Cart, BedWars, Bridges, SkyWars, Fireball Fight, BattleRush
+ Sumo, Boxing, PearlFight, Spleef, Build, Basic
### ⚡ Asynchronous Arena System
+ High performance asynchronous arena copying for build modes
+ Highly configurable basic and build type arenas
+ Player hiding functionality for non build arenas
+ Unlimited concurrent matches in non build arenas
### 🛡️ Custom Player Kit System
+ Create custom kits inspired by popular PvP servers
+ Up to 4 personalized kits per player with extra items
+ Intuitive GUI for players to create and manage loadouts
### 🏆 Automated Server Events
+ Host engaging events easily including Brackets, Juggernaut, LMS, OITC, Splegg, Sumo, and TNT Tag
### ⚖️ Advanced Matchmaking and Queues
+ Unranked queues based on player divisions
+ Ranked queues powered by accurate ELO matchmaking
+ Clean two category page queue selector GUI
### 📊 Player Statistics and Divisions
+ Track Experience points, Wins, Kills, Deaths, and Streaks
+ Set minimum division requirements for ranked play
+ Beautiful GUI and Hologram leaderboards
### 👥 FFA and Party System
+ Dedicated FFA arenas featuring multiple ladders and independent stats
+ Robust Party System offering 6 distinct settings
+ Support for FFA, Split party games, and Party versus Party matches
### ⚙️ Premium Match Features
+ Fully customizable sidebar and below name health bars for every ladder
+ Exp bar cooldowns for Ender pearls, Arrows, and Golden Apples
+ Built in staff mode and advanced spectator mode
+ Duel rematch items, Nametag systems, and Round selectors
### 🚀 Unmatched Performance and Customizability
+ Incredible server performance with simple installation
+ Complete customizability utilizing version controlled config files
+ Comprehensive setup GUI for server administrators
+ Developer API included for custom integrations
+ MiniMessage chat formatting and PlaceholderAPI support
+ Custom death messages and sound effects
+ Seamless multiple world support to run alongside other minigames
+ Custom inventory items for a unique feel
## Important Installation Requirement
To guarantee high performance packet handling, ZonePractice Pro requires the PacketEvents API. Please ensure you install the latest release on your server before starting.
[Download PacketEvents Here](https://github.com/retrooper/packetevents/releases)
## Community and Support
[Join our Discord Community](https://discord.gg/xZy34zbnxe)
## Plugin Screenshots