server.properties

来自Minecraft Wiki
跳转至: 导航搜索

Java版默认的server.properties文件。

server.properties是储存多人游戏(Minecraft或Minecraft Classic)服务器所有设置的文件。

在编辑server.properties时,就算不同行之间的顺序可以打乱,确保其与原始的文件有相同的结构也很重要。每一行的等号之前的文本为变量名,您不应该修改这些内容。等号后面为变量的值,您可以按照规则自行编辑。以#开头的行为注释,添加、修改或移除注释行不会对游戏造成影响。

保存了server.properties的更改之后,服务端必须重新启动才能使更改生效。

如果server.properties文件未列出下文中所有的属性(例如服务端版本更新加入新属性,或该文件还未创建),那么服务器在启动时会重写server.properties补全缺失的属性,并将缺失的属性值设为默认值。

文件位置[编辑 | 编辑源代码]

Java版[编辑 | 编辑源代码]

该文件会在服务端第一次运行时自动生成(如果本来没有的话)。

操作系统 文件位置 注解
Windows server.jar 的相同目录下
Linux

Unix Unix/Mac

工作目录路径(pwd)

如果你在你的 home 目录下启动(/home/用户名),服务端文件也会在/home/用户名下创建。请按照下列步骤确保服务端文件能够如你预期地正确生成。

  • 准备一个完整的文件夹来存放所有服务端文件。(如果你不这么做的话事情会一团糟)
    • server.jar放置(复制、移动)进去。
  • 使用这个脚本指导设置你的Minecraft服务端启动脚本。
    • 确保它位于你的可执行目录 $PATH
    • 确保你具有启动脚本的执行权限(chmod +x 文件名,或使用文件夹管理器)
      • minecraft_server.sh

基岩版[编辑 | 编辑源代码]

本文件会与bedrock_server.exe一同下载。

操作系统 文件位置
Windows bedrock_server.exe的相同目录下
Linux bedrock_server的相同目录下

server.properties[编辑 | 编辑源代码]

新安装的Minecraft服务器具有以下默认设置:

Java版[编辑 | 编辑源代码]

#Minecraft server properties
#(文件修改时间戳)
broadcast-rcon-to-ops=true
view-distance=10
max-build-height=256
server-ip=
level-seed=
rcon.port=25575
gamemode=survival
server-port=25565
allow-nether=true
enable-command-block=false
enable-rcon=false
enable-query=false
sync-chunk-writes=true
op-permission-level=4
prevent-proxy-connections=false
generator-settings=
resource-pack=
level-name=world
rcon.password=
player-idle-timeout=0
motd=A Minecraft Server
query.port=25565
force-gamemode=false
hardcore=false
white-list=false
broadcast-console-to-ops=true
pvp=true
spawn-npcs=true
generate-structures=true
spawn-animals=true
snooper-enabled=true
difficulty=easy
function-permission-level=2
network-compression-threshold=256
level-type=default
spawn-monsters=true
max-tick-time=60000
enforce-whitelist=false
use-native-transport=true
max-players=20
resource-pack-sha1=
spawn-protection=16
online-mode=true
allow-flight=false
max-world-size=29999984

基岩版[编辑 | 编辑源代码]

server-name=Dedicated Server
gamemode=survival
difficulty=easy
allow-cheats=false
max-players=10
online-mode=true
white-list=false
server-port=19132
server-portv6=19133
view-distance=32
tick-distance=4
player-idle-timeout=30
max-threads=8
level-name=Bedrock level
level-seed=
default-player-permission-level=member
texturepack-required=false
content-log-file-enabled=false
compression-threshold=1
server-authoritative-movement=true
player-movement-score-threshold=20
player-movement-distance-threshold=0.3
player-movement-duration-threshold-in-ms=500
correct-player-movement=false

Minecraft服务器属性[编辑 | 编辑源代码]

Java版[编辑 | 编辑源代码]

属性 类型 默认值 描述
allow-flight 布尔值 false 允许玩家在安装添加飞行功能的mod前提下在生存模式下飞行。

允许飞行可能会使恶意破坏者更加常见,因为此设定会使他们更容易达成目的。在创造模式下无作用。

false - 不允许飞行。悬空超过5秒的玩家会被踢出服务器。
true - 允许飞行。玩家得以使用任何能飞行的mod飞行。
allow-nether 布尔值 true 允许玩家进入下界
false - 下界传送门不会生效。
true - 玩家可以通过下界传送门前往下界。
difficulty 字符串 easy 定义服务器的游戏难度(例如生物对玩家造成的伤害,饥饿和中毒对玩家的影响方式等)。

如果设置了旧的数字ID,则会自动转化为英文的难度名称。

peaceful (0) - 和平
easy (1) - 简单
normal (2) - 普通
hard (3) - 困难
enable-command-block 布尔值 false 是否启用命令方块
enable-query 布尔值 false 允许使用GameSpy4协议的服务器监听器。用于获取服务器信息。
enable-rcon 布尔值 false 是否允许远程访问服务器控制台。
force-gamemode 布尔值 false 强制玩家加入时为默认游戏模式
false - 玩家将以退出前的游戏模式加入
true - 玩家总是以默认游戏模式加入
function-permission-level 整数 (1-4) 2 设定函数的默认权限等级。

4个等级的详情见 #op-permission-level

gamemode 字符串 survival 定义默认游戏模式

如果值是旧用的数字,会静默转换为对应游戏模式的英文名称。

survival (0) - 生存模式
creative (1) - 创造模式
adventure (2) - 冒险模式
spectator (3) - 旁观模式
generate-structures 布尔值 true 定义是否能生成结构(例如村庄)。
false - 新生成的区块中将不包含结构。
true - 新生成的区块中将包含结构。

注:即使设为false,地牢仍然会生成。

generator-settings 字符串 空白 本属性质用于自定义世界的生成。详见超平坦世界自定义了解正确的设定及例子。
hardcore 布尔值 false 如果设为 true,服务器难度的设置会被忽略并且设为 hard(困难),玩家在死后会自动切换至旁观模式。
level-name 字符串 world “level-name”的值将作为世界名称及其文件夹名。你也可以把你已生成的世界存档复制过来,然后让这个值与那个文件夹的名字保持一致,服务器就可以载入该存档。
部分字符,例如 ' (单引号)可能需要在前面加反斜杠号 \ 才能被正常应用。
level-seed 字符串 空白 与单人游戏类似,为你的世界定义一个种子
这里有一些例子:minecraft,404,1a2b3c。
level-type 字符串 default 确定地图所生成的类型
default - 带有丘陵,河谷,海洋等的标准的世界。
flat - 一个没有特性的平坦世界,可用generator-settings修改。
largebiomes - 如同预设(default)世界,但所有生物群系都更大。
amplified - 如同预设世界,但世界生成高度提高。
buffet - 如同预设世界,但generator-settings设置后不同。
max-build-height 整数 256 玩家在游戏中能够建造的最大高度。可能会在该值较小时生成超过该值的地形。
max-players 整数(0-2147483647) 20 服务器同时能容纳的最大玩家数量。请注意,在线玩家越多,对服务器造成的负担也就越大。同样注意,服务器的OP具有在人满的情况下强行进入服务器的能力:找到在服务器根目录下叫ops.json的文件并打开,将需要此能力的OP下的bypassesPlayerLimit选项设置为true即可(默认值为false),这意味着OP将不需要在服务器人满时等待有玩家离开后再加入。过大的数值会使客户端显示的玩家列表崩坏。
max-tick-time
整数(0–(2^63 - 1)) 60000 设置每个tick花费的最大毫秒数。超过该毫秒数时,服务器看门狗将停止服务器程序并附带上信息:服务器的一个tick花费了60.00秒(最长也应该只有0.05秒);判定服务器已崩溃,它将被强制关闭。遇到这种情况的时候,它会调用 System.exit(1)。

译者注:如果你监测服务程序的返回代码,此时返回代码会为1。(习惯上,程序正常退出应当返回0)

-1 - 完全停用看门狗(这个停用选项在 14w32a 快照中添加)
max-world-size
整数(1-29999984) 29999984 设置可让世界边界获得的最大半径值,单位为方块。通过成功执行的命令能把世界边界设置得更大,但不会超过这里设置的最大方块限制。如果设置的 max-world-size 超过默认值的大小,那将不会起任何效果。

例如:

  • 设置 max-world-size为1000将会有2000x2000的地图边界。
  • 设置 max-world-size为4000将会有8000x8000的地图边界。
motd 字符串 A Minecraft Server 本属性值是玩家客户端的多人游戏服务器列表中显示的服务器信息,显示于名称下方。
  • MOTD 支持样式代码
  • MOTD 支持特殊符号,比如"♥"。然而,这些符号需要转换为Unicode转义字符。你可以在这里找到一个转换器。
  • 如果MOTD超过59个字符,服务器列表很可能会返回“通讯错误”。
network-compression-threshold
整数 256 默认会允许n-1字节的数据包正常发送, 如果数据包为n字节或更大时会进行压缩。所以,更低的数值会使得更多的数据包被压缩,但是如果被压缩的数据包字节太小将反而使压缩后字节更大。
-1 - 完全禁用数据包压缩
0 - 压缩全部数据包

注:以太网规范要求把小于64字节的数据包填充为64字节。因此,设置一个低于64的值可能没有什么好处。也不推荐让设置的值超过MTU(通常为1500字节)。

online-mode 布尔值 true 是否让服务器对比Minecraft账户数据库验证登录信息。只有在你的服务器并未与 Internet 连接时,才将这个值设为false。如果设为false,黑客就能够使用任意假账户连接服务器!如果minecraft.net服务器宕机或不可访问,那么该值设为true的服务器会因为无法验证玩家身份而拒绝所有玩家加入。通常,这个值设为true的服务器被称为“正版服务器”。故意设定该变量为false的服务器称为“破解服务器”,这类服务器允许拥有未授权的Minecraft副本的玩家加入。
true - 启用。服务器会认为自己具有 Internet 连接,并检查每一位连入的玩家。
false - 禁用。服务器不会尝试检查玩家。
op-permission-level 整数(1-4) 4 设定使用/op命令时OP的权限等级。所有存档会从之前的存档继承能力和命令。
1 - OP可以绕过重生点保护。
2 - OP可以使用所有单人游戏作弊命令(除了/publish,因为不能在服务器上使用;/debug也是)并使用命令方块。命令方块和领域服服主/管理员有此等级权限。
3 - OP可以使用大多数多人游戏中独有的命令,包括 /debug,以及管理玩家的命令(/ban/op等等)。
4 - OP可以使用所有命令,包括 /stop, /save-all, /save-on/save-off
player-idle-timeout 整数 0 如果不为0,服务器将在玩家的空闲时间达到设置的时间(单位为分钟)时将玩家踢出服务器
注:当服务器接受到下列数据包之一时将会重置空闲时间:
prevent-proxy-connections 布尔值 false 如果服务器发送的ISP/AS和Mojang的验证服务器的不一样,玩家将会被踢出。
true - 启用。服务器将会禁止玩家使用虚拟专用网络或代理。
false - 禁用。服务器将不会禁止玩家使用虚拟专用网络或代理。
pvp 布尔值 true 是否允许PvP。也只有在允许PvP时玩家自己的箭才会受到伤害。
true - 玩家可以互相残杀。
false - 玩家无法互相造成伤害(也称作玩家对战环境PvE))。

注:由玩家造成的间接伤害(例如熔岩TNT等,某种程度上还有沙子沙砾)还是会伤害其他玩家。

query.port 整数(1-65534) 25565 设置监听服务器的端口号(参见 enable-query)。
rcon.password 字符串 空白 设置RCON远程访问的密码(参见enable-rcon)。RCON:能允许其他应用程序通过互联网与Minecraft服务器连接并交互的远程控制台协议。
rcon.port 整数(1-65534) 25575 设置RCON远程访问的端口号。
resource-pack 字符串 空白 可选选项,可输入指向一个资源包的URI。玩家可选择是否使用该资源包。

注意若该值含":"和"="字符,需要在其前加上反斜线(\),例如 http\://somedomain.com/somepack.zip?someparam\=somevalue

资源包大小理应不能超过50 MiB(≈ 50.4 MB)。注意,下载成功或失败由客户端记录,而非服务器。

resource-pack-sha1 字符串 空白 资源包的SHA-1值,必须为小写十六进制,建议填写它。这还没有用于验证资源包的完整性,但是它提高了资源包缓存的有效性和可靠性。
server-ip 字符串 空白 将服务器与一个特定IP绑定。强烈建议留空该属性值!
留空,或是填入你想让服务器绑定(监听)的IP。
server-port 整数(1-65534) 25565 改变服务器(监听的)端口号。如果服务器在使用NAT的网络中运行,该端口必须被转发(在你有家用路由器/防火墙的前提下)。
snooper-enabled 布尔值 true 是否允许服务端定期发送统计数据到http://snoop.minecraft.net。
false - 禁用数据采集
true - 启用数据采集
spawn-animals 布尔值 true 决定动物是否可以生成。
true - 动物可以正常生成。
false - 动物生成后会立即消失。

提示:如果你有严重的卡顿,可以设为false。

spawn-monsters 布尔值 true 决定攻击型生物(怪物)是否可以生成。
true - 启用。怪物会生成于夜晚和黑暗处。
false - 禁用。不会有任何怪物。

如果difficulty=0(即难度设置为和平)的话,该属性值不会有任何影响。

