Weighted Provider
Randomly selects from a weighted list of state providers.Type ID
Java Interface
dev.worldgen.lithostitched.worldgen.stateprovider.WeightedProvider:1
JSON Format
Fields
List of weighted state provider entries
Behavior
- Selects one state provider randomly based on weights each time
getState()is called - If the total weight is 0 or no entries exist, returns air
- Weights are relative - an entry with weight 3 is 3x more likely than weight 1
- The selected provider’s
getState()method is then called to get the actual block state
Example: Random Wood Planks
Example: Nested Weighted Providers
Random Block Provider
Randomly selects a block from a set or tag.Type ID
Java Interface
dev.worldgen.lithostitched.worldgen.stateprovider.RandomBlockProvider:1
JSON Format
Fields
Block tag (prefixed with
#) or list of block IDs to randomly select fromBehavior
- Selects one block uniformly at random from the set each time
getState()is called - Returns the default block state of the selected block
- If the set is empty, returns air
- All blocks have equal probability of selection
Example: Random Logs
minecraft:logs tag.
Example: Specific Block Set
Comparison
| Feature | Weighted Provider | Random Block Provider |
|---|---|---|
| Selection Type | Weighted random | Uniform random |
| Can nest providers | Yes | No |
| Supports tags | Via nested providers | Yes, directly |
| Weight control | Yes | No (equal weights) |
| Use case | Complex distributions | Simple uniform selection |
Usage in Features
State providers are used in feature configurations wherever aBlockStateProvider is accepted:
Registration
State providers are registered inLithostitched.java:127-130:
