# Commands
Barrier takes over `/worldborder`. `/storm` is the same command if you prefer it. Everything needs the `lodestone.barrier.commands.worldborder` permission.
## Getting started
Pick a shape, then a size:
```
/worldborder type CIRCLE
/worldborder set 200
```
Four shapes are available: `CIRCLE`, `SQUARE`, and the boxed versions `CIRCLE_BOXED` and `SQUARE_BOXED` which add a ceiling and a floor.
For a circle, `set` is the radius. For a square, it's the width and length.
## Closing it in over time
This is what most people want Barrier for. Shrink a circle by 150 blocks over ten minutes:
```
/worldborder shrink 150 10m
```
Every size and movement command takes an optional time on the end. Leave it out and the change is instant.
| What you want | Command |
|---|---|
| Shrink a circle | `/worldborder shrink 150 10m` |
| Grow a circle | `/worldborder expand 50 5m` |
| Shrink a square | `/worldborder shrink_area 100 10m` |
| Grow a square | `/worldborder expand_area 100 10m` |
| Lower the ceiling | `/worldborder shrink_height 20 2m` |
| Raise the ceiling | `/worldborder expand_height 20 2m` |
Shrinking the height only works on boxed shapes, since the others don't have one.
### Writing durations
Two ways:
- **A plain number** means seconds. `60` is a minute.
- **A duration string** uses `d`, `h`, `m` and `s`. `1h30m`, `2d`, `1h30m10s`.
## Moving the border
Bring it to where you're standing:
```
/worldborder move_here 30s
```
Or send it to exact coordinates:
```
/worldborder move_to 500 -200 2m
```
Other ways to move it:
| Command | What it does |
|---|---|
| `/worldborder center <x> <y> <z> [-t time]` | Set the centre outright. Takes `x y z` or just `x z`. Use `-t 1h30m` to ease there |
| `/worldborder move_height_to <y> [time]` | Move to an exact height, keeping the same X and Z |
| `/worldborder move_up <blocks> [time]` | Raise it |
| `/worldborder move_down <blocks> [time]` | Lower it |
The height ones don't apply to plain `CIRCLE`, which has no height.
## Stopping it mid-move
```
/worldborder stop
```
Freezes everything where it is. `pause` and `freeze` do the same thing.
To stop only one kind of change: `/worldborder stop_moving` leaves a resize running, and `/worldborder stop_resizing` leaves movement running.
## Height on its own
```
/worldborder set height 64 1m
```
Sets the ceiling without touching width or length. Not available on `CIRCLE`, or if you're using the legacy command layout.
## Colour
```
/worldborder color FF0000
```
With or without the `#`. Works on every shape, circles included, as long as you're on the latest resource pack.
You can also have the colour change depending on what the border is doing, which is set in the config rather than here. See [[Barrier/Server Owners/Configuration]].
## Storm damage
```
/worldborder damage 2
/worldborder tick 20
```
`damage` is how much a player outside the border takes each time, and `tick` is how often that happens in ticks. `tick 20` is once a second.
Whether the storm knocks players around, respects totems, or eats absorption hearts first is set in the config.
## Per-player borders
```
/worldborder affect PER_PLAYER
```
Switches the world from one shared border to a separate one for everybody. Each person starts with a copy of the world's current border, and from there plugins can move each one independently. `GLOBAL` puts it back.
## Checking on it
```
/worldborder status
```
Tells you the shape, centre, size, damage and whatever it's currently doing. `info` is the same.
For one specific thing, use `get`:
| Command | Tells you |
|---|---|
| `/worldborder get radius` | Radius, round shapes only |
| `/worldborder get size` | Width, length and height together |
| `/worldborder get width` | Width, square shapes only |
| `/worldborder get length` | Length, square shapes only |
| `/worldborder get height` | Height, not on `CIRCLE` |
| `/worldborder get y` | What height it's sitting at |
| `/worldborder get color` | Current colour |
| `/worldborder get center` | Centre coordinates |
| `/worldborder get damage` | Damage per hit |
| `/worldborder get tick` | How often it hits |
| `/worldborder get origin` | Where it's heading and how long it has left |
While the border is still moving or resizing, these also tell you what it's heading toward and when it'll arrive, like `will be 50 block(s) wide in 3 minutes, 23 seconds`.
## Odds and ends
```
/worldborder tp_center teleport to the middle
/worldborder reload reread config.yml
/barrier version which version you're on
```
`teleport_center` and `goto_center` also work for the first one.
## The older command layout
If you upgraded from an earlier Barrier, your config has `legacy_commands` switched on so your existing macros and datapacks keep working. That changes two things:
| Command | What it does with legacy on |
|---|---|
| `/worldborder set <amount> [time] [-w] [-l] [-h]` | Sets every dimension at once, or just the ones you flag. On `CIRCLE_BOXED`, `-h` changes the cap height rather than the radius |
| `/worldborder set height <amount>` | Not available. Use `-h` instead |
New installs have it off. To switch over, set `legacy_commands: false` and run `/worldborder reload`. See [[Barrier/Server Owners/Configuration]].
## Related Pages
- [[Barrier/Server Owners/Overview]], what Barrier does
- [[Barrier/Server Owners/Configuration]], every setting explained