CorePlugins Wiki
Support Discord
  • Welcome
  • Info
    • Introduction
    • Key Concepts
    • FAQ
    • Changelog
  • Usage
    • Installation
    • Configuration
    • Commands & Permissions
    • Creating Custom Items
      • Basic Item Format
      • Namespace System
    • GUI System
    • Tips/Best Practices
    • Troubleshooting
    • Languages
Powered by GitBook
On this page
  1. Usage

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:

plugins/CoreItems/customs/<namespace>/customs.yml

• 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.

PreviousCommands & PermissionsNextBasic Item Format

Last updated 20 days ago