# BuildSystem

Introduction

![](/files/-M8lVnhw9VUo76-B3_-u)

Welcome to my site all about my plugin, **BuildSystem**.

**BuildSystem** is a simple but powerful - as the name already says - system for builders, with lots of great features for everyday usage.\
Manage worlds in the worlds navigator, change their permission, projects, and status with ease.\
And not to forget: let each player decide which settings they think are best for them and now the building can start!

It was first released on **September 9, 2018** on *SpigotMC.org*. Since then, I have invested **hundreds of hours** into its programming and have released **over 100 updates.** \
Despite the fact that I've since started studying and working, I'm aiming to keep on publishing more in the future!

If you are a **new** user, I suggest you read the following in order to learn the basics of the plugin:

{% content-ref url="/pages/-M6nkos2R8ajeg7sLi8L" %}
[Tutorials](/v2/getting-started-1/getting-started)
{% endcontent-ref %}


# Getting started

Here you can find a list of useful pages

## Tutorials

{% content-ref url="/pages/-M6nkos2R8ajeg7sLi8L" %}
[Tutorials](/v2/getting-started-1/getting-started)
{% endcontent-ref %}

## Config

{% content-ref url="/pages/pvOQ20mwFIBFN7Tdh4dD" %}
[Config](/v2/getting-started-1/config)
{% endcontent-ref %}

## Common Issues

{% content-ref url="/pages/6k7Ifuu34BynhPkwAiFk" %}
[Common Issues](/v2/getting-started-1/common-issues)
{% endcontent-ref %}

## Downloads

* SpigotMC: <https://www.spigotmc.org/resources/buildsystem-1-8-1-15.60441/>&#x20;
* Chunkfactory: <https://chunkfactory.com/product/buildsystem-1-8-1-15.1049/>&#x20;
* MC-Market: <https://www.mc-market.org/resources/12399/>


# Tutorials

## Installing BuildSystem

1. Download **BuildSystem** from a site of your choice.
2. Place the .jar in your plugins directory.
3. Run the server and wait for it to fully load.
4. Type `stop` in your Minecraft server console to bring the server to a clean stop.
5. Make changed to the `config` as you wish.
6. Run the server.
7. All done! **BuildSystem** should be installed and ready to be used.

## Creating a world&#x20;

1. Open the navigator by clicking on the `Navigator` item or by using the command:

```
/worlds
```

&#x20;  2\. Click on the chest icon to open the `World Navigator`.

![](/files/-M6oc8FnP_7DnKJZsOoL)

