Sale 40% off 109 products · ends Oct 15, 2026 Shop the sale

Lobby Design: Build a Minecraft Lobby That Keeps New Players

A new player decides in the first minute whether to stay. This guide covers what a lobby must show, how to set up navigation with NPCs, holograms and menus, and how to keep the hub light.

zArrowTan Resources Oct 3, 2026 7 min read
Guides 6 covered
FancyNpcs
FancyHolograms
DecentHolograms
Citizens
DeluxeMenus
TAB
On this page
  1. What a lobby must do in the first minute
  2. Send every player to the same spawn
  3. Guide players with NPCs
  4. FancyNpcs
  5. Citizens
  6. Add holograms that explain what to do
  7. Build menus players can read
  8. Chest menus with DeluxeMenus
  9. Dialog screens for longer text
  10. Use the build to point the way
  11. Show who is online and what matters
  12. Keep the lobby fast
  13. A quick comparison of the building blocks
  14. Check your lobby with a new account

Key takeaways

5
  • Judge a lobby by the first ten seconds: where players land, what they face, and what they can click.
  • Offer three to five clear choices and let NPC clicks run commands that open menus.
  • Set one spawn point with /setspawn and turn on spawn-on-join in EssentialsX, then test with new and existing accounts.
  • Add short holograms over NPCs so every option explains itself before a click.
  • Keep the hub compact with few entities, controlled mob spawning, and test it with several players joining at once.

This guide is for owners whose players join, look around for a few seconds and leave. By the end you will have a lobby plan: where players land, what they see first, how they pick a game or mode, and how to keep the hub light so it never lags the first impression.

What a lobby must do in the first minute

A lobby has one job: get a new player into the game they came for. Everything else is decoration. Judge your lobby against this short list:

  • Landing: players spawn in the same spot, facing the most important thing (your main NPC, portal or menu), not a wall.
  • Choice: three to five clear options, not twenty. Each one says what it is in a few words.
  • Instruction: one line that tells a stranger what to do next, for example "Click an NPC to play".
  • Safety: nobody can fall, be attacked or grief the hub. Our guide to WorldGuard safe zones covers spawn protection step by step.
  • Speed: the area is already loaded and nothing stutters when ten players arrive at once.

Test it yourself: join with a fresh account, do nothing for ten seconds, and note what you would click. If you hesitated, a new player will too.

Send every player to the same spawn

If players join where they last logged out, new and returning players land in different places. For a lobby you usually want everyone at the hub. EssentialsX has a Spawn module for this. It is a separate jar that needs the core EssentialsX jar, and it lets you control where players appear when they first join and when they die. You set the point with /setspawn while standing where you want players to land.

EssentialsX also has a spawn-on-join option in its config.yml. It defaults to false. Set it to true and joining players are teleported to the spawn point. The commit that added the option also introduced the permission essentials.spawn-on-join.exempt for players who should skip it, which is handy for staff.

spawn-on-join: true

Stand where players should land, face the main attraction, then run:

/setspawn

Here is how to get plugin files onto your server, whichever way you run it:

  1. Upload the plugin jar to the plugins folder (SFTP or scp).
  2. Restart the server so the plugin generates its config.
  3. Edit the files in plugins/PluginName/, then restart or use the plugin's reload command.
  1. Open the File Manager (or connect over SFTP) and upload the jar into plugins.
  2. Restart from the Console page so the plugin loads.
  3. Edit configs in the File Manager. If a plugin needs a newer Java version, the Startup tab sets the Docker image, but the options are limited by your host, so ask them if the one you need is missing.
  1. Open the Files / FTP page and upload the jar into plugins.
  2. Restart from the console page.
  3. Edit the config files from the same Files page.

Guide players with NPCs

NPCs are the easiest way to say "this is a game, click it". A good lobby NPC has a clear name, an obvious look (a skin or equipment that fits the mode) and a click action that does something immediately.

FancyNpcs

FancyNpcs is a packet-based NPC plugin for Paper and Folia (Spigot is not supported). Its Modrinth page lists skins from a username or texture URL, equipment, poses, glowing colours, and player or console commands when an NPC is clicked. Its gallery also shows NPCs linked with holograms, which fits a lobby well. It lists Paper 1.21.4 or newer, so check the Java version on its page before you install.

Citizens

Citizens is an NPC plugin for the Bukkit API, and its GitHub page lists both Spigot and PaperMC as supported. If your server runs Spigot, or you already use Citizens through other plugins, it is the one to check first, since FancyNpcs does not support Spigot.

Add holograms that explain what to do

Floating text over each NPC answers the question "what is this?" before the player clicks. Keep it to two short lines: the mode name and one hook, such as "Click to play".

  • FancyHolograms makes text, item and block holograms with display entities. It supports MiniMessage formatting and PlaceholderAPI, and it needs Paper 1.21.4 or newer or Folia (Spigot is not supported). It also has FancyNpcs integration.
  • DecentHolograms works on Paper and Spigot, and its page lists Java Edition 1.8 and up. It supports multi-page holograms, permission-based access, adjustable display range and PlaceholderAPI, and it renders holograms with fake packets.

Both can show live values through PlaceholderAPI, so a hologram can carry something that changes, like a rank or a count, instead of static text. That small amount of movement makes a lobby feel alive.

