This page is valid for all plugins using the template developed by maxlego08 and using the loader system for itemstacks.


Here is an example of an item in a yml file:
material: 3
data: 0
durability: 0
amount: 1
glow: true
- "line"
- "&cred line"
- "&fwhite line"
name: "&eMy awesome name"

Example potion:

material: POTION
potion: "SPEED"
splash: true
extended: true
level: 1
type: NONE
slot: 33

Example player head:

material: PLAYER_HEAD
url: "eyJ0ZXh0dXJlcyI6eyJTS0lOIjp7InVybCI6Imh0dHA6Ly90ZXh0dXJlcy5taW5lY3JhZnQubmV0L3RleHR1cmUvZTM2ZTk0ZjZjMzRhMzU0NjVmY2U0YTkwZjJlMjU5NzYzODllYjk3MDlhMTIyNzM1NzRmZjcwZmQ0ZGFhNjg1MiJ9fX0="
type: NONE
slot: 34

Add player HEAD

You have to add HEAD in the item name to be able to display the head of the player who opened the GUI.
material: PLAYER_HEAD
name: "HEAD&a%player_name%"
If you are below version 1.13 you have to do
material: SKULL_ITEM
data: 3
name: "HEAD&a%player_name%"

Head Database

material: hdb:<head id>
type: NONE
slot: 0


material: eh:<head id>
type: NONE
slot: 0

Now let's move on to the explanation of each element

  • material
You can put the item ID for versions lower than 1.13 and you can put the material name for higher versions. List of materials:
  • data
The item data works only for versions lower than 1.13, the default value is 0.
  • amount
The number of items (from 1 to 64), the default value is 1.
  • durability
Allows you to change the durability of items, works only for armor and other items that use durability, the default value is 0.
  • name
Allows you to change the name of the item, by default the name is null.
  • glow
Allows to add an enchantment to the item and to add the HIDE_ENCHANTS flag
  • lore
Allows to change a lore of the item, by default the lore is null.
  • enchants
Allows you to add enchantments, you have to put the name of the enchantment then the level of the enchantment, like this: ENCHANT,ENCHANT_LEVEL List of enchantments available:
  • flags
This option is available for servers greater than or equal to the 1.8. List of flags:
  • modelID
Allows you to put a custom model data on an item

Developer - Loading and saving an itemtack

To save and load an item you will have to use the ItemStackLoader class
//Create class
ItemStackLoader loader = new ItemStackLoader();
//Load your confirguration
YamlConfiguration configuration = plugin.getConfig();
//You have to put a . at the end of your path to load the item.
String path = "item.";
//Load ItemStack
ItemStack itemStack = loader.load(configuration, path);
//Save ItemStack, configuration, path);