CosmeticsCore
  • ๐Ÿ‘‹Welcome
  • โš™๏ธFirst install
    • Install base resourcepack
      • If you don't have a resourcepack
      • ItemsAdder
      • Any plugin and resourcepack
  • โ›”Terms of service
  • โ“Frequently asked questions
  • ๐Ÿ‡ฌ๐Ÿ‡งTranslations
  • ๐Ÿ“‘Files editor
  • ๐Ÿ–ฅ๏ธCommands
  • ๐Ÿ‘ŒPermissions
    • Examples
  • ๐ŸŽจAdding content
    • Properties
    • Creating a model
    • ๐ŸŽˆBallons (simple)
    • ๐ŸŽˆBallons ItemsAdder (simple)
    • ๐ŸŽˆBalloon (advanced)
      • ItemsAdder Entity
      • ModelEngine
      • Leash location
    • ๐ŸงขHat
    • ๐ŸŽ’Body Cosmetic
      • Static Body Cosmetic
      • Advanced Body Item
  • โš™๏ธSettings
  • ๐ŸšชWardrobe
    • โš™๏ธCustomization
    • ๐Ÿ’พSaving player data
  • โœ๏ธContribute
    • Edit the English wiki
    • Translate this wiki
    • Preview wiki changes
  • โœ…Compatibility with other plugins
    • Compatible
      • ItemsAdder
      • Vulcan
      • PlaceholderAPI
  • ๐Ÿ’ปDevelopers
    • โ˜•Java API
    • โ„ข๏ธBranding
Powered by GitBook
On this page
  • Models meaning
  • Normal model
  • Normal model 2
  • Self model
  • Self model 2
  • Creation methods
  • CustomModelData
  • ItemsAdder
  • Avoid cosmetics from obstructing view
  • Implementing the self models
  • Step 1
  • Step 2
  • Step 3
  • Issues with big models
  • Result
  1. Adding content
  2. Body Cosmetic

Static Body Cosmetic

Models meaning

Normal model

A normal model is the model which is shown to every player but the local player (yourself). This model is used only on Minecraft 1.20.1 and lower.

Normal model 2

This normal model is the model which is shown to every player but the local player (yourself). This model is used only on Minecraft 1.20.2 and greater.

Self model

The model which is shown ONLY to the local player (yourself). This self model is used only on Minecraft 1.20.1 and lower.

Self model 2

The model which is shown ONLY to the local player (yourself). This self model is used only on Minecraft 1.20.2 and greater.

Creation methods

CustomModelData

You can create custom body items simply by using CustomModelData.

  # Example manually created hat with CustomModelData
  squirrel_tail:
    display_name: "Squirrel Tail"
    type: BODY_ITEM
    model:
      gui: potion:400008
      normal: potion:400008
      normal_2: potion:410008
      self: potion:400009
    dye:
      enabled: false # To avoid this item from being colored.

In this example I created a custom body item with CustomModelData 400008. I decided to use the same item both for the GUI preview and for the actual item which will be put on player's body. I then set a self model, which is the model shown only to the local player and not to the other players, in this case I set the CustomModelData to 400009.

ItemsAdder

Same thing but using ItemsAdder models to avoid worrying about CustomModelData.

Example:

  # Example custom Item created by ItemsAdder
  squirrel_tail:
    display_name: "Squirrel Tail"
    type: BODY_ITEM
    model:
      gui: my_item:squirrel_tail
      normal: my_item:squirrel_tail
      self: my_item:squirrel_tail_self
    dye:
      enabled: false # To avoid this item from being colored.

In this example I created a custom body item by using the ItemsAdder model named squirrel_tail. I decided to use the same item both for the GUI preview and for the actual item which will be put on player's body. I then set a self model, which is the model shown only to the local player and not to the other players, in this case I set it to squirrel_tail_self.

Avoid cosmetics from obstructing view

It's important to have 3 separated models because the self models will avoid getting the player view occupied by the cosmetic and potentially cause annoyances during the gameplay (placing blocks, attacking, walking).

If you are not interested into setting a self and normal model you can skip this tutorial and only use the normal attribute Do not set the self attribute at all if you don't want to use a different item for the self view.

Implementing the self models

Step 1

In this example I use 400008 for the normal model and 400009 for the self model.

assets/minecraft/models/item/XXX.json

{
  "predicate": { "custom_model_data": 400008 },
  "model": "cosmetics:body/squirrel_tail"
},
{
  "predicate": { "custom_model_data": 410008 },
  "model": "cosmetics:body/squirrel_tail_normal_2"
},
{
  "predicate": { "custom_model_data": 400009 },
  "model": "cosmetics:body/squirrel_tail_self"
},
{
  "predicate": { "custom_model_data": 410009 },
  "model": "cosmetics:body/squirrel_tail_self_2"
},

Step 2

Edit your cosmetics configuration and add the self model.

  squirrel_tail:
    display_name: "Squirrel Tail"
    type: BODY_ITEM
    model:
      gui: potion:400008
      normal: potion:400008
      normal_2: potion:410008
      self: potion:400009   # <------ HERE
      self_2: potion:410009   # <------ HERE
    dye:
      enabled: false # To avoid this item from being colored.

Step 3

This is a very important important step. You have to create the 2 self models and edit them until you are satisfied.

You can use the preview to check exactly how the model will be shown ingame.

Issues with big models

If your model is too big and you cannot move it down you have to use "Auto fix self model".

Result

PreviousBody CosmeticNextAdvanced Body Item

Last updated 1 month ago

Decide a new CustomModelData for that item and add it to the item file or use ItemsAdder to automate the process (depends on your needs, refer to to learn how to create items).

Install the official . Open your .json file using Blockbench.

๐ŸŽจ
๐ŸŽ’
ItemsAdder wiki
Blockbench extension