Chuyển đến nội dung

Minecraft Custom Items Resource Pack Guide (26.3)

Make a Minecraft custom items resource pack: add a texture, model and item definition, then give the item with the item_model component.

Cập nhật 5 thg 11, 2026Viết cho Minecraft 26.32 phút đọc

Written for Minecraft 26.3.

A Minecraft custom items resource pack needs three files and one command. The files are a texture, a model and an item definition. The command gives a base item the item_model component so it uses your definition.

Before you start

  • A working pack with a valid pack.mcmeta. See the pack basics guide.

  • A 16 by 16 PNG for the item. We call it ruby_wand.png.

  • Cheats enabled, or operator rights, to use /give.

  • We use the namespace myserver. Pick your own, in lowercase.

Add the files

  1. Save the texture as assets/myserver/textures/item/ruby_wand.png.

  2. Create the model at assets/myserver/models/item/ruby_wand.json:

{
  "parent": "item/generated",
  "textures": {
    "layer0": "myserver:item/ruby_wand"
  }
}
  1. Create the item definition at assets/myserver/items/ruby_wand.json:

{
  "model": {
    "type": "minecraft:model",
    "model": "myserver:item/ruby_wand"
  }
}

The item definition is the file that tells the game which model to draw. Its name, ruby_wand, is the ID you use in the command. The model value points at the model file you made in step two.

Give the item

Item data is stored in data components, not NBT. Set the model with the item_model component:

/give @s stick[item_model="myserver:ruby_wand"]

The player gets a stick that looks like your wand. The base item still behaves like a stick. You can also build commands with our give command tool.

The old custom_model_data approach

Before 1.21.4, packs edited the base item's model and added an overrides list keyed on custom_model_data. That approach is legacy. Item definitions replace it, and each item picks its own file through item_model.

custom_model_data still exists as a component. It carries floats, flags, strings and colors lists that an item definition can read to switch models or tints. Use it only when one item needs several looks.

Namespace the ID. Use myserver:ruby_wand, not a bare name. A bare name means the minecraft namespace, and a mismatch shows the missing model.

Check it worked

  1. Press F3 + T to reload the pack.

  2. Run the /give command.

  3. The stick should show your texture in the inventory, hand and on the ground.

Common problems

The item is a purple and black cube

A nonexistent model ID causes the missing model. Check that the item_model value matches assets/<namespace>/items/<name>.json exactly.

The model is there but the texture is missing

The layer0 path does not match the PNG. myserver:item/ruby_wand points to textures/item/ruby_wand.png.

The command is rejected

Use square brackets, and quote the ID. Old NBT syntax with curly braces no longer works for components.

It works locally but not on the server

Players need the pack. Check the steps in the pack basics guide and debug with the log reading guide.

Tham gia Discord của chúng tôi

Nhận hỗ trợ về đơn hàng, xem chúng tôi sắp làm gì tiếp theo và trò chuyện với các chủ server khác.