詳細:1.18におけるフォーマットに関する記述が欠落しています。このページは作業中であり、1.18で更新があった項に関してはそれを特記しています。
Chunkは16×384×16の領域内の地形とエンティティを保存している。また、Chunkには事前に計算された落雷、Minecraftの動作用のハイトマップデータやその他のメタデータも保存されている。
NBTの構造[]
チャンクはr.x.z.mca
の形式のファイル名のAnvilファイルでタグとして保存されている。これらは下記の構造(1.18で更新)のNBTフォーマットの形式で保存されている。
- ルートタグ。
- DataVersion: チャンクののNBT構造のバージョン。
- xPos: チャンクのX座標(regionに対する相対座標ではなく原点基準)。
- zPos: チャンクのZ座標(regionに対する相対座標ではなく原点基準)。
- yPos: チャンク内の最も低いY座標(例:1.18では-4)。
- Status: 当該チャンクにおけるワールド生成状態を定義する。
empty
、structure_starts
、structure_references
、biomes
、noise
、surface
、carvers
、liquid_carvers
、features
、light
、spawn
、heightmaps
、full
の値をいずれかをとる。full
を除いて、各生成状態は"Proto-Chunk"(生成完了前のチャンク)用に用いられている。 - LastUpdate: 最後に保存されたときのティック。
- sections: TAG_Compoundのリストであり、各タグは一つのセクション(サブチャンクとも呼ばれる)である。ワールド内の各高度の全セクションは、空気で満たされた空のセクションも含めてこのリスト内に存在する。
- 個々のセクション。
- Y: このセクションのY方向の位置。
- block_states: ブロック状態
- biomes
- palette: 当該セクション内に使用されているバイオームの集合。
- Name: バイオームの名前空間ID。
- data: 64bitの整数で保存されているpaletteを指定する4096個の項目が並んだ索引。セクションが一種類のバイオームのみで構成されている場合はこのフィールドは不要。
- palette: 当該セクション内に使用されているバイオームの集合。
- BlockLight: 2048バイトで記録されている、各ブロックにおけるブロック明るさレベルの値。読み込み時に光度を再計算するよりも、これを読み込むことで動作を高速化している。各ブロックあたり4ビット。
- SkyLight: 2048バイトで記録されている、各ブロックにおける太陽光・月光の量。各ブロックあたり4ビット。
- 個々のセクション。
- block_entities: このリスト内の各TAG_Compoundはチャンク内のブロックエンティティを定義する(通常エンティティに関してはエンティティフォーマットを参照)。後述のブロックエンティティの書式も参照。このリストが空の場合はEndタグのリストになる。
- CarvingMasks: "Proto-Chunks"(生成完了前のチャンク)でのみ使用(1.18でのフォーマットでは未確認)。
- AIR: バイト配列で保存されている、特定の地点において洞窟が生成されているかどうかを示すビット列。
- LIQUID: バイト配列で保存されている、特定の地点において水中の洞窟が生成されているかどうかを示すビット列。
- Heightmaps: 各値につき9ビットに圧縮された、256個の値に対応するいくつかのハイトマップ(範囲は0~256)。9ビットの値は7個ずつに纏められ、37個の64bitの値の列で保存されている(9×7=63ビットで最後の1ビットは不使用)。1.16以前ではハイトマップは36個の64bitの値で保存されており、連続的な値として2304ビット(9×256)を使用している。9ビットの値は符号のない値であり、このため1.18に変換する場合は各値に64が加算される。
- MOTION_BLOCKING: 動いているか液体を含んでいるブロックを除いた、チャンク内の最も高いブロック。The highest block that blocks motion or contains a fluid.
- MOTION_BLOCKING_NO_LEAVES:
minecraft:leaves
のタグに属する、または動いているか液体を含んでいるブロックを除いた、チャンク内の最も高いブロック。 - OCEAN_FLOOR: チャンク内の最も高い固体ブロック。
- OCEAN_FLOOR_WG: 液体も空気も含まない、チャンク内の最も高いブロック(生成未完了のチャンク用)。
- WORLD_SURFACE: 空気を除いた、チャンクの最も高いブロック。
- WORLD_SURFACE_WG: 空気を除いたチャンク内の最も高いブロック(生成未完了のチャンク用)
- Lights: チャンクの各セクションごとの光源の位置を32bitで保存してある16個のリストのリスト(生成未完了のチャンク用、1.18では未確認)。
- Entities: 生成未完了のチャンクで使用される、生成中のチャンク内のエンティティのリスト。1.17の時点では、このリストはチャンクの生成完了直後、エンティティのデータが別のregionファイルに移行された時点で消滅する(1.18では未確認)。移行後のエンティティのデータの詳細に関してはエンティティフォーマットを参照のこと。
- : エンティティ。
- fluid_ticks: このリスト内の各TAG_Compoundは、更新待機中の"アクティブ"な液体である。下記のタイルティックフォーマットを参照。
- block_ticks: このリスト内の各TAG_Compoundは、更新待機中の"アクティブ"なブロックである。これらはレッドストーン機構や落下中のブロックなどの状態を保存するのに用いられる。
- InhabitedTime: プレイヤーがチャンク内にいた時間の累計ティック数。なおこの値はチャンク内にいるプレイヤーが多いほど速く増加することに注意されたい。この値は地域難易度(Mobが何らかの装備を持った状態でスポーンしたり、その装備にエンチャントが付与されていたり、アイテムを拾ったりする、あるいはクモがステータス効果を持っていたり、ゾンビが攻撃されたときに仲間をスポーンさせたりする確率に影響する)の決定に用いられる。InhabitedTimeの値が360万以上の場合は地域難易度は最大になり、逆に0以下では地域難易度は最小になる(負の値に設定された場合は0である時と同じ挙動を示すが、0を超えるまでの時間は地域難易度を最小に抑制しておくことができる)。詳しくは地域難易度を参照。
- PostProcessing: 24個(高度によるセクションの数)のTAG_Listsのリスト。チャンクを生成する際に更新が必要なブロックの位置を保存するのに使用され、TAG_shortで保存されている。対応座標の保存形式は「ToBeTicked format」を参照。このタグが使用される一般的なケースは、洞窟の源泉のような、源となるブロックが生成された後に液体が流れる場合である。
- structures: チャンク内の構造物のデータ。
- References: startsを含むチャンクの座標。
- Structure Name: この配列内の64bitの値はチャンクの座標(ブロック座標 ÷ 16)を示している。ここではX座標は低位の32bit(重要度低)に、Z座標は高位の32bit(重要度高)に保存されている。
- starts: 一般的タイプで保存されている、未生成の構造物、構造物の一部はすでに生成されている可能性がある。生成が完了した構造物は、その「id」を「INVALID」に設定し、その他のタグをすべて剥奪することで削除される。
- Structure Name: このディメンションに生成されうる構造物(例えばエンドシティはエンドのチャンクに)のみが保存されている。
- BB: 構造物全体(子構造物は残る)の範囲ボックス。6つの整数値(X、Y、Zの最小値、X、Y、Zの最大値の順)からなり、idがINVALIDの場合は存在しない。
- biome: この構造物が存在するバイオームのid。idがINVALIDの場合は存在しない。
- Children: この構造物を構成している各部分(子構造物)のうち未生成のものの一覧。idがINVALIDの場合は存在しない。
- 子構造物のデータ(なお、特定の子構造にのみ存在するものに関しては基本的に括弧内にそのidを明記してある)。[情報提供依頼]
- BB: 子構造物の範囲ボックス(道にせり出している村の屋根は含まない)。6つの整数値(X、Y、Zの最小値、X、Y、Zの最大値の順)からなる。
- BiomeType: この海底遺跡が位置する海洋の気温。有効な値はWARMとCOLDのみ。
- C: (村の"ViSmH"で使用)小屋の屋根の種類。[要検証]
- CA: (村の"ViF"及び"ViDF")畑の作物の種類。[要検証]
- CB: (村の"ViF"及び"ViDF"で使用)畑の作物の種類。[要検証]
- CC: (村の"ViF"及び"ViDF"で使用)畑の作物の種類。[要検証]
- CD: (村の"ViF"及び"ViDF"で使用)畑の作物の種類。[要検証]
- Chest: (ネザー要塞の"NeSCLT"及び"NeSCRT"で使用)1(ture)か0(false)の値をとる。このネザー要塞の、チェストを有する設定の子構造において、実際に生成されたチェストを有しているかを示す。(要塞の"SHCC"で使用)このチェストが要塞の子構造に設置されているかを示す。(村の"ViS"で使用)鍛冶屋(1.13以前)のチェストが生成されたかを示す。
- D: (廃坑の"MSCrossing"で使用)坑道の伸びている元の方向を示す。
- Depth: (寺院・ウィッチの小屋で使用)構造物の深さ(X/Z)。
- Entrances: (廃坑の"MSRoom"で使用)部屋の出口のリスト。
- : 出口の範囲ボックス。
- EntryDoor: (要塞で使用)この子構造の入り口のドアの種類。
- GD: この子構造が起点からどれくらい離れているかを示す指標だと思われる。
- hasPlacedChest0: 1(ture)か0(false)の値をとる。(砂漠の寺院で使用)チェストが配置されているか否かを示す。
- hasPlacedChest1: 1(ture)か0(false)の値をとる。(砂漠の寺院で使用)チェストが配置されているか否かを示す。
- hasPlacedChest2: 1(ture)か0(false)の値をとる。(砂漠の寺院で使用)チェストが配置されているか否かを示す。
- hasPlacedChest3: 1(ture)か0(false)の値をとる。(砂漠の寺院で使用)チェストが配置されているか否かを示す。
- Height: (寺院とウィッチの小屋で使用)構造物の高度(Y)。
- HPos: (寺院、ウィッチの小屋、村で使用)構造物が地表に設置されるように移動されたY軸方向の変位。-1の場合は移動されていないことを示す。[要検証]
- hps: 1(ture)か0(false)の値をとる。(廃坑の"MSCorridor"で使用)この廊下に洞窟グモのスポナーがあるか否かを示す。
- hr: 1(ture)か0(false)の値をとる。(廃坑の"MSCorridor"で使用)この廊下にレールが敷設されているか否かを示す。
- id: 子構造の識別子。やや強めの省略が掛かっている(例:"MSCorridor"="Mineshaft Corridor"=廃坑の廊下)。
- integrity: この構造物のインテグリティ(海底遺跡でのみ使用)。
- isLarge: 1(ture)か0(false)の値をとる。この海底遺跡の規模が大きいか否かを示す。
- junctions: (村で使用)通路の分岐点のリスト。 [情報提供依頼][要検証]
-
- source_x: ブロックのX座標。
- source_ground_y: 基底となる位置のY座標。
- source_z: ブロックのZ座標。
- delta_y: 基底からのY方向の変位。
- dest_proj:
terrain_matching
の一種、あるいはrigid
。
-
- Left: 1(ture)か0(false)の値をとる。(要塞の"SHS"で使用)廊下が左に開いているか否か。
- leftHigh: 1(ture)か0(false)の値をとる。(要塞の"SH5C"で使用)5方向の分岐点の上方向に、上行きの階段を伴った出口があるか否か。
- leftLow: 1(ture)か0(false)の値をとる。(要塞の"SH5C"で使用)5方向の分岐点の下方向に、上行きの階段を伴った出口があるか否か。
- Length: (村の"ViSR")道を作る子構造の長さ。[要検証]
- Mob:1(ture)か0(false)の値をとる。(ネザー要塞の"NeMT"で使用)このネザー要塞の、ブレイズのスポナーを有する設定の子構造において、実際に生成されたブレイズのスポナーを有しているかを示す。
- Num: (廃坑の"MSCorridor"で使用)廊下の長さ。
- O: この子構造の起点を示していると思われる。
- placedHiddenChest: 1(ture)か0(false)の値をとる。(ジャングルの寺院で使用)隠しチェストが配置されているか否かを示す。
- placedMainChest: 1(ture)か0(false)の値をとる。(ジャングルの寺院で使用)通常のチェストが配置されているか否かを示す。
- placedTrap1: 1(ture)か0(false)の値をとる。(ジャングルの寺院で使用)廊下の矢のトラップ用のディスペンサーが配置されているか否かを示す。
- placedTrap2: 1(ture)か0(false)の値をとる。(ジャングルの寺院で使用)チェストの矢のトラップ用のディスペンサーが配置されているか否かを示す。
- PosX: 村の原点のX座標。[要検証]
- PosY: 村の原点のY座標。[要検証]
- PosZ: 村の原点のZ座標。[要検証]
- Right: 1(ture)か0(false)の値をとる。(要塞の"SHS"で使用)廊下が右に開いているか否か。
- rightHigh: 1(ture)か0(false)の値をとる。(要塞の"SH5C"で使用)5方向の分岐点の上方向に、上行きの階段を伴った出口があるか否か。
- rightLow: 1(ture)か0(false)の値をとる。(要塞の"SH5C"で使用)5方向の分岐点の下方向に、上行きの階段を伴った出口があるか否か。
- Rot: 海底遺跡および沈没船の回転角。有効な値はCOUNTERCLOCKWISE_90、NONE、CLOCKWISE_90、CLOCKWISE_180(それぞれ、反時計回りに90°、回転無し、時計回りに90°、時計回りに90°)。
- sc: 1(ture)か0(false)の値をとる。(廃坑の"MSCorridor"で使用)廊下がクモの巣を有するか否か。
- Seed: (ネザー要塞の"NeBEF"で使用)ネザー要塞の、壊れた橋の子構造のランダムなシード値。
- Source: 1(ture)か0(false)の値をとる。(要塞の"SHSD"で使用)螺旋階段が、要塞由来のものかランダムに生成されたものかを示す。
- Steps: 要塞の"SHFC"で使用)廊下の長さ。
- T: (村の"ViSmH"で使用)鍛冶屋(1.13以前)のテーブルに関する値。0ではテーブルが存在せず、1または2では小屋の各側にテーブルが設置される[要検証]。
- Tall: 1(ture)か0(false)の値をとる。(要塞の"SHLi"で使用)要塞の図書館が2階を持っているかを示す。
- Template: 海底遺跡および沈没船の生成に使用されたテンプレート。
- Terrace: 1(ture)か0(false)の値をとる。(村の"ViSH"で使用)この家がテラスへのはしごや、テラスの柵を有しているかを示す[要検証]。
- tf: 1(ture)か0(false)の値をとる。(廃坑の"MSCrossing"で使用)坑道が二階分の高さを有するか否かを示す。
- TPX: 海底遺跡及び沈没船の原点のX座標。
- TPY: 海底遺跡及び沈没船の原点のY座標。
- TPZ: 海底遺跡及び沈没船の原点のZ座標。
- Type: (村で使用)村の種類。対応は以下の通り。 0=plains(平原)、1=desert(砂漠)、2=savanna(サバンナ)、3=taiga(タイガ)[要検証]。
- Type: (要塞の"SHRC"で使用)この部屋には松明付きの柱、噴水、チェストの台座のどれがあるのか、または何もない部屋であるのかを示す。
- VCount: (村で使用)この子構造に伴って生成される村人の人数[要検証]。
- Width: (寺院およびウィッチの小屋で使用)構造物の幅(X/Z)。
- Witch: 1(ture)か0(false)の値をとる。(ウィッチの小屋で使用)生成時点からウィッチがスポーンしているかを示す。
- Zombie: 1(ture)か0(false)の値をとる。(村で使用)この村がゾンビ村として生成されるかどうかを示す[要検証]。
- 子構造物のデータ(なお、特定の子構造にのみ存在するものに関しては基本的に括弧内にそのidを明記してある)。[情報提供依頼]
- ChunkX: 構造物の起点があるチャンクのX座標。idがINVALIDならこのタグは存在しない。
- ChunkZ: 構造物の起点があるチャンクのZ座標。idがINVALIDならこのタグは存在しない。
- id: 構造物が子のチャンクに存在しない場合は、このタグの値は"INVALID"であり、そうでなければ構造物の名前を値にとる。
- Processed: (海底神殿のみ)子構造が生成されたチャンクのリスト。idがINVALIDならこのタグは存在しない。
- : チャンク。
- X: チャンクのX座標(チャンク単位の座標で計算、端点のブロック座標ではない)。
- Z: チャンクのZ座標。
- : チャンク。
- Valid:1(ture)か0(false)の値をとる。(村のみ)この村が、最低でも3か所道のない部分があるか否か。idがINVALIDならこのタグは存在しない。
- Structure Name: このディメンションに生成されうる構造物(例えばエンドシティはエンドのチャンクに)のみが保存されている。
- References: startsを含むチャンクの座標。
ブロック[]
Anvilフォーマットでは、圧縮上の目的でブロックの座標はYZXの順番で並べられている。
座標の仕組みは以下の通り。
- X座標は東方向で増加、西方向で減少する。
- Y座標は上方向で増加、下方向で減少する。
- Z座標は南方向で増加、北方向で減少する。
これにより各座標はちょうど、上側が北側に該当し、下から後ろ向きに読む本のように並べれられており、このように喩えたとき各文字が個々のX座標、各行がZ座標、各ページがY座標に該当する。二次元空間の配列ではY座標が省略され、配列は本の1ページのように読める。
各セクションは一辺が16ブロックの立方体であり、各チャンクは24個のセクション(一番下が0、一番上が23)が積みあがって構成されている。ブロックのないセクションは保存されない。各セクションはY軸方向の順番を表す"Y"というバイト(0~23)、ブロックの名前空間IDとブロック状態にリンクする"Palette"というリスト、そして"BlockStates"という64bitの値で保存された、各ブロック座標とブロック状態を対応付けるデータを有している。なお"BlockStates"では複数のIDを各エントリに纏めることで圧縮が行われている(圧縮の詳細についてはNBT_structureを参照)また、ワールドの最上部・最底部には光レベルを保存する追加のセクションがあり、そのため建築高度上限より上や岩盤より下でも光は正しく動作する。
また、"BlockLight"というバイト配列はブロック光レベルを決定するために用いられ、"SkyLight"というバイト配列は、現在時刻に関わらず、各ブロックが空から受ける光レベルの最大値を保存している。値の長さはそれぞれ2048バイトであり、一切の光が届かないセクションにおいてはどちらも省略される。光レベルは各ブロックにつき4bitで保存され、1バイト分で2つのブロックの光レベルが表現される(0から始まり、偶数番目のブロックが最初の4bitを使用、奇数番目のブロックが後半の4bitを使用する)。このようなエンディアン(保存方法)はJava Editionのストレージにおいては他に例のないことである。
以下の疑似コードは一つのセクションから個々のブロックの情報を得るための方法を示している。
byte Nibble4(byte[] arr, int index){ return index%2 == 0 ? arr[index/2]&0x0F : (arr[index/2]>>4)&0x0F; } int BlockPos = y*16*16 + z*16 + x; compound Block = Palette[change_array_element_size(BlockStates,Log2(length(Palette)))[BlockPos]]; string BlockName = Block.Name; compound BlockState = Block.Properties; byte Blocklight = Nibble4(BlockLight, BlockPos); byte Skylight = Nibble4(SkyLight, BlockPos);
ブロックエンティティフォーマット[]
ブロックエンティティ | |
---|---|
ID | 対応するブロック |
banner | 旗 |
barrel | タル |
beacon | ビーコン |
bed | ベッド |
beehive | ミツバチの巣/養蜂箱 |
bell | 鐘 |
blast_furnace | 溶鉱炉 |
brewing_stand | 醸造台 |
campfire | 焚き火 |
chest | チェスト |
comparator | レッドストーンコンパレーター |
command_block | コマンドブロック |
conduit | コンジット |
daylight_detector | 日照センサー |
dispenser | ディスペンサー |
dropper | ドロッパー |
enchanting_table | エンチャントテーブル |
ender_chest | エンダーチェスト |
end_gateway | エンドゲートウェイ |
end_portal | エンドポータル |
furnace | かまど |
hopper | ホッパー |
jigsaw | ジグソーブロック |
jukebox | ジュークボックス |
lectern | 書見台 |
mob_spawner | スポナー |
piston | 作動中のピストン |
shulker_box | シュルカーボックス |
sign | 看板 |
skull | Mobの頭 |
smoker | 燻製器 |
soul_campfire | 魂の焚き火 |
structure_block | ストラクチャーブロック |
trapped_chest | トラップチェスト |
ブロックエンティティ(英:Block Entity)(エンティティとは別物)は、Minecraft内で特定のブロックに対して"block_states"にブロックとして保存できない情報を保存する際に使われるものである。ブロックエンティティは1.8まではタイルエンティティ(英:Tile Entity)とも呼ばれており、その呼称が一部のコマンドの用法に残っている。
- Block entity data
- すべてのブロックエンティティに共通するタグ
- CustomName: 任意で可能。コンテナの名前。デフォルトの名前に代わり、GUIに表示される。
- CustomName: このビーコンの名称をJSONテキストで指定する。この名称は、ビーコンが
Lock
によってロックされている際に表示されているメッセージ(<名称>はロックされています)で使用される。 - Lock: 何らかの文字列が指定されている場合、その文字列と同じ名前のアイテムを手に持った状態でないとGUIを開くことができなくなる。
- Items: コンテナのアイテムリスト
- : An item, including the slot tag. Barrel slots are numbered 0-26, 0 starts in the top left corner.
- すべてのアイテムに共通するタグ
- : An item, including the slot tag. Barrel slots are numbered 0-26, 0 starts in the top left corner.
- LootTable: Optional. Loot table to be used to fill the barrel when it is next opened, or the items are otherwise interacted with.[note 1]
- LootTableSeed: Optional. Seed for generating the loot table. 0 or omitted will use a random seed.[note 1]
- ブロックエンティティデータ
- すべてのブロックエンティティに共通するタグ
- CustomName: このビーコンの名称をJSONテキストで指定する。この名称は、ビーコンが
Lock
によってロックされている際に表示されているメッセージ(<名称>はロックされています)で使用される。 - Lock: 何らかの文字列が指定されている場合、その文字列と同じ名前のアイテムを手に持った状態でないとGUIを開くことができなくなる。
- Levels: 下のピラミッドの大きさに基づいたビーコンのレベル。コマンドで変更しても直ちに適切な値に戻される。また下にピラミッドがあっても、ビームの先に邪魔なブロックがあった場合はこの値は0になる。
- primary_effect: 選択されている主効果のステータス効果の名前空間ID。再生能力は通常主効果として選択できないにもかかわらず指定可能である。
- secondary_effect: 選択されている副効果のステータス効果の名前空間ID。主効果が未指定のときは何も起こらない。主効果で同種のステータス効果が指定されている場合は効果レベル2、異なる場合(通常再生能力のみ)は効果レベル1で付与される。
- ブロックエンティティデータ
- すべてのブロックエンティティに共通するタグ
- color: 0~15: ベッドの色。ベッドが壊されたとき、この色のベッドがドロップする。
データ値 | 説明 | ||
---|---|---|---|
Dec | Hex | ||
0 | 0x0 | 白色のベッド | |
1 | 0x1 | 橙色のベッド | |
2 | 0x2 | 赤紫色のベッド | |
3 | 0x3 | 空色のベッド | |
4 | 0x4 | 黄色のベッド | |
5 | 0x5 | 黄緑色のベッド | |
6 | 0x6 | 桃色のベッド | |
7 | 0x7 | 灰色のベッド | |
8 | 0x8 | 薄灰色のベッド | |
9 | 0x9 | 青緑色のベッド | |
10 | 0xA | 紫色のベッド | |
11 | 0xB | 青色のベッド | |
12 | 0xC | 茶色のベッド | |
13 | 0xD | 緑色のベッド | |
14 | 0xE | 赤色のベッド | |
15 | 0xF | 黒色のベッド |
養蜂箱/BE
- ブロックエンティティデータ
- すべてのブロックエンティティに共通するタグ
- ブロックエンティティデータ
- すべてのブロックエンティティに共通するタグ
- CustomName: 任意で可能。コンテナの名前。デフォルトの名前に代わり、GUIに表示される。
- CustomName: このビーコンの名称をJSONテキストで指定する。この名称は、ビーコンが
Lock
によってロックされている際に表示されているメッセージ(<名称>はロックされています)で使用される。 - Lock: 何らかの文字列が指定されている場合、その文字列と同じ名前のアイテムを手に持った状態でないとGUIを開くことができなくなる。
- Items: コンテナのアイテムリスト
- : 溶鉱炉に入っているアイテム:
スロット0: 製錬されるアイテム
スロット1: 次の燃料に使用されるアイテム
スロット2: 製錬されたアイテム- すべてのアイテムに共通するタグ
- : 溶鉱炉に入っているアイテム:
- BurnTime:現在の燃料が燃えていたティック数
- CookTime: アイテムが製錬されているティック数。 この値が200(10秒)に達すると、アイテムは製錬を終了する。BurnTimeが0に達すると0にリセットされる
- CookTimeTotal: アイテムが製錬されるのに必要なティック数
- RecipeLocationN: Nは、0から始まるレシピの番号。使用されたレシピ名は、結果のアイテムを取り出す際にプレイヤーに与えられる経験値を計算するのに使用される
- RecipeAmountN: Nは0から始まるレシピの数。レシピ「N」が使用された回数は、結果のアイテムを取り出す際にプレイヤーに与えられる経験値を計算するのに使用される
- RecipeUsedSize: 使用されたレシピの数は、対応するRecipeLocation"NおよびRecipeAmountNタグを作成し、結果のアイテムを取り出す際にプレイヤーに与えられる経験値を計算するのに使用される
- ブロックエンティティデータ
- すべてのブロックエンティティに共通するタグ
- CustomName: 任意で可能。コンテナの名前。デフォルトの名前に代わり、GUIに表示される。
- CustomName: このビーコンの名称をJSONテキストで指定する。この名称は、ビーコンが
Lock
によってロックされている際に表示されているメッセージ(<名称>はロックされています)で使用される。 - Lock: 何らかの文字列が指定されている場合、その文字列と同じ名前のアイテムを手に持った状態でないとGUIを開くことができなくなる。
- Items: コンテナのアイテムリスト
- : 醸造台にはスロット毎のスロットタグが存在する:
Slot 0: 左
Slot 1: 中央
Slot 2: 右
Slot 3: ポーションの材料
Slot 4: 燃料(ブレイズパウダー)- すべてのアイテムに共通するタグ
- : 醸造台にはスロット毎のスロットタグが存在する:
- BrewTime: ポーションが醸造されるティック数
- Fuel: 醸造台の残り燃料
- ブロックエンティティデータ
- すべてのブロックエンティティに共通するタグ
- Items: 現在調理中のアイテムの一覧(最大で4個)
- すべてのアイテムに共通するタグ
- CookingTimes: 調理の経過時間
- CookingTotalTimes: 調理の必要時間
- Block entity data
- すべてのブロックエンティティに共通するタグ
- CustomName: 任意で可能。コンテナの名前。デフォルトの名前に代わり、GUIに表示される。
- CustomName: このビーコンの名称をJSONテキストで指定する。この名称は、ビーコンが
Lock
によってロックされている際に表示されているメッセージ(<名称>はロックされています)で使用される。 - Lock: 何らかの文字列が指定されている場合、その文字列と同じ名前のアイテムを手に持った状態でないとGUIを開くことができなくなる。
- Items: コンテナのアイテムリスト
- : 中に入っているアイテム。slot タグを用いる。チェストのスロットは0から26あり、上段が0~8、中段が9~17、下段が18~26となる。
- すべてのアイテムに共通するタグ
- : 中に入っているアイテム。slot タグを用いる。チェストのスロットは0から26あり、上段が0~8、中段が9~17、下段が18~26となる。
- LootTable: 任意のタグ。チェストが開かれた際に中身のアイテムを生成するためのルートテーブルを指定する。アイテム生成後、 LootTableSeedとともに削除される。
- LootTableSeed: 任意のタグ。ルートテーブルでアイテムを生成する際に使用するシード値を設定する。値を0か省略するとランダムになる。
- ブロックエンティティデータ
- すべてのブロックエンティティに共通するタグ
- OutputSignal: レッドストーンコンパレーターが出力している信号の強さ。
- ブロックエンティティデータ
- すべてのブロックエンティティに共通するタグ
- CustomName: 任意で可能。
/say
や/tell
などのコマンドを使用する場合、名前は通常「@」で置き換えられる。 - Command: サーバーに送信するコマンド
- SuccessCount: このコマンドブロックに接続されたレッドストーンコンパレーターによって出力されるアナログ信号の強度。コマンドブロックがレッドストーン信号でオンにあった場合にのみ更新される
- LastOutput: コマンドブロックによって表示された出力の最後の行。gamerule commandBlockOutputがfalseでも保存される。右クリックするとブロックのGUIに表示され、出力が表示された際のタイムスタンプが含まれる
- TrackOutput: 1 / 0 (true/false) - LastOutputを保存するかどうか。GUIの「前回の実行結果」欄の近くのボタンをクリックして切り替えられる。ボタンの題名は現在の状態を示す:"O"はtrue, "X"はfalse
- powered: 1 / 0 (true/false) - コマンドブロックにレッドストーン信号が入力されているかどうか。
- auto: 1 / 0 (true/false) - レッドストーン信号を入力せずにコマンドを実行できる
- conditionMet: 1 / 0 (true/false) - 条件付きコマンドブロックが最後に起動された際に条件が満たされていたかどうか。条件付きコマンドブロックでない場合はtrue
- UpdateLastExecution: 1 / 0 (true/false) - デフォルトはtrue。falseに設定すると1つのティックで同じコマンドブロックのループを複数回実行できる
- LastExecution: チェーンコマンドブロックが最後に実行されたティックを保存する
コンジット/BE
- ブロックエンティティデータ
- すべてのブロックエンティティに共通するタグ
- ブロックエンティティデータ
- すべてのブロックエンティティに共通するタグ
- CustomName: 任意で可能。コンテナの名前。デフォルトの名前に代わり、GUIに表示される。
- CustomName: このビーコンの名称をJSONテキストで指定する。この名称は、ビーコンが
Lock
によってロックされている際に表示されているメッセージ(<名称>はロックされています)で使用される。 - Lock: 何らかの文字列が指定されている場合、その文字列と同じ名前のアイテムを手に持った状態でないとGUIを開くことができなくなる。
- Items: コンテナのアイテムリスト
- : 中に入っているアイテム。slotタグを用いる。ディスペンサーのスロットは0から8まであり、左上の隅が0となる。
- すべてのアイテムに共通するタグ
- : 中に入っているアイテム。slotタグを用いる。ディスペンサーのスロットは0から8まであり、左上の隅が0となる。
- LootTable: 任意。ディスペンサーを満たすためのルートテーブルを指定する。[note 1]
- LootTableSeed: 任意。ルートテーブルを生成するためのシード値。0または空欄の場合シード値に乱数が使われる。[note 1]
- ブロックエンティティデータ
- すべてのブロックエンティティに共通するタグ
- CustomName: 任意で可能。コンテナの名前。デフォルトの名前に代わり、GUIに表示される。
- CustomName: このビーコンの名称をJSONテキストで指定する。この名称は、ビーコンが
Lock
によってロックされている際に表示されているメッセージ(<名称>はロックされています)で使用される。 - Lock: 何らかの文字列が指定されている場合、その文字列と同じ名前のアイテムを手に持った状態でないとGUIを開くことができなくなる。
- Items: コンテナのアイテムリスト
- : 中に入っているアイテム。slotタグを用いる。ディスペンサーのスロットは0から8まであり、左上の隅が0となる。
- すべてのアイテムに共通するタグ
- : 中に入っているアイテム。slotタグを用いる。ディスペンサーのスロットは0から8まであり、左上の隅が0となる。
- LootTable: 任意。ドロッパーが次に開かれたときに使用されるルートテーブル[注釈 1]。
- LootTableSeed: 任意。ルートテーブルを生成するためのシード。値を0にするか、省略するとランダムなシードが設定される[注釈 1]。
- ブロックエンティティデータ
- すべてのブロックエンティティに共通するタグ
- CustomName: 任意で可能。コンテナの名前。デフォルトの名前に代わり、GUIに表示される。
エンダーチェスト/BE
エンドゲートウェイ/BE
- ブロックエンティティデータ
- すべてのブロックエンティティに共通するタグ
- ブロックエンティティデータ
- すべてのブロックエンティティに共通するタグ
- BurnTime: 現在の燃料が無くなるまでのティック数。
- CookTime: アイテムが製錬されているティック数。この値が200(10秒)に達するとアイテムの製錬が終了する。BurnTimeが0になると0に再設定される。
- CookTimeTotal: アイテムの製錬にかかるティック数。
- CustomName: 任意で可能。コンテナの名前。デフォルトの名前に代わり、GUIに表示される。
- Items: このコンテナの中のアイテムの一覧。
- : スロットタグを含む、かまど内のアイテム:
スロット0: 製錬されているアイテム。
スロット1: 次の燃料として使うアイテム。
スロット2: 結果スロットのアイテム。- すべてのアイテムに共通するタグ
- : スロットタグを含む、かまど内のアイテム:
- Items: このコンテナの中のアイテムの一覧。
- CustomName: このビーコンの名称をJSONテキストで指定する。この名称は、ビーコンが
Lock
によってロックされている際に表示されているメッセージ(<名称>はロックされています)で使用される。 - Lock: 何らかの文字列が指定されている場合、その文字列と同じ名前のアイテムを手に持った状態でないとGUIを開くことができなくなる。
ホッパー/BE
- ブロックエンティティデータ
- すべてのブロックエンティティに共通するタグ
- final_state: 生成完了後にジグソーブロックが何のブロックに変化するか。
- joint: 接続タイプの値。「回転可能」なら
rollable
、「整列」ならaligned
を指定。 - name: ジグソーブロックの名前。別のジグソーブロックによって構造物の一部として生成された際に、そのジグソーブロックのtargetに名前が一致するジグソーブロックが先のジグソーブロックに接続する。
- pool: このジグソーブロックが構造物を選択する際に使用する構成要素プール。
- target: このジグソーブロックに接続させたいジグソーブロックの名前。
- ブロックエンティティ
- すべてのブロックエンティティに共通するタグ
- IsPlaying: レコードが現在再生中かどうか。
- RecordItem: 中に入っているアイテムのデータ。 Slotタグは使用しない。
- すべてのアイテムに共通するタグ
- RecordStartTick: レコードの再生を開始する時の TickConutの値。
- TickCount: レコードが挿入されてからのティック数。レコードが挿入されている間、再生中であるかどうかに関わらず増加する。
- ブロックエンティティデータ
- すべてのブロックエンティティに共通するタグ
- Book: 置いている本。Slotは無効。存在しない場合もある。
- すべてのアイテムに共通するタグ
- Page: 現在開いている本のページ。0からスタートする。本を置いていない場合、このタグは存在しない。
- Block entity data
- すべてのブロックエンティティに共通するタグ
- SpawnPotentials: スポーンできるエンティティのリストで、省略できる。2種類以上のエンティティをスポーンさせることができる。これがなくて SpawnData タグが存在する場合、次にエンティティをスポーンさせる時に自動生成される。その場合、スポーンさせるエンティティは1種類のみで、EntityID と SpawnData から決められる。
- : スポーンさせるエンティティの候補。エンティティをスポーンさせた後にこれらのリストからランダムで次の候補が決まる。
- Type: スポーン候補のエンティティID を指定する。前候補がスポーンした時に次候補として EntityID をこの値で上書きする。
- Weight: 他候補より相対的にどのくらい確率が高いかを指定する。1より大きい必要があり、負の数は指定できない。
- Properties: スポーン候補のエンティティのデータタグ。これは省略できず、無い場合は自動的に生成される。
- : スポーンさせるエンティティの候補。エンティティをスポーンさせた後にこれらのリストからランダムで次の候補が決まる。
-
EntityIddeprecated in 1.9: 次にスポーンさせるエンティティの ID を指定する。Mob の ID でなくても動作する。SpawnPotential タグがある場合、この値は順次上書きする。 - SpawnData: 次にスポーンさせるエンティティのデータタグが含まれる。エンティティフォーマットか Mobフォーマットのいずれかを使用することができる。省略可能で、Mob の装備や村人の職業、ヒツジの羊毛の色など そのエンティティにとってランダムに決められるデータを省略した場合、通常通りランダムになるが、指定した場合手動で指定しなければならなくなる。ただし、座標はこの限りではなく Pos を指定しない限り通常通りランダムになる。これはスライムやマグマキューブのサイズおよび体力でも同様である。また、EntityID と共にスポナー内で回転する模型の外観を決める要因でもある。SpawnPotentials タグがある場合、これは順次上書きされる。詳細は上記を参照。
- SpawnCount: スポナーの1回の抽選で同時にスポーンさせることができるエンティティの数。デフォルトは4。MinSpawnDelay も設定する必要がある。
- SpawnRange: スポナーがエンティティをスポーンさせるときのランダムな位置をスポナーを中心とした範囲で設定する。スポナーを基準としてこの値が x,z の一辺の長さとする正方形で、y=-1~+2 の直方体である。垂直方向は整数だがスポナーとの距離に反比例した確率でランダムである。デフォルトは4である。
- Delay: 次にエンティティをスポーンさせるまでの時間をティックで表す。0にするとプレイヤーがスポーン範囲に入った瞬間にエンティティがスポーンする。-1にした場合、エンティティはスポーンせずにこの値がリセットされ、次のスポーンの準備をする。これは EntityId/SpawnData が「次にスポーンさせるエンティティ」を設定するため、SpawnPotentials を指定しても1回目の召喚がランダムにならない仕様を回避するためにある。
- MinSpawnDelay: スポナーが Delay をリセットするときの最小値。
- MaxSpawnDelay: スポナーが Delay をリセットするときの最大値。 MinSpawnDelay と同じ値にすることも可能。0にするとクラッシュするため、1以上にする必要がある。
- MaxNearbyEntities: スポナーが周囲(x,z が SpawnRange×2+1、高さが8の直方体)にスポーンさせ続けるエンティティの最大数。スポナーの EntityID と一致するエンティティがこの値以上存在する場合、スポナーはエンティティのスポーンを停止する。物理的な位置ではなく、当たり判定に関連している。また、この範囲と重なるすべてのチャンク内のエンティティはすべてこの範囲だけでなく、ID と当たり判定の重なりがテストされる。つまり、この範囲の外に大量のエンティティがいる場合、ゲームが重くなり得ることを示している。
- RequiredPlayerRange: スポナーが稼働し始める条件となる、プレイヤーとの距離。範囲は球体状である。なお、スポナーはゲームティックごとに全プレイヤーとの距離をチェックする仕様になっている。MaxNearbyEntities も設定する必要がある。
ピストン/BE
- ブロックエンティティデータ
- すべてのブロックエンティティに共通するタグ
- CustomName: 任意で可能。コンテナの名前。デフォルトの名前に代わり、GUIに表示される。
- CustomName: このビーコンの名称をJSONテキストで指定する。この名称は、ビーコンが
Lock
によってロックされている際に表示されているメッセージ(<名称>はロックされています)で使用される。 - Lock: 何らかの文字列が指定されている場合、その文字列と同じ名前のアイテムを手に持った状態でないとGUIを開くことができなくなる。
- Items: コンテナのアイテムリスト
- : シュルカーボックスに入っているアイテムのリスト。それぞれのアイテムに自身のスロット番号が与えられている。シュルカーボックスの場合、0~26である。
- すべてのアイテムに共通するタグ
- : シュルカーボックスに入っているアイテムのリスト。それぞれのアイテムに自身のスロット番号が与えられている。シュルカーボックスの場合、0~26である。
- LootTable: 任意で可能。シュルカーボックスが次に開けられるまでのルートテーブルになっている[注釈 1]。
- LootTableSeed: 任意で可能。シード値はルートテーブルから決定される。0 または空欄にするとランダムな値になる。[注釈 1]
- 看板とHanging Signで構造は共通。
- ブロックエンティティデータ
- すべてのブロックエンティティに共通するタグ
- is_waxed: 1か0(trueかfalse)で、テキストが固定されているかどうか指定する。ハニカムを使用するとtrueになる。
- front_text: 表面のテキストを記述するコンパウンド。
- has_glowing_text: 1か0(trueかfalse)で、テキストが光って表示されるかどうか指定する。輝くイカスミを使用するとtrueになる。
- color: テキストが染料によって染められた色。デフォルトは
black
。white
、orange
、magenta
、light_blue
、yellow
、lime
、pink
、gray
、light_gray
、cyan
、purple
、blue
、brown
、green
、red
およびblack
のどれかの値をとる。 - messages: 看板のテキストの各行のリスト。4行まで記述でき、上の行から順番に記述する。
- : 各行のテキスト。Raw JSONテキストフォーマットで記入する。
- back_text: 裏面のテキストを記述するコンパウンド。 front_textと同じ構造を取る。
- ブロックエンティティデータ
- すべてのブロックエンティティに共通するタグ
- GlowingText: 1 / 0 (true/false) - テキストが光って表示されるかどうか。輝くイカスミを使用するとtrueになる。
- Color: テキストが染料によって染められた色。デフォルトは"black"。"white"、"orange"、"magenta"、"light_blue"、"yellow"、"lime"、"pink"、"gray"、"light_gray"、"cyan"、"purple"、"blue"、"brown"、"green"、"red"、"black"のどれかの値をとる。
- Text1: 1行目のテキスト。Raw JSONテキストフォーマットで記入されている必要がある。
- Text2: 2行目のテキスト。Raw JSONテキストフォーマットで記入されている必要がある。
- Text3: 3行目のテキスト。Raw JSONテキストフォーマットで記入されている必要がある。
- Text4: 4行目のテキスト。Raw JSONテキストフォーマットで記入されている必要がある。
- Block entity data
- すべてのブロックエンティティに共通するタグ
ExtraType:(1.8まで) 頭の元になるプレイヤーの名前。- SkullOwner: (1.8から) 頭のスキンの所有者。
SkullType
が3のとき、プレイヤーのスキンを使用できる。もしそのプレイヤーが見つからなければ、スティーブの見た目になる。- Id: スキン所有者の UUID
- Name: スキン所有者のユーザーネーム
- Properties
- textures
- : 個々のテクスチャ。
- Signature: 署名、無くても問題ない。
- Value: Base64でエンコードされたJSONオブジェクト。
- timestamp
- profileId
- profileName
- isPublic
- textures
- SKIN
- url: プレイヤースキンのURL、基本的にtextures.minecraft.netを使われる。
- CAPE
- url: プレイヤーマントのURL(64x32 png)
- SKIN
- : 個々のテクスチャ。
- textures
- ブロックエンティティデータ
- すべてのブロックエンティティに共通するタグ
- CustomName: 任意で可能。コンテナの名前。デフォルトの名前に代わり、GUIに表示される。
- CustomName: このビーコンの名称をJSONテキストで指定する。この名称は、ビーコンが
Lock
によってロックされている際に表示されているメッセージ(<名称>はロックされています)で使用される。 - Lock: 何らかの文字列が指定されている場合、その文字列と同じ名前のアイテムを手に持った状態でないとGUIを開くことができなくなる。
- Items: コンテナのアイテムリスト
- : 燻製器のスロットに入っているアイテムのタグ:
スロット 0: 燻製されているアイテム。
スロット 1: 次の燃料として使用されるアイテム。
スロット 2: 生成されたアイテム。- すべてのアイテムに共通するタグ
- : 燻製器のスロットに入っているアイテムのタグ:
- BurnTime: 現在使用している燃料が無くなるまでの残りティック。
- CookTime: 燻製されるまでのティック。この値が200(10秒)になると燻製が終了する。BurnTimeが0になると、0にリセットされる。
- CookTimeTotal: 全てのアイテムが燻製されるまでにかかるティック。
- RecipeLocationN: Nはレシピの番号で、0から始まる。レシピ名は、アイテムを取り出す際にプレイヤーに与えられる経験値を計算するために使用される。
- RecipeAmountN: Nはレシピの番号で、0から始まる。Nが使用された回数は、アイテムを取り出す際にプレイヤーに与えられる経験値を計算するために使用される。
- RecipeUsedSize: いくつのレシピが使用されたか、対応する RecipeLocationNと RecipeAmountNタグを作成し、生成されたアイテムを取り出すときにプレイヤーに与えられる経験値を計算する。
- ブロックエンティティデータ
- すべてのブロックエンティティに共通するタグ
- Items: 現在調理中のアイテムの一覧(最大で4個)
- すべてのアイテムに共通するタグ
- CookingTimes: 調理の経過時間
- CookingTotalTimes: 調理の必要時間
- ブロックエンティティデータ
- すべてのブロックエンティティに共通するタグ
- author: 構造物の製作者。バニラの構造物の大半では"?"にのみ設定されている。
- ignoreEntities: エンティティを無視するかどうか。1か0(trueかfalse)で指定し、デフォルトはfalse。
- integrity: この構造物が配置される際の完全性。
- metadata: 構造物のカスタムデータ。
- mirror: 反転に関するデータ。
NONE
はそのまま、LEFT_RIGHT
はX軸反転、FRONT_BACK
はZ軸反転させる。 - mode: ストラクチャーブロックの現在のモード。
SAVE
LOAD
CORNER
DATA
のいずれかで、デフォルトはDATA
である。 - name: ストラクチャー名。
- posX: 選択範囲の起点までの変位のX成分。
- posY: 選択範囲の起点までの変位のY成分。
- posZ: 選択範囲の起点までの変位のZ成分。
- powered: レッドストーン信号を受けているかどうか。1か0(trueかfalse)で指定する。
- rotation: 回転に関するデータ。
NONE
はそのまま、CLOCKWISE_90
は時計回りに90度、CLOCKWISE_180
は時計回りに180度、COUNTERCLOCKWISE_90
は反時計回りに90度回転させる。 - seed: 構造物の完全性による部分破壊に使用されるシード値。0を入れるとランダム値が使用される。
- showboundingbox: 構造物の範囲を表示するかどうか。1か0(trueかfalse)で指定する。
- sizeX: ストラクチャーブロックが選択している範囲の X 方向の大きさ。長さに相当する。
- sizeY: ストラクチャーブロックが選択している範囲の Y 方向の大きさ。高さに相当する。
- sizeZ: ストラクチャーブロックが選択している範囲の Z 方向の大きさ。奥行に相当する。
- Block entity data
- すべてのブロックエンティティに共通するタグ
- CustomName: 任意で可能。コンテナの名前。デフォルトの名前に代わり、GUIに表示される。
- CustomName: このビーコンの名称をJSONテキストで指定する。この名称は、ビーコンが
Lock
によってロックされている際に表示されているメッセージ(<名称>はロックされています)で使用される。 - Lock: 何らかの文字列が指定されている場合、その文字列と同じ名前のアイテムを手に持った状態でないとGUIを開くことができなくなる。
- Items: コンテナのアイテムリスト
- : 中に入っているアイテム。slot タグを用いる。チェストのスロットは0から26あり、上段が0~8、中段が9~17、下段が18~26となる。
- すべてのアイテムに共通するタグ
- : 中に入っているアイテム。slot タグを用いる。チェストのスロットは0から26あり、上段が0~8、中段が9~17、下段が18~26となる。
- LootTable: 任意のタグ。チェストが開かれた際に中身のアイテムを生成するためのルートテーブルを指定する。アイテム生成後、 LootTableSeedとともに削除される。
- LootTableSeed: 任意のタグ。ルートテーブルでアイテムを生成する際に使用するシード値を設定する。値を0か省略するとランダムになる。
タイルティックフォーマット[]
通常はブロックはチャンクが保存されるまでブロックの更新は発生しないため、更新が必要なブロックはタイルティックによって示される。例えばレッドストーン回路が常時稼働したり、水や溶岩などの液体が流れたり、砂や砂利などのブロックが落下し始める現象などにはこのタイルティックによる更新が用いられる。一方で、葉の消滅などブロックのデータ値内に保存された情報で、チャンク読み込み時に処理されるものについてはタイルティックは用いられない。配布マップ製作者においては、メモリに読み込まれたチャンクで一定時間経過後にブロックを更新したい場合にこれを使用することができる。
- タイルティック
- Chunk format/Tile Tick
ToBeTickedフォーマット[]
このTAG_Listは常に存在しており、それぞれがチャンクの各セクションに対応する24のTAG_listを内部に含む。さらにこれらの内部リストは、それぞれが圧縮されたセクションのチャンク内での相対座標に対応するTAG_Shortを含む場合がある。最先頭の4bitは常に0の値をとり、その次の各4bitはセクションのチャンク内での相対座標(0から23)を表している。リスト内のセクションの順番は下から上の向きに並べられ、保存されている座標の順番は0ZYXの形式である。生成未完了のチャンクを完全なチャンクに変換するとき、PostProcessingリスト内に保存されている座標のみがティックの更新を受け、block_ticksとfluid_ticks内のティック更新は無視されるようである。[要検証]
歴史[]
詳細:この項では多量の変更、特に1.13におけるregionファイルフォーマットに関する変更の記述が欠落しています。
チャンクのシステムはJava Edition Infdevで初めて導入された。1.3でMCRegionフォーマットが導入されるまでは、チャンクは個々のチャンクに対応する".dat"ファイルに保存されており、そのファイル名はチャンクの座標を三十二進記数法でエンコードしたものだった。この保存形式はAlphaレベルフォーマットとして知られている。MCRegionフォーマットの導入により、チャンクの保存方法は32×32個のチャンクを一グループとし、一つの".mcr"ファイルに保存する形式へと移行した。このファイル名は十進法表記でのチャンクグループの座標で表記されている。この新しい保存方法により、Minecraftが一度に開くファイルの数を削減することで、ディスクへの負荷を抑えることに成功した。MCRegionフォーマットはChunkフォーマットの部分のみ変更が加えられ、現行のAnvilファイルフォーマットに継承されている。Anvilファイルフォーマットでは、regionファイルに関する技術は従来通りであるが、ファイルの拡張子が".mca"に変更されている。
MCRegionからAnvilへの移行の上で最も大きな変更点はチャンクをセクションに分割したことである。チャンクは一辺が16ブロックの空間であるセクションによって24(移行当時は16)個に分割されるようになり、これにより空の、つまり空気で満たされたセクションを保存する必要が無くなり、使用容量の削減に成功した。また、従来は225までしか扱えなかったブロックIDを、4095まで扱えるようにする準備も行われた。ただし、多くのアイテムIDはすでに256から4095の範囲で取得されているため、Minecraftはアイテムとして存在するそうしたブロックについては完全には準備していない。
また、Block、Data、Blocklight、Skylightのデータ配列は個別のセクションに保存されるようになった。Data、Skylight、Blocklightは4bitの値の配列であり、BlocklightとSkylightはBlock IDの一部ではなくなった。Blockのデータ配列は各ブロックにつき8bitであり、追加された4bitにより4096種類のブロックIDを扱えるようになった。さらにAnvilフォーマットでは、NBTフォーマットがNotchのオリジナルの使用から変更が加えられ、既存のバイト配列のような整数列を認識するようになった。現在はチャンク内のHeightMap情報にのみ使用されている。
Java Edition | |||||
---|---|---|---|---|---|
1.3.1 | 12w21a | MaxExperience 、RemainingExperience 、ExperienceRegenTick 、ExperienceRegenRate 、ExperienceRegenAmount を MobSpawner から削除。 | |||
1.4.2 | 12w34a | エンティティ WitherBoss を追加。 | |||
1.5 | 13w02a | エンティティ MinecartTNT を追加。
| |||
Minecart を廃止。 | |||||
13w03a | エンティティ MinecartHopper を追加。 | ||||
13w06a | エンティティ MinecartSpawner を追加。 | ||||
1.6.1 | 13w16a | エンティティ EntityHorse を追加。 | |||
13w21a | ArmorType を EntityHorse から削除。
| ||||
EntityHorse から Saddle を除去 | |||||
1.6.1-pre | Saddle を EntityHorse に再追加。 | ||||
1.7.2 | 13w39a | エンティティ MinecartCommandBlock を追加。 | |||
1.8 | 14w02a | Lock をコンテナに追加。
| |||
NBTデータの指定時にアイテムIDを使用しなくなった。 | |||||
アルファベットのIDフォーマットを使用し、Block を FallingSand に追加。 | |||||
14w06a | ShowParticles をすべてのMobに追加。 | ||||
PickupDelay をアイテムエンティティに追加。 | |||||
Age を-32768に設定すると、期限切れにならない項目ができるようになった。 | |||||
AttackTime をMobから削除。 | |||||
14w10a | rewardExp を Villager に追加。
| ||||
繁殖できるMobに OwnerUUID を追加。 | |||||
Owner を Skull に追加。 | |||||
額縁と絵画に関する変更:Facing 、TileX 、TileY 、TileZ を追加。アイテムの置かれている場所ではなくアイテムの置かれているブロックの座標を表すようになった。Direction と Dir は廃止。 | |||||
14w11a | エンティティ Endermite を追加。
| ||||
EndermiteCount を Enderman に追加。 | |||||
14w21a | CustomName と CustomNameVisible が全てのエンティティで動作するようになった。 | ||||
14w25a | エンティティ Guardian を追加。
| ||||
Text1 、Text2 、Text3 、Text4 を看板に追加。制限が文字数(16)ではなく文字の幅によるようになった。 | |||||
14w27a | エンティティ Rabbit を追加。
CommandStats をコマンドブロックと看板に追加。 | ||||
14w28a | EndermiteCount を Enderman から削除。 | ||||
14w30a | Silent をすべてのエンティティに追加。 | ||||
14w32a | NoAI をすべてのエンティティに追加。
| ||||
エンティティ ArmorStand を追加。 | |||||
14w32c | NoBasePlate を ArmorStand に追加。 | ||||
1.9 | 15w31a | DropChances と Equipment タグを置き換える形で、タグ HandItems 、ArmorItems 、HandDropChances 、ArmorDropChances を Living に追加。
| |||
HandItems と ArmorItems を ArmorStand に追加。 | |||||
Glowing を Entity に追加。 | |||||
Team を LivingBase に追加。 | |||||
DragonPhase を EnderDragon に追加。 | |||||
Entity に属する、エンティティ Shulker を追加。 | |||||
Entity に属する、エンティティ ShulkerBullet を追加。 | |||||
FireballBase を拡張したエンティティ DragonFireball を追加。固有のタグを持たないようになった。 | |||||
Arrow に属する、エンティティ TippedArrow と SpectralArrow を追加。 | |||||
TileEntity に属する、ブロック EndGateway を追加。 | |||||
TileEntity に属する、ブロック Structure を追加。 | |||||
tag に属する、アイテムタグ Potion を追加。 | |||||
15w32a | Tags と DataVersion タグをエンティティに適用できるようになった。
| ||||
PrimedTntエンティティの Fuse タグのtypeを「Byte」から「Short」に変更 | |||||
15w32c | エンティティが持てるタグの上限を追加(1024)。上限を超えた場合はエラーに「エンティティに1024個以上タグを追加できません」と表示される。 | ||||
15w33a | Entity の子、エンティティ AreaEffectCloud を追加。
| ||||
ExactTeleport を追加。EndGateway の Life を Age に改名。 | |||||
Linger を ThrownPotion に追加。 | |||||
DataVersion を Entity から削除。LivingBase に属する、Player のみに適用できるようになった。 | |||||
UUID を Entity から削除。 | |||||
LivingBase の下の HealF を廃止。 | |||||
LivingBase の下の Health のtypeを「Short」から「Float」に変更。 | |||||
Equipment を ArmorStand と Living エンティティから削除。使用法は以前に追加された HandItems と ArmorItems で置き換えられた。 | |||||
15w33c | BeamTarget を EnderCrystal に追加。 | ||||
15w34a | powered と conditional バイトタグをコマンドブロックの Control タイルエンティティに追加。 | ||||
life と power を FireballBase に追加。 | |||||
SpawnData の中の id を MobSpawner に追加。 | |||||
powered を音符ブロックの Music タイルエンティティに追加。 | |||||
15w35a | VillagerProfession を Zombie に追加。 | ||||
15w37a | Enabled を MinecartHopper に追加。 | ||||
15w38a | SkeletonTrap と SkeletonTrapTime を EntityHorse に追加。 | ||||
15w41a | 全てのエンティティの Riding を Passengers で置き換え。
| ||||
全てのpassengerに RootVehicle を追加。 | |||||
Type を Boat 追加。 | |||||
15w42a | Fuel を Cauldron に追加。 | ||||
15w43a | LootTable と LootTableSeed を Chest 、Minecart 、MinecartHopper に追加。
| ||||
DeathLootTable と DeathLootTableSeed をすべてのMobに追加。 | |||||
life と power をすべての火の玉に追加(FireballBase )。 | |||||
15w44a | ShowBottom を EnderCrystal に追加。 | ||||
15w44b | Potion と CustomPotionEffects を Arrow に追加。
| ||||
Potion を AreaEffectCloud に追加。 | |||||
15w45a | Linger を ThrownPotion から削除。代わりに、minecraft:lingering_potion のIDを持つアイテムが保存されるとポーションが残留するようになった。
| ||||
アイテムがポーションでなくても ThrownPotion が保存されたアイテムとして描画されるようになった。 | |||||
15w46a | ウサギがニンジンを食べると Rabbit の MoreCarrotTicks が40に設定されるようになったが、もう使われていない。 | ||||
15w47a | PaymentItem を Beacon に追加。 | ||||
15w49a | PaymentItem を Beacon から削除。
| ||||
看板がテキストを受け入れるには("Text1", "Text2", "Text3", "Text4")の4つのタグが全て存在している必要がある様になった。 | |||||
15w51b | ArmorStand の DisabledSlots の元の値が自然に変わった。 | ||||
1.10 | 16w20a | エンティティ PolarBear を追加。
| |||
VillagerProfession と IsVillager を置き換えて ZombieType を Zombie に追加。6の値はハスクを示す。 | |||||
SkeletonType の2の値はストレイを示すようになった。 | |||||
NoGravity をすべてのエンティティに拡張。 | |||||
powered 、showboundingbox 、showair を Structure に追加。 | |||||
16w21a | FallFlying をMobと防具立てに追加。
| ||||
integrity と seed を Structure に追加。 | |||||
1.10-pre1 | ParticleParam1 と ParticleParam2 を AreaEffectCloud に追加。 | ||||
1.11 | 16w32a | Horseをそれぞれの種類に対応してエンティティID horse 、donkey 、mule 、skeleton_horse 、zombie_horse に分割。Type と HasReproduced を horse から削除。ChestedHorse 、Items タグが mule と donkey 、SkeletonTrap にのみ適用されるようになった。SkeletonTrapTime タグが skeleton_horse にのみ適用されるようになった。
| |||
SkeletonをエンティティID skeleton 、stray 、wither_skeleton に分割。SkeletonType タグを全てのスケルトン・亜種から削除。 | |||||
ZombieをエンティティID zombie 、zombie_villager 、husk に分割。ZombieType タグをすべてのゾンビ・亜種から削除。ConversionTime と Profession タグが zombie_villager にのみ適用されるようになった。 | |||||
GuardianをエンティティID guardian と elder_guardian に分割。Elder タグを guardian から削除。 | |||||
使用されていないセーブゲームID Mob と Monster を削除。 | |||||
Pumpkin バイトタグを snowman に追加。 | |||||
16w35a | CustomName を banner に追加。 | ||||
16w39a | llama 、llama_spit 、vindication_illager 、vex 、evocation_fangs 、evocation_illager を追加。
| ||||
Color を shulker に追加。 | |||||
LocName 、CustomPotionColor 、ColorMap をアイテムに追加。 | |||||
16w40a | Johnny を vindication_illager に追加。
| ||||
xTile 、yTile 、zTile 、inTile 、inGround をFireballBaseクラスから削除(大きな火の玉、小さな火の玉、ドラゴンの火の玉、ウィザーの頭蓋骨)。 | |||||
16w41a | llama_spit がセーブゲームエンティティとして利用可能になった。 | ||||
16w42a | crit を arrow に追加。 | ||||
16w43a | OwnerUUIDLeast と OwnerUUIDMost を evocation_fangs に追加。 | ||||
16w44a | xTile 、yTile 、zTile 、inTile 、inGround を釣竿の浮きエンティティから削除。 | ||||
1.11-pre1 | ench を少なくとも1つのコンパウンドを必要とするよう変更。 | ||||
1.12 | 17w13a | エンティティParrot 、ShoulderEntityLeft /ShoulderEntityRight 、seenCredits 、recipeBook and Recipes を追加。 | |||
17w14a | 新しいコンパウンドタグ、isFilteringCraftable 、isGuiOpen 、recipes をrecipeBook に追加。
| ||||
ConversionPlayerLeast とConversionPlayerMost をエンティティ Zombie に追加。 | |||||
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 が削除された。 | |||||
Mobの頭からRot が削除された。 | |||||
17w47a | ジュークボックスからRecord が削除された。 | ||||
17w47b | トラップチェストは独自のブロックエンティティを持たなくなり、再びchest を共有するようになった。 | ||||
18w01a | Thrower とOwner がストリングからL とM という名前の64bitのcompoundになった。 | ||||
18w02a | 釣り竿の「浮き」にエンティティIDfishing_bobber が与えられた。
| ||||
絵画の種類名が小文字表記になり、名前空間IDを持つようになった。 | |||||
18w07a | エンティティturtle 、trident 、phantom が追加された。
| ||||
HomePosX , HomePosY , HomePosZ , TravelPosX , TravelPosY , TravelPosZ , and HasEgg to turtle にHomePosX 、HomePosY 、HomePosZ 、TravelPosX 、TravelPosY 、TravelPosZ 、HasEgg のNBTデータが追加された。 | |||||
phantom にAX 、AY 、AZ 、Size のNBTデータが追加された。 | |||||
18w15a | エンティティdolphin が追加された。 | ||||
18w19a | puffer_fish をpufferfish に改名した。 | ||||
18w20a | cod_mob をcod に改名した。
| ||||
salmon_mob をsalmon に改名した。 | |||||
18w21a | dolphin にTreasurePosX 、TreasurePosY 、TreasurePosZ 、GotFish CanFindTreasure のNBTデータが追加された。
| ||||
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 に改名した。 | |||||
illusion_illager をillusioner に改名した。 | |||||
1.14 | 18w43a | エンティティillager_beast 、panda 、pillager を追加した。 | |||
18w45a | LIGHT_BLOCKING のハイトマップが削除された。 | ||||
1.15 | 19w36a | 高度によって異なるバイオームを実現するために、 Levelタグ内の Biomesの取り得る値の数が256から1024に増加した。 | |||
1.17 | 20w45a | エンティティの保存場所が(terrain)Chunkディレクトリから分離され、専用のEntitiesディレクトリに移動された(POIファイルと同様)。保存形式は従来の通りNBT構造を持ったregionファイルである。 | |||
20w51a | エンティティaxolotl が追加された。 | ||||
21w03a | エンティティglow_squid が追加された。 | ||||
21w13a | エンティティgoat が追加された。 |
脚注[]
デモ版 | |||||||
---|---|---|---|---|---|---|---|
開発 |
| ||||||
技術的情報 |
| ||||||
マルチプレイ | |||||||
ゲームのカスタマイズ |