COWMODSКаталог модов

CraftGuard

A lightweight, highly configurable Minecraft plugin for managing restrictions for workstations on a per-world basis.

Автор: ItzzNotMateo3661обновлён 3 апр. 2026 г.
Механики игрыУправление

Описание

CraftGuard Banner

CraftGuard

Granular, Per-World Protection for Minecraft Servers

Minecraft Paper Java 21+ Per-World Protection WorldGuard Integration

CraftGuard gives you precise control over crafting, workstations, containers, and portals across individual Minecraft worlds. Built for flexible server management, it's ideal for survival hubs, creative plots, minigame arenas, and adventure maps.


Project Evolution & Rebranding

  • Successor: CraftGuard is the official successor to FlameAntiCraft.
  • Upcoming Rebrand: CraftGuard will transition to ServerGuard* under the VOMLabs organization. The transition includes a complete rewrite focused on performance and reliability, with Maven support being deprecated in favor of Gradle with Kotlin DSL.

Features

Per-World Protection

Configure independent rules for every world. Tailor interactions to survival worlds, creative plots, lobbies, and minigame instances.

Workstation Control

Manage workstation access individually, including:

anvil, furnace, blast-furnace, smoker, enchanting, brewing, smithing, loom, cartography, grindstone, stonecutter.

Container Security

Restrict interactions with chests, trapped chests, ender chests, copper chests, and shulker boxes.

Portal Management

Enable or disable Nether and End portal transitions independently for each world.

Flexible Storage

Supports multiple storage backends, including YAML, H2, MySQL, MariaDB, PostgreSQL, MongoDB, and Redis.

Interactive Management GUI

Manage settings through the /cg interface, with commands for quick toggles, explicit configuration, imports, exports, and world migration.

Integrations & Localization

Supports PlaceholderAPI for dynamic placeholders, optional WorldGuard region-based bypasses, and multiple languages.


Supported Features

CategoryFeature Types
Core mechanicscrafting, nether-portal, end-portal, lockdown
Workstationsanvil, furnace, blast-furnace, smoker, enchanting, brewing, smithing, loom, cartography, grindstone, stonecutter
Containerschest, trapped-chest, ender-chest, copper-chest, shulker-box

Installation

Requirements

  • Server: Paper 1.21.x or compatible forks such as Purpur and Folia
  • Java: 21 or higher
  • Optional: PlaceholderAPI for dynamic placeholders and WorldGuard for region-based bypasses

[!WARNING] Version support: CraftGuard does not officially support versions 26.x.x or older at this time. Official support and reliability improvements are planned for the upcoming ServerGuard rebrand and rewrite.

Setup

  1. Download the latest craftguard-X.X.X.jar from Modrinth.
  2. Place the JAR in your server's plugins/ directory.
  3. Restart your server to generate the configuration files.
  4. Configure the plugin in plugins/CraftGuard/config.yml.
  5. Open the management interface using /cg.

Quick Commands

# Disable crafting in the lobby world
/cg lobby crafting off

# Enable Nether portals in the survival world
/cg survival nether-portal on

# Open the management GUI
/cg

Commands & Permissions

Commands

CommandDescriptionPermission
/cgOpen the management GUIcraftguard.admin
/cg helpDisplay the help menucraftguard.admin
/cg <world> <feature> <on/off>Change a feature's state in a worldcraftguard.admin
/cg reloadReload plugin configuration and localescraftguard.admin
/cg exportExport settings to a backup filecraftguard.admin
/cg importImport settings from a filecraftguard.admin
/cg migrate [copy]Copy or move configuration between worldscraftguard.admin

Permissions

PermissionDescriptionDefault
craftguard.adminFull access to CraftGuard commands and GUIOP
craftguard.bypass.*Bypass all world restrictionsfalse
craftguard.bypass.<feature>Bypass a specific feature restrictionfalse

Configuration

Settings are stored in YAML files under plugins/CraftGuard/.

Example configuration:

settings:
  enabled: true
  language: en-us
  default-state: true

item-blockability:
  enabled: true
  blocked-items:
    CRAFTING:
      - DIAMOND_SWORD
      - NETHERITE_*

PlaceholderAPI Integration

Use PlaceholderAPI placeholders to display live feature states and interaction statistics in scoreboards, tablists, and holograms.

Replace <world> and <feature> with the relevant world name or feature type.

World States

PlaceholderDescription
%craftguard_world_state%State of the current world (enabled or disabled)
%craftguard_world_state_<feature>%State of a feature in the current world
%craftguard_world_<world>_<feature>%State of a feature in a specific world

Statistics

PlaceholderDescription
%craftguard_stats_global_total%Total blocked interactions across the network
%craftguard_stats_type_<feature>_total%Total blocked interactions for a feature type
%craftguard_stats_world_<world>_total%Total blocked interactions in a specific world

