◦•●❤♡ ᴄᴏɴᴛᴀᴄᴛ ꜱʜɪᴍᴍᴇʀᴇɴᴄᴇ#5219 ꜰᴏʀ ꜱᴜᴘᴘᴏʀᴛ ♡❤●•◦
Native Minecraft Version: 1.13
Tested Minecraft Versions: 1.8 / 1.9 / 1.10 / 1.11 / 1.12 / 1.13 / 1.14 / 1.15 / 1.16 / 1.17 / 1.18
Languages Supported: English, Chinese, Turkish, French, German, Italian, and Czech
Donation Link: https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=PXF7BKFZJEU6A
1.18 READY! Supports MC 1.8 — MC 1.18
CustomItems is the FIRST plugin that gives you INFINITE control over the behavior of new items you design — ALL FROM AN IN-GAME GUI. The only limit is your imagination!
DON'T MISS OUT!
Keep reading or join the Discord server to see how Custom Items can add NEW ITEMS and make your server completely customized, without ANY coding experience.
70+ Actions | 35+ Triggers | 60+ Conditions | Placeholders | Loops | Variables | Blocks | Textures | Infinite Possibilities
CustomItems is a highly customizable, easy to use plugin that allows you to add custom items and blocks to your Minecraft server, each with unique new textures and models (like custom wands and real custom ore blocks). It even has an automatic resource pack generator, so you can generate resource packs for your server with a simple command
CustomItems comes with a simple, full-featured in-game GUI for creating Custom Items, so you don't need to get your hands messy when creating new items!
→ Click here for a video of the GUI in action ←
Click Here to join the Discord Server
Keep reading to see just a few of the things you can do with Custom Items!
All of this is possible without any mods or coding experience. Click any one of the gifs for a full-size version.
CustomItems allows you to add custom recipes and triggers for both your custom items and Minecraft items. You can write triggers to happen when players do something with your item, and the plugin even hooks into Skript, so you can write your own Skripts to run when players do something with your item!
Here's just a short list of the many things you could make with this plugin, all with custom textures and models and without any mods:
Custom Tools with a working durability bar
Custom Armors with working durability
Custom Blocks
Custom Food and Drinks
Spell-casting wands
Naturally generating ores that drop minerals and work with fortune and silk touch!
Custom chests that can be unlocked with special keys
Make single-use or multiple-use loot crates that give players a random item
And many, many more things! If you have an idea but aren't sure if it's possible, just ask on the discord server or send me a PM!
You can even use CustomItems to easily and automatically generate a custom resource pack (or make your own resource pack) to give each of your custom items and custom blocks its OWN TEXTURE AND MODEL, without interfering with the normal Minecraft items! (Unfortunately not possible for Minecraft 1.8)
In addition, you can take advantage of fallback textures, so that even if a player doesn't have your server's resource pack, your custom items and blocks will appear like whatever native Minecraft item or block you find most fitting. Or, you can force players to download your server's resource pack with one change in the config.yml! (Fallback textures for blocks are available on ALL MC VERSIONS. Fallback textures for items are only supported for MC 1.14+)
If you have any questions about the plugin before downloading it, feel free to PM me. You could also post your message in the "Discussion" section of this resource so others could see our conversation.
CustomItems is the best items adder plugin for adding custom items and blocks with custom textures and models. You can make executable items with 30+ triggers, 50+ actions, placeholders, loops, and more. There's infinite possibilities with Custom Items.
Custom Items Discord Server
https://customitems.page.link/discord
Custom Items Wiki
https://github.com/jojodmo/CustomItems/wiki
Guide in Turkish
https://forum.gamer.com.tr/konu/custom-items-detayli-rehber.445485/
Custom armor textures/models aren't supported by Minecraft yet without affecting other armors, so, unfortunately, aren't possible with any plugin alone. You can add custom models to your custom armors easily if players have OptiFine installed.
Regardless, you can still make custom armors with working durability, and give them custom appearances by changing the dye color.
Remember — all other custom textures and models are possible without ANY mods — players don't even need to install OptiFine! It's only needed for armor models.
This plugin is based off of a plugin I created for my own server. Although the commands are not the same, the GUIs are. You can connect to the test server at play.podzol.net, and get a list of the custom items using /items — this command is equivilent to CustomItem's /customitem list. You can click on the custom items to see recipes and related items.
NO MODS or external plugins needed! All you need is this plugin!
Create Custom Items in a simple in-game GUI
Design completely new items/food/tools with new textures and models, without mods or replacing any items (Custom textures available on MC 1.9 and above)
Make custom tools with any amount of durability you want, and have a working durability bar
Design any item you want by simply creating a new yml file!
Quickly and automatically generate a resource pack that has your custom item and block textures included. Just type /cui resourcepack generate
Write ultra-customizeable triggers and actions for your items and blocks! Check out this page on the wiki for a list of everything you can do!
Write triggers for native Minecraft items and blocks!
Add REAL custom blocks/ores to your server without replacing native blocks.
Make real new ores that drop minerals and generate in your world!
Make custom recipes for both your custom items and native Minecraft items
Design your custom recipes using the simple in-game GUI — do everything from in-game!
Design crafting recipes with an in-game GUI — no configuration needed, at all!
Item versions! Easily update all old versions of your custom item to the new one — no need to track down items with spelling mistakes or the wrong texture!
Adds item information GUIs so players can get info about both your custom items/blocks and native items/blocks, including recipes, related items, and more!
By utilizing the "run console commands" custom action, you can hook into other plugins for endless possibilities.
Skript support! You can have triggers run Skripts, give players Custom Items in Skript, and interact with Custom Items in Skript! See the wiki for more info
Uses NBT tags, so players can modify items however they like and they'll still be your custom item!
Add fallback textures for items and blocks — even if a player doesn't have your resource pack, they'll see the item or block as whatever Minecraft thing you find most fitting (Fallback textures only possible for MC 1.14 and above for items and MC 1.9 and above for blocks)
ItemBridge Support - Use your Custom Items in any other plugin that supports ItemBridge
Developer API - Check if an item is a custom item and get a Custom Item ItemStack, with only a few lines of code!
That's just a few of the many features in Custom Items! If you have any questions, or have something that you'd like but don't see in the plugin, just post about it in the discussion section and I'll get to work!
Other features:
DEVELOPER API — If you want Custom Items to be supported by another plugin, just ask the developer to add the Custom Items API to their plugin. Developers, more information about the API can be found here: https://github.com/jojodmo/CustomItems/wiki/Developer-API
To create your first custom item or block, all you have to do is type /cui create in chat. This will open a GUI where you can completely customize your item's attributes, add or edit crafting recipes, and even modify it's behavior using triggers and actions.
If you're an advanced user, you could also manually edit item YML files. Check out the spoiler below for more info
Adding Custom Textures to Items
For help adding custom textures to items, check out the wiki at https://github.com/jojodmo/CustomItems/wiki/Adding-Custom-Textures-to-Items
Adding Custom Textures to Blocks
Check out the wiki at https://github.com/jojodmo/CustomItems/wiki/Adding-Custom-Textures-to-Blocks for a tutorial on adding custom textures to blocks
Using CustomItems with Skript
Check out the wiki at https://github.com/jojodmo/CustomItems/wiki/Skript-Integration for more info about using CustomItems with Skript
Other Supported Plugins
ItemBridge — https://polymart.org/resource/4/ItemBridge
Drupi — https://www.spigotmc.org/resources/drupi.65706/
World Guard — https://dev.bukkit.org/projects/worldguard
My Other Resources
More Custom Items Information
More information about commands, installation, and configuration are below, but you should really check out the wiki at https://github.com/jojodmo/CustomItems/wiki, which is a lot more up to date
language
The language for the plugin. Custom Items currently supports English (en), Chinese (cn), German (de), Italian (it), and Czech (cz)
Default: en[/SPOILER]
Native Minecraft Version: 1.13
Tested Minecraft Versions: 1.8 / 1.9 / 1.10 / 1.11 / 1.12 / 1.13 / 1.14 / 1.15 / 1.16 / 1.17 / 1.18
Languages Supported: English, Chinese, Turkish, French, German, Italian, and Czech
Donation Link: https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=PXF7BKFZJEU6A
1.18 READY! Supports MC 1.8 — MC 1.18
CustomItems is the FIRST plugin that gives you INFINITE control over the behavior of new items you design — ALL FROM AN IN-GAME GUI. The only limit is your imagination!
DON'T MISS OUT!
Keep reading or join the Discord server to see how Custom Items can add NEW ITEMS and make your server completely customized, without ANY coding experience.
70+ Actions | 35+ Triggers | 60+ Conditions | Placeholders | Loops | Variables | Blocks | Textures | Infinite Possibilities
CustomItems is a highly customizable, easy to use plugin that allows you to add custom items and blocks to your Minecraft server, each with unique new textures and models (like custom wands and real custom ore blocks). It even has an automatic resource pack generator, so you can generate resource packs for your server with a simple command
CustomItems comes with a simple, full-featured in-game GUI for creating Custom Items, so you don't need to get your hands messy when creating new items!
→ Click here for a video of the GUI in action ←
Click Here to join the Discord Server
Keep reading to see just a few of the things you can do with Custom Items!
All of this is possible without any mods or coding experience. Click any one of the gifs for a full-size version.
CustomItems allows you to add custom recipes and triggers for both your custom items and Minecraft items. You can write triggers to happen when players do something with your item, and the plugin even hooks into Skript, so you can write your own Skripts to run when players do something with your item!
Here's just a short list of the many things you could make with this plugin, all with custom textures and models and without any mods:
Custom Tools with a working durability bar
Custom Armors with working durability
Custom Blocks
Custom Food and Drinks
Spell-casting wands
Naturally generating ores that drop minerals and work with fortune and silk touch!
Custom chests that can be unlocked with special keys
Make single-use or multiple-use loot crates that give players a random item
And many, many more things! If you have an idea but aren't sure if it's possible, just ask on the discord server or send me a PM!
You can even use CustomItems to easily and automatically generate a custom resource pack (or make your own resource pack) to give each of your custom items and custom blocks its OWN TEXTURE AND MODEL, without interfering with the normal Minecraft items! (Unfortunately not possible for Minecraft 1.8)
In addition, you can take advantage of fallback textures, so that even if a player doesn't have your server's resource pack, your custom items and blocks will appear like whatever native Minecraft item or block you find most fitting. Or, you can force players to download your server's resource pack with one change in the config.yml! (Fallback textures for blocks are available on ALL MC VERSIONS. Fallback textures for items are only supported for MC 1.14+)
If you have any questions about the plugin before downloading it, feel free to PM me. You could also post your message in the "Discussion" section of this resource so others could see our conversation.
CustomItems is the best items adder plugin for adding custom items and blocks with custom textures and models. You can make executable items with 30+ triggers, 50+ actions, placeholders, loops, and more. There's infinite possibilities with Custom Items.
Custom Items Discord Server
https://customitems.page.link/discord
Custom Items Wiki
https://github.com/jojodmo/CustomItems/wiki
Guide in Turkish
https://forum.gamer.com.tr/konu/custom-items-detayli-rehber.445485/
Custom armor textures/models aren't supported by Minecraft yet without affecting other armors, so, unfortunately, aren't possible with any plugin alone. You can add custom models to your custom armors easily if players have OptiFine installed.
Regardless, you can still make custom armors with working durability, and give them custom appearances by changing the dye color.
Remember — all other custom textures and models are possible without ANY mods — players don't even need to install OptiFine! It's only needed for armor models.
NO MODS or external plugins needed! All you need is this plugin!
Create Custom Items in a simple in-game GUI
Design completely new items/food/tools with new textures and models, without mods or replacing any items (Custom textures available on MC 1.9 and above)
Make custom tools with any amount of durability you want, and have a working durability bar
Design any item you want by simply creating a new yml file!
Quickly and automatically generate a resource pack that has your custom item and block textures included. Just type /cui resourcepack generate
Write ultra-customizeable triggers and actions for your items and blocks! Check out this page on the wiki for a list of everything you can do!
Write triggers for native Minecraft items and blocks!
Add REAL custom blocks/ores to your server without replacing native blocks.
Make real new ores that drop minerals and generate in your world!
Make custom recipes for both your custom items and native Minecraft items
Design your custom recipes using the simple in-game GUI — do everything from in-game!
Design crafting recipes with an in-game GUI — no configuration needed, at all!
Item versions! Easily update all old versions of your custom item to the new one — no need to track down items with spelling mistakes or the wrong texture!
Adds item information GUIs so players can get info about both your custom items/blocks and native items/blocks, including recipes, related items, and more!
By utilizing the "run console commands" custom action, you can hook into other plugins for endless possibilities.
Skript support! You can have triggers run Skripts, give players Custom Items in Skript, and interact with Custom Items in Skript! See the wiki for more info
Uses NBT tags, so players can modify items however they like and they'll still be your custom item!
Add fallback textures for items and blocks — even if a player doesn't have your resource pack, they'll see the item or block as whatever Minecraft thing you find most fitting (Fallback textures only possible for MC 1.14 and above for items and MC 1.9 and above for blocks)
ItemBridge Support - Use your Custom Items in any other plugin that supports ItemBridge
Developer API - Check if an item is a custom item and get a Custom Item ItemStack, with only a few lines of code!
That's just a few of the many features in Custom Items! If you have any questions, or have something that you'd like but don't see in the plugin, just post about it in the discussion section and I'll get to work!
Other features:
DEVELOPER API — If you want Custom Items to be supported by another plugin, just ask the developer to add the Custom Items API to their plugin. Developers, more information about the API can be found here: https://github.com/jojodmo/CustomItems/wiki/Developer-API
To create your first custom item or block, all you have to do is type /cui create in chat. This will open a GUI where you can completely customize your item's attributes, add or edit crafting recipes, and even modify it's behavior using triggers and actions.
If you're an advanced user, you could also manually edit item YML files. Check out the spoiler below for more info
Wiki: https://github.com/jojodmo/CustomItems/wiki
Explanation by example is likely the best way to learn how to add custom items. Once you've looked over the default item.yml files generated after you install CustomItems, take a look at the quickstart guide in the spoiler below.
Once you're pretty comfortable with the quick-start guide and CustomItems, take a look at the item.yml quick reference below, which lists everything that you can do with CustomItems.
To make a new custom item, create a new file in the items directory of the plugin folder, and add information about the item in this file. The file name will serve as the key of the item, and must be unique, and must not be the same as a Minecraft material ID. Any file prefixed with two underscores, like _ _ignore.yml, will be ignored.
For example, compressedCobblestone, compressedDirt, and magicWand are valid ids for custom items (and to create them, you would create the files compressedCobblestone.yml, compressedDirt.yml, and magicWand.yml, respectively), whereas diamond or grass are not. This key can be used to reference the item in your item.yml files
Adding custom recipes and actions to native Minecraft items is very similar. Instead, make the key a minecraft material ID (a list of materials is available here https://hub.spigotmc.org/javadocs/spigot/org/bukkit/Material.html), and omit canBeUsedGenerically, canBePlaced, and item from below. Additionally, make sure to add native: true under key to tell the plugin that you're adding information to a native Minecraft item.
Under this key, add the following:
name
string — REQUIRED
The friendly name of the custom item
canBeUsedGenerically
boolean — OPTIONAL — default: false
Whether or not this custom item can be used in place of its native Minecraft counterpart. For example, if the item you create below is cobblestone, and this were set to true, this custom item could be used in crafting recipes in place of cobblestone.
It is recommended that you keep this false and do not set it.
canBePlaced
boolean — OPTIONAL — default: if canBeUsedGenerically is set, then the same as canBeUsedGenerically. If it is not set, then true
If this custom item is a block, whether or not it can be placed. For example, if the item you create below is cobblestone, and this were set to false, players would not be able to build using your custom item
item
REQUIRED
The actual Minecraft item that represents your custom item. Open the spoiler below to see how to configure this
info
OPTIONAL
Information about the custom item, displayed in the information GUI opened with /customitems list, /customitems info, and /customitems inspect. Open the spoiler below to see how to configure this
recipes
OPTIONAL
A list of custom recipes that can be used to craft this item. Open the spoiler below to see how to configure this
handlers
OPTIONAL
A list of custom actions that are run when certain things happen with this item. Open the spoiler below to see how to configure this
item.yml Quick Reference
If you have experience using CustomItems, or would like a list of everything that you can use to customize your items, open the spoiler below for a quick reference guide to item.yml files.
Explanation by example is likely the best way to learn how to add custom items. Once you've looked over the default item.yml files generated after you install CustomItems, take a look at the quickstart guide in the spoiler below.
Once you're pretty comfortable with the quick-start guide and CustomItems, take a look at the item.yml quick reference below, which lists everything that you can do with CustomItems.
To reference a custom item, just use the item's unique ID (the item's key in the items.yml).
To reference a native Minecraft item, use the same string that you would use to give yourself that item with Minecraft's /give command.
For example, to reference an emerald, use the string "minecraft:EMERALD", to reference a gold block, use "minecraft:GOLD_BLOCK", and to reference a wood sword, use "minecraft:WOODEN_SWORD"
Although the prefix "minecraft:" is not necessarily required, it should be included to avoid any ambiguity and to help you track down errors in your items.yml file. A list of valid Minecraft items is available here: https://hub.spigotmc.org/javadocs/spigot/org/bukkit/Material.html
To reference a native Minecraft item, use the same string that you would use to give yourself that item with Minecraft's /give command.
For example, to reference an emerald, use the string "minecraft:EMERALD", to reference a gold block, use "minecraft:GOLD_BLOCK", and to reference a wood sword, use "minecraft:WOODEN_SWORD"
Although the prefix "minecraft:" is not necessarily required, it should be included to avoid any ambiguity and to help you track down errors in your items.yml file. A list of valid Minecraft items is available here: https://hub.spigotmc.org/javadocs/spigot/org/bukkit/Material.html
To make a new custom item, create a new file in the items directory of the plugin folder, and add information about the item in this file. The file name will serve as the key of the item, and must be unique, and must not be the same as a Minecraft material ID. Any file prefixed with two underscores, like _ _ignore.yml, will be ignored.
For example, compressedCobblestone, compressedDirt, and magicWand are valid ids for custom items (and to create them, you would create the files compressedCobblestone.yml, compressedDirt.yml, and magicWand.yml, respectively), whereas diamond or grass are not. This key can be used to reference the item in your item.yml files
Adding custom recipes and actions to native Minecraft items is very similar. Instead, make the key a minecraft material ID (a list of materials is available here https://hub.spigotmc.org/javadocs/spigot/org/bukkit/Material.html), and omit canBeUsedGenerically, canBePlaced, and item from below. Additionally, make sure to add native: true under key to tell the plugin that you're adding information to a native Minecraft item.
Under this key, add the following:
name
string — REQUIRED
The friendly name of the custom item
YAML:
#in myCustomItem.yml:
name: "My Custom Item"
canBeUsedGenerically
boolean — OPTIONAL — default: false
Whether or not this custom item can be used in place of its native Minecraft counterpart. For example, if the item you create below is cobblestone, and this were set to true, this custom item could be used in crafting recipes in place of cobblestone.
It is recommended that you keep this false and do not set it.
canBePlaced
boolean — OPTIONAL — default: if canBeUsedGenerically is set, then the same as canBeUsedGenerically. If it is not set, then true
If this custom item is a block, whether or not it can be placed. For example, if the item you create below is cobblestone, and this were set to false, players would not be able to build using your custom item
item
REQUIRED
The actual Minecraft item that represents your custom item. Open the spoiler below to see how to configure this
material
string — REQUIRED
The Minecraft material of the item. A list of materials is available here:
https://hub.spigotmc.org/javadocs/spigot/org/bukkit/Material.html
displayName
string — REQUIRED
The display name of the item. You can add color codes to this string with &
lore
string list — OPTIONAL
A list of strings, each line corresponding to a line of lore on the item. You can add color codes to these strings with & as well, and by default, each line is displayed gray.
enchantments
map — OPTIONAL
The enchantments that should be added to this item. For each enchantment you want to add, provide the enchantment name as a new key under the enchantments key, and set it to the level of the enchantment. This also works for enchantments from other plugins
color
string or map — OPTIONAL
The color of the item if it is leather armor or a potion. You can either provide the color as a six-digit hexadecimal string like "00A7FF", or you can provide the keys "red", "green", and "blue" under "color", and give a number between 0 and 255 for each.
string — REQUIRED
The Minecraft material of the item. A list of materials is available here:
https://hub.spigotmc.org/javadocs/spigot/org/bukkit/Material.html
displayName
string — REQUIRED
The display name of the item. You can add color codes to this string with &
lore
string list — OPTIONAL
A list of strings, each line corresponding to a line of lore on the item. You can add color codes to these strings with & as well, and by default, each line is displayed gray.
enchantments
map — OPTIONAL
The enchantments that should be added to this item. For each enchantment you want to add, provide the enchantment name as a new key under the enchantments key, and set it to the level of the enchantment. This also works for enchantments from other plugins
color
string or map — OPTIONAL
The color of the item if it is leather armor or a potion. You can either provide the color as a six-digit hexadecimal string like "00A7FF", or you can provide the keys "red", "green", and "blue" under "color", and give a number between 0 and 255 for each.
YAML:
Code (YAML):
item:
material: LEATHER_CHESTPLATE
displayName: "&6My Custom Item"
lore:
- "This is line one"
- "This is line two"
- "&lThis&7 line is &cformatted"
itemDamage: 24
enchantments:
#Add the enchantments Thorns 2
"minecraft:THORNS": 2
color: "00AAFF"
# making color from RGB values
color:
red: 10
green: 127
blue: 255
info
OPTIONAL
Information about the custom item, displayed in the information GUI opened with /customitems list, /customitems info, and /customitems inspect. Open the spoiler below to see how to configure this
description
string — OPTIONAL
A description of the item
usage
string — OPTIONAL
How the item is used
obtaining
string — OPTIONAL
How the item can be obtained
crafting
string — OPTIONAL
This is automatically generated by the plugin. Only set this if you want to override the default GUI information about how to craft the item.
relatedItems
string list — OPTIONAL
A list of custom or native Minecraft items related to this item, for use in the Information GUI, up to seven items. See "referencing items" above.
string — OPTIONAL
A description of the item
usage
string — OPTIONAL
How the item is used
obtaining
string — OPTIONAL
How the item can be obtained
crafting
string — OPTIONAL
This is automatically generated by the plugin. Only set this if you want to override the default GUI information about how to craft the item.
relatedItems
string list — OPTIONAL
A list of custom or native Minecraft items related to this item, for use in the Information GUI, up to seven items. See "referencing items" above.
YAML:
description: "This is an awesome custom item I made"
usage: "You don't need to use this custom item. Just look at it in awe"
relatedItems:
- "minecraft:STICK"
- "minecraft:DIAMOND"
recipes
OPTIONAL
A list of custom recipes that can be used to craft this item. Open the spoiler below to see how to configure this
items is a list of items, and each item contains the following information. Look at the code snippet below to see how to format this.
item
string — REQUIRED
The item being used in the recipe. See "referencing items" above.
amount
integer — REQUIRED
FOR SHAPELESS RECIPES ONLY (shaped: false)
The amount of the above item
key
character — REQUIRED
FOR SHAPED RECIPES ONLY (shaped: true)
A character that references the item in the shape, created later
item
string — REQUIRED
The item being used in the recipe. See "referencing items" above.
amount
integer — REQUIRED
FOR SHAPELESS RECIPES ONLY (shaped: false)
The amount of the above item
key
character — REQUIRED
FOR SHAPED RECIPES ONLY (shaped: true)
A character that references the item in the shape, created later
YAML:
# Pay close attention to the indentation
recipes:
# The start of a new recipe
-
# Remember to indent
shaped: false
resultAmount: 4
items:
# The start of a new item
-
# Remember to indent
item: "minecraft:BLAZE_ROD"
amount: 5
# The start of a new item
-
item: "anotherCustomItem"
amount: 2
# The start of a new recipe
-
shaped: true
# If we look at items below, we see each 'a' references a gold ingot
# and each 'b' references the custom item 'anotherCustomItem'.
# 'x' does not belong to any item in the below list, so it will be
# regarded as an empty slot. If we pretend 'anotherCustomItem' is
# a stick, and this recipe creates a blaze rod,
# this will create the below crafting recipe
shape:
- "axa"
- "aba"
- "axa"
items:
# The start of a new item
-
item: "minecraft:GOLD_INGOT"
key: 'a'
# The start of a new item
-
item: "anotherCustomItem"
key: 'b'
handlers
OPTIONAL
A list of custom actions that are run when certain things happen with this item. Open the spoiler below to see how to configure this
handlers is a list of handlers, and under each handler there is an actions key, telling the handler what to do. Look at the code snippet below under "item.yml with actions" to see how to format this.
A full list of valid handlers and actions can be found in the item.yml Quick Reference at the very bottom of this section
The following are things that can be put in handlers and actions
Handler formatting :
A list of valid handlers can be found in the item.yml Quick Reference at the very bottom of this section
Under each handler (for example, drop or rightClickAir), there can be a list of actions under the actions key. Each action is configured in the following way:
Action formatting:
action
string — REQUIRED
The action to be run. For example, sendMessage(s), playerRunCommand(s), or runActions. A full list is provided in the item.yml Quick Reference below
other parameters depends on the action — explained below under "Valid actions and their parameters"
actions may also have if statement parameters, explained below under "Valid action if statements"
Example actions if statements (look at item.yml Quick Reference below for a full list):
ifType
string list
Run this action if the clicked block is in this list. See referencing items above
ifHasPermission
string
Run this action if the player has the permission given. All permissions are prefixed with customitems.action. so, if you had ifHasPermission: "useMyItem", the player must have the permission "customitems.action.useMyItem" for this action to run. If you use ifHasPermissionRaw instead, permissions will not be prefixed in this way
Example actions and their parameters (look at item.yml Quick Reference below for a full list):
sendMessage(s)
sends the player message(s)
requires either message or messages
message — string — the message to send the player
messages — string list — the list of message to send the player
prefix — optional boolean — whether or not prefix the message(s) with the string given in the config.yml — default : true
playerRunCommand(s)
forces the player to run command(s)
requires either command or commands
command — string — the command to force the player to run
commands — string list — the list of commands to force the player to run
runActions
runs multiple actions
requires actions
actions — required — the actions to be run. This is formatted exactly like "actions" above, and multiple runActions can be nested
Open the spoiler below "example item.yml with actions" to see a documented code snippet of how actions are used
A full list of valid handlers and actions can be found in the item.yml Quick Reference at the very bottom of this section
The following are things that can be put in handlers and actions
Handler formatting :
A list of valid handlers can be found in the item.yml Quick Reference at the very bottom of this section
Under each handler (for example, drop or rightClickAir), there can be a list of actions under the actions key. Each action is configured in the following way:
Action formatting:
action
string — REQUIRED
The action to be run. For example, sendMessage(s), playerRunCommand(s), or runActions. A full list is provided in the item.yml Quick Reference below
other parameters depends on the action — explained below under "Valid actions and their parameters"
actions may also have if statement parameters, explained below under "Valid action if statements"
Example actions if statements (look at item.yml Quick Reference below for a full list):
ifType
string list
Run this action if the clicked block is in this list. See referencing items above
ifHasPermission
string
Run this action if the player has the permission given. All permissions are prefixed with customitems.action. so, if you had ifHasPermission: "useMyItem", the player must have the permission "customitems.action.useMyItem" for this action to run. If you use ifHasPermissionRaw instead, permissions will not be prefixed in this way
Example actions and their parameters (look at item.yml Quick Reference below for a full list):
sendMessage(s)
sends the player message(s)
requires either message or messages
message — string — the message to send the player
messages — string list — the list of message to send the player
prefix — optional boolean — whether or not prefix the message(s) with the string given in the config.yml — default : true
playerRunCommand(s)
forces the player to run command(s)
requires either command or commands
command — string — the command to force the player to run
commands — string list — the list of commands to force the player to run
runActions
runs multiple actions
requires actions
actions — required — the actions to be run. This is formatted exactly like "actions" above, and multiple runActions can be nested
Open the spoiler below "example item.yml with actions" to see a documented code snippet of how actions are used
This will use two files — one called "compressedCobblestone.yml" that adds a new item called Compressed Cobblestone, which can be crafted with either filling a crafting table with 9 cobblestone. The second is called "cobblestone.yml", and will add a new crafting recipe for Cobblestone that allows users to craft compressed cobblestone into 9 cobblestone.
You can view the two YAML files on Pastebin below
View compressedCobblestone.yml on Pastebin: https://pastebin.com/ymf2jyxg
View cobblestone.yml on Pastebin: https://pastebin.com/NvETXRsA
Here's an example YAML file for an item with custom actions:
View magicStick.yml on Pastebin: https://pastebin.com/zZn5kywY
You can view the two YAML files on Pastebin below
View compressedCobblestone.yml on Pastebin: https://pastebin.com/ymf2jyxg
View cobblestone.yml on Pastebin: https://pastebin.com/NvETXRsA
Here's an example YAML file for an item with custom actions:
View magicStick.yml on Pastebin: https://pastebin.com/zZn5kywY
item.yml Quick Reference
If you have experience using CustomItems, or would like a list of everything that you can use to customize your items, open the spoiler below for a quick reference guide to item.yml files.
underlined items are required. Items in gray are coming in updates. Items in blue are special items.
ticks can usually be substituted for seconds and visa-versa.
Reference Lists
Minecraft Item List
Minecraft Entity Type List
Minecraft Potion Type List
Minecraft Enchantment List
Minecraft Biome List
Referencing Items
For custom items, use the custom item's unique id (yml file name). For Minecraft items, use the Minecraft item name (preferably prefixed with "minecraft:")
Referencing Colors
On any "color" attribute, you can provide a six-character hexadecimal color code like "00AAFF" or "E41517". Google "hex color code picker".
Referencing Enchantments
To reference enchantments, set create a key in the YAML file with the enchantment's name, and set it to the level of the enchantment. This also works with custom enchantments from other plugins:
Referencing Potions
To reference just the effect (for string parameters), use the potion's Minecraft name
To reference potions (for potion parameters), use the following keys:
type — the potion's Minecraft name, time — integer in seconds (default 20 seconds), strength — integer (default 1), particles — boolean (default true), ambient — boolean (default true), showIcon — boolean (default true)
Item Quick Reference
Required Keys
name, item (subkeys: material, displayName, lore, damageable,
maxDurability, itemDamage, color, enchantments, glows, skullOwner**)
Optional Keys
native (required true to edit Minecraft items), info (subkeys description,
usage, obtaining, crafting, relatedItems), recipes (each recipe has subkeys shaped, items, resultAmount, shape), canBeUsedGenerically (default false), canBePlaced (default canBeUsedGenerically, or true if canBeUsedGenerically isn't set), consumable (default canBeUsedGenerically), shootable (default canBeUsedGenerically), block (subkeys generation, texture, drops. More info below), handlers
Block Quick Reference
You can give each block custom drops. To do this, under drops, add each item you want the block to drop when broken, followed by the amount to drop. For example, this block will drop 4 diamonds and one of the custom item with the ID "myCustomItemID"
By default, the block will drop one of its own custom item. If you'd like more flexibility in determining what the block should drop, you could set the block's drops to nothing (just add the drops key, but set it to null "drops: null"), then, add a "setDrops" action in the handler for "blockBreak"!
Under block, you can also add the subkey "generation". Under this, you can add a list of generation properties, formatted a lot like handlers:
Valid Generation
Handlers Quick Reference
Valid Handlers
https://github.com/jojodmo/CustomItems/wiki/Handlers-and-Actions#handlers
Valid if Statements
https://github.com/jojodmo/CustomItems/wiki/Handlers-and-Actions#conditions
Valid Actions
https://github.com/jojodmo/CustomItems/wiki/Handlers-and-Actions#actions-and-parameters
Message and Command Placeholders
In messages and commands, the following things are placeholders that are automatically replaced: https://github.com/jojodmo/CustomItems/wiki/Handlers-and-Actions#message-and-command-placeholders
Short Handlers Example Usage
ticks can usually be substituted for seconds and visa-versa.
Reference Lists
Minecraft Item List
Minecraft Entity Type List
Minecraft Potion Type List
Minecraft Enchantment List
Minecraft Biome List
Referencing Items
For custom items, use the custom item's unique id (yml file name). For Minecraft items, use the Minecraft item name (preferably prefixed with "minecraft:")
Referencing Colors
On any "color" attribute, you can provide a six-character hexadecimal color code like "00AAFF" or "E41517". Google "hex color code picker".
Referencing Enchantments
To reference enchantments, set create a key in the YAML file with the enchantment's name, and set it to the level of the enchantment. This also works with custom enchantments from other plugins:
YAML:
item:
enchantments:
# Unbreaking 3
"minecraft:DURABILITY": 3
# Thorns 2
"minecraft:THORNS": 2
Referencing Potions
To reference just the effect (for string parameters), use the potion's Minecraft name
To reference potions (for potion parameters), use the following keys:
type — the potion's Minecraft name, time — integer in seconds (default 20 seconds), strength — integer (default 1), particles — boolean (default true), ambient — boolean (default true), showIcon — boolean (default true)
YAML:
-
action: playerAddEffects
effects:
# Night Vision Potion lasting 40 seconds
-
type: "NIGHT_VISION"
time: 40
Item Quick Reference
Required Keys
name, item (subkeys: material, displayName, lore, damageable,
maxDurability, itemDamage, color, enchantments, glows, skullOwner**)
Optional Keys
native (required true to edit Minecraft items), info (subkeys description,
usage, obtaining, crafting, relatedItems), recipes (each recipe has subkeys shaped, items, resultAmount, shape), canBeUsedGenerically (default false), canBePlaced (default canBeUsedGenerically, or true if canBeUsedGenerically isn't set), consumable (default canBeUsedGenerically), shootable (default canBeUsedGenerically), block (subkeys generation, texture, drops. More info below), handlers
Block Quick Reference
You can give each block custom drops. To do this, under drops, add each item you want the block to drop when broken, followed by the amount to drop. For example, this block will drop 4 diamonds and one of the custom item with the ID "myCustomItemID"
YAML:
block:
drops:
"minecraft:DIAMOND": 4
"myCustomItemID": 1
By default, the block will drop one of its own custom item. If you'd like more flexibility in determining what the block should drop, you could set the block's drops to nothing (just add the drops key, but set it to null "drops: null"), then, add a "setDrops" action in the handler for "blockBreak"!
Under block, you can also add the subkey "generation". Under this, you can add a list of generation properties, formatted a lot like handlers:
YAML:
block:
generation:
-
method: ore
worlds:
- world
continueChance: 0.4
generationChance: 1.0
amountPerChunk: 5
minY: 20
Valid Generation
- method — string — The method of generating the blocks. Currently valid options are: "ore" and "replace"
- world(s) — string or string list — The world(s) to enable generation in.
- biome(s) — string or string list — The biome(s) to enable generation in.
- amountPerChunk — integer — The number of times to run this generation method per chunk
- generationChance — decimal between 0.0 and 1.0 — The chance of the generation method to run (for example, 0.7 gives this generation method a 70% chance of running each time)
- minY — integer— The minimum y-position to start generating blocks at
- maxY — integer— The maximum y-position to start generating blocks at
- continueChance — decimal between 0.0 and 1.0 only for the "ore" generation method — the chance of the ore generation continuing to generate more blocks in the vein
Handlers Quick Reference
Valid Handlers
https://github.com/jojodmo/CustomItems/wiki/Handlers-and-Actions#handlers
Valid if Statements
https://github.com/jojodmo/CustomItems/wiki/Handlers-and-Actions#conditions
Valid Actions
https://github.com/jojodmo/CustomItems/wiki/Handlers-and-Actions#actions-and-parameters
Message and Command Placeholders
In messages and commands, the following things are placeholders that are automatically replaced: https://github.com/jojodmo/CustomItems/wiki/Handlers-and-Actions#message-and-command-placeholders
Short Handlers Example Usage
YAML:
handlers:
consume:
actions:
-
action: addHealth
amount: 10
-
action: sendMessages
messages:
- "Hey {player}"
- "You're in the world {player.location.world}"
rightClickBlock:
actions:
-
action: destroyItemUsed
-
ifBlockType: "minecraft:DIAMOND_BLOCK"
ifHasPermission: "cui.click"
ifStatementCombine: "AND"
probability: 0.8
action: runActions
actions:
-
action: setBlockType
type: "minecraft:AIR"
-
action: givePlayerItem
type: "minecraft:DIAMOND"
amount: 27
-
action: runSkript
actionID: "mySkriptAction"
Adding Custom Textures to Items
For help adding custom textures to items, check out the wiki at https://github.com/jojodmo/CustomItems/wiki/Adding-Custom-Textures-to-Items
Adding Custom Textures to Blocks
Check out the wiki at https://github.com/jojodmo/CustomItems/wiki/Adding-Custom-Textures-to-Blocks for a tutorial on adding custom textures to blocks
Using CustomItems with Skript
Check out the wiki at https://github.com/jojodmo/CustomItems/wiki/Skript-Integration for more info about using CustomItems with Skript
Other Supported Plugins
ItemBridge — https://polymart.org/resource/4/ItemBridge
Drupi — https://www.spigotmc.org/resources/drupi.65706/
World Guard — https://dev.bukkit.org/projects/worldguard
My Other Resources
More Custom Items Information
More information about commands, installation, and configuration are below, but you should really check out the wiki at https://github.com/jojodmo/CustomItems/wiki, which is a lot more up to date
language
The language for the plugin. Custom Items currently supports English (en), Chinese (cn), German (de), Italian (it), and Czech (cz)
Default: en[/SPOILER]