Compatibility
Minecraft: Java Edition
Platforms
Supported environments
Links
Creators
Details
CIM | Custom Item Model
English
Adds support for fully-custom animated item models using simple vanilla-style 'JSON'
How it works
#1 Model registration
Create the file cim_models.json in your resource pack namespace at
assets/<namespace>/cim_models.json (Do not use the cim namespace!)
Then write the following content:
{
"entries": [
// List of entries
]
}
Add a new element to entries with the following structure:
{
"items": [ /* List of `item_id`'s */ ],
"components": { /* Components filter */ },
"mode": /* Component filter mode: any | all | only */,
"model": /* Model ID */
}
Where:
itemsā A list of item IDs used to filter items.
- To apply the model to all items, use "all".
componentsā A J`SON object used to filter items by components.
- To apply the model regardless of components, omit this field.
modeā Controls how the components filter is applied.
anyā The item must contain at least one of the listed components.allā The item must contain all listed components. Other components are ignored.onlyā The item must contain only the listed components and no others.modelā The model location.
- Format: namespace:folder_name, where folder_name is a directory inside cim_models.
#2 Model properties setup
If you only need to replace the model and/or animations, the following files must be present in the folder_name
directory:
/cim_models/<model_id>/
|- model.geo.json | Item model file
|- texture.png | Texture for model
|- animations.json | Animations for model (optional)
\- display.json | Display transform for model (optional)
You must use these exact file names.
Otherwise, if you need more detailed model configuration, you must create a properties.json file at
/cim_models/<model_id>/properties.json with the following content:
{
"name": /* Model name (currently unused) */,
"authors": /* List of authors (currently unused) */,
"disable_ground_bobbing": true, // Disables item floating (up-down movement)
"disable_ground_spinning": true, // Disables item spinning on the ground
"display_context": {
/* Mapping between item_display_context and cim_profile */
}
}
The display_context field defines the default profile for the item_display_context equal to none:
"none": { // You can overwrite it
"model": "./model.geo.json",
"texture": "./texture.png",
"animations": "./animations.json",
"display": "./display.json"
}
Where:
- model ā Path to the model resource. Use the ./ prefix for local resources.
- texture ā Path to the model texture. Use the ./ prefix for local resources.
- animations ā Path to the animations file. Optional. Use the ./ prefix for local resources.
- display ā Path to the display transform file. Optional. Use the ./ prefix for local resources.
For other contexts, it is not necessary to rewrite the profile exactly, it is enough to specify only the necessary parameters in
the profile. The rest will be taken from the none context.
Š ŃŃŃŠŗŠøŠ¹
ŠŠ¾Š±Š°Š²Š»ŃŠµŃ ŠæŠ¾Š“Š“ŠµŃŠ¶ŠŗŃ ŠæŠ¾Š»Š½Š¾ŃŠµŠ½Š½ŃŃ ŠŗŠ°ŃŃŠ¾Š¼Š½ŃŃ Šø анимиŃŃŠµŠ¼ŃŃ Š¼Š¾Š“ŠµŠ»ŠµŠ¹ ŠæŃŠµŠ“Š¼ŠµŃŠ¾Š² ŃŠµŃез обŃŃŠ½Ńй 'JSON'
ŠŠ°Šŗ ŃŃŠ¾ ŃŠ°Š±Š¾ŃаеŃ
#1 РегиŃŃŃŠ°ŃŠøŃ Š¼Š¾Š“ŠµŠ»ŠµŠ¹
Š”Š¾Š·Š“Š°Š¹ŃŠµ ŃŠ°Š¹Š» cim_models.json в Š²Š°Ńем ŃŠµŃŃŃŃŠæŠ°ŠŗŠµ по ŠæŃŃŠø assets/<mod_id>/cim_models.json (ŠŠµ ŠøŃŠæŠ¾Š»ŃŠ·ŃŠ¹ŃŠµ cim в
ŠŗŠ°ŃŠµŃŃŠ²Šµ mod_id)
ŠŠ°Ńем Š²ŠæŠøŃŠøŃе ŃŠ»ŠµŠ“ŃŃŃŠµŠµ:
{
"entries": [
// Š”ŠæŠøŃŠ¾Šŗ ŃŠ»ŠµŠ¼ŠµŠ½Ńов
]
}
ŠŠ¾Š±Š°Š²ŃŃŠµ Š½Š¾Š²ŃŠ¹ ŃŠ»ŠµŠ¼ŠµŠ½Ń в ŃŠæŠøŃŠ¾Šŗ entries ŃŠ¾ ŃŠ»ŠµŠ“ŃŃŃŠµŠ¹ ŃŃŃŃŠŗŃŃŃŠ¾Š¹:
{
"items": [ /* Š”ŠæŠøŃŠ¾Šŗ `item_id` */ ],
"components": { /* ФилŃŃŃ ŠŗŠ¾Š¼ŠæŠ¾Š½ŠµŠ½ŃŠ¾Š² */ },
"mode": /* Режим ŃŠøŠ»ŃŃŃŠ°ŃŠøŠø ŠŗŠ¾Š¼ŠæŠ¾Š½ŠµŠ½ŃŠ¾Š²: any | all | only */,
"model": /* `model_id` */
}
ŠŠ“е:
itemsā Š”ŠæŠøŃŠ¾Šŗ ŠæŃŠµŠ“Š¼ŠµŃŠ¾Š² (item_id), ŠøŃŠæŠ¾Š»ŃŠ·ŃемŃŃ Š“Š»Ń ŃŠøŠ»ŃŃŃŠ°ŃŠøŠø.
- Š£ŠŗŠ°Š¶ŠøŃŠµ "all" Š“Š»Ń Š·Š°Š¼ŠµŠ½Ń Š¼Š¾Š“ŠµŠ»Šø Š²ŃŠµŃ ŠæŃŠµŠ“Š¼ŠµŃŠ¾Š².
componentsā JSON-Š¾Š±ŃŠµŠŗŃ, ŠøŃŠæŠ¾Š»ŃŠ·ŃŠµŠ¼ŃŠ¹ Š“Š»Ń ŃŠøŠ»ŃŃŃŠ°ŃŠøŠø ŠæŃŠµŠ“Š¼ŠµŃŠ¾Š² по ŠŗŠ¾Š¼ŠæŠ¾Š½ŠµŠ½Ńам.
- ŠŠµ ŃŠŗŠ°Š·ŃŠ²Š°Š¹ŃŠµ ŃŃŠ¾Ń ŠæŠ°ŃŠ°Š¼ŠµŃŃ, ŠµŃŠ»Šø ŃŃŠµŠ±ŃеŃŃŃ Š·Š°Š¼ŠµŠ½ŠøŃŃ Š¼Š¾Š“ŠµŠ»Ń Š²Š½Šµ Š·Š°Š²ŠøŃŠøŠ¼Š¾ŃŃŠø Š¾Ń Š½Š°Š»ŠøŃŠøŃ ŠŗŠ¾Š¼ŠæŠ¾Š½ŠµŠ½ŃŠ¾Š².
modeā Š ежим ŃŠøŠ»ŃŃŃŠ°ŃŠøŠø ŠŗŠ¾Š¼ŠæŠ¾Š½ŠµŠ½ŃŠ¾Š².anyā ŠŃŠµŠ“Š¼ŠµŃ Š“Š¾Š»Š¶ŠµŠ½ ŃŠ¾Š“ŠµŃŠ¶Š°ŃŃ Š»ŃŠ±Š¾Š¹ ŠøŠ· ŃŠŗŠ°Š·Š°Š½Š½ŃŃ ŠŗŠ¾Š¼ŠæŠ¾Š½ŠµŠ½ŃŠ¾Š².allā ŠŃŠµŠ“Š¼ŠµŃ Š“Š¾Š»Š¶ŠµŠ½ ŃŠ¾Š“ŠµŃŠ¶Š°ŃŃ Š²ŃŠµ ŃŠŗŠ°Š·Š°Š½Š½Ńе компоненŃŃ. ŠŃŃŠ°Š»ŃŠ½ŃŠµ компоненŃŃ ŠøŠ³Š½Š¾ŃŠøŃŃŃŃŃŃ.onlyā ŠŃŠµŠ“Š¼ŠµŃ Š“Š¾Š»Š¶ŠµŠ½ ŃŠ¾Š“ŠµŃŠ¶Š°ŃŃ ŃŠ¾Š»Ńко ŃŠŗŠ°Š·Š°Š½Š½Ńе компоненŃŃ. ŠŃŠø оŃŃŃŃŃŃŠ²ŠøŠø Ń Š¾ŃŃ Š±Ń Š¾Š“Š½Š¾Š³Š¾ или Š½Š°Š»ŠøŃŠøŠø Š»ŠøŃŠ½ŠøŃ ā ŠæŃŠµŠ“Š¼ŠµŃ ŠøŠ³Š½Š¾ŃŠøŃŃŠµŃŃŃ.modelā ŠŠ“ŠµŠ½ŃŠøŃŠøŠŗŠ°ŃŠ¾Ń моГели.
- Š¤Š¾ŃŠ¼Š°Ń: <namespace/mod_id>:<folder_name>, гГе
folder_nameā ŠøŠ¼Ń Š“ŠøŃŠµŠŗŃŠ¾ŃŠøŠø внŃŃŃŠø cim_models/.
#2 Model properties setup
ŠŃли ŃŃŠµŠ±ŃеŃŃŃ Š·Š°Š¼ŠµŠ½ŠøŃŃ ŃŠ¾Š»Ńко Š¼Š¾Š“ŠµŠ»Ń Šø/или Š°Š½ŠøŠ¼Š°ŃŠøŠø, в Š“ŠøŃŠµŠŗŃŠ¾ŃŠøŠø folder_name Š“Š¾Š»Š¶Š½Ń ŠæŃŠøŃŃŃŃŃŠ²Š¾Š²Š°ŃŃ ŃŠ»ŠµŠ“ŃŃŃŠøŠµ ŃŠ°Š¹Š»Ń:
/cim_models/<model_id>/
|- model.geo.json | Файл моГели ŠæŃŠµŠ“Š¼ŠµŃŠ°
|- texture.png | ТекŃŃŃŃŠ° моГели
|- animations.json | ŠŠ½ŠøŠ¼Š°ŃŠøŠø моГели (Š½ŠµŠ¾Š±ŃŠ·Š°ŃŠµŠ»ŃŠ½Š¾)
\- display.json | Š¢ŃŠ°Š½ŃŃŠ¾ŃŠ¼Š°ŃŠøŠø Š¾ŃŠ¾Š±ŃŠ°Š¶ŠµŠ½ŠøŃ (Š½ŠµŠ¾Š±ŃŠ·Š°ŃŠµŠ»ŃŠ½Š¾)
ŠŠµŠ¾Š±Ń оГимо ŠøŃŠæŠ¾Š»ŃŠ·Š¾Š²Š°ŃŃ ŠøŠ¼ŠµŠ½Š½Š¾ ŃŃŠø имена ŃŠ°Š¹Š»Š¾Š².
Š ŠæŃŠ¾Ńивном ŃŠ»ŃŃŠ°Šµ, ŠµŃŠ»Šø ŃŃŠµŠ±ŃеŃŃŃ Š±Š¾Š»ŠµŠµ Š“ŠµŃŠ°Š»ŃŠ½Š°Ń Š½Š°ŃŃŃŠ¾Š¹ŠŗŠ° моГели, необŃ
оГимо ŃŠ¾Š·Š“аŃŃ ŃŠ°Š¹Š» properties.json по ŠæŃŃŠø
/cim_models/<model_id>/properties.json ŃŠ¾ ŃŠ»ŠµŠ“ŃŃŃŠøŠ¼ ŃŠ¾Š“ŠµŃŠ¶ŠøŠ¼Ńм:
{
"name": /* ŠŠ°Š·Š²Š°Š½ŠøŠµ моГели (в Š“Š°Š½Š½ŃŠ¹ Š¼Š¾Š¼ŠµŠ½Ń Š½Šµ ŠøŃŠæŠ¾Š»ŃŠ·ŃеŃŃŃ) */,
"authors": /* Š”ŠæŠøŃŠ¾Šŗ Š°Š²ŃŠ¾Ńов (в Š“Š°Š½Š½ŃŠ¹ Š¼Š¾Š¼ŠµŠ½Ń Š½Šµ ŠøŃŠæŠ¾Š»ŃŠ·ŃеŃŃŃ) */,
"disable_ground_bobbing": true, // ŠŃŠŗŠ»ŃŃŠ°ŠµŃ Ā«ŠæŠ°ŃŠµŠ½ŠøŠµĀ» ŠæŃŠµŠ“Š¼ŠµŃŠ° (Гвижение ввеŃŃ
-вниз)
"disable_ground_spinning": true, // ŠŃŠŗŠ»ŃŃŠ°ŠµŃ Š²ŃŠ°Ńение ŠæŃŠµŠ“Š¼ŠµŃŠ° на земле
"display_context": {
/* Š”Š²ŃŠ·Ń Š¼ŠµŠ¶Š“Ń item_display_context Šø cim_profile */
}
}
ŠŠ¾Š»Šµ display_context заГаŃŃ ŠæŃŠ¾ŃŠøŠ»Ń ŠæŠ¾ ŃŠ¼Š¾Š»ŃŠ°Š½ŠøŃ Š“Š»Ń item_display_context, ŃŠ°Š²Š½Š¾Š³Š¾ none:
"none": { // ŠŃ Š¼Š¾Š¶ŠµŃŠµ его ŠæŠµŃŠµŠ·Š°ŠæŠøŃаŃŃ
"model": "./model.geo.json",
"texture": "./texture.png",
"animations": "./animations.json",
"display": "./display.json"
}
ŠŠ“е:
modelā ŠŃŃŃ Šŗ ŃŠµŃŃŃŃŃ Š¼Š¾Š“ŠµŠ»Šø. ŠŠ»Ń Š»Š¾ŠŗŠ°Š»ŃŠ½ŃŃ ŃŠµŃŃŃŃŠ¾Š² ŠøŃŠæŠ¾Š»ŃŠ·ŃŠ¹ŃŠµ ŠæŃŠµŃŠøŠŗŃ./.textureā ŠŃŃŃ Šŗ ŃŠµŠŗŃŃŃŃŠµ моГели. ŠŠ»Ń Š»Š¾ŠŗŠ°Š»ŃŠ½ŃŃ ŃŠµŃŃŃŃŠ¾Š² ŠøŃŠæŠ¾Š»ŃŠ·ŃŠ¹ŃŠµ ŠæŃŠµŃŠøŠŗŃ./.animationsā ŠŃŃŃ Šŗ ŃŠ°Š¹Š»Ń Š°Š½ŠøŠ¼Š°ŃŠøŠ¹. ŠŠµŠ¾Š±ŃŠ·Š°ŃŠµŠ»ŃŠ½ŃŠ¹ ŠæŠ°ŃŠ°Š¼ŠµŃŃ. ŠŃŠæŠ¾Š»ŃŠ·ŃŠ¹ŃŠµ./Š“Š»Ń Š»Š¾ŠŗŠ°Š»ŃŠ½ŃŃ ŃŠµŃŃŃŃŠ¾Š².displayā ŠŃŃŃ Šŗ ŃŠ°Š¹Š»Ń ŃŃŠ°Š½ŃŃŠ¾ŃŠ¼Š°ŃŠøŠ¹ Š¾ŃŠ¾Š±ŃажениŃ. ŠŠµŠ¾Š±ŃŠ·Š°ŃŠµŠ»ŃŠ½ŃŠ¹ ŠæŠ°ŃŠ°Š¼ŠµŃŃ. ŠŃŠæŠ¾Š»ŃŠ·ŃŠ¹ŃŠµ./Š“Š»Ń Š»Š¾ŠŗŠ°Š»ŃŠ½ŃŃ ŃŠµŃŃŃŃŠ¾Š².
ŠŠ»Ń Š“ŃŃŠ³ŠøŃ
ŠŗŠ¾Š½ŃŠµŠŗŃов не Š¾Š±ŃŠ·Š°ŃŠµŠ»Ńно ŠæŠµŃŠµŠæŠøŃŃŠ²Š°ŃŃ ŠæŃŠ¾ŃŠøŠ»Ń Š² ŃŠ¾ŃŃ-ŃŠ¾ŃŃ, ГоŃŃŠ°ŃŠ¾ŃŠ½Š¾ ŃŠŗŠ°Š·Š°ŃŃ ŃŠ¾Š»Ńко Š½ŃжнŃе ŠæŠ°ŃŠ°Š¼ŠµŃŃŃ Š²
ŠæŃŠ¾Ńиле. ŠŃŃŠ°Š»ŃŠ½ŃŠµ же Š±ŃŠ“ŃŃ Š²Š·ŃŃŃ ŠøŠ· none ŠŗŠ¾Š½ŃŠµŠŗŃŃŠ°.



