AbyssalLib Help

Default Features

Features define the specific logic used to generate structures, blocks, or modifications in the world during chunk generation. Below is a list of all default features included in AbyssalLib.

SimpleBlockFeature

ID: abyssallib:simple_block

Generates a single block at the target location.

Parameter

Information

state_provider

The block state provider defining the block to place.

OreFeature

ID: abyssallib:ore

Generates clustered veins of blocks, typically used for ores or dirt patches.

Parameter

Information

targets

A list of replacement rules. Each rule specifies a target (the block info to be replaced) and a state_provider (the new block state to place).

size

The maximum number of blocks that can be generated in a single vein cluster.

BlockPatchFeature

ID: abyssallib:block_patch

Scatters a specific block around a central origin point, simulating natural patches like flowers or grass.

Parameter

Information

tries

The maximum number of placement attempts within the patch radius.

xz_spread

The maximum horizontal distance from the origin (X and Z axes) to attempt placement.

y_spread

The maximum vertical distance from the origin (Y axis) to attempt placement.

state_provider

The block state provider supplying the blocks to be scattered.

targets

A list of valid target blocks that the patch is allowed to overwrite or place upon.

LakeFeature

ID: abyssallib:lake

Generates a pool of liquid surrounded by an optional barrier block.

Parameter

Information

fluid_provider

The block state provider defining the liquid filling the lake.

barrier_provider

(Optional) The block state provider defining the outer casing/rim of the lake.

DiskFeature

ID: abyssallib:disk

Generates a flat, circular disk of blocks, commonly used for underwater clay or sand patches.

Parameter

Information

state_provider

The block state provider supplying the blocks for the disk.

radius

The horizontal radius of the disk in blocks.

half_height

The vertical thickness offset applied above and below the origin.

targets

A list of valid blocks that the disk is allowed to replace.

StructureFeature

ID: abyssallib:structure

Places a pre-defined custom structure into the world.

Parameter

Information

structure_id

The namespaced registry key of the target structure to load.

random_rotation

(Optional) A boolean to randomize rotation, overriding the configured rotation.

rotation

(Optional) The explicitly defined structural rotation.

random_mirror

(Optional) A boolean to randomize mirroring, overriding the configured mirror.

mirror

(Optional) The explicitly defined structural mirror.

SpringFeature

ID: abyssallib:spring

Generates a single fluid source block enclosed within rock, simulating a natural spring.

Parameter

Information

state_provider

The block state provider representing the liquid source block.

rock

A list of blocks considered valid encasing materials.

requires_blocks_below

A boolean dictating if the block directly beneath the origin must be a valid rock block.

hole_count

The required number of adjacent air blocks for the spring to generate.

valid_neighbors

The required number of adjacent rock blocks for the spring to generate.

GeodeFeature

ID: abyssallib:geode

Generates a multi-layered spherical structure with an outer shell, an inner cavity, and internal decorations.

Parameter

Information

outer_wall_provider

The block provider for the outermost protective shell.

middle_wall_provider

The block provider for the intermediate transition layer.

inner_wall_provider

The block provider for the inner geode crust.

filling_provider

The block provider used to fill the center cavity (usually air).

inner_placements_provider

The block provider used for scattered attachments (like crystals) on the inner wall.

invalid_blocks

A list of blocks that will abort generation if encountered at the origin point.

min_radius

The minimum radius of the inner geode cavity.

max_radius

The maximum radius of the geode's outermost shell.

PillarFeature

ID: abyssallib:pillar

Generates a vertical column of blocks.

Parameter

Information

min_height

The minimum guaranteed length of the pillar.

max_height

The maximum possible length of the pillar.

upward

Set to true to generate upwards from the origin, or false to generate downwards.

stop_on_invalid

Set to true to halt generation if an invalid block is encountered.

state_provider

The block state provider supplying the blocks to build the pillar.

targets

A list of valid blocks that the pillar is allowed to overwrite.

RandomFeature

ID: abyssallib:random_selector

Evaluates a weighted list of features and places one at random.

Parameter

Information

features

A list of feature and weight pairs.

default_feature

The fallback feature executed if the randomly selected feature fails to place.

SimpleRandomFeature

ID: abyssallib:simple_random_selector

