DK CommandItems
1.8-SNAPSHOTDKCommandItems is a powerful Minecraft plugin that lets you create custom items with automatic commands, bringing new levels of interaction and creativity to your server
1.8-SNAPSHOTlatestDK CommandItems 1.8-SNAPSHOTJun 12, 2026 1.7-SNAPSHOTDK CommandItems 1.7-SNAPSHOTMar 15, 2026 1.6-SNAPSHOTDK CommandItems 1.6-SNAPSHOTFeb 7, 2026 DKCommandItems - Update v1.2.1 Changelog
New Features
Custom Display Names
- Set Custom Display Names: Added ability to set custom display names for items with full color code support - Color Code Support: Use&for color codes (e.g.,&c&lRed Bold,&6&lGolden,&a&oGreen Italic) - Optional Feature: Display names are completely optional - items work with or without them - Clear Option: Typeclearto remove a previously set display name - Cancel Option: Typecancelto cancel the display name operationGUI Improvements
- New Button: Added "Set Custom Display Name" button (paper icon) in Create Item GUI - Visual Feedback: Shows current display name status in button lore - Persistent Storage: Display names persist across GUI reopens using static storage - Better Layout: Reorganized GUI buttons for improved user experienceTechnical Changes
CreateItemGUI Class
- AddedplayerDisplayNamesstatic Map to store custom display names - New PAPER case handler for display name input - Display name is applied to item when creating the custom item - Proper cleanup of display names when player exits GUIColor Code Processing
- Automatic conversion of&to§for Minecraft color codes - Support for all standard Minecraft color codes (0-9, a-f) - Support for formatting codes (l=bold, m=strikethrough, n=underline, o=italic, r=reset)GUI Layout Updates
- Display name button added at slot 30 - Command block button moved to slot 32 - Single use toggle moved to slot 34 - Improved visual spacing and organizationHow to Use
Setting a Custom Display Name
1. Open Create Item GUI:/dkcommanditems→ "Create Custom Item" 2. Click the "Set Custom Display Name" button (paper icon) 3. Type your desired name in chat with color codes 4. The GUI will reopen showing your custom display name 5. Continue creating your item normallyColor Code Examples
Basic Colors:
With Formatting:&cRed Text &aGreen Text &9Blue Text &eYellow Text
Complex Names:&c&lRed Bold &a&oGreen Italic &9&nBlue Underline &e&mYellow Strikethrough&6&lLegendary Sword &c&lF&6&lI&e&lR&a&lE &b&lHealing &f&lPotionAvailable Color Codes
| Code | Color | Code | Format | |------|-------|------|--------| |&0| Black |&l| Bold | |&1| Dark Blue |&m|Strikethrough| |&2| Dark Green |&n| Underline | |&3| Dark Aqua |&o| Italic | |&4| Dark Red |&r| Reset | |&5| Dark Purple | | | |&6| Gold | | | |&7| Gray | | | |&8| Dark Gray | | | |&9| Blue | | | |&a| Green | | | |&b| Aqua | | | |&c| Red | | | |&d| Light Purple | | | |&e| Yellow | | | |&f| White | | |Bug Fixes
Display Name Persistence
- Fixed: Display names now persist when reopening the GUI - Fixed: Display names are properly applied to items when saved - Fixed: GUI correctly shows "None" when no display name is setGUI State Management
- Improved: Better handling of player data across GUI instances - Improved: Static storage ensures display names don't get lost - Improved: Proper cleanup when player exits or cancels
- Backward Compatible: All existing items continue to work normally - Optional Feature: Display names are completely optional - No Breaking Changes: Existing functionality remains unchanged - Server Compatibility: Works with Paper, Spigot, and Bukkit 1.20+Compatibility
Usage Examples
Example 1: Legendary Weapon
Display Name: &6&lLegendary Sword Item ID: LegendarySword Commands: effect give %player% strength 60 2Example 2: Healing Item
Display Name: &a&lHealing Potion Item ID: HealPotion Commands: effect give %player% regeneration 10 2Example 3: Rainbow Item
Display Name: &c&lR&6&la&e&li&a&ln&b&lb&9&lo&d&lw Item ID: RainbowStar Commands: give %player% diamond 10Example 4: Simple Name
Display Name: &bTeleport Stone Item ID: TPStone Commands: tp %player% 0 64 0
This update focuses on giving players more creative freedom with item customization. Future updates may include: - Custom lore lines - Item enchantment configuration - Item attribute modification - More placeholder optionsWhat's Next
1. Download the latest version (v1.2.1) 2. Stop your server 3. Replace the old plugin jar with the new one 4. Start your server 5. Enjoy the new custom display name feature!Installation
- Display names are optional - you can skip this step if you want - Display names are separate from item IDs (internal identifiers) - Color codes useImportant Notes
¤(the plugin converts automatically) - Typeclearto remove a display name - Typecancelto cancel the operation --- Version: 1.2.1 Release Date: 2024 Compatibility: Minecraft 1.20+ Required Java: 17+ Thank you for using DKCommandItems!1.5-SNAPSHOTDK CommandItems 1.5-SNAPSHOTFeb 4, 2026 1.4-SNAPSHOTDK CommandItems 1.4-SNAPSHOTFeb 3, 2026 1.3-SNAPSHOTDK CommandItems 1.3-SNAPSHOTFeb 3, 2026 DKCommandItems - Changelog v1.3
New Features
Customizable Lore System
- Toggle Default Lore: Addedshow-default-loreoption in config.yml to enable/disable the default plugin lore - Hidden Identifier: When disabled, only an invisible identifier is added to items - Custom Lore Freedom: Allows players to create items with fully customized lore without plugin information - Configuration: New setting in config.yml with comments in English, Portuguese, and SpanishCase-Insensitive Placeholders
- Flexible Placeholders: All placeholders now work regardless of capitalization - Supported Formats:%player%,%Player%,%PLAYER%,%PlAyEr%all work correctly - All Placeholders: Applies to all placeholders including%world%,%x%,%y%,%z%,%health%,%food%,%level%Bug Fixes
GUI Listener Management
- Fixed Duplicate Messages: Implemented GUIManager to prevent multiple listeners from being active simultaneously - Automatic Cleanup: Old GUI listeners are automatically unregistered when opening new GUIs - No More Duplicates: Resolved issues with duplicate messages when saving items, getting items, toggling settings, and listing commands - Centralized Control: All GUIs now use GUIManager.registerGUIListener() for proper listener managementSingle-Use Item Consumption
- Fixed Consumption Order: Single-use items are now consumed BEFORE executing commands - Prevents Loss: Solves the issue where items weren't consumed when using commands likekill %player%- Proper Verification: Added checks to ensure the item is still in hand before consumption - Debug Logging: Added logging to track item consumption for troubleshootingDelete Items GUI
- Fixed Item Detection: Improved item name extraction from display names and lore - Multi-Language Support: Detects items with "Name:", "Nome:", or "Nombre:" in lore - Display Name Parsing: Extracts item names from "[DELETAR]" or "[DELETE]" prefixes - Confirmation Dialog: Fixed confirmation GUI to use correct localized titles - Proper Deletion: Confirmation buttons now work correctly instead of giving itemsNullPointerException Fixes
- CreateItemGUI: Fixed null baseItem error by saving item reference before chat input - CommandsGUI: Added validation to prevent null item references - Error Messages: Added user-friendly error messages when item base is not foundLocalization
- English Lore: Changed hardcoded Portuguese lore to English in CustomItem class - Consistent Language: "Commands:" instead of "Comandos:", "Single use" instead of "Uso único" - Cleanup Detection: Removes both Portuguese and English lore lines when updating itemsTechnical Improvements
GUIManager Utility Class
- Centralized Management: New utility class to manage all GUI listeners - Active Listener Tracking: Maintains a set of active GUI listeners - Automatic Unregistration: Unregisters all previous listeners when registering a new one - Memory Efficient: Prevents listener accumulation and memory leaksListener Lifecycle
- isActive Flag: Added to all GUI classes to track listener state - HandlerList Cleanup: Proper use of HandlerList.unregisterAll() before opening new GUIs - Event Priority: Maintained EventPriority.HIGHEST for critical GUI events - Thread Safety: Proper use of SchedulerUtil for async operationsCode Quality
- Better Error Handling: Added try-catch blocks with informative error messages - Logging: Added debug logging for troubleshooting item consumption and GUI operations - Validation: Added null checks and validation before operations - Comments: Added explanatory comments in English for better code maintainabilityConfiguration Changes
config.yml
- Default: true (shows plugin information in lore) - When false: Only adds hidden identifier, preserves original item lore# Show default lore on custom items show-default-lore: true
- Backward Compatible: Items created with previous versions continue to work - Lore Detection: Recognizes both old (Portuguese) and new (English) lore formats - Automatic Migration: Old items work seamlessly with new system - No Data Loss: All existing items and configurations are preservedCompatibility
1.Known Issues Resolved
Duplicate messages when saving items 2.
Duplicate messages when getting items from GUI 3.
Duplicate messages when toggling single-use 4.
Duplicate messages when listing commands 5.
Single-use items not being consumed 6.
Items not consumed when using kill command 7.
Delete confirmation not working 8.
NullPointerException in CommandsGUI 9.
Portuguese lore showing in English mode 10.
Case-sensitive placeholder issues
- All GUI classes now use GUIManager for listener registration - Single-use items are consumed immediately before command execution - Placeholders are now case-insensitive for better user experience - Default lore is now in English for international compatibility - Delete confirmation GUI properly detects item names in all languagesNotes
1.2-SNAPSHOTDK CommandItems 1.2-SNAPSHOTFeb 3, 2026 After defining the item name, the GUI would freeze on papermc.1.1-SNAPSHOTDK CommandItems 1.1-SNAPSHOTJan 16, 2026 Added compatibility with Folia, added English league, and added get items only through dkci give in dkci.1.0-SNAPSHOTDK CommandItems 1.0-SNAPSHOTJun 16, 2025
Similar projects
Plugin →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
Simple Voice Chat
A working voice chat in Minecraft!
76.8MSueta
Chunky
Pre-generates chunks, quickly and efficiently
18.4MSueta
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