這些特性曾存在於遊戲中,但已被移除。
Classic世界格式(Classic Level Format)用於各種MinecraftClassic。它使用gzip壓縮,並包含一個後跟序列化的Java對象的短標題。單人遊戲地圖的擴展名為「.mine」。Classic Creative伺服器使用的地圖名為「server_level.dat」。可以備份該檔案以儲存內容,這有助於保護構造免受惡意破壞者或使用該檔案進行地圖編輯。
因為這個世界格式取決於Java序列化對象的方式,所以使用它的最簡單方法是透過Classic伺服器本身,minecraft-server.jar。提供了示例代碼以說明如何在minecraft-server.jar之上構建編輯器。
檔案格式[]
解壓縮後,檔案格式如下:
| 位置 | 大小(字節) | 名稱 | 說明 |
|---|---|---|---|
| 0 | 4 | Magic ID | 魔數ID是用於標識Minecraft檔案格式的常數。目前值為0x271bb788。 |
| 4 | 1 | Version Number | 版本號表示用於儲存地圖的目前格式。目前值為2。 |
| 5 | 可變的 | 序列化的Javacom.mojang.minecraft.level.Level類 | 有關Java使用的序列化格式的更多資訊,請參見手冊,但是編輯檔案的最簡單方法是使用此處提供的類和官方的minecraft-server.jar檔案。 |
存取字節陣列[]
地圖中最有趣的部分是方塊陣列。該陣列中的每個字節定義了世界上相應位置的方塊類型。通常有兩個用於存取方塊字節陣列的選項:
你可以將壓縮的.dat檔案直接反序列化回Java內部的Level對象的實例,從而可以完全像Minecraft伺服器那樣存取Level對象的實例。這將允許你透過調用實例化的Level對象上的方法直接設定方塊、維度、生成點和其他地圖的方面。載入前不需要手動解壓縮,因為Java可以動態壓縮和解壓縮gzip壓縮檔案。要將資料檔案載入回Level類的實例,你需要Level類的類定義。這包含在minecraft-server.jar檔案中。可以在建立和儲存類中看到此示例。
其他人只需存取資料檔案檔案中的原始字節陣列就可以讀取和修改地圖的資料。為此你將解壓縮它,變更儲存字節陣列的字節,然後再次壓縮它。由於你正在編輯它,因此必須保持第一個344(HEE中的14E)字節不變。接下來的256x256x64位元組是儲存字節陣列的位置。此外,如果你知道要查找的位置,也可以透過這種方式變更生成位置座標:從字節284開始有3個整數值,因此覆蓋接下來的12個字節(3個整數)將允許你變更生成位置。
(免責聲明:這可能會隨著Java的變化發生變化)
| 版本 | |||||||
|---|---|---|---|---|---|---|---|
| 開發週期 |
| ||||||
| 技術 |
| ||||||
| 多人遊戲 | |||||||
| 遊戲訂製 | |||||||
語言