Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🧱 Brick-MapProtect

Lock down your maps. Let players build freely.
A lightweight Paper/Spigot plugin that stops regular players from tearing up your original map, while still letting them place and break their own blocks.

Minecraft Paper Java License


✨ What it does

Only players in Creative mode can break the original blocks of a protected map. Everyone in Survival/Adventure can still build, and break anything players have placed — but the original terrain stays intact. Perfect for minigame lobbies, parkour maps, hub worlds, and gen-raiding arenas.

Action (on a protected map) Creative mode Survival · allow-placing: true Survival · allow-placing: false
Break an original map block
Place a block
Break a player-placed block

Note: breaking original blocks is gated on game mode, not op status — an opped player in Survival still can't break the map. Use /gamemode creative to edit.

Worlds that aren't in your protected list are left completely untouched.

Anti-grief extras (on by default, configurable): original map blocks can't be destroyed by flowing water & lava (including buckets), fire, explosions (TNT, creepers), pistons, or entity grief (endermen & co.) — while all of those still work normally on player-placed blocks.

🚀 Installation

  1. Download Brick-MapProtect-<version>.jar from the Releases page.
  2. Drop it into your server's plugins/ folder.
  3. Restart the server (or run /reload confirm).
  4. Edit plugins/Brick-MapProtect/config.yml, then run /mapprotect reload.

Requires: a Paper or Spigot server running Minecraft 1.21.x on Java 21.

⚙️ Configuration

# Which maps (worlds) should be protected?
#   - List exact world folder names, or use "*" for every world.
#   - Worlds not listed are left completely untouched.
protected-worlds:
  - world
  - world_nether
  - world_the_end

# Can regular players place blocks on protected maps?
#   true  = players can place (and later break their own blocks)
#   false = players cannot place any blocks (creative players always can)
allow-placing: true

# Stop flowing water/lava (and buckets) from destroying original map blocks
protect-from-liquids: true
# Stop fire/lava from burning original map blocks
protect-from-fire: true
# Stop explosions (TNT, creepers, ...) from destroying original map blocks
protect-from-explosions: true
# Stop pistons from pushing/pulling original map blocks out of position
# (set to false if your map relies on piston contraptions)
protect-from-pistons: true
# Stop endermen, silverfish etc. from altering original map blocks
protect-from-entity-grief: true

# Wipe all player-placed blocks on restart (arena reset)?
#   true = map is restored to original state each startup
#   false = player builds persist across restarts (default)
clear-placed-on-restart: false

# Messages (supports & colour codes)
deny-break-message: "&cYou must be in creative mode to break blocks in this map."
deny-place-message: "&cBlock placing is disabled on this map."

🎮 Commands & Permissions

Command Description Permission
/mapprotect reload Reload the config without restarting mapprotect.admin
Permission Description Default
mapprotect.admin Use /mapprotect commands op

Breaking original map blocks is gated solely on Creative game mode. Op status and permissions grant no override — switch to Creative (/gamemode creative) to edit protected maps.

🔧 How it works

Every block a player places is recorded by its exact location (world:x:y:z) and persisted to placed-blocks.yml, so the data survives restarts. When someone tries to break a block, the plugin allows it only if that location is a known player-placed block (or the player is exempt). Anything else is part of the original map and is protected.

🏗️ Building from source

mvn clean package
# → target/Brick-MapProtect-1.4.0.jar

Requires JDK 21 and Maven 3.9+.

📄 License

Released under the MIT License.

About

Paper/Spigot plugin that protects original map blocks from non-opped players — configurable per-world protection, block-placing toggle, and anti-grief for water/lava/fire.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages