I want to change the model of the shield, but when I try to open the .json file it says "This file is a child of builtin/entity and does not contain a model." and I don't know what it means. I'm new to modelling, never tried it before.
I want to change the model of the shield, but when I try to open the .json file it says "This file is a child of builtin/entity and does not contain a model." and I don't know what it means. I'm new to modelling, never tried it before.
It means that Mojang loves it's weird stuff and edge-cases that aren't good for resource pack artists.
So the shield model isn't really a model. It's just kind of a file that says "check the game code" when the game goes to look for a model. So where is the actual shield model? Well.... it's in the game code. In a place that can't be changed by a Resource Pack unfortunately.
Now you might ask why this is the case? Well it's because the shield can be changed by using banners on it. When Mojang set that up, they decided that instead of extending the model system... they're just make the shield an "entity" (as in, more like a mob than an item as you normally think of it) and do the textures through the system they already had in place for horses.
The side-effect of this is that because entity models aren't a thing in vanilla Java-Edition Minecraft, that there's no way to directly alter the shield model that Minecraft uses.
Now, I can already hear you saying "But wait! I've seen custom shields in other packs! How did they do it then if it's not able to be altered?!"
Well they did it by creating their OWN model and changing the shield "model" .json files (the ones that you tried to open) to point to their new model instead of the builtin/generated model that Minecraft normally uses. So it's less "altering the model" and more "I reject your model and substitute my own". This of course requires making a model from scratch and not using an existing template, but it can be done.
The down side of this approach is that they're also circumventing all of the code that allows banner patterns to be applied to the shield. So that's the trade-off: You can change the shield's model... but that also means no more patterns for you. So it's up to you if you decide that this is worth it for your pack or not.
So, I've made a new shield model, textured it and did the Display things in Blockbench. How can I substitute the shield model by my own model? Resource packs?
So, I've made a new shield model, textured it and did the Display things in Blockbench. How can I substitute the shield model by my own model? Resource packs?
The easiest way is just to replace the default 'model' file .json with your own actual model .json
You'll need to adjust the positioning for the "blocking" version, of course, but otherwise it's a fairly simple operation.
How can I do this? With a resource pack or what? I now if I change something in the version file it would go back to normal when I launch the game.
Well yes, this is the Resource Packs forum so I assumed that's what you were doing all along.
But yeah, you can't just alter the game files since Minecraft reads them as corrupt and so downloads a fresh copy to fix whatever you messed with. So yeah, you need to create a resource pack to do this.
Really all you need in your pack is a pack.mcmeta file in the root of the pack, the folders that your files will be in (/assets/minecraft/models/item/), and then the .json files themselves in that folder tree. Just mirror the folder structure and file names in the game's .jar file. It's pretty easy.
Got it, but the model is a big untexturized cube. I don't know what is wrong with it.
Edit: Nevermind, I got it, but now I need to polish it and do a blocking version. Thanks for the help!
I want to change the model of the shield, but when I try to open the .json file it says "This file is a child of builtin/entity and does not contain a model." and I don't know what it means. I'm new to modelling, never tried it before.
It means that Mojang loves it's weird stuff and edge-cases that aren't good for resource pack artists.
So the shield model isn't really a model. It's just kind of a file that says "check the game code" when the game goes to look for a model. So where is the actual shield model? Well.... it's in the game code. In a place that can't be changed by a Resource Pack unfortunately.
Now you might ask why this is the case? Well it's because the shield can be changed by using banners on it. When Mojang set that up, they decided that instead of extending the model system... they're just make the shield an "entity" (as in, more like a mob than an item as you normally think of it) and do the textures through the system they already had in place for horses.
The side-effect of this is that because entity models aren't a thing in vanilla Java-Edition Minecraft, that there's no way to directly alter the shield model that Minecraft uses.
Now, I can already hear you saying "But wait! I've seen custom shields in other packs! How did they do it then if it's not able to be altered?!"
Well they did it by creating their OWN model and changing the shield "model" .json files (the ones that you tried to open) to point to their new model instead of the builtin/generated model that Minecraft normally uses. So it's less "altering the model" and more "I reject your model and substitute my own". This of course requires making a model from scratch and not using an existing template, but it can be done.
The down side of this approach is that they're also circumventing all of the code that allows banner patterns to be applied to the shield. So that's the trade-off: You can change the shield's model... but that also means no more patterns for you. So it's up to you if you decide that this is worth it for your pack or not.
I hope that explains matters.
So, I've made a new shield model, textured it and did the Display things in Blockbench. How can I substitute the shield model by my own model? Resource packs?
This is the model I've done in Blockbench.
The easiest way is just to replace the default 'model' file .json with your own actual model .json
You'll need to adjust the positioning for the "blocking" version, of course, but otherwise it's a fairly simple operation.
How can I do this? With a resource pack or what? I now if I change something in the version file it would go back to normal when I launch the game.
Well yes, this is the Resource Packs forum so I assumed that's what you were doing all along.
But yeah, you can't just alter the game files since Minecraft reads them as corrupt and so downloads a fresh copy to fix whatever you messed with. So yeah, you need to create a resource pack to do this.
Really all you need in your pack is a pack.mcmeta file in the root of the pack, the folders that your files will be in (/assets/minecraft/models/item/), and then the .json files themselves in that folder tree. Just mirror the folder structure and file names in the game's .jar file. It's pretty easy.
I hope that helps you.
Got it, but the model is a big untexturized cube. I don't know what is wrong with it.
Edit: Nevermind, I got it, but now I need to polish it and do a blocking version. Thanks for the help!