區塊(Chunks)以16×384×16立方塊為單位儲存地形和實體資訊。區塊也會同時儲存預先計算好的光照、高度圖資料及其他元資料資訊,以加快遊戲處理。
NBT結構[]
區塊是儲存在Anvil檔案中的各種標籤,這些Anvil檔案以r.x.z.mca
的形式命名。區塊使用NBT格式儲存,遵循以下結構組成。
- 根標籤。
- below_zero_retrogen:用於在升級為1.18的世界時,原區塊負值高度上重新生成方塊的資料。可能不存在。
- missing_bedrock:每個二進制位代表了此位置上是否缺失基岩,用於決定是否重新生成此位置下的方塊。一共256個二進制位,即4個long整數,位置編碼從(0,0)開始橫向掃描到(15,15)結束。
- target_status:重新生成方塊時區塊的目標狀態,可選值與 Status相同,但不包含
empty
。
- blending_data:用於新舊區塊平滑過渡的混合資料資訊。可能不存在。
- heights:混合資料中元胞的高度值,共16個數值。
- :一個高度值。
- max_section:混合資料中最高子區塊的索引。
- min_section:混合資料中最低子區塊的索引。
- heights:混合資料中元胞的高度值,共16個數值。
- block_entities:儲存區塊內所有方塊實體資訊。
- :一個方塊實體。
- 見方塊實體格式。
- :一個方塊實體。
- block_ticks:區塊中的方塊計劃刻列表。
- :一項方塊計劃刻。
- 見計劃刻格式。
- :一項方塊計劃刻。
- CarvingMasks:區塊雕刻時的標記,當區塊生成完畢後此項會被刪除。
- DataVersion:資料版本。
- entities:區塊生成時的初始實體資訊,當區塊生成完畢後此項會被刪除。
- :一個實體。
- 見實體格式。
- :一個實體。
- fluid_ticks:區塊中的流體計劃刻列表。
- :一項流體計劃刻。
- 見計劃刻格式。
- :一項流體計劃刻。
- HeightMaps:區塊的高度圖資訊,儲存方式見高度圖格式。
- MOTION_BLOCKING:最高的能阻擋移動或含有液體的方塊。
- MOTION_BLOCKING_NO_LEAVES:最高的阻擋移動、含有液體或在
minecraft:leaves
標籤裡的方塊。 - OCEAN_FLOOR:最高的既不是空氣也不包含液體的方塊。
- OCEAN_FLOOR_WG:最高的既不是空氣也不包含液體的方塊。此值用於世界生成,生成完畢後此值被刪除。
- WORLD_SURFACE:最高的非空氣方塊。
- WORLD_SURFACE_WG:最高的非空氣方塊。此值用於世界生成,生成完畢後此值被刪除。
- InhabitedTime:所有玩家在此區塊停留的總刻數,如果有多個玩家在這個區塊停留過則分別計時並相加。用於區域難易度的計算,當此值大於3600000遊戲刻(150遊戲日)時區域難易度達到最大值。
- isLightOn:表示區塊是否已經正常完成光照計算。
- LastUpdate:此區塊最後一次儲存時的遊戲時間。
- PostProcessing:儲存區塊生成完畢後需要進行更新的位置。
- :一個子區塊內需要更新的位置。儲存順序為從最低的子區塊開始到最高子區塊結束。
- :一個需要更新的方塊的位置,按照ZYX編碼儲存。
- :一個子區塊內需要更新的位置。儲存順序為從最低的子區塊開始到最高子區塊結束。
- sections:區塊中所有子區塊的資訊。
- :一個子區塊的資訊。
- biome:子區塊內的生態域資訊。
- data:記錄子區塊內64個生態域,編碼格式見方塊儲存格式。如果子區塊內只存在一種生態域,則此項不存在。
- palette:生態域的集合,用於記錄int與生態域的映射。
- :生態域的命名空間ID。
- block_states:子區塊內的方塊狀態資訊。
- data:記錄子區塊內4096個方塊狀態,編碼格式見方塊儲存格式。如果子區塊內只存在一個方塊狀態,則此項不存在。
- palette:方塊狀態的集合,用於記錄int與方塊狀態的映射。
- :一個方塊狀態。
- 方塊狀態
- :一個方塊狀態。
- BlockLight:儲存子區塊內4096個方塊光照亮度資訊,含有2048個byte,編碼格式見亮度格式。可能不存在。
- SkyLight:儲存子區塊內4096個天空光照亮度資訊,含有2048個byte,編碼格式見亮度格式。可能不存在。
- Y:子區塊的索引。
- biome:子區塊內的生態域資訊。
- :一個子區塊的資訊。
- Status:定義了該區塊目前在世界生成中的狀態。是這些值的其中之一:
empty
(尚未進行區塊生成)、structure_starts
(生成結構範圍)、structure_references
(生成結構標記)、biomes
(填充生態域)、noise
(填充初始雜訊地形)、surface
(應用地表規則)、carvers
(進行洞穴雕刻)、features
(生成地物)、initialize_light
(初始化光照計算)、light
(計算光照)、spawn
(生成初始實體)和full
(區塊生成完畢)。 - structures:此區塊中的結構資料。
- References:包含 starts中結構的區塊座標。
- <結構的命名空間ID>:包含此結構的區塊座標。每一個long都是一個區塊位置,其中X座標儲存在低32位元,Z座標儲存在高32位元。
- starts:按類型儲存的還沒有生成完畢的結構,完全生成好的結構會被從這個標籤中移除。
- <結構的命名空間ID>:一項結構和它生成時需要的資料。
- Children:組成此結構的、還未被生成的結構片段。
- :結構片段資料。如果此片段已經生成,則被刪除。
- 見結構片段格式。
- :結構片段資料。如果此片段已經生成,則被刪除。
- ChunkX:結構的起始區塊X座標。如果結構已經生成則無此標籤。
- ChunkZ:結構的起始區塊Z座標。如果結構已經生成則無此標籤。
- id:結構的命名空間ID。如果結構已經生成,則為
INVALID
。 - references:與此結構關聯的標記資訊。
- Children:組成此結構的、還未被生成的結構片段。
- <結構的命名空間ID>:一項結構和它生成時需要的資料。
- References:包含 starts中結構的區塊座標。
- UpgradeData:區塊升級資料。可能不存在。
- xPos:此區塊的X座標。
- yPos:此區塊中最低子區塊的索引。
- zPos:此區塊的Z座標。
- below_zero_retrogen:用於在升級為1.18的世界時,原區塊負值高度上重新生成方塊的資料。可能不存在。
方塊位置編碼[]
在Anvil檔案格式中,區塊被進一步劃分為「子區塊」。子區塊是一個16x16x16大小的區域,含有4096個方塊。方塊在子區塊中的位置被按照YZX來排序以此達到壓縮的目的。
座標系如下:
- X 向東增加,向西減少;
- Y 向上增加,向下減少;
- Z 向南增加,向北減少。
下面的代碼給出了方塊的子區塊位置與其YZX編碼的轉換關係:
public static int toYZX(int x, int y, int z) {
return y << 8 | z << 4 | x;
}
方塊儲存格式[]
在子區塊中每個方塊都有它們對應的方塊狀態。在平坦化後,方塊狀態與數字形式ID被拆離,也就不能像之前直接使用 Blocks和 Add陣列進行直接的方塊狀態ID表示。因此,在平坦化後,子區塊儲存方塊狀態使用了「調色板」用於儲存方塊狀態與數字的映射,並將數字按照YZX編碼按順序儲存到 data中。
「調色板」,即 palette標籤,使用元素的索引作為對應方塊狀態的ID。這個ID僅在本子區塊有效,在其他子區塊可能代表其它的方塊狀態。調色板內的元素數量決定了最終ID的長度,影響最終儲存方塊狀態的 data標籤的長度。如果調色板內的方塊狀態只有一個,代表整個子區塊內只包含一種方塊狀態,此時 data標籤不存在,用來節省空間。如果調色板內方塊狀態小於等於16個,那麼編碼長度為4比特,每個long中最多儲存16個方塊狀態;如果調色板內方塊狀態大於16個,那麼編碼長度為比特,每個long中最多儲存個方塊狀態。方塊狀態寫入到 data標籤時,按照YZX編碼逐一寫入,儘量填滿每一個long,但是編碼不能橫跨兩個數字進行儲存。因此,如果調色板中方塊狀態的數量小於等於16,那麼 data標籤的長度就是256;如果數量為17~32, data標籤的長度就是342,以此類推。
和方塊狀態類似,生態域單元也使用類似的方式進行儲存。生態域單元與方塊狀態儲存的區別在於,它的編碼長度統一為比特,而其它部分都是相同的流程。
亮度格式[]
子區塊內的亮度資料也儲存在字節陣列中。因為亮度為0~15,所以只需要4比特就能記錄一個方塊的亮度,每個字節都能儲存兩個方塊的亮度。在寫入亮度資料時,每個方塊的亮度都按照YZX編碼的順序逐一寫入,組成一個2048長度的字節陣列。下方的代碼給出了從子區塊方塊位置取得亮度的方法:
public static int getLight(int x, int y, int z) {
int yzx = toYZX(x, y, z);
return (data[yzx >> 1] >> (4 * (yzx & 1))) & 0xF;
}
高度圖格式[]
高度圖儲存類似方塊狀態儲存,但是它只儲存水平方向上16x16的256個高度資訊。高度圖中高度是以世界最低高度極限開始計算的,所以不會有負值,要將高度正確的進行編碼,需要比特,其中h代表世界的總高度。對於主世界來說,總高度是384,需要使用9比特,每個long中可以儲存7個高度;對於地獄和終界,總高度是256,需要使用8比特,每個long中可以儲存8個高度。類似於方塊狀態儲存,儲存高度是儘量放在一個long中,但是不能跨數字儲存一個高度,因此主世界的高度表陣列長度為37,地獄和終界的高度表陣列長度為32。高度儲存從區塊水平座標(0,0)開始,橫向掃描一整行方塊然後開始掃描下一行,最終到(15,15)結束。
計劃刻格式[]
計劃刻代表方塊更新,它的作用是用於解釋在區塊儲存前的事情。事實上它是用於在重新載入世界時再次更新它們(包括紅石機械的更新,水、熔岩的流動,礫石檢查墜落等等)。但是計劃刻不會用於像檢查樹葉腐爛,農作物生長等需要隨機刻來更新的方塊,因為它們的更新不需要隨著區塊的載入而更新。對於地圖製作者來說,計劃刻可以用於在載入區塊的同時更新方塊。
- 一個計劃刻
- i:方塊的命名空間ID,用於啟動正確的方塊更新步驟。
- p:計劃刻的處理優先級。如果多個計劃刻被安排入同一刻中,那麼p值較小的計劃刻會被優先處理。一共有7個優先級:-3(最高優先級,只用於紅石比較器和紅石中繼器)、-2(極高優先級,只用於紅石比較器和紅石中繼器)、-1(高優先級,只用於紅石比較器和紅石中繼器)、0(普通優先級)、1(低優先級,沒有任何方塊使用)、2(極低優先級,沒有任何方塊使用)、3(最低優先級,沒有任何方塊使用)。
- t:距離此計劃刻將要執行的倒計時。
- x:X座標。
- y:Y座標。
- z:Z座標。
方塊實體格式[]
方塊實體是對方塊狀態有窮集合的補充。所有方塊實體都有下面的標籤:
- 一個方塊實體
- id:方塊實體ID。
- keepPacked:表示此方塊實體是否已經無效,關係到區塊將如何儲存這個方塊實體。此項不能透過
/data
取得。 - x:目前方塊實體的X座標。
- y:目前方塊實體的Y座標。
- z:目前方塊實體的Z座標。
下面為Java版中所有的方塊實體。
方塊實體ID | 名稱 |
---|---|
banner | 旗幟 |
barrel | 木桶 |
beacon | 烽火台 |
bed | 床 |
beehive | 蜂窩、蜂箱 |
bell | 鐘 |
blast_furnace | 高爐 |
brewing_stand | 釀造台 |
brushable_block | 可疑的方塊 |
calibrated_sculk_sensor | 校準伏聆振測器 |
campfire | 營火 |
chest | 儲物箱 |
chiseled_bookshelf | 浮雕書櫃 |
command_block | 指令方塊 |
comparator | 紅石比較器 |
conduit | 海靈核心 |
crafter |
合成器 |
daylight_detector | 日光感測器 |
decorated_pot | 飾紋陶罐 |
dispenser | 發射器 |
dropper | 投擲器 |
enchanting_table | 附魔台 |
end_gateway | 終界折躍門 |
end_portal | 終界傳送門 |
ender_chest | 終界箱 |
furnace | 熔爐 |
hanging_sign | 懸掛式告示牌 |
hopper | 漏斗 |
jigsaw | 拼圖方塊 |
jukebox | 唱片機 |
lectern | 講台 |
mob_spawner | 生怪磚 |
piston | 移動中的活塞 |
sculk_catalyst | 伏聆觸媒 |
sculk_sensor | 伏聆振測器 |
sculk_shrieker | 伏聆嘯口 |
shulker_box | 界伏盒 |
sign | 告示牌 |
skull | 生物頭顱 |
smoker | 煙燻爐 |
structure_block | 結構方塊 |
trapped_chest | 陷阱儲物箱 |
- 方塊實體資料
- 方塊實體共通標籤
- CustomName:(可選)旗幟的自訂名稱,是一個JSON文字。當旗幟掉落成一個物品時,會被儲存並重新使用。
- Patterns:按照順序的旗幟圖案列表。
- :一個獨立的圖案。
- Color:圖案的顏色。
- Pattern:圖案的類型。
- :一個獨立的圖案。
基岩版:
圖案類型
基岩版:
- 方塊實體資料
- 方塊實體共通標籤
- forceunpair:(可能不存在)儲物箱並排放置時不合併成大儲物箱時為true。
- pairlead:(可能不存在)配對後形成的大儲物箱的前部。
- pairx:(可能不存在)儲物箱的X軸位置配對。
- pairz:(可能不存在)儲物箱的Z軸位置配對。
- Findable:未知。
- LootTable:(可能不存在)用於在下次打開時填充物品欄的戰利品表,或者以其他方式與之互動的物品。
- LootTableSeed:生成戰利品表所需的種子號,0表示隨機生成。
- Items:容器內物品的列表。
- :單個物品及其欄位標籤。
- Slot:物品所在欄位的編號。
- 物品堆疊共通標籤
- :單個物品及其欄位標籤。
基岩版:
- 方塊實體資料
- FlowerPos:(可選)儲存花的位置,以便其他蜜蜂能夠找到。
- X:花的X座標。
- Y:花的Y座標。
- Z:花的Z座標。
- Bees:巢內目前存在的實體。
- :巢內的單個實體。
- MinOccupationTicks:該實體會在巢內滯留的最短時間(刻)。
- TicksInHive:該實體在巢內已滯留的時間(刻)。
- EntityData:巢內該實體的NBT資料。
- 見實體格式,不包含 UUID標籤。
- :巢內的單個實體。
- FlowerPos:(可選)儲存花的位置,以便其他蜜蜂能夠找到。
基岩版:
- 方塊實體資料
- 方塊實體共通標籤
- ShouldSpawnBees:生成新蜜蜂時值為true。
- Occupants:(可能不存在)蜂窩或蜂箱內的實體。
- :蜂窩或蜂箱內的具體實體。
- ActorIdentifier:蜂窩或蜂箱蜂箱內的具體單個實體。在原版遊戲下總會是
minecraft:bee<>
。[需要更多資訊] - TicksLeftToStay:實體離開蜂窩或蜂箱蜂箱前的時間(刻)。
- SaveData:蜂窩或蜂箱蜂箱內實體的NBT資料。
- 實體共通標籤
- 此實體種類獨有的標籤。
- ActorIdentifier:蜂窩或蜂箱蜂箱內的具體單個實體。在原版遊戲下總會是
- :蜂窩或蜂箱內的具體實體。
- 方塊實體資料
- 方塊實體共通標籤
- CustomName:(可選)表示目前高爐名稱的JSON文字,會取代預設名稱出現在高爐的介面中。
- Items:目前高爐內物品的列表。
- :一個物品。欄位0代表正在熔煉的物品;欄位1代表作為燃料的物品;欄位2代表成品。
- 物品共通標籤
- :一個物品。欄位0代表正在熔煉的物品;欄位1代表作為燃料的物品;欄位2代表成品。
- Lock:(可選)如果不為空,會阻止高爐被「未持有名稱與此項相符的物品」的玩家打開。
- BurnTime:在目前的燃料耗盡之前,剩下的遊戲刻。
- CookTime:該物品已被冶煉的遊戲刻。當該值達到 CookTimeTotal時,物品完成燒制,此值重設為0。如果 BurnTime為0,此值每刻減少2。
- CookTimeTotal:該物品需要多少遊戲刻才能完成燒制。
- RecipesUsed:高爐從最後一次成品被玩家取出到現在已經燒制的配方數,用於計算經驗值。
- <一個配方的命名空間ID>:此配方燒製成功的數量。
基岩版:
- 方塊實體資料
- 方塊實體共通標籤
- BurnTime:燃料在耗盡前的時間(刻)。
- CookTime:烹飪時間(刻)。在值達到200刻(10秒)時烹飪完成,且在
BurnTime
達到0時自動設定為0。[需要測試] - BurnDuration:使用的燃料允許的總燃燒時間(刻)。
- StoredXPInt:儲存的經驗值數量。
- Items:容器內物品的列表。
- :物品及其欄位標籤。
- Slot:物品所在欄位的編號。
- 物品堆疊共通標籤
- :物品及其欄位標籤。
- 方塊實體值
- 方塊實體共通標籤
- CustomName:(可選)表示目前釀造台名稱的JSON文字,會取代預設名稱出現在釀造台的介面中。
- Items:目前釀造台內物品的列表。
- :一個物品。欄位0代表左邊的藥水槽;欄位1代表中間的藥水槽;欄位2代表右邊的藥水槽;欄位3代表釀造物品槽;欄位4代表燃料(烈焰粉)槽。
- 物品共通標籤
- :一個物品。欄位0代表左邊的藥水槽;欄位1代表中間的藥水槽;欄位2代表右邊的藥水槽;欄位3代表釀造物品槽;欄位4代表燃料(烈焰粉)槽。
- Lock:(可選)如果不為空,會阻止釀造台被「未持有名稱與此項相符的物品」的玩家打開。
- BrewTime:釀造藥水剩餘的所需時間的刻數。
- Fuel:釀造台的剩餘能量。每開始一次釀造減1。
基岩版:
- 方塊實體資料
- 方塊實體共通標籤
- FuelTotal:燃料的最大值。
- CookTime:完成釀造前的剩餘時間(刻)。
- FuelAmount:燃料的剩餘量。
- Items:放進釀造台內的物品列表。
- :釀造台內的物品,以及其欄位標籤。
- Slot:物品所在的欄位編號。
- 物品堆疊共通標籤
- :釀造台內的物品,以及其欄位標籤。
基岩版:
- 方塊實體值
- 方塊實體共通標籤
- LootTable:所調用的戰利品表json檔案的路徑。
- LootTableSeed:戰利品表的種子碼。
- brush_count:刷掃次數。
- brush_direction:清刷的方向,決定物品繪製的位置。可選值1-6,分別對應下上北南西東。
- type:用於指示該可疑的方塊的種類,值為
minecraft:suspicious_gravel
(可疑的礫石)或minecraft:suspicious_sand
(可疑的沙子)。
- 方塊實體資料
- 方塊實體共通標籤
- last_vibration_frequency:上次觸發伏聆振測器的遊戲事件的振動頻率。
- listener:振動監聽器的資料。
- 振動監聽器
- 方塊實體資料
- 方塊實體共通標籤
- auto:表示此指令方塊是否保持開啟。
- Command:指令方塊中的指令。
- conditionMet:表示受條件制約的指令方塊是否滿足條件。如果此指令方塊不受制約,此值為true。
- CustomName:表示目前指令方塊名稱的JSON文字,預設為「@」。
- LastOutput:上一條指令的輸出,是一個JSON文字。遊戲規則
commandBlockOutput
為false時依舊會儲存。當 TrackOutput為false時不存在。 - LastExecution:上一條指令執行的時間戳。當 UpdateLastExecution為false時不存在。
- powered:表示指令方塊是否已被啟動。
- SuccessCount:表示用紅石比較器輸出的模擬訊號強度。只在指令方塊啟動後更新。
- TrackOutput:表示是否儲存上一條指令的輸出。可以在GUI中點擊"上一個輸出"文字框旁的按鈕進行開關。按鈕上的標誌指示出目前的狀態:O為true,X為false。
- UpdateLastExecution:表示是否儲存上一條指令執行的時間戳。
基岩版:
- 方塊實體資料
- 方塊實體共通標籤
- Command:指令方塊內的指令。
- Version:資料版本。
- SuccessCount:成功次數,表示紅石比較器輸出的訊號強度。
- CustomName:指令方塊的自訂名稱,顯示在方塊頂部以及GUI內。
- LastOutput:由指令方塊最新的一行輸出的本地化鍵名。在遊戲規則
commandBlockOutput
被設定為false時仍會儲存。在指令方塊的GUI中顯示。 - LastOutputParams:輸出的本地化字串的參數列表。
- :具體參數。
- TrackOutput:用於決定是否儲存
LastOutput
。可以在指令方塊UI內的「上一個輸出」旁邊的按鈕進行控制。 - LastExecution:儲存指令方塊最後一次執行指令的時間。
- TickDelay:執行每次指令的間隔時間(刻)。
- ExecuteOnFirstTick:在儲存或啟動後在首個刻執行指令時為true。
- 方塊實體資料
- 方塊實體共通標籤
- CustomName:(可選)表示目前合成器名稱的JSON文字,會取代預設名稱出現在合成器的介面中。
- Items:目前合成器內物品的列表。
- :一個物品。物品欄位編號為0-8,左上角為第0格,右下角為第8格。
- 物品共通標籤
- :一個物品。物品欄位編號為0-8,左上角為第0格,右下角為第8格。
- Lock:(可選)如果不為空,會阻止合成器被「未持有名稱與此項相符的物品」的玩家打開。
- LootTable:(可選)決定合成器第一次被打開時,生成戰利品所用的戰利品表的命名空間ID。此項將在戰利品生成之後被刪除。
- LootTableSeed:(可選)生成戰利品使用的種子,0或不輸入將使用隨機序列。此項將在戰利品生成之後被刪除。
- crafting_ticks_remaining:合成器取消合成狀態倒計時。當合成器成功合成物品後,此值被設定為6遊戲刻(0.3秒),並將方塊屬性
crafting
設定為true。當此值降低為0時,crafting
設定為false。 - disabled_slots:合成器內停用的欄位,欄位編號與存放物品列表內的欄位編號順序相同。
- triggered:表示合成器是否被紅石訊號啟動,與方塊屬性
triggered
同步。
基岩版:
- 方塊實體資料
- 方塊實體共通標籤
- tag
- sherds:飾紋陶罐各個面的陶器碎片樣式,4個面按照後左右前排列。
- :陶器碎片的命名空間ID。如果此面沒有陶器碎片樣式,則此值為
minecraft:brick
(紅磚頭)。
- :陶器碎片的命名空間ID。如果此面沒有陶器碎片樣式,則此值為
- sherds:飾紋陶罐各個面的陶器碎片樣式,4個面按照後左右前排列。
基岩版:
- 方塊實體值
- 方塊實體共通標籤
- LootTable:(可能不存在)用於在下次打開時填充物品欄的戰利品表,或者以其他方式與之互動的物品。
- LootTableSeed:生成戰利品表所需的種子號,0表示隨機生成。
- Items:容器內物品的列表。
- :物品及其欄位標籤。
- Slot:物品所在欄位的編號。
- 物品堆疊共通標籤
- :物品及其欄位標籤。
- 方塊實體資料
- 方塊實體共通標籤
- Age:終界折躍門方塊的年齡,單位為刻,用於控制光柱的產生。當低於200時,如果此時折躍門剛剛生成,它會發出一束洋紅色光柱,否則生成紫色光柱。
- ExactTeleport:(可選)表示是否把實體準確傳送到 ExitPortal指定的座標而不是傳送到這個座標附近的位置。
- ExitPortal:(可選)當進入終界折躍門方塊要把實體傳送到的位置。
- X:目標位置的X座標。
- Y:目標位置的Y座標。
- Z:目標位置的Z座標。
基岩版:
- 方塊實體資料
- 方塊實體共通標籤
- Age:終界折躍門的「年齡」(刻),用於控制光柱的產生。
- ExitPortal:實體進入折躍門後傳送的地點座標。
- :X軸座標。
- :Y軸座標。
- :Z軸座標。
- 方塊實體資料
- 方塊實體共通標籤
- CustomName:(可選)表示目前熔爐名稱的JSON文字,會取代預設名稱出現在熔爐的介面中。
- Items:目前熔爐內物品的列表。
- :一個物品。欄位0代表被熔煉的物品;欄位1代表要作為下個燃料源使用的物品;欄位2代表熔煉完成所得出的物品。
- 物品共通標籤
- :一個物品。欄位0代表被熔煉的物品;欄位1代表要作為下個燃料源使用的物品;欄位2代表熔煉完成所得出的物品。
- Lock:(可選)如果不為空,會阻止熔爐被「未持有名稱與此項相符的物品」的玩家打開。
- BurnTime:在目前的燃料耗盡之前,剩下的遊戲刻。
- CookTime:該物品已被冶煉的遊戲刻。當該值達到 CookTimeTotal時,物品完成燒制,此值重設為0。如果 BurnTime為0,此值每刻減少2。
- CookTimeTotal:該物品需要多少遊戲刻才能完成燒制。
- RecipesUsed:熔爐從最後一次成品被玩家取出到現在已經燒制的配方數,用於計算經驗值。
- <一個配方的命名空間ID>:此配方燒製成功的數量。
基岩版:
- 方塊實體資料
- 方塊實體共通標籤
- 基岩版世界格式/方塊實體格式
- 方塊實體資料
- 方塊實體共通標籤
- back_text:告示牌背面的文字資訊。
- front_text:告示牌正面的文字資訊。
- is_waxed:表示告示牌是否被塗蠟。塗蠟後告示牌的文字不能被修改,但允許告示牌文字中的指令執行。
基岩版:
- 方塊實體資料
- 方塊實體共通標籤
- CustomName:(可選)表示目前漏斗名稱的JSON文字,會取代預設名稱出現在漏斗的介面中。
- Items:目前漏斗內物品的列表。
- :一個物品。漏斗的物品欄位編號為0-4,從左邊欄位開始到右邊欄位結束。
- 物品共通標籤
- :一個物品。漏斗的物品欄位編號為0-4,從左邊欄位開始到右邊欄位結束。
- Lock:(可選)如果不為空,會阻止漏斗被「未持有名稱與此項相符的物品」的玩家打開。
- LootTable:(可選)決定漏斗第一次被打開時,生成戰利品所用的戰利品表的命名空間ID。此項將在戰利品生成之後被刪除。
- LootTableSeed:(可選)生成戰利品使用的種子,0或不輸入將使用隨機序列。此項將在戰利品生成之後被刪除。
- TransferCooldown:傳輸物品的冷卻時間。此值為0時物品會被傳輸,並將此值設定為8遊戲刻(0.4秒)。
基岩版:
- 方塊實體資料
- 方塊實體共通標籤
- TransferCooldown:在進行下次物品傳輸時剩餘時間(刻),0-8的值表示不會傳送。
- Items:容器內物品的列表。
- :物品及其欄位標籤。
- Slot:物品所在欄位的編號。
- 物品堆疊共通標籤
- :物品及其欄位標籤。
- 方塊實體資料
- 方塊實體共通標籤
- name:拼圖方塊的名稱。
- final_state:這個拼圖方塊將變成的方塊。
- joint:拼接類型,只能是
rollable
(可旋轉)和aligned
(固定)。 - placement_priority:放置優先級。當放置拼圖方塊所對應的結構時,系統以放置優先級從大到小的順序依次放置各個結構。如果兩個結構具有相同的放置優先級,則以預設順序放置。
[新增:JE 1.20.3] - pool:拼圖方塊的目標池,用於從中選擇結構。
- target:當結構從目標池中生成時要對接的拼圖方塊名稱。
- selection_priority:選擇優先級。當父級結構生成時,決定子級拼圖方塊的選擇次序,按選擇優先級從大到小排序依次選擇。如果兩個拼圖方塊具有相同的選擇優先級,則以隨機順序選擇。
[新增:JE 1.20.3]
基岩版:
- 方塊實體資料
- 方塊實體共通標籤
- name:拼圖方塊的名稱。此拼圖方塊會和其他結構中目標標籤裡具有此值的拼圖方塊對齊。
- target:拼圖方塊的目標名稱。此拼圖方塊會和其他結構中目標標籤裡具有此值的拼圖方塊對齊。
- target_pool:拼圖方塊的目標池,用於從中選擇結構。
- final_state:這個拼圖方塊將變成的方塊。
- joint:拼圖方塊所展示的一個結構的連接類型,只能是
rollable
和aligned
。
- 方塊實體資料
- 方塊實體共通標籤
- 生怪磚共通標籤
基岩版:
- 方塊實體資料
- 方塊實體共通標籤
- EntityIdentifier:將要生成的實體的ID。
[需要更多資訊] - Delay:在下次生成前的冷卻時間(刻)。設為0會導致玩家進入生怪範圍後立即生成實體。
- MinSpawnDelay:下一次生成冷卻時間的最小隨機冷卻時間值。
- MaxSpawnDelay:下一次生成冷卻時間的最大隨機冷卻時間值。
- SpawnCount:每次生成的實體數。
- MaxNearbyEntities:允許的附近相同實體的最大數量(
SpawnRange
* 2 + 1 ×SpawnRange
* 2 + 1 × 8的範圍,以生怪磚為中心[需要測試])。 - RequiredPlayerRange:當玩家啟動此生怪磚時覆蓋的球形範圍。
- SpawnRange:生怪磚嘗試隨機放置生物的範圍半徑。範圍是方形的,且中心定於為生怪磚的X和Z座標的隨機附近,而不是生怪磚的位置。
[需要測試]預設值為4。 - DisplayEntityWidth:生怪磚內顯示的實體的寬度。
- DisplayEntityHeight:生怪磚內顯示的實體的高度。
- DisplayEntityScale:生怪磚內顯示的實體的大小。
- SpawnData:(可能不存在)包含在生成後複製到下一個生成的實體的標籤。
- Properties:屬性組件。
- TypeId:實體的命名空間ID。
- Weight:與其他生成權重相比,該生成被選中的機率。必須為正且至少為1。
- SpawnPotentials:(可能不存在)允許生成的實體的列表。
- :下一次生成。
- Properties:屬性組件。
- TypeId:實體的命名空間ID。
- Weight:與其他生成權重相比,該生成被選中的機率。必須為正且至少為1。
- :下一次生成。
- 方塊實體資料
- 方塊實體共通標籤
- blockState:所代表的被推動的方塊。
- 方塊狀態
- extending:表示方塊是否已被推動。
- facing:將要推動方塊的方向,從0到5分別對應下上北南西東。
- progress:方塊已經移動的距離。
- source:表示方塊是否為活塞頭本身。
基岩版:
- 方塊實體資料
- 方塊實體共通標籤
- Progress:方塊被移動的距離,值為0.0、0.5或1.0。
- LastProgress:未知。
- State:未知。
- NewState:未知。
- Sticky:是黏性活塞時為true。
- AttachedBlocks:需要移動的方塊的座標。
- :第一個方塊的X軸座標。
- :第一個方塊的Y軸座標。
- :第一個方塊的Z軸座標。
- :第二個方塊的X軸座標。
- :第二個方塊的Y軸座標。
- :第二個方塊的Z軸座標。
- :以此類推。
- BreakBlocks:需要被破壞(而不能被正常移動)的方塊的座標。
- :第一個方塊的X軸座標。
- :第一個方塊的Y軸座標。
- :第一個方塊的Z軸座標。
- :第二個方塊的X軸座標。
- :第二個方塊的Y軸座標。
- :第二個方塊的Z軸座標。
- :以此類推。
- movingBlock:被移動的方塊。
- 方塊共通標籤
- movingBlockExtra:被移動的方塊(額外值)。
- 方塊共通標籤
- pistonPosX:活塞基底的X軸座標。
- pistonPosY:活塞基底的Y軸座標。
- pistonPosZ:活塞基底的Z軸座標。
- movingEntity:該移動的方塊儲存的方塊實體資料。
- 方塊實體共通標籤
- 方塊實體資料
- 方塊實體共通標籤
- cursors:包含儲存蔓延訊號的方塊的列表。
- 方塊實體資料
- 方塊實體共通標籤
- listener:振動監聽器的資料。
- 振動監聽器
- warning_level:警告等級。如果伏聆嘯口在上一次收到訊號後沒有被成功啟動,此值為0;如果上一次被成功啟動,則設定為啟動伏聆嘯口的玩家的警告等級。
- 方塊實體資料
- 方塊實體共通標籤
- back_text:告示牌背面的文字資訊。
- front_text:告示牌正面的文字資訊。
- is_waxed:表示告示牌是否被塗蠟。塗蠟後告示牌的文字不能被修改,但允許告示牌文字中的指令執行。
基岩版:
- 方塊實體資料
- 方塊實體共通標籤
- 基岩版世界格式/方塊實體格式
- 方塊實體資料
- 方塊實體共通標籤
- ExtraType:透過此值可以修改生物頭顱方塊的擁有者,但此值無法被
/data
取得。如果 SkullOwner存在,則此值無效。 - note_block_sound:玩家的頭放置在音階盒上時,敲擊音階盒會發出的音效的命名空間ID。
- SkullOwner:對於頭顱擁有者的定義。如果是
player_head
或player_wall_head
,顯示玩家的外觀;如果缺失,顯示預設的Steve外觀。- Id:(可選)擁有者的UUID。
- Name:(可選)擁有者的使用者名稱。
- Properties:玩家配置屬性。
基岩版:
- 方塊實體資料
- 方塊實體共通標籤
- CustomName:(可選)表示目前煙燻爐名稱的JSON文字,會取代預設名稱出現在煙燻爐的介面中。
- Items:目前煙燻爐內物品的列表。
- :一個物品。欄位0代表正在熔煉的物品;欄位1代表下一個作為燃料的物品;欄位2代表成品。
- 物品共通標籤
- :一個物品。欄位0代表正在熔煉的物品;欄位1代表下一個作為燃料的物品;欄位2代表成品。
- Lock:(可選)如果不為空,會阻止煙燻爐被「未持有名稱與此項相符的物品」的玩家打開。
- BurnTime:在目前的燃料耗盡之前,剩下的遊戲刻。
- CookTime:該物品已被冶煉的遊戲刻。當該值達到 CookTimeTotal時,物品完成燒制,此值重設為0。如果 BurnTime為0,此值每刻減少2。
- CookTimeTotal:該物品需要多少遊戲刻才能完成燒制。
- RecipesUsed:煙燻爐從最後一次成品被玩家取出到現在已經燒制的配方數,用於計算經驗值。
- <一個配方的命名空間ID>:此配方燒製成功的數量。
基岩版:
- 方塊實體資料
- 方塊實體共通標籤
- 基岩版世界格式/方塊實體格式
- 方塊實體資料
- 方塊實體共通標籤
- author:結構方塊的建立者。如果為載入模式且結構有效,通常為「?」;其他情況下為放置此方塊的玩家名稱。
- ignoreEntities:表示結構中的實體是否會被忽略。
- integrity:結構完整度。
- metadata:元資料,在資料模式時有效。
- mirror:結構進行鏡像的方法。只會是
NONE
(無)、LEFT_RIGHT
(左/右)或FRONT_BACK
(前/後)中的一個。 - mode:此結構方塊目前的模式。只會是
SAVE
(儲存)、LOAD
(載入)、CORNER
(角落)或DATA
(資料)中的一個。 - name:結構的名稱。
- posX:結構起始X座標。
- posY:結構起始Y座標。
- posZ:結構起始Z座標。
- powered:表示結構方塊是否被紅石啟動。
- rotation:結構的旋轉角度。只會是
NONE
(無)、CLOCKWISE_90
(順時針旋轉90°)、CLOCKWISE_180
(順時針旋轉180°)或COUNTERCLOCKWISE_90
(逆時針旋轉90°)中的一個。 - seed:載入結構使用的種子。
- sizeX:該結構在X方向上的大小,即結構的長度。
- sizeY:該結構在Y方向上的大小,即結構的高度。
- sizeZ:該結構在Z方向上的大小,即結構的寬度。
- showair:表示是否顯示隱形方塊。
- showboundingbox:表示是否在創造模式中顯示結構邊框。
基岩版:
- 方塊實體資料
- 方塊實體共通標籤
- isPowered:結構方塊被紅石訊號啟動時為true。
- data:儲存的資料。
- redstoneSaveMode:結構方塊的模式。
[需要更多資訊] - xStructureOffset:結構的X軸偏移量座標。
- yStructureOffset:結構的Y軸偏移量座標。
- zStructureOffset:結構的Z軸偏移量座標。
- xStructureSize:結構的X軸大小座標。
- yStructureSize:結構的Y軸大小座標。
- zStructureSize:結構的Z軸大小座標。
- structureName:結構的名稱。
- dataField:未知。
- ignoreEntities:結構內的實體是否被忽略。
- includePlayers:結構內的玩家是否被忽略。
- removeBlocks:結構內的方塊是否被忽略。
- showBoundingBox:結構方塊是否為創造模式下的玩家展示邊界框。
- rotation:結構的旋轉角度。
[需要更多資訊] - mirror:結構的對稱情況。
[需要更多資訊] - animationMode:動畫模式。
[需要更多資訊] - animationSeconds:動畫的持續時間。
[需要更多資訊] - integrity:放置的結構的完整度。
- seed:用於結構完整性的種子,0表示隨機。
[需要測試]
結構片段格式[]
結構片段是區塊生成時進行結構放置的單元。對於不同的結構,有不同的結構片段資料進行不同的結構放置。所有結構片段資料都有下面的標籤:
- 結構片段資料根標籤。
- BB:結構片段的範圍。此陣列一共有6個int,分別代表了最小X、Y、Z座標和最大X、Y、Z座標。
- GD:生成深度,用於正確生成結構片段的位置與方向。
- id:結構片段的命名空間ID。
- O:結構片段的方向,從0到3分別對應南西北東。
目前Minecraft中有56種結構片段,其中24種沒有額外的標籤,它們分別是:
minecraft:nebcr
(Nether Fortress Bridge Crossing,地獄要塞中的露天的橋樑交叉口)minecraft:nebs
(Nether Fortress Bridge Straight,地獄要塞中的橋)minecraft:neccs
(Nether Fortress Castle Corridor Stairs,地獄要塞中的走廊階梯)minecraft:nectb
(Nether Fortress Castle Corridor T Balcony,地獄要塞中的走廊陽台)minecraft:nece
(Nether Fortress Castle Corridor Entrance,地獄要塞中的熔岩井房間)minecraft:nescsc
(Nether Fortress Castle Small Corridor Crossing,地獄要塞中的走廊的十字路口)minecraft:nesc
(Nether Fortress Castle Small Corridor,地獄要塞中的直走廊)minecraft:necsr
(Nether Fortress Castle Stalk Room,地獄要塞中的地獄疙瘩農場)minecraft:nerc
(Nether Fortress Room Crossing,地獄要塞中的封閉的橋樑交叉口)minecraft:nesr
(Nether Fortress Stairs Room,地獄要塞中的封閉的橋間階梯)minecraft:nestart
(Nether Fortress Start,地獄要塞的起始片段)minecraft:omb
(Ocean Monument Building,海底神殿的起始片段)minecraft:omcr
(Ocean Monument Core Room,海底神殿中的核心藏寶室)minecraft:omdxr
(Ocean Monument Double X Room,海底神殿中的DX房間)minecraft:omdxyr
(Ocean Monument Double XY Room,海底神殿中的DXY房間)minecraft:omdyr
(Ocean Monument Double Y Room,海底神殿中的DY房間)minecraft:omdyzr
(Ocean Monument Double YZ Room,海底神殿中的DYZ房間)minecraft:omdzr
(Ocean Monument Double Z Room,海底神殿中的DZ房間)minecraft:omentry
(Ocean Monument Entry Room,海底神殿中的入口間)minecraft:ompenthouse
(Ocean Monument Penthouse,海底神殿中的頂層房間)minecraft:omsimple
(Ocean Monument Simple Room,海底神殿中的十字形房間、細支柱房間和暗海磷石小房間)minecraft:omsimplet
(Ocean Monument Simple Top Room,海底神殿中的海綿房)minecraft:omwr
(Ocean Monument Wing Room,海底神殿中的側翼)minecraft:btp
(Buried Treature Piece,埋藏的寶藏)
其餘結構片段的額外標籤在下文列出。
minecraft:mscorridor[]
此結構片段表示廢棄礦坑中的鐵軌區域與生怪磚區域(Mine Shaft Corridor) 。
- 結構片段資料根標籤。
- hps:表示此走廊是否有洞穴蜘蛛生怪磚。
- hr:表示此走廊是否有鐵軌。
- Num:走廊長度。
- MST:廢棄礦坑的類型,0代表普通類型,1代表惡地類型。
- sc:表示此走廊是否有蜘蛛網。
minecraft:mscrossing[]
此結構片段表示廢棄礦坑中的交叉區域(Mine Shaft Crossing) 。
- 結構片段資料根標籤。
- D:此交叉區域的建構時的方向,從0到3分別對應南西北東,防止重複建立一塊結構片段。
- MST:廢棄礦坑的類型,0代表普通類型,1代表惡地類型。
- tf:表示此交叉區域是否有兩層。
minecraft:msroom[]
此結構片段表示廢棄礦坑中的房間區域(Mine Shaft Room) 。
- 結構片段資料根標籤。
- Entrances:房間的入口。
- :房間入口的範圍。此陣列一共有6個int,分別代表了最小X、Y、Z座標和最大X、Y、Z座標。
- MST:廢棄礦坑的類型,0代表普通類型,1代表惡地類型。
- Entrances:房間的入口。
minecraft:msstairs[]
此結構片段表示廢棄礦坑中的階梯區域(Mine Shaft Stairs) 。
- 結構片段資料根標籤。
- MST:廢棄礦坑的類型,0代表普通類型,1代表惡地類型。
minecraft:nebef[]
此結構片段表示地獄要塞橋樑的盡頭(Nether Fortress Bridge End Filler)。
- 結構片段資料根標籤。
- Seed:生成結構片段時使用的種子。
minecraft:nesclt和minecraft:nescrt[]
此結構片段表示地獄要塞中的彎走廊(Nether Fortress Castle Small Corridor Left/Right Turn)。
- 結構片段資料根標籤。
- Chest:表示生成結構時是否加入戰利品箱。
minecraft:nemt[]
此結構片段表示地獄要塞中的瞭望台(Nether Fortress Monster Throne)。
- 結構片段資料根標籤。
- Mob:表示是否已經放置了烈焰使者生怪磚。
minecraft:shcc[]
此結構片段表示要塞中含戰利品祭壇的走廊(StrongHold Chest Corridor)。
- 結構片段資料根標籤。
- Chest:表示是否已經放置了戰利品箱。
- EntryDoor:此走廊入口門的類型。可以為
OPENING
(開放入口)、WOOD_DOOR
(木門)、GRATES
(鐵柵欄)和IRON_DOOR
(鐵門)。
minecraft:shfc[]
此結構片段表示要塞中的走廊(StrongHold Filler Corridor)。
- 結構片段資料根標籤。
- EntryDoor:此走廊入口門的類型。可以為
OPENING
(開放入口)、WOOD_DOOR
(木門)、GRATES
(鐵柵欄)和IRON_DOOR
(鐵門)。 - Steps:走廊長度。
- EntryDoor:此走廊入口門的類型。可以為
minecraft:sh5c[]
此結構片段表示要塞中的五通道路口(StrongHold Five Crossing)。
- 結構片段資料根標籤。
- EntryDoor:此走廊入口門的類型。可以為
OPENING
(開放入口)、WOOD_DOOR
(木門)、GRATES
(鐵柵欄)和IRON_DOOR
(鐵門)。 - leftHigh:表示五通道路口中是否在下面向下的階梯中有一個出口。
- leftLow:表示五通道路口中是否在下面向上的階梯中有一個出口。
- rightHigh:表示五通道路口中是否在上面向下的階梯中有一個出口。
- rightLow:表示五通道路口中是否在上面向上的階梯中有一個出口。
- EntryDoor:此走廊入口門的類型。可以為
minecraft:shlt和minecraft:shrt[]
此結構片段表示要塞中的轉角(StrongHold Left/Right Turn)。
- 結構片段資料根標籤。
- EntryDoor:此走廊入口門的類型。可以為
OPENING
(開放入口)、WOOD_DOOR
(木門)、GRATES
(鐵柵欄)和IRON_DOOR
(鐵門)。
- EntryDoor:此走廊入口門的類型。可以為
minecraft:shli[]
此結構片段表示要塞中的圖書館(StrongHold Library)。
- 結構片段資料根標籤。
- EntryDoor:此圖書館入口門的類型。可以為
OPENING
(開放入口)、WOOD_DOOR
(木門)、GRATES
(鐵柵欄)和IRON_DOOR
(鐵門)。 - Tall:圖書館是否有通往上方的階梯。
- EntryDoor:此圖書館入口門的類型。可以為
minecraft:shpr[]
此結構片段表示要塞中的傳送門房間(StrongHold Portal Room)。
- 結構片段資料根標籤。
- EntryDoor:此圖書館入口門的類型。可以為
OPENING
(開放入口)、WOOD_DOOR
(木門)、GRATES
(鐵柵欄)和IRON_DOOR
(鐵門)。 - Mob:表示是否已經放置了蠹魚生怪磚。
- EntryDoor:此圖書館入口門的類型。可以為
minecraft:shph[]
此結構片段表示要塞中的牢房(StrongHold Prison Hall)。
- 結構片段資料根標籤。
- EntryDoor:此牢房入口門的類型。可以為
OPENING
(開放入口)、WOOD_DOOR
(木門)、GRATES
(鐵柵欄)和IRON_DOOR
(鐵門)。
- EntryDoor:此牢房入口門的類型。可以為
minecraft:shrc[]
此結構片段表示要塞中的交叉房間(StrongHold Room Crossing)。
minecraft:shsd和minecraft:shstart[]
此結構片段表示要塞中的旋轉階梯(StrongHold Stairs Down/StrongHold Start)。
- 結構片段資料根標籤。
- EntryDoor:此階梯入口門的類型。可以為
OPENING
(開放入口)、WOOD_DOOR
(木門)、GRATES
(鐵柵欄)和IRON_DOOR
(鐵門)。 - Source:表示此旋轉階梯是否為要塞的起點。
- EntryDoor:此階梯入口門的類型。可以為
minecraft:shs[]
此結構片段表示要塞中的直走廊(StrongHold Straight)。
- 結構片段資料根標籤。
- EntryDoor:此走廊入口門的類型。可以為
OPENING
(開放入口)、WOOD_DOOR
(木門)、GRATES
(鐵柵欄)和IRON_DOOR
(鐵門)。 - Left:表示在走廊左側是否有一個開口。
- Right:表示在走廊右側是否有一個開口。
- EntryDoor:此走廊入口門的類型。可以為
minecraft:shssd[]
此結構片段表示要塞中的直階梯(StrongHold Straight Stairs Down)。
- 結構片段資料根標籤。
- EntryDoor:此階梯入口門的類型。可以為
OPENING
(開放入口)、WOOD_DOOR
(木門)、GRATES
(鐵柵欄)和IRON_DOOR
(鐵門)。
- EntryDoor:此階梯入口門的類型。可以為
minecraft:tejp[]
此結構片段表示叢林神廟(Jungle Pyramid Piece)。
- 結構片段資料根標籤。
- placedTrap1:表示是否已經放置走廊發射器發射箭的陷阱。
- placedTrap2:表示是否已經放置儲物箱發射器發射箭的陷阱。
- placedMainChest:表示是否已經放置主儲物箱。
- placedHiddenChest:表示是否已經放置隱藏儲物箱。
minecraft:orp[]
此結構片段表示海底廢墟(Ocean Ruin)。
- 結構片段資料根標籤。
- BiomeType:此遺蹟所處的海洋的溫度。可以為
WARM
(溫暖海域)和COLD
(寒冷海域)。 - Integrity:此結構的完整度。
- IsLarge:表示此結構是否為大型廢墟。
- Rot:此結構放置時的旋轉角度,可以為
NONE
(不旋轉)、CLOCKWISE_90
(順時針旋轉90度)、CLOCKWISE_180
(旋轉180度)、COUNTERCLOCKWISE_90
(逆時針旋轉90度)。 - Template:此結構使用的結構模板的命名空間ID。
- TPX:結構模板的X座標起始點。
- TPY:結構模板的Y座標起始點。
- TPZ:結構模板的Z座標起始點。
- BiomeType:此遺蹟所處的海洋的溫度。可以為
minecraft:iglu[]
此結構片段表示雪屋(Igloo)。
- 結構片段資料根標籤。
- Rot:此結構放置時的旋轉角度,可以為
NONE
(不旋轉)、CLOCKWISE_90
(順時針旋轉90度)、CLOCKWISE_180
(旋轉180度)、COUNTERCLOCKWISE_90
(逆時針旋轉90度)。 - Template:此結構使用的結構模板的命名空間ID。
- TPX:結構模板的X座標起始點。
- TPY:結構模板的Y座標起始點。
- TPZ:結構模板的Z座標起始點。
- Rot:此結構放置時的旋轉角度,可以為
minecraft:rupo[]
此結構片段表示廢棄傳送門(Ruined Potral)。
- 結構片段資料根標籤。
- Mirror:此結構放置時的採取的對稱方式,可以為
NONE
(不進行鏡像對稱)、LEFT_RIGHT
(左右鏡像對稱)、FRONT_BACK
(前後鏡像對稱)。 - Properties:廢棄傳送門的放置屬性。
- air_pocket:此廢棄傳送門是否含有空洞。
- cold:表示此廢棄傳送門是否已經冷卻,決定放置熔岩、岩漿塊和地獄石。
- mossiness:廢棄傳送門的廢棄程度,值越大結構中方塊的形式越破碎。
- overgrown:表示此廢棄傳送門是否生成樹葉。
- replace_with_blackstone:表示此廢棄傳送門中的一部分方塊是否替換為黑石。
- vines:表示此廢棄傳送門是否生成藤蔓。
- Rotation:此結構放置時的旋轉角度,可以為
NONE
(不旋轉)、CLOCKWISE_90
(順時針旋轉90度)、CLOCKWISE_180
(旋轉180度)、COUNTERCLOCKWISE_90
(逆時針旋轉90度)。 - Template:此結構使用的結構模板的命名空間ID。
- TPX:結構模板的X座標起始點。
- TPY:結構模板的Y座標起始點。
- TPZ:結構模板的Z座標起始點。
- VerticalPlacement:廢棄傳送門的垂直放置模式,可以為
on_land_surface
(地表)、partly_buried
(部分掩埋)、on_ocean_floor
(海床上)、in_mountain
(山中)、underground
(地下)和in_nether
(地獄)。
- Mirror:此結構放置時的採取的對稱方式,可以為
minecraft:tesh[]
此結構片段表示沼澤小屋(Swampland Hut)。
- 結構片段資料根標籤。
- Cat:表示是否已經在這個沼澤小屋裏生成黑貓。
- Depth:結構的深度。
- Height:結構的高度。
- HPos:為將結構放置在地面上而移動到的Y高度。若該結構未被移動則為-1。
- Width:結構的寬度。
- Witch:表示是否已經在這個沼澤小屋裏生成女巫。
minecraft:tedp[]
此結構片段表示沙漠神殿(Desert Pyrmaid Piece)。
- 結構片段資料根標籤。
- Depth:結構的深度。
- hasPlacedChest0:表示是否放置了南方的儲物箱。
- hasPlacedChest1:表示是否放置了西方的儲物箱。
- hasPlacedChest2:表示是否放置了北方的儲物箱。
- hasPlacedChest3:表示是否放置了東方的儲物箱。
- Height:結構的高度。
- HPos:為將結構放置在地面上而移動到的Y高度。若該結構未被移動則為-1。
- Width:結構的寬度。
minecraft:ecp[]
此結構片段表示終界城(End City Piece)。
- 結構片段資料根標籤。
- OW:表示在結構放置時是否只忽略結構內的結構方塊。
- Rot:此結構放置時的旋轉角度,可以為
NONE
(不旋轉)、CLOCKWISE_90
(順時針旋轉90度)、CLOCKWISE_180
(旋轉180度)、COUNTERCLOCKWISE_90
(逆時針旋轉90度)。 - Template:此結構使用的結構模板的命名空間ID。
- TPX:結構模板的X座標起始點。
- TPY:結構模板的Y座標起始點。
- TPZ:結構模板的Z座標起始點。
minecraft:wmp[]
此結構片段表示綠林府邸(Woodland Mansion Piece)。
- 結構片段資料根標籤。
- Mi:此結構放置時的採取的對稱方式,可以為
NONE
(不進行鏡像對稱)、LEFT_RIGHT
(左右鏡像對稱)、FRONT_BACK
(前後鏡像對稱)。 - Rot:此結構放置時的旋轉角度,可以為
NONE
(不旋轉)、CLOCKWISE_90
(順時針旋轉90度)、CLOCKWISE_180
(旋轉180度)、COUNTERCLOCKWISE_90
(逆時針旋轉90度)。 - Template:此結構使用的結構模板的命名空間ID。
- TPX:結構模板的X座標起始點。
- TPY:結構模板的Y座標起始點。
- TPZ:結構模板的Z座標起始點。
- Mi:此結構放置時的採取的對稱方式,可以為
minecraft:shipwreck[]
此結構片段表示沉船(Shipwreck Piece)。
- 結構片段資料根標籤。
- isBeached:表示此沉船是否擱淺。
- Rot:此結構放置時的旋轉角度,可以為
NONE
(不旋轉)、CLOCKWISE_90
(順時針旋轉90度)、CLOCKWISE_180
(旋轉180度)、COUNTERCLOCKWISE_90
(逆時針旋轉90度)。 - Template:此結構使用的結構模板的命名空間ID。
- TPX:結構模板的X座標起始點。
- TPY:結構模板的Y座標起始點。
- TPZ:結構模板的Z座標起始點。
minecraft:nefos[]
此結構片段表示地獄化石(Nether Fossil)。
- 結構片段資料根標籤。
- Rot:此結構放置時的旋轉角度,可以為
NONE
(不旋轉)、CLOCKWISE_90
(順時針旋轉90度)、CLOCKWISE_180
(旋轉180度)、COUNTERCLOCKWISE_90
(逆時針旋轉90度)。 - Template:此結構使用的結構模板的命名空間ID。
- TPX:結構模板的X座標起始點。
- TPY:結構模板的Y座標起始點。
- TPZ:結構模板的Z座標起始點。
- Rot:此結構放置時的旋轉角度,可以為
minecraft:jigsaw[]
此結構片段表示使用拼圖的結構。
歷史[]
區塊在Infdev中首次引入。在Beta 1.3中加入區域檔案格式之前,區塊都是獨立儲存在以Base36編碼的區塊位置為檔案名的.dat檔案裡,這種格式是Alpha檔案格式。區域檔案格式變更了這種儲存方式,它把一組32×32區塊儲存在以Base10編碼的座標命名的.mcr檔案裡,以減少Minecraft一次處理檔案的數量的方式來減少硬盤佔用。區域檔案格式的繼承者便是現在的格式——Anvil檔案格式,它只修改區塊格式。區域檔案技術仍然在使用,但其檔案擴展名被改成了.mca。
區域檔案格式到Anvil格式的主要修改是把區塊拆成子區塊。每個區塊被分成若干個16×16×16方塊組成的子區塊以便使完全空的區域不會被儲存。後者也已做好了支持0-4095的方塊ID的準備,而前者支持的ID為0-255。然而,Minecraft沒有為以物品形式存在的方塊做好完全的準備,在256-4095中的許多ID都已被物品佔用。直到平坦化後,方塊與數字ID拆離,從此不再因為ID而使區塊儲存出現問題。
Java版 | |||||
---|---|---|---|---|---|
1.3.1 | 12w21a | 從MobSpawner 中移除了MaxExperience 、RemainingExperience 、ExperienceRegenTick 、ExperienceRegenRate 和ExperienceRegenAmount 。 | |||
1.4.2 | 12w34a | 加入實體WitherBoss 。 | |||
1.5 | 13w02a | 加入實體MinecartTNT 。
| |||
Minecart 被棄用。 | |||||
13w03a | 加入實體MinecartHopper 。 | ||||
13w06a | 加入實體MinecartSpawner 。 | ||||
1.6.1 | 13w16a | 加入實體EntityHorse 。 | |||
13w21a | 從EntityHorse 中移除了ArmorType 。
| ||||
從EntityHorse 中移除了Saddle 。 | |||||
1.6.1-pre | 為EntityHorse 重新加入了Saddle 。 | ||||
1.7.2 | 13w39a | 加入實體MinecartCommandBlock 。 | |||
1.8 | 14w02a | 為儲物箱加入了Lock 。
| |||
現在指定了NBT資料時不再使用物品ID。 | |||||
為FallingSand 加入了Block ,其使用了字母ID格式。 | |||||
14w06a | 為所有實體加入了ShowParticles 。
| ||||
為所有物品實體加入了PickupDelay 。 | |||||
把Age 設定為-32768會使物品永不過期。 | |||||
為所有生物移除了AttackTime 。 | |||||
14w10a | 為Villager 加入了rewardExp 。
| ||||
為所有可以飼養的生物加入了OwnerUUID 。 | |||||
為Skull 加入了Owner 。 | |||||
對物品展示框和畫進行了變更:加入了Facing 、TileX 、TileY 和TileZ 現在表示物品裏面的方塊的座標而不是其放置的物品,同時棄用了Direction 和Dir 。 | |||||
14w11a | 加入實體Endermite 。
| ||||
為Enderman 加入了EndermiteCount 。 | |||||
14w21a | 現在所有實體都有了CustomName 和CustomNameVisible 。 | ||||
14w25a | 加入實體Guardian 。
| ||||
為告示牌加入了Text1 、Text2 、Text3 和Text4 。告示牌現在不再有字元數量限制(16個),現在其限制取決於字元的寬度。 | |||||
14w27a | 加入實體Rabbit 。
為指令方塊和告示牌加入了CommandStats 。 | ||||
14w28a | 從Enderman 移除了EndermiteCount 。 | ||||
14w30a | 為所有實體加入了Silent 。 | ||||
14w32a | 為所有生物加入了NoAI 。
| ||||
加入實體ArmorStand 。 | |||||
14w32c | 為ArmorStand 加入了NoBasePlate 。 | ||||
1.9 | 15w31a | 為Living 加入了標籤HandItems 、ArmorItems 、HandDropChances 和ArmorDropChances 。它們取代了DropChances 和Equipment 標籤。
| |||
為ArmorStand 加入了HandItems 和ArmorItems 。 | |||||
為Entity 加入了Glowing 。 | |||||
為LivingBase 加入了Team 。 | |||||
為EnderDragon 加入了DragonPhase 。 | |||||
加入實體Shulker ,是SnowMan 的子標籤。 | |||||
加入實體ShulkerBullet ,是Entity 的子標籤。 | |||||
加入實體DragonFireball ,其擴展了FireballBase ,但沒有獨有標籤。 | |||||
加入實體TippedArrow 和SpectralArrow ,是Arrow 的子標籤。 | |||||
加入方塊EndGateway 和TileEntity 。 | |||||
加入方塊Structure ,是TileEntity 的子標籤。 | |||||
加入物品標籤Potion ,是tag 的子標籤。 | |||||
15w32a | Tags 和DataVersion 標籤現在可應用於實體上。
| ||||
把Fuse 中PrimedTnt 實體的標籤類型從「Byte」改為「Short」。 | |||||
15w32c | 引入了實體擁有標籤的數量限制(1024個標籤)。在試圖超越此限制時會顯示錯誤:「不能向實體加入超過1024個標籤」。 | ||||
15w33a | 加入實體AreaEffectCloud ,其是Entity 的子標籤。
| ||||
為EndGateway 加入ExactTeleport 並且重新命名Life 為Age 。 | |||||
為ThrownPotion 加入了Linger 。 | |||||
從Entity 移除了DataVersion 。該標籤現在只適用於Player 以及LivingBase 的子標籤。 | |||||
從Entity 移除了UUID 。 | |||||
LivingBase 中的HealF 現已棄用。 | |||||
LivingBase 中的LivingBase 類型從「Short」變為「Float」。 | |||||
從ArmorStand 和Living 實體中移除了,該標籤的功能被早些時候加入的HandItems 和ArmorItems 替代。 | |||||
15w33c | 為EnderCrystal 加入了BeamTarget 。 | ||||
15w34a | 向指令方塊Control 方塊實體加入了powered 和conditional 字節標籤。
| ||||
為FireballBase 加入了life 和power 。 | |||||
為MobSpawner 中的SpawnData 加入了id 。 | |||||
為音階盒加入powered 到Music 方塊實體。 | |||||
15w35a | 為Zombie 加入了VillagerProfession 。 | ||||
15w37a | 為MinecartHopper 加入了Enabled 。 | ||||
15w38a | 為EntityHorse 加入了SkeletonTrap 和SkeletonTrapTime 。 | ||||
15w41a | 所有實體中的Riding 被Passengers 替代。
| ||||
向所有騎乘者加入了RootVehicle 。 | |||||
為Boat 加入了Type 。 | |||||
15w42a | 為Cauldron (釀造台)加入了Fuel 。 | ||||
15w43a | 為Chest 、Minecart 和MinecartHopper 加入了LootTable 和LootTableSeed 。
| ||||
向所有生物加入了DeathLootTable 和DeathLootTableSeed 。 | |||||
向所有火球(FireballBase )加入了life 和power 。 | |||||
15w44a | 為EnderCrystal 加入了ShowBottom 。 | ||||
15w44b | 為Arrow 加入了Potion 和CustomPotionEffects 。
| ||||
為AreaEffectCloud 加入了Potion 。 | |||||
15w45a | 從ThrownPotion 處移除了Linger 。現在儲存的物品的ID包含minecraft:lingering_potion ,藥水會滯留。
| ||||
ThrownPotion 現在會繪製其物品形式,即使那個物品不是藥水。 | |||||
15w46a | Rabbit 的MoreCarrotTicks 現在會在兔子吃一個胡蘿蔔時設定為40,但該標籤目前未被使用。 | ||||
15w47a | 為Beacon 加入了PaymentItem 。 | ||||
15w49a | 從Beacon 中移除了PaymentItem 。
| ||||
為了使告示牌接受文字,所有4個標籤(「Text 1」、「Text 2」、「Text 3」和「Text 4」)都必須存在。 | |||||
15w51b | ArmorStand 中DisabledSlots 的原始值會自然變更。 | ||||
1.10 | 16w20a | 加入實體 PolarBear 。 | |||
為Zombie 加入了ZombieType ,並且重新命名VillagerProfession 為IsVillager 。值若為6則表示其是屍殼殭屍。 | |||||
一個值為2的SkeletonType 指向單獨的骷髏。 | |||||
NoGravity 擴展到所有的實體。 | |||||
為Structure 加入powered 、showboundingbox 和showair 。 | |||||
16w21a | 加入FallFlying 到怪物和武器選項
| ||||
為Structure 加入integrity 和seed 。 | |||||
1.10-pre1 | 為AreaEffectCloud 加入ParticleParam1 和ParticleParam2 。 | ||||
1.11 | 16w32a | 馬按它們各自的類型被分成如下實體ID:horse 、donkey 、mule 、skeleton_horse 以及zombie_horse 。從horse 中移除了Type 和HasReproduced 、ChestedHorse 和Items 標籤已經僅僅適用於mule 和donkey 、並且SkeletonTrap 和SkeletonTrapTime 也只適用於skeleton_horse 。
| |||
骷髏被分成了如下實體ID: skeleton 、stray 以及wither_skeleton 。從骷髏中刪除了所有的SkeletonType 標籤。 | |||||
殭屍被分成了如下實體IDzombie 、zombie_villager 以及husk 。從殭屍類型中移除了所有的ZombieType 標籤、ConversionTime 標籤和Profession 標籤現只適用於zombie_villager 。 | |||||
保衛者被分為了如下的實體IDguardian 、elder_guardian 。從guardian 中移除了Elder 。 | |||||
沒有被使用的遊戲儲存IDMob 和Monster 被移除。 | |||||
Pumpkin 字節標籤被加入到snowman 。 | |||||
16w35a | 為banner 加入了CustomName 。 | ||||
16w39a | 加入例如llama 、llama_spit 、vindication_illager 、vex 、evocation_fangs 和 evocation_illager 。
| ||||
為shulker 加入了Color 。 | |||||
為物品加入了LocName 、CustomPotionColor 以及ColorMap 。 | |||||
16w40a | 為vindication_illager 加入了Johnny 。
| ||||
從火球基類(地獄幽靈火球、烈焰使者火球(火焰彈)、龍炎彈和凋零頭顱)中刪除了xTile 、yTile 、zTile 、 inTile 和 inGround 。 | |||||
16w41a | 標籤llama_spit 已經在遊戲儲存實體中可用, | ||||
16w42a | 加入 crit 到arrow 。 | ||||
16w43a | 加入 OwnerUUIDLeast 和 OwnerUUIDMost 到evocation_fangs 。 | ||||
16w44a | 從魚鈎實體中刪除了標籤:xTile 、 yTile 、 zTile 、inTile 、inGround 。 | ||||
1.11-pre1 | 改變ench 標籤使它至少具有一個TAG_compound 。 | ||||
1.12 | 17w13a | 加入了實體Parrot 、ShoulderEntityLeft /ShoulderEntityRight 、seenCredits 、recipeBook 和Recipes 。 | |||
17w14a | 為成為了複合標籤的recipeBook 加入了isFilteringCraftable 、isGuiOpen 和recipes 。
| ||||
為實體Zombie 加入了ConversionPlayerLeast 和ConversionPlayerMost 。 | |||||
17w16a | 改進了指令中的NBT解析。 | ||||
17w17a | 為recipeBook 、UpdateLastExecution 和LastExecution 加入了toBeDisplayed 。 | ||||
17w17b | 為可繁殖的實體加入了LoveCauseLeast 和LoveCauseMost 。 | ||||
1.13 | 17w47a | 物品中的damage 標籤被移除,工具和盔甲現在使用Damage 標籤,地圖使用map 標籤,二者類型都是tag 。
| |||
終界使者的carried 和carriedData 標籤被併入到carriedBlockState 標籤中。 | |||||
箭的inTile 和inData 標籤被併入到inBlockState 標籤中。 | |||||
礦車的DisplayTile 和DisplayData 標籤被併入到DisplayState 標籤中。 | |||||
掉落的方塊的Block 和Data 標籤被併入到BlockState 標籤中。 | |||||
移動中的活塞的BlockId 和BlockData 標籤被併入到blockState 標籤中。 | |||||
移除了音階盒和花盆方塊實體。 | |||||
陷阱儲物箱現在有了它們自己的方塊實體trapped_chest 。 | |||||
從旗幟中移除了Base 。 | |||||
從生物頭顱中移除了Rot 。 | |||||
17w47a | 從唱片機中移除了Record 。 | ||||
17w47b | 陷阱儲物箱不再擁有它們自己的方塊實體,轉而再次使用chest 。 | ||||
18w01a | Thrower 和Owner 的類型從strings已被修改為有2個long類型的L 和M 標籤的複合標籤。 | ||||
18w02a | 由釣竿建立的浮標現在有了其實體IDfishing_bobber 。
| ||||
畫的ID已被小寫化、命名空間化。 | |||||
18w07a | 加入了turtle 、trident 和phantom 實體。
| ||||
為turtle 加入了HomePosX 、HomePosY 、HomePosZ 、TravelPosX 、TravelPosY 、TravelPosZ 和HasEgg 。 | |||||
為phantom 加入了AX 、AY 、AZ 和Size 。 | |||||
18w15a | 加入了dolphin 實體。 | ||||
18w19a | 把puffer_fish 重新命名為pufferfish 。 | ||||
18w20a | 把cod_mob 重新命名為cod 。
| ||||
把salmon_mob 重新命名為salmon 。 | |||||
18w21a | 為dolphin 加入了TreasurePosX 、TreasurePosY 、TreasurePosZ 、GotFish 和 CanFindTreasure 。
| ||||
ench 現已被重新命名為Enchantments 。 | |||||
Enchantments 不再接受數字ID,它現在接受字母ID。 | |||||
pre5 | 把 xp_orb 重新命名為experience_orb 。
| ||||
把xp_bottle 重新命名為experience_bottle 。 | |||||
把eye_of_ender_signal 重新命名為eye_of_ender 。 | |||||
把ender_crystal 重新命名為end_crystal 。 | |||||
把fireworks_rocket 重新命名為firework_rocket 。 | |||||
把commandblock_minecart 重新命名為command_block_minecart 。 | |||||
把villager_golem 重新命名為iron_golem 。 | |||||
把evocation_fangs 重新命名為evoker_fangs 。 | |||||
把evocation_illager 重新命名為evoker 。 | |||||
把vindication_illager 重新命名為vindicator 。 | |||||
pre5 | 把illusion_illager 重新命名為illusioner 。 | ||||
1.14 | 18w43a | 加入了illager_beast 、panda 和pillager 實體。 | |||
18w45a | 移除了LIGHT_BLOCKING 高度圖。 | ||||
1.15 | 19w36a | 每個區塊中 Level標籤中的 Biomes陣列現在包含1024個整數而不是256個,允許不同高度上的生態域有不同的值。 | |||
1.18 | 21w37a | 現在生態域資料由子區塊儲存, Biomes被刪除。 | |||
21w39a | CarvingMasks中的 AIR和 LIQUID改用。 | ||||
21w43a | 所有的標籤都從 Level標籤中提取出來。 | ||||
ToBeTicked和 TileTicks合併為 block_ticks。 | |||||
LiquidsToBeTicked和 LiquidTicks合併為 fluid_ticks。 | |||||
Entities重新命名為 entities。 | |||||
Sections重新命名為 sections。 | |||||
Starts重新命名為 starts。 | |||||
Structures重新命名為 structures。 | |||||
TileEntities重新命名為 block_entities。 | |||||
加入 yPos、 below_zero_retrogen和 blending_data標籤。 | |||||
1.20.2 | 23w32a | 不再使用數值來儲存世界中的狀態效果。 | |||
變更了狀態效果實例中的字段。 | |||||
變更了方塊實體beacon 的NBT格式。 |
版本 | |||||||
---|---|---|---|---|---|---|---|
開發週期 |
| ||||||
技術 |
| ||||||
多人遊戲 | |||||||
遊戲訂製 |
語言