Sueta

CraftGuard

2.2.0

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

·Config
  1. 2.2.0latest[2.2.0] - 2026-04-03Apr 3, 2026
    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
    55 downloads
  2. 2.1.0[2.1.0] - 2026-03-21Mar 21, 2026
    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.
    19 downloads
  3. 2.0.0[2.0.0] - 2026-03-09Mar 11, 2026
    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.
    19 downloads
  4. 1.9.1[1.9.1] - 2026-03-08Mar 9, 2026
    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.
    17 downloads
  5. 1.9.0[1.9.0] - 2026-03-06Mar 8, 2026
    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.
    11 downloads
  6. 1.8.0[1.8.0] - 2026-03-04Mar 6, 2026
    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.
    8 downloads
  7. 1.7.0[1.7.0] - 2026-03-02Mar 4, 2026
    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.
    13 downloads
  8. 1.6.0[1.6.0] - 2026-03-02Mar 2, 2026

    [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.
    15 downloads
  9. 1.5.1[1.5.0] - 2026-02-21Feb 21, 2026
    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).
    12 downloads
  10. 1.5.0[1.5.0] - 2026-02-21Feb 21, 2026
    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.
    11 downloads
  11. 1.4.0[1.4.0] - 2026-02-13Feb 21, 2026
    Added
    - Interactive GUI system: New chest-based interface for managing features. - Accessible via /cg (without arguments). - Categorized into Workstations (Crafting, Anvil, Furnace, etc.) and Portals (Nether, End). - Visual indicators: Green Wool for enabled, Red Wool for disabled. - Automatic pagination and centered item layouts. - Added a "Back to Main Menu" navigation option in all sub-GUIs.
    Changed
    - Command /cg now opens the GUI for players; /cg help remains chat-based. - Upgraded project version to 1.4.0. - Refactored CraftGuardCommand to integrate with the new GUIManager.
    10 downloads
  12. 1.3.0[1.3.0] - 2026-02-10Feb 11, 2026
    Added
    - Container Control: New module to restrict access to chests, shulker boxes, and other containers. - WorldGuard Integration: Support for region-based bypasses using the custom flag cg-interaction-bypass. - Async Audit Logging: High-performance logging system to track blocked interactions in audit_log.txt. - Added craftguard.bypass.containers permission.
    Changed
    - Upgraded project version to 1.3.0. - Refactored internal listener logic for better extensibility.
    15 downloads
  13. 1.2.2[1.2.2] - 2026-02-09Feb 9, 2026
    Added
    - Smarter Placeholder Parsing: Improved world name detection in PAPI placeholders to correctly handle world names containing underscores (e.g., world_nether, my_custom_world). - Standardized Defaults: Updated worlds.yml template to ensure features like anvil default to true, preventing accidental global blocks after installation.
    Changed
    - Thread-Safe Architecture: Refactored ConfigManager to use ConcurrentHashMap for all internal world states, ensuring reliable performance in multi-threaded environments. - Tab-Completion Logic: Refined tab completion to prevent irrelevant feature suggestions when using subcommands like help or reload. - Feature Consistency: Standardized crafting-table and crafting under a unified crafting feature key across filters, listeners, and config.
    Fixed
    - Dead Code Cleanup: Removed unused fields and redundant special-case checks in command validation to improve maintainability. - Improved Disposal: Enhanced resource cleanup during plugin disable to eliminate potential memory leaks from stale references.
    13 downloads
  14. 1.2.1[1.2.1] - 2026-02-09Feb 9, 2026
    Added
    - Enhanced Placeholder Support: Now supports both {placeholder} and <placeholder> formats in custom messages for greater flexibility. - Maintenance: Removed unused skills folder from the repository for cleaner organization.
    Changed
    - Help Command Accessibility: /cg and /cg help can now be used by all players, regardless of their permissions. - Unified Feature Naming: Consolidated crafting-table and crafting under the single crafting feature key for consistency.
    Fixed
    - Message Placeholder Bug: Resolved an issue where {world} and {type} placeholders were not being replaced correctly in "feature-blocked" messages. - Resource Optimization: Ensured explicit cache clearing and resource disposal occur during plugin disable or reload to prevent potential memory leaks.
    13 downloads
  15. 1.2.0[1.2.0] - 2026-02-09Feb 9, 2026
    Added
    - Granular Feature Control: Every workstation and portal now has its own toggle. - Supported types: crafting, nether-portal, end-portal, anvil, furnace, blast-furnace, smoker, enchanting, brewing, smithing, loom, cartography, grindstone, stonecutter. - New Command Syntax: Updated /cg <world> <type> <on|off|toggle> for better clarity and control. - Split Portal Control: Nether and End portals can now be toggled independently. - New Listeners: Implemented PortalListener and WorkstationListener for broad feature blocking. - Granular Bypass Permissions: Fixed permissions to craftguard.bypass.<type> or craftguard.bypass.*. - Granular Placeholders: Added new PAPI placeholders for all feature types. - %craftguard_world_state_<type>% - %craftguard_world_<worldname>_<type>%
    Changed
    - Hardcoded Permissions: Permissions are now hardcoded and removed from config.yml for consistency. - Redesigned Help Menu: cleaner layout and better readability. - World State Migration: automatically migrates existing worlds.yml to the new granular format.
    Fixed
    - Improved command validation and error messaging.
    9 downloads
  16. 1.1.1[1.1.1] - 2026-02-07Feb 7, 2026

    [1.1.1] - 2026-02-07

    Fixed
    - Crafting Bypass Bug: Changed default craftguard.bypass permission from op to false. - Fixes issue where server operators could not test crafting restrictions. - Operators now need to explicitly grant themselves the bypass permission. ---

    [1.1.0] - 2026-02-07

    Added
    - Reload Command: Added /cg reload to reload configuration without restarting the server. - Requires craftguard.admin permission. - Reloads config.yml and worlds.yml instantly. Full Changelog: https://github.com/itzzjustmateo/CraftGuard/compare/BETA-…
    15 downloads
  17. 1.0.2-SNAPSHOT[1.0.2] - 2026-02-01Feb 1, 2026
    Fixed
    - Critical Lifecycle Issues: Fixed memory leaks and stale references during plugin reloads - Static instance now properly nullified on disable - Explicit event listener unregistration to prevent duplicate events - Added null-safe checks in onDisable to prevent crashes - State Persistence Improvements: - Changed worldStatesCache to ConcurrentHashMap for thread safety - Fixed PlaceholderAPI stale references by changing persist() to false - Re-checks PAPI availability on every reload/enable - Code Quality: - Removed unused imports and fields - Updated versioning for consistency
    24 downloads
  18. 1.0.1-SNAPSHOT[1.0.1] - 2026-02-01Feb 1, 2026
    Added
    - Help Command System: Added /cg and /cg help commands that display plugin information - Shows plugin version dynamically - Lists all available commands - Displays configured permission nodes - Fully customizable help messages in config.yml as a list format - Includes "help" in tab completion suggestions
    Changed
    - Help Messages Format: Restructured help section in config.yml from individual keys to a cleaner list format - Before: help-header, help-description, etc. - After: Single help: list with all lines - Easier to customize and maintain - Supports empty lines with "" - Message Prefix Configuration: Changed error message reference from paper-plugin.yml to plugin.yml - Updated version from 1.0.0-SNAPSHOT to 1.0.1-SNAPSHOT
    Fixed
    - Improved consistency in configuration file documentation
    18 downloads

Similar projects

Config →