# Arena Creation

This guide explains the complete process of creating, configuring, and registering a new SkyWars map. It covers&#x20;everything from placing player spawn cages and loot chests to setting up team modes and custom in-game events.

***

### Creating a New Map

To start a new map, use:\
`/swm create <mapname> [environment]`

This will create an empty world where you can build your own arena or paste an existing schematic.\
The `[environment]` argument is optional – if you skip it, the world will be created as a normal overworld.

Supported environments include, for example:

* `nether`
* `the_end` (if you use this, you will need to manually remove the Ender Dragon)

***

### Setting Spawn Points

Use the following command to place different kinds of spawns:\
`/swm spawn <type>`

Available spawn types:

* `player` – Player starting locations (marked with a diamond block).\
  When the map is loaded, these blocks will be turned into cages.\
  To remove a spawn, just break the corresponding diamond block.
* `deathmatch` – Spawn positions for deathmatch (marked with an emerald block).\
  To delete one, destroy the emerald block.
* `spec` – Sets the spectator spawn position.

***

### Placing Chests

While you are in **edit mode**, simply place chests where you want loot to appear.\
The plugin will automatically recognize and register these chests.

To remove a chest from the map, just break it.

You can switch the chest type between **NORMAL** and **CENTER** using:\
`/swm chesttype <mapname>`

This lets you distinguish mid-chests from regular island chests.

***

### Saving and Editing Maps

When your build and configuration are ready, save the current state of the map with:\
`/swm save <mapname>`

If you later want to modify an existing map, enter edit mode with:\
`/swm edit <mapname>`

To see a list of all created maps, use:\
`/swm lists`

***

### Registering a Map

Once your setup is complete and the map is ready to be used in-game, register it with:\
`/swm register <mapname>`

Registration usually requires at least two valid player spawn points to function correctly.

***

### Creating a Team Game

To create a team-based map, follow these steps:

1. Create an arena using:\
   `/swm create <mapname>`
2. Set the team size (2 or higher):\
   `/swm teamsize <mapname> <2+>`
3. If separated cages are enabled, assign spawns per team using:\
   `/swm spawn player <teamNumber>`\
   Running this multiple times adds multiple players to the same team.
4. Set the waiting lobby spawn (you will need to build a large cage where the players will gather before the countdown starts):\
   `/swm spawn lobby`
5. Configure everything else (chests, layout, etc.).
6. Save and register the map:\
   `/swm save <mapname>`\
   `/swm register <mapname>`

***

### Enabling Events

To enable events, navigate to the `plugins/Skywars/mapData` folder and open your newly created map's YML file (it should be named after the map, with the `.yml` extension).

Then go to the `events` section and enable any events you want to use on that map.

```yaml
events:
  DisableRegenEvent:
    enabled: true
...
  HealthDecayEvent:
    enabled: true
...
  EnderDragonEvent:
    enabled: true
...
```


---

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

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

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

```
GET https://b-setups.gitbook.io/b.-setups/servers/skywars-server/additional-information/arena-creation.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

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