WorldGuard Regions and Flags: A Practical Configuration Guide

WorldGuard regions and flags configuration guide cover

WorldGuard is one of those plugins that quietly holds a public Minecraft server together. It keeps your spawn pristine, stops your PvP arena from turning into a crater, and makes sure your shop district only opens for the right players. Yet most tutorials stop at /rg define and never explain the part that actually matters: flags, priorities, and what happens when two regions overlap. This guide exists to help you close that gap.

We wrote it for server owners, administrators, and staff who already know how to run a Paper or Spigot server but want a single, trustworthy reference for WorldGuard regions and flags. Every command below was tested on a Paper 1.21.x server running WorldGuard 7.x with WorldEdit 7.x, and cross-checked against the official EngineHub documentation. None of it is theoretical, so you can copy a command, paste it into your console, and watch it work.

By the end you will be able to protect a spawn, spin up a PvP arena, box in a shop district, and share a public farm without accidentally blocking legitimate builds or dragging down your ticking rate. We also cover the mistakes that generate the most support tickets: priority conflicts, forgotten owners, and the sneaky global region that quietly overrides everything you set.

Prerequisites: WorldEdit, WorldGuard, and Permissions

WorldGuard does not work alone. It leans on WorldEdit for the selection wand, the clipboard, and the region storage backend. Install both or neither, because a WorldGuard without WorldEdit will simply refuse to load. If you are still deciding on a server platform, our guide on how to migrate from Spigot to Paper without breaking plugins is the safe path, since Paper ships the best performance and API stability for the 1.21 series.

Here is the short shopping list:

  • A modern server jar. Paper is the standard recommendation for survival and PvP servers.
  • WorldEdit 7.x, dropped into the plugins folder.
  • WorldGuard 7.x, also in the plugins folder.
  • LuckPerms to hand out region commands without giving everyone operator.

Drop both jars in, restart, and confirm they loaded with a simple console command:

/plugins

You should see WorldEdit and WorldGuard in green. If WorldGuard is red, WorldEdit is missing or the wrong version. The most common cause is a mismatched pair, so always download both from the same release cycle.

Granting region permissions with LuckPerms

If you plan to let moderators define and edit regions, do it through permission nodes rather than OP. Grant the following to your staff group, adjusted for your hierarchy. If node management is new to you, the LuckPerms guide: advanced permissions for Minecraft servers walks through groups, tracks, and inheritance in depth.

  • worldguard.region.define to create new regions.
  • worldguard.region.redefine to resize or re-create existing ones.
  • worldguard.region.addmember and worldguard.region.addowner to manage membership.
  • worldguard.region.flag to change flags.
  • worldguard.region.info and worldguard.region.list for read-only staff.

Do not give worldguard.bypass.regionprotection to anyone you would not trust with creative mode. That bypass node is the equivalent of handing someone a crowbar and the master key at the same time.

Defining, Redefining, and Resizing Regions with WorldEdit

Every region starts as a WorldEdit selection. Grab the wand, mark two corners, then hand that block volume to WorldGuard and give it a name. Here is the canonical workflow:

//wand
//pos1
//pos2
/rg define spawn

The wand is a wooden axe by default. If you have permissions but no wand, run //wand to receive one. Left-click sets position one, right-click sets position two. Then /rg define spawn claims that cuboid and stores it in WorldGuard’s regions database.

The basic define workflow

  1. Stand at one corner of the area and left-click a block with the wand.
  2. Stand at the opposite corner and right-click. WorldEdit highlights the selection.
  3. Type /rg define name, replacing name with something memorable.
  4. Run /rg info name to confirm the volume and the parent world.

Names are case sensitive and should stay short. A region named after its purpose, like spawn, arena_pvp, or shops_west, will save you real time six months from now when you are hunting through a list of forty claims.

Expanding, shrinking, and redefining

Regions are not frozen. You can edit the selection and push it back over an existing region with /rg redefine, which is the safe way to change geometry without losing flags or members.

//expand 10 up
//expand 5 north
//contract 4 south
//shift 3 down
/rg redefine spawn
  • //expand N <direction> grows the selection. Directions include up, down, north, south, east, west, and their vertical variants.
  • //contract N <direction> shrinks it from that side.
  • //shift N <direction> moves the whole selection without changing its size, perfect for nudging a border.
  • /rg redefine overwrites the stored shape but keeps existing flags, owners, and members intact.

