> For the complete documentation index, see [llms.txt](https://jugandomiguel.gitbook.io/custom-resource-pack-geysermc/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://jugandomiguel.gitbook.io/custom-resource-pack-geysermc/custom-mappings/create-the-mapping-file/items.md).

# items

To create a custom mapping for items you need to know what you are going to use, for example if you item is a Sword you need to know if that sword is using a netherite\_sword as base or a iron\_sword, if you already know what base items you are using put the base item name in the the `"minecraft: " [` like this:

```json
{
    "format_version": 1,
    "items": {
        "minecraft:iron_sword": [
            {
                "name": "some_name",
                "custom_model_data": 10000,
                "display_name": "§eSome description",
                "is_tool": false,
                "is_hat": false,
                "texture_size": 16                
            }
        ]             
    }
}
```

Now to specify what item are you creating you need to specify the indetifier of your item here `"name": ""`, if you don't have the identifier please go to [**custom things**](/custom-resource-pack-geysermc/custom-things/armors.md) category and read the page you are looking for. Now the file should look like this

```json
{
    "format_version": 1,
    "items": {
        "minecraft:iron_sword": [
            {
                "name": "my_amazing_custom_item",
                "custom_model_data": 10000,
                "display_name": "§eI am a sword :)",
                "is_tool": false,
                "is_hat": false,
                "texture_size": 16                
            }
        ]             
    }
}
```

To continue you need to specify the custom model data in `"custom_model_data":` and the custom thing now look like this

```json
{
    "format_version": 1,
    "items": {
        "minecraft:iron_sword": [
            {
                "name": "my_amazing_custom_item",
                "custom_model_data": 10440,
                "display_name": "§eI am a sword :)",
                "is_tool": false,
                "is_hat": false,
                "texture_size": 16                
            }
        ]             
    }
}
```

{% hint style="warning" %}
IMPORTANT: The custom\_model\_data need to be the same as the item in Minecraft Java
{% endhint %}

Now always that you are making a item change the `"is_tool": false` to true like this

```
{
    "format_version": 1,
    "items": {
        "minecraft:iron_sword": [
            {
                "name": "my_amazing_custom_item",
                "custom_model_data": 10440,
                "display_name": "§eI am a sword :)",
                "is_tool": true,
                "is_hat": false,
                "texture_size": 16                
            }
        ]             
    }
}
```

To add more items in the same file you can add a coma in the closing bracket **}** like this:

```json
{
    "format_version": 1,
    "items": {
        "minecraft:iron_sword": [
            {
                "name": "my_amazing_custom_item",
                "custom_model_data": 10440,
                "display_name": "§eI am a sword :)",
                "is_tool": true,
                "is_hat": false,
                "texture_size": 16                
            },
            {
                "name": "my_other_item",
                "custom_model_data": 10440,
                "display_name": "§eI another sword :)",
                "is_tool": true,
                "is_hat": false,
                "texture_size": 16                
            }            
        ]             
    }
}
```

To add other items that use a diferent base item you need to add a coma in the closing square braket **]** like this

```json
{
    "format_version": 1,
    "items": {
        "minecraft:iron_sword": [
            {
                "name": "my_amazing_custom_item",
                "custom_model_data": 10440,
                "display_name": "§eI am a sword :)",
                "is_tool": true,
                "is_hat": false,
                "texture_size": 16                
            },
            {
                "name": "my_other_item",
                "custom_model_data": 11440,
                "display_name": "§eI another sword :)",
                "is_tool": true,
                "is_hat": false,
                "texture_size": 16                
            }            
        ],    
        "minecraft:diamond_sword": [
            {
                "name": "im_alive",
                "custom_model_data": 10357,
                "display_name": "§eMy dad is a diamond sword uwu",
                "is_tool": true,
                "is_hat": false,
                "texture_size": 16                
            },
            {
                "name": "other_new_item",
                "custom_model_data": 32440,
                "display_name": "§eHi :D",
                "is_tool": true,
                "is_hat": false,
                "texture_size": 16                
            }            
        ],          
    }
}
```

When you have the mappings created now you should put them in the custom mappings folders that is located in `my_server/plugins/Geyser-Spigot/custom_mappings/`

To continue go to:

{% content-ref url="/pages/ciNrTQPniRPrn0P8qf4D" %}
[Inventory Texture](/custom-resource-pack-geysermc/last-steps/inventory-texture.md)
{% endcontent-ref %}