{% hint style="info" %}
If you cannot open the navigator, make sure you have the correct [permission](/v2/permissions/bypass#open-the-navigator).
{% endhint %}

&#x20;  3\. Click on the `"+" skull` at the bottom of the navigator.

![](/files/-M6ocK7spFpSOUwlfqKW)

{% hint style="info" %}
If you cannot see the item for creating a world, make sure you have to correct [permission](/v2/permissions/bypass#create-a-world).
{% endhint %}

&#x20;  4\. Decide whether you want to create a **predefined** **world** or a [**template**](/v2/getting-started-1/getting-started#installing-templates).

![Predefined worlds](/files/-M6ocCI-AbbIZrxq47-7)

![Templates](/files/-M6ocHDgwjF5Eei6det0)

&#x20;  5\. Enter the name of the world you want to create into the chat

{% hint style="warning" %}
The world name cannot contain spaces, dots and special symbols
{% endhint %}

## Installing templates

1. Place the world folder you wish to use as a template in the `templates` directory in the `BuildSystem` directory.

![](/files/-M6ohSMWcxczswhTA2l1)

&#x20;  2\. When creating a world now select the template you just added.


# Config

## Messages

### spawn-teleport-message

* **default:** false
* **description:** Sets whether a message will be sent when teleporting to the spawn.

### join-quit-message

* **default:** true
* **description:** Sets whether a message will be sent when a player joins or quite the server.

### join-quit-message

* **default:** dd/MM/yyyy
* **description:** Sets the date format that will be used throughout the plugin.

## Settings

### update-checker

* **default:** true
* **description:** Sets whether the plugin should check for possible updates and notfiy players if any are found.

### scoreboard

* **default:** true
* **description:** Sets whether the scoreboard component should be initiated. If set to `false`, players will not be able to activate the scoreboard. Is not equivalent to the per-player setting!

### archive-vanish

* **default:** true
* **description:** Sets whether players should be hidden from other players and receive an invisibility effect in archived worlds.

### teleport-after-creation

* **default:** true
* **description:** Sets whether the creator of a world should be automatically teleported to a said world when it is created.

### builder

#### block-worldedit-non-builder

* **default:** true
* **description:** When enabled, players who are not a builder in a world, will not be able to use WorldEdit commands in said world.

### navigator

#### item

* **default:** CLOCK
* **description:** The item to be used as the navigator.

#### give-item-on-join

* **default:** true
* **description:** Sets whether the navigator should be given to a player on joining the server.

## world

### default

{% hint style="info" %}
When a new world is generated, the following settings are set for that specific world.
{% endhint %}

#### permission

* public
  * **default:** -
  * **description:** The default permission *public* worlds have when created
* private
  * **default:** worlds.%world%
  * **description:** The default permission *private* worlds have when created

#### time

* sunrise
  * **default:** 0
  * **description:** The time which is used when setting the time in a world to "sunrise".
* noon
  * **default:** 6000
  * **description:** The time which is used when setting the time in a world to "noon".
* night
  * **default:** 18000
  * **description:** The time which is used when setting the time in a world to "night".

#### worldboarder

* size
  * **default:** 6000000
  * **description:** The size which the world board is set to on world generation.

#### difficulty

* **default:** PEACEFUL
* **description:** The difficulty of a world which is used on generation.

#### gamerules

{% hint style="info" %}
To add a gamerule which should be set on world generation, just add it to the list of existing ones (or remove the present ones if needed).

For example if you want to add the gamerule `randomTickSpeed`:&#x20;

```
doDaylightCycle: false
doMobSpawning: false
doFireTick: false
randomTickSpeed: 0
```

{% endhint %}

* **default:**

  ```
  doDaylightCycle: false
  doMobSpawning: false
  doFireTick: false
  ```

#### settings

* physics
  * **default:** true
  * **description:** Sets whether blocks have physics in the world. For example, if phyiscs are disabled, sand will not have gravity.
* explosions
  * **default:** true
  * **description:** Sets whether explosions are allowed in the world.
* mob-ai
  * **default:** true
  * **description:** Sets whether mobs have an AI in the world.
* block-breaking
  * **default:** true
  * **description:** Sets whether blocks are allowed to be broken in the world.
* block-placement
  * **default:** true
  * **description:** Sets whether blocks are allowed to be placed in the world.
* block-interactions
  * **default:** true
  * **description:** Sets whether blocks are allowed to be interacted with in the world.
* builders-enabled
  * **default:**&#x20;
    * public: false
    * private: true
  * **description:** Sets whether only builders should be allowed to build in the world.

### lock-weather

* **default:** true
* **description:** Sets whether the weather will be locked and will therefore not change.

### invalid-characters

* **default:** ^\b$
* **description:** Specify further characters to be removed from a world's name on creation.

### import-all

#### delay

* **default:** 30
* **description:** Sets the amount of seconds between the import each world.

### max-amount

#### public

* **default:** -1
* **description:** Sets the maximum amount of public worlds that are allowed to exist simultaneously. Set to -1 to disable.

#### private

* **default:** -1
* **description:** Sets the maximum amount of private worlds that are allowed to exist simultaneously. Set to -1 to disable.

### unload

#### enabled

* **default:** false
* **description:** Sets whether worlds will automatically be unloaded after a given time when no players are present in the world.

#### time-untill-unload

* **default:** 01:00:00
* **description:** Sets the time until a worlds will automatically be unloaded.

#### blacklisted-worlds

* **default:**

```
- world
- world_nether
- worth_the_end
```

* **description:** A list of all worlds that will not be unloaded, even if there are no players present in the world.

### void-block

* **default:** true
* **description:** Sets whether a gold block should be generated at `0 64 0` in a void world.<br>


# Common Issues

## Issue 1 - Manipulating world

> "I can(not) build, even though I should be able to"

{% hint style="info" %}
Not every player can always interact with the world they are in.
{% endhint %}

Reasons an interaction could be cancelled:

* The world has its **Status** (see [`/worlds setStatus`](/v2/commands/worlds/setstatus#usage)) set to archived
* The world has a setting enabled (see [`/worlds edit`](/v2/commands/worlds/edit#usage)) which disallows certain events
* The world only allows **Builders** to build and the player is not such a builder

However, a player can override these reasons if:

* The player has the permission `buildsystem.admin`
* The player has the permission `buildsystem.bypass.archive`
* The player has used [`/build`](/v2/commands/build#usage) to enter build-mode

## Issue 2 - Weird symbols appearing in messages

If ever start the server and see weird symbols in your messages instead of a UTF-8 character, try adding the following to your startup script:

```
-Dfile.encoding=UTF-8
```

![Example](/files/DHnkIIP4aSRb5TmIuoLH)


# Commands

Here you can find permissions for commands.

## Commands

{% hint style="info" %}
You can find each command's permission by clicking on the command which brings you to its according page
{% endhint %}

* [/back](/v2/commands/back#permission)
* [/blocks](/v2/commands/blocks#permission)
* [/build](/v2/commands/build#permission)
* [/buildsystem](/v2/commands/buildsystem#permission)
* [/config](/v2/commands/config#permission)
* [/explosions](/v2/commands/explosions#permission)
* [/gm](/v2/commands/gm#permission)
* [/day](/v2/commands/day#permission)
* [/night](/v2/commands/night#permission)
* [/noai](/v2/commands/noai#permission)
* [/physics](/v2/commands/physics#permission)
* [/settings](/v2/commands/settings#permission)
* [/setup](/v2/commands/setup#permission)
* [/skull](/v2/commands/skull#permission)
* [/spawn](/v2/commands/spawn#permission)
* [/speed](/v2/commands/speed#permission)
* [/worlds](/v2/commands/worlds#permission)
  * [addBuilder](/v2/commands/worlds/addbuilder#permission)
  * builders
  * [delete](/v2/commands/worlds/delete#permission)
  * [edit](/v2/commands/worlds/edit#permission)
  * [help](/v2/commands/worlds/help#permission)
  * [importAll](/v2/commands/worlds/importall#permission)
  * [import](/v2/commands/worlds/import#permission)
  * [item](/v2/commands/worlds/item#permission)
  * [removeBuilder](/v2/commands/worlds/removebuilder#permission)
  * [removeSpawn](/v2/commands/worlds/removespawn#permission)
  * [rename](/v2/commands/worlds/rename#permission)
  * [setItem](/v2/commands/worlds/setitem#permission)
  * [setCreator](/v2/commands/worlds/setcreator#permission)
  * [setProject](/v2/commands/worlds/setproject#permission)
  * [setStatus](/v2/commands/worlds/setstatus#permission)
  * [setPermission](/v2/commands/worlds/setproject#permission)
  * [setSpawn](/v2/commands/worlds/setstatus#permission)
  * [tp](/v2/commands/worlds/tp#permission)
  * [unimport](/v2/commands/worlds/unimport#permission)


# Navigator

In order to open the navigator with `/worlds` the following permission is needed:

```
buildsystem.navigator
```

If you want a player to receive and use the navigator item which can be specified in the config, the following permission is needed:

```
buildsystem.navigator.item
```


# Worlds


# Creating Worlds

### Public worlds

In order to create a *public* world the following permission is needed:

```
buildsystem.create.public
```

Set the maximum amount of *public* worlds a player can create with

```
buildsystem.create.public.<amount>
```

### Private worlds

In order to create a *private* world the following permission is needed:

```
buildsystem.create.private
```

Set the maximum amount of *private* worlds a player can create with

```
buildsystem.create.private.<amount>
```

### Type restrictions

Allows server owners to restrict which world types can be created

<table data-header-hidden><thead><tr><th>Type</th><th>Permission</th></tr></thead><tbody><tr><td>Normal</td><td><pre><code>buildsystem.create.type.normal
</code></pre></td></tr><tr><td>Flat</td><td><pre><code>buildsystem.create.type.flat
</code></pre></td></tr><tr><td>Nether</td><td><pre><code>buildsystem.create.type.nether
</code></pre></td></tr><tr><td>End</td><td><pre><code>buildsystem.create.type.end
</code></pre></td></tr><tr><td>Void</td><td><pre><code>buildsystem.create.type.void
</code></pre></td></tr></tbody></table>


# Restricting Worlds

*BuildSystem* allows server owners to restrict which worlds a player can modify when using commands.

{% hint style="info" %}
All commands default to `.self` when no suffix (`.self`, `.other`) is provided.&#x20;

**For example:** `buildsystem.day` = `buildsystem.day.self`
{% endhint %}

### Only modify worlds owned by player

If you want a player to only modify worlds which belong to the player (i.e. player **is** creator), then use the command suffix `.self`.

**For example:** If you only want player's to change the world time to day (`/day`) in their own worlds, then give the player the permission `buildsystem.day.self`.

### Modify worlds not owned by player

With the permission suffix `.other`, a player can also modify worlds that **don't** belong to the player (player is **not** creator)

**For example:** If you only want player's to change the world time to day (`/day`) in other worlds, then give the player the permission `buildsystem.day.other`.


# Admin/Bypass

## Admin permission

Bypasses all restrictions such as:

* not being the creator of a world
* archived worlds
* disabled block breaking/placement
* etc.

```
buildsystem.admin
```

## Bypass permissions

#### Bypass disabled building in archived worlds

```
buildsystem.bypass.archive
```

#### Bypass not being a builder in a world

```
buildsystem.bypass.builders
```

#### Bypass disabled block breaking/placement

```
buildsystem.bypass.settings
```

#### Bypass permissions needed to **view public worlds**

```
buildsystem.bypass.permission.public
```

#### Bypass permissions needed to **view archived worlds**

```
buildsystem.bypass.permission.archive
```

#### Bypass permissions needed to **view private worlds**

```
buildsystem.bypass.permission.private
```


# Messages

### Sending colored messages

#### In the chat

```
buildsystem.color.chat
```

#### On signs

```
buildsystem.color.sign
```

### Physics message

Receive the message that physics are disabled in the world you are in.

```
buildsystem.physics.message
```


# /back

Teleport back to your previous location.

Usage

```
/back
```

{% hint style="info" %}
After using the command, your previous location will be forgotten
{% endhint %}

## Permission

```
buildsystem.back
```


# /blocks

Opens a menu with secret blocks

## Usage

```
/blocks
```

## Permission

```
buildsystem.blocks
```

## Menu

![](/files/-M6ns5yEmAWSyvM5MZEc)


# /build

Puts the player into "Build Mode", which allows them to bypass worlds that are set to "archive".

## Usage

```
/build [player]
```

## Permission

### /build

```
buildsystem.build
```

### /build \<player>

```
buildsystem.build.others
```

## Image

![/build response](/files/-M6tph78aFJoPB7MbpkX)


# /buildsystem

Overview of all commands.

## Usage

```
/buildsystem
```

## Permission

```
buildsystem.help.buildsystem
```

## Image

![Only the commands a player has permission for are shown](/files/-M6tpBZ2b7mSaQDYgOZi)


# /config

Reload the config.

## Usage

```
/config reload
```

## Permission

```
buildsystem.config
```

## Image

![](/files/-M6tq68ZfvkTzc1_lElM)


# /day

Sets the time in a world to daytime.

## Usage

```
/day [world]
```

## Permission

```
buildsystem.day
```

## Image

![](/files/-M6tqmoADzPg_DFBSUyG)


# /explosions

Disables explosions in a world.

## Usage

```
/explosions [world]
```

## Permission

```
buildsystem.explosions
```

## Image

![](/files/-M6tqMsyi0o_EPiEpGYz)


# /gm

Change your gamemode.

## Usage

```
/gm <gamemode> [player]
```

{% hint style="info" %}
You can use the following arguments for each gamemode:\
\
**Survival:** `survival`, `s`, `0`\
**Creative:** `creative`, `c`, `1`\
**Adventure:** `adventure`, `a`, `2`\
**Spectator:** `spectator`, `sp`, `3`
{% endhint %}

## Permission

### Until v2.26.0

#### /gm \<gamemode>

```
buildsystem.gamemode
```

#### /gm \<gamemode> \<player>

```
buildsystem.gamemode.others
```

### From v2.27.0 onwards

#### /gm \<gamemode>

```
buildsystem.gamemode
```

{% hint style="info" %}
Each gamemode also has it's own permission which is granted by default when the player has the `buildsystem.gamemode` permission:

* **Survival**: `buildsystem.gamemode.survival`
* **Creative**: `buildsystem.gamemode.creative`
* **Adventure**: `buildsystem.gamemode.adventure`
* **Spectator**: `buildsystem.gamemode.spectator`
  {% endhint %}

#### /gm \<gamemode> \<player>

```
buildsystem.gamemode.other
```

{% hint style="info" %}
Each gamemode also has it's own permission which is granted by default when the player&#x20;

has the `buildsystem.gamemode.other` permission:

* **Survival**: `buildsystem.gamemode.survival.other`
* **Creative**: `buildsystem.gamemode.creative.other`
* **Adventure**: `buildsystem.gamemode.adventure.other`
* **Spectator**: `buildsystem.gamemode.spectator.other`
  {% endhint %}


# /night

Sets the time in a world to nighttime.

## Usage

```
/night [world]
```

## Permission

```
buildsystem.night
```

## Image

![](/files/-M6tqqt7L-KOv5HL2Fml)


# /noai

Disables entity AIs in a world.

## Usage

```
/noai [world]
```

## Permission

```
buildsystem.noai
```


# /physics

Toggles a world's block physics.

{% hint style="info" %}
When block physics are disabled in a world water will no longer flow, sand will not fall, leaves will not disappear and redstone will not work.
{% endhint %}

## Usage

```
/physics [world]
```

## Permission

```
buildsystem.physics
```


# /settings

Opens a menu with per player settings.

## Usage

```
/settings
```

## Permission

```
buildsystem.settings
```

## Menu

![](/files/-M6nwroQDBqYXoU8cJab)

## Settings

### Slab breaking

> When breaking double slabs, only one half will be broken.

### Clear inventory

> When enabled, a player's inventory is cleared on join.

### Change design

> Select which colour the glass panes should have.

![Currently: Black](/files/-M6nxn7zL3ZhDGGYBn16)

### NoClip

> When flying against a wall you will be put into spectator mode.

### Instant place signs

> When enabled, signs are placed without opening the text input.

### Open trapdoors

> When right clicking iron (trap-)doors they will be opened/closed.

### Scoreboard

> A scoreboard which provides you with useful information.

### New navigator

> A new and improved navigator which is no longer a classical GUI.

### Spawn teleport

> When enabled, you will be teleported to the spawn if it has been set.

### Hide players

> When enabled, all players online will be hidden.

### Disable interactions

> When enabled, interactions with certain blocks are disabled.

### World sort

> Change the way worlds are sorted in the navigator.

{% hint style="info" %}
**Currently, you can choose from 4 different sorting methods:**\
Alphabetically (A-Z), Alphabetically (Z-A), Creation date (Newest) & Creation date (Oldest)
{% endhint %}

### Nightvision

> When enabled, you will receive permanent nightvision.


# /setup

Change the default items when creating worlds or changing a world's status.

## Usage

```
/setup
```

## Permission

```
buildsystem.setup
```

## Menu

![](/files/-M6o-xDrvvbVK0IfOUMn)


# /skull

Receive a player's skull.

## Usage

```
/skull [player/id]
```

{% hint style="info" %}
You can receive a skull with a custom skull by using **/skull \<id>**. The ID is fround here: <http://textures.minecraft.net/texture/**\\><ID>​\*\*
{% endhint %}

## Permission

```
buildsystem.skull
```


# /spawn

Set, remove or teleport to the spawn.

## Usage

```
/spawn [set/remove]
```

{% hint style="warning" %}
Do not confuse this command with **/worlds setSpawn**.
{% endhint %}

## Permission

```
/spawn - No permission
/spawn [set/remove] - buildsystem.spawn
```


# /speed

Changes a player's speed

## Usage

```
/speed [1-5]
```

{% hint style="info" %}
If no number is given, a menu will open where you can manually select the desired speed.
{% endhint %}

## Permission

```
buildsystem.speed
```

## Menu

![](/files/-M6o-ZhZgdCeqQvCsk77)


# /top

Teleport to the highest location above you.

## Usage

```
/top
```

## Permission

```
buildsystem.top
```


# /worlds

Opens the navigator.

## Usage

```
/worlds
```

{% hint style="info" %}
For all subcommands use: `/worlds help`&#x20;
{% endhint %}

## Permission

```
buildsystem.navigator
```

## Menu

![](/files/-M6o-geG_x_hUpMWRsHr)


# addBuilder

Add a builder to a world

## Usage

```
/worlds addBuilder [world]
```

## Permission

```
buildsystem.addbuilder
```


# builders

Display the builders of a world

## Usage

```
/worlds addBuilder [world]
```

## Permission

```
buildsystem.builders
```


# delete

Delete a world.

## Usage

```
/worlds delete [world]
```

{% hint style="info" %}
Before a world is delete, you have to confirm it's deletion by clicking on the lime dye.
{% endhint %}

## Permission

```
buildsystem.delete
```

## Menu

![](/files/-M6nwDBAtStR8uss66oq)


# edit

## Usage

```
/worlds edit [world]
```

{% hint style="warning" %}
The world must be imported in order to edit it
{% endhint %}

## Permission

### **Main command**

```
buildsystem.edit
```

### **Task permissions**

* Block Breaking:`buildsystem.edit.breaking`
* Block Placement: `buildsystem.edit.placement`
* Block Physics: `buildsystem.edit.physics`
* Change Time: `buildsystem.edit.time`
* Explosions: `buildsystem.edit.explosions`
* Remove Entities: `buildsystem.edit.entities`
* Modify Builders: `buildsystem.edit.builders`
* Toggle Mob-AI: `buildsystem.edit.mobai`
* Change Visibility: `buildsystem.edit.visibility`
* Block Interactions: `buildsystem.edit.interactions`
* Gamerules: `buildsystem.edit.gamerules`
* Difficulty: `buildsystem.edit.difficulty`
* World Status: `buildsystem.edit.status`
* World Project: `buildsystem.edit.project`
* World Permission: `buildsystem.edit.permission`

## Menu

![](/files/-M8oDRsSOfXlILnCmYp-)


# help

Overview of all /worlds commands.

## Usage

```
/worlds help
```

## Permission

```
buildsystem.help.worlds
```

## Image

![](/files/-M6tp1P-Iz8xrtIB0CEY)


# importAll

Import all worlds located in your server directory at once.

## Usage

```
/worlds importAll
```

## Permission

```
buildsystem.import.all
```


# import

Import a world.

## Usage

```
/worlds import <world>
```

## Permission

```
buildsystem.import
```


# info

Shows information about a world.

## Usage

```
/worlds info [world]
```

## Permission

```
buildsystem.info
```

## Example

![](/files/-M6nwkX9lcuwCa3dgW7A)


# item

Receive the "World Navigator".

## Usage

```
/worlds item
```

## Permission

```
buildsystem.navigator.item
```


# removeBuilder

Removes a builder from a world

## Usage

```
/worlds removeBuilder [world]
```

## Permission

```
buildsystem.removebuilder
```

##


# removeSpawn

Remove's a world's custom spawn point.

## Usage

```
/worlds removeSpawn
```

## Permission

```
buildsystem.removespawn
```


# rename

Rename an existing world.

## Usage

```
/worlds rename [world]
```

## Permission

```
buildsystem.rename
```


# setItem

Set a world's item which is shown in the world navigator.

## Usage

```
/worlds setItem [world]
```

## Permission

```
buildsystem.setitem
```


# setCreator

Set a world's creator.

## Usage

```
/worlds setCreator [world]
```

## Permission

```
buildsystem.setcreator
```


# setProject

Set a world's project.

## Usage

```
/worlds setProject [world]
```

## Permission

```
buildsystem.setproject
```


# setStatus

Set a world's status.

## Usage

```
/worlds setStatus [world]
```

## Permission

```
buildsystem.setstatus
```

#### Individual permission

Each status also has its own permission which can be used to restrict what status' the player can set:

<table><thead><tr><th width="180">Status</th><th width="463">Permission</th></tr></thead><tbody><tr><td>Not Started</td><td>buildsystem.setstatus.notstarted</td></tr><tr><td>In Progress</td><td>buildsystem.setstatus.inprogress</td></tr><tr><td>Almost Finished</td><td>buildsystem.setstatus.almostfinished</td></tr><tr><td>Finished</td><td>buildsystem.setstatus.finished</td></tr><tr><td>Archive</td><td>buildsystem.setstatus.archive</td></tr><tr><td>Hidden</td><td>buildsystem.setstatus.hidden</td></tr></tbody></table>

## Menu

![Changing the status of the world "Spawn" (Currently: In Progress)](/files/-M6nsJQJvVIcdj2IbwXp)


# setPermission

Set a world's permission.

## Usage

```
/worlds setPermission [world]
```

## Permission

```
buildsystem.setpermission
```


# setSpawn

Set a world's spawn point which a player is teleported to on entering the world.

## Usage

```
/worlds setSpawn
```

## Permission

```
buildsystem.setspawn
```


# tp

Teleport to another world.

## Usage

```
/worlds tp <world>
```

## Permission

```
buildsystem.worldtp
```


# unimport

Remove a world from the navigator and worlds.yml

{% hint style="warning" %}
Unimporting a world does **NOT** delete the worlds directory!
{% endhint %}

## Usage

```
/worlds unimport [world]
```

## Permission

```
buildsystem.unimport
```


# Placeholders

Some placeholders are part of the plugin, others require PlaceholderAPI

## Table of Contents

1. [Integrated Placeholders](#integrated-placeholders)
2. [PlaceholderAPI Placeholders](#placeholderapi-placeholders)
   1. [Settings Placeholders](#settings-placeholders)
   2. [World Placeholders](#world-placeholders)

## Integrated Placeholders

Integrated placeholders are placeholders that come included with the plugin and do not require any external dependancies. They can be used in `messages.yml`.

{% hint style="info" %}
The default layout for all placeholder part of the plugin itself is **%\<value>%**. However, these placeholders cannot be used in all messages found in `messages.yml`. \
The message must already **contain the placeholder by default** or be the `scoreboard` or `world_item_lore`&#x20;
{% endhint %}

#### World builders

> Returns the list of builders in the world.

{% hint style="warning" %}
Not available for the `scoreboard`
{% endhint %}

```
%builders%
```

#### World creator

> Returns the world's creator.

```
%creator%
```

#### World creation date

> Returns the world's creation date.

```
%creation%
```

#### World permission

> Returns the permission needed for the world.

```
%permission%
```

#### World project

> Returns the world's project.

```
%project%
```

#### World status

> Returns the world's status (e.g. In Progress, Archive, etc.).

```
%status%
```

#### World name

> Returns the name of the world.

```
%world%
```

## PlaceholderAPI Placeholders

There are two main types of placeholders that are provided to the PlaceholderAPI:

1. Settings Placeholders
2. World Placeholders

The difference between both can be found out in the following.

### Settings Placeholders

{% hint style="info" %}
The default layout for a settings placeholder is **%buildsystem\_settings\_\<settings>%**

For more information on each setting, look [here](/v2/commands/settings#settings).
{% endhint %}

#### Navigator Type

```
%buildsystem_settings_navigatortype%
```

#### Glass Color

```
%buildsystem_settings_glasscolor%
```

#### World Sort

```
%buildsystem_settings_worldsort%
```

#### Clear Inventory

```
%buildsystem_settings_clearinventory%
```

#### Disable Interact

```
%buildsystem_settings_disableinteract%
```

#### Hide Players

```
%buildsystem_settings_hideplayers%
```

#### Instant Place Signs

```
%buildsystem_settings_instantplacesigns%
```

#### Keep Navigator

```
%buildsystem_settings_keepnavigator%
```

#### Night Vision

```
%buildsystem_settings_nightvision%
```

#### NoClip

```
%buildsystem_settings_noclip%
```

#### Place Plants

```
%buildsystem_settings_placeplants%
```

#### Scoreboard

```
%buildsystem_settings_scoreboard%
```

#### Slab Breaking

```
%buildsystem_settings_slabbreaking%
```

#### Spawn Teleport

```
%buildsystem_settings_spawnteleport%
```

#### Open (Trap-)Doors

```
%buildsystem_settings_opentrapdoors%
```

### World Placeholders

{% hint style="info" %}
The default layout for a world placeholder is **%buildsystem\_\<value>%**.&#x20;

If a world is not specified by using the format  **%buildsystem\_\<value>\_\<world>%** then the world the player is currently in will be used.
{% endhint %}

#### Block breaking

> Returns whether or not blocks can be broken in the world.

```
%buildsystem_blockbreaking%
```

#### Block placement

> Returns whether or not blocks can be placed in the world.

```
%buildsystem_blockplacement%
```

#### World builders

> Returns the list of builders in the world.

```
%buildsystem_builders%
```

#### Builders enabled in world

> Returns whether or not the builders feature is enabled in the world.

```
%buildsystem_buildersenabled%
```

#### World creation date

> Returns the world's creation date.

```
%buildsystem_creation%
```

#### World creator

> Returns the world's creator.

```
%buildsystem_creator%
```

#### World creator ID

> Returns the UUID of the world's creator.

```
%buildsystem_creatorid%
```

#### Explosions

> Returns whether or not explosions are enabeld in the world.

```
%buildsystem_explosions%
```

#### World loaded

> Returns whether or not the world is loaded.

```
%buildsystem_loaded%
```

#### World material

> Returns the world's material which is shown in the navigator.

```
%buildsystem_material%
```

#### MobAI

> Returns whether or not mobs have an AI in the world.

```
%buildsystem_mobai%
```

#### World permission

> Returns the permission needed for the world.

```
%buildsystem_permission%
```

#### World visibility

> Returns the world's visibility (private or public).

```
%buildsystem_private%
```

#### World project

> Returns the world's project.

```
%buildsystem_project%
```

#### World physics

> Returns whether or not physics are enabled in the world.

```
%buildsystem_physics%
```

#### World spawn

> Returns the world's spawn.

```
%buildsystem_spawn%
```

#### World status

> Returns the world's status (e.g. In Progress, Archive, etc.).

```
%buildsystem_status%
```

#### World type

> Returns the world's type (e.g. Normal, Flat, Nether, etc.).

```
%buildsystem_type%
```

#### World name

> Returns the name of the world.

```
%buildsystem_world%
```


# Changelog

## v2.27.1 - 26.05.2025

{% tabs %}
{% tab title="Fixed" %}
Fixed `java.lang.ClassCastException` when sending title to player that a world is loading
{% endtab %}
{% endtabs %}

## v2.27.0 - 26.05.2025

{% tabs %}
{% tab title="Added" %}

* Add support for Minecraft 1.21.5
* Add individual permissions for each gamemode
  {% endtab %}
  {% endtabs %}

## v2.26.0 - 16.01.2025

{% tabs %}
{% tab title="Added" %}

* Add support for Minecraft 1.21.3 & 1.21.4
* Simple Axiom Support
* Add permissions to `/buildsystem`, `/worlds help` and `/worlds item`
* Add bypass permissions for viewing/joining worlds
  {% endtab %}

{% tab title="Changed" %}

* Reload `messages.yml` file when using `/config reload`
  {% endtab %}

{% tab title="Fixed" %}

* Fix UUID fetch bug in offline server
* Add permission check when navigating from `/worlds builders` to the world editor
  {% endtab %}
  {% endtabs %}

## v2.25.2 - 30.09.2024

{% tabs %}
{% tab title="Added" %}
Added the option to disable the adventure game mode on archived worlds
{% endtab %}

{% tab title="Fixed" %}
Removed fall damage cancellation
{% endtab %}
{% endtabs %}

## v2.25.1 - 08.07.2024

{% tabs %}
{% tab title="Fixed" %}
Fixed `IncompatibleClassChangeError`
{% endtab %}
{% endtabs %}

## v2.25.0 - 06.07.2024

{% tabs %}
{% tab title="Added" %}

* Add support for Minecraft 1.21
* Improve skull performance in menus
* Added world type to the import command
* Allow builders to be added and removed via command
  {% endtab %}

{% tab title="Fixed" %}

* Fixed incorrectly implemented bypass logic
* Don't allow world to be renamed if other world with new name already exists
* World was not saved before chunks are unloaded
* Fixed NPE when using filters
  {% endtab %}
  {% endtabs %}

## v2.24.4 - 13.12.2023

{% tabs %}
{% tab title="Added" %}

* Added support for Minecraft 1.20.4
  {% endtab %}

{% tab title="Fixed" %}

* Fixed message error in world editor
  {% endtab %}
  {% endtabs %}

## v2.24.3 - 01.12.2023

{% tabs %}
{% tab title="Changed" %}

* Worlds are now unloaded by default; **If you do not have this setting activated, I suggest you do so**
* Add permission to setting individual status states (`/worlds setStatus`): <https://buildsystem.eintosti.de/worlds/setstatus#individual-permission>
* Improve player teleportation: Player is now teleported up when `VOID` damage is received
* You can now use PlaceholderAPI placeholders in messages
* The scoreboard is now updated scoreboard asynchronously
  {% endtab %}

{% tab title="Fixed" %}

* Worlds which are blacklisted from being unloaded will now load when the server starts
* The "import successful" message will only be sent if the import actually finished
* Added missing plants to the "Place Plants" setting
  {% endtab %}
  {% endtabs %}

## v2.24.2 - 04.10.2023

{% tabs %}
{% tab title="Added" %}

* **Added 1.20.2 support**
  {% endtab %}

{% tab title="Fixed" %}

* Few bug fixes
  {% endtab %}
  {% endtabs %}

## v2.24.1 - 26.06.2023

{% tabs %}
{% tab title="Added" %}

* **Added 1.20.1 support**
  {% endtab %}
  {% endtabs %}

## v2.24.0 - 10.06.2023

{% tabs %}
{% tab title="Added" %}

* **Added 1.20 support**<br>
* **Added ability to filter words in navigator**
  * New slot in the navigator
  * Toggle through multiple settings: "*none*", "*starts with*", "*contains*" and "*matches*"<br>
* **Allow admins to specify further illegal characters in a world's name**
  * New config option: `invalid-characters`
  * If a character in the world's name matches the specified regex, it is removed<br>
* **New placeholders**
  * `%buildsystem_lastedited%`
  * `%buildsystem_lastloaded%`
  * `%buildsystem_lastunloaded%`
    {% endtab %}
    {% endtabs %}

## v2.23.1 - 07.05.2023

{% tabs %}
{% tab title="Fixed" %}

* Fixed worlds being not imported correctly
* Scoreboard lines longer than 30 chars are now trimmed in versions <1.13
* Fixed bypass of world version check when importing worlds (`-DPaper.ignoreWorldDataVersion`)
  {% endtab %}

{% tab title="Improved" %}

* Added `-c <creator>` argument to `/worlds import` command, to specify which player should be the creator of the imported world
* Removed `creator-is-builder` config option, as creator should always be builder
* Removed `world-edit-wand` config option, as WorldEdit wand is now read from the (FastAsync)WorldEdit config
  {% endtab %}
  {% endtabs %}

## v2.23.0 - 23.03.2023

{% tabs %}
{% tab title="Added" %}

* **Added 1.19.4 support**
* **Added ability to not send messages**
  * Blank messages are no longer sent to the player
  * Example: A command is to be hidden from `/buildsystem` \
    -> Set `buildsystem_XXX: ""` in the `messages.yml` file
    {% endtab %}

{% tab title="Changed" %}

* **Multi-page `/buildsystem` command**
  * The `/buildsystem [page]` command now takes a page argument, as it no longer displays all commands at once
    {% endtab %}

{% tab title="Fixed" %}

* Players *not* in build-mode could not interact with other inventories when `move-items` was disabled
  {% endtab %}
  {% endtabs %}

## v2.22.3 - 04.03.2023

{% tabs %}
{% tab title="Fixed" %}

* **Fix duplicate message key**
  * The key "`worlds_import_newer_version`" was supposed to be "`worlds_importall_newer_version`"
* **Allow messages to contain commas**
  * Previously, when using commas (,) in multi-line messages would result in the message being split
    {% endtab %}
    {% endtabs %}

## v2.22.2 - 20.12.2022

{% tabs %}
{% tab title="Changed" %}
Compress world `level.dat` with GZIP when writing server version
{% endtab %}
{% endtabs %}

## v2.22.1 - 16.12.2022

{% tabs %}
{% tab title="Fixed" %}
Fixes a bug that would stop worlds from being loaded on servers using Spigot 1.8
{% endtab %}
{% endtabs %}

## v2.22.0 - 16.12.2022

{% tabs %}
{% tab title="Added" %}

* **1.19.3 support**
* **Check world `DataVersion` before loading**
  * Stops newer worlds from being loaded in older versions
  * Is ignored when `Paper.ignoreWorldDataVersion` flag is enabled
* **Add `move-items` config option**
  * Stops a player from moving/taking items to/from other inventories when in build-mode
  * Also changed the default of `drop-items` to true
    {% endtab %}

{% tab title="Fixed" %}

* Player would receive navigator even if setting was disabled
* Instant Place Signs didn't support `mangrove_sign`
  {% endtab %}
  {% endtabs %}

## v2.21.2 - 05.11.2022

{% tabs %}
{% tab title="Added" %}

* **Improvements to /build**
  * Add permission for when setting other players into build-mode: `buildsystem.build.others`
  * Reset player inventory when leaving build-mode
  * New config option for disabling item drops when in build-mode (default: false)
  * Add LuckPerms context for when players are in build-mode (`build-mode`)
    {% endtab %}

{% tab title="Fixed" %}

* Custom blocks were not being placed when disable interactions is enabled
  {% endtab %}
  {% endtabs %}

## v2.21.1 - 05.11.2022

{% tabs %}
{% tab title="Fixed" %}
Fix world icon not displaying correctly
{% endtab %}
{% endtabs %}

## v2.21.0 - 05.11.2022

{% tabs %}
{% tab title="Added" %}

* **Utilize PaperLib**
  * If the server is running Paper, players will be teleported asynchronously&#x20;
* **Improved** **`/worlds` command**
  * Up till now, whenever a command such as `/worlds edit <world>` was run, the world always had to be specified
  * Now, whenever a world is not specified (`/worlds edit`) the player's current world is used
* **Improvements to `/blocks`**
  * Added invisible item frame to servers running 1.17
  * Improved rotation of orientable blocks
    {% endtab %}

{% tab title="Fixed" %}

* **Allow players to rejoin server in unloaded worlds**
  * If a player has spawn teleportation deactivated and world unloading has been enabled, the world the player was previously in is now loaded automatically
    {% endtab %}
    {% endtabs %}

## v2.20.6 - 10.10.2022

{% tabs %}
{% tab title="Added" %}

* **Add permissions to each world type creation**&#x20;
  * Allows server owners to restrict which world types can be created
* **Allow admins to bypass a world's permission**
  * Use the admin permission: `buildsystem.admin`
    {% endtab %}
    {% endtabs %}

## v2.20.5 - 15.08.2022

{% tabs %}
{% tab title="Fixed" %}

* Fix `NoSuchMethodError` thrown in legacy versions
  {% endtab %}
  {% endtabs %}

## v2.20.4 - 02.08.2022

{% tabs %}
{% tab title="Fixed" %}

* Don't use `StringUtils` from `apache commons lang3`
  {% endtab %}

{% tab title="Changed" %}

* Switch from Spigot 1.19 to 1.19.1 as API version
  {% endtab %}
  {% endtabs %}

## v2.20.3 - 04.07.2022

{% tabs %}
{% tab title="Fixed" %}

* Fix "Double Stone Slab" block being placed incorrectly (Minecraft 1.14+)
* Show archived private worlds in world archive
  {% endtab %}
  {% endtabs %}

## v2.20.2 - 03.07.2022

{% tabs %}
{% tab title="Added" %}

* Added piston head block to `/blocks`
  {% endtab %}

{% tab title="Fixed" %}

* When editing gamerules in a world (`/worlds edit`), the next page button should now work as intended in versions <1.13
  {% endtab %}
  {% endtabs %}

## v2.20.1 - 15-06.2022

{% tabs %}
{% tab title="Fixed" %}

* Update notifier displayed incorrect version
  {% endtab %}
  {% endtabs %}

## v2.20 - 15.06.2022

{% tabs %}
{% tab title="Added" %}

* Support for Minecraft 1.19
  {% endtab %}

{% tab title="Fixed" %}

* Don't import a world twice if already existent (`/worlds importAll`)
  {% endtab %}
  {% endtabs %}

## v2.19 - 27.05.2022

## v2.18.9 - 21.04.2022

{% tabs %}
{% tab title="Fixed" %}

* Correctly allow multiple private worlds to be created
  {% endtab %}
  {% endtabs %}

## v2.18.8 - 21.04.2022

{% tabs %}
{% tab title="Changed" %}

* From now on, only the creator of a world can delete it (or players with the admin permission: `buildsystem.admin`)
* Players are no longer limited to one private world. Use the permission `buildsystem.create.private.<amount>` to set the maximum amount a player can create
  {% endtab %}

{% tab title="Fixed" %}

* Fixes a bug where creators could not add builders to their world with `/worlds addBuilder`
  {% endtab %}
  {% endtabs %}

## v2.18.7 - 12.04.2022

{% tabs %}
{% tab title="Changed" %}

* **Navigator permission changes**
  * Changes the permission needed to open the navigator to `buildsystem.navigator`
  * Adds a permission which is needed to receive the navigator item: `buildsystem.navigator.item`
    {% endtab %}

{% tab title="Fixed" %}

* **Fixed bugs with the modern navigator**
  * Item used to close navigator could be dropped
  * Players were able to modify other player's navigator leaving them unusable
* **Minor optimisation**
  * Reset unload task after world switch (or quitting) to ensure correct unload time
    {% endtab %}
    {% endtabs %}

## v2.18.6 - 30.03.2022

{% tabs %}
{% tab title="Changed" %}

* **Changes to world difficulty**
  * Allow a world's difficulty to be changed in the `/worlds edit <world>` menu
  * Correctly retrieve the default world difficultly from the config
    {% endtab %}

{% tab title="Fixed" %}

* **Allow unloaded worlds to be renamed**
  * Previously, a world had to be imported in order for it to be renamed
    {% endtab %}
    {% endtabs %}

## v2.18.5 - 29.03.2022

{% tabs %}
{% tab title="Fixed" %}

* **Fix incorrect chunk generator when loading worlds**
  * Worlds that were unloaded and then loaded again were using the standard `WorldCreator`, not the custom generators they should be
    {% endtab %}
    {% endtabs %}

## v2.18.4 - 21.03.2022

{% tabs %}
{% tab title="Fixed" %}

* Fixed an error in legacy versions (< 1.13) where normal blocks could not be broken when slab breaking was enabled
  {% endtab %}
  {% endtabs %}

## v2.18.3 - 20.03.2022

{% tabs %}
{% tab title="Fixed" %}

* Some listeners were registered twice
* `Instant Place Signs` would not work with `Material#DARK_OAK_SIGN`
* Unloaded worlds were not being deleted correctly
* `/settings` would throw a NPE when using Minecraft versions < 1.13
  {% endtab %}
  {% endtabs %}

## v2.18.2 - 11.03.2022

{% tabs %}
{% tab title="Added" %}

* **Added new config option: `teleport-after-creation` (default: `true`)**
  * When enabled, the player is teleported a world after it is created instead of having to enter through the navigator
    {% endtab %}

{% tab title="Fixed" %}

* Chunks in void worlds were not generated correctly after the server restarts
  {% endtab %}
  {% endtabs %}

## v2.18.1 - 06.03.2022

{% tabs %}
{% tab title="Added" %}

* **Support for Minecraft 1.18.2**
  {% endtab %}

{% tab title="Fixed" %}

* Sending commands that use `CommandSender#spigot` throws `NoSuchMethodError`
* `NullPointerException` while opening GameRule inventory
* Navigator does not stay in inventory when „Keep Navigator“ is enabled
  {% endtab %}
  {% endtabs %}

## v2.18 - 15.02.2022

**Full changelog:** <https://github.com/einTosti/BuildSystem/releases/tag/2.18>

{% tabs %}
{% tab title="Added" %}

* Support for RGB messages
* Implement `buildsystem:role` Context for LuckPerms
* Add limits to the amount of worlds allowed to be created
  {% endtab %}
  {% endtabs %}

## v2.17.2 - 16.01.2022

{% tabs %}
{% tab title="Added" %}

* **Expand PlaceholderAPI expansion**
  * Add placeholders for player-settings
  * Full list of (newly introduced) placeholders can be found here: <https://buildsystem.eintosti.com/placeholders#settings-placeholders>
    {% endtab %}

{% tab title="Fixed" %}

* Worlds can no longer have a blank name when only consisting of special characters
* Stop items from trying to be placed with "Disable Interactions" enabled
* Stop WorldEdit items from being able to break blocks when they shouldn't
  {% endtab %}
  {% endtabs %}

## v2.17.1 - 26.12.2021

{% tabs %}
{% tab title="Fixed" %}

* Fix WorldEdit wand breaking blocks
  {% endtab %}
  {% endtabs %}

## v2.17 - 09.12.2021

{% tabs %}
{% tab title="Added" %}

* Support for Minecraft 1.18
  {% endtab %}

{% tab title="Fixed" %}

* Bugs with lower versions. If any still occur, please report them on [GitHub](https://github.com/einTosti/BuildSystem/issues)
  {% endtab %}
  {% endtabs %}

## v2.16.6 - 26.11.2021

{% tabs %}
{% tab title="Fixed" %}

* NoClassDefFoundError with `/worlds help`
  {% endtab %}
  {% endtabs %}

## v2.16.5 - 25.11.2021

{% tabs %}
{% tab title="Added" %}

* Previously, only WorldEdit commands were blocked. Now the usage of brushes etc should also be blocked
  {% endtab %}

{% tab title="Changed" %}

* Bug fixes
* Refactored code
  {% endtab %}
  {% endtabs %}

## v2.16.4 - 21.09.2021

{% tabs %}
{% tab title="Added" %}

* Added ability to unimport worlds with `/worlds unimport` (Perm: `buildsystem.unimport`)
* Added `/w` as an alias for `/worlds`
  {% endtab %}

{% tab title="Fixed" %}

* Fixed bug where settings were not toggling correctly
  {% endtab %}
  {% endtabs %}

## v2.16.3 - 01.09.2021

{% tabs %}
{% tab title="Added" %}

* Added option to add worlds to a blacklist which ensures that they won't be unloaded (**config.yml**: `world.unload.blacklisted-worlds`)
* Added option to keep the "Navigator" on inventory clear (`/settings`)
  {% endtab %}
  {% endtabs %}

## v2.16.2 - 23.08.2021

{% tabs %}
{% tab title="Added" %}

* Added command to remove a world's custom spawn (**/worlds removeSpawn**)
* Added option to set a world's default difficulty to the config (**world.default.difficulty**)
  {% endtab %}

{% tab title="Changed" %}

* Improved the blockage of WorldEdit commands for non-builders
* Improved **/worlds** tab-complete
* Improved **/worlds help** command
* **/config** can now be used from the console
  {% endtab %}
  {% endtabs %}

## v2.16.1 - 02.08.2021

{% tabs %}
{% tab title="Added" %}

* Adds option to not give navigator on join ("settings.navigator.give-item-on-join")
  {% endtab %}
  {% endtabs %}

## v2.16 - 26.07.2021

{% tabs %}
{% tab title="Added" %}

* **Custom world generators**
  * When creating a new world, a new icon can be found in the "World Create GUI": **Generators**
  * In order to create a world with a custom world generator, the generator plugin must be present in the "plugins" folder (and the plugins must be loaded!)
  * Then after having selected "Generators" as a world type, enter the world name and afterwards the name of the World Generator and voilà!
    {% endtab %}

{% tab title="Fixed" %}

* Duplicate key in `messages.yml` bug
  {% endtab %}
  {% endtabs %}

## v2.15 - 22.07.2021

{% tabs %}
{% tab title="Added" %}

* Support for 1.17(.1)
  {% endtab %}

{% tab title="Changed" %}

* Replaced AnvilGUI with chat input
  {% endtab %}
  {% endtabs %}

## v2.14.6 - 23.04.2021

{% tabs %}
{% tab title="Added" %}

* Standard settings for newly created worlds
  * e.g. physics, explosions, etc.
    {% endtab %}

{% tab title="Fixed" %}

* Commands should no longer clash with other plugins
* World names in the "navigator" (!) can now include symbols
* Skulls in the "private world navigator" should consume fewer resources & load faster
* You can now place plants in flower pots while "Place Plants" is activated
  {% endtab %}
  {% endtabs %}

## v2.14.5 - 13.01.2021

{% tabs %}
{% tab title="Fixed" %}

* World names in /worlds can now have other characters that the world name itself​
  {% endtab %}
  {% endtabs %}

## v2.14.4 - 03.11.2020

{% tabs %}
{% tab title="Added" %}

* Support for Minecraft 1.16.4
  {% endtab %}
  {% endtabs %}

## v2.14.3 - 20.09.2020

{% tabs %}
{% tab title="Added" %}

* Added the ability to write with colors in the chat & on signs » Chat: buildsystem.color.chat » Signs: buildsystem.color.sign
  {% endtab %}

{% tab title="Changed" %}

* **Restructured config**
  * Will have to be deleted after updating!
* **Improved world import**
  * The world which is supposed to be imported will now be checked for invalid characters
  * /worlds import can now be tab completed&#x20;
  * /worlds importAll now has a delay between each world (can be configured in the config, default 30s)
* **Improved NoClip**
  * The players previous gamemode is now saved
    {% endtab %}
    {% endtabs %}

## v2.14.2 - 18.08.2020

## v2.14.1 - 15.08.2020

{% tabs %}
{% tab title="Fixed" %}

* The navigator should now work as expected in 1.16+
* Fixed `back_usage` message error (only for newly generated messages.yml files)​
  {% endtab %}
  {% endtabs %}

## v2.14 - 14.08.2020

## v2.13.3 - 09.06.2020

{% tabs %}
{% tab title="Added" %}

* /spawn \[set/remove] & /config \<reload> can now be tab-completed
  {% endtab %}

{% tab title="Fixed" %}

* The spawn (/spawn) can no longer be set in a world which is not imported
  {% endtab %}
  {% endtabs %}

## v2.13.2 - 02.06.2020

## v2.13.1 - 23.05.2020

{% tabs %}
{% tab title="Added" %}

* Added sounds to the "World Editor" and the "Builders" GUI
  {% endtab %}

{% tab title="Changed" %}

* **Improvement to the "World Editor"**
  * After changing a world's permission or project via the "World Editor" you are now brought back to the GUI instead of the GUI just closing
  * Improved messages (information about world status, permission & project)
    * In order to see these changed messages.yml must be deleted (or at least all messages with " "worldeditor\_" in them)
      {% endtab %}
      {% endtabs %}

## v2.13 - 22.05.2020

{% tabs %}
{% tab title="Added" %}

* **New setting: Place plants**
  * When enabled, plants can be placed n all kinds of blocks
* **World editor**
  * Easily customise worlds with a GUI » Can be opened with /worlds edit  or by right-clicking a word in the world navigator
  * World must be loaded to use the editor!
  * Features:
    * Toggle block breaking/placement/physics
    * Alter the time of day
    * Toggle explosions
    * Butcher all mobs in a world
    * Manage builders (more to that later)
    * Manage gamerules
    * Toggle world visibility (if a world is shown in "Private Worlds")
    * Toggle MobAIs
    * Change a world's status/project/permission
* **Introducing builders**
  * When a world has builders enabled (private worlds by default, public worlds after being enabled), only these players can place and destroy blocks
  * A list of a world's builder can be seen in the world editor or with /worlds builders  (Permission: worlds.builders)&#x20;
  * Add a builder in the world editor or with /worlds addBuilder  (Permission: worlds.addbuilder)
  * Remove a builder in the world editor or with /worlds removeBuilder  (Permission: worlds.removebuilder)
  * Only the world creator can add or remove builders! (Set the creator with /worlds setCreator )&#x20;
  * Can be disabled in the config (block-world-edit-non-builder)
* **Admin bypass permission**
  * Permission: buildsystem.admin
  * Bypasses all restrictions such as not being the creator of a world, archived worlds, disabled block breaking/placement
* **New /worlds info placeholders**
  * Added %builders\_enabled%, %block\_breaking% & %block\_placement%
  * Shows whether or not a certain world has the builder feature enabled and whether or not blocks can be placed/broken
    {% endtab %}
    {% endtabs %}

## v2.12.2 - 17.05.2020

{% tabs %}
{% tab title="Fixed" %}

* Powered Redstone Lamps are now lit, even when physics are disabled
* "Disabled Interact" should again work as expected
  {% endtab %}
  {% endtabs %}

## v2.12.1 - 10.05.2020

{% tabs %}
{% tab title="Added" %}

* **Update checker**
  * Automatically checks for updates when the server starts/reloads
  * Players who have the permision "buildsystem.update" (default: op) are also notified of join
  * Can be disabled in the config (update-checker)
* **Additions to /speed**
  * /s as an alias for /speed
  * /speed (/s) can now be tab-completed
    {% endtab %}

{% tab title="Fixed" %}

* When placing the "Powered Redstone Lamp", the block above would lose its colour&#x20;
* Private world would disappear when set to archive (now shown in the "World Archive")
* Now all block interactions should be cancelled when "Disable Interactions" is enabled
  {% endtab %}
  {% endtabs %}

## v2.12 - 07.05.2020

{% tabs %}
{% tab title="Added" %}

* **More settings**
  * Instant Place Signs: Allows for signs to be placed without the menu opening
  * Player hider: Hide/show all players&#x20;
* **Custom import generators**
  * When importing worlds you can now choose from 3 generators: NORMAL, FLAT, VOID (default)
  * /world import  \[-g ]
* **Implemented bStats**
  * Gives me information on how the plugin is used, so I can improve it more
* **Toggle join/quit messages**
  * Option found in the config: join-quit-messages (default: true)
* **Toggle block in void worlds**
  * You can now toggle whether or not a gold block is placed in a void world when it is created
  * Option found in the config: void-block (default: true)
    {% endtab %}

{% tab title="Changed" %}

* **Improved navigator**
  * Now contains settings (/settings command will still continue to exist)
* **"Slab Breaking"**&#x20;
  * Smooth Stone, Smooth Sandstone & Smooth Red Sandstone blocks (found in /blocks) are now fully broken when "Slab Breaking" is enabled
    {% endtab %}
    {% endtabs %}

## v2.11.1 - 05.05.2020

{% tabs %}
{% tab title="Fixed" %}

* Fixed a bug where the second page of the "World Archive" couldn't be opened
  {% endtab %}
  {% endtabs %}

## v2.11 - 04.05.2020

{% tabs %}
{% tab title="Added" %}

* **/worlds setStatus GUI can now be customized**
  * Use /setup and proceed the same as with changing the other default item
    {% endtab %}

{% tab title="Changed" %}

* **Improved /worlds delete**
  * World deletion must now be confirmed (No more accidental deletes)
  * Therefore you can now tab-complete /worlds delete
* **Redesigned "World Create GUI"**
  * Check it out for yourself
    {% endtab %}
    {% endtabs %}

## v2.10 - 23.04.2020

{% tabs %}
{% tab title="Added" %}

* **Added the option the clear a player's inventory on join**
  * Can be toggled with /settings (default: disabled)
* **Worlds can now be unloaded**
  * After X amount of time, a world is unloaded if a player hasn't entered the world since then (default is 1h)
  * First enable the option in the config (unload-worlds)
  * If you want to you can change the time until the world is unloaded (time-until-unload)
  * Then reload the server
* **Worlds can now be sorted in more ways**
  * Added "Z-A" and "oldest first"
* **The scoreboard can now be disabled in the config**
  {% endtab %}

{% tab title="Changed" %}

* Improved deletion of worlds
  {% endtab %}

{% tab title="Fixed" %}

* Blocks will now be coloured when "Disabled Interactions" is enabled
* Fixed some other small bugs
  {% endtab %}
  {% endtabs %}

## v2.9 - 04.04.2020

{% tabs %}
{% tab title="Added" %}

* **/setup** &#x20;
  * Changes the items which   &#x20;

    a) are shown in the GUI when you create a world   &#x20;

    b) are given to specific worlds by default (e.g.             Normal world is a log) &#x20;
  * Permission: buildsystem.setup
    {% endtab %}
    {% endtabs %}

## v2.8.1 - 25.03.2020

{% tabs %}
{% tab title="Fixed" %}

* Fixed a bug where worlds wouldn't load if they had a dot in their name
  {% endtab %}
  {% endtabs %}

## v2.8 - 21.03.2020

{% tabs %}
{% tab title="Added" %}

* **Spawn system**
  * Use /spawn set to set a spawn where all players will be teleported to (if they wish) when they join the server or use /spawn » Remove the spawn with /spawn remove
  * Permission needed: buildsystem.spawn
* **New settings**
  * There are now 2 new options in /settings&#x20;

    1\) Toggle block interactions:&#x20;

    * When block interactions are deactivated you can place blocks against certain blocks (e.g. furnace, crafting table, chest, etc.) without opening them
    * This function works best in Spigot 1.13+ because blocks won't rotate when place in versions below

    2\) Toggle spawn teleportation

    * If players don't want to be teleported to the spawn, they can disable this
* **World information**
  * /worlds info \[world] gives you information about a world
  * Permission: worlds.info
* **Fast enable physics**
  * /physics all quickly enables world physics in all worlds, as long as there isn't a world names "all"
    {% endtab %}

{% tab title="Fixed" %}

* Fixed a huge ton of bugs
  {% endtab %}
  {% endtabs %}

## v2.7 - 01.03.2020

{% tabs %}
{% tab title="Added" %}

* **More world information**&#x20;
  * Newly created world from now on store the world creator and creation date/time
    * World Creator: %creator%
    * Creation date/time: %date%
  * These new placeholders can be used in the scoreboard and in the world navigator lore
  * The world creator can be changed with /worlds setCreator
  * The date format can be changed in the config
* **Option to change how worlds are sorted in the navigator**
  * Choose between Alphabetically and Creation date
  * Can be changed with /settings
    {% endtab %}

{% tab title="Changed" %}

* **Updated mechanics**&#x20;
  * The config is now automatically reloaded when the server reloads&#x20;
  * You can now add unlimited lines to a lore in messages.yml
  * Changed other internal things
* **Improved private worlds**&#x20;
  * Private worlds are no longer just flat worlds
  * Now you can choose between all the "normal" worlds types (Normal, Flat, Void, Nether & End)
* **Other changes**&#x20;
  * Redesigned /settings GUI
  * The scoreboard and prefix are now stored in messages.yml, no longer in the config
    {% endtab %}
    {% endtabs %}

## v2.6.2 - 26.02.2020

{% tabs %}
{% tab title="Fixed" %}

* Fixed a bug where /worlds setStatus threw an error in Spigot versions <1.13
  {% endtab %}
  {% endtabs %}

## v2.6.1 - 23.01.2020

{% tabs %}
{% tab title="Fixed" %}

* Bug fix
  {% endtab %}
  {% endtabs %}

## v2.6 - 04.01.2020

{% tabs %}
{% tab title="Added" %}

* **Added "Nether" & "End" worlds**
  * To create such a world just click on the corresponding items when creating a world: End stone (End) and Netherrack (Nether)
    {% endtab %}
    {% endtabs %}

## v2.5.1 - 01.01.2020

{% tabs %}
{% tab title="Added" %}

* **Forgot to add the new commands to /buildsystem**\
  » Added /explosions and /noai
  {% endtab %}
  {% endtabs %}

## v2.5 - 30.12.2019

{% tabs %}
{% tab title="Added" %}

* **Disable entity AIs**&#x20;
  * Use /noai \[world] to disable entity AIs&#x20;
  * Permission: buildsystem.noai
* **Disable explosions**&#x20;
  * Use /explosions \[world] to disable explosions&#x20;
  * Permission: buildsystem.explosions
    {% endtab %}
    {% endtabs %}

## v2.4 - 15.12.2019

{% tabs %}
{% tab title="Added" %}

* **Added support for 1.13-1.15**
  * BuildSystem now support all versions from 1.8-1.15
  * It is not wise to load worlds from newer versions (e.g. 1.15) in older versions (e.g. 1.8)!
    {% endtab %}

{% tab title="Other" %}

* **Other bug fixes, changes and new features**
  * The list of everything that has changed is too long to put here, so you can find them out yourselves ;)
    {% endtab %}
    {% endtabs %}

## v2.3.3 - 18.11.2019

{% tabs %}
{% tab title="Added" %}

* **Added "Burning Furnace"**
  * Always lit furnace in /blocks​
    {% endtab %}

{% tab title="Fixed" %}

* Fixed a bug concerning custom spawns​
  {% endtab %}
  {% endtabs %}

## v2.3.2 - 16.11.2019

{% tabs %}
{% tab title="Fixed" %}

* Pitch and Yaw are no longer swapped in custom spawns
* Other smaller bug fixes​
  {% endtab %}
  {% endtabs %}

## v2.3.1 - 15.11.2019

{% tabs %}
{% tab title="Added" %}

* **More scoreboard placeholders**&#x20;
  * Added %permission% and %project% as variables that can be used in the scoreboard
    {% endtab %}

{% tab title="Changed" %}

* /config reload now refreshes the scoreboard instantly​
  {% endtab %}
  {% endtabs %}

## v2.3 - 14.11.2019

{% tabs %}
{% tab title="Added" %}

* **Custom Spawnpoints**
  * You can now set the spawnpoint of each world with /worlds setSpawn&#x20;
  * Permission: buildsystem.setspawn​
    {% endtab %}
    {% endtabs %}

## v2.2 - 03.11.2019

{% tabs %}
{% tab title="Added" %}

* **Recoded scoreboard**
  * Now uses packets, shouldn't flicker anymore
* **Added the option to disable vanish in archived worlds**
  * Can be toggled in the config \[Reload config with /config reload!]​
* **/skull \<ID> now gives you a skull with a custom ID**
  * Get ID from <http://textures.minecraft.net/texture/>\<ID>​
    {% endtab %}

{% tab title="Fixed" %}

* Removed bug where multiple scoreboard were shown at the same time​
* Blocks and armor stands can no longer be interacted with if they are in an archived world
  {% endtab %}
  {% endtabs %}

## v2.1.1 - 23.10.2019

{% tabs %}
{% tab title="Fixed" %}

* Fixed a (yes another) scoreboard bug​
  {% endtab %}
  {% endtabs %}

## v2.1 - 23.10.2019

{% tabs %}
{% tab title="Added" %}

* **Overview of all commands**
  * /buildsystem now gives you an overview of all commands
  * Only the commands of which you have the permission for are shown
    {% endtab %}

{% tab title="Changed" %}

* Fixed a bug with the scoreboard » Added a few messages I had forgotten​
  {% endtab %}
  {% endtabs %}

## v2.0 - 22.10.2019

{% tabs %}
{% tab title="Added" %}

* **Custom messages**
  * You now have the option to change all of the plugin messages&#x20;
  * Messages are found in the messages.yml file​
    {% endtab %}

{% tab title="Changed" %}

* Improved the 'new navigator': is now more responsive
* Fixed spellings mistakes
* Fixed some bugs
* Refactored lots of code
  {% endtab %}
  {% endtabs %}

## v1.8 - 10.10.2019

{% tabs %}
{% tab title="Added" %}

* **Added Scoreboard**
  * Text can be altered in the config
  * Can be enabled/disabled with /settings
    {% endtab %}
    {% endtabs %}

## v1.7.2 - 03.10.2019

{% tabs %}
{% tab title="Fixed" %}

* Fixed a bug where the player received the wrong block with /blocks​<br>
  {% endtab %}
  {% endtabs %}

## v1.7.1 - 28.09.2019

{% tabs %}
{% tab title="Added" %}

* **Added "Powered Redstone Lamp" block**
  * "Redstone Lamp" that always is lit
  * You can find the block in /blocks
    {% endtab %}
    {% endtabs %}

## v1.7 - 03.08.2019

{% tabs %}
{% tab title="Added" %}

* **Introducing: Templates**
  * Templates are a new and easy way to create worlds
  * Copy the template you want added into the game into the "templates" folder
  * Then when choosing to create a word you can choose between Predefined Worlds and Templates
    {% endtab %}
    {% endtabs %}

## v1.6.4 - 30.07.2019

{% tabs %}
{% tab title="Changed" %}

* Refactored some code
  {% endtab %}

{% tab title="Fixed" %}

* Fixed a bug where the default join/quit messages weren't displayed correctly (without colour)
  {% endtab %}
  {% endtabs %}

## v1.6.3 - 09.07.2019

{% tabs %}
{% tab title="Fixed" %}

* Fixed a bug when not having the "buildsystem.gui" permission
  {% endtab %}
  {% endtabs %}

## v1.6.2 - 24.03.2019

{% tabs %}
{% tab title="Added" %}

* **Added permission**
  * New permission: buildsystem.gui
  * Enabled by default
  * Permission needed to open the "Worlds-GUI"​
    {% endtab %}
    {% endtabs %}

## v1.6.1 - 26.02.2019

{% tabs %}
{% tab title="Changed" %}

* **Small change**
  * Added /worlds setStatus \<world> to /worlds help
* **Refactored code**
  {% endtab %}

{% tab title="Fixed" %}

* Fixed NoClip
  {% endtab %}
  {% endtabs %}

## v1.6 - 14.10.2018

{% tabs %}
{% tab title="Added" %}

* **Added two new blocks**
  * "Nether Portal"
  * "End Portal"​
    {% endtab %}

{% tab title="Changed" %}

* When renaming a world, it's previous name is already in the anvil
* Refactored some code​
  {% endtab %}

{% tab title="Fixed" %}

* Fixed a bug when renaming worlds​
  {% endtab %}
  {% endtabs %}

## v1.5.1 - 06.10.2018

{% tabs %}
{% tab title="Changed" %}

* **Improved /worlds "Help-Message"**
  * Clickable messages: Auto suggests command
  * Hoverable messages: Shows the permission needed to run the command
    {% endtab %}
    {% endtabs %}

## v1.5 - 01.10.2018

{% tabs %}
{% tab title="Added" %}

* **Rename worlds**
  * Use /worlds rename \<world> to rename a world
  * Permission: buildsystem.rename​<br>
    {% endtab %}

{% tab title="Changed" %}

* Skulls in the private worlds GUI now have the texture of their player
* Small changes to creating worlds, changing permissions & changing statuses
  {% endtab %}
  {% endtabs %}

## v1.4 - 25.09.2018

{% tabs %}
{% tab title="Added" %}

* **Custom colours**
  * In /settings, each player now has the opportunity to change the glass colour in all of the GUIs
    {% endtab %}
    {% endtabs %}

## v1.3.1 - 21.09.2018

{% tabs %}
{% tab title="Fixed" %}

* Fixed a incorrectly named sub-command (/worlds setProject)​
  {% endtab %}
  {% endtabs %}

## v1.3 - 20.09.2018

{% tabs %}
{% tab title="Added" %}

* Added more blocks to /blocks
  {% endtab %}
  {% endtabs %}

## v1.2 - 13.09.2018

{% tabs %}
{% tab title="Added" %}

* Added tab complete to /day and /night​
  {% endtab %}

{% tab title="Changed" %}

* Recoded the current tab completes
  {% endtab %}
  {% endtabs %}

## v1.1 - 11.09.2018

{% tabs %}
{% tab title="Changed" %}

* **Improved physics command**&#x20;
  * You can now use /physics to toggle block physics in other worlds (/physics \[world])
  * You can now tab complete worlds
* **Improved world switching**
  * You can now only enter a world if you have it's permission
  * But players can always join the default world or worlds with their permission set to "-"​
    {% endtab %}
    {% endtabs %}

## v1.0.2 - 10.09.2018

{% tabs %}
{% tab title="Changed" %}

* **Change to finished & archived worlds**
  * When entering worlds that have been set to have the archive status, the player will now not be able to build or break blocks in the world (was previously finished)
  * Worlds that have been set to have the finished status, act like "normal" worlds again
    {% endtab %}
    {% endtabs %}

## v1.0.1 - 09.09.2018

{% tabs %}
{% tab title="Changed" %}

* **Improved the creation of worlds**
* **When a world is created, the standard time is now 6000 ticks**
* **Refactored code**
  * Changed the way the config are created
  * Cleaned up some code​
    {% endtab %}

{% tab title="Fixed" %}

* Fixed errors when interacting with worlds not registered by the plugin
* Fixed errors when creating worlds​
  {% endtab %}
  {% endtabs %}

## v1.0 - 09.09.2018

{% hint style="info" %}
Inital release
{% endhint %}


# LuckPerms Context

When LuckPerms is installed, BuildSystem adds extra contexts

## Contexts

<table><thead><tr><th width="167">Context Key</th><th width="397">Description</th><th>Values</th></tr></thead><tbody><tr><td><code>build-mode</code></td><td>Whether the player is in build-mode (<code>/build</code>)</td><td><code>true</code>, <code>false</code></td></tr><tr><td><code>role</code></td><td>The player's role in the current world</td><td><code>creator</code>, <code>builder</code>, <code>guest</code></td></tr></tbody></table>

## Example

> You want players who are guests in a world (neither *creator* nor *builder*) to remain in the gamemode they currently are in.

Now you can use the following context: `/lp user <user> permission set buildsystem.gamemode false buildsystem:role=guest`


# BuildSystem

Introduction

![](/files/-M8lVnhw9VUo76-B3_-u)

Welcome to my site all about my plugin, **BuildSystem**.

**BuildSystem** is a simple but powerful - as the name already says - system for builders, with lots of great features for everyday usage.\
Manage worlds in the worlds navigator, change their permission, projects, and status with ease.\
And not to forget: let each player decide which settings they think are best for them and now the building can start!

It was first released on **September 9, 2018** on *SpigotMC.org*. Since then, I have invested **hundreds of hours** into its programming and have released **over 100 updates.** \
Despite the fact that I've since started studying and working, I'm aiming to keep on publishing more in the future!

If you are a **new** user, I suggest you read the following in order to learn the basics of the plugin:

{% content-ref url="/pages/-M6nkos2R8ajeg7sLi8L" %}
[Installing BuildSystem](/getting-started/installing-buildsystem)
{% endcontent-ref %}


# Getting started

Here you can find a list of useful pages

## Config

{% content-ref url="/pages/pvOQ20mwFIBFN7Tdh4dD" %}
[Config](/getting-started/config)
{% endcontent-ref %}

## Tutorials

{% content-ref url="/pages/-M6nkos2R8ajeg7sLi8L" %}
[Installing BuildSystem](/getting-started/installing-buildsystem)
{% endcontent-ref %}

{% content-ref url="/pages/0d1WVXma7zFQEtg6EWjb" %}
[Creating a World](/getting-started/creating-a-world)
{% endcontent-ref %}

{% content-ref url="/pages/qQLV46IkOjMcx0WWgojJ" %}
[World Backups](/getting-started/world-backups)
{% endcontent-ref %}

{% content-ref url="/pages/bNMzge9rJfZMcKkbHUbz" %}
[Creating a Folder](/getting-started/creating-a-folder)
{% endcontent-ref %}

## Common Issues

{% content-ref url="/pages/6k7Ifuu34BynhPkwAiFk" %}
[Common Issues](/getting-started/common-issues)
{% endcontent-ref %}

## Downloads

* SpigotMC: <https://www.spigotmc.org/resources/buildsystem-1-8-1-15.60441/>&#x20;
* Chunkfactory: <https://chunkfactory.com/product/buildsystem-1-8-1-15.1049/>&#x20;
* MC-Market: <https://www.mc-market.org/resources/12399/>


# Installing BuildSystem

{% hint style="danger" %}
BuildSystem only actively support the latest full Minecraft release (currently **1.21**).&#x20;

Older versions *may* still work but are no longer supported.
{% endhint %}

1. Download **BuildSystem** from a site of your choice.
2. Place the .jar in your plugins directory.
3. Run the server and wait for it to fully load.
4. Type `stop` in your Minecraft server console to bring the server to a clean stop.
5. Make changes to `config.yml` as you wish.
6. Run the server.
7. All done! **BuildSystem** should be installed and ready to be used.


# Config

## messages

### `spawn-teleport-message`

* **default:** false
* **description:** Sets whether a message will be sent when teleporting to the spawn.

### `join-quit-message`

* **default:** true
* **description:** Sets whether a message will be sent when a player joins or quite the server.

### `date-format`

* **default:** dd/MM/yyyy
* **description:** Sets the date format that will be used throughout the plugin.

## settings

### `update-checker`

* **default:** true
* **description:** Sets whether the plugin should check for possible updates and notfiy players if any are found.

### `scoreboard`

* **default:** true
* **description:** Sets whether the scoreboard component should be initiated. If set to `false`, players will not be able to activate the scoreboard. Is not equivalent to the per-player setting!

### archive

#### `vanish`

* **default:** true
* **description:** Sets whether players should be hidden from other players and receive an invisibility effect in archived worlds.

#### `change-gamemode`

* **default:** true
* **description:** Sets whether a player's gamemode will be automaticcaly set (to the one provided by [#world-gamemode](#world-gamemode "mention")) when entering archive worlds.

#### `world-gamemode`

* **default:** ADVENTURE
* **description:** The gamemode which a player will be set to when entering archive worlds. Requires [#change-gamemode](#change-gamemode "mention") to be enabled.

### disabled-physics

#### `prevent-connections`

* **default:** true
* **description:** Sets whether connections are to be prevented when world physics are disabled.

#### `prevent-fluid-flow`

* **default:** true
* **description:** Sets whether fluid flowing is to be prevented when world physics are disabled.

#### `prevent-falling-blocks`

* **default:** true
* **description:** Sets whether block falling to be prevented when world physics are disabled.

### save-from-death

#### `enabled`

* **default:** true
* **description:** Sets whether a player will be saved from death if they fall into the void

#### `teleport-to-map-spawn`

* **default:** true
* **description:** Sets whether the player will be teleported to the map spawn if they receive void damage. If disabled, the player will be teleported 200 blocks upwards. Requires [#enabled](#enabled "mention") to be set to true.

### build-mode

#### `drop-items`

* **default:** true
* **description:** Sets whether a player can drop items while in "build mode" (`/build`)

#### `move-items`

* **default:** true
* **description:** Sets whether a player can move items (e.g. into a chest) while in "build mode" (`/build`)

### builder

#### `block-worldedit-non-builder`

* **default:** true
* **description:** When enabled, players who are not a builder in a world, will not be able to use WorldEdit commands in said world.

### navigator

#### `item`

* **default:** CLOCK
* **description:** The item to be used as the navigator.

#### `give-item-on-join`

* **default:** true
* **description:** Sets whether the navigator should be given to a player on joining the server.

## world

### default

{% hint style="info" %}
When a new world is generated, the following settings are set for that specific world.
{% endhint %}

#### permission

* `public`
  * **default:** -
  * **description:** The default permission *public* worlds have when created
* `private`
  * **default:** worlds.%world%
  * **description:** The default permission *private* worlds have when created

#### time

* `sunrise`
  * **default:** 0
  * **description:** The time which is used when setting the time in a world to "sunrise".
* `noon`
  * **default:** 6000
  * **description:** The time which is used when setting the time in a world to "noon".
* `night`
  * **default:** 18000
  * **description:** The time which is used when setting the time in a world to "night".

#### worldboarder

* `size`
  * **default:** 6000000
  * **description:** The size which the world board is set to on world generation.

#### `difficulty`

* **default:** PEACEFUL
* **description:** The difficulty of a world which is used on generation.

#### `gamerules`

{% hint style="info" %}
To add a gamerule which should be set on world generation, just add it to the list of existing ones (or remove the present ones if needed).

For example if you want to add the gamerule `randomTickSpeed`:&#x20;

```
doDaylightCycle: false
doMobSpawning: false
doFireTick: false
randomTickSpeed: 0
```

{% endhint %}

* **default:**

  ```
  doDaylightCycle: false
  doMobSpawning: false
  doFireTick: false
  ```
* **description:** A map of gamerules and their values which are to be automatically set.

#### settings

* `physics`
  * **default:** true
  * **description:** Sets whether blocks have physics in the world. For example, if phyiscs are disabled, sand will not have gravity.
* `explosions`
  * **default:** true
  * **description:** Sets whether explosions are allowed in the world.
* `mob-ai`
  * **default:** true
  * **description:** Sets whether mobs have an AI in the world.
* `block-breaking`
  * **default:** true
  * **description:** Sets whether blocks are allowed to be broken in the world.
* `block-placement`
  * **default:** true
  * **description:** Sets whether blocks are allowed to be placed in the world.
* `block-interactions`
  * **default:** true
  * **description:** Sets whether blocks are allowed to be interacted with in the world.
* builders-enabled
  * **default:**&#x20;
    * `public`: false
    * `private`: true
  * **description:** Sets whether only builders should be allowed to build in the world.

### `lock-weather`

* **default:** true
* **description:** Sets whether the weather will be locked and will therefore not change.

### `invalid-characters`

* **default:** ^\b$
* **description:** Specify further characters to be removed from a world's name on creation.

### import-all

#### `delay`

* **default:** 30
* **description:** Sets the amount of seconds between the import each world.

### max-amount

#### `public`

* **default:** -1
* **description:** Sets the maximum amount of public worlds that are allowed to exist simultaneously. Set to -1 to disable.

#### `private`

* **default:** -1
* **description:** Sets the maximum amount of private worlds that are allowed to exist simultaneously. Set to -1 to disable.

### unload

#### `enabled`

* **default:** false
* **description:** Sets whether worlds will automatically be unloaded after a given time when no players are present in the world.

#### `time-untill-unload`

* **default:** 01:00:00
* **description:** Sets the time until a worlds will automatically be unloaded.

#### `blacklisted-worlds`

* **default:**

```
- world
- world_nether
- worth_the_end
```

* **description:** A list of all worlds that will not be unloaded, even if there are no players present in the world.

### `deletion-blacklist`

* **default:**

```
- world
- world_nether
- worth_the_end
```

* **description:** A list of all worlds that cannot be deleted by any player.

### backup

#### `max-backups-per-world`

* **default:** 5
* **description:** The maximum amount of backups a world can have (limited to 18).

#### auto-backup

* `enabled`
  * **default:** true
  * **description:** Sets whether worlds will be automatically backed up in a predefined interval.
* `interval`
  * **default:** 900
  * **description:** The interval (in seconds) in which worlds are backed up automatically.
* `only-active-worlds`
  * **default:** true
  * **description:** Sets whether only active worlds (i.e. worlds with builders in them) will be backed up.

#### storage

* `type`
  * **default:** local
  * **description:** Defines where backups are to be saved to. \
    Can be either `local` (saved on the server), `s3` (saved on an S3 storage) or `sftp` (uploaded to a server)
* s3 (only required when using S3)
  * `url`: If not using AWS S3, specify the S3 storage's URL.
  * `access-key`: The access key required to access the S3 storage instance.
  * `secret-key`: The secret key required to access the S3 storage instance.
  * `region`: The region of the S3 storage instance.
  * `bucket`: The bucket in which backups are to be stored.
  * `path`: The path at which backups are to be stored within the bucket.
* sftp (only required when using SFTP)
  * `host`: The server host.
  * `port`: The server port.
  * `username`: The username required to access the server.
  * `password`: The password required to access the server.
  * `path`: The path at which backups are to be stored on the server.

## folder

### `override-permissions`

* **default:** true
* **description:** Sets whether worlds will inherit a parent folder's permission.

### `override-projects`

* **default:** false
* **description:** Sets whether worlds will inherit a parent folder's project.


# Creating a World

## Creating a world&#x20;

1. Open the navigator by clicking on the `Navigator` item or by using the command:

```
/worlds
```

&#x20;  2\. Click on the chest icon to open the `World Navigator`.

![](/files/-M6oc8FnP_7DnKJZsOoL)

{% hint style="info" %}
If you cannot open the navigator, make sure you have the correct [permission](/permissions/bypass#open-the-navigator).
{% endhint %}

&#x20;  3\. Click on the `"+" skull` at the bottom of the navigator.

![](/files/-M6ocK7spFpSOUwlfqKW)

{% hint style="info" %}
If you cannot see the item for creating a world, make sure you have to correct [permission](/permissions/bypass#create-a-world).
{% endhint %}

&#x20;  4\. Decide whether you want to create a **predefined** **world** or a [**template**](/getting-started/installing-buildsystem#installing-templates).

![Predefined worlds](/files/-M6ocCI-AbbIZrxq47-7)

![Templates](/files/-M6ocHDgwjF5Eei6det0)

&#x20;  5\. Enter the name of the world you want to create into the chat

{% hint style="warning" %}
The world name cannot contain spaces, dots and special symbols
{% endhint %}

## Installing templates

1. Place the world folder you wish to use as a template in the `templates` directory in the `BuildSystem` directory.

![](/files/-M6ohSMWcxczswhTA2l1)

&#x20;  2\. When creating a world now select the template you just added.


# World Backups

World Backups allow copies of worlds to be (automatically) created which can then restored at a later point in time

## Getting started

Before creating any backups, ensure that the [`backups`](/getting-started/config#backup) section in the `config.yml` file is properly configured.

## Creating a backup

### Automatically

When enabled in the config, backups are automatically created in the defined interval.\
If `backup.auto-backup.only-active-worlds` is set to `true`, the time until a backup will be only created is only incremented as long as a builder (i.e. player who can modify the world) is present in the world.

### Manually

Players with the permission `buildsystem.backup.create` can manually create a backup of the world they are in using `/worlds backup create`.

## Viewing backups

Creators of a world (or players with the `buildsystem.admin` bypass permission) can view the backups of the world they are in using `/worlds backup`. Additionally, they will need the permission: `buildsystem.backup`.

<figure><img src="/files/MXgW3DYGozWrPXJVmDoS" alt="" width="375"><figcaption></figcaption></figure>

Each backup item's name will have the date and time at which it is was created.

## Restoring a backup

{% hint style="danger" %}
Restoring a backup of the server's main world (often `world`) can lead to issues and is not advised. If you decide to do so, make sure to restart the server immediately after.
{% endhint %}

To restore a world to a backup, simply click on the desired backup within the backups overview. You will then be prompted to confirm the action since it cannot be reverted.

<figure><img src="/files/wSLJ51hoJ4zSK5rj7Ej6" alt="" width="375"><figcaption></figcaption></figure>


# Creating a Folder

World Folders are an improved way of managing how worlds are stored within the navigator.

## Creating a new folder

Before stating, make sure you have the permission `buildsystem.create.folder`. Then, to create a folder, head to the navigator and click the birch wood skull:

<figure><img src="/files/XV6GXh46VgYIpjn8WYog" alt="" width="375"><figcaption><p>Button for creating a folder</p></figcaption></figure>

***

Then you will be prompted to enter a folder name into the chat (similarly to when creating a world):

<figure><img src="/files/ThBOXTK2DRceBiYWBdYG" alt="" width="375"><figcaption><p>Prompt for entering folder name</p></figcaption></figure>

***

Easy as that. The folder has now been added to the category (public/private/archive) in which the button was clicked

<figure><img src="/files/uanNhKx3DJvkZff8KjHx" alt="" width="375"><figcaption><p>The newly created folder</p></figcaption></figure>

## Managing a folder

There are now a few commands which can be performed by players that have the necessary permissions:

### Adding worlds to a folder

{% hint style="warning" %}
A world can only be in one folder at a time.
{% endhint %}

* Command: `/worlds folder <folder> add <world>`
* Permission: `buildsystem.folder.add`

When a world is in a folder, it will inherit the folder's **permission** and **project** as long as the config options (`folder.override-permissions` and `folder.override-projects` respectively) are enabled.

### Removing worlds from a folder

* Command: `/worlds folder <folder> remove <world>`
* Permission: `buildsystem.folder.remove`

When a world is removed from a folder, it will regain its previous permission and project.

### Deleting a folder

{% hint style="warning" %}
A folder can only be deleted after all contained worlds & subfolders have been removed.
{% endhint %}

* Command: `/worlds folder <folder> delete`
* Permission: `buildsystem.folder.delete`

### Other commands

#### **Setting a folder's permission**

* Command: `/worlds folder <folder> setPermission`
* Permission: `buildsystem.folder.setpermission`

#### **Setting a folder's project**

* Command: `/worlds folder <folder> setProject`
* Permission: `buildsystem.folder.setproject`

#### **Setting a folder's navigator icon**

* Command: `/worlds folder <folder> setItem`
* Permission: `buildsystem.folder.setitem`


# Common Issues

## Issue 1 - Manipulating world

> "I can(not) build, even though I should be able to"

{% hint style="info" %}
Not every player can always interact with the world they are in.
{% endhint %}

Reasons an interaction could be cancelled:

* The world has its **Status** (see [`/worlds setStatus`](/commands/worlds/setstatus#usage)) set to archived
* The world has a setting enabled (see [`/worlds edit`](/commands/worlds/edit#usage)) which disallows certain events
* The world only allows **Builders** to build and the player is not such a builder

However, a player can override these reasons if:

* The player has the permission `buildsystem.admin`
* The player has the permission `buildsystem.bypass.archive`
* The player has used [`/build`](/commands/build#usage) to enter build-mode

## Issue 2 - Weird symbols appearing in messages

If ever start the server and see weird symbols in your messages instead of a UTF-8 character, try adding the following to your startup script:

```
-Dfile.encoding=UTF-8
```

![Example](/files/DHnkIIP4aSRb5TmIuoLH)


# Commands

Here you can find permissions for commands.

## Commands

{% hint style="info" %}
You can find each command's permission by clicking on the command which brings you to its according page
{% endhint %}

* [/back](/commands/back#permission)
* [/blocks](/commands/blocks#permission)
* [/build](/commands/build#permission)
* [/buildsystem](/commands/buildsystem#permission)
* [/config](/commands/config#permission)
* [/explosions](/commands/explosions#permission)
* [/gm](/commands/gm#permission)
* [/day](/commands/day#permission)
* [/night](/commands/night#permission)
* [/noai](/commands/noai#permission)
* [/physics](/commands/physics#permission)
* [/settings](/commands/settings#permission)
* [/setup](/commands/setup#permission)
* [/skull](/commands/skull#permission)
* [/spawn](/commands/spawn#permission)
* [/speed](/commands/speed#permission)
* [/worlds](/commands/worlds#permission)
  * [addBuilder](/commands/worlds/addbuilder#permission)
  * [backup](/commands/worlds/backup)
  * [builders](/commands/worlds/builders)
  * [delete](/commands/worlds/delete#permission)
  * [edit](/commands/worlds/edit#permission)
  * [folder](/commands/worlds/folder)
  * [help](/commands/worlds/help#permission)
  * [importAll](/commands/worlds/importall#permission)
  * [import](/commands/worlds/import#permission)
  * [item](/commands/worlds/item#permission)
  * [removeBuilder](/commands/worlds/removebuilder#permission)
  * [removeSpawn](/commands/worlds/removespawn#permission)
  * [rename](/commands/worlds/rename#permission)
  * [setItem](/commands/worlds/setitem#permission)
  * [setCreator](/commands/worlds/setcreator#permission)
  * [setProject](/commands/worlds/setproject#permission)
  * [setStatus](/commands/worlds/setstatus#permission)
  * [setPermission](/commands/worlds/setproject#permission)
  * [setSpawn](/commands/worlds/setstatus#permission)
  * [tp](/commands/worlds/tp#permission)
  * [unimport](/commands/worlds/unimport#permission)


# Navigator

In order to open the navigator with `/worlds` the following permission is needed:

```
buildsystem.navigator
```

If you want a player to receive and use the navigator item which can be specified in the config, the following permission is needed:

```
buildsystem.navigator.item
```


# Worlds


# Creating Worlds

## Public worlds

In order to create a *public* world the following permission is needed:

```
buildsystem.create.public
```

Set the maximum amount of *public* worlds a player can create with

```
buildsystem.create.public.<amount>
```

## Private worlds

In order to create a *private* world the following permission is needed:

```
buildsystem.create.private
```

Set the maximum amount of *private* worlds a player can create with

```
buildsystem.create.private.<amount>
```

## Type restrictions

Allows server owners to restrict which world types can be created

<table data-header-hidden><thead><tr><th>Type</th><th>Permission</th></tr></thead><tbody><tr><td>Normal</td><td><pre><code>buildsystem.create.type.normal
</code></pre></td></tr><tr><td>Flat</td><td><pre><code>buildsystem.create.type.flat
</code></pre></td></tr><tr><td>Nether</td><td><pre><code>buildsystem.create.type.nether
</code></pre></td></tr><tr><td>End</td><td><pre><code>buildsystem.create.type.end
</code></pre></td></tr><tr><td>Void</td><td><pre><code>buildsystem.create.type.void
</code></pre></td></tr></tbody></table>


# Restricting Worlds

*BuildSystem* allows server owners to restrict which worlds a player can modify when using commands.

{% hint style="info" %}
All commands default to `.self` when no suffix (`.self`, `.other`) is provided.&#x20;

**For example:** `buildsystem.day` = `buildsystem.day.self`
{% endhint %}

## Only modify worlds owned by player

If you want a player to only modify worlds which belong to the player (i.e. player **is** creator), then use the command suffix `.self`.

**For example:** If you only want player's to change the world time to day (`/day`) in their own worlds, then give the player the permission `buildsystem.day.self`.

## Modify worlds not owned by player

With the permission suffix `.other`, a player can also modify worlds that **don't** belong to the player (player is **not** creator)

**For example:** If you only want player's to change the world time to day (`/day`) in other worlds, then give the player the permission `buildsystem.day.other`.


# Admin/Bypass

## Admin permission

Bypasses all restrictions such as:

* not being the creator of a world
* archived worlds
* disabled block breaking/placement
* etc.

```
buildsystem.admin
```

## Bypass permissions

### Bypass disabled building in archived worlds

```
buildsystem.bypass.archive
```

### Bypass not being a builder in a world

```
buildsystem.bypass.builders
```

### Bypass disabled block breaking/placement/interactions

```
buildsystem.bypass.settings
```

### Bypass permissions needed to **view public worlds**

```
buildsystem.bypass.permission.public
```

### Bypass permissions needed to **view archived worlds**

```
buildsystem.bypass.permission.archive
```

### Bypass permissions needed to **view private worlds**

```
buildsystem.bypass.permission.private
```


# Messages

## Sending colored messages

### In the chat

```
buildsystem.color.chat
```

### On signs

```
buildsystem.color.sign
```

## Physics message

Receive the message that physics are disabled in the world you are in.

```
buildsystem.physics.message
```


# /back

Teleport back to your previous location.

## Usage

```
/back
```

{% hint style="info" %}
After using the command, your previous location will be forgotten
{% endhint %}

## Permission

```
buildsystem.back
```


# /blocks

Opens a menu with secret blocks

## Usage

```
/blocks
```

## Permission

```
buildsystem.blocks
```

## Menu

![](/files/-M6ns5yEmAWSyvM5MZEc)


# /build

Puts the player into "Build Mode", which allows them to bypass worlds that are set to "archive".

## Usage

```
/build [player]
```

## Permission

### /build

```
buildsystem.build
```

### /build \<player>

```
buildsystem.build.others
```

## Image

![/build response](/files/-M6tph78aFJoPB7MbpkX)


# /buildsystem

Overview of all commands.

## Usage

```
/buildsystem
```

## Permission

```
buildsystem.help.buildsystem
```

## Image

![Only the commands a player has permission for are shown](/files/-M6tpBZ2b7mSaQDYgOZi)


# /config

Reload the config.

## Usage

```
/config reload
```

## Permission

```
buildsystem.config
```

## Image

![](/files/-M6tq68ZfvkTzc1_lElM)


# /day

Sets the time in a world to daytime.

## Usage

```
/day [world]
```

## Permission

```
buildsystem.day
```

## Image

![](/files/-M6tqmoADzPg_DFBSUyG)


# /explosions

Disables explosions in a world.

## Usage

```
/explosions [world]
```

## Permission

```
buildsystem.explosions
```

## Image

![](/files/-M6tqMsyi0o_EPiEpGYz)


# /gm

Change your gamemode.

## Usage

```
/gm <gamemode> [player]
```

{% hint style="info" %}
You can use the following arguments for each gamemode:\
\
**Survival:** `survival`, `s`, `0`\
**Creative:** `creative`, `c`, `1`\
**Adventure:** `adventure`, `a`, `2`\
**Spectator:** `spectator`, `sp`, `3`
{% endhint %}

## Permission

### Until v2.26.0

#### /gm \<gamemode>

```
buildsystem.gamemode
```

#### /gm \<gamemode> \<player>

```
buildsystem.gamemode.others
```

### From v2.27.0 onwards

#### /gm \<gamemode>

```
buildsystem.gamemode
```

{% hint style="info" %}
Each gamemode also has it's own permission which is granted by default when the player has the `buildsystem.gamemode` permission:

* **Survival**: `buildsystem.gamemode.survival`
* **Creative**: `buildsystem.gamemode.creative`
* **Adventure**: `buildsystem.gamemode.adventure`
* **Spectator**: `buildsystem.gamemode.spectator`
  {% endhint %}

#### /gm \<gamemode> \<player>

```
buildsystem.gamemode.other
```

{% hint style="info" %}
Each gamemode also has it's own permission which is granted by default when the player&#x20;

has the `buildsystem.gamemode.other` permission:

* **Survival**: `buildsystem.gamemode.survival.other`
* **Creative**: `buildsystem.gamemode.creative.other`
* **Adventure**: `buildsystem.gamemode.adventure.other`
* **Spectator**: `buildsystem.gamemode.spectator.other`
  {% endhint %}


# /night

Sets the time in a world to nighttime.

## Usage

```
/night [world]
```

## Permission

```
buildsystem.night
```

## Image

![](/files/-M6tqqt7L-KOv5HL2Fml)


# /noai

Disables entity AIs in a world.

## Usage

```
/noai [world]
```

## Permission

```
buildsystem.noai
```


# /physics

Toggles a world's block physics.

{% hint style="info" %}
When block physics are disabled in a world water will no longer flow, sand will not fall, leaves will not disappear and redstone will not work.
{% endhint %}

## Usage

```
/physics [world]
```

## Permission

```
buildsystem.physics
```


# /settings

Opens a menu with per player settings.

## Usage

```
/settings
```

## Permission

```
buildsystem.settings
```

## Menu

![](/files/-M6nwroQDBqYXoU8cJab)

## Settings

### Slab breaking

> When breaking double slabs, only one half will be broken.

### Clear inventory

> When enabled, a player's inventory is cleared on join.

### Change design

> Select which colour the glass panes should have.

![Currently: Black](/files/-M6nxn7zL3ZhDGGYBn16)

### NoClip

> When flying against a wall you will be put into spectator mode.

### Instant place signs

> When enabled, signs are placed without opening the text input.

### Open trapdoors

> When right clicking iron (trap-)doors they will be opened/closed.

### Scoreboard

> A scoreboard which provides you with useful information.

### New navigator

> A new and improved navigator which is no longer a classical GUI.

### Spawn teleport

> When enabled, you will be teleported to the spawn if it has been set.

### Hide players

> When enabled, all players online will be hidden.

### Disable interactions

> When enabled, interactions with certain blocks are disabled.

### World sort

> Change the way worlds are sorted in the navigator.

{% hint style="info" %}
**Currently, you can choose from 4 different sorting methods:**\
Alphabetically (A-Z), Alphabetically (Z-A), Creation date (Newest) & Creation date (Oldest)
{% endhint %}

### Nightvision

> When enabled, you will receive permanent nightvision.


# /setup

Change the default items when creating worlds or changing a world's status.

## Usage

```
/setup
```

## Permission

```
buildsystem.setup
```

## Menu

![](/files/-M6o-xDrvvbVK0IfOUMn)


# /skull

Receive a player's skull.

## Usage

```
/skull [player/id]
```

{% hint style="info" %}
You can receive a skull with a custom skull by using **/skull \<id>**. The ID is fround here: <http://textures.minecraft.net/texture/**\\><ID>​\*\*
{% endhint %}

## Permission

```
buildsystem.skull
```


# /spawn

Set, remove or teleport to the spawn.

## Usage

```
/spawn [set/remove]
```

{% hint style="warning" %}
Do not confuse this command with **/worlds setSpawn**.
{% endhint %}

## Permission

```
/spawn - No permission
/spawn [set/remove] - buildsystem.spawn
```


# /speed

Changes a player's speed

## Usage

```
/speed [1-5]
```

{% hint style="info" %}
If no number is given, a menu will open where you can manually select the desired speed.
{% endhint %}

## Permission

```
buildsystem.speed
```

## Menu

![](/files/-M6o-ZhZgdCeqQvCsk77)


# /top

Teleport to the highest location above you.

## Usage

```
/top
```

## Permission

```
buildsystem.top
```


# /worlds

Opens the navigator.

## Usage

```
/worlds
```

{% hint style="info" %}
For all subcommands use: `/worlds help`&#x20;
{% endhint %}

## Permission

```
buildsystem.navigator
```

## Menu

![](/files/-M6o-geG_x_hUpMWRsHr)


# addBuilder

Add a builder to a world

## Usage

```
/worlds addBuilder [world]
```

## Permission

```
buildsystem.addbuilder
```


# backup

Manage world backups

## Usage

```
/worlds backup [create]
```

## Permission

### Viewing backups

```
buildsystem.backup
```

### Creating manual backups

```
buildsystem.backup.create
```


# builders

Display the builders of a world

## Usage

```
/worlds addBuilder [world]
```

## Permission

```
buildsystem.builders
```


# delete

Delete a world.

## Usage

```
/worlds delete [world]
```

{% hint style="info" %}
Before a world is delete, you have to confirm it's deletion by clicking on the lime dye.
{% endhint %}

## Permission

```
buildsystem.delete
```

## Menu

![](/files/-M6nwDBAtStR8uss66oq)


# edit

## Usage

```
/worlds edit [world]
```

{% hint style="warning" %}
The world must be imported in order to edit it
{% endhint %}

## Permission

### **Main command**

```
buildsystem.edit
```

### **Task permissions**

* Block Breaking:`buildsystem.edit.breaking`
* Block Placement: `buildsystem.edit.placement`
* Block Physics: `buildsystem.edit.physics`
* Change Time: `buildsystem.edit.time`
* Explosions: `buildsystem.edit.explosions`
* Remove Entities: `buildsystem.edit.entities`
* Modify Builders: `buildsystem.edit.builders`
* Toggle Mob-AI: `buildsystem.edit.mobai`
* Change Visibility: `buildsystem.edit.visibility`
* Block Interactions: `buildsystem.edit.interactions`
* Gamerules: `buildsystem.edit.gamerules`
* Difficulty: `buildsystem.edit.difficulty`
* World Status: `buildsystem.edit.status`
* World Project: `buildsystem.edit.project`
* World Permission: `buildsystem.edit.permission`

## Menu

![](/files/-M8oDRsSOfXlILnCmYp-)


# folder

World Folders are an improved way of managing how worlds are stored within the navigator.

## Creating a folder

Folder creation is done [via the navigator](/getting-started/creating-a-folder#creating-a-new-folder).

### Permission

```
buildsystem.create.folder
```

## Adding worlds to a folder

{% hint style="warning" %}
A world can only be in one folder at a time.
{% endhint %}

### Usage

```
/worlds folder <folder> add <world>
```

### Permission

```
buildsystem.folder.add
```

## Removing worlds from a folder

### Usage

```
/worlds folder <folder> remove <world>
```

### Permission

```
buildsystem.folder.remove
```

## Deleting a folder

{% hint style="warning" %}
A folder can only be deleted after all contained worlds have been removed.
{% endhint %}

### Usage

```
/worlds folder <folder> delete
```

### Permission

```
buildsystem.folder.delete
```

## Setting a folder's permission

### Usage

```
/worlds folder <folder> setPermission
```

### Permission

```
buildsystem.folder.setpermission
```

## Setting a folder's project

### Usage

```
/worlds folder <folder> setProject
```

### Permission

```
buildsystem.folder.setproject
```

## Setting a folder's navigator icon

### Usage

```
/worlds folder <folder> setItem
```

### Permission

```
buildsystem.folder.setitem
```


# help

Overview of all /worlds commands.

## Usage

```
/worlds help
```

## Permission

```
buildsystem.help.worlds
```

## Image

![](/files/-M6tp1P-Iz8xrtIB0CEY)


# importAll

Import all worlds located in your server directory at once.

## Usage

```
/worlds importAll
```

## Permission

```
buildsystem.import.all
```


# import

Import a world.

## Usage

```
/worlds import <world>
```

## Permission

```
buildsystem.import
```


# info

Shows information about a world.

## Usage

```
/worlds info [world]
```

## Permission

```
buildsystem.info
```

## Example

![](/files/-M6nwkX9lcuwCa3dgW7A)


# item

Receive the "World Navigator".

## Usage

```
/worlds item
```

## Permission

```
buildsystem.navigator.item
```


# removeBuilder

Removes a builder from a world

## Usage

```
/worlds removeBuilder [world]
```

## Permission

```
buildsystem.removebuilder
```

##


# removeSpawn

Remove's a world's custom spawn point.

## Usage

```
/worlds removeSpawn
```

## Permission

```
buildsystem.removespawn
```


# rename

Rename an existing world.

## Usage

```
/worlds rename [world]
```

## Permission

```
buildsystem.rename
```




---

[Next Page](/llms-full.txt/1)