Developer API

Build integrations against CraftGuard using its API.

[!NOTE] Upcoming changes: The ServerGuard transition will include a complete plugin rewrite, and the API will be redesigned as part of that process. Integrations may need to be updated after the transition.

Maven Setup

<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>
        <scope>provided</scope>
    </dependency>
</dependencies>

Build from Source

Alternatively, clone the repository 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 whether crafting is enabled in the survival world
boolean isCraftingEnabled =
    configManager.isFeatureEnabled("survival", "crafting");

// Disable furnace interactions in the survival world
configManager.setFeatureEnabled("survival", "furnace", false);

Support & Community


CraftGuard AND ServerGuard Embed

Servers & Players


VOMLabs · Advanced Server Solutions

Built with care by ItzzMateo* and the VOMLabs team.


* Development & Open-Source Notice: The ServerGuard repository* and Modrinth project already exist as drafts and are actively being developed. However, the project is not currently open-source or released. The source code will become publicly available again only when the complete plugin is officially re-released. Until then, the repository's existence does not imply that the source code is available for public use.

Галерея

OUTDATED | Help MenuOUTDATED | Crafting Status - Enabled, Toggled, DisabledOUTDATED | Control Panel

Последние версии

Все версии →
release

[2.2.0] - 2026-04-03

2.2.0
3 апр. 2026 г.71Minecraft: 1.21, 1.21.1, 1.21.2, 1.21.3, 1.21.4, 1.21.5, 1.21.6, 1.21.7, 1.21.8, 1.21.9, 1.21.10, 1.21.11paper, purpur
Скачать
Что нового
### Added - **Item Blockability**: New feature allowing server owners to disable specific items from being crafted, smelted, blasted, smoked, stonecut, smithed, or brewed. - Configured via new `item-blockability` section in `config.yml` - Supports: CRAFTING, FURNACE, BLAST_FURNACE, SMOKER, SMITHING, STONECUTTER, BREWING, CAMPFIRE - Individual item blocking while keeping workstation enabled - Automatic handling of invalid/missing materials with warnings - **DataSerializer Utility**: New unified serialization system for YAML/JSON conversion - Automatic format detection - Shared schema handling across formats - GZIP compression support for exports - **Plugin Enable Toggle**: Master `settings.enabled` option to disable all features without removing the plugin - Preserves all configuration and stored data - No restart required - use `/cg reload` to apply changes - **Extended Translation System**: - Added 6 new languages: French, Portuguese, Italian, Russian, Japanese, Korean - English variants: `en-us` (default) and `en-uk` - Support for custom locale files in `locales/` folder - Automatic fallback to English for missing translation keys - Reload support for runtime language changes - **New Event Listeners**: - `FurnaceListener`: Handles furnace, blast furnace, smoker, and campfire smelting - `SmithingListener`: Handles smithing table recipes - `BrewingListener`: Handles brewing stand operations - **GitHub Actions CI/CD**: Automated build, test, and release workflows ### Changed - Project version updated to 2.2.0 - Config version bumped to 6 - Default language changed from `en` to `en-us` - PostgreSQL driver updated to 42.7.10 (security fix) - Jackson libraries added with proper shading relocations - README completely rewritten with modern styling - License updated with attribution requirements (Custom license with attribution required for derivative works) ### Fixed - MiniMessage tag closing order in locale files - Duplicate instance assignment in CraftGuard constructor - Duplicate MessageUtil initialization comment - Hardcoded FastStats token moved to config (`advanced.metrics-token`) - Removed duplicate language in LanguageManager defaults - Fixed test for reload command to mock static CraftGuard instance
release

[2.1.0] - 2026-03-21

