この記事では、Minecraft Java Edition(バージョン1.20.2)の情報をもとに執筆しています。
そのほかのバージョンや機種などでの動作は保証できません。
こんにちは!
マインクラフターのなつめ(@natsume_717b)です。
この記事では、こんな疑問を解決します!
- 高度マップとは特定の条件下におけるY座標の高さ
- カスタムストラクチャーやコマンドで使用する
高度マップとは英語でHeightmapと書き、高さを示すものになります。
多くの人が知っているY座標とは少々異なるため、この記事でしっかりと理解してもらえれば幸いです。
さっそく見ていきましょう!
高度マップとは特定の条件下におけるY座標の高さ
高度マップとは、ざっくり言えばY座標の値です。
ただし本来のY座標とは異なり、様々な条件が付与されています。
例えばOCEAN_FLOORの場合は、水などの移動を制限するブロックは含めません。
海のバイオームを想像してもらった時に、海底となるブロックの高さがOCEAN_FLOORで示す値になります。
このように特殊なカウントをするので、それぞれ使い分ける意味があるわけですね。
高度マップの種類やどのようなものかは以下の表にまとめました。
高度マップ名 | デバッグ画面での表記 | 説明 |
---|---|---|
WORLD_SURFACE | S | 空気ブロック以外で、最も高い位置にあるブロックのY座標を示す。 |
WORLD_SURFACE_WG | 洞窟生成完了後に削除されるため無し。 | WORLD_SURFACEと同様。 ただし、ワールド生成が済むと削除される。 |
OCEAN_FLOOR | O | エンティティの移動を妨げるブロックを含まない。 要は水や溶岩などを含めない状態で最も高いのブロックのY座標を示す。 |
OCEAN_FLOOR_WG | 洞窟生成完了後に削除されるため無し。 | OCEAN_FLOORと同じ。 ワールド生成が完了すると、削除される。 |
MOTION_BLOCKING | M | 水や溶岩、水没したブロックなども含めて、最も高い位置にあるブロックのY座標を示す。 |
MOTION_BLOCKING_NO_LEAVES | ML | MOTION_BLOCKINGから葉ブロックを除いた状態で、最も高い位置にあるブロックのY座標を示す。 |
また、デバッグ画面で確認する際はCHとSHがあります。
これはクライアントとサーバーの違いで、それぞれClient-side HeightmapとServer-side Heightmapの略になっています。
カスタムストラクチャーやコマンドで使用する
さて、高度マップについて説明しましたが、いったいどういう用途があるのかという話です。
高度マップはカスタムストラクチャーで使うほか、コマンドで使用することもあります。
カスタムストラクチャーを作成する際に必要なstructureの中にあるjsonファイルには、以下のような記述があります。
{
"type": "minecraft:jigsaw",
"biomes": "minecraft:badlands",
"max_distance_from_center": 80,
"project_start_to_heightmap": "WORLD_SURFACE_WG",
"size": 6,
"spawn_overrides": {},
"start_height": {
"absolute": 0
},
"start_pool": "ntm:dungeon01",
"step": "surface_structures",
"terrain_adaptation": "beard_thin",
"use_expansion_hack": true
}
また、executeコマンドでpositionedにてoverを選択した場合は、高度マップの選択が必要になります。
/execute positioned over motion_blocking_no_leaves run XXXX
使用頻度こそ少ないかもしれませんが、覚えておくといつか役に立ちそうな知識ではあります。
まとめ
というわけで、今回のまとめです。
- 高度マップとは、決められた条件での最大高度を示す値。
- 高度マップには複数の種類があるため、カスタムストラクチャーなどで使用する際は使い分けることが可能。
この記事は以上になります。
2016年からマイクラを楽しんでおり、最近はクリエイティブモードでコマンドを駆使して遊んでいます!