提示:如果你有严重的卡顿,可以设为false。

spawn-npcs 布尔值 true 决定是否生成村民
true - 启用。生成村民。
false - 禁用。不会有村民。
spawn-protection 整数 16 通过将该值进行2x+1的运算来决定出生点的保护半径。设置为0将不会禁用出生点保护,但会保护位于出生点的那一个方块。设置为1会保护以出生点为中心的3x3方块的区域,2会保护5x5方块的区域,3会保护7x7方块的区域,以此类推。这个选项不在第一次服务器启动时生成,只会在第一个玩家加入服务器时出现。如果服务器没有设置OP,这个选项会自动禁用。
sync-chunk-writes 布尔值 true 启用后区块文件以同步模式写入。
use-native-transport 布尔值 true 是否使用针对Linux平台的数据包收发优化。此选项仅会在Linux平台上生成。
true - 启用。启用Linux数据包收发优化。
false - 禁用。禁用Linux数据包收发优化。
view-distance 整数(3-32) 10 设置服务端发送给客户端的世界数据量,也就是设置玩家各个方向上的区块数量(是以玩家为中心的半径,不是直径)。它决定了服务端的可视距离。(另见渲染距离

默认/推荐设置为10,如果有严重卡顿的话,减少该数值。

注:该值小于9时会对服务器上的生物生成有显著影响,详见bugMC-2536

white-list 布尔值 false 启用服务器的白名单。

当启用时,只有白名单上的用户才能连接服务器。白名单主要用于私人服务器,例如提供给相识的朋友、通过应用流程谨慎选择的陌生人等。

false - 不使用白名单。
true - 从whitelist.json文件加载白名单。

注: OP会自动被视为在白名单上,所以无需再将OP加入白名单。

enforce-whitelist 布尔值 false 在服务器上强制执行白名单。

当启用后,不在白名单(前提是启用)中的用户将在服务器重新加载白名单文件后从服务器踢出。

true - 不在白名单上的用户会被踢出。
false - 不在白名单上的在线用户不会被踢出。

Java版1.12之前的版本中,announce-player-achievements 布尔值(默认为true)属性用于切换是否成就要广播给所有玩家。该属性已被移除,但如果已经设置了这条属性,则游戏规则announceAdvancements将自动更新,随后从文件中删除这条属性。

基岩版[编辑 | 编辑源代码]

属性名称 可选值 默认值 何时生效 作用 备注
gamemode survival (0), creative (1), adventure (2) survival 总是生效或新玩家进入时 设定新玩家的游戏模式。 survival (0) - 生存模式

creative (1) - 创造模式 adventure (2) - 冒险模式

difficulty peaceful (0), easy (1), normal (2), hard (3) easy 总是生效 设置世界的游戏难度。 peaceful (0) - 和平

easy (1) - 简单 normal (2) - 普通 hard (3) - 困难

level-type FLAT, LEGACY, DEFAULT DEFAULT 生成地形时 决定生成的地图的类型。 FLAT-超平坦

LEGACY-旧世界类型 DEFAULT-默认

server-name 任意字符串 Dedicated Server 总是生效 用作服务器的名称 作为服务器在游戏内服务器列表中显示的名称。
max-players 正整数 10 总是生效 设置服务器同时能容纳的最大玩家数量。 这是应该能在服务器上游戏的玩家的最大数量。较高的值可能会影响服务器性能。
server-port 任意整数 19132 总是生效 设置服务器监听的IPv4端口号。
server-portv6 任意整数 19133 总是生效 设置服务器监听的IPv6端口号。
level-name 任意字符串 level 总是生效 该值用于世界的名称以及文件夹名。你也可以复制你的存档到这里,并把该值修改成文件夹的名称,以此替换服务器加载的存档。 使用/生成的存档名称。每个存档在/worlds中都有单独的文件夹。
level-seed 任意字符串 空白(th34f1ju34facjn5f871df312h) 生成地形时 用于将世界随机化 为世界定义一个种子。留空将随机选择种子。
online-mode true, false true 总是生效 是否身份验证 如果为true,则每个连接的玩家都必须与Xbox Live进行身份验证。
white-list true, false false 总是生效 是否开启白名单 如果为true,则玩家都必须要在whitelist.json文件中才能登录服务器。
allow-cheats true, false false 总是生效 是否允许作弊 如果为true,则服务器将允许作弊行为(例如使用命令)。
view-distance 任意整数 10 总是生效 设置玩家可视距离最大值 单位为区块。较高的值可能会影响服务器性能。
player-idle-timeout 任意整数 30 总是生效 设置空闲玩家被踢出的时间 单位为分钟。玩家空闲时间到达设定值后将被踢出,如果设置为0或被移除。
max-threads 整数 8 总是生效 设置服务器尝试使用的最大线程数 服务器会尽可能多地使用线程。
tick-distance 范围[4, 12]内的整数 4 总是生效 设置停止加载区块的距离 当玩家远离某个区块的距离超过设定值后,该区块会停止加载。较高的值可能会影响服务器性能。
default-player-permission-level visitor, member, operator member 总是生效 设置新玩家加入时的权限 visitor-新玩家不可破坏方块

member-新玩家正常加入 operator-新玩家加入时即为OP

texturepack-required true, false false 总是生效 是否强制加载资源包 如果为 true,则当服务器有资源包时,将强制客户端使用。
content-log-file-enabled true,false false 是否启用错误日志

Minecraft Classic 服务器属性[编辑 | 编辑源代码]

属性 类型 默认值 描述
verify-names 布尔值 true 验证玩家的IP是否与其连接Minecraft.net的IP相同。如果启用,在一台电脑上同时运行服务端和客户端的人会出现问题,服务器看见的是本地IP(127.0.0.1),而Minecraft.net看到的是外部IP。除非上述情况发生,建议启用该属性。
true - 启用。服务器会和Minecraft.net检查所有的名字。
false - 禁用。服务器会确保IP吻合。
admin-slot 布尔值 false 允许OP在服务器人满时也能加入游戏。
public 布尔值 服务器是否显示在服务器列表里。
true - 服务器会显示在服务器列表里,任何人都能看到。
false - 只有掌握服务器 URL(可以在externalurl.txt中找到)的人和掌握IP和端口的人才能加入。
server-name 字符串 服务器名称,会显示在服务器名单上及有人正加入服务器时。
  • 单行文本。部分字符,例如 '(单引号)可能需要在前面加反斜杠号\才能正确应用。
max-players 整数(0-256) 服务器同时在线的最大玩家人数。注意,服务器上玩家越多,服务器使用的资源越多。同样注意,服务器管理员的连接不算在内。
max-connections 整数(1-3) 同一个IP允许的最大连接数。

注: 如果你尝试设定的值大于3,它会被改回3。

motd 字符串 MOTD 是Message of the day(每日一句)的简写,尽管你不用每天更改。MOTD是玩家加入服务器时显示的信息。
grow-trees 布尔值 是否允许树苗长成为树木。
true - 服务器会允许树苗长成为树木。
false - 服务器不会允许树苗长成为树木。

历史[编辑 | 编辑源代码]

Clock JE2 BE1.gif
此段落需要更新。

原因:Many settings are not first introduced. History is missing Bedrock edition

Java版(Classic)
服务器1.5加入了 max-connections,限制一个IP地址的最大连接数。
服务器1.9.1加入了 grow-tree, 除非将其设置为true,否则树苗将不会长成树木。
服务器1.10加入了verify-names 禁用时的警告。
加入了admin-slot,关闭它将使OP无法在服务器人满时加入游戏。
Java版(Alpha)
服务器0.2.0加入了monsters选项,如果设置为true将生成怪物。
服务器0.2.4加入了no-animals 选项,如果设置为true则不会生成动物。
服务器0.2.5加入了pvp选项,禁用或者启用玩家对战(PVP)。
monsters重命名为spawn-monsters 并将默认设置为true。
no-animals重命名为spawn-animals
Java版(Beta)
1.6加入了allow-nether ,如果设置为false则会禁止进入下界。
加入了view-distance ,设置了大视距。
Java版
1.0.0Beta 1.9 Prerelease 4加入了debugenable-queryenable-rconquery.portrcon.passwordrcon.port
1.111w49a加入了spawn-npcs
12w01a加入了level-type
release加入了generate-structures
1.2.112w07a加入了max-build-height
1.7.213w38a加入了announce-player-achievements
1.814w17a加入了generator-settings
14w28a加入了自定义网络压缩选项。
1.1217w18a游戏规则announceAdvancements取代选项announce-player-achievements
1.1418w48adifficultygamemode 设置使用字符串,整数仍旧可以使用。
1.14.4pre4加入了function-permission-level 选项,可以控制函数的权限等级。
1.1620w14a添加了sync-chunk-writes选项,是否禁用新的同步区块写入。
20w16aAdded enable-jmx-monitoring 选项,启用将使MBean使用以毫秒为单位时间计时。
20w18a加入了enable-statusentity-broadcast-range-percentage 选项。
1.16.220w28a加入了rate-limit,设置数据包的速度限制。