2.1.0
21 мар. 2026 г.23Minecraft: 1.21, 1.21.1, 1.21.2, 1.21.3, 1.21.4, 1.21.5, 1.21.6, 1.21.7, 1.21.8, 1.21.9, 1.21.10, 1.21.11paper, purpur
Скачать
Что нового
### Added - **Modernized Text Engine**: Transitioned all plugin text and color codes to the **MiniMessage** format. - Replaced legacy `§` and `&` codes with rich tags (e.g., `<red>`, `<bold>`, `<gradient>`). - Added a MiniMessage converter link to `config.yml` for user convenience. - **Component-Based GUI Architecture**: Completely refactored the GUI system using a new `BaseMenu` abstract class. - Standardized GUI creation, opening, and click handling (via `MenuListener`). - Improved reusability and reduced boilerplate for all menu implementations. - **Multi-Language Expansion**: Added out-of-the-box support for 3 new languages: - 🇨🇳 **Chinese (Simplified)** (`zh.yml`) - 🇳🇱 **Dutch** (`nl.yml`) - 🇪🇸 **Spanish** (`es.yml`) - **Interactive Help System**: Added a dedicated **Help Button** to the main GUI that opens a detailed help menu. - **Enhanced Container Support**: Added **Shulker Box** support to the storage containers menu with a centered 5-item layout. - **Advanced PlaceholderAPI placeholders**: New detailed placeholders for restriction states and counters. - **Numeric states**: `%craftguard_world_state_numeric%` and `%craftguard_world_state_numeric_<type>%` returns 1/0 - **Raw boolean states**: `%craftguard_world_state_raw%` and `%craftguard_world_state_raw_<type>%` returns true/false - **Lockdown placeholders**: `%craftguard_lockdown%`, `%craftguard_lockdown_numeric%`, `%craftguard_lockdown_raw%` - **Global stats**: `%craftguard_stats_global_total%` returns total blocked interactions - **Type stats**: `%craftguard_stats_type_<type>_total%` returns blocks per type - **World stats**: `%craftguard_stats_world_<worldname>_total%` returns blocks per world - **Type-World stats**: `%craftguard_stats_type_<type>_world_<worldname>_count%` returns blocks per type and world - **Player stats**: `%craftguard_stats_player_<type>_count%` returns blocks per player for a type - **Player-World stats**: `%craftguard_stats_player_world_<type>_count%` returns blocks in player's current world for a type - **Feature counts**: `%craftguard_enabled_features_count%` and `%craftguard_disabled_features_count%` for current world ### Changed - **Environment Cleanup**: Removed `dotenv-java` dependency and hardcoded the **FastStats** token to eliminate the need for `.env` files. - **Menu Layouts**: Updated the Chests menu to center items for better visual balance across all resolutions. ### Fixed - **Registry Stability**: Resolved compilation errors in `RedisDAO.java` and fixed various small-caps styling inconsistencies.
release

[2.0.0] - 2026-03-09

2.0.0
11 мар. 2026 г.23Minecraft: 1.21, 1.21.1, 1.21.2, 1.21.3, 1.21.4, 1.21.5, 1.21.6, 1.21.7, 1.21.8, 1.21.9, 1.21.10, 1.21.11paper, purpur
Скачать
Что нового
### Added - **Registry-based API v2.0**: Completely redesigned API architecture for better extensibility. - Introduced `CraftGuardAPI` singleton for central access. - Implemented `GuardProvider` system for modular protection logic. - Added dynamic block protection registration via `ProtectionLogic`. - **Granular Container Protection**: New module to individually manage protection for different container types. - Specific toggles for: Chests, Trapped Chests, Ender Chests, and Copper Chests. - Added `ContainerProvider` and `ContainerListener` for efficient interaction handling. - **Enhanced Management GUI**: Expanded the interactive interface to support new features. - New **Chests** category and sub-menu for granular control. - Premium small-caps styling and status indicators extended to all new elements. ### Changed - **Internal Architecture**: Migrated all hardcoded workstation and portal logic to the new `Provider` system. - **Localization**: Updated default English and German locales with specific strings for all new container types. - **Improved Performance**: Unified interaction checking through the API, reducing redundant logic in listeners.
release

[1.9.1] - 2026-03-08

1.9.1
9 мар. 2026 г.19Minecraft: 1.21, 1.21.1, 1.21.2, 1.21.3, 1.21.4, 1.21.5, 1.21.6, 1.21.7, 1.21.8, 1.21.9, 1.21.10, 1.21.11paper, purpur
Скачать
Что нового
### Added - **FastStats Integration**: Added support for [FastStats](https://faststats.dev/) for anonymous plugin usage tracking. - Configurable via `settings.faststats` in `config.yml`. - Requires a valid token in the `.env` file in the server root directory. ### Changed - **Plugin Shutdown**: Added proper shutdown logic for FastStats to prevent `IllegalStateException` on reload.
release

[1.9.0] - 2026-03-06

1.9.0
8 мар. 2026 г.11Minecraft: 1.21, 1.21.1, 1.21.2, 1.21.3, 1.21.4, 1.21.5, 1.21.6, 1.21.7, 1.21.8, 1.21.9, 1.21.10, 1.21.11paper, purpur
Скачать
Что нового
### Added - **Multi-language Support**: Fully translatable messages and GUI strings. - Introduced `LanguageManager` for handling internal and external locale files. - Added `locales/` directory for secondary translation files. - Shipped with default English (`en.yml`) and German (`de.yml`) translations. - Configurable language via `settings.language` in `config.yml`. - **Refined Configuration**: All user-facing text moved from `config.yml` to locale files for better organization.
release

[1.8.0] - 2026-03-04

