# How to create custom textures

```yaml
my_custom_item:
  enabled: true
  permission: my_custom_item
  model_id: 50
  name: '&fMy custom item'
```

### Creating the .json file (model)

In this example I set **model\_id** to 50 and I created a file named **50.json** in the **assets\minecraft\models\new\_\<type>** folder.\
In this case I'm creating a generic item that won't have any feature, so it will be under **new\_item** folder in resourcepack.

This is the model file I've just created:

<div align="left"><img src="/files/-Lb3YQGeb-DHigWGpC_L" alt=""></div>

This is the content of the **50.json** file, you can notice i set **layer0** to **new\_item/50**\
which is the path to the **.png** file I'll create (I named it as the .json file to have the resourcepack more organized but you don't have to keep this structure, you can also write **new\_item/my\_custom\_item\_texture**, but remember to name the .png file like that)

<div align="left"><img src="/files/-Lb3Y_XwqVm41FO-JTS2" alt="If you made a custom 3D model you can ignore what you see in this screenshot as you surely have another structure in the file"></div>

### Creating the .png file (texture)

Create a new file (or paste your texture file) in the **assets\minecraft\textures\new\_\<type>** folder.\
I named it **50.png** (but remember you can name it as you want, you can name it also **my\_custom\_item\_texture**, like you did in **layer0**).

<div align="left"><img src="/files/-Lb3_S6SETHMQ00LtBe8" alt="Texture file i created"></div>

<div align="left"><img src="/files/-Lb3_XbXsD_rY2MsWTM3" alt="Preview of the texture (just an example one)"></div>

{% hint style="success" %}

## Done! <a href="#done" id="done"></a>

{% endhint %}

Now you have to zip your resourcepack files selecting these files:

<div align="left"><img src="/files/-Lb3_yAdQaep9VJhmmaj" alt=""></div>

After you zipped it upload it to Dropbox, get the download link and change **?dl=0** at the end of the link to **?dl=1**\
Put this link into the config.yml of ItemsAdder replacing the property custom\_url.\
Also set **use\_default** to false and **apply\_on\_join** to true

```yaml
use_default: false
custom_url: 'http://www.dropbox.com/s/.......zip?dl=1'
```

{% hint style="danger" %}
Important

Remember to upload the zip file to an hosting service that gives a direct download link, not a download link where you have to click "**Download file**" or something or Minecraft won't install the resourcepack correctly.\
Dropbox is good as you can set **?dl=1** to get a direct download.\
Also don't forget to change https to http.
{% endhint %}

{% hint style="warning" %}
If DropBox link is not working on Minecraft and you get error please use this website: <https://www.filesend.jp/l/en-US/>.\
\- Set 30days\
\- then after upload right click on download and copy link\
(You still need to change https to http in your url)\
\
Any website is good if it allows you to get a DIRECT download to resourcepack. If it gives you an url that leads to a download paga it won't work.
{% endhint %}

{% hint style="info" %}

## Multi-textures items

{% endhint %}

You'll surely notice some items have more than one texture/model, these items are:

* bows
* shields
* fishing rods

In order to create custom textures for your custom items of these particular types you have to create 2 or more .json files and .png files, you just have to take already created items as reference to create your items


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://lonedev.gitbook.io/itemsadder/custom-textures/how-to-create-custom-textures.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
