前回の記事「Minecraft でプログラミングを楽しむ4つの方法」の
1.Raspberry Pi に入っている Minecraft Pi 版を使う
について今回は解説します。

Raspberry Pi に無料で入っている Minecraft Pi 版では、公式にプログラミングに対応しています。
ここでは、Ruby、Python、Scratch の3種類のプログラミング言語ごとに始め方をまとめました。
(OSは、2015-09-24-raspbian-jessie。
 日本語フォント さざなみゴシック ttf-sazanami-gothic を入れて、日本語の設定。)

※Minecraft Pi 版はクリエイティブモードのみとなっています。
 また、タイトル画面で「Join Game」を選ぶと、同じLAN 内の Minecraft Pi 同士で5人までワールドを共有できます。


a) Ruby
Raspberry Pi にはあらかじめ Ruby がインストールされています。

a-1) Rubyのバージョンの確認
デスクトップ画面から、LXTerminal アイコンを選んで起動します。
LXTerminal で;(赤文字が入力)
pi@raspberrypi ~ $ ruby -v
ruby 2.1.5p273 (2014-11-13) [arm-linux-gnueabihf]

raspi_ruby


a-2) Minecraft-Pi Ruby をインストール
LXTerminal で;(赤文字が入力)
pi@raspberrypi ~ $ sudo gem install minecraft-pi-ruby
Successfully installed minecraft-pi-ruby-0.0.1
Parsing documentation for minecraft-pi-ruby-0.0.1
Done installing documentation for minecraft-pi-ruby after 1 seconds
1 gem installed


a-3) Ruby プログラムを書く
Menu>アクセサリ>Text Editor(実体は Leafpad)でエディタを起動。(エディタは各自好みのエディタを)
以下のようなサンプルプログラムを作成して、デスクトップ画面に保存します。

hello.rb
-----------------------------------------------
require 'minecraft-pi-ruby'

mc = Minecraft.new
mc.say 'Hello Minecraft World!'
-----------------------------------------------


a-4) Minecraft Pi を起動
Menu>ゲーム>Minecraft Pi で起動。
「Start Game」>「Create new」で新たにワールドを作るか、「Select world」ですでに作ってあるワールドを選びます。

Minecraft ワールド画面を開いたままにしておきます。
Minecraft Pi の画面からマウスのポインタを外に出すには、Tabキーを押します。

※Minecraft Pi の基本操作
キー 機能
W 前進
S 後退
A 左に水平移動
D 右に水平移動
E アイテム一覧(ESC で閉じる)アイテムをクリックすると下のホットバーに登録される
スペースを素早く2回 飛行モード/ 通常モードの切り替え
スペース 上昇(飛行モード)/ ジャンプ(通常モード)
左Shift 下降(飛行モード)/ 身をかがめる(通常モード)
Esc メニュー画面(音声、自己視点/ 後方からの視点の切り替え、終了してタイトルに戻る)、ゲームは一時停止、マウスカーソルは画面外に出せる
Tab マウスカーソルを画面外に出す

マウス
マウスカーソル 見る向きを変える
右クリック ブロックを置く
左クリック ブロックを壊す
ホイール ホットバー中のアイテムから選択(または1〜8のキーで指定)


a-5) Ruby プログラムを実行
LXTerminal で;(赤文字が入力)
pi@raspberrypi ~ $ cd Desktop
pi@raspberrypi ~ $ ruby hello.rb

Minecraft Pi の画面に;
Hello Minecraft World!
と表示されれば成功です。

使える命令は、Minecraft-Pi Ruby のサイトを参照してください。

(追加記事;

b) Python
Minecraft Pi をプログラミングで操作する標準環境は Python になっています。
Raspberry Pi にはあらかじめ Python がインストールされています。

b-1) Pythonのバージョンの確認
デスクトップ画面から、LXTerminal アイコンを選んで起動します。
LXTerminal で;(赤文字が入力)
pi@raspberrypi ~ $ python -- version
Python 2.7.9
pi@raspberrypi ~ $ python3 -- version
Python 3.4.2


b-2) Python プログラムを書く
Menu>アクセサリ>Text Editor(実体は Leafpad)でエディタを起動。(エディタは各自好みのエディタを)
以下のようなサンプルプログラムを作成して、デスクトップ画面に保存。

hello.py
-----------------------------------------------
import mcpi.minecraft as minecraft
 
mc = minecraft.Minecraft.create()
mc.postToChat("Hello Minecraft World!")
-----------------------------------------------


b-3) Minecraft Pi を起動
Menu>ゲーム>Minecraft Pi で起動。
「Start Game」>「Create new」で新たにワールドを作るか、「Select world」ですでに作ってあるワールドを選びます。

Minecraft ワールド画面を開いたままにしておきます。
Minecraft Pi の画面からマウスのポインタを外に出すには、Tabキーを押します。

※Minecraft Pi の基本操作
上記 a-4)参照


b-4) Python プログラムを実行
LXTerminal で;(赤文字が入力)
pi@raspberrypi ~ $ cd Desktop
 pi@raspberrypi ~ $ python hello.py

Minecraft Pi の画面に;
Hello Minecraft World!
と表示されれば成功です。

使える命令は、 下記のサイトを参照してください。
→・Minecraft API - <Stuff about="code" />


b-5) Python Shellで実行する
Python Shell でも同じことが実行できます。
プログラムをいちいち保存して実行しなくて済むので便利かもしれません。

