All maps archive
MinecraftMaps.com
Adventure▼
Parkour▼
Survival▼
Puzzle▼
Horror▼
Mini-Games▼
Builds▼
Tools
MinecraftMaps.com

The largest collection of Minecraft maps. Download adventure, parkour, survival, puzzle, and more maps for free.

DiscordTwitter

Categories

Adventure MapsParkour MapsSurvival MapsPuzzle MapsHorror MapsCreation Maps

Resources

Latest MapsPopular MapsHall of FameSearch MapsMinecraft ToolsSubmit a MapMinecraft Seeds

Information

How to Install MapsFAQAbout UsContactPrivacy PolicyTerms of Service

Game Databases

Palworld DatabaseValheim WikiPersona CompendiumSolarpunk ToolsGothic 1 Remake WikiFatekeeper ToolsRomestead DatabaseStardew Valley Database7 Days to Die DatabaseTerraria Seed ViewerPokemon Card Prices
AFK Arena|Game Guides|Co-op Games|Pokemon Tools|Anime Filler List|Naruto
Copyright © MinecraftMaps.com 2011-2026. All rights reserved.Built for the community♥·Not affiliated with Mojang or Microsoft

Server Properties Generator - Build server.properties

Configure every Minecraft server setting with plain-English help on each option, then copy or download a ready-to-use server.properties file.

