本站文本内容除另有声明外,转载时均必须注明出处。(详情…本站文本内容除另有声明外,转载时均必须注明出处。(详情…中文Minecraft Wiki是完全公开的。请勇于扩充与修正内容!中文Minecraft Wiki是完全公开的。请勇于扩充与修正内容!Minecraft中文Wiki微博正在更新!或许有兴趣去看看Minecraft中文Wiki微博正在更新!或许有兴趣去看看想与其他用户进行编辑上的沟通?社区专页正是为此创建的。想与其他用户进行编辑上的沟通?社区专页正是为此创建的。翻译或创建页面之前,不妨看看译名标准化Wiki条例页面。翻译或创建页面之前,不妨看看译名标准化Wiki条例页面。需要管理员的协助?在管理员告示板留言也许可以帮到您。需要管理员的协助?在管理员告示板留言也许可以帮到您。
各位用户:为了让我们能更好了解您的需求,提供更优良的服务,请帮助我们填写一份问卷。编者问卷读者问卷(需要花费7分钟左右)

Hi Gamepedia users and contributors! Please complete this survey to help us learn how to better meet your needs in the future. We have one for editors and readers. This should only take about 7 minutes!

世界格式

来自Minecraft Wiki
(重定向自Session.lock
跳转至: 导航搜索
Information icon.svg
此特性为Java版独有。

每一个世界都有自己的文件夹。在每一个世界的存档文件夹中通常需要靠level.dat文件和存储地图和区域的子文件夹才能鉴别对应的世界。

在世界文件夹中永远会包含的信息以粗体的形式显示,有时会显示的信息则以斜体的形式显示。

相对路径 名称 描述
/level.dat 见下文 存储关于世界的全局信息。
/level.dat_new 程序会在此文件中写入该世界的新的全局信息,之后会被重命名为level.dat。
/level.dat_mcr - level.dat文件在转换为MCRegionAnvil文件前的备份文件。
/level.dat_old - level.dat文件在从Alpha世界格式转换为MCRegionAnvil文件前的备份文件。‌[来源请求]
/session.lock 见下文 用于获取最后执行的程序修改这一文件以及访问的权限。
/players/<player>.dat Player.dat格式 存储这一世界内玩家所有的个人信息,直到版本1.7.6
/playerdata/<uuid>.dat Player.dat格式 存储这一世界内玩家所有的个人信息,从版本1.7.6开始。
/stats/<uuid>.json 统计储存格式 储存玩家在此世界游玩时的统计,自从1.7.2
/advancements/<uuid>.json 待定 储存玩家在该世界的进度和已解锁的配方,自从17w13a
/data/idcounts.dat
/data/map_<#>.dat
地图物品格式 存储可合成地图这一物品所包括的地图数据。
/data/villages.dat Villages.dat格式 存储世界中村民的信息。“nether”和“end”文件在1.8被加入。在1.14中被POI区域文件代替。
/poi/

/DIM-1/poi/

/DIM1/poi/

世界内村民特定的床,工作站点和钟。
/data/raids.dat
/DIM-1/data/raids_nether.dat
/DIM1/data/raids_end.dat
raids.dat格式 储存世界内正在进行的袭击的信息。
/region/ - 包含主世界中的区域信息。
/DIM-1/region/ - 包含下界中的区域信息。
/DIM1/region/ - 包含末路之地中的区域信息。
/region/r.<#>.<#>.mca
/DIM-1/r.<#>.<#>.mca
/DIM1/r.<#>.<#>.mca

/poi/r.<#>.<#>.mca

/DIM-1/poi/r.<#>.<#>.mca

/DIM1/poi/r.<#>.<#>.mca

Anvil文件格式 独立区域信息。
/region/r.<#>.<#>.mcr
/DIM-1/r.<#>.<#>.mcr
/DIM1/r.<#>.<#>.mcr
Region文件格式 用于存储区域文件在从Region文件格式转换为Anvil之前的备份文件。
/<#>/<#>/c.<#>.<#>.dat Alpha世界格式 用于存储区块文件在转换从Alpha世界格式转换为MCRegion之前的备份文件。

level.dat格式[编辑 | 编辑源代码]

level.dat文件包含了世界的全局信息,如时间,单人游戏玩家,所使用的世界类型以及地图种子等。为NBT文件,其格式如下:


  • 根标签

    •  Data:此标签包含所有的世界数据。

      •  CustomBossEvents:boss栏。

        •  <Resource location>:boss栏的id(比如custom:boss)。

          •  Players:可以看见boss栏的玩家列表。

          •  Color:boss栏的颜色id。然后boss栏显示文本没有定义颜色,这同样也是将boss栏的显示文本的颜色。 在颜色代码查看可接受的值。

          •  CreateWorldFog:1或0(true/false)—boss栏是否创建迷雾。

          •  DarkenScreen:1或0(true/false)—boss栏是否会使天空暗黑。

          •  Max:boss栏的最大值。

          •  Value:boss栏的当前值。

          •  Name:boss栏的显示文本,参见JSON文本

          •  Overlay:boss栏的显示样式。可以的值有progressnotched_6notched_10notched_12notched_20

          •  PlayBossMusic:1或0(true/false)—boss栏是否会初始化boss音乐。

          •  Visible:1或0(true/false)—boss栏是否对列表中的玩家可见。

      •  DataPacks:数据包选项。

        •  Disabled:禁用的数据包

          • :一个数据包。

        •  Enabled:启用的数据包。默认会包含字符串"vanilla"。

          • :一个数据包。

      •  DimensionData: 这个标签包含特定维度的世界数据。

        •  1: 末路之地的数据。

          •  DragonFight: 末影龙战斗的数据。只有在进入末地后才会出现。

            •  ExitPortalLocation: 末影龙被击败后会飞往的地方,返回主世界的传送门的位置。

              •  X: 传送门的X轴坐标。

              •  Y: 传送门的Y轴坐标。

              •  Z: 传送门的Z轴坐标。

            •  Gateways: 包含即将生成的末地折跃门的位置

              • : 折越门的角度,0为东方,数字按顺时针方向递增。

            •  DragonKilled: 1 or 0 (true/false) - 龙是否还活着。

            •  DragonUUIDLeast: 当前末影龙的通用唯一标识符(UUID)的低位。 与 DragonUUIDMost 组合成龙的唯一ID。

            •  DragonUUIDMost: 当前末影龙的通用唯一标识符(UUID)的高位。 与 DragonUUIDLeast 组合成龙的唯一ID。

            •  PreviouslyKilled: 1 or 0 (true/false) - 末影龙是否被击败过。决定下次击败末影龙获得的经验值。

      •  versionNBT的版本,为19133。

      •  initialized:1或0(true/false)—通常情况下,当世界在正常方式创造之后为真。如果初始化模拟被某种情况所中断,此处为假,世界将会在下一次载入时重新初始化。

      •  LevelName:世界的名字

      •  generatorName:世界类型:default(默认)、flat(超平坦)、largeBiomes(巨型生物群系)、amplified(放大化)、debug_all_block_states(调试模式)和buffet(自选)。不区分大小写。

      •  generatorVersion:世界类型的版本。修改此处的作用未知,但是从观察到的情况下非零。

      •  generatorOptions:用于自选世界类型

        •  biome_source

          •  options

          •  type:生物群系生成器,无法在游戏内改变,默认为minecraft:fixed,也可以是minecraft:checkerboard和minecraft:vanilla_layered。

        •  chunk_generator:区块生成器。

          •  options:区块生成器选项。

            •  default_block:默认的方块,为方块ID。默认为minecraft:stone

            •  default_fluid:默认的流体,为方块ID。默认为minecraft:water

          •  type:使用的生成器ID。可以是minecraft:surfaceminecraft:caveminecraft:floating_islands

      •  generatorOptions:用于超平坦世界

        •  structures:超平坦世界的结构

          •  结构名称:名称为结构名称的空复合标签,比如village。

        •  layers:设置超平坦的地层。

          • :一层。

            •  block:方块ID。

            •  height:地层高度,在1.13之前是整型。

            •  height:地层高度,在1.13是字节型。

        •  biome:生物群系ID。

      •  RandomSeed随机世界种子用于生成固定的地形。

      •  MapFeatures:1或0(true/false)—如果在世界类型中选择允许生成如村落、要塞、矿井这些结构则为真。

      •  LastPlayed:世界最后被加载时的Unix时间戳。

      •  SizeOnDisk:世界所预估的所占字节的大小。当前在Minecraft中无法进行修改,但是之前是可以的。

      •  allowCommands:1或0(true/false)—如果允许作弊则为真。

      •  hardcore:1或0(true/false)—如果玩家在单人游戏中死亡后转变为旁观模式则为真。在三个模式中均有效。

      •  GameType:在单人游戏玩家生成或重生时的默认游戏模式。0为生存模式,1为创造模式,2为冒险模式,3为旁观模式。提示:单人游戏玩家不要将此处设置成当前所在的游戏模式。

      •  Time:世界自开始时所经历的刻数。

      •  DayTime:游戏中的时间。0为日出,6000为正午,12000黄昏,18000为午夜,24000为次日零时。这一数据会超过24000而不重置至0。

      •  SpawnX:出生点的X坐标。

      •  SpawnY:出生点的Y坐标。

      •  SpawnZ:出生点的Z坐标。

      •  BorderCenterX:世界边界中心的X坐标。默认为0。

      •  BorderCenterZ:世界边界中心的Z坐标。默认为0。

      •  BorderSize:边界宽度。默认为60000000。

      •  BorderSafeZone:默认为5。

      •  BorderWarningBlocks:默认为5。

      •  BorderWarningTime:默认为15。

      •  BorderSizeLerpTarget:默认为60000000。

      •  BorderSizeLerpTime:默认为0。

      •  BorderDamagePerBlock:默认为0.2。

      •  raining:1或0(true/false)—如果世界此时正在下雨、下雪或阴云密布则为真。

      •  rainTime:在“下雨”被触发前所经历的刻数,一旦被触发则会重置为另一随机数。

      •  thundering:1或0(true/false)—如果下雨/下雪/阴云密布并且出现闪电,天空太过阴暗以至于怪物可以在白天进行刷新时则为真。

      •  thunderTime:在“闪电”被触发前所经历的刻数,一旦被触发则会重置为另一随机数。

      •  Player:单人游戏玩家的状态。此处如果玩家与<player>.dat中玩家名字相同的话会覆盖<player>.dat文件。如果在服务器中已经存在这一文件则会被保存,否则不会保存服务器世界。参见Player.dat格式

      •  GameRules:游戏规则。

        •  Rule name:规则名称。总是为NBT字符串,大多数规则的值为truefalse

      •  Version:世界存入时的版本信息。

        •  Id:版本id。

        •  Name:版本名称,比如15w32b。

        •  Snapshot: 1或0(true/false)—版本是否为快照版。

session.lock 格式[编辑 | 编辑源代码]

此文件包含了该世界最后一次进入时的时间戳。文件为一64字节以大端字节序格式的整值数据,为自1970年(标准时区)开始的以百为单位的毫秒数。

与典型的lock文件不同,这一文件确保了最后访问这一世界的程序有读取和修改的权限。该过程通常如下所示:

  1. 程序打开session.lock
  2. 程序在session.lock写入当前时间戳
  3. 程序对session.lock的变化进行监控
  4. 如果session.lock内容发生变化,则程序中断并锁定世界。

即使在玩家开始这一世界之后Minecraft有时也会冻结这一世界。这通常会带来未知的后果。推荐在您需要获取修改世界的权限之前完全关闭Minecraft程序。

poi格式[编辑 | 编辑源代码]

poi文件夹使用了与regionAnvil文件格式的文件相似的结构(因此为mca后缀)但其NBT内容有所不同。


  • 根标签。

    •  Data: 该标签包含了所有世界数据。

      •  Sections: 键全为数字(可能是区块高度部分)。‌[需要更多信息]

        •  <number>:

          •  Valid: (目前观察到该值仅为1)[需要更多信息]

          •  Records: 也许为空。

            • : 单独的记录。

              •  pos: 编码了X、Y、Z的3元素数组。

              •  free_tickets: 一般为1或0,但对于类型minecraft:meeting也可能超过30。‌[需要更多信息]

              •  type: 点的类型,例如:minecraft:homeminecraft:meetingminecraft:butcherminecraft:armorer等。

    •  DataVersion: 数据版本,如1.14.4该值为1976