RegionTitles
# ๐งฉ RegionTitles
Displays customizable titles when players enter WorldGuard regions.
————————————————————————
## ๐ Description
**RegionTitles** is a lightweight plugin that shows a title on the
player’s screen when they enter specific regions.
Perfect for:
– spawn areas
– PvP zones
– dungeons
– custom locations
All messages are fully configurable via `config.yml`.
————————————————————————
## โ๏ธ Features
– ๐ Detects region enter using WorldGuard
– ๐จ Supports MiniMessage formatting (colors, bold, etc.)
– โก Lightweight and optimized (no spam, only on enter)
– ๐ง Easy configuration
– ๐ง Supports multiple regions
————————————————————————
## ๐ฆ Dependencies
Required:
– WorldGuard
– WorldEdit
————————————————————————
## ๐ ๏ธ Installation
1. Download the plugin
2. Put it into your `plugins/` folder
3. Install dependencies:
– WorldEdit
– WorldGuard
4. Start the server
————————————————————————
## โ๏ธ Configuration
“` yml
regions:
spawn:
title: “Welcome”
subtitle: “You entered spawn”
fadeIn: 10
stay: 50
fadeOut: 10
“`
————————————————————————
## ๐ Usage
1. Create a region:
/rg define spawn
2. Add it to config
3. Walk into the region
————————————————————————
## ๐ง Notes
– Region names in config must match WorldGuard region IDs
– Titles are only shown on region enter (not spammed)
————————————————————————
## ๐ Compatibility
– Paper / Purpur
– Minecraft 1.21+
– Java 21
RegionTeleport
ABOUT
RegionTeleport is a plugin for teleporting all players within one or more WorldGuard regions to one or more spawn locations. This is handy for a bunch of occasions, like hosting custom events and wanting to teleport everyone out at the end or teleporting the victor(s) out of the arena.
FEATURES
– Spawn locations to teleport players from specified region(s) to.
– Teleporting all players from specified region(s) to the specified location(s).
– Stop certain players from being teleported.
– Clear specific entities from specific regions.
– regiontp-on-entry flag – Teleport player to one of the specified locations on region entry.
– regiontp-on-exit flag – Teleport player to one of the specified locations on region exit.
– player-loot-drop flag – Stop player loot from being dropped on death.
– mob-loot-drop flag – Stop mob loot from being dropped on death.
SETUP
1. Download the RegionTeleport.jar.
2. Make sure your server is running Java 21 or higher.
3. Download WorldGuard.
4. Upload all files to your plugins folder.
5. Restart your server.
DEPENDENCIES
– WorldGuard (7.0.0+) – Required for the entire plugin to work.
SOFT DEPENDENCIES
– CMI (9.0.0.0+) – Adds the ability to use cmi warps as spawn locations. Enabled through config.
Usage: /regiontp tp cmi:
– EssentialsX – Adds the ability to use essentials warps as spawn locations. Enabled through config.
Usage: /regiontp tp ess:
– PlaceholderAPI – Adds a few placeholders (see below)
COMMANDS & PERMISSION
<> = required, () = optional, -s = hide message
– ****Command:**** /regiontp help
**Description:** Shows all commands
****Permission:**** regionteleport.command.help
– **Command:** /regiontp reload
**Description:** Reloads the plugin
**Permission:** regionteleport.command.reload
– **Command:** /regiontp list (page)
**Description:** Lists all spawn locations
**Permission:** regionteleport.command.list
– **Command:** /regiontp setspawn (x y z) (yaw pitch) (world)
**Description:** Creates a spawn location
**Permission:** regionteleport.command.setspawn
– **Command:** /regiontp delspawn
**Description:** Deletes the specified spawn location
**Permission:** regionteleport.command.delspawn
– **Command:** /regiontp tp <"region1 region2 ..."> <"spawn1 spawn2 ..."> (-s)
**Command:** /regiontp tp <"region1 region2 ..."> <"spawn1 spawn2 ..."> (-s)
**Description:** Teleports all players within the region(s) to the specified location(s)
**Permission:** regionteleport.command.teleport
**Examples:**
1. **/regiontp tp minecraft:world `__global__` “spawn1 spawn2″** (Would teleport players in minecraft:world to either spawn1 & spawn2)
2. **/regiontp tp “region1 region2” spawn1** (Would teleport players in region1 & region2 to spawn1)
– **Command:** /regionclear <"region1 region2 ..."> <"option1 option2 ..."> (-s)
**Command:** /regionclear <"region1 region2 ..."> <"option1 option2 ..."> (-s)
**Description:** Remove all specified entities from all specified regions
**Permission:** regionteleport.command.clear
**Available Options:**
**all** (Removes all monsters/animals/ambient/items/vehicles that aren’t named, tamed or an npc)
**monsters**
**animals**
**ambient** (bat)
**items(:)** (separate different item types with commas)
**vehicles** (Doesn’t include living vehicles like horses, use -animals for those)
**specific:** (separate different entity types with commas)
**displays (Only 1.19.4+)**
**named(-only:)**
**tamed(-only)**
**npcs(-only)** (Will remove any entities that have the metadata `NPC`)
Using **-only** will remove only those entities. So, `named-only` would only remove named entities, and `named-only:Steve,Dave` would only remove entities named Steve & Dave.
**Examples:**
1. **/regionclear minecraft:world `__global__` “animals named-only:dave”** (Would remove any animals named dave in minecraft:world)
2. **/regionclear “region1 region2” “items:diamond,dirt animals tamed”** (Would remove all animals, all tamed animals & any dropped diamonds/dirt items from region1 & region2)
3. **/regionclear region1 specific:sheep,ender_crystal** (Would remove any sheep & end crystals in region1)
– **Permission:** regiontp.teleport.bypass
**Description:** Does so the player doesnt get teleported if he is within the region.
– **Permission:** regiontp.*
**Description:** Gives you all permissions except teleport bypass.
PLACEHOLDERS
– **Placeholder:** %regionteleport_player_count_w:_r:%
**Description:** Counts amount of players in that region in that world. use `__global__` for entire world.
– **Placeholder:** %regionteleport_player_count_exclude_bypass_w:_r:%
**Description:** Counts amount of players except for players with teleport bypass permission in that region in that world. use `__global__` for entire world.
Regions Unexplored – Farmer’s Delight – Bark Cutting Compat
Adds Support Between Regions Unexplored & Farmer’s Delight
[Fabric Version Here](https://modrinth.com/mod/farmers-delight-refabricated) (Only 1.20.1 and up), [Older Fabric Versions Here](https://modrinth.com/mod/farmers-delight-fabric)
[CurseForge Version Here!](https://www.curseforge.com/minecraft/texture-packs/regions-unexplored-farmers-delight-compat-forge)
Normally, when you try to cut modded wood types with a cutting board, a message appears saying, ‘Doesn’t seem cuttable…’ However, with this datapack, it simply cuts the wood and gives you bark!
Both Mods are Required!
Types:
– Baobab,
– Blackwood,
– Blue Bioshroom Hyphae & Stem,
– Brimwood,
– Cobalt,
– Cypress,
– Dead,
– Eucalyptus,
– Green Bioshroom Hyphae & Stem,
– Joshua,
– Kapok,
– Larch,
– Magnolia,
– Maple,
– Mauve,
– Palm,
– Pine,
– Pink Bioshroom Hyphae & Stem,
– Redwood,
– Socotra,
– Willow,
– Yellow Bioshroom Hyphae & Stem.
All Types have,
– Door,
– Hanging Sign,
– Log,
– Sign,
– Trapdoor,
– And Wood Types!
– Also there are dye types from the flowers!
# THIS IS A DATAPACK!
How to Download:
1. Download the file.
2. Add it to the datapacks folder or use a loader (links below).
3. Start your world.
Links:
– [Paxi](https://modrinth.com/mod/paxi)
– [Open Loader](https://modrinth.com/mod/open-loader)
– [Global Packs](https://modrinth.com/mod/globalpacks)
Note 2# There is currently a compatibility issue with [Oh The Biomes We’ve Gone](https://www.curseforge.com/minecraft/texture-packs/oh-the-biomes-weve-gone-farmers-delight-bark), [Biome’s O’ Plenty](https://modrinth.com/datapack/farmers-cutting-biomes-o-plenty) and [Blue Skies](https://www.curseforge.com/minecraft/texture-packs/blue-skies-farmers-delight-bark-cutting-compat). I’m trying my best, but i dont know how to fix the issue!
Regions Unexplored: Expansion

Have you ever played a modpack with Regions Unexplored, but been bothered by how bland vanilla biomes looked in comparison? With this addon, most vanilla Overworld surface biomes will be brought up to par with with Regions Unexplored biomes. You will be able to find blocks, plants, and other features from Regions Unexplored in many vanilla biomes. Check out the gallery if you want too see a sample of this mod/datapack’s vanilla biome overhauls.
Currently this mod only supports Regions Unexplored for 1.20.1, but support for other versions may be added in the future. This mod/datapack has so far only been tested for compatibility with Regions Unexplored, so I cannot guarantee compatibility with any other biome mods.
Feel free to use this mod/datapack in any modpack.
Credit to @.mo_mo from the Regions Unexplored Discord server and ebo2022 from Curseforge for their earlier work that this mod and data pack were based on.
Regions Unexplored – Expanded
Region Unexplored – Expansion datapack for 1.21.1!
The original author has since deleted their accounts off of curseforge and not provided any updates for months.
Why make a datapack port?
The original update for 1.21.1 was severely broken and caused crashing when creating a world (namespaces were changed for 1.21.1). I have fixed the issues and made it into a datapack rather than a mod in itself.
Check out the original mod for a working 1.20.1 version: [https://modrinth.com/mod/regions-unexplored-expansion](https://modrinth.com/mod/regions-unexplored-expansion)
Regions Unexplored
# Regions Unexplored
Regions Unexplored is a biome mod that overhauls the overworld in many ways. With 70+ new biomes and a plethora of new blocks and items, there’s plenty of unique regions out there waiting for you to explore them!
The mod currently lacks a wiki, but you can find a full biome list [here](https://gist.github.com/catter1/1f90b77263e3746c20c1fd93a7393f69) and can get updates on the mod in the discord [here](https://discord.gg/pA9EqZRJzn).
## Dependencies
If you are on **0.6 or above**:
– Biolith
– Lithostitched
– Fabric API (Fabric only)
If you are on **0.5.9 or below**:
– Terrablender
– Forge Config API Port (Fabric only)
– Fabric API (Fabric only)



RegionRestore
# RegionRestore
**High-Performance World Region Restoration for Paper/Folia Servers**
RegionRestore is a powerful, performance-focused plugin designed to restore parts of your world back to their original
state at exceptional speeds. Whether you’re managing PvP arenas, mini-game lobbies, or need reliable world state resets,
RegionRestore delivers sub-10ms restoration for small regions while maintaining server stability even for massive
operations.
—
## Why RegionRestore?
### Lightning-Fast Restores
Small regions (like duels arenas) restore in **under 10 milliseconds**, ensuring minimal disruption to gameplay.
### Chunk Streaming Technology
Large restores use intelligent **chunk-by-chunk streaming** that progressively loads and restores chunks rather than
loading everything at once. This prevents overloading Minecraft’s chunk system and maintains consistent TPS even during
extensive restoration operations.
### Instant Light Restoration
Unlike other solutions that trigger expensive light recalculation, RegionRestore features **instant light restore**
technology. This dramatically reduces CPU usage during restoration operations and eliminates the lag spikes commonly
associated with lighting updates.
### Perfect for Arena Management
Ideal for:
– **PvP Duels Arenas** – Instant reset between matches
– **Mini-Game Lobbies** – Restore lobby state after each game
– **Event Arenas** – Reset builds, terrain, and structures
– **Practice Arenas** – Fast environment resets
– **Plot Worlds** – Mass plot regeneration
—
## Supported Versions
| Platform | Supported Versions |
|———-|——————–|
| Paper | 1.21.4 – 26.1.1 |
| Folia | 1.21.4 – 26.1.1 |
### Minecraft Version Support
RegionRestore uses NMS adapters for maximum performance on specific versions:
– 1.21.4, 1.21.5, 1.21.6, 1.21.7, 1.21.8, 1.21.9, 1.21.10, 1.21.11, 26.1-26.1.1
> **Note:** The plugin requires a matching NMS adapter for your server version. Updates are released shortly after new
> Minecraft versions.
—
## Dependencies
A PaperMC based server (eg Paper, Purpur)
### Optional
– **PlaceholderAPI** – Access RegionRestore data via `%regionrestore_*%` placeholders
– **MiniPlaceholders** – Use `` placeholders in MiniMessage-formatted text
—
## Placeholders
PlaceholderAPI Placeholders
| Placeholder | Description |
|—————————————————-|————————————-|
| `%regionrestore_instance_count%` | Total number of instances |
| `%regionrestore_instance_count_pooled%` | Count of pooled instances |
| `%regionrestore_instance_count_manual%` | Count of manual instances |
| `%regionrestore_instance_count_%` | Instance count for a specific world |
| `%regionrestore_template_count%` | Total number of templates |
| `%regionrestore_template__versions%` | Number of versions for a template |
| `%regionrestore_template__active_version%` | Active version ID for a template |
| `%regionrestore_pool_count%` | Total number of configured pools |
| `%regionrestore_pool___count%` | Instance count for a specific pool |
| `%regionrestore_pool___target%` | Target instance count for a pool |
| `%regionrestore_pool___occupied%` | Occupied instance count for a pool |
| `%regionrestore_instance__world%` | World name of an instance |
| `%regionrestore_instance__template%` | Template name of an instance |
| `%regionrestore_instance__occupancy%` | Occupancy count of an instance |
| `%regionrestore_instance__type%` | Instance type (pooled/manual) |
| `%regionrestore_instance__originx%` | Origin chunk X coordinate |
| `%regionrestore_instance__originz%` | Origin chunk Z coordinate |
| `%regionrestore_instance__sizex%` | Size in chunks (X) |
| `%regionrestore_instance__sizez%` | Size in chunks (Z) |
| `%regionrestore_instance__minblockx%` | Minimum block X coordinate |
| `%regionrestore_instance__maxblockx%` | Maximum block X coordinate |
| `%regionrestore_instance__minblockz%` | Minimum block Z coordinate |
| `%regionrestore_instance__maxblockz%` | Maximum block Z coordinate |
MiniPlaceholders Placeholders
| Placeholder | Description |
|———————————————————–|——————————-|
| `` | Total number of instances |
| `` | Count of pooled instances |
| `` | Count of manual instances |
| `` | Total number of templates |
| `` | Total number of pools |
| `` | Instance count for a world |
| `` | Instance count for a pool |
| `` | Target count for a pool |
| `` | Occupied count for a pool |
| `` | Version count for a template |
| `` | Active version for a template |
—
## Commands
All commands use `/regionrestore` (or aliases `/rr`, `/arena`, `/arenas`).
GUI Command
| Command | Description | Permission |
|———–|————————————-|———————|
| `/rr gui` | Open the interactive management GUI | `regionrestore.gui` |
The GUI provides visual management of templates, instances, pools, and timers with intuitive menu navigation.
Template Commands
| Command | Description | Permission |
|——————————————————————|———————————————-|————————————|
| `/rr template create [world]` | Create a new template from world coordinates | `regionrestore.template.create` |
| `/rr template list` | List all saved templates | `regionrestore.template.list` |
| `/rr template info ` | View template details and versions | `regionrestore.template.info` |
| `/rr template setactive ` | Set the active version for a template | `regionrestore.template.setactive` |
| `/rr template delete ` | Delete a template | `regionrestore.template.delete` |
**Versioning System:** Templates support multiple versions, allowing you to maintain different snapshots of the same
region. The “active” version is used by default for restores.
Restore Commands
| Command | Description | Permission |
|———————————————————–|——————————————-|—————————|
| `/rr restore [version/active] [scope]` | Restore template at its original position | `regionrestore.restore` |
| `/rr restore at [version]` | Restore template at specific coordinates | `regionrestore.restore` |
| `/rr restore in [version] [scope]` | Schedule restore with countdown | `regionrestore.restorein` |
| `/rr restore version [version/active] [scope]` | Restore specific version | `regionrestore.restore` |
**Audience Scopes:**
– `NEARBY` – Notify players within configured radius
– `WORLD` – Notify all players in the world
– `SERVER` – Notify all online players
– `NONE` – Silent restore
Instance Commands
| Command | Description | Permission |
|————————————————————————————————-|———————————-|———————————-|
| `/rr instance create [world] [version] [boot] [vacate] [interval]` | Create a tracked region instance | `regionrestore.instance.create` |
| `/rr instance list all` | List all instances | `regionrestore.instance.list` |
| `/rr instance list world [type]` | List instances in a world | `regionrestore.instance.list` |
| `/rr instance info ` | View instance details | `regionrestore.instance.info` |
| `/rr instance delete ` | Delete an instance | `regionrestore.instance.delete` |
| `/rr instance restore ` | Trigger restore for an instance | `regionrestore.instance.restore` |
**Instance Types:**
– **Pooled** – Auto-managed instances for mass cloning
– **Manual** – Individually created and managed instances
**Instance Options:**
– `boot` – Restore on server startup
– `vacate` – Restore when all players leave
– `interval` – Auto-restore interval in seconds
Cloner (Pool) Commands
| Command | Description | Permission |
|—————————————–|————————————|——————————–|
| `/rr cloner status [world]` | View pool status and configuration | `regionrestore.cloner.status` |
| `/rr cloner restore [world] [template]` | Trigger restore for pool instances | `regionrestore.cloner.restore` |
| `/rr cloner regen [world] [–force]` | Regenerate all pool instances | `regionrestore.cloner.regen` |
**Mass Cloner:** Automatically manages multiple copies (instances) of a template across configured worlds. Perfect for
duels servers that need dozens or hundreds of identical arenas.
Timer Commands
| Command | Description | Permission |
|——————————————————————-|———————————————|——————————|
| `/rr timer set instance [scope]` | Set repeating restore timer for instance | `regionrestore.timer.set` |
| `/rr timer set template [scope]` | Set timer for template at original position | `regionrestore.timer.set` |
| `/rr timer cancel id ` | Cancel timer by instance ID | `regionrestore.timer.cancel` |
| `/rr timer cancel template-all ` | Cancel all timers for a template | `regionrestore.timer.cancel` |
Selection Commands
| Command | Description | Permission |
|——————————-|—————————————-|———————————|
| `/rr selection wand` | Get the selection wand item | `regionrestore.wand` |
| `/rr selection` | View current selection info | `regionrestore.selection` |
| `/rr selection clear` | Clear your selection | `regionrestore.selection` |
| `/rr selection create ` | Create template from current selection | `regionrestore.template.create` |
**Using the Selection Wand:**
– Right-click to set positions (alternates between pos1 and pos2)
– Left-click to view current selection info
– Supports cross-world selection detection
—
## Scheduling Features
RegionRestore provides a comprehensive scheduling system that allows you to automate restores based on various triggers
and conditions.
Countdown Scheduling (Delayed/Scheduled Restores)
Schedule restores to happen after a countdown delay with automatic player notifications. This allows you to schedule
restores for a future time and warn players before restoration occurs.
“`
/rr restore in [version] [scope]
“`
**Features:**
– **Scheduled Restore** – Delay restoration by specified seconds
– **Configurable Announce Points** – Notify players at specific intervals (default: 60, 30, 10, 5, 4, 3, 2, 1 seconds)
– **Audience Scope Control** – Choose who receives countdown notifications:
– `NEARBY` – Players within configured radius
– `WORLD` – All players in the world
– `SERVER` – All online players
– `NONE` – Silent countdown
– **Plurality-Aware Messages** – Automatic “second/seconds” grammar
**Example – Schedule arena restore in 30 seconds:**
“`
/rr restore in my_arena 30 WORLD
“`
Announces to all players: “Restoring region in 30 seconds…” counting down to “Restoring region in 1 second…”
**Tip:** Use this for scheduled maintenance, event endings, or to give players time to finish their current activity
before the restore.
Repeating/Interval Scheduling
Set up automatic periodic restores for instances or templates.
“`
/rr timer set instance [scope]
/rr timer set template [scope]
“`
**Features:**
– **Instance-Based** – Timer follows a specific region instance
– **Template-Based** – Creates a hidden instance at template’s original location
– **Persistent** – Timers survive server restarts
– **Configurable Scope** – Per-timer audience notification settings
**Use Cases:**
– Event arenas that reset every 5 minutes
– Practice arenas that auto-reset every 60 seconds
– Lobby areas that refresh periodically
**Cancellation:**
“`
/rr timer cancel id # Cancel specific instance timer
/rr timer cancel template-all # Cancel all timers for a template
“`
Boot Restoration
Automatically restore regions when the server starts.
**Configuration:**
“`hocon
mass-cloner {
worlds=[
{
name=”duels_world”
pools=[
{
template-name=”classic_arena”
restore-on-boot=true
}
]
}
]
}
“`
**Instance-Level:**
“`
/rr instance create [world] [version] true false [interval]
“`
(5th parameter `true` enables boot restore)
**Use Cases:**
– Reset all arenas on server restart
– Ensure plots are clean after maintenance
– Restore event areas to known state
Vacate Restoration
Automatically restore a region when all players leave it.
**How It Works:**
– Tracks player occupancy in real-time
– Monitors chunk movements, teleports, world changes, joins, and quits
– Triggers restore after all players have left + configurable delay
**Configuration:**
“`hocon
mass-cloner {
worlds=[
{
name=”duels_world”
pools=[
{
template-name=”classic_arena”
restore-on-vacate=true
}
]
}
]
}
“`
**Instance-Level:**
“`
/rr instance create [world] [version] [boot] true [interval]
“`
(6th parameter `true` enables vacate restore)
**Configuration Options:**
“`hocon
mass-cloner {
vacate-delay-seconds=5 # Delay after last player leaves before restoring
}
“`
**Use Cases:**
– Duels/PvP arenas that auto-reset after matches
– Mini-game instances that clean up when finished
– Private arenas that refresh between uses
Concurrent Restore Management
Prevent server overload with intelligent concurrent restore limiting.
**Configuration:**
“`hocon
restore {
max-concurrent-restores=5 # Maximum simultaneous restores
}
“`
**Behavior:**
– When limit is reached, new restores are skipped with configurable notification
– Prevents TPS drops from too many simultaneous chunk operations
– Restores automatically queue and execute when slots become available
**Notification:**
Players receive a message explaining why the restore was skipped:
> “Region restore skipped: maximum concurrent restores (5) reached”
Scheduling Configuration Examples
**Example 1: Duels Arena with Vacate**
“`hocon
mass-cloner {
vacate-delay-seconds=3 # 3 second delay after last player leaves
worlds=[
{
name=”duels”
pools=[
{
template-name=”1v1_arena”
count=20
restore-on-vacate=true
restore-on-boot=false
}
]
}
]
}
“`
**Example 2: Event Arena with Repeating Timer**
“`
# Create instance at specific location
/rr instance create event_arena 100 100 events 0 false false
# Set 5-minute repeating timer with WORLD notifications
/rr timer set instance 300 WORLD
“`
**Example 3: Lobby with Boot + Timer**
“`hocon
mass-cloner {
worlds=[
{
name=”lobby”
pools=[
{
template-name=”main_lobby”
count=1
restore-on-boot=true
restore-interval-seconds=3600 # Restore every hour
}
]
}
]
}
“`
**Example 4: Silent Background Restore**
“`
# Restore with no notifications
/rr restore in silent_arena 10 NONE
“`
—
## Permissions
Complete Permission List
| Permission | Description | Default |
|————————————|————————————–|———|
| `regionrestore.*` | Grants all RegionRestore permissions | OP |
| `regionrestore.gui` | Open the management GUI | OP |
| `regionrestore.template.create` | Create templates | OP |
| `regionrestore.template.list` | List templates | OP |
| `regionrestore.template.info` | View template info | OP |
| `regionrestore.template.setactive` | Set active version | OP |
| `regionrestore.template.delete` | Delete templates | OP |
| `regionrestore.restore` | Restore templates | OP |
| `regionrestore.restorein` | Schedule timed restores | OP |
| `regionrestore.instance.create` | Create instances | OP |
| `regionrestore.instance.list` | List instances | OP |
| `regionrestore.instance.info` | View instance info | OP |
| `regionrestore.instance.delete` | Delete instances | OP |
| `regionrestore.instance.restore` | Trigger instance restore | OP |
| `regionrestore.cloner.status` | View cloner status | OP |
| `regionrestore.cloner.restore` | Trigger pool restores | OP |
| `regionrestore.cloner.regen` | Regenerate pools | OP |
| `regionrestore.timer.set` | Set restore timers | OP |
| `regionrestore.timer.cancel` | Cancel timers | OP |
| `regionrestore.wand` | Use selection wand | OP |
| `regionrestore.selection` | Manage selections | OP |
—
## Use Cases
### Duels Server
Create a pool of 50 identical PvP arenas that auto-restore when players leave:
Example Configuration
“`hocon
mass-cloner {
worlds=[
{
name=”duels_world”
pools=[
{
template-name=”classic_arena”
count=50
separation-chunks=10
restore-on-vacate=true
}
]
}
]
}
“`
### Event Arena
Restore an arena on a timer with countdown announcements:
“`
/rr timer set template event_arena 300 SERVER
“`
### Practice Server
Instantly reset practice arenas between rounds:
“`
/rr restore template my_arena
“`
### Plot World
Mass regenerate all plots on server restart:
Example Configuration
“`hocon
mass-cloner {
worlds=[
{
name=”plot_world”
pools=[
{
template-name=”default_plot”
count=100
restore-on-boot=true
}
]
}
]
}
“`
—
## Performance Notes
– **Small Regions** (< 100 chunks): Sub-10ms restore times
- **Large Regions**: Uses chunk streaming to maintain TPS
- **Light Updates**: Restore original light by default (instant light restore)
- **Async Operations**: Optional fully async restoration
- **Chunk Unloading**: Automatic cleanup prevents memory leaks
---
## Support
For support, feature requests, or bug reports, please use the GitHub issue tracker.
**Website:** https://github.com/bruhmomen69/OpenProjects
**Discord:** https://discord.gg/A6NG8DaAb7
---
*RegionRestore - Restore your worlds at the speed of gameplay.*
RegionPlus
# ๐ RegionPlus โ Dynamic Region Integration for WorldGuard
**RegionPlus** is an **open-source plugin** that turns **WorldGuard regions** into fully interactive systems. It provides powerful **placeholders, live updates, and event-driven integrations** โ letting you connect regions with scoreboards, chats, GUIs, and more.
๐ **GitHub:** [github.com/AkaTriggered/RegionPlus](https://github.com/AkaTriggered/RegionPlus)
๐ง **License:** Open Source (MIT) โ Free to use, modify, and contribute
## ๐ก Why RegionPlus?
WorldGuard protects your worlds โ **RegionPlus makes them smart.**
With real-time region tracking, 20+ placeholders, and optimized event handling, RegionPlus lets you:
* Show live region info in scoreboards
* Make chats location-aware
* Track player counts per region
* Use region data in any PlaceholderAPI-supported plugin
## โ๏ธ Tech Specs
* **Dependencies:** WorldGuard 7.0+, PlaceholderAPI 2.11+ (soft)
* **Java:** 17+
* **Server:** Paper/Spigot 1.16+
* **Performance:** Lightweight, zero database, under 0.5% tick usage
## ๐ Highlights
* ๐น Real-time region tracking (async optimized)
* ๐น 20+ placeholders for advanced integrations
* ๐น Region-aware chat and scoreboard systems
* ๐น Thread-safe caching with ConcurrentHashMap
* ๐น No external database, pure memory performance
## ๐ฎ Roadmap
* Region analytics & insights
* Custom region triggers
* Region grouping & multi-world optimizations
* Public API for third-party integrations
**RegionPlus** โ Built by the community, for the community.
Empower your regions. Keep your server dynamic.
RegionPay
RegionPay
Short Description:
Charges players when entering specified WorldGuard regions. Supports per-region fees and distributes money to region owners.
Full Description:
RegionPay is a Minecraft plugin that charges players when they enter a specified WorldGuard region. Perfect for servers that want toll areas, paid zones, restricted access, or player-driven economies.
Features:
Automatically charges players upon entering configured regions
Per-region pricing using a WorldGuard custom flag
Region owners receive income (minus tax)
Fully configurable via config.yml
Lightweight and production-ready
Requirements:
Paper / Spigot 1.21.x
Vault (Economy API)
Any Vault-compatible economy plugin
WorldGuard / WorldEdit
Installation:
Download regionpay-1.0.jar
Place it into the plugins/ folder
Restart the server
Configure config.yml
Usage / Commands:
/regionpay reload – Reloads configuration files
WorldGuard setup: /rg flag regionpay-entry-fee allow
Region ownership: /rg addowner
Disable temporarily: /rg flag regionpay-entry-fee deny
Remove flag: /rg flag regionpay-entry-fee –
License: MIT License
Notes / Upcoming Features:
Region-based discounts
Additional fee triggers
API expansion
RegionMusic
# RegionMusic
A Paper/Purpur plugin that plays configured music when a player enters WorldGuard regions (regions are typically created/managed using WorldEdit + WorldGuard).
## Requirements
– Server: Paper/Purpur (`api-version` in `plugin.yml`: `1.21`)
– Java: 21
– WorldGuard: 7.x (the plugin declares `depend: [WorldGuard]`)
– A client resource pack (if you use custom sounds like `namespace:key`)
## Installation
1. Put the plugin jar into `plugins/`.
2. Make sure WorldGuard is installed and loads before RegionMusic.
3. Start the server once, edit `plugins/RegionMusic/config.yml`, then restart the server.
## Region Selection (Important)
If multiple WorldGuard regions apply at the player’s location, the plugin selects the **best** region like this:
1. Only regions that have a config section `regions.` in `config.yml` are considered.
2. The region with the highest WorldGuard `priority` wins.
3. If priorities are equal, the choice is stabilized by region `id` (alphabetical order).
Music is played for that selected region.
## Configuration
File: `plugins/RegionMusic/config.yml`
Minimal setup (1 track per region):
“`yml
regions:
spawn:
sound: “msr:spawn_theme”
category: “MUSIC”
volume: 1.0
pitch: 1.0
stopOnExit: true
“`
### Multiple Tracks (Shuffled, No Repeats Until Exhausted)
You can define a playlist via `sounds:`. Tracks are played in a shuffled order **without repeats** until the list is exhausted, then the list is reshuffled.
“`yml
regions:
spawn:
sounds:
– “msr:spawn_theme”
– “msr:hscene2”
– “msr:hscene3”
category: “MUSIC”
volume: 1.0
pitch: 1.0
stopOnExit: true
“`
### Continuous Playback (continuous)
Paper/Spigot does not provide a โsound finishedโ event, so to automatically play the next track you must configure durations.
“`yml
regions:
spawn:
sounds:
– “msr:spawn_theme”
– “msr:hscene2”
category: “MUSIC”
continuous: true
durations:
“msr:spawn_theme”: 2400 # ticks (20 ticks = 1 second)
“msr:hscene2”: 1360
gapTicks: 0
stopPreviousOnNext: true
“`
Supported duration options:
– `durationTicks`: default duration for any track in this region (ticks).
– `durationSeconds`: same, but in seconds.
– `durations:`: a map `soundKey -> ticks` (overrides the default per track).
If durations are inaccurate:
– Duration **longer** than the real track: you will get silence until the next track starts.
– Duration **shorter** than the real track: the next track starts early; with `stopPreviousOnNext: true` the previous track will be stopped (audible cut).
### Repeat A Track N Times (repeats)
You can force a given track to repeat N times consecutively before advancing to the next one:
“`yml
regions:
spawn:
sounds:
– “msr:spawn_theme”
– “msr:hscene2”
continuous: true
durations:
“msr:spawn_theme”: 2400
“msr:hscene2”: 1360
repeats:
“msr:hscene2”: 3
“`
Values `< 1` are treated as `1`.
### Stop Vanilla Music On Enter
To prevent region music from overlapping vanilla background music, you can stop the `MUSIC` category on enter:
```yml
regions:
spawn:
stopVanillaMusicOnEnter: true
```
Notes:
- Vanilla background music is client-side; the plugin does a best-effort stop of `SoundCategory.MUSIC`.
- The region track is started on the next tick after stopping `MUSIC` to avoid rare client packet-order races.
### Full Per-Region Options
- `sound: string` - a single track (legacy).
- `sounds: [string]` - a list of tracks (recommended).
- `category: string` - Bukkit category (`MUSIC`, `RECORDS`, ...), default: `MUSIC`.
- `volume: number` - default: `1.0`.
- `pitch: number` - default: `1.0`.
- `stopOnExit: boolean` - stop the currently playing track when leaving all configured regions, default: `true`.
- `stopVanillaMusicOnEnter: boolean` - stop `SoundCategory.MUSIC` when entering, default: `true`.
- `continuous: boolean` - keep playing the playlist while the player stays in the region, default: `false`.
- `durationTicks: int` / `durationSeconds: number` - default duration for `continuous`.
- `durations: { "“: }` – per-track durations (ticks).
– `gapTicks: int` – silence gap between tracks, default: `0`.
– `stopPreviousOnNext: boolean` – stop the previous track right before starting the next one, default: `true`.
– `repeats: { ““: }` – repeat a specific track N times consecutively.
## Resource Pack (Custom Sounds)
If you use custom sounds like `msr:spawn_theme`, clients must have a resource pack enabled that contains:
– `assets/msr/sounds.json` (or another namespace instead of `msr`)
– `assets/msr/sounds/.ogg`
Important:
– `.ogg` must be **Ogg Vorbis** (not an MP3 renamed to `.ogg`).
– `soundKey` must be **lowercase** (Minecraft `ResourceLocation` rule).
Quick client-side test:
“`
/playsound msr:spawn_theme music @s ~ ~ ~ 1 1
“`
If you get silence or an โunknown soundEventโ error, the issue is in the resource pack / key, not the plugin.