Build menus players can read

A menu is the second step after the NPC click. Keep menus to one screen, group options by purpose (play, shop, rewards, rules) and put the main game in the middle or top left where eyes go first.

Chest menus with DeluxeMenus

DeluxeMenus builds custom inventory menus that open from a command and can show different items per player. Its SpigotMC page says PlaceholderAPI must be installed for it to work, and lists it as free. Because a menu is opened by a command, an NPC click can open it.

Dialog screens for longer text

DeluxeMenus suits command-opened item menus, while longer text such as rules or a first-time guide reads better on a dialog screen. DialogForge, made by our team, creates real dialog screens from YAML with titles, readable text, buttons and background images. It ships with four ready menus: /guide, /rules, /settings and /staffguide. It needs a Paper server (1.21.7 build 17 or newer) and Java 21, players must use Minecraft 1.21.6 or newer, and it is a paid plugin.

Use the build to point the way

Layout does half of the guiding. Put the NPCs in a ring or a row around the spawn so players see every option while turning once. Keep leaderboards and crates to the side, as they are second steps, not first.

If you do not want to build from scratch, a ready lobby saves a lot of time. The Fantasy Lobby, made by our team, is a 100x100 minigames hub with 12+ NPC slots and three leaderboard areas. It includes 11 schematics (native 1.20.6, with converted versions from 1.8 to 1.21) and needs WorldEdit or FastAsyncWorldEdit to paste. It is a paid build.

For wayfinding in larger hubs or parkour sections, the Navigation Arrow Models, made by our team, are free. They include five animated arrow colours as .bbmodel files (green, red, orange, purple, blue) in forward, up, down, left and right orientations. You import them into your resource pack, and you only need Blockbench if you want to change an arrow's colour.

Show who is online and what matters

TAB is an all-in-one plugin for the tab list header and footer, scoreboards, nametags and more, and its Modrinth page lists many platforms including Paper, Spigot, Folia and Velocity. Use it to repeat the three things every new player needs: your server name, how to join your Discord or find the rules, and one line about your main mode. Keep the scoreboard short, as a long one reads as noise.

Keep the lobby fast

A lobby that lags on join loses players in the first seconds, so performance is part of retention.

  • Keep it compact. A hub of around 100x100 is plenty for five or ten options. Bigger means more to load and more places to get lost.
  • Limit entities. Every NPC, hologram and decorative mob costs something. Packet-based plugins such as FancyNpcs and DecentHolograms avoid real entities for their displays, but use fewer, better placed ones rather than dozens.
  • Control mob spawning in the hub. Paper's world configuration has per-world entities.spawning.spawn-limits and entities.spawning.ticks-per-spawn settings (default -1, which means use the bukkit.yml value). If the hub shares a world with other areas, a WorldGuard region on the spawn is the safer route, as in our safe zones guide above.
  • Pregenerate the world if the lobby sits in a normal world. Our Chunky and spark guide shows how, and how to find what is still causing lag.

A quick comparison of the building blocks

JobOptionWorks onGood fit when
NPCsFancyNpcsPaper, FoliaYou run Paper and want skins, poses and click commands
NPCsCitizensBukkit API, Spigot, PaperYou run Spigot or already rely on Citizens
HologramsFancyHologramsPaper, FoliaYou want display-entity holograms with MiniMessage
HologramsDecentHologramsPaper, SpigotYou want multi-page holograms and permission-based access
MenusDeluxeMenusNeeds PlaceholderAPIYou want command-opened chest menus
MenusDialogForge (made by our team)Paper onlyYou want readable dialog screens for guides and rules
Tab list and sidebarTABMany platformsYou want a header, footer, scoreboard and nametags in one plugin

Check your lobby with a new account

  1. Join with a fresh account and note where you land and what you face.
  2. Read every hologram and NPC name aloud. If one needs explaining, shorten it.
  3. Click each NPC and confirm it opens a menu or sends you to the game within a second.
  4. Try to break things: jump off the edge, hit another player, place a block.
  5. Join with five friends at once and watch for lag.

If you want ranks and prefixes shown in the lobby, our LuckPerms ranks guide pairs well with the tab list setup above.

Frequently asked questions

How do I make players always spawn in the lobby?

With the EssentialsX Spawn module, stand at the lobby point and run /setspawn. Then set spawn-on-join to true in EssentialsX's config.yml so joining players are teleported there. It defaults to false. Test with both a new and an existing account to confirm the behaviour on your version.

Which NPC plugin should a lobby use?

FancyNpcs suits Paper and Folia servers and supports skins, poses and click commands. Citizens lists Spigot and PaperMC as supported, so it is the one to check if you run Spigot. Both can run a command when a player clicks.

How many options should a lobby show?

Three to five is a good target for a new player. More choices slow the decision. Put the main mode in the most obvious spot and move shops, crates and leaderboards to the side.

Do holograms and NPCs cause lag?

FancyNpcs and DecentHolograms use packets for their displays, which keeps them light, but every extra one still adds work. Use fewer, well placed ones and test with several players joining together.

Share this post

Products from this post

Other plugins mentioned

Related posts

© zArrowTan Resources 2026
Forked and customised by zArrowTan · Powered by Light Store