Editing
Server.properties
(section)
Jump to navigation
Jump to search
Warning:
You are not logged in. Your IP address will be publicly visible if you make any edits. If you
log in
or
create an account
, your edits will be attributed to your username, along with other benefits.
Anti-spam check. Do
not
fill this in!
== Java Edition == === File location === '''This file is automatically generated upon the first start of the server (if it does not exist).''' {| class="wikitable" data-description="File location" |- ! OS ! File Location ! Notes |- ! Windows | In the Working Directory (Defaults to the same folder as {{code|server.jar}}) |If the player starts the server by clicking on either {{code|server.jar}}, a startup script in the same folder, or a shortcut to either of these, then the Working Directory is set to the same folder as {{code|server.jar}}. |- ! Linux Unix <span>Unix/Mac</span> | Path of Working Directory (pwd) | If the player starts it from their home directory ({{code|/home/name}}) the server files are created in /home/name. Follow these guidelines for ensuring that the server files are generated where the player would expect them. * Set aside an entire directory for all of the server files. (''Things could get messy if the player doesn't''). ** The player's server.jar should be placed here. * Use [//d1u5p3l4wpay3k.cloudfront.net/minecraft_gamepedia/a/a9/Minecraft_server_template.txt this script] as a guideline for setting up a startup script for the ''Minecraft'' server. ** It should be in the player's executable {{code|$PATH}} ** Be sure to add the execution permission to the startup script (chmod +x file_name, or use a folder manager) *** minecraft_server.sh |} === Default content === As of [[Java Edition 23w31a|23w31a]], server.jar generates the following if no server.properties is found: <syntaxhighlight lang="properties"> #Minecraft server properties #(File modification date and time) enable-jmx-monitoring=false rcon.port=25575 level-seed= gamemode=survival enable-command-block=false enable-query=false generator-settings={} enforce-secure-profile=true level-name=world motd=A Minecraft Server query.port=25565 pvp=true generate-structures=true max-chained-neighbor-updates=1000000 difficulty=easy network-compression-threshold=256 max-tick-time=60000 require-resource-pack=false use-native-transport=true max-players=20 online-mode=true enable-status=true allow-flight=false initial-disabled-packs= broadcast-rcon-to-ops=true view-distance=10 server-ip= resource-pack-prompt= allow-nether=true server-port=25565 enable-rcon=false sync-chunk-writes=true op-permission-level=4 prevent-proxy-connections=false hide-online-players=false resource-pack= entity-broadcast-range-percentage=100 simulation-distance=10 rcon.password= player-idle-timeout=0 force-gamemode=false rate-limit=0 hardcore=false white-list=false broadcast-console-to-ops=true spawn-npcs=true spawn-animals=true log-ips=true function-permission-level=2 initial-enabled-packs=vanilla level-type=minecraft\:normal text-filtering-config= spawn-monsters=true enforce-whitelist=false spawn-protection=16 resource-pack-sha1= max-world-size=29999984 </syntaxhighlight> === Keys === {| class="wikitable stikitable" data-description="Server properties" |- ! Key ! Type ! Default Value ! Description |- id="allow-flight" |'''allow-flight''' | boolean | false | Allows users to use flight on the server while in Survival mode, if they have a [[mod]] that provides flight installed. With allow-flight enabled, [[griefers]] may become more common, because it makes their work easier. In Creative mode, this has no effect. :'''false''' - Flight is not allowed (players in air for at least 5 seconds get kicked). :'''true''' - Flight is allowed, and used if the player has a fly mod installed. |- id="allow-nether" |'''allow-nether''' | boolean | true | Allows players to travel to the [[Nether]]. :'''false''' - [[Nether]] portals do not work. :'''true''' - The server allows [[portal]]s to send players to the Nether. |- id="broadcast-console-to-ops" |'''broadcast-console-to-ops''' | boolean | true | Send console command outputs to all [[Server#Managing_and_maintaining_a_server|online operators]]. |- id="broadcast-rcon-to-ops" |'''broadcast-rcon-to-ops''' | boolean | true | Send rcon console command outputs to all online operators. |- id="difficulty" |'''difficulty''' | string | easy | Defines the [[difficulty]] (such as damage dealt by mobs and the way hunger and poison affects players) of the server. If a legacy difficulty number is specified, it is silently converted to a difficulty name. :'''peaceful''' (0) :'''easy''' (1) :'''normal''' (2) :'''hard''' (3) |- id="enable-command-block" |'''enable-command-block''' | boolean | false | Enables command blocks |- id="enable-jmx-monitoring" |'''enable-jmx-monitoring''' | boolean | false | Exposes an MBean with the Object name <code>net.minecraft.server:type=Server</code> and two attributes <code>averageTickTime</code> and <code>tickTimes</code> exposing the tick times in milliseconds. In order for enabling JMX on the Java runtime you also need to add a couple of JVM flags to the startup as documented [https://docs.oracle.com/javase/8/docs/technotes/guides/management/agent.html here]. |- id="enable-rcon" |'''enable-rcon''' | boolean | false | Enables remote access to the server console. * It's not recommended to expose RCON to the Internet, because RCON protocol transfers everything without encryption. Everything (including RCON password) communicated between the RCON server and client can be leaked to someone listening in on your connection. |- id="enable-status" |'''enable-status''' | boolean | true | Makes the server appear as "online" on the server list. If set to false, it will suppress replies from clients. This means it will appear as offline, but will still accept connections. |- id="enable-query" |'''enable-query''' | boolean | false | Enables GameSpy4 protocol server listener. Used to get information about server. |- id="enforce-secure-profile" |'''enforce-secure-profile''' | boolean | true | If set to '''true''', players without a Mojang-signed public key will not be able to connect to the server. |- id="enforce-whitelist" |'''enforce-whitelist''' | boolean | false | Enforces the whitelist on the server. When this option is enabled, users who are not present on the whitelist (if it's enabled) get kicked from the server after the server reloads the whitelist file. :'''false''' - No user gets kicked if not on the whitelist. :'''true''' - Online users not on the whitelist get kicked. |- id="entity-broadcast-range-percentage" |'''entity-broadcast-range-percentage''' | integer (10-1000) | 100 | Controls how close entities need to be before being sent to clients. Higher values means they'll be rendered from farther away, potentially causing more lag. This is expressed the percentage of the default value. For example, setting to 50 will make it half as usual. This mimics the function on the client video settings (not unlike Render Distance, which the client can customize so long as it's under the server's setting). |- id="force-gamemode" |'''force-gamemode''' | boolean | false | Force players to join in the default [[game mode]]. :'''false''' - Players join in the gamemode they left in. :'''true''' - Players always join in the default gamemode. |- id="function-permission-level" |'''function-permission-level''' | integer (1-4) | 2 | Sets the default permission level for [[Function (Java Edition)|functions]]. See [[permission level]] for the details on the 4 levels. |- id="gamemode" |'''gamemode''' | string | survival | Defines the [[game mode|mode of gameplay]]. If a legacy gamemode number is specified, it is silently converted to a gamemode name. :'''[[survival]]''' (0) :'''[[creative]]''' (1) :'''[[adventure]]''' (2) :'''[[spectator]]''' (3) |- id="generate-structures" |'''generate-structures''' | boolean | true | Defines whether [[structures]] (such as villages) can be generated. :'''false''' - Structures are not generated in new chunks. :'''true''' - Structures are generated in new chunks. '''Note:''' ''Dungeons still generate if this is set to false.'' |- id="generator-settings" |'''generator-settings''' | string | {} | The settings used to customize world generation. Follow [[Java Edition level format#generatorOptions tag format|its format]] and write the corresponding JSON string. Remember to escape all <code>:</code> with <code>\:</code>. |- id="hardcore" |'''hardcore''' | boolean | false | If set to '''true''', server difficulty is ignored and set to hard and players are set to spectator mode if they die. |- id="hide-online-players" |'''hide-online-players''' | boolean | false | If set to '''true''', a player list is not sent on status requests. |- id="initial-disabled-packs" |'''initial-disabled-packs''' | string |''blank'' | Comma-separated list of datapacks to not be auto-enabled on world creation. |- id="initial-enabled-packs" |'''initial-enabled-packs''' | string | vanilla | Comma-separated list of datapacks to be enabled during world creation. Feature packs need to be explicitly enabled. |- id="level-name" |'''level-name''' | string | world | The "level-name" value is used as the world name and its folder name. The player may also copy their saved game folder here, and change the name to the same as that folder's to load it instead. :Characters such as ' (apostrophe) may need to be escaped by adding a backslash before them. |- id="level-seed" |'''level-seed''' | string |''blank'' | Sets a world [[Seed (level generation)|seed]] for the player's world, as in Singleplayer. The world generates with a random seed if left blank. :Some examples are: minecraft, 404, 1a2b3c. |- id="level-type" |'''level-type''' | string | minecraft:normal | Determines the world preset that is generated. Escaping ":" is required when using a world preset ID, and the vanilla world preset ID's namespace ({{cd|minecraft:}}) can be omitted. :'''minecraft:normal''' - Standard world with hills, valleys, water, etc. :'''minecraft:[[Superflat|flat]]''' - A flat world with no features, can be modified with '''generator-settings'''. :'''minecraft:[[Large Biomes|large_biomes]]''' - Same as default but all biomes are larger. :'''minecraft:[[amplified]]''' - Same as default but world-generation height limit is increased. :'''minecraft:[[Single Biome|single_biome_surface]]''' - A buffet world which the entire overworld consists of one biome, can be modified with '''generator-settings'''. :'''[[buffet]]''' - Only for 1.15 or before. Same as default unless '''generator-settings''' is set. :'''default_1_1''' - Only for 1.15 or before. Same as default, but counted as a different world type. :'''[[Old Customized|customized]]''' - Only for 1.15 or before. After 1.13, this value is no different than default, but in 1.12 and before, it could be used to create a completely custom world. |- id="max-chained-neighbor-updates" |'''max-chained-neighbor-updates''' | integer{{more info|the valid range}} | 1000000 | Limiting the amount of consecutive neighbor updates before skipping additional ones. Negative values remove the limit. |- id="max-players" |'''max-players''' | integer (0-(2^31 - 1)) | 20 | The maximum number of players that can play on the server at the same time. Note that more players on the server consume more resources. Note also, op player connections are not supposed to count against the max players, but ops currently cannot join a full server. However, this can be changed by going to the file called ops.json in the player's server directory, opening it, finding the op that the player wants to change, and changing the setting called bypassesPlayerLimit to true (the default is false). This means that that op does not have to wait for a player to leave in order to join. Extremely large values for this field result in the client-side user list being broken. |- id="max-tick-time" |'''max-tick-time''' | integer (-1 or 0β(2^63 - 1)) | 60000 | The maximum number of milliseconds a single tick may take before the server watchdog stops the server with the message, ''A single server tick took 60.00 seconds (should be max 0.05); Considering it to be crashed, server will forcibly shutdown.'' Once this criterion is met, it calls System.exit(1). :'''-1''' - disable watchdog entirely (this disable option was added in 14w32a) |- id="max-world-size" |'''max-world-size''' | integer (1-29999984) | 29999984 | This sets the maximum possible size in blocks, expressed as a radius, that the [[world border]] can obtain. Setting the world border bigger causes the commands to complete successfully but the actual border does not move past this block limit. Setting the max-world-size higher than the default doesn't appear to do anything. Examples: *Setting max-world-size to 1000 allows the player to have a 2000Γ2000 world border. *Setting max-world-size to 4000 gives the player an 8000Γ8000 world border. |- id="motd" |'''motd''' | string |''A Minecraft Server'' | This is the message that is displayed in the server list of the client, below the name. * The MOTD supports [[Formatting codes#Use in server.properties and pack.mcmeta|color and formatting codes]]. * The MOTD supports special characters, such as "β₯". However, such characters must be converted to escaped Unicode form. An online converter can be found [http://www.freeformatter.com/string-utilities.html#charinfo here]. * If the MOTD is over 59 characters, the server list may report a communication error. |- id="network-compression-threshold" |'''network-compression-threshold''' | integer | 256 | By default it allows packets that are ''n-1'' bytes big to go normally, but a packet of ''n'' bytes or more gets compressed down. So, a lower number means more compression but compressing small amounts of bytes might actually end up with a larger result than what went in. :'''-1''' - disable compression entirely :'''0''' - compress everything '''Note:''' ''The Ethernet spec requires that packets less than 64 bytes become padded to 64 bytes. Thus, setting a value lower than 64 may not be beneficial. It is also not recommended to exceed the MTU, typically 1500 bytes.'' |- id="online-mode" |'''online-mode''' | boolean | true | Server checks connecting players against ''Minecraft'' account database. Set this to false only if the player's server is '''not''' connected to the Internet. Hackers with fake accounts can connect if this is set to false! If minecraft.net is down or inaccessible, no players can connect if this is set to true. Setting this variable to off purposely is called "cracking" a server, and servers that are present with online mode off are called "cracked" servers, allowing players with unlicensed copies of ''[[Minecraft]]'' to join. :'''true''' - Enabled. The server assumes it has an Internet connection and checks every connecting player. :'''false''' - Disabled. The server does not attempt to check connecting players. |- id="op-permission-level" |'''op-permission-level''' | integer (0-4) | 4 | Sets the default [[permission level]] for ops when using {{cmd|op}}. |- id="player-idle-timeout" |'''player-idle-timeout''' | integer | 0 | If non-zero, players are kicked from the server if they are idle for more than that many minutes. :'''Note:''' ''Idle time is reset when the server receives one of the following packets:'' :*[http://wiki.vg/Protocol#Click_Window Click Window] :*[http://wiki.vg/Protocol#Enchant_Item Enchant Item] :*[http://wiki.vg/Protocol#Update_Sign Update Sign] :*[http://wiki.vg/Protocol#Player_Digging Player Digging] :*[http://wiki.vg/Protocol#Player_Block_Placement Player Block Placement] :*[http://wiki.vg/Protocol#Held_Item_Change_.28serverbound.29 Held Item Change] :*[http://wiki.vg/Protocol#Animation_.28serverbound.29 Animation] (swing arm) :*[http://wiki.vg/Protocol#Entity_Action Entity Action] :*[http://wiki.vg/Protocol#Client_Status Client Status] :*[http://wiki.vg/Protocol#Chat_Message_.28serverbound.29 Chat Message] :*[http://wiki.vg/Protocol#Use_Entity Use Entity] |- id="prevent-proxy-connections" |'''prevent-proxy-connections''' | boolean | false | If the ISP/AS sent from the server is different from the one from Mojang Studios' authentication server, the player is kicked. |- id="previews-chat" |'''previews-chat''' | boolean | false | If set to '''true''', chat preview will be enabled. :'''true''' - Enabled. When enabled, a server-controlled preview appears above the chat edit box, showing how the message will look when sent. :'''false''' - Disabled. |- id="pvp" |'''pvp''' | boolean | true | Enable PvP on the server. Players shooting themselves with arrows receive damage only if PvP is enabled. :'''true''' - Players can kill each other. :'''false''' - Players cannot kill other players (also known as '''Player versus Environment''' ('''PvE''')). '''Note:''' ''Indirect damage sources spawned by players (such as [[lava]], [[fire]], [[TNT]] and to some extent [[water]], [[sand]] and [[gravel]]) still deal damage to other players.'' |- id="query.port" |'''query.port''' | integer (1-(2^16 - 2)) | 25565 | Sets the port for the query server (see '''enable-query'''). |- id="rate-limit" |'''rate-limit''' | integer | 0 | Sets the maximum amount of packets a user can send before getting kicked. Setting to 0 disables this feature. |- id="rcon.password" |'''rcon.password''' | string |''blank'' | Sets the password for RCON: a remote console protocol that can allow other applications to connect and interact with a ''Minecraft'' server over the internet. |- id="rcon.port" |'''rcon.port''' | integer (1-(2^16 - 2)) | 25575 | Sets the RCON network port. |- id="resource-pack" |'''resource-pack''' | string |''blank'' | Optional URI to a [[resource pack]]. The player may choose to use it. Note that (in some versions before 1.15.2), the ":" and "=" characters need to be escaped with a backslash (\), e.g. http\://somedomain.com/somepack.zip?someparam\=somevalue The resource pack may not have a larger file size than 250 MiB (Before 1.18: 100 MiB (β 100.8 MB)) (Before 1.15: 50 MiB (β 50.4 MB)). Note that download success or failure is logged by the client, and not by the server. |- id="resource-pack-prompt" |'''resource-pack-prompt''' | string |''blank'' |{{Anchor|resource-pack-prompt}} Optional, adds a custom message to be shown on resource pack prompt when <code>require-resource-pack</code> is used. Expects chat component syntax, can contain multiple lines. |- id="resource-pack-sha1" |'''resource-pack-sha1''' | string |''blank'' |{{Anchor|resource-pack-hash}} Optional SHA-1 digest of the resource pack, in lowercase hexadecimal. It is recommended to specify this, because it is used to verify the integrity of the resource pack. '''Note:''' If the resource pack is any different, a yellow message "Invalid sha1 for resource-pack-sha1" appears in the console when the server starts. Due to the nature of hash functions, errors have a tiny probability of occurring, so this consequence has no effect. |- id="require-resource-pack" |'''require-resource-pack''' | boolean | false |{{Anchor|resource-pack-hash}}When this option is enabled (set to true), players will be prompted for a response and will be disconnected if they decline the required pack. |- id="server-ip" |'''server-ip''' | string |''blank'' | The player should set this if they want the server to bind to a particular IP. It is strongly recommended that the player leaves server-ip blank. :Set to blank, or the IP the player want their server to run (listen) on. |- id="server-port" |'''server-port''' | integer (1-(2^16 - 2)) | 25565 | Changes the port the server is hosting (listening) on. This port must be [[wikipedia:Port forwarding|forwarded]] if the server is hosted in a network using [[wikipedia:Network address translation|NAT]] (if the player has a home router/firewall). |- id="simulation-distance" |'''simulation-distance''' | integer (3-32) | 10 | Sets the maximum distance from players that living entities may be located in order to be updated by the server, measured in chunks in each direction of the player (radius, not diameter). If entities are outside of this radius, then they will not be ticked by the server nor will they be visible to players. ''10 is the default/recommended. If the player has major lag, this value is recommended to be reduced.'' |- id="snooper-enabled" |'''snooper-enabled''' | boolean | true | Sets whether the server sends snoop data regularly to http://snoop.minecraft.net. :'''false''' - disable snooping. :'''true''' - enable snooping. |- id="spawn-animals" |'''spawn-animals''' | boolean | true | Determines if [[animal]]s can spawn. :'''true''' - Animals spawn as normal. :'''false''' - Animals immediately vanish. ''If the player has major lag, it is recommended to turn this off/set to false.'' |- id="spawn-monsters" |'''spawn-monsters''' | boolean | true | Determines if monsters can spawn. :'''true''' - Enabled. Monsters appear at night and in the dark. :'''false''' - Disabled. No monsters. This setting has no effect if difficulty = 0 (peaceful). If difficulty is not = 0, a monster can still spawn from a [[monster spawner]]. ''If the player has major lag, it is recommended to turn this off/set to false.'' |- id="spawn-npcs" |'''spawn-npcs''' | boolean | true | Determines whether villagers can spawn. :'''true''' - Enabled. Villagers spawn. :'''false''' - Disabled. No villagers. |- id="spawn-protection" |'''spawn-protection''' | integer | 16 | Determines the side length of the square [[spawn protection]] area as 2''x''+1. Setting this to 0 disables the spawn protection. A value of 1 protects a 3Γ3 square centered on the spawn point. 2 protects 5Γ5, 3 protects 7Γ7, etc. This option is not generated on the first server start and appears when the first player joins. If there are no [[Server#Managing_and_maintaining_a_server|ops]] set on the server, the spawn protection is disabled automatically as well. |- id="sync-chunk-writes" |'''sync-chunk-writes''' | boolean | true | Enables synchronous chunk writes. |- id="text-filtering-config" |'''text-filtering-config''' | {{more info needed}} | ''blank'' | {{more info needed}} |- id="use-native-transport" |'''use-native-transport''' | boolean | true | Linux server performance improvements: optimized packet sending/receiving on Linux :'''true''' - Enabled. Enable Linux packet sending/receiving optimization :'''false''' - Disabled. Disable Linux packet sending/receiving optimization |- id="view-distance" |'''view-distance''' | integer (3-32) | 10 | Sets the amount of world data the server sends the client, measured in chunks in each direction of the player (radius, not diameter). It determines the server-side viewing distance. ''10 is the default/recommended. If the player has major lag, this value is recommended to be reduced.'' |- id="white-list" |'''white-list''' | boolean | false | Enables a whitelist on the server. With a whitelist enabled, users not on the whitelist cannot connect. Intended for private servers, such as those for real-life friends or strangers carefully selected via an application process, for example. :'''false''' - No white list is used. :'''true''' - The file whitelist.json is used to generate the white list. '''''Note:''''' ''Ops are automatically whitelisted, and there is no need to add them to the whitelist.'' |}
Summary:
Please note that all contributions to Kiiw may be edited, altered, or removed by other contributors. If you do not want your writing to be edited mercilessly, then do not submit it here.
You are also promising us that you wrote this yourself, or copied it from a public domain or similar free resource (see
Kiiw:Copyrights
for details).
Do not submit copyrighted work without permission!
Cancel
Editing help
(opens in new window)
Navigation menu
Personal tools
Not logged in
Talk
Contributions
Create account
Log in
Namespaces
Page
Discussion
English
Views
Read
Edit
View history
More
Navigation
Main page
Recent changes
Random page
Help about MediaWiki
Tools
What links here
Related changes
Special pages
Page information