# Schematic Set

A schematic set consists of a selector and optional modifiers.

![space](http://chojo.u.catgirlsare.sexy/yZsxd5nh.png)

### New Schematic Set Definer

The new schematic set definer is more readable than the legacy one. It uses flags instead of special characters to define the modifiers. A schematic set is defined inside double quotes `"`. If you want to use the new syntax simply type a double quote and the tab completion will switch to the new syntax.

#### Selector

The selector defines which schematics will be used. you can search for schematic with a name or regex. You can also select schematics inside a directory or use a saved preset. The selector is always required and is the first argument to define a schematic set.

**Name**

A name. This will use every schematic which exactly matches this name. If you want a broader search you can add a \* at the and. This will use every schematic which starts with the name.

* `tree_*` - this will match all schematics which start with tree\_
* `tree_acacia_01` - This will match the schematic with the name 'tree\_acacia\_01'

**Regex**

If you want it more specific you can use a regex too. If you want to use a regex, start with `regex:` or `r:`.

* `regex:tree_.+?` - This will match all schematics that start with tree
* `r:tree_acacia_[0-9]{1,3}` - This will match all schematics that start with tree\_acacia\_ and have the number 1-999 at the end.
* For further information I recommend this [site](https://www.regextester.com/)

**Directory**

If you are an organized human, you have all your schematics properly sorted in folder. You can select schematics inside a folder or all schematics inside a folder and its sub folders. To select all subfolders simply add a '\*' at the end of the folder.

* `dir:tree` - Uses all schematics inside the folder tree
* `d:tree/*` - Uses all schematics inside the folder tree and it subfolders

**Preset**

Presets don't support modifiers. They load schematic sets, which already have modifiers. A saved preset can be loaded with:

* `p:<preset>` - Selects a preset by the name
* `preset:<preset>` - Selects a preset by the name

#### Modifier

The modifier are defined by flags. Dont use a modifier twice. Only the first one will take effect. The entered values will be applied before pasting the schematic. If you use a random value, a different random value will be used every time you paste.

Every modifier has some explicit values. For for flip and rotation you can use random or a `*` for a random value. These will change everytime the brush pastes a schematic.

**Flip**

You can flip a schematic on the North South Axis (N) or on the East West Axis (E). Probably all values are valid. But they do all the same. So N is equals to S and NS and SN. If the `*` is used the rotation will be None, N and E.

* `-f:N` - flips the schematic to north before pasting.
* `-flip:random` - flips the schematic to a random (None, N, E) direction before pasting.

**Rotation**

The rotation can be 0 which is default, 90, 180 or 270. If the `*` is used the rotation will be 0, 90, 180 or 270.

* `-r:90` - rotates the schematic 90 degree clockwise before pasting.
* `-rotate:random` - rotates the schematic with a random (0,90,180,270) value before pasting.

**Weight**

The weight defines the chance that the brush is used if a schematic brush contains more than one brush. If a brush doesn't has a weight the average of all weighted brushes will be used.

* `-w:10` - gives the schematic set a weight of 10.
* `-weight:*` - weight the schematic set with a average weight. This is also the case when you don't use this flag.

![space](http://chojo.u.catgirlsare.sexy/yZsxd5nh.png)

### Legacy Schematic Set definer

The legacy schematic set definer is nearly equal to the old schematic set definer of the old schematic brush.

#### Selector

The selector defines which schematics will be used. you can search for schematic with a name or regex. You can also select schematics inside a directory or use a saved preset. The selector is always required and is the first argument to define a schematic set. It is followed by several optional modifiers of the schematics inside the schematic set.

**Name**

A name. This will use every schematic which exactly matches this name. If you want a broader search you can add a \* at the and. This will use every schematic which starts with the name.

`<name>@rotation!flip:weight`

* `tree_*` - this will match all schematics which start with tree\_
* `tree_acacia_01` - This will match the schematic with the name 'tree\_acacia\_01'

**Regex**

If you want it more specific you can use a regex too. A regex has to start with a `^`.

`^<regex>@rotation!flip:weight`

* `^tree_.+?` - This will match all schematics that start with tree
* `^tree_acacia_[0-9]{1,3}` - This will match all schematics that start with tree\_acacia\_ and have the number 1-999 at the end.
* For further information I recommend this [site](https://www.regextester.com/)

**Directory**

If you are an organized human, you have all your schematics properly sorted in folder. You can select schematics inside a folder or all schematics inside a folder and its sub folders. To select all subfolders simply add a '\*' at the end of the folder.

`$<directory>@rotation!flip:weight`

* `$tree` - Uses all schematics inside the folder tree
* `$tree*` - Uses all schematics inside the folder tree and it subfolders

**Preset**

Presets don't support modifiers. They load schematic sets, which already have modifiers. A saved preset can be loaded with: `&<preset>`

#### Modifier

The modifier are optional. The order doesn't matter. The entered values will be applied before pasting the schematic.

Every modifier has some explicit values. For for flip and rotation you can use a `*` for a random value. These will change everytime the brush pastes a schematic.

**Flip**

You can flip a schematic on the North South Axis (N) or on the East West Axis (E). Probably all values are valid. But they do all the same. So N is equals to S and NS and SN. If the `*` is used the rotation will be None, N and E.

`!flip`

**Rotation**

The rotation can be 0 which is default, 90, 180 or 270. If the `*` is used the rotation will be 0, 90, 180 or 270.

`@rotation`

**Weight**

The weight defines the chance that the brush is used if a schematic brush contains more than one brush. If a brush doesn't has a weight the average of all weighted brushes will be used.

`:weight`

![space](http://chojo.u.catgirlsare.sexy/yZsxd5nh.png)


---

# Agent Instructions: 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:

```
GET https://wiki.eldoria.de/schematic-brush-reborn-legacy/schematic-set.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
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.
