StructureGuard - Protect Villages, Temples & Modded Structur
V1.0.7Automatic WorldGuard protection for ANY structure — vanilla, modded, or datapack.
StructureGuard
Automatically protect ANY structure with WorldGuard regions - zero configuration required.
Find structures instantly using a database (no more `/locate` lag!).
What Is StructureGuard?
StructureGuard automatically creates WorldGuard protection regions around structures as players explore the world.
No world scanning
No lag
No manual coordinates
No setup headaches
Supported Structures
StructureGuard protects **anything registered as a structure**:
- Vanilla structures (villages, temples, monuments, ancient cities, trail ruins, etc.)
- Modded structures (Cobblemon gyms, Terralith, YUNG’s mods, etc.)
- Datapack-generated structures
- Fabric / NeoForge / hybrid server structures
If Minecraft knows about it — StructureGuard can protect it.
⚡ Key Features
On-Demand Protection - Structures are protected when their chunk loads — no scanning required
Powerful Pattern Matching - Protect `minecraft:*`, `cobblemon:*_gym`, or even `*`
Cross-Platform - Paper, Spigot, Folia, Fabric & NeoForge hybrids
WorldGuard Flags - Full flag support (Extra Flags compatible)
Zero Performance Impact - Async detection + instant region creation
Persistent Database - SQLite prevents duplicate regions on reload
Installation (30 Seconds)
1. Install WorldGuard (required)
2. Drop StructureGuard.jar into `/plugins/`
3. Restart the server
4. Run: /sg protect <structure> [radius] [ymin] [ymax]
That’s it — no configs required.
Commands
Protection Management
/sg protect <pattern> [radius] [ymin] [ymax] Start protecting a structure
/sg unprotect <pattern> [--clear] Remove protection (`--clear` deletes regions)
/sg enable <pattern> Re-enable a disabled rule
/sg disable <pattern> Disable without deleting data
/sg rules View all protection rules
Structure Discovery
/sg listall List all registered structure types
/sg find <structure> Locate nearest structure (database-based)
/sg info Show structure info at your location
Flags & Regions
/sg flag <pattern> <flag> <value> Apply WorldGuard flags
/sg addowner <pattern> <player> Add region owner
/sg addmember <pattern> <player> Add region member
/sg clearregions <pattern> Remove WorldGuard regions
/sg resetworld <world> Remove protections in a world
Utility
/sg status System status & statistics
/sg list [pattern] List protected structures
/sg reload Reload configuration
/sg debug Toggle debug logging
Configuration Example
debug: false
process-existing-chunks: true
[/LEFT]
disabled-worlds:
- resource_world
- mining_world
- creative
[LEFT]
default-radius: 48
default-y-min: -64
default-y-max: 320
default-flags:
block-break: deny
block-place: deny
use: allow
interact: allow
creeper-explosion: deny
tnt: deny
deny-message: "&cThis structure is protected!"
protected-structures:
minecraft_village:
enabled: true
radius: 64
y-min: -64
y-max: 320
flags:
block-break: deny
block-place: deny
Pattern Matching Explained
minecraft:village Only villages
minecraft:* All vanilla structures
cobblemon:*_gym All Cobblemon gyms
terralith:* All Terralith structures
* Everything
Protect everything with one command:
/sg protect * 48 -64 320
Permissions
structureguard.admin Full access
structureguard.find Use /sg find
structureguard.listall Use /sg listall
structureguard.teleport Click-to-teleport in chat
Usage Examples
Protect All Villages
/sg protect minecraft:village 64
/sg flag minecraft:village pvp deny
/sg flag minecraft:village greeting "&aWelcome to the village!"
Protect All Cobblemon Gyms
/sg protect cobblemon:*_gym 48
/sg addowner cobblemon:*_gym g:gym-leaders
Protect EVERYTHING (Modded Servers)
/sg protect *
❓ FAQ
❓ Does this cause lag?
No. Detection is async, region creation is instant, and there is no world scanning.
❓ Does it work on already-generated chunks?
Yes. Structures are detected when their chunks are loaded by players.
❓ Does it support WorldGuard Extra Flags?
Yes — flags are auto-detected and tab-completable.
❓ Does it work with modded servers?
Yes. Fabric, NeoForge, datapacks, and hybrid servers are fully supported.
❓ Where is data stored?
SQLite database:
plugins/StructureGuard/structures.db
Can I change flags on existing regions?
Yes! Edit config.yml and run /sg reload — all existing regions will be updated.
How do I exclude resource worlds?
Add them to disabled-worlds in config.yml.
How do I reset a world's data?
Use /sg resetworld <world> before deleting/regenerating the world.
More From Us
MinePay — Modern In-Game Payments
Accept real payments directly in-game with a modern, high-performance store system. Built for 1.8 → 1.21 servers.
Similar projects
Plugin →Let Me Despawn
Improves performance by tweaking mob despawn rules. Say bye to pesky unintentional persistent mobs.
25MSueta
JourneyMap
Real-time map used for mapping in-game or your browser as you explore.
14.7MSueta
Emotecraft
Create your own emotes in Minecraft.
7.5MSueta
Simple Tpa
A simple tpa plugin which sends requests
5.4MSueta
Common Network
Forge and Fabric Unified Networking Solution
3.9MSueta
Set Home
A lightweight plugin for players to set their homes.
3.8MSueta