在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: 此標籤包含所有的世界數據。
- version: NBT的版本,為19133。
- initialized: 1 或 0 (真/假) - 通常情況下,當世界在正常方式創造之後為真。如果初始化模擬被某種情況所中斷,此處為假,世界將會在下一次載入時重新初始化。
- LevelName: 世界的名字
- generatorName: 世界類型:"default"(預設)、"flat"(超平坦)、"largeBiomes"(巨大生物羣落)、"amplified"(放大?)、"debug_all_block_states"(除錯所有的方塊?)。不區分大小寫。
- generatorVersion: 世界類型的版本。修改此處的作用未知,但是從觀察到的情況下非零。
- generatorOptions: 生成器的控制方式,目前只針對超平坦世界。其格式為許多以逗號相隔的方塊ID,這些ID的排列順序為從地底依次排列。這些ID可以在其前面加入'x和其層數。不支援小ID。[1]
- RandomSeed: 隨機種子碼用於生成固定的地形。
- MapFeatures: 1 或 0 (真/假) - 如果在世界類型中選擇允許生成如村落、要塞、礦坑這些結構則為真。
- LastPlayed: 世界最後被載入時的Unix時間戳。
- SizeOnDisk: 世界所預估的所佔字節的大小。目前在Minecraft中無法進行修改,但是之前是可以的。
- allowCommands: 1 或 0 (真/假) - 如果允許作弊則為真。
- hardcore: 1 或 0 (真/假) - 如果玩家在單人遊戲中死亡後刪除世界則為真。在三個模式中均有效。
- GameType: 在單人遊戲玩家生成或重生時的預設遊戲模式。0為生存模式,1為創造模式,2為冒險模式。提示:單人遊戲玩家不要將此處設定成目前所在的遊戲模式。
- Time: 世界自開始時所經歷的刻數。
- DayTime: 遊戲中的時間。0為日出,6000為正午,12000黃昏,18000為午夜,24000為次日零時。這一數據會超過24000而不重設至0。
- SpawnX: 重生點的X座標。
- SpawnY: 重生點的Y座標。
- SpawnZ: 重生點的Z座標。
- raining: 1 或 0 (真/假) - 如果世界此時正在下雨、下積雪或陰雲密佈則為真。
- rainTime: 在「下雨」被觸發前所經歷的刻數,一旦被觸發則會重設為另一隨機數。
- thundering: 1 或 0 (真/假) - 如果下雨/下積雪/陰雲密佈並且出現閃電,天空太過陰暗以至於怪物可以在白天進行刷新時則為真。
- thunderTime: 在「閃電」被觸發前所經歷的刻數,一旦被觸發則會重設為另一隨機數。
- Player: 單人遊戲玩家的狀態。此處如果玩家與<player>.dat中玩家名字相同的話會覆蓋<player>.dat檔案。如果在伺服器中已經存在這一檔案則會被儲存,否則不會儲存伺服器世界。參見Player.dat 格式。
- BorderCenterX
- BorderCenterZ
- BorderDamagePerBlock
- BorderSafeZone
- BorderSize
- BorderSizeLerpTarget
- BorderWarningBlocks
- BorderWarningTime: 都見世界邊界
- GameRules: 遊戲規則。每一規則為非"真"即"假"的字串。
- commandBlockOutput: 是否將命令方塊的行為顯示到聊天窗口中,預設為真。
- doFireTick: 是否開啟火焰蔓延和消失,預設為真。
- doMobLoot: 生物在被殺死後是否跌落物品,預設為真。
- doMobSpawning: 生物在自然環境下是否會生成,預設為真。
- doTileDrops: 在破壞方塊後是否會跌落對應方塊物品,預設為真。
- keepInventory: 玩家在死後是否會保留物品,預設為假。
- mobGriefing: 生物是否會破壞方塊(如爬行者的爆炸,喪屍的破壞等),預設為真。
- doEntityDrops: 生物是否會跌落方塊,預設為真。
- logAdminCommands: 未知作用,預設為真。
- naturalRegeneration: 在玩家飢餓值足夠高時是否恢復生命,預設為真。
- randomTickSpeed: 方塊刻到來的時間,可以讓植物生長或樹葉枯萎,預設為3,這是唯一一個不適用真、假賦值的規則。
- reducedDebugInfo: 顯示除錯資訊,預設為假。
- sendCommandFeedBack: 返回命令方塊的資訊,預設為真。
- showDeathMessages: 顯示玩家死亡訊息,預設為真。
- Data: 此標籤包含所有的世界數據。
session.lock 格式
此檔案包含了該世界最後一次進入時的時間戳。檔案為一64位元組以大端字節序格式的整值數據,為自1970年(標準時區)開始的以百為單位的毫秒數。
與典型的lock檔案不同,這一檔案確保了最後訪問這一世界的程式有讀取和修改的權限。該過程通常如下所示:
- 程式打開 session.lock
- 程式在session.lock寫入目前時間戳
- 程式對session.lock的變化進行監控
- 如果session.lock內容發生變化,則程式中斷並鎖定世界。
即使在玩家開始這一世界之後Minecraft有時也會凍結這一世界。這通常會帶來未知的後果。推薦在您需要取得修改世界的權限之前完全關閉Minecraft程式。
參考