# How to Install and Configure WorldGuard on Your Minecraft Server (/docs/minecraft/setup-worldguard)



import { Step, Steps } from 'fumadocs-ui/components/steps';

**WorldGuard** is the standard region-protection plugin for Minecraft. It lets you mark areas as protected, set per-region flags (no PvP, no mob spawning, custom greetings), control who can build where, and enforce server-wide rules. It pairs with [WorldEdit](/docs/minecraft/setup-worldedit) — you use WorldEdit to select areas, then WorldGuard to protect them.

If you've ever lost a build to griefing, you needed WorldGuard yesterday.

Install WorldGuard [#install-worldguard]

<Steps>
  <Step>
    Install WorldEdit first (required) [#install-worldedit-first-required]

    WorldGuard depends on [WorldEdit](/docs/minecraft/setup-worldedit) for region selection. Install WorldEdit before WorldGuard, or both at the same time.
  </Step>

  <Step>
    Download WorldGuard [#download-worldguard]

    Go to [enginehub.org/worldguard/](https://enginehub.org/worldguard/) and pick the build for your platform:

    | Platform                | Build                                      |
    | ----------------------- | ------------------------------------------ |
    | Bukkit / Spigot / Paper | `worldguard-bukkit-X.X.X.jar` → `plugins/` |
    | Sponge                  | Sponge build → `mods/`                     |

    > **Note:** WorldGuard is Bukkit-family only. There's no Forge or Fabric build. For Forge, use [GriefDefender](/docs/minecraft/setup-griefdefender) instead.
  </Step>

  <Step>
    Stop the server [#stop-the-server]

    In the [XGamingServer Panel](https://panel.xgamingserver.com), open **Console** and stop your server.
  </Step>

  <Step>
    Upload to plugins/ [#upload-to-plugins]

    Click **Files** in the sidebar. Upload `worldguard-bukkit-X.X.X.jar` to `plugins/` (alongside WorldEdit).
  </Step>

  <Step>
    Start the server [#start-the-server]

    Start from **Console**. WorldGuard creates `plugins/WorldGuard/` and a global region for each world.
  </Step>

  <Step>
    Verify [#verify]

    ```
    plugins
    ```

    `WorldGuard` and `WorldEdit` should both appear in green.
  </Step>
</Steps>

Create Your First Protected Region [#create-your-first-protected-region]

<Steps>
  <Step>
    Select the area with WorldEdit [#select-the-area-with-worldedit]

    ```
    //wand
    ```

    Left-click and right-click two corners to select the area you want to protect.
  </Step>

  <Step>
    Define a region [#define-a-region]

    ```
    /rg define spawnarea
    ```

    This creates a region named `spawnarea` from your current selection. Region names are case-insensitive.
  </Step>

  <Step>
    Set basic protection flags [#set-basic-protection-flags]

    ```
    /rg flag spawnarea build deny
    /rg flag spawnarea pvp deny
    /rg flag spawnarea creeper-explosion deny
    /rg flag spawnarea tnt deny
    ```
  </Step>

  <Step>
    Add yourself as owner [#add-yourself-as-owner]

    ```
    /rg addowner spawnarea YourName
    ```

    Owners can build inside the region even when `build deny` is set.
  </Step>

  <Step>
    Test it [#test-it]

    Have a non-OP player try to break a block in the region. They should see "Hey! You can't do that here."
  </Step>
</Steps>

Region Flags Reference [#region-flags-reference]

Build / Damage Flags [#build--damage-flags]

| Flag                       | Values       | Description                                         |
| -------------------------- | ------------ | --------------------------------------------------- |
| `build`                    | allow / deny | Block placing and breaking (most common protection) |
| `interact`                 | allow / deny | All entity interaction                              |
| `block-break`              | allow / deny | Just breaking blocks                                |
| `block-place`              | allow / deny | Just placing blocks                                 |
| `use`                      | allow / deny | Doors, buttons, levers, plates                      |
| `chest-access`             | allow / deny | Container access                                    |
| `item-frame-rotation`      | allow / deny | Rotate item frames                                  |
| `tnt`                      | allow / deny | TNT block damage                                    |
| `creeper-explosion`        | allow / deny | Creeper grief damage                                |
| `enderdragon-block-damage` | allow / deny | Dragon block break                                  |
| `wither-block-damage`      | allow / deny | Wither block break                                  |
| `ghast-fireball`           | allow / deny | Ghast block damage                                  |
| `fire-spread`              | allow / deny | Fire spreading                                      |
| `lava-fire`                | allow / deny | Lava igniting blocks                                |
| `lava-flow` / `water-flow` | allow / deny | Liquid flow                                         |

PvP / Mobs [#pvp--mobs]

| Flag                        | Values       | Description              |
| --------------------------- | ------------ | ------------------------ |
| `pvp`                       | allow / deny | Player vs player damage  |
| `mob-spawning`              | allow / deny | All natural mob spawning |
| `mob-damage`                | allow / deny | Mobs damaging players    |
| `entity-painting-destroy`   | allow / deny | Break paintings          |
| `entity-item-frame-destroy` | allow / deny | Break item frames        |
| `damage-animals`            | allow / deny | Hurt animals             |

Player Movement [#player-movement]

| Flag                    | Values       | Description                 |
| ----------------------- | ------------ | --------------------------- |
| `entry`                 | allow / deny | Players entering the region |
| `exit`                  | allow / deny | Players leaving the region  |
| `entry-deny-message`    | text         | Message when entry blocked  |
| `enderpearl`            | allow / deny | Enderpearl teleport         |
| `chorus-fruit-teleport` | allow / deny | Chorus fruit                |

Messages [#messages]

| Flag           | Type | Description                    |
| -------------- | ---- | ------------------------------ |
| `greeting`     | text | Shown when entering the region |
| `farewell`     | text | Shown when leaving             |
| `notify-enter` | text | Notify staff on entry          |

Example:

```
/rg flag spawn greeting &aWelcome to spawn!
/rg flag spawn farewell &eSafe travels.
```

Common Region Setups [#common-region-setups]

Spawn Region [#spawn-region]

```
/rg flag spawn build deny
/rg flag spawn pvp deny
/rg flag spawn mob-spawning deny
/rg flag spawn creeper-explosion deny
/rg flag spawn tnt deny
/rg flag spawn fire-spread deny
/rg flag spawn lava-flow deny
/rg flag spawn greeting &aWelcome to spawn!
```

PvP Arena [#pvp-arena]

```
/rg flag arena pvp allow
/rg flag arena build deny
/rg flag arena mob-spawning deny
/rg flag arena enderpearl deny
/rg flag arena exit-via-teleport allow
```

Player Plot (in survival) [#player-plot-in-survival]

```
/rg flag plot1 build allow
/rg addmember plot1 friend1 friend2
```

The plot owner uses `/rg addmember plot1 <player>` to grant build access.

Global Region (server-wide defaults) [#global-region-server-wide-defaults]

The `__global__` region applies to the entire world unless another region overrides it. Useful for server-wide rules:

```
/rg flag __global__ pvp deny
/rg flag __global__ creeper-explosion deny
```

Region Hierarchy and Priority [#region-hierarchy-and-priority]

Regions can overlap. To control which region wins, set priorities:

```
/rg setpriority spawn 10
/rg setpriority arena 20
```

Higher priority wins. The arena (priority 20) overrides spawn rules (priority 10) in any overlapping area.

You can also nest regions with parent inheritance:

```
/rg setparent plot1 mainland
```

Now `plot1` inherits all flags from `mainland` unless overridden.

Manage Region Members [#manage-region-members]

| Command                              | Description                                 |
| ------------------------------------ | ------------------------------------------- |
| `/rg addmember <region> <player>`    | Add a member (can build)                    |
| `/rg removemember <region> <player>` | Remove a member                             |
| `/rg addowner <region> <player>`     | Add an owner (can build + manage)           |
| `/rg removeowner <region> <player>`  | Remove an owner                             |
| `/rg info <region>`                  | View members, owners, flags                 |
| `/rg list`                           | List all regions                            |
| `/rg list <player>`                  | List regions a player owns                  |
| `/rg redefine <region>`              | Update region bounds from current selection |
| `/rg remove <region>`                | Delete a region                             |

Common Issues [#common-issues]

| Problem                                              | Fix                                                                   |
| ---------------------------------------------------- | --------------------------------------------------------------------- |
| `Hey, you can't do that here` for OPs                | Disable `region.bypass` permission, or set `bypass` flag              |
| Region doesn't protect                               | Check flags with `/rg info <region>` — `build deny` must be set       |
| Players can build in protected region                | They're owner/member, or have `worldguard.region.bypass.<world>` perm |
| Overlapping regions don't work                       | Set priorities with `/rg setpriority`                                 |
| Mob-spawning doesn't stop spawners                   | Spawners bypass natural spawning rules — break the spawner            |
| `//wand` doesn't work                                | WorldEdit isn't installed                                             |
| Region disappeared after restart                     | Region wasn't saved — file write error, check disk space              |
| Greeting message shows section sign instead of color | Use `&` for colors, not `§`                                           |

Permissions Reference [#permissions-reference]

| Permission                         | Effect                               |
| ---------------------------------- | ------------------------------------ |
| `worldguard.region.define`         | Can create regions                   |
| `worldguard.region.redefine.own`   | Can redefine own regions             |
| `worldguard.region.flag.own`       | Can flag own regions                 |
| `worldguard.region.addmember.own`  | Can add members to own regions       |
| `worldguard.region.bypass.<world>` | Bypass all WG protections in a world |

Common Mistakes [#common-mistakes]

| Mistake                                                    | Fix                                                             |
| ---------------------------------------------------------- | --------------------------------------------------------------- |
| Forgetting `build deny` (just adding owner)                | Add `build deny` — owner status only matters if build is denied |
| Not restarting after install                               | Restart so the global region is created                         |
| Editing flags via files instead of commands                | Always use commands — files have strict format                  |
| Setting `mob-spawning deny` and expecting spawners to stop | Spawners bypass — break them                                    |
| Giving everyone `region.bypass` to "fix" issues            | Defeats the purpose — fix the actual region setup               |
| Using WorldGuard on Forge                                  | It's Bukkit-family only — use GriefDefender for Forge           |

Related Guides [#related-guides]

* [Setup WorldEdit](/docs/minecraft/setup-worldedit)
* [Plugin Setup](/docs/minecraft/plugin-setup)
* [Setup LuckPerms](/docs/minecraft/setup-luckperms)
* [Setup GriefDefender](/docs/minecraft/setup-griefdefender)
* [Spawn Protection Radius](/docs/minecraft/spawn-protection-radius)