Start from a preset
Gameplay
Difficulty, game mode and the core survival rules.
difficulty
World difficulty. Peaceful disables hostile mobs and hunger damage. Hard lets starvation kill you and zombies break doors.
gamemode
Default game mode for players who join for the first time. Survival, Creative, Adventure or Spectator.
force-gamemode
Force every player back to the default game mode each time they log in, overriding their saved mode.
hardcore
Locks difficulty to Hard and bans you to Spectator on death (no respawn). One life for everyone on the server.
pvp
Allow players to damage each other. Turn it off for a friendly co-op or build server.
spawn-monsters
Allow hostile mobs to spawn. Independent of difficulty (Peaceful already prevents hostile mobs regardless).
allow-flight
Allow flight in Survival when a player has a mod or plugin that grants it. Without this, the anti-cheat kicks flying players. Creative flight is always allowed.
allow-nether
Allow players to travel to the Nether through portals. Set false to disable the Nether dimension entirely.
player-idle-timeout
Minutes a player can be idle before they are kicked. 0 disables the idle kick.
enable-command-block
Allow command blocks to run. Off by default on dedicated servers for safety.
World
Save name, seed, world type and generation.
level-name
Folder name of the world save on disk. Change it to load or create a different world.
level-seed
Seed for new world generation. Leave blank for a random seed. Ignored once the world is generated.
level-type
World generation preset. Normal is the default terrain. Superflat is a flat world, Amplified is extreme terrain (demanding).
generator-settings
JSON generator settings, mainly used to configure a superflat or custom world. Leave as {} for defaults.
generate-structures
Generate villages, strongholds, temples and other structures. Set false for a barren world.
initial-enabled-packs
Comma-separated datapacks enabled when a new world is first created. vanilla is the base game content. Add experimental feature packs here to turn them on at world creation.
initial-disabled-packs
Comma-separated datapacks left disabled when a new world is first created. Leave blank to enable everything that is on by default.
max-world-size
Maximum radius of the world from spawn, in blocks. The world border caps here. 29999984 is the absolute limit.
spawn-protection
Radius in blocks around spawn where only operators can build or break. 0 disables spawn protection.
Network
Address, port, player count and the server list entry.
server-ip
IP address to bind to. Leave blank to listen on all interfaces, which is what almost every server wants.
server-port
TCP/UDP port the server listens on. 25565 is the Minecraft default. Forward this port on your router for outside players.
max-players
Maximum number of players allowed online at once. More players need more RAM and CPU.
motd
Message of the day shown under the server name in the multiplayer list. Supports section-sign color codes.
view-distance
Radius of chunks sent to each player, in chunks. Higher values look better but use more bandwidth and CPU.
simulation-distance
Radius of chunks where entities tick, crops grow and redstone runs. Lowering this is the biggest single performance win.
network-compression-threshold
Packets larger than this many bytes are compressed. -1 disables compression. 256 is a good balance for most setups.
use-native-transport
Use optimized native packet handling on Linux. Leave on unless you hit transport issues.
prevent-proxy-connections
Reject players whose authentication IP differs from their connection IP. Can break legitimate VPN users.
rate-limit
Maximum packets per second per client before they are kicked. 0 disables the limit.
status-heartbeat-interval
Seconds between unsolicited status updates pushed to the server list. 0 keeps the classic behaviour where status is only sent when a client pings.
Security and access
Authentication, the whitelist and chat safety.
online-mode
Verify every player against Mojang/Microsoft auth. Keep this on. Turning it off lets anyone join under any name and is only for offline LAN play.
white-list
Only players on whitelist.json may join. Manage names with the /whitelist command in console.
enforce-whitelist
Kick any online player who is removed from the whitelist while the server is running, instead of waiting for reconnect.
op-permission-level
Permission level granted to operators. Level 4 is full control. Lower it to limit what ops can do.
function-permission-level
Permission level that datapack functions run at. Level 2 allows most commands inside functions.
enforce-secure-profile
Require signed chat. Players without a Mojang chat signature cannot send chat messages. Turn off only if you understand the trade-off.
accepts-transfers
Accept players sent here by another server with the transfer packet. Used by server networks and lobbies.
text-filtering-config
Path to a chat text filtering configuration. Leave blank for no filtering.
text-filtering-version
Version number passed to the text filtering service alongside the config. Leave at 0 unless your filtering provider asks for a specific version.
enable-code-of-conduct
Show a code of conduct that players must accept before they can join. Pair it with the conduct text the server reads on startup.
bug-report-link
URL players are pointed to for reporting bugs on your server. Leave blank to hide the link.
command-spam-threshold-seconds
How quickly a player can repeat commands before the anti-spam kicks in, measured in seconds of allowance. Lower it to clamp down on command spam.
chat-spam-threshold-seconds
How quickly a player can send chat messages before the anti-spam kicks them, measured in seconds of allowance. Lower it to slow down chat flooding.
hide-online-players
Hide the player sample list in the server list ping, so the online player names are not shown publicly.
log-ips
Write player IP addresses to the server log on join. Set false to keep IPs out of logs.
Performance
Ticking, world saving and the values you tune when lag hits.
max-tick-time
Milliseconds a single tick may take before the watchdog assumes a crash and stops the server. -1 disables the watchdog.
entity-broadcast-range-percentage
How far entities are sent to players, as a percentage of normal range. Lower reduces bandwidth on crowded servers.
sync-chunk-writes
Flush chunk saves to disk synchronously. Safer against corruption but can stutter on slow disks; some hosts turn it off.
max-chained-neighbor-updates
Cap on consecutive neighbor block updates before they are dropped, a guard against update suppression lag machines.
pause-when-empty-seconds
Pause world ticking after the server has been empty this many seconds, saving CPU. 0 keeps it always running.
region-file-compression
Compression used for region files on disk. lz4 trades larger files for faster chunk I/O.
enable-jmx-monitoring
Expose server metrics over JMX for external monitoring tools.
RCON and query
Remote console and the server status query protocol.
enable-rcon
Enable remote console so you can run commands from outside the game. Set a strong rcon.password before exposing it.
rcon.port
Port the RCON listener binds to. Keep this off the public internet or firewall it.
rcon.password
Password for RCON access. Required when RCON is enabled. Use a long random value, never blank.
broadcast-rcon-to-ops
Echo command output run over RCON to online operators in chat.
broadcast-console-to-ops
Echo console command output to online operators in chat.
enable-query
Enable the GameSpy4 query protocol so listing sites can read live status and player counts.
query.port
UDP port for the query protocol. Often the same as server-port.
enable-status
Respond to server-list pings so the server shows MOTD, version and player count. Off makes the server appear offline in the list.
Management server
The JSON-RPC management API for tooling and dashboards.
management-server-enabled
Enable the JSON-RPC management server so external tools and dashboards can control the server. Off by default. Only turn it on if you need programmatic control.
management-server-host
Host the management server binds to. Keep it on localhost unless you front it with a reverse proxy, never expose it raw to the internet.
management-server-port
Port for the management server. 0 lets the system pick a free port. Set a fixed port if your tooling needs a known one.
management-server-secret
Shared secret clients must present to use the management API. Leave blank and the server generates a strong random secret on startup, which it logs once.
management-server-tls-enabled
Serve the management API over TLS. On by default so the secret is never sent in the clear. Turn it off only behind a trusted proxy that terminates TLS for you.
management-server-tls-keystore
Path to the Java keystore holding the TLS certificate for the management server. Required when TLS is enabled and you supply your own certificate.
management-server-tls-keystore-password
Password for the management server TLS keystore. Set this when you point the server at a keystore file.
management-server-allowed-origins
Comma-separated list of browser origins allowed to call the management API (CORS). Leave blank to allow none, which is safest for non-web tooling.
Resource pack
Server resource pack that players download on join.
resource-pack
Direct download URL of a server resource pack. Players are prompted to apply it when they join.
resource-pack-sha1
SHA-1 hash of the resource pack zip. Lets clients cache it and verify it downloaded intact. Strongly recommended.
resource-pack-id
Stable UUID for the server resource pack so the client can track it across restarts. Leave blank and the server generates one from the pack URL.
resource-pack-prompt
Custom message shown in the resource pack prompt. Supports JSON text components.
require-resource-pack
Kick players who decline the server resource pack, making it mandatory.
server.properties
0 changed
#Minecraft server properties
difficulty=easy
gamemode=survival
force-gamemode=false
hardcore=false
pvp=true
spawn-monsters=true
allow-flight=false
allow-nether=true
player-idle-timeout=0
enable-command-block=false
level-name=world
level-seed=
level-type=minecraft\:normal
generator-settings={}
generate-structures=true
initial-enabled-packs=vanilla
initial-disabled-packs=
max-world-size=29999984
spawn-protection=16
server-ip=
server-port=25565
max-players=20
motd=A Minecraft Server
view-distance=10
simulation-distance=10
network-compression-threshold=256
use-native-transport=true
prevent-proxy-connections=false
rate-limit=0
status-heartbeat-interval=0
online-mode=true
white-list=false
enforce-whitelist=false
op-permission-level=4
function-permission-level=2
enforce-secure-profile=true
accepts-transfers=false
text-filtering-config=
text-filtering-version=0
enable-code-of-conduct=false
bug-report-link=
command-spam-threshold-seconds=10
chat-spam-threshold-seconds=10
hide-online-players=false
log-ips=true
max-tick-time=60000
entity-broadcast-range-percentage=100
sync-chunk-writes=true
max-chained-neighbor-updates=1000000
pause-when-empty-seconds=60
region-file-compression=deflate
enable-jmx-monitoring=false
enable-rcon=false
rcon.port=25575
rcon.password=
broadcast-rcon-to-ops=true
broadcast-console-to-ops=true
enable-query=false
query.port=25565
enable-status=true
management-server-enabled=false
management-server-host=localhost
management-server-port=0
management-server-secret=
management-server-tls-enabled=true
management-server-tls-keystore=
management-server-tls-keystore-password=
management-server-allowed-origins=
resource-pack=
resource-pack-sha1=
resource-pack-id=
resource-pack-prompt=
require-resource-pack=false

