Started by
@sashakyotoz
on
Topic category: User side tutorials
Custom structures with jigsaw generation:
-
Creating of Structures:
Preamble: this tutorial will work on versions from 1.14.4 - 1.19.4, but below 1.19.4 we must write name of template pool and path to it in template pool
Every structure set must have:
Center of structure(where will be placed jigsaw blocks, that generate whole structure set)
Connector of parts(some streets or corridors that will generate another connectors or houses/decorators/anything that you want)
-
Adding of jigsaw blocks:
Jigsaw block have next parameters:
target pool(path to "storange of structures")
target name/name("identifying key" of structure, that allows to jigsaw block to find needable structure)
turns into(transforming of jigsaw block to some block after generation)
Jigsaw block in entrance(so important to place jigsaw block on border of structure, else jigsaw won't generate other onces)
If target pool is empty, then it will be just like target name to another, if target pool isn't empty, then jigsaw will try to find and generate structure in current pool
-
Writing of Template pools:
In folder data/"your_modid" we should make new folders - worldgen/structure, stucture_set and template_pool
(Json files we must write absolutly like in jigsaw blocks in structures)
If you use version of Minecraft below 1.19.4 than you should add upper of fallback next one:
"name:modid+ path to this template pool + name of this file"
weight(chance to spawn some structure from current pool)
projection(type of generation of structures, if you wrote rigid, then structure won't be changed during generation, else if you wrote terrain_matching, then structure will be spawned adaptable to world surface)
location(path to structure)
processors(rules to spawn structure)
-
Writing of structure.json and structure_set.json:
File of structure.json you can generate here: https://misode.github.io/worldgen/structure/
File of structure_set.json you can generate here: https://misode.github.io/worldgen/structure-set/
-
Finally, test it in game, and fix errors if they are
File of template pool you can generate here: https://misode.github.io/worldgen/template-pool/
Any incorrectness in json file will cause safe mode in minecraft
My tutorial how to make own village in Mcreator:https://www.youtube.com/watch?v=4qIqKOzYI7U
Edited by @sashakyotoz on Fri, 06/30/2023 - 02:59
Amazing!
what's the point of the code? where is that meant to be executed?
NerdyPuzzle, if you mean java script, then it fixes template pool and is necessary for old versions, but in versions 1.18 and newer it's not needed
Javascript and Java are 2 very different languages. Java is used for software development, and Javascript is mostly used for websites. Also I really don't see why you'd ever want to write that code if it isn't actually used anywhere. It doesn't seem like you are subscribing to any events so that code would never be used.
I splited java and script by Space, and i meant script that wrote on Java
I tried this and then got this error
java.lang.IllegalStateException: Unbound values in registry ResourceKey[minecraft:root / minecraft:worldgen/structure]: [hard_mc:brickshaft]
i have no idea what this means
you have problem with json file in folder "structure"
can you put that here?
Hey do you by chance have a guide for using those structure file generators?
This post isnt really clear
Between this and a couple of other videos I was able to get it to work. The json generator was very helpful as well
Will this work in 1.20+?
Gearsaw Studios yes it works fine on 1.20, 1.20.1 and 1.20.2, but in 1.21 where will be some changes with jigsaw blocks i'm not sure
Thank you for the detailed exlpanation!
For me it works fine when I place it with command but it won't generate in the world.
I already tried /locate structure and it says that it couldn't be found.
I have looked on all your json's but I can't find the solution, I am on Mcraetor version 2023.3 if that is relevant.
Any help is welcome!