# Configuration

## How it works ?

Configuration in Stratos is what generates the worlds, the plugin is based on it to process the generation. Configuration has to be done before starting the world generation, otherwise you could get corrupted chunks. Indeed if you change the configuration of a generated world, new chunks will be based on the new configurations while old chunks will keep the old configuration.

## Global configuration

Stratos propose two ways to use configuration files to generate worlds. The first one is to use the default config.yml. This config will be applied to every world you generate with Stratos. The other way is to create a per-world configuration by using the command :

```
/sconfig create <worldname>
```

By doing this, a new config file is created in the folder `/plugins/Stratos/worlds/` with the name of the world used in the command. This configuration file will now override the default `config.yml` and the generation of this particular world will be based on this configuration file.

{% hint style="info" %}
Few properties are not possible to edit in the per-world configuration file like the **auto\_spawn** property
{% endhint %}

## Choose your biomes

Stratos has lots of predefined biomes you can include (you’ll see how to create custom biomes later).

In the chosen configuration file, look at the biomes property. It contains the list of biomes your world will generate. A list of available biomes is mentioned in the configuration file. To add a new biome to the configuration, copy the lines concerning a biome and paste it at the end of the list (careful regarding spaces).

**Example :**&#x20;

```
- ==: SBiome
  biome: Autumn
  centerX: 0.0
  centerY: 0.0
  tree_probability: 0.8
- ==: SBiome
  biome: Canyon
  centerX: 0.0
  centerY: 0.0
  tree_probability: 0.5
- ==: SBiome
  biome: Flower
  centerX: 0.0
  centerY: 0.0
  tree_probability: 0.5
```

## Place your biomes

Biome placement is a bit complex but quite fun to play with. To simplify the process, Stratos implements multiple placement presets that will fill the centerX and centerY of your biomes. You can find the placement property in the positioning part of the config. Here are the available placements for your biomes :

* **random** : Every biome is placed randomly, it means that a biome can take major part of the space while others can fill only 1%
* **balanced** : Every biome has more or less the same space on the world
*   **island** : Every biome has more or less the same space on the world except for the

    sea biome that will have more space than the others
* **manual** : The parameters used to define the placement will be the centerX and centerY of your biome list. To understand the concept look at the example below.

<figure><img src="https://146970342-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FmGAmUA3Xk4Tdxlnr0I8H%2Fuploads%2FlkXaAhKPm8makE8cHO0b%2FCapture%20d%E2%80%99e%CC%81cran%202023-01-26%20a%CC%80%2013.06.27.png?alt=media&#x26;token=ce311f16-f530-4caa-a67d-39f5e263cb37" alt=""><figcaption></figcaption></figure>

This disposition is called a Voronoi diagram. On this diagram, the biomes have these properties :

* **Mountain** : centerX = 0.25 and centerY = 0.75
* **Plain** : centerX = 0.75 and centerY = 0.75
* **Volcano** : centerX = 0.75 and centerY = 0.25
* **Canyon** : centerX = 0.25 and centerY = 0.25

On this diagram, every color represents one biome, we see that with this configuration, each biome would have approximately 25% of the whole map. We can also deduce that some biomes will never be connected like Volcano and Mountain biomes.

Now you know how to place your biomes, you can visualize your manual configuration approximately [here](http://alexbeutel.com/webgl/voronoi.html) (axis is not written on the diagram, simply consider the X and Y axis as wrote on the picture above).

## Tree probability

To change the trees probability you can modify the **tree\_probability** of the biome and the **tree\_factor** probability. The average amount of tree per chunk is computed as follow : **tree\_probability** \* **tree\_factor**. **tree\_factor** is the maximum amount of trees per chunk and **tree\_probability** is the probability to place one tree.
