CraftGuard
A lightweight, highly configurable Minecraft plugin for managing restrictions for workstations on a per-world basis.
Quick challenge
How far can you run before the mobs catch you?
Minecraft check
Confirm your run
Complete the quick check to get your code.
CraftGuard

CraftGuard


> ServerGuard > CraftGuard is the official evolution of ServerGuard. All development and new features now focus on CraftGuard. > > ServerGuard > CraftGuard will be rebranded to ServerGuard. The updated version will be found under the %%MD1%%
---
CraftGuard gives you powerful, per-world control over crafting, workstations, containers, and portals! Precise management for any server type.
---
What is CraftGuard?
CraftGuard is a Minecraft server plugin that provides granular control over what players can interact with! Crafting Tables, Furnaces, Portals, Containers, and more, down to the individual world level.
Perfect for server networks with creative worlds, adventure maps, minigames, or survival hubs that need different rules.
Why CraftGuard?
- PlaceholderAPI — Different rules for every world, not just global toggles - PlaceholderAPI — Control 15+ workstation types individually (anvil, furnace, blast furnace, smoker, enchantment table, brewing stand, smithing table, etc.) - PlaceholderAPI — Lock down chests, ender chests, shulker boxes, and more - PlaceholderAPI — Restrict nether/end portals per world - PlaceholderAPI — Use YAML, H2, MySQL, MariaDB, PostgreSQL, MongoDB, or Redis - PlaceholderAPI — Migrate settings between servers or backup with a single command - PlaceholderAPI — Full in-game management interface with real-time status indicators - PlaceholderAPI — Available in 13 languages out of the box - PlaceholderAPI — Configs upgrade automatically between versions - PlaceholderAPI — Dynamic placeholders for scoreboards, holograms, and messages
Modern & Fresh UI
CraftGuard now features a sleek, modern design with a professional color palette:
- Warning/Error: `#478fc6` (Prefix & Accents) - Warning/Error: `#C2C7D3` (Standard Text) - Warning/Error: `#D1968C` & `#CE5F4E`
---
Features
Core Functionality
- Bypass Permissions — Control crafting, workstations, containers, and portals individually per world - Bypass Permissions — Enable or disable specific workstations, containers, or portal types - Bypass Permissions — Block specific items from being crafted (e.g., diamond tools) while keeping the workstation functional - Bypass Permissions — Instantly disable all interactions in a world for maintenance or events - Bypass Permissions — Allow specific players or groups to bypass restrictions
User Experience
- Real-Time Feedback — In-game chest menu for visual feature management - Real-Time Feedback — Simple syntax: `/cg <world> <feature> <on|off|toggle>` - Real-Time Feedback — Full command and world name autocomplete - Real-Time Feedback — Status indicators and player notifications
Technical
- WorldGuard Integration — YAML, H2, MySQL, MariaDB, PostgreSQL, MongoDB, Redis support - WorldGuard Integration — Move settings between storage backends or servers - WorldGuard Integration — Copy or move settings between worlds with `/cg migrate <source> <target> [copy]` - WorldGuard Integration — Built-in Modrinth update checker with optional auto-download - WorldGuard Integration — Track blocked interactions for monitoring - WorldGuard Integration — Region-based bypass support
Supported Languages
English (US), English (UK), German, Custom
Supported Features
| Category | Features | |----------|----------| | Containers | crafting, nether-portal, end-portal, lockdown | | Containers | anvil, furnace, blast-furnace, smoker, enchanting, brewing, smithing, loom, cartography, grindstone, stonecutter | | Containers | chest, trapped-chest, ender-chest, copper-chest, shulker-box |
---
How to Install
Requirements
- Java 1.21.11+ or compatible server (Purpur, Folia) - Java 21+ - *(Optional)* PlaceholderAPI for extended placeholders - *(Optional)* WorldGuard for region-based bypass
Installation
1. Download `craftguard-2.2.0.jar` from Modrinth 2. Place the JAR in your server's `plugins/` folder 3. Start/restart the server 4. Edit `plugins/CraftGuard/config.yml` to customize 5. Use `/cg help` or `/cg` to get started
Quick Setup
```bash
Block crafting in lobby world
/cg lobby crafting off
» Crafting disabled in lobby.
Allow nether portals in survival
/cg survival nether-portal on
» Nether Portal enabled in survival.
Open management GUI
/cg
» Opened Management-GUI!
```
---
Commands
| Command | Description | Permission | |---------|-------------|------------| | `/cg` | Open management GUI | admin | | `/cg help` | Show help menu | admin | | `/cg <world> <feature> on` | Enable feature in world | admin | | `/cg <world> <feature> off` | Disable feature in world | admin | | `/cg <world> <feature> toggle` | Toggle feature state | admin | | `/cg reload` | Reload configuration | admin | | `/cg export` | Export settings to file | admin | | `/cg import <file>` | Import settings from file | admin | | `/cg migrate <from> <to> [copy]` | Copy/move settings between worlds | admin |
Permissions
| Permission | Description | Default | |------------|-------------|---------| | `craftguard.admin` | Full access to all commands | OP | | `craftguard.bypass.*` | Bypass all restrictions | false | | `craftguard.bypass.<type>` | Bypass specific restriction | false |
---
Configuration
Configuration files are located in `plugins/CraftGuard/`:
- `config.yml` — Main settings (features, messages, effects) - `locales/` — Language files for translations - `worlds.yml` — World-specific state storage
Key Config Options
```yaml settings: enabled: true # Master toggle language: en-us # Locale default-state: true # Default for new worlds
item-blockability: enabled: true blocked-items: CRAFTING: - DIAMOND_SWORD - NETHERITE_* ```
---
PlaceholderAPI
CraftGuard provides dynamic placeholders:
World State
- `%craftguard_world_state%` — Current world state (enabled/disabled) - `%craftguard_world_state_<type>%` — Specific feature state - `%craftguard_world_<world>_<type>%` — Any world's state
Stats
- `%craftguard_stats_global_total%` — Total blocks - `%craftguard_stats_type_<type>_total%` — Blocks by type - `%craftguard_stats_world_<world>_total%` — Blocks by world
---
Developers
- Java 21 — Built for the latest 1.21 builds using modern Paper standards. - Java 21 — Leveraging LTS Java features for stable server-side execution.
Building
```bash git clone https://github.com/itzzjustmateo/CraftGuard.git cd CraftGuard mvn clean package ```
API Usage
```java CraftGuard plugin = CraftGuard.getInstance(); ConfigManager cm = plugin.getConfigManager();
// Check if feature is enabled boolean craftingEnabled = cm.isFeatureEnabled("survival", "crafting");
// Set feature state cm.setFeatureEnabled("survival", "furnace", false); ```
---
License
See LICENSE.md. Attribution required for derivative works.
---
Support
- Chat: Chat: - Chat: %%MD1%% - Chat: %%MD2%%