Places one feature chosen uniformly at random from a provided list.

Parameter

Information

features

A list of valid features to choose from.

RandomBooleanFeature

ID: abyssallib:random_boolean_selector

Places one of two specified features based on a 50% probability.

Parameter

Information

feature_true

The feature generated if the boolean evaluates to true.

feature_false

The feature generated if the boolean evaluates to false.

VegetationPatchFeature

ID: abyssallib:vegetation_patch

Replaces ground blocks within a specific radius and scatters vegetation on top of the newly placed ground.

Parameter

Information

ground_provider

The block state provider defining the replacement ground terrain.

vegetation_provider

The block state provider defining the plants scattered on top.

radius

The horizontal radius of the terrain patch.

depth

The vertical depth to which the ground blocks will be replaced.

vegetation_chance

The probability (e.g., a 1-in-X chance) of placing vegetation on any given column in the patch.

replaceable_ground

A list of blocks that are permitted to be converted into the new ground provider.

WaterloggedVegetationFeature

ID: abyssallib:waterlogged_vegetation

Scatters aquatic vegetation blocks within a specified radius, restricted exclusively to liquid columns.

Parameter

Information

tries

The maximum number of placement attempts within the scatter radius.

xz_spread

The maximum horizontal distance from the origin on the X and Z axes.

y_spread

The maximum vertical distance from the origin on the Y axis.

state_provider

The block state provider supplying the aquatic vegetation.

MultifaceGrowthFeature

ID: abyssallib:multiface_growth

Generates blocks that attach to multiple faces of adjacent blocks, such as glowing lichen or vines.

Parameter

Information

state_provider

The block state provider representing the growth to place.

can_place_on

A list of valid support blocks that the growth is allowed to cling to.

BlockAttachedFeature

ID: abyssallib:block_attached

Generates a single block attached to a specific face of an existing, valid supporting block.

Parameter

Information

state_provider

The block state provider supplying the block to be placed.

targets

A list of valid blocks that can be overwritten at the origin.

can_attach_to

A list of valid blocks that can act as structural support.

directions

A list of block faces (e.g., north, up, down) to check for structural support.

DripstoneClusterFeature

ID: abyssallib:dripstone_cluster

Generates clusters of pointed stalactites and stalagmites.

Parameter

Information

state_provider

The block state provider supplying the block used to build the cluster.

targets

A list of valid blocks that the cluster is allowed to overwrite.

radius

The maximum horizontal radius of the entire cluster.

max_height

The maximum vertical length for the central columns.

upward

Set to true to generate stalagmites (growing up), or false for stalactites (growing down).

FossilFeature

ID: abyssallib:fossil

Generates a structure derived from 3D noise, commonly used for randomized organic shapes.

Parameter

Information

state_provider

The block state provider used to construct the primary shape.

targets

A list of valid blocks that the fossil can overwrite.

radius

The bounding radius for the 3D noise evaluation.

noise_frequency

The frequency multiplier applied to coordinates before sampling the noise field.

noise_threshold

The threshold value the 3D noise must exceed to place a block.

TreeFeature

ID: abyssallib:tree

Generates a tree structure using configurable algorithms for the trunk, foliage, roots, and decorations.

Parameter

Information

trunk_provider

The block state provider supplying the log blocks.

foliage_provider

The block state provider supplying the leaf blocks.

dirt_provider

The block state provider supplying the dirt/root block substrate.

trunk_placer

The algorithm used to define the shape and height of the trunk. [Refer to Default Trunk Placers]

foliage_placer

The algorithm used to define the shape and spread of the leaves. [Refer to Default Foliage Placers]

root_placer

The algorithm used to map subterranean roots. [Refer to Default Root Placers]

decorators

A list of decorators that add secondary features (e.g., vines, cocoa beans) after the main tree generates. [Refer to Default Decorators]

base_height

The minimum guaranteed vertical height of the trunk.

height_rand_a

The primary random integer added to the base height.

height_rand_b

The secondary random integer added to the base height.

foliage_radius

The minimum horizontal radius of the foliage canopy.

foliage_radius_rand

A random integer added to the base foliage radius.

dirt_targets

A list of valid blocks that the tree is allowed to grow on.

05 June 2026