Minecraft PE 中,游戏生成的level.dat包含较多数据,暂时不清楚当前所解析的是否属于完整版本。当前使用版本为 Minecraft win10 v1.11.4 以下为文件内字段以及释义:(不确定的未标注释义) LEVEL.DAT 项 值 1 CenterMapsToOrigin 2 ConfirmedPlatformLockedContent 3 Difficulty 难度等级 4 FlatWorldLayers 世界生成细则 5 ForceGameType 6 GameType 游戏模式 7 Generator 世界类型 8 InventoryVersion 当前游戏版本 9 LANBroadcast 局域网广播 10 LANBroadcastIntent 局域网广播意向 11 LastPlayed 当玩家保存游戏时,存储Unix时间戳 12 LevelName 存档名 13 LimitedWorldOriginX 有限地图生成位置的X 14 LimitedWorldOriginY 有限地图生成位置的Y 15 LimitedWorldOriginZ 有限地图生成位置的Z 16 MinimumCompatibleClientVersion 17 MultiplayerGame 18 MultiplayerGameIntent 19 NetherScale 20 NetworkVersion 21 Platform 似乎存储创建层次的平台 22 PlatformBroadcastIntent 23 RandomSeed 地图种子 24 SpawnV1Villagers 25 SpawnX 玩家生成位置X 26 SpawnY 玩家生成位置Y 27 SpawnZ 玩家生成位置Z 28 StorageVersion 当前的携带版NBT的版本(=4) 29 Time 游戏内时间 30 XBLBroadcastIntent 31 abilities 玩家拥有的能力 32 attackmobs 攻击怪物 33 attackplayers 攻击玩家 34 build 建造 35 doorsandswitches 交互(门和开关) 36 flySpeed 飞行速度 37 flying 当玩家正在飞行时为真 38 instabuild 当玩家可以瞬间摧毁方块时为真 39 invulnerable 如果玩家能抵消所有伤害和有害的效果时为真 40 lightning 41 mayfly 玩家能飞行时为真 42 mine 43 op 管理员 44 opencontainers 45 permissionsLevel 46 playerPermissionsLevel 播放器 47 teleport 传送 48 walkSpeed 步行速度 49 bonusChestEnabled 50 bonusChestSpawned 51 commandblockoutput 命令方块执行命令时是否在聊天框中向管理员显示 52 commandblocksenabled 命令方块在游戏中是否被启用 53 commandsEnabled 54 currentTickc 55 dodaylightcycle 是否进行日夜交替和月相变化 56 doentitydrops 非生物实体是否掉落物品 57 dofiretick 火是否蔓延及自然熄灭 58 doimmediaterespawn 59 doinsomnia 幻翼是否在夜晚生成 60 domobloot 生物在死亡是否掉落物品 61 domobspawning 生物是否自然生成 62 dotiledrops 方块被破坏时是否掉落物品 63 doweathercycle 天气是否变化 64 drowningdamage 玩家是否承受窒息伤害 65 eduLevel 66 educationFeaturesEnabled 67 experimentalgameplay 68 falldamage 玩家是否承受跌落伤害 69 firedamage 玩家是否承受火焰伤害 70 functioncommandlimit 71 hasBeenLoadedInCreative 72 hasLockedBehaviorPack 73 hasLockedResourcePack 74 immutableWorld 设置世界为不可更改 75 isFromLockedTemplate 76 isFromWorldTemplate 77 isWorldTemplateOptionLocked 78 keepinventory 玩家死亡后是否保留物品栏物品 79 lastOpenedWithVersion 80 lightningLevel 81 lightningTime 82 maxcommandchainlength 指定工作在连锁模式的命令方块的总数量 83 mobgriefing 怪物是否能捡物品 84 naturalregeneration 饥饿值足够时自然恢复生命值 85 prid 86 pvp 玩家之间能否造成伤害 87 rainLevel 88 rainTime 在“下雨”被触发前所经历的刻数 89 randomtickspeed 每游戏刻每区块中随机的方块刻发生的频率 90 requiresCopiedPackRemovalCheck 91 sendcommandfeedback 玩家执行命令的返回信息是否在聊天框中显示 92 serverChunkTickRange 93 showcoordinates 聊天框区域持续实时显示玩家坐标 94 showdeathmessages 显示玩家以及驯养宠物的死亡信息。 95 spawnMobs 怪物生成 96 startWithMapEnabled 97 texturePacksRequired 98 tntexplodes TNT是否会爆炸 99 useMsaGamertagsOnly 100 worldStartCount
--118.112.176.113 2019年7月10日 (三) 15:32 (UTC) Template:Translation:未知参数。
在Minecraft 1.0中,每一个世界都有自己的文件夹。在每一个世界的存档文件夹中通常需要靠level.dat文件和存储地图和区域的子文件夹才能鉴别对应的世界。
在世界文件夹中永远会包含的信息以粗体的形式显示,有时会显示的信息则以斜体的形式显示。
| 相对路径 | 名称 | 描述 |
|---|---|---|
| /level.dat | 见下文 | 存储关于世界的全局信息。 |
| /level.dat_mcr | - | level.dat文件在转换为MCRegion和Anvil文件前的备份文件。 |
| /level.dat_old | - | level.dat文件在从Alpha世界格式转换为MCRegion和Anvil文件前的备份文件。 |
| /session.lock | 见下文 | 用于获取最后执行的程序修改这一文件以及访问的权限。 |
| /players/<player>.dat | Player.dat格式 | 存储这一世界内玩家所有的个人信息。 |
| /data/idcounts.dat /data/map_<#>.dat |
地图物品格式 | 存储可合成地图这一物品所包括的地图数据。 |
| /data/villages.dat | Villages.dat格式 | 存储世界中村民的信息。 |
| /region/ | - | 包含主世界中的区域信息。 |
| /DIM-1/ | - | 包含下界中的区域信息。 |
| /DIM1/ | - | 包含末路之地中的区域信息。 |
| /region/r.<#>.<#>.mca /DIM-1/r.<#>.<#>.mca /DIM1/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栏的显示样式。可以的值有
progress、notched_6、notched_10、notched_12和notched_20。 - PlayBossMusic:1或0(true/false)—boss栏是否会初始化boss音乐。
- Visible:1或0(true/false)—boss栏是否对列表中的玩家可见。
- <Resource location>:boss栏的id(比如
- DataPacks:数据包选项。
- Disabled:禁用的数据包。
- :一个数据包。
- Enabled:启用的数据包。默认会包含字符串"vanilla"。
- :一个数据包。
- Disabled:禁用的数据包。
- 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) - 末影龙是否被击败过。决定下次击败末影龙获得的经验值。
- ExitPortalLocation: 末影龙被击败后会飞往的地方,返回主世界的传送门的位置。
- DragonFight: 末影龙战斗的数据。只有在进入末地后才会出现。
- 1: 末路之地的数据。
- version:NBT的版本,为19133。
- initialized:1或0(true/false)—通常情况下,当世界在正常方式创造之后为真。如果初始化模拟被某种情况所中断,此处为假,世界将会在下一次载入时重新初始化。
- LevelName:世界的名字
- generatorName:世界类型:default(默认)、flat(超平坦)、largeBiomes(巨型生物群系)、amplified(放大化)、debug_all_block_states(调试模式)和buffet(自选)。不区分大小写。
- generatorVersion:世界类型的版本。修改此处的作用未知,但是从观察到的情况下非零。
- generatorOptions:用于自选世界类型。
- biome_source
- options
- biomes:生物群系的列表。
- :一个生物群系ID
- biomes:生物群系的列表。
- type:生物群系生成器,无法在游戏内改变,默认为
minecraft:fixed,也可以是minecraft:checkerboard和minecraft:vanilla_layered。
- options
- chunk_generator:区块生成器。
- options:区块生成器选项。
- default_block:默认的方块,为方块ID。默认为
minecraft:stone。 - default_fluid:默认的流体,为方块ID。默认为
minecraft:water。
- default_block:默认的方块,为方块ID。默认为
- type:使用的生成器ID。可以是
minecraft:surface、minecraft:cave和minecraft:floating_islands。
- options:区块生成器选项。
- biome_source
- generatorOptions:用于超平坦世界。
- 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字符串,大多数规则的值为
true或false。
- Rule name:规则名称。总是为NBT字符串,大多数规则的值为
- Version:世界存入时的版本信息。
- Id:版本id。
- Name:版本名称,比如15w32b。
- Snapshot: 1或0(true/false)—版本是否为快照版。
- CustomBossEvents:boss栏。
- Data:此标签包含所有的世界数据。
session.lock 格式
此文件包含了该世界最后一次进入时的时间戳。文件为一64字节以大端字节序格式的整值数据,为自1970年(标准时区)开始的以百为单位的毫秒数。
与典型的lock文件不同,这一文件确保了最后访问这一世界的程序有读取和修改的权限。该过程通常如下所示:
- 程序打开 session.lock
- 程序在session.lock写入当前时间戳
- 程序对session.lock的变化进行监控
- 如果session.lock内容发生变化,则程序中断并锁定世界。
即使在玩家开始这一世界之后Minecraft有时也会冻结这一世界。这通常会带来未知的后果。推荐在您需要获取修改世界的权限之前完全关闭Minecraft程序。
参考