How to Configure Your Minecraft Server

Complete server.properties reference for Minecraft Java Edition. All 50+ settings with defaults, valid values, and descriptions.

The server.properties file is the main configuration file for your Minecraft Java server. It controls gameplay, networking, security, performance, and more. This guide covers every available setting.

Changing Server Settings

Stop your server

Go to the XGamingServer panel and stop your Minecraft server.

Open server.properties

Go to Files and open server.properties.

Edit and save

Change the settings you want, then click Save.

Start your server

Start your server to apply the changes.

⚠️ Warning: Always stop your server before editing server.properties. Changes made while the server is running will be overwritten when the server saves on shutdown.

Gameplay Settings

SettingDefaultValuesDescription
gamemodesurvivalsurvival, creative, adventure, spectatorDefault game mode for new players
force-gamemodefalsetrue / falseForce players back to default game mode each time they join
difficultyeasypeaceful, easy, normal, hardServer difficulty. Guide
hardcorefalsetrue / falsePermanent death — players switch to spectator on death. Guide
pvptruetrue / falsePlayer vs player combat. Guide
allow-flightfalsetrue / falseAllow flight in Survival mode. Prevents the anti-fly kick. Guide
spawn-monsterstruetrue / falseHostile mob spawning. Guide
spawn-protection160–unlimitedRadius in blocks around spawn where non-ops can't build. 0 disables. Guide
player-idle-timeout0Minutes (0 = disabled)Kick players after this many minutes of inactivity. Guide
enable-command-blockfalsetrue / falseEnable command blocks. Guide
max-players200–2147483647Maximum concurrent players. Guide

World Settings

SettingDefaultValuesDescription
level-nameworldAny stringName of the world folder
level-seed(blank)Any valueWorld generation seed. Guide
level-typeminecraft\:normalSee belowWorld generation type
generate-structurestruetrue / falseGenerate villages, temples, strongholds, etc.
generator-settings{}JSON stringCustomize generation for flat/single-biome worlds
max-world-size29999984129999984World border radius in blocks from center
initial-enabled-packsvanillaComma-separatedData packs enabled on world creation
initial-disabled-packs(blank)Comma-separatedData packs excluded from auto-enabling

level-type Values

Since Minecraft 1.19+, level-type uses namespaced values. The colon must be escaped with a backslash in server.properties:

ValueDescription
minecraft\:normalStandard world generation (default)
minecraft\:flatSuperflat world
minecraft\:large_biomesBiomes are 4x larger than normal
minecraft\:amplifiedExtreme terrain heights up to Y=256. Resource-intensive
minecraft\:single_biome_surfaceSingle-biome world (set biome via generator-settings)

⚠️ Warning: Using the old un-namespaced values like flat or amplified may not work on 1.19+ servers. Always use the minecraft\: prefix.

Server Display

SettingDefaultValuesDescription
motdA Minecraft ServerAny stringMessage shown in the server list. Supports color codes with \u00A7. Guide
enable-statustruetrue / falseShow server as "online" in the server list
hide-online-playersfalsetrue / falseHide the player list from server status requests
bug-report-link(blank)URLCustom bug report link shown to players

Network Settings

SettingDefaultValuesDescription
server-ip(blank)IP addressIP the server binds to. Leave blank for all interfaces
server-port25565165534TCP port the server listens on
network-compression-threshold256Integer (-1 = disabled)Minimum packet size in bytes before compression
use-native-transporttruetrue / falseUse optimized Linux networking (epoll). Leave true
rate-limit0Integer (0 = disabled)Max packets per second from a client before kick
prevent-proxy-connectionsfalsetrue / falseKick players if their ISP doesn't match Mojang's auth server
accepts-transfersfalsetrue / falseAccept incoming player transfers (1.20.5+)

Performance Settings

These settings have the biggest impact on server performance. See the Performance Guide for recommended values.

