BlueMap Guide: a 3D Web Map for Your Minecraft Server
On this page
BlueMap renders your Minecraft world into a live 3D map that anyone can open in a browser. Players can fly over builds, find each other and explore the world without logging in, and you get a showcase for your server's website or Discord.
This guide covers installing BlueMap, the one setting it needs before it works, giving the map its own port, the commands, and how to keep rendering from slowing your server down.
What BlueMap is
BlueMap reads your world files, renders them into 3D map tiles and serves them through a small built-in web server. Zoomed in, you see blocks in full 3D; zoomed out, a flat overview. Live markers show where players are, and the map updates as the world changes.
It renders Java Edition worlds only. The current release, BlueMap 5.29, comes in versions for:
| Server software | Minecraft versions |
|---|---|
| Paper and Folia (plugin) | 26.1.1 – 26.3 |
| Spigot (plugin) | 26.1 – 26.3 |
| Fabric, Forge, NeoForge (mod) | 26.1 – 26.3 |
For an older Minecraft version, download an older BlueMap release that lists it. Each release on Modrinth and Hangar shows the versions it supports.
Install BlueMap
- Download the file that matches your server from Modrinth, Hangar or the BlueMap GitHub releases: the
-paperjar for Paper,-fabricfor Fabric, and so on. - Put it in the
pluginsfolder (Paper, Spigot) or themodsfolder (Fabric, Forge, NeoForge) and restart the server. Uploading plugins is covered in how to install Minecraft plugins. - BlueMap creates its configuration in
plugins/BlueMap/, orconfig/bluemap/on modded servers, with a map for each of your worlds already set up.
At this point the console tells you BlueMap is waiting. It will not render anything until you accept the download, which is the next step.
Accept the download in core.conf
To draw blocks, BlueMap needs the textures and models from the Minecraft client, which it downloads from Mojang. Open core.conf and change:
accept-download: true
By setting it you accept Mojang's EULA and confirm you own Minecraft Java Edition. Save the file and run /bluemap reload, or restart. BlueMap downloads the resources and starts rendering.
Give the web map its own port
BlueMap's web server listens on port 8100 by default. On your own machine, open that port and visit http://your-ip:8100. On hosted servers you usually cannot pick a port freely, so you use one that is assigned to your server:
- Get a second port for your server. On HytHost, open the Network tab in the panel and add an allocation: the panel picks a free port and opens it for you.
- Open
webserver.confand setportto that number:port: 25570
- Run
/bluemap reloadand openhttp://your-server-ip:25570in a browser.
Do not use the game port; that is Minecraft's. To show the map on your own domain without a port number, put a reverse proxy such as nginx in front of it; BlueMap's documentation has ready examples.
Add a port for BlueMap yourself in the panel: HytHost Minecraft hosting starts at €2.59/mo.
See Minecraft plansBlueMap commands
| Command | What it does |
|---|---|
/bluemap | Shows the render status and progress |
/bluemap reload | Reloads the configuration after you edit it |
/bluemap maps | Lists the maps and their state |
/bluemap update [map] | Renders changes that have not been picked up yet |
/bluemap force-update [map] | Re-renders everything, even unchanged areas |
/bluemap freeze <map> / unfreeze | Stops or resumes updates for one map; survives restarts |
/bluemap stop / start | Pauses or resumes all rendering |
/bluemap purge <map> | Deletes a map's rendered data so it renders again from scratch |
Each command has a permission of the form bluemap.<command>, for example bluemap.reload. Most of the time you need none of them: BlueMap notices changes in the world and renders them on its own.
Keep rendering light
BlueMap renders in background threads, not on the server's main thread, but rendering still uses CPU. The first render of a big world is the heavy part; after that, only changed chunks are redrawn.
- Render threads: set
render-thread-countincore.conf. BlueMap's documentation suggests1on machines with four cores or fewer. - Render when it is quiet: run
/bluemap stopduring busy hours and/bluemap startat night while the first render runs. - Pause with players online:
player-render-limitinplugin.confstops rendering once that many players are on. - Set a world border. It keeps the map, and the rendering work, from growing forever as players explore.
- Freeze maps you do not need live, such as the End once it is explored.
Storage: files or a database
By default BlueMap stores the map as compressed files in bluemap/web/maps, inside your server's storage. The map grows with the explored area, so keep an eye on disk space on a large world.
You can move a map to a database instead. In storages/sql.conf, set the connection to MySQL, MariaDB, PostgreSQL or SQLite, then set storage: "sql" in the map's config file and reload:
connection-url: "jdbc:mysql://DB_HOST:3306/DB_NAME"
connection-properties: {
user: "DB_USER",
password: "DB_PASSWORD"
}
Paper ships a MySQL driver; Spigot, Fabric and Forge need a JDBC driver added. Every HytHost Minecraft plan includes MySQL databases, which you create in the panel's Databases tab.
Frequently asked questions
Almost always because accept-download is still false in core.conf. Set it to true and run /bluemap reload. If it still waits, check the console for a download error.
8100 by default, set in webserver.conf. On a hosted server, use an extra port assigned to your server instead; on HytHost you add one yourself in the panel's Network tab.
It renders outside the main thread, so it does not block ticks directly, but the first render uses a lot of CPU. Use one render thread on small plans and run the first render when few players are online.
No. BlueMap renders Java Edition worlds only.
Run /bluemap purge <map>. It deletes the rendered data and the map renders again from scratch, unless it is frozen.
Put your world on the map
HytHost Minecraft hosting gives you extra ports from the panel and MySQL databases on every plan, from €2.59/mo.
Live chat 8 AM – 11 PM (Chișinău time) · tickets answered during business hoursWas this guide helpful?