With 1.12 here, I thought this was the perfect time to finally make a json generator.
I did not make the generator have a gui - because I didn't want to. The main Idea was that you would be able to generate tons of files in seconds.
The generator can currently generate:
Normal Items
Handheld Items (Swords, Tools)
Normal Blocks
Orientable Blocks (Furnaces, Machines)
Blocks with Properties
Slabs
Stairs
Shaped Crafting Recipes
Shapeless Crafting Recipes
I'm planning to add:
Oredict Crafting Recipes
Fences
Pillars
Usage:
First, when you download the file, place it somewhere in a folder and run it once. DO NOT RENAME THE JAR. A bunch of files and folders will be generated.
Open the "modid.txt" file and write your mod's modid on the first line, save and close.
Next, in the params folder, you find all the txts that you need to edit in order to generate files. In the base folder you will find an Example.txt, which will look like this:
Normal Block:
test_block
This creates a blockstate file called 'test_block.json', a block model file called 'test_block.json' and an item model file called 'test_block.json'
The block will try to use a texture called 'test_block', which is located in /textures/blocks
Handheld Item:
test_sword
This creates an item model file called 'test_sword.json'. The item model will look like a sword when held
The item will try to use a texture called 'test_sword', which is located in /textures/items
Normal Item:
test_apple
This creates an item model file called 'test_apple.json'
The item will try to use a texture called 'test_apple', which is located in /textures/items
Orientable Block:
test_furnace
This creates a blockstate file called 'test_furnace.json', a block model file called 'test_furnace.json' and an item model file called 'test_furnace.json' The block will behave like an orientable block (like a furnace)
The block will try to use textures called 'test_furnace_top', 'test_furnace_front' and 'test_furnace_side', all of them are located in /textures/blocks
Slab Block:
test
This creates two blockstate files, one named 'test_slab.json', the other named 'test_slab_double'. Note how the _slab suffix is added automatically
It also creates two block model files, one called 'test_slab.json' and one called 'test_slab_double.json'. It creates one item model file called 'test_slab.json'
The block will try to use a texture called 'test', which is located in /textures/blocks
Stair Block:
test
This creates a blockstate file called 'test_stair.json'. Note how the _stair suffix is added automatically
It also creates three block model files, one called 'test_stair.json', one called 'test_stair_inner.json' and one called 'test_stair_outer.json'. It creates one item model file called 'test_stair.json'
The block will try to use a texture called 'test', which is located in /textures/blocks
Variant Block / Block with Properties:
test_clay;blue,red,green:color
This creates a blockstate file called 'test_clay.json'. It creates block model files for each variant, in this case 'blue.json', 'red.json' and 'green.json'. It also creates Item model files for all variants with the same names.
The block will try to use textures called 'blue', 'red' and 'green', all of them are located in /textures/blocks
Shaped Recipes:
3*minecraft:stone;3,(###,#P#,###),#,minecraft:dirt;2,P,minecraft:dirt:3,?group
This creates a recipe file called 'stone.json'
The first argument is the recipe output. Using NUMBER*, you can specify how many items are created. The ;3 after the minecraft:stone refers to the damage value of the output
The second argument in brackets is the recipe. The lines are separated with commas (first is top line in crafting, second is middle line and third is last line). You can also not write lines (for 4x4 crafting). (##,##). You can use any characters as identifiers apart from *,;:?
The next arguments specify what the characters in the second argument stand for. The format for items is the same (modid:name;meta). You cannot specify a count.
The last argument is indicated by the '?'. It is the group name, if you want to group your recipes. If you don't write a ?, it will not assign the recipe to a group.
Shapeless Recipes:
3*minecraft:stone;3,minecraft:dirt;2,minecraft:dirt:3,?group
This creates a recipe file called 'stone.json'
The first argument is the recipe output. Using NUMBER*, you can specify how many items are created. The ;3 after the minecraft:stone refers to the damage value of the output
The next arguments specify the ingredients used in this recipe. The format for items is the same (modid:name;meta). You cannot specify a count.
The last argument is indicated by the '?'. It is the group name, if you want to group your recipes. If you don't write a ?, it will not assign the recipe to a group.
The main purpose of this is, that you can have as many blocks generated at once as you want. Just make a new line in the respective file.
Most mods have many crafting recipes. I just found it to be useful when updating. I'm not forcing you to use it.
Oh this is for crafting recipes...
That was not obvious reading your thread. You only mainly say "Json files" and nothing in particular so I thought you were talking about the model files for items and blocks.
With 1.12 here, I thought this was the perfect time to finally make a json generator.
I did not make the generator have a gui - because I didn't want to. The main Idea was that you would be able to generate tons of files in seconds.
The generator can currently generate:
I'm planning to add:
Usage:
First, when you download the file, place it somewhere in a folder and run it once. DO NOT RENAME THE JAR. A bunch of files and folders will be generated.
Open the "modid.txt" file and write your mod's modid on the first line, save and close.
Next, in the params folder, you find all the txts that you need to edit in order to generate files. In the base folder you will find an Example.txt, which will look like this:
Normal Block:
test_block
This creates a blockstate file called 'test_block.json', a block model file called 'test_block.json' and an item model file called 'test_block.json'
The block will try to use a texture called 'test_block', which is located in /textures/blocks
Handheld Item:
test_sword
This creates an item model file called 'test_sword.json'. The item model will look like a sword when held
The item will try to use a texture called 'test_sword', which is located in /textures/items
Normal Item:
test_apple
This creates an item model file called 'test_apple.json'
The item will try to use a texture called 'test_apple', which is located in /textures/items
Orientable Block:
test_furnace
This creates a blockstate file called 'test_furnace.json', a block model file called 'test_furnace.json' and an item model file called 'test_furnace.json' The block will behave like an orientable block (like a furnace)
The block will try to use textures called 'test_furnace_top', 'test_furnace_front' and 'test_furnace_side', all of them are located in /textures/blocks
Slab Block:
test
This creates two blockstate files, one named 'test_slab.json', the other named 'test_slab_double'. Note how the _slab suffix is added automatically
It also creates two block model files, one called 'test_slab.json' and one called 'test_slab_double.json'. It creates one item model file called 'test_slab.json'
The block will try to use a texture called 'test', which is located in /textures/blocks
Stair Block:
test
This creates a blockstate file called 'test_stair.json'. Note how the _stair suffix is added automatically
It also creates three block model files, one called 'test_stair.json', one called 'test_stair_inner.json' and one called 'test_stair_outer.json'. It creates one item model file called 'test_stair.json'
The block will try to use a texture called 'test', which is located in /textures/blocks
Variant Block / Block with Properties:
test_clay;blue,red,green:color
This creates a blockstate file called 'test_clay.json'. It creates block model files for each variant, in this case 'blue.json', 'red.json' and 'green.json'. It also creates Item model files for all variants with the same names.
The block will try to use textures called 'blue', 'red' and 'green', all of them are located in /textures/blocks
Shaped Recipes:
3*minecraft:stone;3,(###,#P#,###),#,minecraft:dirt;2,P,minecraft:dirt:3,?group
This creates a recipe file called 'stone.json'
The first argument is the recipe output. Using NUMBER*, you can specify how many items are created. The ;3 after the minecraft:stone refers to the damage value of the output
The second argument in brackets is the recipe. The lines are separated with commas (first is top line in crafting, second is middle line and third is last line). You can also not write lines (for 4x4 crafting). (##,##). You can use any characters as identifiers apart from *,;:?
The next arguments specify what the characters in the second argument stand for. The format for items is the same (modid:name;meta). You cannot specify a count.
The last argument is indicated by the '?'. It is the group name, if you want to group your recipes. If you don't write a ?, it will not assign the recipe to a group.
Shapeless Recipes:
3*minecraft:stone;3,minecraft:dirt;2,minecraft:dirt:3,?group
This creates a recipe file called 'stone.json'
The first argument is the recipe output. Using NUMBER*, you can specify how many items are created. The ;3 after the minecraft:stone refers to the damage value of the output
The next arguments specify the ingredients used in this recipe. The format for items is the same (modid:name;meta). You cannot specify a count.
The last argument is indicated by the '?'. It is the group name, if you want to group your recipes. If you don't write a ?, it will not assign the recipe to a group.
The main purpose of this is, that you can have as many blocks generated at once as you want. Just make a new line in the respective file.
Download:
v1.0
There will probably be bugs, so please, report any funny business here!
I hope it helps you, especially for updating your mods to 1.12!
It's pronounced "chip".
You do know that MC has been using json files for models since 1.8? What makes this so special now?
Most mods have many crafting recipes. I just found it to be useful when updating. I'm not forcing you to use it.
It's pronounced "chip".
Oh this is for crafting recipes...
That was not obvious reading your thread. You only mainly say "Json files" and nothing in particular so I thought you were talking about the model files for items and blocks.