NCustomItems is a powerful and fully configurable custom items plugin that allows you to create unique weapons, tools, armor and special items without writing any code.
Using a simple YAML configuration system, you can combine custom abilities, triggers, attributes, particles, sounds and visual effects to build engaging gameplay experiences for your players. Whether you're creating RPG equipment, PvP weapons, survival rewards or event items, NCustomItems gives you complete control over how every item behaves.
With support for advanced triggers, cooldowns, usage limits, activation chances, region protection and a built-in GUI, the plugin provides everything needed to design powerful and balanced custom items while remaining lightweight, fast and easy to maintain.
- 100% Configurable - Define every item entirely in YAML, no code needed.
- 60+ Ability Actions - Effects, damage, knockback, teleports, waves, summons, traps, healing and more.
- Many Triggers - Right/left/sneak click, hit entity, receive damage, passive hand/off-hand/armor, projectiles, mining.
- Item Attributes - Vanilla attribute modifiers per equipment slot (attack damage, max health, speed...).
- Enchants & Visuals - Custom enchants, glow, model data, names and lore.
- Cooldowns & Limits - Per-item cooldown, usage limit and activation chance.
- Region Protection - Block item abilities and targeting inside protected regions.
- Built-in GUI - Browse and click-to-receive items, with a fully configurable look.
- Sounds, Particles & Titles - Polished feedback for every activation.
- High Performance - Lightweight, event-driven and easy to maintain.
Complete list of presets: https://github.com/nussesindgesund/NCustomItem
| Command | Description |
|---|---|
/nci give <player> <item> <amount> | Gives the specified custom item to a player. (Permission: ncustomitems.give) |
/nci gui [page] | Opens a paginated GUI with every registered item — click to receive it. (Permission: ncustomitems.gui) |
/nci region loc1 | loc2 | Sets the two corners of a protected region at your current position. (Permission: ncustomitems.admin) |
/nci region create <name> | Creates a region in which items flagged with block-in-region are disabled. (Permission: ncustomitems.admin) |
/nci region remove <name> | Removes the specified protected region. (Permission: ncustomitems.admin) |
/nci reload | Reloads all configuration files and reloads every custom item. (Permission: ncustomitems.admin) |
/ncustomitem
YAML:
# Language file (loaded from /lang)
lang: pl
# Appearance of the /nci gui menu.
# Placeholders: [PAGE], [TOTAL], [COUNT], [ITEMS]. Colors: MiniMessage.
gui:
title: "<gold>✦ <white>Custom Items <gray>(page [PAGE]/[TOTAL])"
filler-material: GRAY_STAINED_GLASS_PANE
prev-page:
material: ARROW
name: "<red>« Previous page"
next-page:
material: ARROW
name: "<green>Next page »"
info:
material: BOOK
name: "<gold>Page [PAGE] / [TOTAL]"
# Registered items. Each entry points to a file in /customitems.
items:
example_custom_item:
enabled: true
file: example_custom_item.yml
YAML:
id: 'example_custom_item'
# Global item settings.
settings:
chance: 1.0 # 1.0 = 100% chance to trigger abilities
cooldown: 10 # cooldown in seconds
visual: true # show the vanilla cooldown animation
cooldownmessage: true # send a message when on cooldown
block-in-region: true # disable this item inside protected regions
allow-offhand: false # allow placing the item in the off-hand
# The physical item.
item:
material: DIAMOND_SWORD
name: "<#55FFFF><bold>Frost Blade</bold>"
lore:
- "<gray>Right-click to dash forward."
- "<gray>Your hits freeze the enemy."
model-data: 1001
usage: -1 # -1 = unlimited uses; N = item is consumed after N uses
unbreakable: true
glow: true
enchants:
sharpness: 5
unbreaking: 3
# Vanilla attribute modifiers, applied per equipment slot.
# slot: HAND | OFF_HAND | HEAD | CHEST | LEGS | FEET | ALL
attributes:
- type: GENERIC_ATTACK_DAMAGE
amount: 8.0
slot: HAND
- type: GENERIC_MAX_HEALTH
amount: 4.0 # +2 hearts while held
slot: HAND
# Sound played on activation.
sound:
enabled: true
type: 'ENTITY_PLAYER_ATTACK_SWEEP'
# Particles played on activation.
particles:
enabled: false
type: 'SNOWFLAKE'
# On-screen titles (damager = the user, victim = the target).
titles:
damager:
enabled: true
title: ""
subtitle: "<aqua>Frozen!"
fadeIn: 0
stay: 20
fadeOut: 0
victim:
enabled: false
title: ""
subtitle: ""
fadeIn: 0
stay: 20
fadeOut: 0
# Abilities: a trigger -> a list of actions.
# You can find all triggers and abilities in the documentation
abilities:
# Right-click: dash forward.
'RIGHT_CLICK':
action:
- type: DASH
target: ATTACKER
power: 2.5
vertical-boost: 0.3
# Hitting an entity: stun + slowness on the victim.
'HIT_ENTITY':
action:
- type: STUN
target: VICTIM
duration: 3
- type: EFFECT
target: VICTIM
effects:
- potion: SLOWNESS
amplifier: 2
duration: 4
Support & Community
Need help, found a bug, or want to suggest a feature?Join the Discord server below. Feedback and suggestions are reviewed, and improvements are included in future updates.
Join our Discord