Put server.properties in your server folder, next to the server jar, then restart. Everything runs in your browser. Nothing is uploaded.

Minecraft server.properties Generator

server.properties is the plain text settings file that controls a Minecraft Java Edition server: difficulty, game mode, world name, player count, the whitelist and dozens more. This generator gives every setting a typed input and a short explanation, so you can build a correct file without memorizing each key. It covers all the current keys through 26.2.

When you first run a dedicated server, Minecraft writes a default server.properties next to the server jar. Editing it by hand is easy to get wrong: a typo in a key name is silently ignored, and an out-of-range number can stop the server from starting. Use the form above to set what you want, watch the file build live on the right, then copy or download it.

The file is a standard Java properties file: one key=value pair per line. Order does not matter and the server only reads it at startup, so every change needs a restart.

How to Use This Generator

1. Pick a preset (Vanilla Survival, Creative Build, Hardcore or Minigame) to start close to what you want, or leave everything at the vanilla defaults.

2. Change any setting. Booleans toggle on and off, numbers and dropdowns have the valid range built in, and the file preview updates as you type.

3. Use the search box or the show changed only toggle to focus on the keys you care about. Changed keys are marked in green.

4. Copy the file or download server.properties, drop it in your server folder, and restart.

Key Settings Explained

These are the settings most people come to change. The full list, including RCON, query, performance and resource pack options, is in the generator above with a description on each one.