1.8.0
6 мар. 2026 г.12Minecraft: 1.21, 1.21.1, 1.21.2, 1.21.3, 1.21.4, 1.21.5, 1.21.6, 1.21.7, 1.21.8, 1.21.9, 1.21.10, 1.21.11paper, purpur
Скачать
Что нового
### Added - **Emergency Lockdown**: High-priority world protection system. - Blocks block break/place, PvP/PvE, and all command usage. - Broadcasts activation/deactivation messages to all players in the world. - Supports `craftguard.admin.lockdown` and `craftguard.lockdown.bypass` permissions.
release

[1.7.0] - 2026-03-02

1.7.0
4 мар. 2026 г.19Minecraft: 1.21, 1.21.1, 1.21.2, 1.21.3, 1.21.4, 1.21.5, 1.21.6, 1.21.7, 1.21.8, 1.21.9, 1.21.10, 1.21.11paper, purpur
Скачать
Что нового
### Added - **Recipe blacklist system**: Block specific recipes instead of disabling crafting entirely. - **Custom Deny Effects**: Massive new system for visual and auditory feedback. - **Sounds**: Play vanilla sounds when a feature is blocked. - **Titles**: Show big on-screen titles and subtitles. - **Action Bar**: Display discrete messages above the hotbar. - **Particles**: Spawn particles at the player's location. - All effects support MiniMessage, legacy colors, and PlaceholderAPI. ### Changed - Internal optimization: Replaced manual notification logic with `EffectUtil`. - Upgraded configuration synchronization to version 5.
release

[1.6.0] - 2026-03-02

1.6.0
2 мар. 2026 г.18Minecraft: 1.21, 1.21.1, 1.21.2, 1.21.3, 1.21.4, 1.21.5, 1.21.6, 1.21.7, 1.21.8, 1.21.9, 1.21.10, 1.21.11paper, purpur
Скачать
Что нового
## [1.6.0] - 2026-03-02 ### Added - **Flexible Database Abstraction Layer**: Support for multiple storage backends using the DAO pattern. - **H2** (Local SQL file), **MySQL**, **MariaDB**, **PostgreSQL**, and **MongoDB**. - Configurable via the new `storage` section in `config.yml`. - Automatic fallback to YAML if database connection fails. - **Improved Update Checker**: Detects and notifies when running a development or snapshot version. - **Database Export System**: `/cg export` command to dump current data into a compressed `.json.gz` format. - **Database Import System**: `/cg import <file>` command to restore data from a compressed format. - **Automatic Config Synchronization**: Existing `config.yml` files are now automatically updated with new keys on plugin startup.
release

[1.5.0] - 2026-02-21

1.5.1
21 февр. 2026 г.14Minecraft: 1.21, 1.21.1, 1.21.2, 1.21.3, 1.21.4, 1.21.5, 1.21.6, 1.21.7, 1.21.8, 1.21.9, 1.21.10, 1.21.11paper, purpur
Скачать
Что нового
### Added - All GUI display names, text, status indicators, labels, and category lores are now completely configurable in `config.yml` under the `gui` section. - Added `config-version: 3` representing the GUI rewrite. ### Changed - All player-facing messages in `config.yml` now default to small caps styled text for a more premium aesthetic. - Restricted `/cg help` and `/cg` base command entirely to admins (required: `craftguard.admin` permission).
release

[1.5.0] - 2026-02-21

1.5.0
21 февр. 2026 г.13Minecraft: 1.21, 1.21.1, 1.21.2, 1.21.3, 1.21.4, 1.21.5, 1.21.6, 1.21.7, 1.21.8, 1.21.9, 1.21.10, 1.21.11paper, purpur
Скачать
Что нового
### Added - **Modrinth Update Notifier**: Automatic version checking with admin join notifications. - Configurable via `updates.check-for-updates` and `updates.auto-download` in `config.yml`. - Auto-downloads new JAR to `plugins/update/` when 2+ minor versions behind. - Clickable download link in chat for manual updates. - **Premium GUI redesign**: Two-row layout with workstation icons and status indicators (Lime/Red Concrete). - MiniMessage small-caps styling for all GUI text. - Slot-based click detection; clicking icon or indicator toggles the feature. - Dark theme using `BLACK_STAINED_GLASS_PANE` background. - Added `config-version` field to `config.yml` for future migration support. - Added `/cg` (no args) entry and Features section to `/cg help`. ### Fixed - Fixed `NullPointerException` in all listeners when WorldGuard is not installed. ### Changed - Refactored package from `me.devflare` to `de.devflare`. - WorldGuard is now an optional soft dependency in `plugin.yml`. - Updated README with new features and corrected documentation. - Upgraded project version to 1.5.0.