# hbm:marker_table

Runs an ordered group of marker processors.

**since NTM 1.0.3**

Runs its members in order on matching marker states. Each member sees the state left by the previous member. The built-in member types are [`hbm:weighted_place`](https://movblock.mov/ntm-next/wiki/world-generation/processors/weighted_place.md) and [`hbm:maybe_place`](https://movblock.mov/ntm-next/wiki/world-generation/processors/maybe_place.md). A `maybe_place` refusal leaves the cell untouched and ends processing for that cell.

## Fields

| Field | Meaning and default |
| - | - |
| `processor_type` | `hbm:marker_table`. |
| `processors` | Ordered marker processors. An empty array passes every cell unchanged. |
| `processors.processor_type` | Marker processor type; built-in members are hbm:weighted_place and hbm:maybe_place. Each type has its own fields in the processor reference. |

## Example:

File: `data/example/worldgen/processor_list/markers.json`.

```json
{
  "processors": [{
    "processor_type": "hbm:marker_table",
    "processors": [
      {
        "processor_type": "hbm:maybe_place",
        "marker": {"Name": "minecraft:gold_block"},
        "result": {"Name": "minecraft:stone"},
        "probability": 0.5
      },
      {
        "processor_type": "hbm:weighted_place",
        "marker": {"Name": "minecraft:stone"},
        "options": [
          {"data": {"Name": "minecraft:andesite"}, "weight": 1},
          {"data": {"Name": "minecraft:granite"}, "weight": 1}
        ]
      }
    ]
  }]
}
```
