Sueta

RealRegions

1.0

GUI based World and Region management plugin

·Plugin

RealRegions

GUI based World and Region Management Plugin

Create, load and manage worlds, and protect areas of them with regions and flags, all from a menu.

Discord | Source Code | Report a Bug


What is RealRegions?

RealRegions manages your server's worlds and the regions inside them. Create, import, load, unload, reset and delete worlds from a menu or with commands. Select an area with WorldEdit, turn it into a region, and switch its flags on and off by clicking: block breaking, PvP, hunger, entering, chat, commands and more. Every world also has a Global region that covers all of it.

Features

  • World management: create, import, load, unload, unregister, reset and delete worlds
  • World types: normal, flat, nether, the end and void
  • Timed worlds that reset themselves every set number of seconds
  • Cuboid regions from your WorldEdit selection, plus a Global region for each world
  • 24 region flags, toggled by clicking in the region menu or with /rr flag
  • Bypass any flag with a permission, per world and per region. Right-click a flag to copy its permission.
  • Region priority: where regions overlap, the one with the highest priority applies
  • Block all commands, or only some, inside a region
  • Enter titles and action bar messages when a player walks into a region
  • Region boundary display with particles
  • Browse the entities and players of a world and teleport to them
  • Teleport on join per world, world spawn and gamerules from commands
  • Worlds that are in the server folder but not registered show up in the menu, ready to import
  • On 1.21.6+, native dialogs for typed input, confirmations and editing config.yml (uses chat on older versions)
  • RealMines integration: a region is created for every mine and kept in sync
  • RealPermissions integration: the admin and bypass permissions are listed in RealPermissions
  • PlaceholderAPI support
  • Console commands supported
  • Fully configurable YAML config and language files

Region Flags

Each flag is set per region, from the region menu (/rr flags <region@world>) or with /rr flag <region@world> <flag> <true|false>. Regions are named region@world, e.g. spawn@world.

Bypass permissions follow this pattern:

realregions.<world>.<region>.<flag>.bypass

For example, realregions.world.spawn.block-break.bypass lets a player break blocks in the spawn region of world. Operators bypass every flag.

All flags and their bypass permissions
FlagDefaultWhat it controlsBypass (<flag> part)
block_breakonPlayers can break blocksblock-break
block_placeonPlayers can place blocksblock-place
block_interactonPlayers can interact with blocksblock-interactions
container_interactonPlayers can open chests, barrels, hoppers, droppers, dispensers, ender chests and shulker boxescontainer-interactions
access_craftingonPlayers can use crafting tablesaccess-crafting-tables
access_chestsonPlayers can open chestsaccess-chests
access_hoppersonPlayers can open hoppersaccess-hoppers
pvponPlayers can hurt other playerspvp (for the attacker)
pveonPlayers can hurt mobspve (for the attacker)
take_damageonPlayers take damagetake-damage
hungeronPlayers get hungryhunger
item_droponPlayers can drop itemsitem-drop
item_pickuponPlayers can pick up itemsitem-pickup
item_pickup_only_owneroffOnly the player who dropped an item can pick it upitem-pickup
enteronPlayers can walk or teleport into the regionenter
no_chatoffPlayers can't chatno-chat
no_consumablesoffPlayers can't eat or drinkno-consumables
block_commandsoffBlocks the commands set with /rr blockcommands, or all of themblock-commands
disabled_nether_portaloffPlayers can't use nether portalsdisabled-nether-portal
disabled_end_portaloffPlayers can't use end portalsenter
explosionsonExplosions happenNone
entity_spawningonMobs spawnNone
no_fire_spreadingoffFire and mushrooms don't spreadNone
leaf_decayoffLeaves decayNone

The default is the value for a new region. The block interaction, container, crafting table, chest and hopper bypasses are checked together: any one of them lets the player past all five.

Blocking commands
  1. Choose which commands to block: /rr bc spawn@world tp home. Use /rr bc spawn@world all to block every command.
  2. Turn the flag on: /rr flag spawn@world block_commands true, or click Block Commands in the region menu.

Run /rr bc <region@world> with no commands, or shift-click Block Commands in the region menu, to open the list. There you can add commands, click one to remove it, clear the list or toggle the flag. It's a dialog on 1.21.6+ and a chest menu on older versions.

Photos

/rr menu

Region flag's interactive screen

Region flag's editor

Entities screen

Getting Started

  1. Run /rr to open the worlds menu. Your existing worlds are registered on the first start.
  2. Left-click a world to open its regions. Right-click it to teleport there, middle-click to change its icon.
  3. Select an area with the WorldEdit wand, then run /rr create <name>.
  4. Left-click the region in the list to open its flags. Left-click a flag to toggle it, right-click it to copy its bypass permission.
  5. Right-click a region in the list to show its boundaries. Shift-left-click changes its icon, shift-right-click renames it, and Q deletes it.

Commands

Base commands: /realregions, /rr. All commands need realregions.admin unless noted. Regions are written as region@world. World types: NORMAL, FLAT, NETHER, THE_END, VOID.

CommandDescription
/rrOpens the worlds menu for admins, shows the plugin information for everyone else (no permission)
/rr reloadReloads the config, language and world files
/rr settingsEdits config.yml in a dialog (1.21.6+)
/rr worlds (or menu)Opens the worlds menu; lists the worlds in the console
World commands
CommandDescription
/rr createworld <name> <type> (or cw)Creates a world and teleports you there
/rr createtimedworld <name> <type> <seconds> (or ctw)Creates a world that resets itself every set number of seconds
/rr import <world> <type>Registers a world folder that is already on the server
/rr load <world>Loads a world
/rr unload <world>Unloads a world
/rr unregister <world>Removes a world from RealRegions without deleting its files
/rr reset <world>Deletes the world and generates it again
/rr deletew <world> (or delw)Deletes a world and its files
/rr regions <world> (or world, r)Opens the world's menu with its regions
/rr tp <world>Teleports you to a world (realregions.admin or realregions.tpworld.<world>)
/rr tpo <world> <player>Teleports another player to a world
/rr setworldspawn [world] (or sws, setspawn)Sets the world spawn where you stand
/rr toggle-tpjoin <world>Toggles teleporting players to the world spawn when they join or enter the world
/rr setgamerule <world> <gamerule> <value> (or sgr)Sets a gamerule
/rr entities <world> (or ents)Opens the entities of a world, click one to teleport to it
/rr players <world> (or plrs)Opens the players of a world

The main worlds (world and world_*) can't be unloaded or deleted.

Region commands
CommandDescription
/rr create <name> (or c)Creates a region from your WorldEdit selection
/rr flags <region@world> (or region)Opens the region's flags menu
/rr flag <region@world> <flag> [true|false] (or f)Sets a flag, or shows its value when no value is given
/rr blockcommands <region@world> [all | command...] (or bc)Sets the commands the block_commands flag blocks
/rr setbounds <region@world> (or sb)Sets the region's area to your WorldEdit selection
/rr rename <region@world> <new name> (or rn)Changes the region's display name
/rr tpr <region@world>Teleports you to a region
/rr view <region@world>Shows or hides the region's boundaries
/rr toggle-enter-title <region@world> (or toggle-title)Toggles a title when a player enters the region
/rr toggle-enter-actionbar <region@world> (or toggle-actionbar)Toggles an action bar message when a player enters the region
/rr delete <region@world> (or del)Deletes a region

Permissions

PermissionDescription
realregions.adminAccess to every command and menu
realregions.tpworld.<world>Can use /rr tp to that world
realregions.<world>.<region>.<flag>.bypassIgnores one flag in one region (see Region Flags above)

Placeholders

Requires PlaceholderAPI.

PlaceholderValue
%realregions_total_regions%Number of regions
%realregions_total_created_regions%Number of cuboid regions
%realregions_total_global_regions%Number of Global regions
%realregions_current_region_name%Name of the region the player is in
%realregions_current_region_displayname%Display name of the region the player is in

Requirements

Installation

  1. Install WorldEdit or FastAsyncWorldEdit.
  2. Put the jar in your plugins folder.
  3. Restart the server.
  4. Edit plugins/RealRegions/config.yml and run /rr reload.

Need help or found a bug?

Please don't use the comments for bug reports. Get in touch through:

Discord | GitHub Issues

This plugin uses bStats to collect anonymous usage statistics. You can turn this off in plugins/bStats/config.yml.

Similar projects

Plugin →