Creating Custom Items
Overview
CoreItems uses a data-driven approach: instead of coding new items in Java, you declare each item’s properties—material, name, texture ID, stats, lore, and actions—in a single customs.yml
file per namespace. The plugin reads these files on startup (or via reload) and makes your items available via commands and the GUI.
Where to Define Items All definitions live in:
• Create one folder for each namespace (for logical grouping)
• Inside each, edit the one customs.yml
to list every item in that namespace
Key Concepts
Item Key: Unique identifier within its namespace (e.g.
magic_wand
)Display Name & Lore: Text shown to players (supports color codes & placeholders)
CustomModelData: Links to your resource-pack model variants
Attributes & Effects: Configure attack damage, speed, potion effects, etc.
Click Actions: Bind console commands or permissions checks to right- or left-click
Subpages • Basic Item Format – detailed breakdown of every config field and a full example • Namespace System – how folders and namespaces work to organize your items
Next Steps Proceed to Basic Item Format to see a working example and full field descriptions.
Last updated