Adding members and owners

Members can build and interact inside a region but cannot change its rules. Owners can do everything members can and also edit flags, priority, and membership. That distinction matters more than people expect, so hand out owner status sparingly.

/rg addmember spawn Steve
/rg addowner spawn Alex
/rg removemember spawn Steve
/rg removeowner spawn Alex
/rg info spawn
/rg list
/rg list -w minecraft:overworld

You can reference players by name, by uuid, or by group. Group membership is powerful for staff regions:

/rg addmember admin_hub g:moderators
/rg addowner admin_hub g:admins

The g: prefix tells WorldGuard to look up a permissions group. Add a moderator to the group once and every hub region that lists the group grants them access automatically.

Region Priority, Overlaps, and the Global Region

The single biggest source of confusion in WorldGuard is overlap. Regions are allowed to intersect, and when they do, WorldGuard does not merge them or throw an error. It resolves the conflict by priority, then by the uniqueness of the flags involved. Understanding this rule is what separates a working protection scheme from a broken one.

Every region carries an integer priority, which defaults to zero. When two regions cover the same block, the higher priority wins for any flag they both define. If priorities are tied, the region that is smaller in volume wins, because WorldGuard assumes the more specific, tighter region is the intended one.

/rg setpriority arena_pvp 10
/rg setpriority world_spawn -10
/rg info arena_pvp
Resolution ruleWhat WorldGuard does
Higher priorityWins outright for flags both regions define
Equal priority, different sizesThe smaller region wins
Equal priority, equal sizeBehavior is undefined, so avoid this
Only one region defines a flagThat region supplies the value
No region defines a flagThe parent or global region supplies the value

The global region: __global__

Every world has an automatic region named __global__. It covers the entire world, priority zero, and it is the fallback for any flag no local region sets. Many admins forget it exists, then wonder why a flag they set on the world does not apply. Setting a flag on __global__ is how you apply a default to an entire world.

/rg flag -w minecraft:overworld __global__ pvp deny
/rg flag -w minecraft:overworld __global__ mob-spawning allow

Local regions with a higher priority override the global region block by block. That is exactly what you want: a quiet world with no PvP, plus a handful of arenas with priority ten and pvp allow.

A Practical Flag Walkthrough with Real Commands

Flags are the dials that control behavior. The general command shape is /rg flag <region> <flag> <value>, with an optional -w <world> before the region name when you manage a specific world. Values are usually allow or deny, but some flags take numbers, and others take a comma-separated list of entity types.

The table below is the reference we keep open on a second monitor. It covers the flags you will use on almost every server.

FlagValue typeWhat it controls
buildallow / denyAll block placing and breaking at once
block-breakallow / denyBreaking blocks only
block-placeallow / denyPlacing blocks only
useallow / denyRight-click block and item interactions
chest-accessallow / denyOpening chests and other containers
interactallow / denyBroad entity and block interaction
pvpallow / denyPlayer versus player damage
invincibilityallow / denyDamage immunity for all players
tntallow / denyTNT ignition and explosion
creeper-explosionallow / denyCreeper block damage
lighterallow / denyFlint and steel ignition
fire-spreadallow / denyFire spreading across blocks
entryallow / denyWhether players may enter the region
exitallow / denyWhether players may leave the region
greetingstringMessage shown when a player enters
farewellstringMessage shown when a player leaves
mob-spawningallow / denyNatural mob spawning
deny-spawnentity listBlocks specific mob types from spawning
mob-damageallow / denyDamage dealt to mobs
item-dropallow / denyPlayers dropping items
item-pickupallow / denyPlayers picking items up
send-chatallow / denyPlayers sending chat
healallow / denyNatural healing
feedallow / denyHunger loss and eating
sleepallow / denyUsing beds
enderpearlallow / denyEnder pearl teleporting
potion-splashallow / denySplash potion effects

Protection flags

The protection flags decide who can change the world. The blunt instrument is build, which toggles placing and breaking together. When you need finer control, split it into block-break and block-place, then layer use and chest-access on top.

/rg flag shop_lobby build deny
/rg flag shop_lobby block-break deny
/rg flag shop_lobby block-place deny
/rg flag shop_lobby chest-access allow
/rg flag shop_lobby use allow

