Minecraft Wiki

除另有声明,转载时均必须注明出处若簡繁轉換出錯,請以遊戲內為準请勇于扩充与修正内容有兴趣逛逛我们的微博沟通交流,欢迎到社区专页需要协助,请在告示板留言

了解更多

Minecraft Wiki
Advertisement
Disambig gray  「Anvil」重新導向至此。關於用於修復物品的方塊,詳見「鐵砧」。
Information icon
此特性為Java版獨有。

Anvil[1]檔案格式在Java版1.2正式使用,其在之前的檔案格式Region的基礎上做出了許多變更和改進。該檔案格式最初在快照12w07a中投入使用。

與MCRegion的不同之處[]

Anvil Conversion

正在將世界從McRegion格式轉化為Anvil

從MCRegion到Anvil做出的唯一修改是區塊格式——Region檔案格式仍在使用,但標識改成了Anvil。Anvil在區塊格式上做出了以下修改:

  • 最高建築高度提升到256(原為128)。
  • 世界上的空的區域並不會占用記憶體或儲存至硬碟內。
  • 透過加入一個4位元資料層面(與元資料的儲存方法相似)使方塊ID的最大值提升到了4096(原為256)。然而剩餘的Minecraft代碼中暫時沒有使用這項修改。
  • 方塊的排列順序從XZY改成了YZX來提高壓縮率。
  • 最佳化發送給用戶端的區塊資料包(一個無空氣的區塊要比在舊格式的同區塊更小,一個擁有很多空氣的區塊更是要小得多)。
  • 生態域將儲存至每個X、Z列表中,這代表它們現在可由外部程式修改,這對製圖者很有幫助。

更多資訊[]

12w07a1.17.1的Java版版本會自動將世界轉換至新的格式,但同時會使用舊格式創造一個世界檔案的拷貝以相容舊的遊戲版本。世界生成器未經過修改,所以將在往常的地形上生成128層的空氣,這使海平面到限制高度增加到了192米。

  • 每個區塊的「Blocks」「Data」「SkyLight」和「BlockLight」標籤被移動並且被改變讀取方式(見下文)。
  • 「Sections」 列表標籤包含的複合標籤已加入多達16個。
  • 每一個16×16×16的區域都有了「Blocks」「Data」「SkyLight」和「BlockLight」標籤。
  • 每一個方塊都有「Y」字節標籤來說明高度(有些時候Y位置可以被忽略)。0是世界的最底部,15是世界的最頂部。
  • 每一個方塊都有可選的「Add」標籤,這是一個像「Data」一樣的DataLayer字節陣列。「Add」標籤不包括在轉換器中,因為舊格式沒有超過255的方塊ID。這種額外的標記建立一個方塊時需要getTile()方法檢查是否存在陣列,然後替換預設的方塊資料。換句話說,方塊ID = (當小於8時) + 基礎ID。
  • 每一個區塊都有一個16×16位元組的陣列和一個生態域ID標籤「Biomes」。如果這個陣列丟失了,它會在遊戲開始前將陣列裡的每一個數值變為-1。然而開發人員提供的轉換器原始碼中不包含任何生態域的原始碼。
  • 注意:舊格式是XZY((x * 16 + z) * 16 + y)而新格式是YZX((y * 16 + z) * 16 + x)(請注意DataLayer與OldDataLayer的不同)。
  • 新格式使用「.mca」為擴展名而不是 「.mcr」(舊格式為安全方面保留了「.mcr」,level.dat的擴展名就是「level.dat_mcr」)。
  • 一種叫做IntArray的新NBT標籤種類被加入NBT格式(ID為11)它被用於「地圖高度」標籤。

其他資訊請見區塊格式頁面。

獨立轉換器[]

獨立的檔案格式轉換器及其源碼已經放出,方便開發者檢查和準備。[1]

降低轉換後檔案大小[]

Anvil檔案格式的檔案以.mca為後綴名,而MCRegion使用.mcr。遊戲在將世界轉換為Anvil後會保留舊的McRegion檔案——儘管它們再也不會被遊戲使用了。為了降低備份的檔案大小,可以刪除這些.mcr檔案(最好是備份以後)。可以這麼幹:

  • 對於Windows:
    • 使用檔案資源管理器(或類似的檔案查看器):
    1. 打開檔案資源管理器(快捷鍵:⊞ Win + E
    2. 找到世界存檔資料夾,選擇進入
    3. 搜尋(快捷鍵:F3):*.mcr
    4. 全選(快捷鍵:Ctrl + A)並刪除(快捷鍵:delete
    • 使用指令提示字元:
    1. 打開指令提示字元(同時按下⊞ WinR,輸入cmd,再按下↵ Enter
    2. 執行以下指令:del /f /q "<世界文件夹路径>\region\*.mcr"
  • 對於Linux、macOS等:
    • 方法一:
    1. 在終端中執行指令:cd <世界文件夹路径>,進入目錄
    2. 執行指令:rm *.mcr
    • 方法二:
    1. 打開終端
    2. 執行以下指令:rm -f <世界文件夹路径>/region/*.mcr

歷史[]

Java版
1.2.112w07a加入了Anvil檔案格式。
1.1620w14a現在會以同步模式打開Anvil格式的檔案了,這可以防止崩潰後資料丟失和損壞。

參見[]

參考[]

語言

Advertisement