CraftGuard
2.2.0A lightweight, highly configurable Minecraft plugin for managing restrictions for workstations on a per-world basis.
CraftGuard
Granular, per-world management for crafting, workstations, containers, and portals across your Minecraft server network.
[!NOTE]
Project Evolution & Rebranding Notice
- Evolution: CraftGuard is the official successor to FlameAntiCraft.
- Future Rebrand: CraftGuard will soon transition to ServerGuard under the VOMLabs Organization. This rebrand will include a complete plugin rewrite for maximum performance and reliability, and Maven support will be deprecated in favor of Gradle (Kotlin DSL).
Overview
CraftGuard provides precise control over player interactions down to individual world environments. Block crafting tables, restrict ender chests, or lock down portal dimensions per world. This is ideal for survival hubs, creative plots, minigame arenas, and adventure maps.
Key Highlights
- Per-World Toggles: Configure completely independent rules for every world on your network.
- Workstation Protection: Control 15+ workstation types (Anvils, Furnaces, Grindstones, Smithing Tables, etc.).
- Container Security: Restrict usage of Chests, Ender Chests, Shulker Boxes, and specialized containers.
- Portal Management: Separately toggle Nether and End portal transitions.
- Flexible Storage: Native support for YAML, H2, MySQL, MariaDB, PostgreSQL, MongoDB, and Redis.
- GUI & Smart Commands: Complete visual management interface alongside fast tab-completed commands.
- Localization & Placeholders: Dynamic PlaceholderAPI integration and multi-language support.
Supported Features Matrix
| Category | Supported Mechanics & Block Types |
|---|---|
| Core Mechanics | crafting, nether-portal, end-portal, lockdown |
| Workstations | anvil, furnace, blast-furnace, smoker, enchanting, brewing, smithing, loom, cartography, grindstone, stonecutter |
| Containers | chest, trapped-chest, ender-chest, copper-chest, shulker-box |
Quick Setup & Installation
Requirements
- Server: Paper 1.21.x (or forks like Purpur, Folia)
- Java: Version 21 or higher
- Optional: PlaceholderAPI (for dynamic placeholders), WorldGuard (for region-based bypasses)
[!WARNING]
Version Support Notice
CraftGuard does NOT officially support any26.x.xor older versions at this time. Full official support and enhanced reliability will arrive alongside the upcoming ServerGuard rebrand and rewrite.
Installation
- Download the latest
craftguard-X.X.X.jarfrom Modrinth. - Place the
.jarfile in your server'splugins/directory. - Restart your server to generate configuration files.
- Manage settings in-game via
/cgor editplugins/CraftGuard/config.yml.
Quick Command Examples
# Block crafting in the "lobby" world
/cg lobby crafting off
# Enable nether portals in the "survival" world
/cg survival nether-portal on
# Open the interactive management GUI
/cg
Commands & Permissions
Commands
| Command | Description | Permission |
|---|---|---|
/cg | Opens the main interactive management GUI | craftguard.admin |
/cg help | Displays the help menu | craftguard.admin |
/cg <world> <feature> <on/off> | Changes a specific feature state in a world | craftguard.admin |
/cg reload | Reloads plugin configurations and locales | craftguard.admin |
/cg export | Exports settings to a backup file | craftguard.admin |
/cg import | Imports settings from a file | craftguard.admin |
/cg migrate [copy] | Copies or moves configuration between worlds | craftguard.admin |
Permissions
| Permission | Description | Default |
|---|---|---|
craftguard.admin | Grants full access to all CraftGuard commands and GUI | OP |
craftguard.bypass.* | Bypasses all world restrictions | false |
craftguard.bypass.<feature> | Bypasses a specific interaction restriction (e.g., craftguard.bypass.anvil) | false |
Configuration
Settings are saved to plugins/CraftGuard/*.yml.
settings:
enabled: true # Global master toggle
language: en-us # Active locale file
default-state: true # Default rule state for newly created worlds
item-blockability:
enabled: true
blocked-items:
CRAFTING:
- DIAMOND_SWORD
- NETHERITE_*
PlaceholderAPI Integration
Expose real-time feature states and statistics to scoreboards, tablists, or holograms. (Replace <world> and <feature> with your specific values, e.g., %craftguard_world_survival_furnace%).
World States
%craftguard_world_state%— State of the current world (enabled/disabled).%craftguard_world_state_<feature>%— Feature state in the current world.%craftguard_world_<world>_<feature>%— Feature state in a specific world.
Statistics
%craftguard_stats_global_total%— Total blocked interactions network-wide.%craftguard_stats_type_<feature>_total%— Total blocked interactions for a specific feature type.%craftguard_stats_world_<world>_total%— Total blocked interactions in a specific world.
Developer API
Build against CraftGuard using modern Paper standards.
[!NOTE]
Upcoming Changes: When CraftGuard transitions to ServerGuard, the plugin will undergo a complete rewrite, the same will hapen to its API.
Build Setup (Maven)
<repositories>
<repository>
<id>jitpack.io</id>
<url>https://jitpack.io</url>
</repository>
</repositories>
<dependencies>
<dependency>
<groupId>com.github.itzzjustmateo</groupId>
<artifactId>CraftGuard</artifactId>
<version>VERSION</version> <!-- Replace with the actual version tag -->
<scope>provided</scope>
</dependency>
</dependencies>
Alternatively, clone and build locally:
git clone https://github.com/itzzjustmateo/CraftGuard.git
cd CraftGuard
mvn clean package
API Usage
CraftGuard plugin = CraftGuard.getInstance();
ConfigManager configManager = plugin.getConfigManager();
// Check if a feature is enabled in a world
boolean isCraftingEnabled = configManager.isFeatureEnabled("survival", "crafting");
// Set a feature state programmatically
configManager.setFeatureEnabled("survival", "furnace", false);
Support & Community
Bug Reports: GitHub Issues
Feature Requests: GitHub Discussions
Discord Support: Join our Discord Server
Similar projects
Config →VeinMiner
Mine the whole vein on mining a single ore/block. Make the tedious mining experience to something satisfying and fun! FTB Ultimine alternative
99.3MSueta
Let Me Despawn
Improves performance by tweaking mob despawn rules. Say bye to pesky unintentional persistent mobs.
25MSueta
VeinMiner Enchantment
Veinminer Addon - Adds vineminer enchantment to enchanting tables. Only tools with the enchantment can veinmine
18MSueta
JourneyMap
Real-time map used for mapping in-game or your browser as you explore.
14.7MSueta
WorldEdit
A Minecraft Map Editor... that runs in-game! With selections, schematics, copy and paste, brushes, and scripting. Use it in creative, or use it temporarily in survival.
11.6MSueta
Emotecraft
Create your own emotes in Minecraft.
7.5MSueta