Most Minecraft server settings live in server.properties, in the top folder of your server. Change the common ones in Settings with plain labels. Edit the full file under Advanced in Settings, or in Files, then restart the server.
Where the files are
| File | Edition | What it holds |
|---|---|---|
server.properties |
Both | The main settings in the tables below |
eula.txt |
Java | eula=true once you accept the Minecraft EULA. We write it when you tick the box at create |
ops.json |
Java | Operators (admins) and their level |
whitelist.json |
Java | Players allowed to join when the whitelist is on |
banned-players.json, banned-ips.json |
Java | Banned players and IP addresses |
allowlist.json |
Bedrock | Players allowed to join when the allowlist is on |
permissions.json |
Bedrock | Each player’s role: visitor, member or operator |
bukkit.yml, spigot.yml, config/paper-global.yml, config/paper-world-defaults.yml |
Java, Paper and Purpur | Paper’s extra settings |
purpur.yml |
Java, Purpur | Purpur’s extra settings |
config/ |
Java with mods | One file per mod, created on the first start |
How to change settings
- Easy settings: open Settings. Things like difficulty, game mode, PvP, max players and the whitelist have plain labels. The panel writes them into the right file for you.
- Advanced: the real files, one tap away in Settings. Edit a line, save, then restart. If you edit a file by hand, the easy settings read your change rather than overwrite it.
- Files: the same files in the file manager, plus every other config. SFTP works too, on port
2022with the details from the SFTP card in Files.
Changes to server.properties apply on the next start, so press Restart on Overview after saving. A sleeping server picks them up when it wakes.
Settings marked “new worlds only” do nothing to a world that already exists. To use them, make a new world from Games. Your current world stays safe in its own save.
Java server.properties
Defaults below are from a fresh 26.3 server.
| Key | Default | What it does |
|---|---|---|
motd |
A Minecraft Server |
The message under your server’s name in the server list |
difficulty |
easy |
peaceful, easy, normal or hard |
gamemode |
survival |
Game mode for new players: survival, creative, adventure or spectator |
force-gamemode |
false |
true puts every player in the default game mode each time they join |
hardcore |
false |
One life, then spectator mode. New worlds only |
max-players |
20 |
How many players can be online at once |
white-list |
true |
Only players on the whitelist (and operators) can join. Was false before 26.3 |
enforce-whitelist |
false |
true kicks online players who aren’t on the list when it reloads |
online-mode |
true |
Checks every player’s Minecraft account. Keep it on, or anyone can join under any name |
view-distance |
10 |
How far players can see, in chunks (16 by 16 block squares) |
simulation-distance |
10 |
How far from players mobs, crops and redstone keep working, in chunks |
spawn-protection |
16 |
Blocks around spawn that only operators can change. 0 turns it off |
allow-flight |
false |
true stops players being kicked for flying, which some mods need |
player-idle-timeout |
0 |
Kick players who are idle for this many minutes. 0 means never |
pause-when-empty-seconds |
60 |
The game pauses after this long with nobody online |
level-name |
world |
The world folder’s name |
level-seed |
(empty) | The world seed. Empty means random. New worlds only |
level-type |
minecraft:normal |
minecraft:flat, minecraft:large_biomes or minecraft:amplified. New worlds only |
generate-structures |
true |
Villages, temples and other structures. New worlds only |
max-world-size |
29999984 |
How far out the world border can go, in blocks |
op-permission-level |
4 |
The level new operators get, from 1 to 4. See op levels |
enforce-secure-profile |
true |
Players need a chat signing key from Mojang to join. Leave it on |
resource-pack |
(empty) | A download link for a resource pack players get when they join |
require-resource-pack |
false |
true disconnects players who decline the pack |
entity-broadcast-range-percentage |
100 |
How far away players see mobs, as a percentage |
sync-chunk-writes |
true |
Safer saving. Leave it on |
Keys we set for you and you should leave alone: server-port, server-ip, enable-rcon, rcon.port, rcon.password, enable-query, query.port and the management-server keys. Changing them can stop players from reaching the server.
Java game rules
Since 1.21.9, PvP, monsters, the Nether and command blocks are game rules, not server.properties keys. Change them in the easy settings, or with a command in Console:
gamerule pvp falseGame rules are saved inside the world and apply at once. These names work on 1.21.11 and later, when game rules got lowercase names with underscores.
| Game rule | Default | What it does |
|---|---|---|
pvp |
true |
Players can hurt each other |
spawn_monsters |
true |
Hostile mobs spawn |
keep_inventory |
false |
Players keep their items when they die |
mob_griefing |
true |
Creepers blow up blocks, endermen pick them up |
players_sleeping_percentage |
100 |
Share of players who must sleep to skip the night |
allow_entering_nether_using_portals |
true |
Nether portals work |
command_blocks_work |
true |
Command blocks run their commands |
advance_time |
true |
Day and night move on |
On 1.21.8 and older, use server.properties instead: pvp, spawn-monsters, allow-nether and enable-command-block. On 1.21.10 and older, game rules use the old names, like keepInventory.
Bedrock server.properties
Defaults below are from a fresh Bedrock Dedicated Server 1.26.63.
| Key | Default | What it does |
|---|---|---|
server-name |
Dedicated Server |
The name shown in the server list and pause menu |
gamemode |
survival |
survival, creative or adventure for new players |
force-gamemode |
false |
true makes the server use this game mode even after the world was made |
difficulty |
easy |
peaceful, easy, normal or hard |
allow-cheats |
false |
true lets operators use most commands in game |
max-players |
10 |
How many players can be online at once |
online-mode |
true |
Every player must be signed in to a Microsoft account. Keep it on |
allow-list |
true |
Only players in allowlist.json can join |
default-player-permission-level |
member |
The role new players get: visitor, member or operator |
view-distance |
32 |
The most chunks a player may see. Lower it to save memory |
tick-distance |
4 |
How far from players the world keeps running, from 4 to 12 chunks |
player-idle-timeout |
30 |
Kick idle players after this many minutes. 0 means never |
max-threads |
8 |
How many CPU threads the server may use |
level-name |
Bedrock level |
The world folder inside worlds |
level-seed |
(empty) | The world seed. New worlds only |
texturepack-required |
false |
true makes players use the world’s resource packs |
chat-restriction |
None |
Dropped blocks chat for everyone, Disabled hides it for everyone but operators |
disable-custom-skins |
false |
true blocks skins made outside the game’s own skin packs |
Keys we set for you and you should leave alone: server-port, server-portv6, server-ip, transport, server-udp-ports and enable-lan-visibility. They decide how players reach the server.
Bedrock game rules work the same way, with lowercase names: gamerule pvp false, gamerule keepinventory true. In game, most commands, including gamerule, need allow-cheats=true.
Settings you can change without a restart
- Difficulty:
difficulty hardon both editions. It goes back to theserver.propertiesvalue on the next start, so change it in Settings too. - Game rules:
gameruleon both editions. - Bedrock cheats:
changesetting allow-cheats trueturns cheats on until the next restart. It doesn’t edit the file. - Whitelist and ops: commands like
whitelist addandopapply at once. If you editwhitelist.jsonorallowlist.jsonby hand, runwhitelist reload(Java) orallowlist reload(Bedrock).
Admin, whitelist and ban files
You rarely need to edit these by hand. Settings > Players and the commands in the ops and whitelist guide keep them right. If you do edit one, keep it valid JSON: square brackets around the list, commas between entries and no comma after the last one. The editor in Files checks JSON before it saves.
A Java ops.json entry looks like this:
[
{
"uuid": "123e4567-e89b-12d3-a456-426614174000",
"name": "YourName",
"level": 4,
"bypassesPlayerLimit": false
}
]A Bedrock allowlist.json entry needs only the gamertag. The server fills in the player’s ID the first time they join:
[
{ "name": "YourGamertag", "ignoresPlayerLimit": false }
]Questions
Where is server.properties on my Minecraft server?
In the top folder of the server, next to eula.txt. Open it in Settings under Advanced, or in the Files tab. Most of its settings also have an easy switch in Settings.
Why is there no pvp line in my Minecraft server.properties?
Since Java 1.21.9, PvP, monsters, the Nether and command blocks are game rules, not server.properties keys. Use the easy settings, or a command such as gamerule pvp false in the Console.
Do I need to restart after changing server.properties?
Yes. The server reads server.properties when it starts, so restart after saving. Game rules, the whitelist and ops change at once with commands.
Can I change the seed of my Minecraft world?
The seed only applies when a world is first made. Set a new seed, then make a new world from the Games tab. Your old world stays in its own save.
Sources we checked
- Server.propertiesMinecraft Wiki
- Bedrock Dedicated Server propertiesMicrosoft
- Game ruleMinecraft Wiki
