How to Set Up a Minecraft Server Hub / Lobby
Learn how to build and configure a Minecraft server hub with NPC selectors, GUIs, cosmetics and performance tips for BungeeCord or Velocity networks.
What Is a Hub Server and Why You Need One
A hub, sometimes called a lobby, is the first server players land on when they connect to your network. It acts as a central routing point: players arrive here, pick which game mode or world they want to join, and get teleported to the correct backend server. Without a hub, every player would need a separate IP address for each server in your network, which is messy and unprofessional.
The hub also sets the tone for your entire network. It is the first thing people see, so a clean build, clear navigation and smooth performance go a long way toward keeping players around. Think of it like the reception area of a hotel, nobody wants to walk into a cluttered lobby with broken signs and lag.
Before you start, make sure you already have a proxy layer running. If you have not set one up yet, read our BungeeCord and Velocity setup guide first. The hub is a regular Paper or Purpur server that sits behind that proxy, just like your survival or minigame servers.
Building the Hub World
Hub worlds should be small, visually polished and extremely fast to load. Avoid using a full survival world, generate a void world or use a tool like WorldPainter to create a compact custom map.
Creating a Void World
If you are running Paper or Purpur, you can use the Multiverse plugin to generate a void world quickly:
/mv create hub NORMAL -g VoidGen
/mv setspawn
Alternatively, use a flat world preset with no layers. The point is to keep chunk data minimal. A hub world should be 200-400 blocks across at most. Anything larger wastes memory and increases load times for no reason.
Building Tips
- Keep the build within a small radius from spawn. Players should see all navigation options within seconds of joining.
- Use clear visual cues, color-coded areas, labeled signs, NPCs standing on pedestals with holograms above their heads.
- Avoid redstone contraptions, water flows and entities that eat server tick time. Every millisecond counts when dozens of players are loading in simultaneously.
- Place barriers or invisible walls around the edges so players cannot wander off into empty void chunks.
- Pregenerate every chunk in the hub radius using Chunky so the server never has to generate terrain on the fly.
Essential Plugins for a Hub Server
The hub needs far fewer plugins than a survival server. Resist the urge to install everything, each plugin adds tick overhead and potential bugs. Here is the core set that covers most networks.
Server Selector with Citizens NPCs
The most common approach is to place NPC villagers or player-skin NPCs at spawn, each representing a game mode. Citizens handles the NPC creation, and a companion plugin like CitizensCmd or CommandNPC runs a command when a player right-clicks the NPC. The command can be /server survival (a BungeeCord/Velocity command) or open a GUI menu.
/npc create &aSurvival
/npc skin Notch
/npc select
/trait commandnpc
/npc cmd add -r server survival
Place HolographicDisplays or DecentHolograms above each NPC to show the server name, player count and a short description. Players should be able to identify each option at a glance without opening any menus.
DeluxeMenus for GUI Navigation
Not everyone likes clicking NPCs. DeluxeMenus lets you create inventory GUIs with custom items that run commands or send players to other servers. You can trigger the menu with a compass item given on join or bind it to a command like /servers. Each slot in the GUI represents a backend server, complete with a head icon, lore text and live player count pulled from PlaceholderAPI.
Tab List and Scoreboard
TAB (the plugin, not the key) lets you customize the tab list header, footer and player name format. Show your network name, total player count across all servers and maybe a link to your Discord or store. A clean tab list makes the hub feel professional instead of like a default test server.
Cosmetics and Gadgets
Hub servers often offer cosmetics to keep players entertained while they decide where to go. Plugins like PlayerParticles add trail effects, GadgetsMenu adds fun toys, and LibDisguises lets players morph into mobs. These are optional but they increase the time players spend on the network, which boosts engagement.
Connecting the Hub to Backend Servers
In your Velocity or BungeeCord config, the hub should be set as the default server, the one players connect to automatically.
Velocity (velocity.toml)
[servers]
hub = "127.0.0.1:25566"
survival = "127.0.0.1:25567"
minigames = "127.0.0.1:25568"
try = ["hub"]
The try list tells Velocity to send new connections to hub first. If hub is down, you can add a fallback like a maintenance server.
BungeeCord (config.yml)
servers:
hub:
motd: '&aHub'
address: 127.0.0.1:25566
restricted: false
survival:
motd: '&aSurvival'
address: 127.0.0.1:25567
restricted: false
listeners:
, priorities:
, hub
Players use /server survival or /server minigames to switch. Your NPC and GUI setups simply execute these commands behind the scenes.
World Settings for a Hub
The hub world should feel like a controlled environment, not a sandbox. Apply these gamerules and world settings to prevent players from breaking anything or causing unnecessary server load:
| Setting | Value | Why |
|---|---|---|
/gamerule doMobSpawning | false | No mobs, no mob AI, no wasted tick time |
/gamerule doWeatherCycle | false | Rain causes client FPS drops and serves no purpose |
/gamerule doDaylightCycle | false | Lock time to noon or sunset for consistent aesthetics |
/gamerule doFireTick | false | Prevents accidental fire spread |
/gamerule doHungerDepletion | false | Players should not lose hunger in a lobby |
| Default gamemode | Adventure | Prevents block breaking and placing |
Set the default gamemode to adventure in server.properties so players cannot punch your builds apart. Use WorldGuard as a backup layer, create a global region that denies build, PvP, damage and item drops.
Performance: Keep the Hub Lightweight
A hub should run on minimal resources because its job is simple: display a world and route players. Here are concrete steps to keep tick times low.
- Set
view-distanceto 4-6 inserver.properties. Players do not need to see far in a small lobby. - Set
simulation-distanceto 4. Nothing needs to tick beyond the immediate area. - Disable spawn chunk loading if your server software supports it, Paper has
keep-spawn-loaded: falseoptions, though you usually want spawn loaded in a hub. Disable it for every other world on that server instance. - Limit entity tick rates. Armor stands used for holograms, item frames for decoration, these all tick. Use Paper's entity tick settings to reduce their frequency.
- Allocate only 512MB-1GB of RAM to the hub. If it needs more, something is wrong.
Check our server optimization guide for deeper tuning advice that applies to any server, including hubs.
Common Mistakes to Avoid
- Too many plugins. The hub does not need an economy, land claiming, or chat management. Those belong on backend servers. Every plugin you add to the hub is a potential crash risk that affects your entire network's first impression.
- Overcomplicated spawn builds. A spawn that takes 30 seconds to walk through frustrates players. Get them to the selector in under 5 seconds.
- No fallback server. If your hub crashes and you have no fallback, every player gets disconnected. Configure a lightweight fallback in your proxy.
- Ignoring permissions. Use LuckPerms to lock down every command except the ones players actually need. Nobody should be able to run
/pl,/ver, or any admin commands on the hub.
Putting It All Together
A good hub takes about an hour to set up technically and a few more hours to build visually. Start with a void world, place your NPCs and GUI selector, lock down permissions and gamerules, then polish the build. Test the flow by joining as a non-op player, can you immediately figure out where to click? Does it feel fast? If the answer is yes, your hub is ready. If not, simplify until it is.
Once you have players flowing through your hub into backend servers, you will want those servers to share data. Read our guide on linking servers with shared chat, economy and inventory to keep the experience seamless across your entire network.
Need hosting for your network? Astroworld Hosting offers NVMe SSD, Pterodactyl panel, and DDoS protection. See features , plans from €6.39/mo.