Modrinth · Minecraft mod
Structurized Reborn
Simple library that helps with the addition of custom village structures
Quick answer
Which Structurized Reborn release should I use?
Structurized Reborn 1.21-01 targets 1.21, 1.21.1 with Fabric, Quilt. Do not install it on the client. It must be installed on the dedicated server. All 1 required mods have matching files.
Where it goes
Is Structurized Reborn required on the client, server, or both?
Do not install it on the client. It must be installed on the dedicated server.
This file is marked server-only.
What else does Structurized Reborn 1.21-01 need?
1.21-01. Change the file and its required mods may change too.
Install Fabric API first. We found matching files for this game-version and loader setup.
We only count dependency files that match this setup. A file for another loader does not fill the gap.
Before you install it
Add Structurized Reborn without breaking your instance.
Built for Structurized Reborn 1.21-01. Pick another file and the loader, install side or required mods may change.
- 01
Stick to this file
Use 1.21-01. It targets 1.21, 1.21.1 with Fabric, Quilt; another release may have different loader, side or dependency requirements.
- 02
Bring the mods it needs
Install Fabric API first. We found matching files for this game-version and loader setup.
- 03
Put it on the correct side
Do not install it on the client. It must be installed on the dedicated server.
- 04
Pick the file you checked
Use the “Get this file” button beside 1.21-01. It opens that exact file at the source.
About this project
What does Structurized Reborn add?
Structurized Reborn
THIS IS A REWORK OF DRAYLAR'S STRUCTURIZED. See the original here: https://github.com/omega-mc/structurized/tree/1.18
Structurized Reborn is a simple library that helps with the addition of custom village structures.
Jigsaw Modification
Structurized provides a registry that allows you to add custom structures to StructurePools in jigsaws such as villages. Say we wanted to add village/plains/houses/plains_small_house_1 to the desert house pool. Simply register the new structure to the desired pool and give it a weight and some optional modifiers. Call these register methods in the same place you would call any other server-focused registry event (registering items or blocks, for example)
FabricStructurePoolRegistry.register(
Identifier("minecraft:village/desert/houses"), //the target pool
Identifier("minecraft:village/plains/houses/plains_small_house_1"), //the new structure nbt to add
2, //the weight of the structure in the pool
StructureProcessorLists.MOSSIFY_10_PERCENT) //optional processor to add mossiness
If you don't have any special considerations, you can use registerSimple to make your life a bit easier:
FabricStructurePoolRegistry.registerSimple(
Identifier("minecraft:village/desert/houses"), //the target pool
Identifier("minecraft:village/plains/houses/plains_small_house_1"), //the new structure nbt to add
2) //the weight of the structure in the pool
Flexible Registration
The register method is quite flexible, with several optional parameters to use as needed. In many cases you will be OK using the registerSimple method, but the main register method can be useful for doing something like adding the random mossy cobblestone that many village structures have.
Parameters:
poolId: required, the target pool of structures to modify
structureId: required, the new structure nbt location identifier
weight: required, the probability of a structure being chosen for generation. A weight of 1 to 3 is about 1 structure per village
processor: optional, defines custom generation tweaks to apply, like random mossy cobblestone
projection: optional, defines the way the structure interacts with the ground (rigid in space or conform to the landscape)
type: optional, defines the type of structurePoolElement you want. This isn't needed the majority of the time
Callback Registration
If you want to do something more advanced with a structure pool, you can also directly register to the callback and add whatever event code you'd like. Registering to the callback looks like so:
StructurePoolAddCallback.EVENT.register(structurePool -> {
if(structurePool.getUnderlying().getId().toString().equals("minecraft:village/plains/houses")) {
structurePool.addStructurePoolElement(new SinglePoolElement("village/desert/houses/desert_small_house_1"), 50);
}
});
Adding Dependency
You can add this as a dependency to your project using modrinth's built in maven repository. The {VERSION} will be the version number of the version you are trying to work with. For example, the first version of this library was uploaded under version number 1.18.2-01.
In a build.gradle:
repositories {
maven {
name = "Modrinth"
url = "https://api.modrinth.com/maven"
content {
includeGroup "maven.modrinth"
}
}
}
dependencies {
modImplementation "maven.modrinth:Wd844r7Q:{VERSION}"
include("maven.modrinth:Wd844r7Q:{VERSION}")
}
In a build.gradle.kts
repositories {
maven {
name = "Modrinth"
url = uri("https://api.modrinth.com/maven")
content {
includeGroup("maven.modrinth")
}
}
}
dependencies {
modImplementation("maven.modrinth:Wd844r7Q:{VERSION}")
include("maven.modrinth:Wd844r7Q:{VERSION}")
}
Project description from Modrinth.
Pick your setup
Structurized Reborn by Minecraft version and loader
Choose the version and loader you play, then open the matching release.
1.21.1
2 loader builds1.21
2 loader builds1.20.1
1 loader build1.20
1 loader build1.19.4
1 loader build1.19.3
1 loader build1.19
1 loader build1.18.2
1 loader buildCheck the dependencies, then try the file in a copied instance before changing a world you care about.
Recent files
Structurized Reborn versions and loaders
1.21-01
structurized_reborn-1.21-01.jar
31 Aug 2024
1.20.1-01
structurized_reborn-1.20.1-01.jar
17 Jun 2023
1.19.3-01
structurized_reborn-1.19.3-01.jar
28 Jan 2023
1.19-01
structurized_reborn-1.19-01.jar
24 Jun 2022
1.18.2-02
structurized_reborn-1.18.2-02.jar
14 Apr 2022
1.18.2-01
structurized_reborn-1.18.2-01.jar
13 Apr 2022
Looking for an older file? The official Modrinth project page is in Resources.


