#### Placers

| Field             | Type                                 | Required | Description                                      |
|-------------------|--------------------------------------|----------|--------------------------------------------------|
| `id`              | string                               | ❌ No    | Unique identifier                                |
| `spec`            | string                               | ✅ Yes   | Reference to a `spec`                              |
| `dimensionId`     | string                               | ❌ No    | Dimension ID                                     |
| `biomeWhiteList`  | string[]                             | ❌ No    | Biome whitelist (empty = all biomes)             |
| `spawnRate`       | number                               | ❌ No    | Average number of veins per chunk                |
| `placementHeight` | [RandomInt](RandomInt.md)            | ❌ No    | Height generator for the vein center             |
| `shapeBuilder`    | [ShapeBuilder](ShapeBuilder.md)      | ❌ No    | Shape generator                                  |
| `composition`     | [ChanceMapping[]](ChanceMapping.md)  | ❌ No    | Vein composition                                 |
| `variables`       | object                               | ❌ No    | Overrides and extends variables from the spec    |

```json
{
  "placers": [
    {
      // Unique ID (optional)
      "id": "gold-ore",
      // Reference to a template
      "spec": "nether-ore",
      // Game dimension (optional)
      "dimensionId": "minecraft:nether",
      // Biome list (optional)
      // Absence of the field or an empty array = all biomes
      "biomeWhiteList": [
        "minecraft:birch_forest"
      ],
      // Frequency per chunk (optional)
      // 1.5 => On average, 1.5 veins will be generated per chunk (excluding vein size)
      // Uses Poisson distribution
      "spawnRate": 1.5,
      // Vein height generator (see RandomInt) (optional)
      "placementHeight": {
        // In this case, a "uniform" distribution from 20 to 100 is used
        "type": "Uniform",
        "min": 20,
        "max": 110
      },
      // Vein shape generator (see ShapeBuilder) (optional)
      "shapeBuilder": {
        // In this case, a "potato" shape is used
        "type": "Potato",
        // Vein radius generator (see RandomInt)
        "radius": {
          // In this case, a "volume-balanced" distribution from 2 to 48 is used (see RandomInt)
          "type": "VolumeBalanced",
          "min": 2,
          "max": 48
        }
      },
      // Vein composition (optional)
      // Completely replaces the template.
      // It is recommended not to use this field, but to specify your own variables in the 'variables' block
      "composition": [
        {
          // Chance for this component
          // Currently 5
          "chance": 5,
          "mapping": {
            // Stone is replaced with gold
            "minecraft:stone": "minecraft:gold_ore"
          }
        }
      ],
      "variables": {
        // You can now specify variable values (overrides variables from the spec)
        "%VAR": 12,
        "%CUSTOM_ORE": "minecraft:deepslate_gold_ore"
      }
    },
    ...
  ]
}
```