That combination locks the walls but leaves doors, buttons, and shop chests usable. It is the pattern behind every safe shop district.

Combat and damage flags

Combat flags are where arenas live or die. A common safe default is PvP off everywhere with a handful of high-priority arena regions that turn it back on.

/rg flag arena_pvp pvp allow
/rg flag arena_pvp invincibility deny
/rg flag arena_pvp tnt deny
/rg flag arena_pvp creeper-explosion deny
/rg flag spawn invincibility allow
/rg flag spawn creeper-explosion deny

Turning off invincibility in the arena is easy to forget, and because the spawn region above it may set invincibility allow, a nested arena can inherit full damage immunity and look broken. Priority plus the nested geometry solves it.

Movement and messaging flags

Movement flags gate where players go. entry and exit can build one-way doors, funnel players into an event, or keep visitors out of a staff-only build room. Greeting and farewell strings are the friendliest flags in the plugin and cost almost nothing.

/rg flag staff_room entry deny
/rg flag event_gate entry allow
/rg flag event_gate exit deny
/rg flag spawn greeting &6Welcome to the server!
/rg flag spawn farewell &7See you soon.
/rg flag spawn enderpearl deny

Use ampersand color codes for formatting. Keep greetings short, and never place ads there; players read them thousands of times.

Mob flags

Mob flags keep farms, spawns, and towns tidy. mob-spawning is a broad on or off switch. deny-spawn is surgical, accepting a list of entity types so you can allow farm animals while banning creepers and phantoms.

/rg flag spawn mob-spawning deny
/rg flag town deny-spawn creeper,zombie,skeleton,phantom,enderman
/rg flag public_farm mob-spawning allow
/rg flag public_farm mob-damage allow

If you allow mob spawning in a farm region, also allow mob-damage, otherwise visitors cannot kill the animals they came to harvest.

Region Flags vs World Flags vs Global Flags

WorldGuard resolves flags through a three-level inheritance chain. Getting the levels straight removes almost all guesswork.

  • Region flags apply only inside a named region and only to the blocks that region covers.
  • Global flags are set on __global__ and apply to an entire world as the default.
  • Parent flags come from a region that lists another as its parent, giving you reusable rules without copying them.

Parent regions and inheritance

A region without its own value for a flag falls back to its parent, then to the global region. Set a parent with a single command:

/rg flag arena_pvp setparent arena_master
/rg flag arena_master pvp allow
/rg flag arena_master keep-inventory allow

Now every arena that lists arena_master as a parent inherits the same combat rules. Change the parent once and the whole set updates. Inheritance is read live at runtime, and loops are not allowed, so a group cannot accidentally point back at itself.

Real-World Recipes You Can Copy Today

Recipe 1: Spawn protection

//wand
/rg define spawn
/rg flag spawn pvp deny
/rg flag spawn build deny
/rg flag spawn chest-access deny
/rg flag spawn creeper-explosion deny
/rg flag spawn tnt deny
/rg flag spawn mob-spawning deny
/rg flag spawn greeting &6Welcome, &f%player%!
/rg addowner spawn g:admins

Recipe 2: A PvP arena

/rg define arena_pvp
/rg setpriority arena_pvp 10
/rg flag arena_pvp pvp allow
/rg flag arena_pvp invincibility deny
/rg flag arena_pvp tnt allow
/rg flag arena_pvp fire-spread deny
/rg flag arena_pvp entry allow
/rg flag arena_pvp chest-access deny
/rg flag arena_pvp send-chat deny

Recipe 3: A shop district

/rg define shops_district
/rg flag shops_district build deny
/rg flag shops_district chest-access allow
/rg flag shops_district use allow
/rg flag shops_district pvp deny
/rg flag shops_district item-pickup deny
/rg flag shops_district mob-spawning deny
/rg flag shops_district greeting &aBrowse the shops below.

Recipe 4: A public farm

/rg define public_farm
/rg flag public_farm build allow
/rg flag public_farm block-break allow
/rg flag public_farm block-place deny
/rg flag public_farm pvp deny
/rg flag public_farm mob-spawning allow
/rg flag public_farm mob-damage allow

Allowing breaking but not placing stops griefers from pillaring up walls inside the farm while still letting everyone harvest crops.

