#Custom structure made from 4 separate Jigsaw components. Then generating within the world.

1 messages · Page 1 of 1 (latest)

jagged crown
#

I created a structure, and split it into quarters. I have 4 separate structure files for this structure. Im a bit confused on how to create a datapack that would allow the generation of this structure, and then including it within the world generation of the world.

I have only done this with a singular structure file for one structure, and not 4 files using jigsaw's, so thats where im confused about.

can someone help?

jagged crown
#

also, I think there is something the discord made that explains this, but im not sure about the spesific web page. So looking at that while you walk me through it would be great too.

#

Here is the border intersect of the 4 structure blocks

#

here are the jigsaw connections

#

the structure files are named:

konoha:hokage_office_bottom_left
konoha:hokage_office_bottom_right
konoha:hokage_office_top_left
konoha:hokage_office_top_right

the jigsaw connections are named:

konoha:top_right
konoha:top_left
konoha:bottom_left
konoha:bottom_right

with the Target name being the other side of the connecting jgsaw

#

also, here is the outside of the build itself

#

here is the file organization I used for my previous project

#

also, the saved .nbt files were not saved with the jigsaw blocks in them. Just to note

lilac copperBOT
#

-# (helpers summoned) <@&1166082198152159386> <@&1202694677766348840>

stoic wharf
jagged crown
#

could you tell me the file set up with the labels i created. the template pool and specific structure names in the guide are confusing @stoic wharf

stoic wharf
#

I don't understand the question

jagged crown
#

like in the guide, im getting confused on how Im labeling my own things, since the examples that are given are for villages and stuff. I think the one i need to look at is the bastion stuff, but even then the file organization confuses me. like look at the attached. I dont know which file styructure would apply to me so Im asking if you can tell me with my own labels:

the structure files are named:

hokage_office_bottom_left
hokage_office_bottom_right
hokage_office_top_left
hokage_office_top_right

the jigsaw connections are named:
:top_right
konoha:top_left
konoha:bottom_left
konoha:bottom_right

#

how my folder shoould be organized

stoic wharf
#

You can name things whatever you want as long as it's consistent

#

The name of folders and files inside of worldgen/structure, worldgen/structure_set, and worldgen/template_pool doesn't matter, it just changes how you reference them in one another

jagged crown
stoic wharf
#

The JSON files inside the folders

#

And if you're in 1.21+, the structures folder is named structure instead

jagged crown
#

im in 1.20.1 so it should be fine. what json file would be containing the jigsaw stuff, also I dont think the jigsaws are sepratly saved, are they inside the nbt files of the structure?

stoic wharf
#

I describe all of the JSON files extremely thoroughly in the guide

jagged crown
#

ya, and its confusing when I read it

stoic wharf
#

You need to save your structure NBT files with the Jigsaw Blocks inside them

stoic wharf
jagged crown
#

you just did with that one so thanks. Another question, is the jigsaw related json file in the template pool folder?

#

last time I did this, it was for spawning in a specific biome

#

so what would be different

stoic wharf
#

All of these files are related to Jigsaw Structures, which is what you're creating any time you're making a custom structure

#

Template Pool files get referenced by the structure JSON file to determine which structure NBT file should be spawned as the starting piece, and are also referenced by Jigsaw Blocks to determine what connecting structure to generate from that Jigsaw Block

#

If you're making a custom structure that doesn't use Jigsaw Blocks, you still need a template pool to generate that first and only structure NBT piece. If you are using Jigsaw Blocks, you typically need at least one additional template pool to be referenced by your Jigsaw Block(s)

jagged crown
#

got it, what about the structure_set JSON file:

attached is what is given as an example. The thing is, I dont know what I need to label my structures as, since the structure files I do have are parts of the same structure

stoic wharf
#

You can label your structure JSON whatever you want

#

This is then where you reference them based on whatever you named them

#

If you're only making one custom structure, you only need to list one such structure in this structure_set file

jagged crown
#

the thing is, is that it was labeled something else in the saving of the structure file. Does that mean that the name of the structure in structure_set is different then the name of the structure files itself?

stoic wharf
#

You're getting the different things called structures confused

#

structure JSON -> The JSON file that goes in worldgen/structure. Defines details about a particular custom structure, like what biomes it spawns in
structure NBT -> The actual build that gets saved with a structure block, and goes in <namespace>/structures

The structure_set references structure JSONs

jagged crown
#

ohhhh, then would I need for separate jsons for each part of the structure within the structure json?

stoic wharf
#

NO

#

It's all one "custom structure"

#

It is just made of multiple pieces, each of which is a structure NBT

#

The structure JSON will generate your singular custom structure as the designated location, starting with the template_pool you tell it to start with, which will select the starting structure NBT piece from among all the ones you listed, which may only be one. That structure NBT piece will then, for each of its Jigsaw Blocks that has a Target Pool, generate additional connecting structure pieces using those referenced template_pools to select between.

jagged crown
#

how can I make it so it only chooses a specific piece instead of choosing within the template pool. I made my jigsaws so it connects for two of the structures sides. I dont what my top right corner to end up in the bottom left after all

stoic wharf
#

Make the template pool have only one piece listed.

jagged crown
#

but there are 4 pieces?

stoic wharf
#

YUP

#

But only one of them need to be placed FIRST, yes?

jagged crown
#

yes, your right. Does that mean that I dont even need to mention the the jigsaw names or the other pieces of the structure? Just one piece, within the template pool?

stoic wharf
#

The template pool doesn't ever reference jigsaw names at all

jagged crown
#

I know, does anything tho

stoic wharf
#

Just other Jigsaw Blocks

jagged crown
#

got it, so I dont need to pay attention to that anymore then. continoue on with the template pool explination. Do i just need to do one piece of the structure in it, as the first one it starts with, or do i need to include all 4 pieces

stoic wharf
#

Hey btw just throwing my own pictures back at me is actually really annoying and not remotely helpful.

jagged crown
#

its not for you, its for me, so I can understand better

stoic wharf
jagged crown
#

then why in the tamplate pool, did you include meeting point one, and fountain one, if all im going to need to put there is for example, hokage_office_bottom_left

stoic wharf
#

Because VANILLA VILLAGES have MULTIPLE POSSIBLE STRUCTURES that they can use as their starting piece

#

You don't HAVE TO, they just WANTED TO

jagged crown
#

ok, and the file route should just be to my nbt file right

stoic wharf
#

Essentially

#

minecraft will be your namespace, and you won't include the structures folder in the path

#

So if the nbt file is directly inside structures, it would just be <namespace>:<name of file>

jagged crown
#

the namespace would be another folder tho right? So it would go structures -> konoha -> hokage_office_bottom_left

so it would be konoha:hokage_office_bottom_left

did I get that right?

stoic wharf
#

No

olive sandBOT
#
# Minecraft Datapack folder structure
# Last updated: Jul 1, 2024

.
├── pack.mcmeta
├── pack.png
└── data
    └── <namespace>
        ├── advancement
        ├── enchantment
        ├── enchantment_provider
        ├── function
        ├── item_modifier
        ├── loot_table
        ├── predicate
        ├── recipe
        ├── structure
        ├── chat_type
        ├── damage_type
        ├── trim_material
        ├── trim_pattern
        ├── jukebox_song
        ├── painting_variant
        ├── wolf_variant
        ├── tags
        |   ├── banner_pattern
        │   ├── block
        │   ├── cat_variant
        │   ├── damage_type
        │   ├── entity_type
        │   ├── fluid
        │   ├── function
        │   ├── game_event
        │   ├── instrument
        │   ├── item
        │   ├── painting_variant
        │   ├── point_of_interest_type
        │   └── worldgen
        ├── dimension
        ├── dimension_type
        └── worldgen
            ├── biome
            ├── configured_carver
            ├── configured_feature
            ├── density_function
            ├── noise
            ├── noise_settings
            ├── placed_feature
            ├── processor_list
            ├── structure
            ├── structure_set
            ├── template_pool
            ├── world_preset
            └── flat_level_generator_preset
jagged crown
#

Just realized this is not a custom one but a template preset you just forwarded

stoic wharf
#

Well yeah, it's a folder structure example

#

So you can see where the namespace folder is relative to others.