How to Add a Custom Map to a Minecraft Server
Put an adventure, parkour or puzzle map on a Minecraft Java server: upload the folder with level.dat, set level-name, match the version and fix spawn rules.
Updated Oct 3, 2026 · 6 min read
On this page
- What you can and cannot add
- What goes where
- The trap: running the map on the wrong version
- Before you start
- Step 1: Unzip and find level.dat
- Step 2: Upload the map folder
- Step 3: Point the server at it and set the rules
- Step 4: Add the map's resource pack (if any)
- Step 5: Start and play
- Common problems
- Custom maps on GamezServers
- FAQ
To add a custom map to a Minecraft Java server, unzip the map download and find the folder that holds level.dat. Stop the server, upload that folder to the server's main folder (next to server.properties), and set level-name= to the folder's exact name. Run the server on the Minecraft version the map was made for, set spawn-protection=0, and for adventure maps gamemode=adventure with force-gamemode=true. Then start the server and join.
What you can and cannot add
| Map | Can it run on a server? |
|---|---|
| Java adventure, parkour, puzzle, PvP and minigame maps | Yes, this guide |
| Maps marked single player only | They load, but commands built for one player can misbehave with more |
| Maps for an older Minecraft version | Best on that exact version. Newer versions upgrade the world one way and can break its commands |
| Maps for a newer version than the server | No. Update the server first |
Bedrock .mcworld maps and Marketplace maps |
Not on a Java server. Use a Bedrock server for those |
| Modded maps | Only with the same mods and loader on the server |

What goes where
| File or folder | What it holds | Where it goes on the server |
|---|---|---|
<MapName>/ |
The whole map, as a world folder | The server's main folder |
<MapName>/level.dat |
Spawn point, game rules, time, the map's version | Directly inside the map folder |
<MapName>/dimensions/ (26.1+) or region/ (older) |
The terrain and builds | Inside the map folder |
<MapName>/datapacks/ |
Datapacks the map relies on | Inside the map folder, they load with it |
| Resource pack, if the map has one | Custom textures and sounds | A public direct link in resource-pack |
level-name |
Which folder the server loads | server.properties |
Game rules the map maker set, like keep_inventory or no mob griefing, are stored in level.dat, so they come along automatically.
The trap: running the map on the wrong version
Adventure and puzzle maps are built on command blocks and functions, and Minecraft's command syntax changes between versions. Item data, selectors and game rule names have all changed in recent years. Since Minecraft 1.21.11, every game rule has a snake case name like command_blocks_work, according to the Minecraft Wiki's game rule page. A map from a few versions back loads fine on the newest server, but its commands quietly fail: doors that never open, checkpoints that never save, a boss that never spawns.
Opening a world on a newer version also upgrades it in place, and older versions cannot read it again. So:
- Check the version on the map's download page.
- Set the server to that exact version before the first start.
- Keep the original zip, so you can start over if anything goes wrong.
On GamezServers that is the Minecraft version setting, then Update game. Use the Vanilla server type for adventure maps: Paper and Purpur change some redstone and mob behaviour for performance, which can break contraptions a map depends on.
Before you start
- Read the map's notes: version, player count, render distance, and any required resource pack.
- Back up your current world, or keep it in its own folder and only change
level-name. - Stop the server before uploading and editing
server.properties.
Step 1: Unzip and find level.dat
Unzip the download on your PC. Maps are often wrapped in an extra folder, or come with a readme and a resource pack beside them. The folder you want is the one with level.dat directly inside it.
Step 2: Upload the map folder
Upload that folder into the server's main folder. For big maps, upload the zip and extract it on the server, or use SFTP. Check you end up with MapName/level.dat, not MapName/MapName/level.dat.
Step 3: Point the server at it and set the rules
Open server.properties and set:
level-name=MapName
gamemode=adventure
force-gamemode=true
spawn-protection=0
difficulty=normal
allow-flight=true
What each one is for:
| Setting | Why maps need it |
|---|---|
level-name |
Must match the folder name exactly, or the server generates a new world |
gamemode=adventure |
Players can use buttons and levers but cannot break the map |
force-gamemode=true |
Puts everyone back in that mode each time they join |
spawn-protection=0 |
The default 16 can stop players who are not op from using blocks near spawn, which breaks start rooms |
difficulty |
Use what the map asks for. Many maps need mobs, so not peaceful |
allow-flight=true |
Stops the server kicking players launched upward by levitation, elytra or jump pads |
Check command blocks are on. On Minecraft 1.21.8 and older that is enable-command-block=true in server.properties, which is off by default. From 1.21.9 it is a game rule that defaults to on, but a map can save it off, so if nothing happens run /gamerule command_blocks_work true (on 1.21.9 and 1.21.10 the rule is still called commandBlocksEnabled).
Step 4: Add the map's resource pack (if any)
If the map ships with textures, host the pack zip with a direct download link and set it in resource-pack and resource-pack-sha1. See how to add a resource pack to a Minecraft server.
Step 5: Start and play
Start the server and join. You should spawn at the map's start, in adventure mode. Give yourself op only if you need to fix something, and leave the map with players who are not op so its rules apply as designed.
Common problems
- A fresh random world loads:
level-namedoes not match the folder name, or the folder is nested one level too deep. - Buttons and levers at spawn do nothing: spawn protection. Set
spawn-protection=0and restart. - Doors, checkpoints or triggers never fire: command blocks are off, or the server runs a newer version than the map. Set the map's exact version.
- Players get kicked for flying: set
allow-flight=true. - Players can break the map: they are in survival. Use
gamemode=adventurewithforce-gamemode=true. - Redstone machines behave oddly: try the Vanilla server type instead of Paper or Purpur.
Custom maps on GamezServers
On a Minecraft server from GamezServers, the file manager can download a map zip from a link straight to the server and extract it in place, so even large maps go up without passing through your PC. Pick the map's version in your settings, switch the server type to Vanilla if the map needs it, and press Backup before you change worlds. For moving your own worlds, see how to upload a world to a Minecraft server.
FAQ
Where do I put a custom map on a Minecraft server?
In the server's main folder, next to server.properties, as a folder with level.dat inside. Then set level-name to that folder's name.
Why can players not press buttons on my adventure map?
Spawn protection stops players who are not op from using blocks near spawn. Set spawn-protection=0 in server.properties and restart.
Can I switch back to my old world after playing a map?
Yes. Keep both folders on the server and change level-name back, then restart.
Do players need to download the map?
No. The map runs on the server. Players only download a resource pack, if the map uses one.
Skip the setup. Your own Minecraft server.
Then $4.99/mo. Just trying it? $1.25 for 3 days