> For the complete documentation index, see [llms.txt](https://paradiseland.gitbook.io/wiki/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://paradiseland.gitbook.io/wiki/custom-biomes/properties/schematics/custom-trees.md).

# Custom trees

## Create your tree schematic

[Follow this guide](/wiki/misc/schematics/create-a-new-schematic.md).

## Frequency

```yaml
schematics.trees.frequency: 8.0E-4
```

Specifies the probability of spawning a tree schematic at each \[x, z] coordinate.

{% hint style="info" %}
**Valid range**: `0 (never) to 1 (always)`
{% endhint %}

## Schematic properties

{% code overflow="wrap" lineNumbers="true" %}

```yaml
schematics.trees.list:
    -   enabled: true
        schematicFileName: forest_tree_1.schematic
        weighting: 10
        minHeight: 0
        maxHeight: 256
        floorTypes: '"GRASS_BLOCK","DIRT"'
        excludesTypes: '"OAK_LEAVES","ACACIA_LEAVES","BIRCH_LEAVES",...'
...
```

{% endcode %}

Specifies the list of tree schematics that will be placed on the generated chunk.

{% hint style="info" %}
**NOTE**: Supported schematic formats

* From 1.8.8 to 1.12.2: **MCEdit**/WEdit (`.schematic` files) formats
* From 1.13: **MCEdit**/WEdit (`.schematic` files) and **Sponge** (`.schem` files) formats

[Read more](/wiki/misc/schematics.md)
{% endhint %}

{% hint style="warning" %}
The schematic must have the offsets on the exact position where the schematic should be located. For example, a tree schematic must have the offsets at the base of the trunk.
{% endhint %}

### Enabled

Set this to 'true' to enable this feature.

### Schematic file name

An existing schematic file name located in the /plugins/ParadiseLand/schematics directory.

<table data-view="cards"><thead><tr><th>Schematic file name</th><th>Preview</th></tr></thead><tbody><tr><td>forest_tree_1.schematic</td><td><img src="/files/Xpnn8cibAfqtJsPMZ1vY" alt=""></td></tr><tr><td>forest_tree_2.schematic</td><td><img src="/files/VIYsMrHj44zzsQmuLrkT" alt=""></td></tr><tr><td>forest_tree_3.schematic</td><td><img src="/files/EVNOC1jIJJemvJpmN4cy" alt=""></td></tr><tr><td>forest_tree_4.schematic</td><td><img src="/files/SQKmQNcceui6SKwyxTLw" alt=""></td></tr><tr><td>forest_tree_5.schematic</td><td><img src="/files/mX558NjvoQtwTGRzh8td" alt=""></td></tr><tr><td>forest_tree_6.schematic</td><td><img src="/files/lVh4Bz0vPCAaZnSluj6F" alt=""></td></tr><tr><td>forest_tree_7.schematic</td><td><img src="/files/GhzHUTcRf47DSBSbO7GG" alt="" data-size="original"></td></tr><tr><td>forest_tree_8.schematic</td><td><img src="/files/KTHGSBkiw96tdr2QPWsr" alt=""></td></tr><tr><td>birch_tree_1.schematic</td><td><img src="/files/373NIFbnWfdaj7bAhkuS" alt=""></td></tr><tr><td>taiga_tree_1.schematic</td><td><img src="/files/oZ0w9V2lrKQ9X7AFmznr" alt=""></td></tr><tr><td>taiga_tree_2.schematic</td><td><img src="/files/XAxbOSR0qvW2XEW1ElLt" alt=""></td></tr><tr><td>taiga_tree_3.schematic</td><td><img src="/files/HhYSPCtDwiIq3J4DrRq7" alt=""></td></tr><tr><td>taiga_tree_4.schematic</td><td><img src="/files/iqRkx7LDnBr0JkeKHzr8" alt=""></td></tr><tr><td>taiga_tree_5.schematic</td><td><img src="/files/5VQcCk2asV58YU9ijdb5" alt=""></td></tr><tr><td>snowy_taiga_tree_1.schematic</td><td><img src="/files/nGwSN6GXxwRdNP1yYyL8" alt=""></td></tr><tr><td>snowy_taiga_tree_2.schematic</td><td><img src="/files/9tWzr63n98IGOdMnB7EA" alt=""></td></tr><tr><td>snowy_taiga_tree_3.schematic</td><td><img src="/files/uusiRMvDffLnjHtiOQ0B" alt=""></td></tr><tr><td>snowy_taiga_tree_4.schematic</td><td><img src="/files/AxEqDn5rJ2CoYt4D3FS8" alt=""></td></tr></tbody></table>

### Weighting

A positive value for the weighted average.\
[See here for more info about weighting](/wiki/custom-biomes/properties/weighting.md).

{% hint style="info" %}
**Min value**: 1
{% endhint %}

### Minimum height

The minimum world height.

{% hint style="info" %}
**NOTE**: Must be less than the [maximum height](#maximum-height).
{% endhint %}

### Maximum height

The maximum world height.

{% hint style="info" %}
**NOTE**: Must be greater than the [maximum height](#minimum-amount).
{% endhint %}

### Floor types

Specifies the comma-separated list of blocks where trees will be spawned.

{% hint style="info" %}
**NOTE**: Each type MUST BE ENCLOSED in double quotes.
{% endhint %}

For example

* On a 1.13 server:
  * Single block type: `'"GRASS_BLOCK"'`
  * Multiple block types: `'"GRASS_BLOCK","DIRT","MYCELIUM"'`
* On a 1.12 server:&#x20;
  * Single block type: `'"GRASS"'`
  * Multiple block types: `'"GRASS","DIRT","MYCELIUM"'`

### Excludes types

Specifies the comma-separated list of blocks to be excluded from replacement during schematic pasting.

{% hint style="info" %}
**NOTE**: Each type MUST BE ENCLOSED in double quotes.
{% endhint %}

For example

* On a 1.13 server:
  * Single block type: `'"GRASS_BLOCK"'`
  * Multiple block types: `'"GRASS_BLOCK","DIRT","MYCELIUM"'`
* On a 1.12 server:&#x20;
  * Single block type: `'"GRASS"'`
  * Multiple block types: `'"GRASS","DIRT","MYCELIUM"'`


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://paradiseland.gitbook.io/wiki/custom-biomes/properties/schematics/custom-trees.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
