HexLands Add-On: Hexed Structures

Quick rating

Community listing page, reviews here may not be monitored by the author.

HexLands Add-On: Hexed Structures

By Exxec

No reviews yet

New Strucuture Type and Placement Type allows you to force your custom structures to only spawn in the center of a hex in a HexLands world.

Mod Loaders
Minecraft

About

Description

HexLands Add-On: Hexed Structures

Add-on for your HexLands world
to enable you to place custom structures only in the center of hexes.

alt text Screenshot from Compression Modpack used to test the feature.

Usage

In the datapack for your structure modify the structure/mystruct.json:

{
    "type": "hexed_structures:jigsaw", <----- this line
    "biomes": "#my:tags",
    "max_distance_from_center": 80,
    "project_start_to_heightmap": "WORLD_SURFACE_WG",
    "size": 7,
    "spawn_overrides": {},
    "start_height": {
        "absolute": 0
    },
    "valid_height_range":{              <----- optional height limit
        "min": 50,
        "max": 180
    },
    "start_pool": "my:pool",
    "step": "surface_structures",
    "terrain_adaptation": "beard_thin",
    "use_expansion_hack": false
}

A slightly different structure type supports defining an exclusion zone to prevent spawn incursion or what have you. Define a center hex and a radius, those hexes will not spawn the structure:

{
    "type": "hexed_structures:ez_jigsaw", <----- this line, note the "ez_"
    "biomes": "#my:tags",
    "max_distance_from_center": 80,
    "project_start_to_heightmap": "WORLD_SURFACE_WG",
    "size": 7,
    "spawn_overrides": {},
    "start_height": {
        "absolute": 0
    },
    "exclusion_zone":{                  <----- define your exclusion zone
        "hex_q": 0,                     <----- exclusion zone center hex q
        "hex_r": 0,                     <----- r
        "radius": 3                     <----- radius in number of hexes, upper bound inclusive
    }
    "valid_height_range":{              <----- optional height limit
        "min": 50,
        "max": 180
    },
    "start_pool": "my:pool",
    "step": "surface_structures",
    "terrain_adaptation": "beard_thin",
    "use_expansion_hack": false
}

For both its recommended to modify your structure_set/myset.json like so:

{
    "structures": [
        {
            "structure": "my:structure",
            "weight": 1
        }
    ],
    "placement": {
        "type": "hexed_structures:center", <----- this line
        "spacing": 10,
        "separation": 6,
        "salt": 14347342873
    }
}

Note

Structures are shifted so the bounding box center is over the hexagon center.