# hbmspace:ttree

Tekto trees.

The tree needs rubber grass or rubber silt below. Its trunk height is `tallest` plus a random value below `smallest`; a leaf ellipsoid sits `offset` below the top, and `vines` hangs vinyl vines. The Tekto saplings grow the features `hbmspace:sapling_vinyl` and `hbmspace:sapling_pvc`.

## Fields

| Field | Meaning and default | Range |
| - | - | - |
| `offset` | Leaf centre below the trunk top. | `i32` |
| `smallest` | Random trunk addition bound. | `[1, i32::MAX]` |
| `tallest` | Base trunk height. | `[0, i32::MAX]` |
| `xz` | Horizontal leaf radius. | `[1, i32::MAX]` |
| `y` | Vertical leaf radius. | `[1, i32::MAX]` |
| `vines` | Hangs vinyl vines. | |
| `log` | Trunk block. | |
| `log.id` | Registered block ID. | |
| `log.properties` (Optional) | Block-state property names and string values. | |
| `leaves` | Leaf block. | |
| `leaves.id` | Registered block ID. | |
| `leaves.properties` (Optional) | Block-state property names and string values. | |

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

## Example

Source path: `data/hbmspace/worldgen/feature/sapling_pvc.json`

```json
{
  "type": "hbmspace:ttree",
  "leaves": "hbmspace:rubber_leaves",
  "log": "hbmspace:pvc_log",
  "offset": 2,
  "smallest": 5,
  "tallest": 7,
  "vines": false,
  "xz": 4,
  "y": 3
}
```