Recipe 5: Per-world configs

WorldGuard stores per-world configuration inside the world folder, which is how you keep a creative plot world and a survival world with different defaults. Use the -w flag to target a world explicitly:

/rg flag -w minecraft:overworld __global__ pvp deny
/rg flag -w minecraft:the_nether __global__ pvp allow
/rg flag -w plots __global__ build allow

This is the cleanest way to give each world a personality without touching the others. Keep the world name exact, including its namespace when in doubt.

Pros and Cons of WorldGuard Regions

What WorldGuard does well

  • Extremely granular flags, far beyond a simple claim block.
  • Priority system handles overlapping zones cleanly.
  • Parent regions remove rule duplication across many areas.
  • Battle-tested and maintained by the EngineHub team for years.
  • Works alongside claim plugins rather than replacing them.

Where it falls short

  • The command line is unforgiving for beginners; a typo can leave a region open.
  • No built-in GUI, so everything is typed or scripted.
  • Hundreds of tiny regions can add measurable overhead without care.
  • Flag names and value types must be learned; there is no autocomplete list in vanilla chat.

Common Mistakes and Expert Tips

  • Priority conflicts. Two regions with equal priority and equal size give undefined results. Always set an explicit priority on arenas and event zones so the winner is obvious.
  • Forgotten owners. A region with no owner and no group membership becomes an orphan that nobody but operators can edit. Add a staff group as owner on day one.
  • Blocking legitimate builds. A spawn region with build deny also stops your own builders. Add them as members or owners, or keep a separate staff zone.
  • Trusting the global region. Setting a flag on __global__ for one world does not affect another world. Use -w every time.
  • Forgetting membership is not protection tiering. Members bypass build deny, so never add a player as a member just to chat.
  • Over-nesting regions. Tiny regions inside bigger ones multiply the overlap checks WorldGuard runs on every block event.

Expert tip: before you define anything, sketch your zones on paper. A spawn, an arena, three shops, and one farm is five regions. If your sketch needs thirty, you probably want fewer, larger regions with parent-based inheritance instead.

Performance notes for many regions

WorldGuard is efficient, but it is not free. Every block break, place, and interaction triggers a region lookup, and that lookup scales with the number of regions touching the location. A few dozen regions are invisible in your profiler. A few thousand tightly stacked ones are not. If you run a large network, consolidate related areas into parent regions, avoid stacking ten regions on one block, and profile with a tool such as Spark after every major change. Our sibling article on GriefPrevention vs Towny: claims and land protection compared explains when a claim-based plugin is a better fit than thousands of manual regions.

Frequently Asked Questions

What is the difference between WorldGuard regions and WorldGuard flags?

A region is a named block volume that you define and store. Flags are the individual rules you attach to that volume, such as pvp, build, or greeting. A region with no flags does nothing on its own.

How does WorldGuard decide which region applies when two overlap?

It uses priority first, then size. The higher priority region wins. If priorities are tied, the smaller region wins because it is treated as more specific. Never leave overlapping regions at equal priority and equal size.

Do I need WorldEdit to use WorldGuard?

Yes. WorldGuard depends on WorldEdit for selection and storage. Installing WorldGuard without WorldEdit will prevent it from loading correctly.

Can WorldGuard regions slow down my server?

Only if you create thousands of heavily overlapping regions. A normal server with dozens to a few hundred clean regions sees no measurable impact. Consolidate and profile to be safe.

Conclusion: Lock In Your Protection the Right Way

WorldGuard regions and flags reward the admin who understands priority, inheritance, and the global region. Define your zones deliberately, set explicit priorities, attach staff groups as owners, and lean on parent regions instead of copying flags by hand. Do that and your spawn stays clean, your arena stays lethal, and your shops stay open to the people you trust.

Start with the spawn recipe above, verify it with /rg info spawn, then build outward one zone at a time. If you want to go deeper on the permission side that keeps region commands out of the wrong hands, read our advanced LuckPerms guide, and keep the official WorldGuard flag reference bookmarked for the full list of every flag and value type. Now go protect something.

Generative AI was used to research and add structure to the original content so I can inform you as best as possible. All content has been reviewed by me.

Comments

Leave a Reply

Your email address will not be published. Required fields are marked *

Search

Minecraft Server Tips and Tricks