(Minecraft ワールド画面を開いた状態で)
Menu>プログラミング>Python2(IDLE) または Python2(IDLE) で Python Shell が起動。

>>> from mcpi import minecraft
>>> mc = minecraft.Minecraft.create()
>>> mc.postToChat("Hello Minecraft World!") 

Minecraft Pi の画面に;
Hello Minecraft World!
と表示されれば成功です。



c) Scratch
Raspberry Pi にはあらかじめ Scratch がインストールされています。
 
c-1) Scratch2MCPI をインストール
LXTerminal で;(赤文字が入力)
pi@raspberrypi ~ $ curl http://scratch2mcpi.github.io/install.sh | sh
 ...
(途中省略)
 ...
Installation of scratch2mcpi is completed.
というメッセージが表示されればインストール成功。
同時に、デスクトップに「Scratch2MCPI」と「Scratch2MCPI Terminal」というアイコンができているはず。


c-2)  Minecraft Pi を起動
Menu>ゲーム>Minecraft Pi で起動。
「Start Game」>「Create new」で新たにワールドを作るか、「Select world」ですでに作ってあるワールドを選びます。
(「Join Game」を選ぶと、同じLAN 内の Minecraft Pi 同士で5人までワールドを共有できます。)
ちなみに、Minecraft Pi 版はクリエイティブモードのみとなっています。

Minecraft ワールド画面を開いたままにしておきます。
Minecraft Pi の画面からマウスのポインタを外に出すには、Tabキーを押します。


c-3) Scratch2MCPI を起動
デスクトップにある「Scratch2MCPI」アイコンをダブルクリックします。

Scratch がまず起動し、「遠隔センサ接続が有効になりました」というダイアログが出るので「OK」ボタンを押す。
次に Scratch2MCPI という黒い画面が開き、「スクラッチと接続しました」と表示される。

(2015.10.25 追記;
 以下の起動しない不具合は、最新の Scratch2MCPI では解消されています。)
※ OS が 2015-09-24-raspbian-jessie の場合、上記の手順だとうまく起動しませんでした。(Scratch2MCPI 1.0.2)
とりあえずの起動法としては;
1. Minecraft Pi でワールド画面を出しておく
2. Menu>プログラミング>Scratch を起動する
3. Scratch の「調べる」カテゴリーの「スライダー センサーの値」ブロックの上で右クリックして、「遠隔センサー接続を有効にする」を選ぶ。「遠隔センサ接続が有効になりました」というダイアログが出るので「OK」ボタンを押す。
4. デスクトップにある「Scratch2MCPI Terminal」アイコンをダブルクリックする。
黒い画面(Scratch2MCPI 1.0.2)に「スクラッチと接続しました」と表示され、Minecraft Pi の画面に「Scratch2MCPI connected to Minecraft Pi.」と表示され(やがて消え)れば起動成功。


c-4)Scratch プログラムを実行
Scratch の画面で、真ん中の「スクリプトエリア」に「(緑の旗)がクリックされたとき」ブロックと「(hello_minecraft)を送る」ブロックがつながっているスクリプトがあるのを確認します。

画面右上の緑の旗をクリックする。
Minecraft Pi の画面に;
hello Minecraft
と表示されれば成功です。


※ 「c-3) Scratch2MCPI を起動」がうまくいかず、手動で起動させた場合は上記のスクリプトがありません。これも自分で作る必要があります。

1. 左側の「制御」カテゴリーにある「〇〇▼を送る」ブロックを真ん中の「スクリプトエリア」にドラッグする。
2. 「〇〇▼を送る」ブロックの「▼」をクリックして、「hello_minecraft」を選ぶ。
(ブロックが「(hello_minecraft)を送る」になる。)
3. 左側の「制御」カテゴリーにある「(緑の旗)がクリックされたとき」ブロックを真ん中の「スクリプトエリア」にドラッグする。
4. 「(緑の旗)がクリックされたとき」ブロックの下に、「(hello_minecraft)を送る」ブロックをくっつける。
5. これで上記のスクリプトと同じものが出来上がりました。


c-5)タートル機能付き Scratch2MCPI
タートル機能付き Scratch2MCPI もあるそうです。
→・Scratch2MCPI Nasu-lab flavor特設サイト -  那須塩原クリエイティブ・ラボ



関連記事)
→・Raspberry Pi 2 に Raspbian Jessie をインストールするメモ



Raspberry Pi で Minecraft Pi 版の Programming をする方法を解説。
特に Scratch について詳しい。 Python についても少し紹介。


「Pythonで自由自在 楽しく学ぶラズパイプログラミング」
第1回 Python と Minecraft で遊ぼう(ガリレオ 小山博史)が掲載。





Minecraft で Programming をする方法(Mac/Windows/Raspberry Pi)を詳しく解説。サンプルプログラム多数。
関連サイトに動画;

購入するなら Raspberry Pi の最新版がおすすめ。




周辺機器もまとめて揃えるならスターターパックが楽。




発熱が心配ならヒートシンク。




スターターパックを購入しない場合は、microSDカード(8GB以上、Class10以上)が必要。








やはり無線LANの方が楽。無線LAN子機は上記TechShareのスターターパックには入っていない。







こちらは本体と周辺機器のセット(無線版は無線LAN子機を含む)










こちらは本体と周辺機器のセット(有線版は LANケーブルを含む)








無線接続のキーボード、マウスが欲しくなったら