How can I change the code to make items bigger?
This is the parent class of blocks (../models/block/block.json
), which has more options for displaying them. You could use these settings for specific items or add them to their parent class.
{
"display": {
"gui": {
"rotation": [ 30, 225, 0 ],
"translation": [ 0, 0, 0],
"scale":[ 0.625, 0.625, 0.625 ]
},
"ground": {
"rotation": [ 0, 0, 0 ],
"translation": [ 0, 3, 0],
"scale":[ 0.25, 0.25, 0.25 ]
},
"fixed": {
"rotation": [ 0, 0, 0 ],
"translation": [ 0, 0, 0],
"scale":[ 0.5, 0.5, 0.5 ]
},
"thirdperson_righthand": {
"rotation": [ 75, 45, 0 ],
"translation": [ 0, 2.5, 0],
"scale": [ 0.375, 0.375, 0.375 ]
},
"firstperson_righthand": {
"rotation": [ 0, 45, 0 ],
"translation": [ 0, 0, 0 ],
"scale": [ 0.40, 0.40, 0.40 ]
},
"firstperson_lefthand": {
"rotation": [ 0, 225, 0 ],
"translation": [ 0, 0, 0 ],
"scale": [ 0.40, 0.40, 0.40 ]
}
}
}
You can add parent properties (block/item class for example) to child elements (a specific block/item) in order to overrule them. Even if they are not in the child's json file you can put them there in order to make your changes. You could even add more settings to the block/item class, if the base interface of them supports them.
An example chain of command (from child to parent) would be:
item/crafting_table
<- block/crafting_table
<- block/cube
<- block/block
Changes to block/block
would apply to (inherited by) the whole chain, while changes to item/crafting_table
will only apply to this item type.
How to use the info provided above
Beginners guide: resizing items
To get started you need the following tools (they're all free):
- Text editor (I used Notepad++ for this)
- 7-Zip or similar
- JSON parser to double check for errors
If you don't have any JSON files...
- Locate your minecraft folder (usually
%appdata%/.minecraft
). - Open the jar file of the version you want to work with
(
./versions/1.x.x/1.x.x.jar
) with 7-Zip. - Extract the contents of
assets\minecraft\models
, which should be two folders (block
&item
). They contain all the JSON files you need.
Ok, you're good to go. As described above, you'll need some extra properties from the parent class. I'm using a crafting table, since I already used it as example.
- Locate the file
block/block.json
and copy thedisplay
block into your clipboard. - Now open the JSON file of the item you wish to edit. (
block/crafting_table.json
in my example) -
Paste the code you copied into this file and make your changes. Your file should end up like this:
{ "parent": "block/cube", "textures": { "particle": "blocks/crafting_table_front", "down": "blocks/planks_oak", "up": "blocks/crafting_table_top", "north": "blocks/crafting_table_front", "east": "blocks/crafting_table_side", "south": "blocks/crafting_table_side", "west": "blocks/crafting_table_front" }, "display": { "gui": { "rotation": [ 30, 225, 0 ], "translation": [ 0, 0, 0], "scale":[ 1.3, 0.3, 0.3 ] }, "ground": { "rotation": [ 0, 0, 0 ], "translation": [ 0, 3, 0], "scale":[ 0.015, 0.015, 0.015 ] }, "fixed": { "rotation": [ 0, 0, 0 ], "translation": [ 0, 0, 0], "scale":[ 1.5, 2.0, 1.0 ] }, "thirdperson_righthand": { "rotation": [ 75, 45, 0 ], "translation": [ 0, 2.5, 0], "scale": [ 0.5, 2.0, 0.5 ] }, "firstperson_righthand": { "rotation": [ 0, 45, 0 ], "translation": [ 0, 0, 0 ], "scale": [ 1.04, 0.04, 1.04 ] }, "firstperson_lefthand": { "rotation": [ 0, 225, 0 ], "translation": [ 0, 0, 0 ], "scale": [ 0.40, 0.40, 0.40 ] } } }
-
Code blocks of the same hierarchy are separated with a comma, so make sure you have one in this part:
}, "display": {
Save the file(s) when you're done.
- Double check your code by opening the JSON parser I suggested above. Paste your code into it and if it doesn't show any errors you can go on. If you did something wrong you'd probably end up with this:
(Yes, I forgot the comma)
Now where to put the newly created item enhancements?
- By creating a resource pack...
-
We'll need 7-Zip again.
- The base dir will be assets, which you'll find in the structure you extracted from the jar file in step 1. This will be our entry point.
- To save work and space and other things we don't want to copy all the files we didn't change, so create a new folder named
assets
on your desktop or any other desired location. - Inside
assets
, create the same folder structure you find in the extracted one:- minecraft -- models --- block --- item (if applicable)
- Copy your changed JSON files in the folder they are originally from (block to block, item to item)
-
Create a file named
pack.mcmeta
with the following code:{ "pack": { "pack_format": 1, "description": "something" } }
Create a ZIP archive with 7-Zip with
assets
as its base and thepack.mcmeta
file right next to it. If you open the ZIP file you should see the assets folder and the pack file right there.- Put the ZIP file in your
.minecraft/resourcepacks
folder and start minecraft - Load the resource pack like you would normally do. It should be compatible with existing ones.
- If you did it right, Excalibur awaits you.
Once you have done all this, the next steps will be easier. You can just drag and drop newly edited files into your existing archive in your resourcepacks folder. There is no need to (un-)zip everything all over again.