05,ScratchでMinecraftを動かす
RaspberryPiのセッティングができたので、いよいよMinecraftを動かしてゆきます!参考図書は前回と同様「Raspberry Piではじめるどきどきプログラミング」です。
まずMinecraftとScratchを連携させます。テキストに詳しく載っているので小4息子でもすぐに実現できました。実際はRaspbianに同梱されているScratchとは別にMinecraftと連携専用のScratch2MCPIを使います。何が違うかというと、見た目はScratchだけど書いたプログラムがPythonに変換されてMinecraftに渡される仕様のようです。(ということは。ゆくゆくはPythonで直接Minecraftを動かすことも可能ということなのです!後日こちらについても書いてゆきます)
タイトルの画像はMinecraft内で高い塔を建てるためのプログラムをscratchで書いて実行しているところです。要するに、1つ1つブロックを積んで塔を建てる代わりに「ブロックを〇個積み上げろ」という命令をscratchで行って自動的に塔を建てさせているのです。これは面白い!
初めてScratchを触るというお子さんでも、どういう手順でプログラムを書けば良いのかテキストで説明されているので問題ないと思います。そもそもScratch自体がブロック形式になっている命令をくっつけたり、並べ替えたりしながら組んでゆくタイプの言語なので、
・間違っても直しやすい
・そもそもタイプミスの心配が少ない
というメリットがあります。
塔が出来たら、今度は塔を横に増殖させて壁を作ってみます。ブロックの種類も変更可能なので色々なブロックで作ってみます!きのこで作ってみたら積み上がらず噴水のように弾け飛んでゆきました(笑)。
最終目標はデス・スターのような球体です。これがなかなか手強くて、プログラムも長い。入れ子の式の意味がまだ分かっていなかった(まだ習っていないみたい)ので、そこは親がサポートしました。プログラムは当たり前だけど算数の勉強になりますね。テキストを読解する力は国語の勉強。ゲームを通して楽しく学べるのは嬉しいですね。
そもそも上の子と一緒にプログラミング教育の下準備をゆる〜く始めていたなぁと思い出したので、次回は未就学〜低学年時にやっていたプログラミング関連教育についてまとめてみます!
★今日のサポート
・入れ子の数式について解説しました
・動かないプログラムのデバッグを手伝いました
(ここでつまづきがちなので丁寧にサポート!)
・やりたくない日は無理強いせず。また〇〇できたら見せてね!くらいのお誘いに留めておきます。プログラムはあくまで「楽しいこと」という位置付けに!
★今日の参考サイト
・公式サイト(英語)
https://www.raspberrypi.org/
・公式サイトの和訳(ありがたい!)
http://igarashi-systems.com/sample/translation/raspberry-pi/index.html
・ThinkITさん(ブロックの種類一覧(blockTypeId)あり!)
https://thinkit.co.jp/article/9450
・TimelessEducationさん(Scratch2MCPIのインストールなど)
https://www.timeless-education.com/scratch-programming-on-minecraft-pi-2982.html