⛏ Custom Items ✅ 1.20 READY ✅ Make NEW ITEMS & BLOCKS with NEW TEXTURES, Recipes, Events & Actions icon

⛏ Custom Items ✅ 1.20 READY ✅ Make NEW ITEMS & BLOCKS with NEW TEXTURES, Recipes, Events & Actions -----

IN-GAME GUI ITEM+RECIPE DESIGNER ⭐ Make any item/block you imagine, without mods or replacing items✅



FOR 1.21.x SUPPORT AND HIGHER, VISIT http://customitems.page.link/wiki

1.20 READY! Supports MC 1.8 — MC 1.20.x


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 | Easy to Use | Infinite Possibilities

[​IMG] [​IMG] [​IMG] [​IMG] [​IMG] [​IMG] [​IMG]
Prior to purchasing this plugin, you must read carefully and accept the Terms of Use and License at the bottom of this page.

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!
[​IMG] [​IMG] [​IMG]


[​IMG]
Screen Shot 2021-11-27 at 1.20.55 PM.png
[​IMG]
[​IMG] [​IMG]

Keep reading to see just a few of the things you can do with Custom Items!

[​IMG] [​IMG]
[​IMG] [​IMG] [​IMG] [​IMG]
[​IMG]
All of this is possible without any mods or coding experience. Click any one of the gifs for a full-size version.

[​IMG]

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!

Custom Items is a very powerful plugin, and allows you to design virtually any item you can imagine! Just keep reading to find out just a few of the things you can do!

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

[​IMG]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.

[​IMG]

CITestServer.png
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.


CIFeatures.png

[​IMG]

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:
[​IMG] [​IMG] [​IMG]

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

[​IMG]

CIAdding.png

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
[​IMG]
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 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 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
Code (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.

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.
Code (YAML):
info:
      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

recipes is a list of recipes, and each recipe contains the following information. Look at the code snippet below to see how to format this.


shaped
boolean — REQUIRED

Whether or not the recipe is shaped

resultAmount
integer — OPTIONAL — default: 1

The amount of the custom item that will result from this recipe

shape
string list — REQUIRED
FOR SHAPED RECIPES ONLY (shaped: true)

A list of strings representing the crafting grid.
Each character in each string represents an item, which is defined in items below.

Any character that is not referenced will be regarded as an empty slot
(for example, if one line is "axa", and the character 'x' does not exist below, the middle slot will be empty).

See the code snippet below for formatting information.

items
REQUIRED

The items required for this recipe. 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
Code (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'

 

The shaped recipe created in the above code snippet
[​IMG]



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

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

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.



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:
Code (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)

Code (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.

Code (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:

Code (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

Short Handlers Example Usage
Code (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"
 

[​IMG]

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
Drupi — https://www.spigotmc.org/resources/drupi.65706/
World Guard — https://dev.bukkit.org/projects/worldguard

[​IMG]

My Other Resources
[​IMG]

[​IMG]

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

[​IMG]
[​IMG]

[​IMG]


language
The language for the plugin. Custom Items currently supports English (en), Chinese (cn), German (de), Italian (it), and Czech (cz)
Default: en​
[​IMG]


Acknowledgements
Thank you to MSWS for transferring a lot of the information originally on this page to the wiki!
Have any questions about the plugin you want to ask before purchasing it? Have any feature suggestions?
Let me know, and I'll respond to your message as soon as possible!

[​IMG]

[​IMG]

Terms of Use and License
"Minecraft server network" refers to a single Minecraft Bungeecord instance

By purchasing this software, you are purchasing a license to use the software as a plugin on your Minecraft server or Minecraft server network only, and must agree to be bound by these terms. If you do not agree to these terms, you may not download or use this software.
You may NOT:
1. Distribute this software or its source- or binary-code in any way, for profit or not for profit
2. Modify this software or the source- or binary-code of this software in any way
3. Create derivative works of this software


You may only use this software on a single Minecraft server or a single Minecraft server network. Should you wish to use this software on multiple Minecraft server networks or multiple Minecraft servers, you must obtain express permission from the developer of this software.

This software is provided on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied, including, without limitation, any warranties or conditions of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A PARTICULAR PURPOSE. You are solely responsible for determining the appropriateness of using this software and assume any risks associated with your exercise of permissions under this License.

You must be at least eighteen years of age (or be at least the legal age of majority in the location you reside) or have your parent's permission before purchasing or using this software.

[​IMG]
Resource Information
Author:
----------
Total Downloads: 1,565
First Release: Jan 19, 2019
Last Update: Jul 3, 2024
Category: ---------------
All-Time Rating:
60 ratings
Find more info at github.com...
Version -----
Released: --------------------
Downloads: ------
Version Rating:
----------------------
-- ratings