Skip to content

Search the store

Find products and categories.

Setting up the Bedwars network

Install Bedwars Lobby and Bedwars Game with the Aegis loader, name your server groups and check that queues reach your game servers.

Before you start

Each Bedwars server needs Paper 1.21.11, Java 25 and a working Bridge connection. Bridge is sold separately. Read Installation first if you haven't used the Aegis loader before.

You need at least two servers:

  • a lobby, where players queue with /bedwars;
  • a game server, where the matches are played. Add more game servers to run more matches at once.

Install the loader on every server

Put your Aegis.jar in the plugins folder of each lobby and game server, then start each server once so the loader creates its config.

Add the right plugin to each server

On a lobby, add Bedwars Lobby. On a game server, add Bedwars Game. Don't add both to one server.

plugins/Aegis/config.yml (lobby)
products:
  BedwarsLobby:
    enabled: true
    release: latest
    channel: stable
    required: true
plugins/Aegis/config.yml (game server)
products:
  BedwarsGame:
    enabled: true
    release: latest
    channel: stable
    required: true

You don't need to list Scaffold, Bridge, Kernel or Stash. The loader downloads them because Bedwars needs them. Your licence must include Bridge, or the loader can't start Bedwars.

Product names in config.yml ignore case and spaces, so Bedwars Lobby and bedwarslobby work too. Each plugin keeps its files in its own folder in plugins/, named after the product as the loader prints it when it starts.

Name your server groups

Bedwars tells lobbies and game servers apart by their Kernel group. The group is the first entry of group in kernel.yml. If group is empty, Kernel uses the server id without its last -part, so bedwars-lobby-1 is in the group bedwars-lobby.

  • A lobby's group must end in lobby. Bedwars Lobby only turns on its sidebar and match handling on a server whose group does.
  • A game server's group must not end in lobby. Scaffold treats those servers as lobbies, protects their blocks and doesn't send stray players away.

Use bedwars-lobby and bedwars-game. When a game server sends a player back to a lobby, it prefers lobbies in the group with the same name and -lobby in place of -game.

plugins/Kernel/kernel.yml (lobby)
serverId: bedwars-lobby-1
group: bedwars-lobby
plugins/Kernel/kernel.yml (game server)
serverId: bedwars-game-1
group: bedwars-game

Give every server its own serverId. BRIDGE_SERVER and BRIDGE_GROUP environment variables override serverId and group if you set them.

Leave game servers hosting games

Scaffold's scaffold.yml has a gameServer setting. It defaults to true. Keep it true on Bedwars game servers, or they won't accept matches.

plugins/Scaffold/scaffold.yml
gameServer: true
mirror: false

Add a map

Matches only start on maps that have team spawns, beds and generators for the mode. See Maps.

Test a queue

Join the lobby and run /bedwars. Click a mode with enough players to fill two teams. For Solo that is two players. If no game server is online, players see "No solo servers are online right now" and stay queued until one starts.

How servers find each other

Lobbies and game servers share the network database through Stash. Each game server announces that it can host Bedwars. The lobby sends a match to the least busy game server, and prefers one in the same Kernel region as the players.

Maps are stored in the same database, so every server sees the same maps. A change to a map reaches every server without a restart.

Rejoining a match

A player who disconnects during a match can come back within 120 seconds. When they join any server running Scaffold in that time, they are sent back to their match. Change the time with match.rejoinSeconds in the game server's settings.yml.

Queues and parties

The lobby queues each player on their own. Party members are not kept together when they queue for Bedwars.

A player can wait in more than one mode's queue at once, up to 4 queues. Change the limit with queue.maxQueues in Scaffold's settings.yml.

A player leaves every queue by leaving the server. Bedwars has no leave-queue command.