Skip to content

Block Predicate Types

Apollo edited this page Apr 22, 2026 · 2 revisions

block_state

The block_state predicate checks, unsurprisingly, the block state of the given block.

{
  "type": "lithostitched:block_state",
  "properties": {
    "half": "upper"
  }
}
  • properties: A list of block states that must match.

in_structure

The in_structure predicate checks for if the current position is in/around a structure.

{
  "type": "lithostitched:in_structure",
  "structure": "minecraft:ancient_city",
  "search_range": {
    "horizontal": 4,
    "vertical": 8
  }
}
  • structure: The structure to check for. If omitted, every structure is checked for.
  • search_range: The range around the position to check for the structure. Can either be an object with separate horizontal and vertical fields, or a single integer representing both values.

multiple_of

The multiple_of block predicate type will pass if a certain number of block predicates pass.

{
  "type": "lithostitched:multiple_of",
  "predicates": [
    {
      "type": "minecraft:matching_blocks",
      "offset": [0, 0, 0],
      "blocks": "minecraft:stone"
    },
    {
      "type": "minecraft:matching_blocks",
      "offset": [0, 1, 0],
      "blocks": "minecraft:stone"
    },
    {
      "type": "minecraft:matching_blocks",
      "offset": [0, 2, 0],
      "blocks": "minecraft:stone"
    }
  ],
  "allowed_count": [1, 2]
}
  • predicates: A list of block predicates.
  • allowed_count: An integer range (64, [64,96], {"min_inclusive":64,"max_inclusive":96}).

random_chance

The random_chance block predicate will randomly pass based on the block position.

{
  "type": "lithostitched:random_chance",
  "chance": 0.4
}
  • chance: The chance the block predicate will pass. A float from 0.0 to 1.0.

Clone this wiki locally