#World Generation General
1 messages Ā· Page 12 of 1
nah, molang doesn't have ranges (i wish it did)
here's a basic example:
v.current_blend = 1;
v.blend_factor = 1;
v.blend_dist = 8;
loop(v.blend_dist, {
v.current_blend = math.max(0, v.current_blend - (1 / v.blend_dist));
!q.has_biome_tag('foo', v.worldx + v.blend_dist, 100, v.worldz)
|| !q.has_biome_tag('foo', v.worldx - v.blend_dist, 100, v.worldz)
|| !q.has_biome_tag('foo', v.worldx, 100, v.worldz + v.blend_dist)
|| !q.has_biome_tag('foo', v.worldx, 100, v.worldz - v.blend_dist)
|| !q.has_biome_tag('foo', v.worldx + v.blend_dist, 100, v.worldz + v.blend_dist)
|| !q.has_biome_tag('foo', v.worldx - v.blend_dist, 100, v.worldz - v.blend_dist)
|| !q.has_biome_tag('foo', v.worldx + v.blend_dist, 100, v.worldz - v.blend_dist)
|| !q.has_biome_tag('foo', v.worldx - v.blend_dist, 100, v.worldz + v.blend_dist) ? {
v.blend_factor = v.current_blend;
};
v.blend_dist = v.blend_dist - 1;
});
it searches for the nearest non-matching biome and sets blend_factor based on its distance
breh you literally just said itd work š
i thought you meant a range, not an actual syntax 
me when i write too much rust
also two of those variables appear to be doing literally nothing
you'd supply blend_factor as the last arg in math.lerp
have you tried it? it would blend the terrain at the edges
seems to work just fine (blend distance is set to 16, dirt represents custom mountain feature, stone is original vanilla terrain on a custom biome)
for reference, here's how it looks like without blending
v.current_blend = 1;
v.blend_factor = 1;
v.blend_dist = 16;
loop(v.blend_dist, {
v.current_blend = math.max(0, v.current_blend - (1 / v.blend_dist));
!q.has_biome_tag('hills', v.worldx + v.blend_dist, 100, v.worldz)
|| !q.has_biome_tag('hills', v.worldx - v.blend_dist, 100, v.worldz)
|| !q.has_biome_tag('hills', v.worldx, 100, v.worldz + v.blend_dist)
|| !q.has_biome_tag('hills', v.worldx, 100, v.worldz - v.blend_dist)
|| !q.has_biome_tag('hills', v.worldx + v.blend_dist, 100, v.worldz + v.blend_dist)
|| !q.has_biome_tag('hills', v.worldx - v.blend_dist, 100, v.worldz - v.blend_dist)
|| !q.has_biome_tag('hills', v.worldx + v.blend_dist, 100, v.worldz - v.blend_dist)
|| !q.has_biome_tag('hills', v.worldx - v.blend_dist, 100, v.worldz + v.blend_dist) ? {
v.blend_factor = v.current_blend;
};
v.blend_dist = v.blend_dist - 1;
});
v.height = 48 * ((q.noise(v.worldx / 40, v.worldz / 40) + 1) / 2);
v.height = v.blend_factor == 1
? v.height
: math.lerp(q.heightmap(v.worldx, v.worldz) - 64, v.height, v.blend_factor);
return v.height;
heightmap has to be offset since my feature rule starts Y level at 64
So what are the basics of structure generation I want to put a structure in my addon but I don't know how it works
There are two ways jigsaw and features
I'll go with features
how would i make a feature that adjusts itself to the terrain shape?
I don't think it's exactly possible.
dang that's annoying
It depends on what you mean by "adapt."
If it involves changing the terrain, I'm not entirely sure, but if it involves generating the feature based on the terrain, then yes.
adjust as in "placed exactly above the highest block on the terrain"? similar to how trees and vegetation are placed?
I suspect the answer is no, but is there a way to make natural caves stop spawning so I could use custom spawns of my own? I know you could create ore spawns that swap "air" for a selected block but I am wondering if there isn't a better, more elegant way.
caves are part of the initial base terrain gen pass (before biomes and features are placed), so sadly no
I suspected as much, thank you
modifying villages works
jigsaws in roads of villages seem to be sunk into the road in comparison to java where they sit on top
same thing applies to the jigsaws placing decorations
got the snowy shepherds house back in and the reference to the vanilla village/common/sheep pool went swimmily
no, I mean "project itself onto the terrain" kind of like how posdzol patches generate
yes, generating a feature based on the terrain (view above message)
Wow finally
How did you do that
Does anyone know how to completely eliminate these generation errors? I literally have all my biomes in the air
there are a bunch of ways to do that, but the simplest would be to use vegetation_patch_feature which, contrary to its name, can place any blocks and not just vegetation blocks
anyone have a example of any biome?
{
"format_version": "1.20.60",
"minecraft:biome": {
"description": {
"identifier": "jungle"
},
"components": {
"minecraft:climate": {
"downfall": 0.9,
"snow_accumulation": [ 0.0, 0.125 ],
"temperature": 0.95
},
"minecraft:multinoise_generation_rules": {
"target_temperature": 0.4,
"target_humidity": 0.0,
"target_altitude": 0.0,
"target_weirdness": 0.0,
"weight": 0.0
},
"minecraft:overworld_height": {
"noise_type": "default"
},
"minecraft:surface_parameters": {
"sea_floor_depth": 7,
"sea_floor_material": "minecraft:gravel",
"foundation_material": "minecraft:stone",
"mid_material": "minecraft:dirt",
"top_material": "minecraft:grass_block",
"sea_material": "minecraft:water"
},
"minecraft:overworld_generation_rules": {
"hills_transformation": "jungle_hills",
"mutate_transformation": "jungle_mutated",
"generate_for_climates": [
[ "medium", 1 ]
]
},
"minecraft:tags": {
"tags": [
"animal",
"has_structure_trail_ruins",
"jungle",
"monster",
"overworld",
"rare"
]
}
}
}
}
so thanks
so it's called sculk_patch_feature_ancient_city on bedrock and sculk_patch_ancient_city on java
got the shepherds house mostly working
the sheep jigsaw is broken because i forgot to set its final state
other structures fixed
time to tweak some other things
Why are neither of these features valid? I've tried everything to get them to work and yet still nothing.
"format_version": "1.21.100",
"minecraft:scatter_feature": {
"description": {
"identifier": "locdev:polished_andesite_distributor_feature"
},
"places_feature": "locdev:woodland_manor_andesite_foundation_feature",
"distribution": {
"iterations": 100,
"x": 1,
"y": {
"distribution": "fixed_grid",
"extent": [
0,
64
],
"step_size": 1,
"grid_offset": 0
},
"z": 1,
"coordinate_eval_order": "zyx"
}
}
}``` and ```{
"format_version": "1.13.0",
"minecraft:single_block_feature": {
"description": {
"identifier": "locdev:woodland_manor_andesite_foundation_feature"
},
"places_block": "minecraft:polished_andesite",
"enforce_survivability_rules": false,
"enforce_placement_rules": false,
"may_replace": [
"minecraft:air"
]
}
}```
Whats supposed to happen vs what happened?
Whats your feature rule?
They doesnāt even register in the game, /place feature has got them in the list
Iām not sure if they have one
Wdym they dont register, but they appear in the list?
they don't appear in the list
No content log errors they just straight up don't exist it seesm
I'll try registering a feature rule for them
So I got it working but this pillar is extending upwards. Is it possible to make it go down?
Get rid of step size and grid offset. Other than that, that should have made it go down.
Ok Iāll try that when I get home
now it goes up and down from where I was standing
I'm at the same level as where i was when I placed it
Are you doing /place? That might have different placement thatn feature rule
yeah
I am
ill try the featurerule
it tells me that I can't place the featurerule at that location
it placed 37 blocks above where i /placed it
By that I mean natural feature rule not command.
It doesn't generate naturally
it's not supposed to
this is something that only feature_pool_element should ever be placing rn
I'm just using /place rn
feature pool element doesn't work with it
Im gonna decrease iterations to 64 to see if that fixes it
well now it works
thats good
Someone have a tutorial on how to do flat biomes or something like this?
or like this?
a plain generation i want to know how to do it could someone explain me? š
I can, let's talk privately
I think feature_pool_element might be bugged
some of the jigsaws are not placing features like they are supposed to
/place is placing them fine
so i heard that people are starting to make perlin noise in scripting for the world gen...
i mean, there are already existing libraries for various kinds of noise in js
has anyone tried to place structure voids with features?
anyone?
Hi! I'm trying to replace vanilla Oak trees with 6 custom .mcstructure trees. I've set up a weighted_random_feature and tried to override minecraft:oak_tree_feature, but it's not workingāvanilla trees still spawn and mine don't.
check out PavelDobCZ23's No Trees mod, it should put you on the right path
vanilla tree features themselves were moved to legacy and are no longer modifiable
modify the vanilla feature rules to place your custom tree structure instead
Placing a data mode structure block in a custom jigsaw structure doesnāt actually place the data mode block but it doesnāt do anything.
i wanted to know if is possible to change the terrain generation using addons in the new version 26.20.26?
?
Does anyone currently have a good way around the glitch where structures get cut off when 48x
It depends.
using jigsaws or command blocks
Guys i need your help qwq
i dont know how to create paths for cities correctly.
in the next cases in "name" and "target"
case 1: straight street
case 2: curve street
case 3: cross street
because i see sometimes the cross street connects with other cross street or curve street with another curve street
i read you guys qwq
anyone know if its possible to prevent different jigsaws from the same addon from spawning on top of each other? my salt, separation and spacing are all different but for some reason it REALLY likes to spawn 2 structures of all places right next to each other š
They need to be in the same set, otherwise no not really
oh dang
feature pool element is really buggy in naturally generated structures. All of those are supposed to be dirt but a lot failed to generate.
the first house failed to spawn foundations at all but the same house and the farm next to it both spawned their foundations fine for some reason
do entities just randomly decide not to spawn in jigsaw structures? for the same structure sometimes it doesnt spawn any entity inside of it. mobspawning is on and is not peaceful difficulty. it's so dumb how inconsistent ts is š
yeah sometimes some of my structures fail to generate mobs but it only happens on certain jigsaw structures of mine and very rarely. Like 1/50th of them are missing their mobs.
the worst part is how do u even make a bug report for this becoz its so inconsistently not reproducable
How to make something like this spawn naturally , can we make like this? If yes can anyone tell how
this is what placing a structure with /place looks like if the structure can only overwrite non air blocks lol
i wanted to know if is possible to change the terrain generation using addons in the new version 26.20.26?
?
idk if anyone knows this but you can put fog levels in the negative and it puts a tint on your screen, its fire if you want more biome atmosphere
has anyone played around with the new noise features on the latest preview?
-# i can't check yet since my windows installation broke :c
I havenāt worked with jigsaws yet, but is it possible to split a large structure into pieces and generate it using jigsaws in a way that ensures each piece spawns next to the others? From the documentation, it looks like jigsaws donāt guarantee correct placement or even that all pieces will generate.
Hey! is there a way to stop vines generating on my jigsaw structure? I tried all steps and isnt working
you could put command blocks in it and make them run a function that gets rid of vines that are nearby
thats not optimized
I donāt think so
Yeah it is, template pools are mostly meant for randomization but you can also just put only one valid option in the template pool and itāll work just fine.
Thank you! What if 1 structure fails, can I cancel the whole jigsaw?
Nope
hmm interesting, so its possible that it'll miss some parts. anyways, thanks for your response. I'll try to read more in the docs
edit: oh wait I got it working now and I think I'm wrong nvm
weird tree using a tree feature.
is there a way to make partial biome replacements more like smooth?
Show your code.
{
"format_version": "1.21.110",
"minecraft:biome": {
"description": {
"identifier": "naker_hotu:corrupted_lands"
},
"components": {
"minecraft:climate": {
"downfall": 0.4,
"snow_accumulation": [0.0, 0.125],
"temperature": 0.8
},
"minecraft:overworld_height": {
"noise_type": "extreme"
},
"minecraft:replace_biomes": {
"replacements": [
{
"dimension": "minecraft:overworld",
"amount": 0.95,
"noise_frequency_scale": 0.1,
"targets": ["minecraft:plains"]
}
]
},
"minecraft:surface_builder": {
"builder": {
"type": "minecraft:overworld",
"sea_floor_depth": 7,
"sea_floor_material": "minecraft:gravel",
"foundation_material": "minecraft:stone",
"mid_material": "minecraft:sand",
"top_material": "minecraft:diamond_block",
"sea_material": "minecraft:water"
}
}
}
}
}
very basic stuff, experimenting for now
Up the noise_frequency_scale. In the MS docs example they did 25
Can also lower the amount.
I mean it still generates with those ugly chunk borders
Never experienced that before. The chunk borders, is it the plains biome or a different biome?
how can I now for sure? Idk
But there's like those random squares
Are feature rules placed after the jigsaws?
Theres probably like a bajillion f3 biome detector on mcpedl likely.
Yes!
That was a PITA when it wasnt back during experimental š„“
depends on the step that the structure and the feature rule are placed on
I wanted to know if using minecraft:noise_gradient and minecraft:surface_builder that were added in 25.20.23 I could change the way the terrain is generate
umm, the only way that can happen is if the chunk gets stored in disk, which means you're not recreating the world after every biome/feature file change (which is something i recommend doing)
does anyone have ideas on how to decrease the performance overhead of Dimension.placeFeatureRule()?
actually probably not the best question to ask here
Is there a way to disable jigsaw random rotation
No.
[Json][error]- -> start_pool: Missing referenced asset demon:bandit/tower/start_pool
[Json][error]- -> start_pool: Missing referenced asset demon:pillager_camp/camp/campsite
Does anyone know why these come
is there any tutorial to convert a structure into a jigsaw structure (i dont really get/need the jigsaw part its just 1 whole structure) since i need it to to be locatable using /locate
Just have the start piece be your only structure then.
any way to force it to generate on flat ground? the structure has an offset of -10
{
"format_version": "1.21.20",
"minecraft:jigsaw": {
"description": {
"identifier": "recrafted:temple"
},
"biome_filters": [
{
"test": "has_biome_tag",
"operator": "==",
"value": "plains"
}
],
"step": "surface_structures",
"start_pool": "recrafted:temple",
"max_depth": 1,
"max_distance_from_center": {
"horizontal": 80,
"vertical": 80
},
"start_height": {
"type": "constant",
"value": {
"absolute": 0
}
},
"heightmap_projection": "world_surface",
"terrain_adaptation": "bury"
}
}
Your terrain adaptation seems to be the cause
i thought i need to use bury as the structure needds to be buried by -10, is it not that?
No. You just need to add the offset. Terrain adaptation changes the terrain around it.
ah alright, what do you recommend i set it to?
"beard_thin"?
None.
thanks, ill try it out
So I'm trying to use jigsaw structures to spawn in structures larger than 48x48 (by splitting them into smaller parts and connecting them with jigsaws.
However I run into the issue that some of the structures crash my game during world gen or when manually placing them with the the /place jigsaw command.
For context, before the split the structures were at most 64x64x64 in size, after the split each jigsaw structure is at most 32x64x32 in size. I have one "base corner structure" that loads its neighbors, and one of those neighbors load the last corner. So the jigsaws never run deeper than 2 iterations.
Loading the structure pieces manually with the /structure command causes no crashes whatsoever, and the /place jigsaw command sometimes works and sometimes crashes me (sometimes a structure can work and sometimes the same structure crashes my game).
Are there any known problems that might cause this kind of behavior?
Anyone know of a way to give a jigsaw block the ability to have several targets
So for example instead of it generating a hallway it generates a dungeon room
or know how to do it specially within the code?
Just put multiple things in the template pool it is targeting
I just realized, thank you so much! Hopefully Iām on the right track
If I donāt choose a target name will it choose randomly based off of whateverās in the template pools file?
No
You have to set a target name which has to match the name of the jigsaw block or blocks if you have multiple that you want to be connectable to.
Iām a bit confused,
I have a starting point which targets the pool hallways, and in that same jigsaw it targets jigsaws with the name hallways. I then have a hallway in which I specify the name.
All of this works and connects, however iām getting lost here: Say I set both of the hallways jigsaw to have the target name hallways, it will generate the hallway jigsaw forever. How do I make it so that it can also for example generate a treasure room instead of just another hallway?
sorry for all the questions, but once this is figured out this will set me up for understanding the rest
Iām going to test something rq and see if it works
In all the hallways you can just set the name field of their jigsaws to id:hallway and the target name of the jigsaw spawning them to id:hallway. The parent jigsaw will go to the target pool (template pool) and look for jigsaws with the name field matching its target name and pick one at random.
Gotcha, I figured it out thanks to you
Itās confusing because it kind of makes you think a bit differently
i have a geode feature and custom buds, but how do i make them rotateable based on where they we're placed
One last question for you, do jigsaws need to be in 16x16 chunks like structures do?
As in where the structures can get bugged if too big and cut off
Nah they can be 64x64 for each structure piece. The entire structure can be up to 256 blocks across as diameter.
Wow, thatās sick
Could you technically make a starting pool structure and have it be 64x64 and just generate that alone?
Yeah
Np
I tried to spawn a jigsaw structure by using commands but it says the structure has spawned but it's not spawning and if i try to locate and tp to the structure is not there what r the reasons this will happen
i wish they added a "block_blacklist" feature in the structure template feature
it would be so much easier to blacklist 1 block over having to whitelist every other block in the biome but that block
Do you know how to make the structures rotate?
Vertical jigsaws can randomly rotate structures
wow!
Yeah, they can be massive
@fickle elm I've had an idea of doing a mining village inside a massive geode_feature via jigsaw and if geodes weren't so damned hard to get working on bedrock I would totally do that.
Is there a way to have it be random in the code, it seems to face one way most of the time
Nope
Well
In the structure you can put multiple connecting jigsaws and itāll randomly pick one
To connect to
I have a bone structure within 64x
You can just control pick block the jigsaw block being used to connect to other pieces and place it around the structure and when the generating jigsaw picks that piece itāll target one of the jigsaws at random
How is it supposed to be rotated
Horizontal jigsaws canāt rotate pieces around
Only vertical ones can do that around the y axis
The jigsaw?
yeah
Then it should randomly rotate unless the toggle in the ui is on
gotcha
Joint type should be togged off for random rotation
Also curious, for dungeons do people limit certain structures to certain sizes to make them generate fully properly? Iāve noticed with my dungeon test they crash into eachother (of course not though though)
If itās on the line on the back side of the block will always match the line on the side of the jigsaw block placing it
Yeah
But jigsaws are programmed where the piece bounding boxes can never overlap each other
You will never find a tunnel cutting over another one
Interesting
Hereās a question then, can jigsaw structures hit into and overtake other structures
Yes
Pillager outposts and villages in bedrock can show this in bedrock
Salt can help but it doesnāt always solve it
Salt is only useful really if the seperation and spacing values are the same as another structure set
You can put a protected blocks processor in the processor being applied to the structure to prevent end portals from being overwritten
āProcessor_typeā: āMinecraft:protected_blocksā, āvalueā: ānot_feature_replaceableā should work
Ye they cool
itās just that people really did not do a great job of explaining the actual placement and values of the jigsaws and how the processors work
The code didnāt make sense until that was done
They will get even better when we get more block tags and processor types
Yeah processors are really complicated
not the processors getting an actual dungeon style thing to generate
or. even a structure itself
There is no great explanation for the actual connecting and values
just the code
Yeah, the actual jigsaw blocks themselves are hard to explain because they are kinda 3 types of jigsaws in the same block
O, would you happen to know if you can change the loot in a chest with processors?
yes that itself confused me a lot lol
Code neon on YouTube did a good job explaining them
Yeah, on wiki.bedrock.dev there is a example
Iāll get a link rq
Thanks!
Hereās a deeper question though, what about changing loot for specific chests in a jigsaw structure?
Not really possible for a specific chest
Dang
A processor will apply loot to every chest in the structure piece that processes is applied to
Canāt I use append loot in processors? instead of nbt studio?
You can use a nbt editor to apply loot to chests
Yeah
Trail ruins use append loot on sus blocks and I did it with the chests on that wiki page
I know a great way to fix my chest problem for that then, simply make the structures several different ones to make it unique
Yeah
yeah this is going to be sick
Just wish we could specify chests somehow using the append loot block entity modifier. That would make for an awesome feature
Some of my structures I just have a jigsaw template pool placing chests so that I only have a chest in the structure file and donāt have to make a processor to do it
Also something sick would be the ability to replace all air inside of a structure block space with structure voids in the structure block interface
Yeah
/fill can do that
for big ones you have to do it several times, a simple button would be sick
/fill ~~~ ~~~ structure_void replace air
Yeah
especially for 64x bone structures lol
seriously though thank you so much for all your help, iāve got a solid grasp now. One last question to end it off, is the max depth limit 20?
Yeah
Trial chambers needed it to be 20 so they upped it. Ancient cities only use 7 interestingly enough. 7 is what it was before 1.21
Thereās no way ancient cities need only 7
they probably have several starting jigsaws
if thatās even a thing, kind of wanted to test that
They actually do
Look at mcasset.cloud
Villages use 6 for reference
I think bastions do as well
since when did we have access to the full minecraft files lol
iāve been looking for these
Itās the Java ones
Itās just that ancient cities are identical between Java and bedrock
ah
I found that out when recreating ancient cities from scratch on bedrock
I think it makes sense now
They have several starting points coming off of the main ancient city, and they each have their own max depth
Yeah
what confuses me is how solid they made the generation to get it to be so perfect
or rather not collide at all
https://youtu.be/VNaGXvpE0Nw?si=KAIkHKBALuM1X0Q4 code neon has a good video about jigsaws here
Thanks again to SNHU for sponsoring this video!Ā https://snhu.edu/codeneon
In this video, I overhauled the Trial Chambers from the Minecraft 1.21 Tricky Trials Update.
GET THE TEMPLATE - https://drive.google.com/file/d/1KnHXb91neMh5ShWFVQDuPn3UwbTNmDct/view?usp=drivesdk
GET THE DATAPACK (Now publicly available for free!) - https://www.planetm...
Provided he uses the Java file format
The function of jigsaws is the exact same between bedrock and Java
Also hereās an interesting question, can you make 3 structures always spawn in. Like for example a docking station, a laboratory, an archive.
I need 3 specific structures to spawn but am ok with the rest being random for one of my jigsaw structures, is this possible?
thatās good, iāll be watching that for sure
Not really
I tried but it didnāt work well
Only the starting piece is guaranteed to spawn
Thatās kind of frustrating
You can technically garuntee a spawn but the path to it would also have to be garunteed
https://discord.com/channels/523663022053392405/1459006306915581984 I tried making custom strongholds here
Selection priority is if two jigsaws are trying to place a structure in the same spot the one with higher selection priority wins
If they have the same priority then itās random
But isnāt it true that if you name 2 things the same they go by the weight in the pool list?
Placement priority is if there are more then one jigsaw that are valid to connect to in the structure file whatever one has the highest placement priority will be used unless it causes the structure to placed in a invalid position in which the jigsaw block will pick another one
Yes
Selection priority is more having to do with the generation order
In that YouTube video I sent code neon explains it
Alright
Iām bad at explain those two fields because they are very niche
I very rarely ever use them
Also is 64x really the hard limit on jigsaw single structures? kind of curious to see if it expands
I will not be unless iām forced lol
64 is the highest a structure block can save
I donāt know what the highest a jigsaw block can place is
Ah
Iām pretty sure structure blocks can go higher
if they can I gotta find out lol
You used to be able to nbt edit them but that got removed a while ago
yeah nope
Yeah
Either way seriously, you helped out a ton, and you will be in the credits of my project once itās complete
thank you so much
Alr np
I tried to spawn a jigsaw structure by using commands but it says the structure has spawned but it's not spawning and if i try to locate and tp to the structure is not there what r the reasons this will happen
does anyone know how to make this look a bit natural?
ill send more screenshots wait
{
"format_version": "1.21.20",
"minecraft:jigsaw": {
"description": {
"identifier": "recrafted:temple"
},
"biome_filters": [
{
"test": "has_biome_tag",
"operator": "==",
"value": "plains"
}
],
"step": "surface_structures",
"start_pool": "recrafted:temple",
"max_depth": 1,
"max_distance_from_center": {
"horizontal": 80,
"vertical": 80
},
"start_height": {
"type": "constant",
"value": {
"absolute": -8
}
},
"heightmap_projection": "world_surface",
"terrain_adaptation": "none"
}
}
Okay this might not be the answer, but was the jigsaw you were spawning within render distance? I was working on a mcstructure display project and while it worked to a point, beyond render distance the commands wouldn't work.
Good morning, afternoon, or evening, I would like to know how I can change the world's generation so that the oceans are larger and the terrestrial biomes are only small islands?
No it's not beyoud render distance but thanks
Can anyone help with
https://discord.com/channels/523663022053392405/1499908994418868315
I have a problem with void generation of a world. I'm trying to create a void overworld with the folder dimension, but when I enter the world, the game crush. Somebody else have the same problem?
This issue appears in the new version of Minecraft released today.
Can someone tell me how to make an addon that changes the way terrain is generated, creating larger mountains?
I want to replace the vanilla dark oak tree feature with my custom trees but I cant find the right name for the dark oak
I think this is the one
roofed_forest_surface_roofed_tree_feature_rules
..
I found it for the normal one it was "minecraft:roofed_tree_feature" but I am not sure how to replace htis
Where does this normal tree spawns?
roofed forest
It does not spawn for me
What is name of the feature rule
Question.
Can we easily make ocean biomes with the replace biome stuff?
I havent messed with the new biome system at all
not in a straightforward way, you only get to replace existing biomes so the base terrain shape stays the same
buuut, you can create a feature rule with a bunch of "remover" features to carve out space for an ocean
there's more to it but that's the basic idea
The new in beta noise stuff could be helpful there
{
"format_version": "1.13.0",
"minecraft:search_feature": {
"description": {
"identifier": "aaaaaaaaaaaaaaaaaaa"
},
"places_feature": "aaaaaaaaaaaaa",
"search_volume": {
"min": [0, -8, 0],
"max": [0, 3, 0]
},
"search_axis": "+y",
"required_successes": 1
}
}
Does +y mean it searches from -8 to 3 or from 3 to -8?
Is there any way to prevent jigsaws from overlapping each other
Pieces or separate structures?
Separete structures

Separate jigsaw systems Imean
You can add them to the same structure set.
This ^ otherwise, no
Yeah, that's an alternative we're considering but we don't want to lose the /locate command
And that also doesn't guarantee it from not overlapping on other jigsaw systems from another addon or vanilla structures
But just to confirm, there's no other way we can do this in the current system?
Then unfortunately no.
Yeah unfortunate. Thanks for answering!
For Jigsaw, is it possible to spawn a structure clamped between a min and max Y value based on the world_surface projection?
I want to spawn a surface structure that is the entrance to a dungeon deep down below. But it also spawns on mountains causing the dungeon to generate in the air.
Does dimension padding work for your use case?
Ah that should work. The tabel description of that didnāt click but now I read the paragraph in the wiki this should be very useful. Thanks
Did generating the dimensions with generation_type void got broken? I have this and it tells me that custom dimension bounds are not allowed but if I removed them it crashes the world
"format_version": "1.21.0",
"minecraft:dimension": {
"description": {
"identifier": "minecraft:nether"
},
"components": {
"minecraft:generation": {
"generator_type": "void"
},
"minecraft:dimension_bounds": {
"max": 128,
"min": 0
}
}
}
}```
Having multiple dimension definition files registered to an add-on applied to a world will cause the world to crash on load.
Reproduction
The following simple dimension definitions can be applied to a...
Can the pillager_outpust in vanilla Minecraft be replaced with a custom one?
Are jigsaws able to connect up to other existing jigsaws in this way? Imagine this tile is a single structure, it is broken up into 3x3 8x8 areas. I'd have a set of 8x8 walkway pieces (straight, t, 90 degree bend, etc). Can jigsaws be used to randomly select from my set of pieces to appropriately fill the inside of this 3x3 larger grid? Or I would assume I'd be better off using scripts since I can't guarantee the jigsaw generation won't expand out of this 3x3 tile area...
(blue stained glass is example tiles)
Hello! Messing around with some world gen here for an addon I'm working on. Currently having a couple issues.
Trying to add wild carrots (as well as beets and potatoes) into my villager trading addon. They're supposed to generate in forests, but I'm experiencing an issue to where they're generating in birch and standard forests, but not roofed or old growth birch. First image shows that my forest coal generation (coal blocks are for testing) is working fine with the same biome tag parameters.
Second and third image are showing fallen trees and leaves generating after my carrots do, making them generate on top of the feature.
Last image is the code for the feature rule. Any way I can get it to generate in the roofed/old growth birch and before the leaves/fallen trees?
I tried messing around with the placement passes but I'm not having any luck with before, after, first, or final, and can't find the default feature rule for leaf litter (or tree leaf litter) to overwrite the leaves.
Hey guys! I have a question, from a jigsaw structure, if I use feature pool to place an structure and that structure has jigsaw blocks, jigsaw blocks still working? I mean still generating more pieces?
No, jigsaw blocks in features donāt get trigged even if the feature is placed by a jigsaw
damm!
thx for the answer
Im looking for detecting the difference between the origin and the terrain height, idk what to do now
how can i make a single_block features generate the block only if the two blocks above it is air?
the block is 3 blocks tall (multi block nonsense), i can only use the 'may attach to -> top = air' but it checks for one block not two
oh, the multiblock nonsense is not working properly, its only generating the bottom block without the second or the third part
ill have to use scripts to setblock instead
Then use scatter features.
Like how vanilla does.
how exactly?
ill probably deal with it tomorrow
Check the vanilla files.
anyways heres the current bugged single block features:
so i just have to make another scatter features to generate it?
jigsaw blocks can place the snow block piles from villages
we can also place all these and I would presume the pumpkin pile also works. The mossy rocks from the mega taiga also work but they are very weird and place a ton of blocks offset fromthe parent jigsaw
there is the pumpkin pile
This is not a good think
How?
Why would you expect jigsaws to work in features?
This is not a good thing.
That doesn't answer my question.
That would be cool, maybe you want to generate a large structure in a specific position that only features can handle.
That's a terrible use case.
If anything you should ask for more placement support instead of relying on features.
Indeed, jigsaw rely heavily on rarity and placement.
because the origin is from a jigsaw structure, in my case I want to detect the terrain height using molang in a scatter feature and place an structure based on that
in java edition, modders simply extend the template pool class with coding, we cant do that on bedrock
done, but it still places the bottom block only
sorry for sending the message 3 times, my discord is lagging for some reason
Take at look at the vanilla tall grass feature.
Right so: #1067870310055022672 message
well, it doesnt work properly
it just places two of the same block ontop of eachother,
like it didnt really fix the issue i am facing
So you have a feature rule that places an aggergate feature that places a scatter feature that places a single blo k feature that places different block states?
Are you sure youre setting the right block state?
as u can see
do i have to add even more features to place the second block with the other multi-block state?
sure ig, ill give it a shot
Did you look at the vanilla tallgrass feature...
The concept is there.
You should be able to learn from two and apply it to 3.
ill give it a shot ig
if all of the 3 rotations were correct, the block will appear normally and it doesnt break when u place a block near it
thats not the case if one of the blocks was rotated, placing a block will update it and instantly breaks the whole thing
Then dont rottate it?
ig,
almost all of my blocks are two blocks tall, so i dont really want to add like +80 features for all of them
Vanilla does that.
yeah that will fix the issue, but it will just look weird having all of the bones facing the same direction each time u find one
Why not use structure featirss then?
if it works better that this, then sure
All you need would be 1 feature.
Is possible to edit the world gen of superflat worlds?
dont think so
Well there goes my idea then
u could make a custom dimension that looks and works like the superflat world that u can modify freely
As much as that's true, ive heard world gen in custom dimensions are quite laggy rn
yes bec theyre new
Hence why I'm trying to avoid it for now
u can just wait for a bit until they become stable enough
I just wanted to add biomes
u can with the custom dimensions one, so all u can do is wait for them to finish the thing.
I guess thats true, my plan is to make superflat survival beatable while maintaining the grind that it's known for
i was considering adding a new boss to the game, that u have to summon after killing the ender dragon (a satanic boss) and with this custom dimensions, ill just make a new hell dimension that u can have access to after the ender dragon, where u can do some hell stuff in order to get the new items/hell-a cool stuff and summon the new boss
I've been wanting to add new bosses as well but I heavily lack modeling/custom AI skills
gl with that, just make sure to make strongholds generate there, alongside some villages
for me tho, by the time i finish this exploration-based addon, i will be leaving the whole coding stuff to study for some 'endgame' exams, which will take a year worth of studying, so i just hope they add everything i need by the time i finish everything,
That route kills the grind, I have my own ideas tho
what i hope they add:
the ability to make the entity unable to block the blocks placement (similar to how arrows/item entity works, they doesnt block the blocks placement)
new enhanced mob AI components that i can use to make some extremely complicated bosses later on
the ability to make block-entity blocks similar to how they have coded the vanilla chests (its all about making an entity works like a block that u can mine it or move it with pistons)
being able to show/hide images in the Ui from scripts without having to use titles or chatmessages
adding custom keybind for both RP and BP, like click that button to roll or something
being able to add new slots to the player like accessories or new armor slots or new slots to the inventory in general
and lastly, the ability to open an entity inventory without interacting with an entity, its more like holding ur backpack item in ur hand and right click to open it (without summoning an entity in front of u)
i just hope they add at least one of those while i go studying
It's certainly a wishlist
mojang, u had only one year to add at LEAST one of those, please do not disappoint me mojang.
a good one
Yeah I agree
yeah it works like a charm!
oh btw
"iterations":1, is spawning alot of structures
can i make it smaller than 1? like 0.4 or something
bec 2 years ago, i tried setting that to 0.2 for an ore, that ore wasnt spawning at all,
That would be scatter chance's job.
well, i dont want to add 52 more files, so ill just make the remains blocks spawn in rare and small biomes
What?
Its a field in the feature rule.
in the structure feature rule? (my brain is a little too slow atm)
ill check it out ig
i got it, how does it work exactly?
like if i put 5 in there, the block will have a 50/50 chance to spawn or not?
so if i want to make the block has a 25% of spawning, do i have to put 25 scatter chance or 75?
25
got it
I can't wait till they are stable! I am looking forward to folks bringing back older world generations š
can i somehow place the structure ontop of lava? currently its being placed inside the lava
"constraints":{
"unburied":{},
"block_intersection":{"block_allowlist":[{"name":"minecraft:lava"}]}
}```
i tried making the structure two blocks tall, where the bottom block is lava and the top one is air so the generation appears ontop of the lava
but it didnt work at all
as u can see
i cant really use single block features bec its bugged with the onTick/custom component stuff
got it working
Guys, do you know if there are any criteria for structures to be generated by Feature Rules? Because I can't get my structure to work at all, even though it exists and can be accessed with a command. And it's not that the feature rules are poorly formatted...
{
"format_version": "1.13.0",
"minecraft:feature_rules": {
"description": {
"identifier": "vaibrasil:favela_feature",
"places_feature": "vaibrasil:favela_feature_place"
},
"conditions": {
"placement_pass": "surface_pass",
"minecraft:biome_filter": [
{
"all_of": [
{
"any_of": [
{
"test": "has_biome_tag",
"operator": "==",
"value": "plains"
}
]
}
]
}
]
},
"distribution": {
"iterations": 1,
"scatter_chance": 0.40,
"x": {
"distribution": "uniform",
"extent": [
0,
15
]
},
"y": "query.heightmap(variable.worldx, variable.worldz) + 0",
"z": {
"distribution": "uniform",
"extent": [
0,
15
]
}
}
}
}
Your scatter chance is saying there is a 0.40/100 chance of spawning per chunk.
Theres no need for that all of any of filter if you only have 1.
Why is there a +0?
Well... I never paid attention to that because I've always used the same model and it's always worked...
Is it possible to position the structure_template_feature if a specific block is in the path, but without replacing that block? I know it's possible to prevent certain blocks from blocking their generation but have them replaced. I'd like to know if it's possible to make it ignore the block but not replace it.
They should add a feature in editor mode where you can generate chunks only at certain "steps" like "surface_pass", "before_surface_pass" etc.
I'm lowkey asking if this already exists
Are you trying to debug something?
Yeah
that would be very cool
Is it possible to create a custom ocean biome which the ocean floor starts at y=10 or 0? Like just a trench?
#1067870310055022672 message
What value do I need to edit to make my structure more or less rare/spread out?
feature rule or jigsaw structure set?
feature rule
i think raising the iterations number makes it rarer but im not sure
Ok I will try that then
That did not work at all
It just stacked them on top of each other
that might be the wrong value then, I don't know a ton about feature rules so you might be better off waiting for smokey because he knows features
Lower iteration and decrease the scatter chance.
I would do scatter chance 10 which means 10% per chunk.
Ok thank you
Is there a way to limit the amount of rooms from the same type in a jigsaw structure?
I want to make a dungeon with only 3 treasure rooms at most
Not that I know of
I see
I managed to do a workaround, but now I'm facing another problem
The structure is supposed to generate either an extension of a corridor or a special room, wich means the end of that path
But it just stops generating the path after a few extensions and doesn't generate the special room
Sometimes it does generate the room, and sometimes it doesn't
I just noticed it was because of the max_depth property, but it has a max of 20
So it can still stop generating it if extends too much
Is there a way to allow it to extend as much as it needs?
Wouldnt that be #1067535382285135923 ?
technically is world gen also 
Not really no. It's more suited for scripting since you're using a script function to palce a structure.
Plz help,so i override terrain generation, but i don't know how to override structures plz help
i'm assuming you replaced everything with air? if so, then no, structures cannot be replaced as they run in a later pass during worldgen
if you want a void dimension, you should use custom dimensions
Did it keeps the normal biome spawning
no, it's just void
the default biome is the ocean rn, but that's not useful since again, it's just void
Ohhh
"format_version": "1.13.0",
"minecraft:ore_feature": {
"description": {
"identifier": "electron:spodumene_ore_feature"
},
"count": 12,
"replace_rules": [
{
"places_block": "electron:spodumene_ore",
"may_replace": [
{
"name": "minecraft:stone"
}
]
},
{
"places_block": "electron:deepslate_spodumene_ore",
"may_replace": [
{
"name": "minecraft:deepslate"
}
]
}
]
}
}````
why does my ore feature just doesnt work
?
What's your feature rule?
huh whats that
You need a feature rule to generate your features.
why does the microsoft docs dont tell me anything about this..
What article are you reading?
You should read the GUIDE first https://learn.microsoft.com/en-us/minecraft/creator/reference/content/featuresreference/examples/featuresintroduction?view=minecraft-bedrock-stable
thanks
I always go too fast XD
@upbeat barn the feature still dont work
"format_version": "1.13.0",
"minecraft:feature_rules": {
"description": {
"identifier": "electron:spodumene_ore_feature_rule",
"places_feature": "electron:spodumene_ore_feature"
},
"conditions": {
"placement_pass": "underground_pass"
},
"distribution": {
"iterations": 0,
"x": 0,
"y": 0,
"z": 0
}
}
}```
i put 1 and nothng
"format_version": "1.13.0",
"minecraft:feature_rules": {
"description": {
"identifier": "electron:spodumene_ore_feature_rule",
"places_feature": "electron:spodumene_ore_feature"
},
"conditions": {
"placement_pass": "underground_pass",
"minecraft:biome_filter": [
{
"any_of": [
{
"test": "has_biome_tag",
"operator": "==",
"value": "overworld"
},
{
"test": "has_biome_tag",
"operator": "==",
"value": "overworld_generation"
}
]
}
]
},
"distribution": {
"iterations": 4,
"coordinate_eval_order": "zyx",
"x": {
"distribution": "uniform",
"extent": [ 0, 16 ]
},
"y": {
"distribution": "triangle",
"extent": [ -64, 32 ]
},
"z": {
"distribution": "uniform",
"extent": [ 0, 16 ]
}
}
}
}```
is this bette
its not working..
Any content log?
nothing
"format_version": "1.13.0",
"minecraft:ore_feature": {
"description": {
"identifier": "electron:spodumene_ore_feature"
},
"count": 12,
"replace_rules": [
{
"places_block": "electron:spodumene_ore",
"may_replace": [
"minecraft:stone"
]
}
]
}
}```
"format_version": "1.21.0",
"minecraft:feature_rules": {
"description": {
"identifier": "electron:spodumene_ore_feature_rule",
"places_feature": "electron:spodumene_ore_feature"
},
"conditions": {
"placement_pass": "underground_pass",
"minecraft:biome_filter": [
{
"test": "has_biome_tag",
"operator": "==",
"value": "overworld"
}
]
},
"distribution": {
"iterations": 20,
"x": 0,
"y": 0,
"z": 0
}
}
}```
i really dont uderstand why this doesnt work
@upbeat barn sorry for the ping, if you're not busy, more help would be very apreciated
Hey there, where do i find structure distribution json
Vanilla's? Doesnt exist.
Trail ruins do
Is there any way to stop /override structure generation
In the bedrock samples??
No
It was in the games apk file when the data driven jigsaw experiment existed
#1067870310055022672 message
You can find its structure set in that zip
Quick question, anyone familiar with getting a jigsaw structure to spawn on the surface of an ice spike biome?
Seems like the spikes are interrupting jigsaw placement but Iām unsure as to how to circumvent that.
Did the file still exist or only on the preview trail ruins added
Is there any way to stop /override structure generation
its not in the game apks but it still works to override it
kinda yeah
but only for some structures and ive only tested it for one
Nevermind, figured it out.
Adding both āice_plainsā and āmutatedā to the biome filter tags sorted it out.
I guess that biome is a bit āspecialā when it comes to trying to refer to it directly, doesnāt have a specific tag like other biomes do.
Not all vanilla ones, because 99% are hardcoded.
So no way
I don't understand biomes, but how can I make something similar to this?
A flat biome, with some mountains with straight edges and a few holes.
Like a mesa?
Yes, but something flatter and with a lower density of mountains
Try using a noise parameter that goes to about 128 blocks in height Biomes canāt be any taller than 128 blocks, so it should plateau around there
also means your mountains will be very tall, but itās the best I could come up with
I don't really understand these documents
When I create a biome, it always mixes with another and doesn't become complete
Do custom dimensions have any way to inherit stuff from other dimensions? Like if I wanted to make a modified overworld rather than a completely new dimension
No.
No. Custom Dimensions is just a void world. Thats all. Its the Overworld mechanics.
Your question of "can it inherit other dimensions" includes the nether and end which it cannot. It also cannot inherit biomes nor terrain gen.
So technically it would be possible to create a Y = 0 centered superflat?
Just didnt know if like the custom dimension was a complete blank slate with no inbuilt spawn rules and stuff like that
You cant do terrain gen easily but theoretically yeah.
They always stay like that, they just overlap the blocks and say it's a new biome
Yes, this is how custom biomes are. They replace vanilla biome slots which they themselves place on top of terrain.
Is there a way to prevent this from happening? I'm referring to several small pieces of the biome
Mess around with the parameters. Increase noise frquency and amount.
Target more biomes.
Okay, thnks
trial chamber structure sets cant be overwritten it seems
good day guys! hey i have an issue and i need your help and ask something. what are the reasons of crashing the game because of jigsaws?
in your experience i would love the help.
oh its actually reported:
doesnt have a fix version or resolution for now :0
Is it possible to make a feature never generate at a specific coordinate?
if v.worldx is a number then set the iteration to 0
Same goes for v.worldz
But does this allow the feature to still be generated in the world, but never generated at the defined coordinates?
Yes. You just have to do some Molang.
Right, thanks
Is it possible to modify vanilla villages? I want to add a chance for my custom crops to generate in these villages