SettingDefaultValuesDescription
view-distance10332 chunksHow far the server sends world data to clients. Guide
simulation-distance10332 chunksHow far from players entities and blocks are ticked
sync-chunk-writestruetrue / falseSynchronous chunk writes. Set to false for better performance
entity-broadcast-range-percentage100101000Percentage of default entity tracking distance
max-chained-neighbor-updates1000000Integer (negative = disabled)Limit consecutive neighbor block updates
max-tick-time60000-1 or 0+ (ms)Max ms a tick can take before the watchdog kills the server. -1 disables
region-file-compressiondeflatedeflate, lz4, noneChunk file compression algorithm
pause-when-empty-seconds60Integer (-1 = disabled)Seconds with no players before the server pauses ticking (1.21.2+)

💡 Tip: The three most impactful performance settings are view-distance, simulation-distance, and sync-chunk-writes. Lowering view and simulation distance reduces loaded chunks dramatically. Setting sync-chunk-writes=false prevents I/O bottlenecks.

Security Settings

SettingDefaultValuesDescription
online-modetruetrue / falseVerify players against Mojang. Never disable unless using a proxy
white-listfalsetrue / falseEnable the whitelist. Guide
enforce-whitelistfalsetrue / falseKick non-whitelisted players immediately when whitelist reloads
enforce-secure-profiletruetrue / falseRequire Mojang-signed player profiles. Disable for offline-mode or some proxies
log-ipstruetrue / falseLog player IP addresses to console
op-permission-level404Default permission level for operators
function-permission-level214Permission level for data pack functions

Operator Permission Levels

LevelPermissions
1Bypass spawn protection
2Use /clear, /difficulty, /effect, /gamemode, /gamerule, /give, /summon, /tp, and edit command blocks
3Use /ban, /deop, /kick, /op, /whitelist
4Use /stop, /reload, and all commands

Query and RCON

SettingDefaultValuesDescription
enable-queryfalsetrue / falseEnable GameSpy4 query protocol
query.port25565165534UDP port for query
enable-rconfalsetrue / falseEnable RCON remote console. Guide
rcon.port25575165534TCP port for RCON
rcon.password(blank)Any stringRCON password
broadcast-rcon-to-opstruetrue / falseSend RCON output to online operators
broadcast-console-to-opstruetrue / falseSend console output to online operators

Resource Pack

SettingDefaultValuesDescription
resource-pack(blank)URLDownload URL for the server resource pack
resource-pack-id(blank)UUIDUnique identifier for the resource pack
resource-pack-sha1(blank)40-char hexSHA-1 hash for verification
resource-pack-prompt(blank)JSON chat componentCustom message on the resource pack prompt
require-resource-packfalsetrue / falseDisconnect players who decline the pack

All Settings Quick Reference

The complete alphabetical list of all server.properties settings:

server.properties
accepts-transfers=false
allow-flight=false
broadcast-console-to-ops=true
broadcast-rcon-to-ops=true
bug-report-link=
difficulty=easy
enable-command-block=false
enable-jmx-monitoring=false
enable-query=false
enable-rcon=false
enable-status=true
enforce-secure-profile=true
enforce-whitelist=false
entity-broadcast-range-percentage=100
force-gamemode=false
function-permission-level=2
gamemode=survival
generate-structures=true
generator-settings={}
hardcore=false
hide-online-players=false
initial-disabled-packs=
initial-enabled-packs=vanilla
level-name=world
level-seed=
level-type=minecraft\:normal
log-ips=true
max-chained-neighbor-updates=1000000
max-players=20
max-tick-time=60000
max-world-size=29999984
motd=A Minecraft Server
network-compression-threshold=256
online-mode=true
op-permission-level=4
pause-when-empty-seconds=60
player-idle-timeout=0
prevent-proxy-connections=false
pvp=true
query.port=25565
rate-limit=0
rcon.password=
rcon.port=25575
region-file-compression=deflate
require-resource-pack=false
resource-pack=
resource-pack-id=
resource-pack-prompt=
resource-pack-sha1=
server-ip=
server-port=25565
simulation-distance=10
spawn-monsters=true
spawn-protection=16
sync-chunk-writes=true
use-native-transport=true
view-distance=10
white-list=false

See also: Performance Guide | Change Difficulty | Change View Distance | Adding a Whitelist | RCON

If you need help, join our Discord.

How is this guide?

40% Off — Limited TimeGet your Minecraft server todayInstant setup, DDoS protection, and 24/7 support included.
Get a Server

On this page