KeyValuesWhat it does
difficultypeaceful / easy / normal / hardHostile mobs and hunger; easy by default
gamemodesurvival / creative / adventure / spectatorDefault mode for new players
max-players0 to 2147483647Player slots; default 20
view-distance2 to 32 chunksRender radius sent to clients; default 10
simulation-distance2 to 32 chunksTick radius; lower this first to fix lag
spawn-protectionblocks (0 disables)Build-protected radius around spawn; default 16
pvptrue / falsePlayers can hurt each other; default true
online-modetrue / falseMojang account check; keep true
white-listtrue / falseRestrict joining to whitelist.json
motdtextServer-list message; supports color codes

Fixing Lag Through server.properties

A laggy server is usually fixed in two lines. simulation-distance is the one to drop first: it sets how far from each player the world actually runs (mobs, redstone, crop growth, hoppers). Going from 10 to 6 roughly halves the active area without changing how far players can see.

view-distance only controls how many chunks are drawn, so it is cheaper on the server but heavier on bandwidth. On a crowded server, entity-broadcast-range-percentage below 100 reduces the entity data sent to each player. Lowering max-players to match what your hardware can really handle prevents the slow death spiral when a server is overfull.

pause-when-empty-seconds stops the world ticking after the server has been empty for a while, which frees the CPU between sessions. None of these touch your world data; they only change how hard the server works.

Securing a Public Server

Keep online-mode set to true so only authenticated accounts can join. If you want a closed server, turn on white-list and add players from the console with /whitelist add. For remote administration, enable-rcon lets you run commands from outside the game, but only ever with a long random rcon.password and the RCON port firewalled off the public internet.

Leave enable-command-block off unless you specifically build with command blocks, and keep op-permission-level no higher than you need. These are the settings that decide who can do what on your server.

Frequently Asked Questions

Where is the server.properties file located?

It sits in your server's root folder, the same folder as the server jar (the .jar you double-click or run). On first launch the server creates a default server.properties there. To use the file from this tool, stop the server, replace the file, then start it again.

How do I change the difficulty in server.properties?

Set the difficulty line to peaceful, easy, normal or hard. Peaceful turns off hostile mobs and hunger damage, hard lets starvation kill you. Save the file and restart the server. You can also change it live with the /difficulty command in the server console.

What does online-mode do and should I turn it off?

online-mode=true checks every player against the official Mojang and Microsoft accounts, so only the real owner of a name can join. Keep it on. Setting it to false lets anyone connect under any username and is only meant for a private offline LAN. A public server with online-mode off will be griefed and impersonated.

What is the best view-distance and simulation-distance for a server?

View distance controls how many chunks are sent to players, simulation distance controls how many chunks actually tick. For a small server 10 is fine. If you lag, lower simulation-distance first (8 or even 6); it is the single biggest performance lever because it shrinks the area where mobs, redstone and crops run.

How do I make my server whitelist only?

Set white-list=true and restart, then add players from the console with /whitelist add PlayerName. Only listed players can join. Set enforce-whitelist=true as well if you want anyone removed from the list to be kicked immediately rather than on their next reconnect.

Do changes to server.properties apply without restarting?

No. The server reads server.properties once at startup, so any edit needs a server restart to take effect. A few settings have an equivalent in-game command (/difficulty, /gamerule, /whitelist) that changes them live, but the file itself is only re-read on launch.

Browse more Minecraft tools:

Game Rules ReferenceBrowse All Tools

Related tools

Ban CommandBuild /ban commands with a reason, plus /pardonBan-IP CommandBuild /ban-ip commands with reason and IPv4 checkBanlist CommandList banned players and IPs on your serverPardon CommandBuild /pardon commands to unban playersPardon-IP CommandUnban an IP address with a valid /pardon-ipKick CommandKick players with an optional reason