MINECRAFTのコマンドを使う

昨年からマイクラ(Minecraft)にハマっており、最近同じくハマってるFortran学習以外は、ほぼマイクラで遊ぶ毎日です。何が面白いって、アイテムを組み合わせて別のアイテムを作るというところ。とてもプログラミング的だなあと感じていて、プレイしていると、プログラミングの時の高揚感を得られてる気がするんです。普段の趣味といえばコマンドライン(スクリプト、プログラミング含む)を書くぐらいなので、慣れないゲームをやることで頭を使ってる感もあります。
マイクラ(1.12.*)のバニラ(デフォルトの状態)でプレイしてるんですが、エンダードラゴンというラスボスを倒した後から、急激に面白くなり、一通りの仕掛けを攻略し、そろそろ建築始めようか、という段階です。
建築方法は、基本的にプレイヤーを動かしてブロックを一つずつ設置するというものなので、巨大な建造物を作るとなると、途方もない作業になります。何か簡単に建築する方法はないかなあと探したところ、マイクラに備わっているコマンドの仕組みがあるのに加え、いろんなツール(MOD等)が見つかりました。まあ、MODやコマンドってのは、マイクラをプレイしている人なら当然知ってることなのですが、私の場合はプレイを初めてから、コマンドが使えるということを知るまで半年かかりました。本ブログはコマンドの達人を目指すブログ、ということで、このマイクラのコマンドも使いこなせるようになりたいと思っています。いずれ、マイクラとプログラミング、コマンドが絡んでくるような気もしています。
※ちなみに、マイクラのコマンドはチートONで使えるようになるのですが、何でもできてしまうので、ゲームがとてもつまらないものになる可能性があります。一通り楽しんだ後に、手を出した方が良いかもしれません。

では、コマンドを使うための起動から。「Singleplayer」を選びます。「Multiplayer」でも使えますが、コマンド権限付与の方法が異なるので割愛します。

Select Worldの画面で「Create New World」をクリック。

「More World Options」をクリック。

「Allow Cheats: OFF」のボタンをクリックして、「Allow Cheats: ON」という表示に変更します。その後に、画面中央の「Done」をクリック。

地形が生成されるのを待ちます。

スポーンした直後から、コマンドが使えるようになっています。早速使ってみましょう。/(スラッシュ)キーを押すと、コマンドが入力できるようになるので以下の文字を入力してEnterキーを押します。

/give @p log 64


実行すると、原木が64個、持ち物に現れます。まるで魔法のようです。
giveは、アイテムを与えるコマンドで、パラメータにプレイヤーと、与えるアイテム、与える個数を指定します。@pは最寄りのプレイヤー、つまり自分となります。詳しい情報はMinecraft Wikiで検索すれば出てきます。

次は別のアイテムをgiveしてみましょう。

/give @p diamond_block 64

ダイヤモンドブロックを64個取得しました。チートOFFでゲームを始めた頃は、ダイヤを得た時の喜びは半端なものではなかったですが、こう簡単に手に入ってしまうと、無価値に思えてしまいます。現実のお金も苦労して手に入れた方が良いんでしょうねえ。

アイテムとして自分の持ち物に加えるのではなく、ブロックとして設置することもできます。setblockを使います。

/setblock ~ ~ ~-5 gold_block


~は、相対座標指定で、自分のいる座標からのオフセットを指定します。~だけだと自分の座標になります。たまたま北方向を向いていたのでZ軸を~-5というように指定すれば、自分のいる地点から北に向かって-5の位置に金ブロックが設置されました。

アイテムのIDは英単語となっており、とても分かりやすい名前になってます。ネーミングセンスが良いっていうのでしょうか、IDをわざわざ調べなくても、想像して使えそうな簡単な名前です。プログラミングするときも名前はとても重要なので、英単語はいろいろ覚えるべきかもしれません。私は英単語を覚えるためにわざと英語でプレイしています。

次は、敵対MOBを召還してみます。ウィザーというラスボス的MOBを召還します。

/summon wither ~ ~ ~-5


実行後、すぐにやられることを覚悟していましたが、あっという間に遠くへ行ってしまいました。すぐ目の前に召還したはずなのに。

Leave a Reply

Your email address will not be published. Required fields are marked *

CAPTCHA