はじめに

あるきながら、ダンジョンの通路や部屋を作ったら、楽だろうなぁ。

そうがんがえ、マイクラ で、

歩くスピードで、ダンジョンつくるやり方を作りました。

ストラクチャーブロックの配置って、置く方角を気をつけるのが

面倒なので、それを、簡単にしちゃう方法の紹介となります。

なんで、この記事をかいているのか

ちょっと、ややこしいので、メモしたら、たくさん喜ぶ人が多いとおもったので

マイクラのストラクチャーブロックと、functionコマンドをつかうので、

いま(2019/10/19)のところ、マイクラのJava版です。

準備は、だいたいこんなやり方

大変だけど、これができたら、高位な錬金術師みたいになりますよ。

  1. 実験用の新しいワールドを作成します。
  2. ストラクチャーブロックでは、登録するだけで方角が、だいじなので、F3キーを押して、北を向きます。
  3. ダンジョンの通路とか、階段とかのサンプルをつくります。
  4. ストラクチャーブロックに登録します。
  5. 自作のコマンドを作るプログラムに、ストラクチャーの名前、自分の立ち位置を入れます。
  6. コマンドのテキストファイルができるので、functionが読めるフォルダに保存します。
  7. reloadコマンドでよみこみます。
  8. function コマンドで、建築
  9. 大体、立ち位置が気に入らないとか言って、微調整します。
  10. reloadコマンドで、読み込みます。
  11. 微調整をくりかえして、完成

コマンド

自分が作った建築の部品を、マイクラではストラクチャーと呼んでいます。

以下に示すコマンドは、自分の立っている場所と、向きを逆算して、

ストラクチャーを、あるきながら、配置するように、するコマンドです。

引数

name: ストラクチャー名

x: ストラクチャーを配置したときの自分の相対位置

z:

y:

コマンド例

実際に、どんなコマンドをつくるのかみてみましょう。

たとえば、

name: ストラクチャー名 : bath

x: 3

z: -1

y: -3

だとすると、

つくるコマンドは、次の6行になります。

最初の4行は、

なので、上記のいずれかのストラクチャーブロックが、置かれます。

つづく2行の意味は、

execute if entity @p[y_rotation=-45..44] as @p positioned ~ ~ ~ run setblock ~ ~2 ~ minecraft:structure_block{mode:"LOAD", name:"bath", posX:-3 ,posZ:1, posY:-5} replace
execute if entity @p[y_rotation=45..135] as @p positioned ~ ~ ~ run setblock ~ ~2 ~ minecraft:structure_block{mode:"LOAD", name:"bath", posX:-1, posZ:-3, posY:-5, rotation:CLOCKWISE_90} replace
execute if entity @p[y_rotation=135..224] as @p positioned ~ ~ ~ run setblock ~ ~2 ~ minecraft:structure_block{mode:"LOAD", name:"bath", posX:3, posZ:-1, posY:-5, rotation:CLOCKWISE_180} replace
execute if entity @p[y_rotation=-135..-44] as @p positioned ~ ~ ~ run setblock ~ ~2 ~ minecraft:structure_block{mode:"LOAD", name:"bath", posX:1, posZ:3, posY:-5, rotation:COUNTERCLOCKWISE_90} replace
execute as @p positioned ~ ~ ~ run setblock ~ ~3 ~ minecraft:redstone_block replace
execute at @p positioned ~ ~2 ~ run fill ~ ~ ~ ~ ~1 ~ minecraft:air replace

毎回これを作るのは、大変なので、自分は、excelやrubyなどで、上記のめんどくさいのを、自動で作るようにしています。

これをテキストファイルに保存して、ファイルを保存するのですが、

保存先が、最近のバージョンで、変更されまくって、特定するのに時間がかかりました。 今のバージョン(1.14)ですと。

自分は

 C:\Users\kh\AppData\Roaming\.minecraft\saves\structure\datapacks\kh\data\ns01\functions

というフォルダに、

bath.mcfunction

というファイル名で保存しています。

自分で調節できるのは、上記の

ですね。ここに、自由に好きな名前が入れれます。

登録後は、reloadコマンドを使って、マイクラで使える状態になります。

使うときは、上記の 名前の例ですと

function ns01:bath

となります。

トップ   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS