AbyssalLib Help

Default State Providers

State Providers define the exact block state that is placed into the world when a feature generates. Below is a list of all default state providers included in AbyssalLib.

SimpleBlockStateProvider

ID: abyssallib:simple

Provides a single, static block state for every placement.

Parameter

Information

state

A BlockInfo object defining the block to place.

WeightedBlockStateProvider

ID: abyssallib:weighted

Selects a random block state from a pool of defined entries based on their assigned weights.

Parameter

Information

entries

A list of weighted block info entries, formatted as a collection of block info objects and their corresponding integer weights.

NoiseThresholdBlockStateProvider

ID: abyssallib:noise_threshold

Selects between two different block states based on 2D Simplex Noise evaluation at the placement coordinates.

Parameter

Information

scale

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

threshold

The breakpoint value evaluating which state is returned.

normal_state

The BlockInfo returned if the evaluated noise is less than or equal to the threshold.

high_state

The BlockInfo returned if the evaluated noise exceeds the threshold.

RotatedBlockStateProvider

ID: abyssallib:rotated

Intercepts a base provider and applies forced rotation or directional properties to the resulting block state.

Parameter

Information

base_provider

The base BlockStateProvider to use and apply rotations to.

axis

The forced axis alignment (e.g., used for logs and pillars).

facing

The forced directional facing (e.g., used for stairs, chests, and vines).

rotation

The forced 16-point rotation (e.g., used for standing signs, banners, and skulls).

05 June 2026