This guide walks you through setting up and configuring a Minecraft Bedrock Edition server on Legion Hosting. It covers first-time startup, server.properties configuration, player permissions, connecting from every Bedrock platform, world management, and crossplay considerations.
Bedrock vs. Java Edition
Minecraft exists in two distinct editions that are not natively compatible with each other:
| Edition | Platforms | Protocol |
|---|---|---|
| Bedrock Edition | Xbox (One/Series X|S), PlayStation (4/5), Nintendo Switch, iOS, Android, Windows 10/11 | Raknet (UDP) |
| Java Edition | Windows, macOS, Linux | TCP |
A Bedrock server only accepts Bedrock clients. If you need Java Edition players to join a Bedrock-compatible server, consider running a Java server with the Geyser plugin instead. This guide focuses exclusively on the dedicated Bedrock server.
Step 1 — First Start
After purchasing your Minecraft Bedrock server from Legion Hosting, follow these steps to get it running for the first time.
- Log in to GPanel and select your Bedrock server from the server list.
- Click the Startup tab. You will see the egg variables that control your server's basic settings. The key variables are:
Variable Default Description BEDROCK_VERSIONlatestThe Bedrock Dedicated Server version to install. Set to latestto always pull the newest release on startup, or pin a specific version number (e.g.1.21.51.02).SERVERNAMEDedicated ServerThe name shown to players when they add your server. GAMEMODEsurvivalDefault game mode: survival,creative, oradventure.DIFFICULTYeasyWorld difficulty: peaceful,easy,normal, orhard.CHEATSfalseWhether cheats (commands) are enabled for non-operator players: trueorfalse. - Adjust any values you want to change. Changes to Startup variables take effect on the next server start.
- Return to the Console tab and click Start.
- On the first launch, the server will download the Bedrock Dedicated Server binary — this typically takes 1–3 minutes depending on file size.
- When you see a message like
Server startedorIPv4 supported, port:in the console, the server is ready and the status should show Running.
BEDROCK_VERSION set to latest means your server will update automatically on every restart. If your players are on an older client version and cannot update immediately, pin the version to match their client to avoid connection failures.
Step 2 — Configuring server.properties
The server.properties file is the primary configuration file for a Bedrock server. It is created automatically on first start and is located in the server's root directory.
- In GPanel, stop the server from the Console tab and wait for the status to show Offline.
- Click the Files tab and open
server.propertiesin the file editor. - Edit the values below as needed, then click Save Content.
- Start the server for the changes to take effect.
| Property | Default | Description |
|---|---|---|
server-name |
Dedicated Server |
The display name shown to players when they browse or add the server. |
gamemode |
survival |
Default game mode for new players: survival, creative, or adventure. |
difficulty |
easy |
World difficulty: peaceful, easy, normal, or hard. |
max-players |
10 |
Maximum number of simultaneous players. Should not exceed your plan's player slot limit. |
online-mode |
true |
When true, the server verifies that players have a valid Xbox Live / Microsoft account. Set to false to allow unauthenticated players (not recommended). |
allow-cheats |
false |
Enables cheat commands for players. When false, only operators can use commands. |
view-distance |
32 |
Maximum view distance in chunks. Lower values reduce RAM and CPU usage — 10–16 is recommended for most servers. |
tick-distance |
4 |
The simulation distance in chunks (range: 4–12). Controls how far from a player blocks and entities are actively ticked. Lower values improve performance. |
level-seed |
(blank) | The seed used for world generation. Leave blank for a random seed. Only applies when a new world is generated. |
level-name |
Bedrock level |
The name of the world folder inside the worlds/ directory. Changing this creates a new world unless a folder with the new name already exists. |
default-player-permission-level |
member |
Permission level assigned to new players: visitor, member, or operator. See the Permissions section below. |
Example minimal server.properties configuration:
server-name=My Legion Bedrock Server
gamemode=survival
difficulty=normal
max-players=10
online-mode=true
allow-cheats=false
view-distance=16
tick-distance=4
level-seed=
level-name=Bedrock level
default-player-permission-level=member
SERVERNAME, GAMEMODE, and DIFFICULTY) exist both in the GPanel Startup tab and in server.properties. The Startup tab variables are applied each time the server starts and will overwrite the corresponding server.properties values. For settings that overlap, use the Startup tab as the primary control point to avoid confusion.
Step 3 — Player Permissions
Bedrock Dedicated Server uses a three-tier permission system that determines what each player can do:
| Level | Capabilities |
|---|---|
| visitor | Can move around and interact with the world but cannot place or break blocks. Useful for spectator-style access. |
| member | Standard survival/creative gameplay. Can place and break blocks, craft, use chests, etc. This is the default for new players. |
| operator | Full access to server commands (teleport, give, kick, ban, gamemode changes, etc.). Only grant this to trusted players. |
The default-player-permission-level in server.properties sets the level for all new players. To assign a specific permission level to individual players, edit the permissions.json file in the server root directory:
[
{
"permission": "operator",
"xuid": "1234567890123456"
},
{
"permission": "member",
"xuid": "9876543210987654"
}
]
Each entry requires the player's XUID (Xbox User ID), which is a 16-digit number tied to their Microsoft account. You can find a player's XUID by:
- Checking the server console output when they connect — the log line includes their XUID.
- Using a third-party XUID lookup tool online (search for "Xbox XUID lookup").
Allowlist (Whitelist)
To restrict your server to approved players only, edit the allowlist.json file in the server root directory and set allow-list=true in server.properties.
[
{
"ignoresPlayerLimit": false,
"name": "PlayerGamertag",
"xuid": "1234567890123456"
},
{
"ignoresPlayerLimit": true,
"name": "AdminGamertag",
"xuid": "9876543210987654"
}
]
name— The player's Xbox/Microsoft gamertag (case-insensitive).xuid— The player's XUID. Required for the entry to work.ignoresPlayerLimit— Whentrue, this player can join even if the server is full. Useful for admins.
name and xuid. An entry with only the gamertag and no XUID will not work. The server checks the XUID for authentication, not the name.
Step 4 — How to Connect
Before connecting, make sure your server status shows Running in GPanel. Note your server's IP address and port from the GPanel Console or Network tab.
From Windows 10/11
- Open Minecraft (Bedrock Edition) from the Microsoft Store / Xbox app.
- From the main menu, click Play.
- Select the Servers tab at the top.
- Scroll to the bottom and click Add Server.
- Enter a name for the server (anything you like), then enter the Server Address (IP only) and Port from GPanel.
- Click Save, then select your server and click Join Server.
From Mobile (iOS / Android)
- Open Minecraft and tap Play.
- Tap the Servers tab.
- Scroll down and tap Add Server.
- Enter the server name, IP address, and port from GPanel.
- Tap Save, then tap the server entry to connect.
From Console (Xbox, PlayStation, Nintendo Switch)
Console editions of Bedrock do not have a native "Add Server" button in the Servers tab. To connect to a custom server from a console, you need to use one of these methods:
- Featured Server workaround: Some consoles allow adding servers through the Friends tab or by using a featured server redirect. The exact steps vary by console and may change with Minecraft updates.
- Companion app method: Use the Minecraft Bedrock companion app or a DNS-based tool (such as BedrockConnect) on the same network to redirect a featured server address to your custom server IP.
- LAN proxy: Run a proxy tool on a PC on the same network that advertises your remote server as a LAN game, making it appear in the Friends tab on the console.
Step 5 — World Management
World File Location
Bedrock worlds are stored in the worlds/ directory on the server. The folder name inside worlds/ matches the level-name value from server.properties. By default, this is worlds/Bedrock level/.
Uploading an Existing World
You can upload a world from a singleplayer save or from another server:
- Stop the server from the GPanel Console tab.
- Open the Files tab in GPanel and navigate to the
worlds/directory. - If you are replacing the current world, delete or rename the existing world folder (e.g. rename
Bedrock leveltoBedrock level backup). - Upload your world folder using the GPanel file manager or via SFTP. The folder must contain the
level.datfile and thedb/directory at minimum. - Rename the uploaded folder to match the
level-namevalue inserver.properties, or updatelevel-nameto match the uploaded folder name. - Start the server. It should load the uploaded world.
%localappdata%\Packages\Microsoft.MinecraftUWP_8wekyb3d8bbwe\LocalState\games\com.mojang\minecraftWorlds\. Each folder inside is a world — copy the entire folder to upload it.
Backups
Regular backups protect against data loss, corruption, and accidental changes:
- GPanel backups: Check the Backups tab in GPanel. Depending on your plan, automatic backups may be available. You can also create manual backups from this tab.
- Manual backups via SFTP: Stop the server, connect via SFTP, and download the entire
worlds/directory to your local machine. Store these copies in a safe location. - Before major changes: Always create a backup before uploading a new world, changing the
level-name, or updating the server version.
worlds/ directory before changing the BEDROCK_VERSION variable or allowing an automatic update.
Step 6 — Crossplay Considerations
One of Bedrock Edition's core strengths is native crossplay — all Bedrock platforms can play together on the same server without any additional configuration. However, there are a few things to keep in mind:
- All Bedrock platforms are compatible. A player on Xbox can play alongside someone on a phone, a Switch, or a Windows 10/11 PC. No mods or plugins are needed — crossplay is built into the Bedrock protocol.
- Microsoft account required. When
online-mode=true(the default and recommended setting), all players must be signed in to a Microsoft / Xbox Live account, regardless of platform. Players who are not signed in will be unable to join. - Input differences. Console players use controllers, mobile players use touch controls, and PC players may use keyboard and mouse. Keep this in mind when building complex redstone contraptions or PvP arenas — input methods create different play experiences.
- Version matching is critical. All connecting clients must be on the same Bedrock version as the server. If a player on one platform has auto-updated but another has not, they will not be able to play together until all clients match the server version. Use version pinning (the
BEDROCK_VERSIONStartup variable) to control this. - Java Edition is not compatible. Java Edition players cannot connect to a Bedrock server. If you need to support both Java and Bedrock players, consider running a Java server with the Geyser plugin, which translates the Bedrock protocol for Java servers.
Troubleshooting
Server shows Running but nobody can connect
- Double-check that you entered the correct IP address and port in separate fields (not combined with a colon).
- Confirm the server is actually fully started by checking the console for the
Server startedmessage. - Verify that the client's Minecraft version matches the server version exactly. Even minor version mismatches will prevent connection.
- If
allow-listis set totrueinserver.properties, make sure the connecting player's XUID is listed inallowlist.json.
"Could not connect: Outdated server" or "Outdated client"
This means the client and server are running different Bedrock versions. Either update the client to match the server, or change the BEDROCK_VERSION Startup variable to match the client version and restart the server.
World not loading after upload
- Ensure the uploaded world folder is directly inside
worlds/and not nested in an extra subdirectory (e.g.worlds/Bedrock level/level.datis correct,worlds/Bedrock level/Bedrock level/level.datis wrong). - Confirm the folder name matches the
level-namevalue inserver.propertiesexactly, including spaces and capitalization. - Verify the world contains a valid
level.datfile and adb/directory. - Java Edition worlds are not compatible with Bedrock servers. You must convert them using a third-party tool (such as Chunker or Amulet) before uploading.
Performance issues (lag, slow chunk loading)
- Lower
view-distanceinserver.properties. Values between 10 and 16 are recommended. The default of 32 is very high for most hosted servers. - Lower
tick-distanceto 4 (the minimum). This reduces the simulation area and lowers CPU usage. - Reduce
max-playersif the server is frequently at capacity. - Check GPanel's resource usage graphs to see if the server is hitting its RAM or CPU limits. If so, consider upgrading your plan.
Console players cannot find the "Add Server" button
This is a platform limitation — Xbox, PlayStation, and Nintendo Switch do not natively expose the "Add Server" option for all users. See the Console connection methods in Step 4 above. If you need assistance setting up console access, open a support ticket.
Related Articles
- Minecraft Java Server Setup Guide — if you are running a Java Edition server instead
- How to Find Your Server IP and Port
- How to Upload Files via SFTP
If you run into any issues not covered here, open a support ticket and our team will help you out.