
DK CommandItems
DKCommandItems is a powerful Minecraft plugin that lets you create custom items with automatic commands, bringing new levels of interaction and creativity to your server
5293обновлён 12 июн. 2026 г.
Механики игрыОбщениеУтилиты
Описание
DKCommandItems is a Minecraft server plugin that allows you to create custom items with associated commands. When a player uses these items, specific commands are executed automatically, offering creative and functional possibilities for your server.
📌 Plugin Commands
/dkcommanditems or /dkci
- Description: Opens the main plugin interface.
- Permission:
dkcommanditems.admin - Usage: Main command to access all features.
/dkcommanditems give <player> <item>
- Description: Gives the specified custom item to a player.
/dkcommanditems reload
- Description: Reloads the plugin configuration.
🔑 Permissions
dkcommanditems.admin
- Description: Full access to all plugin features.
- Default:
op - Includes: Create, edit, delete items, and use all commands.
dkcommanditems.use
- Description: Allows players to use custom items.
- Default:
true(all players) - Required for: Activating commands when using custom items.
💡 Optional
- PlaceholderAPI: Support for advanced placeholders from other plugins.
Последние версии
Все версии →release
DK CommandItems 1.8-SNAPSHOT
1.8-SNAPSHOT12 июн. 2026 г.123Minecraft: 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.11folia, paper, purpur, spigot
release
DK CommandItems 1.7-SNAPSHOT
1.7-SNAPSHOT15 мар. 2026 г.115Minecraft: 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.11bukkit, folia, paper, purpur, spigot
release
DK CommandItems 1.6-SNAPSHOT
1.6-SNAPSHOT7 февр. 2026 г.66Minecraft: 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.11bukkit, folia, paper, purpur, spigot
Что нового
# 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**: Type `clear` to remove a previously set display name
- **Cancel Option**: Type `cancel` to cancel the display name operation
### GUI 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 experience
## 🔧 Technical Changes
### CreateItemGUI Class
- Added `playerDisplayNames` static 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 GUI
### Color 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 organization
## 📋 How 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 normally
### Color Code Examples
**Basic Colors:**
```
&cRed Text
&aGreen Text
&9Blue Text
&eYellow Text
```
**With Formatting:**
```
&c&lRed Bold
&a&oGreen Italic
&9&nBlue Underline
&e&mYellow Strikethrough
```
**Complex Names:**
```
&6&lLegendary Sword
&c&lF&6&lI&e&lR&a&lE
&b&lHealing &f&lPotion
```
### Available 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 set
### GUI 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
## 🔄 Compatibility
- **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+
## 📝 Usage Examples
### Example 1: Legendary Weapon
```
Display Name: &6&lLegendary Sword
Item ID: LegendarySword
Commands: effect give %player% strength 60 2
```
### Example 2: Healing Item
```
Display Name: &a&lHealing Potion
Item ID: HealPotion
Commands: effect give %player% regeneration 10 2
```
### Example 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 10
```
### Example 4: Simple Name
```
Display Name: &bTeleport Stone
Item ID: TPStone
Commands: tp %player% 0 64 0
```
## 🎯 What's Next
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 options
## 📦 Installation
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!
## ⚠️ Important Notes
- Display names are **optional** - you can skip this step if you want
- Display names are **separate** from item IDs (internal identifiers)
- Color codes use `&` not `§` (the plugin converts automatically)
- Type `clear` to remove a display name
- Type `cancel` to cancel the operation
---
**Version**: 1.2.1
**Release Date**: 2024
**Compatibility**: Minecraft 1.20+
**Required Java**: 17+
**Thank you for using DKCommandItems!** 🎨✨
release
DK CommandItems 1.5-SNAPSHOT
1.5-SNAPSHOT4 февр. 2026 г.26Minecraft: 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.11bukkit, folia, paper, purpur, spigot
release
DK CommandItems 1.4-SNAPSHOT
1.4-SNAPSHOT3 февр. 2026 г.15Minecraft: 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.11bukkit, folia, paper, purpur, spigot
release
DK CommandItems 1.3-SNAPSHOT
1.3-SNAPSHOT3 февр. 2026 г.25Minecraft: 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.11bukkit, folia, paper, purpur, spigot
Что нового
# DKCommandItems - Changelog v1.3
## 🆕 New Features
### Customizable Lore System
- **Toggle Default Lore**: Added `show-default-lore` option 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 Spanish
### Case-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 management
### Single-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 like `kill %player%`
- **Proper Verification**: Added checks to ensure the item is still in hand before consumption
- **Debug Logging**: Added logging to track item consumption for troubleshooting
### Delete 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 items
### NullPointerException 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 found
### Localization
- **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 items
## 🛠️ Technical 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 leaks
### Listener 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 operations
### Code 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 maintainability
## 📋 Configuration Changes
### config.yml
```yaml
# Show default lore on custom items
show-default-lore: true
```
- **Default**: true (shows plugin information in lore)
- **When false**: Only adds hidden identifier, preserves original item lore
## 🔄 Compatibility
- **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 preserved
## 🐛 Known Issues Resolved
1. ✅ 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
## 📝 Notes
- 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 languages
alpha
DK CommandItems 1.2-SNAPSHOT
1.2-SNAPSHOT3 февр. 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.11bukkit, folia, paper, spigot
Что нового
After defining the item name, the GUI would freeze on papermc.
release
DK CommandItems 1.1-SNAPSHOT
1.1-SNAPSHOT16 янв. 2026 г.36Minecraft: 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.11folia, paper
Что нового
Added compatibility with Folia, added English league, and added get items only through dkci give in dkci.
release
DK CommandItems 1.0-SNAPSHOT
1.0-SNAPSHOT16 июн. 2025 г.100Minecraft: 1.21.1, 1.21.2, 1.21.3, 1.21.4, 1.21.5bukkit, paper, purpur, spigot