# hbm:oil_bubble

Builds an underground oil bubble and adds a surface scar.

## Fields

| Field | Meaning and default | Range |
| - | - | - |
| `core` | Block state filling the bubble. | |
| `core.id` | Registered block ID. | |
| `core.properties` (Optional) | Block-state property names and string values. | |
| `fuzzy` | Adds random variation to the bubble boundary. | |
| `max_size` | Exclusive upper radius bound; must exceed `min_size`. | `[1, i32::MAX]` |
| `min_size` | Minimum sampled radius. | `[0, i32::MAX]` |
| `replaceable` | Vanilla rule test selecting blocks to replace. | |
| `replaceable.predicate_type` | Vanilla rule-test type. | |
| `replaceable.tag` (Optional) | Block tag for tag_match. | |
| `replaceable.block` (Optional) | Block ID for block_match. | |

The top-level `type` selects this feature; the remaining fields belong beside it.

## Example

Source path: `data/hbm/worldgen/feature/oil_bubble.json`

```json
{
  "type": "hbm:oil_bubble",
  "core": "hbm:ore_oil",
  "fuzzy": false,
  "max_size": 16,
  "min_size": 8,
  "replaceable": {
    "predicate_type": "minecraft:tag_match",
    "tag": "minecraft:stone_ore_replaceables"
  }
}
```
