Python初心者の人におすすめの本が、株式会社ソーテック出版「Minecraftで楽しく学べる Pythonプログラミング(齋藤大輔さん著)」です。

マイクラ好きの小学校4年生の息子のために・・と購入しましたが、マイクラのブロックで立体を作成するので数学の知識が必要です。(x、y、z)の「座標」が基盤になるので、小学生には難しいです。小学生がPythonを始めるなら、「やさしくはじめるラズベリー・パイ」がおすすめです。

ということで、「Minecraftで楽しく学べる Pythonプログラミング」はこれからPythonを学びたいと思っている中学生以上の方にピッタリな本です。

マイクラ初心者の人はゲームに慣れておこう

PC版マイクラでマイクラの操作に慣れておくことをおすすめします。PC版マイクラの購入・ダウンロードの仕方は、「ひなたんち」さんの記事が分かりやすく紹介してくれています。

※Windows10版のマイクラ(Minecraft for Windows10)が無料でついてくるとりますが、無料プレゼント期間は、2018年19日19時までで終了しています。

PC版マイクラの操作方法は、takatoka.netさんの記事が分かりやすいです。

マインクラフトパイとスクラッチで準備運動しよう

もし手元にラズベリーパイがあるなら、Scratch(スクラッチ)と連携させてビジュアルプログラミングで腕鳴らししておくことをおすすめします。遠回りに見えるかもしれませんが、PC版マイクラからPython初心者がいきなりPythonでマイクラを制御しようとすると難易度がガクンと上がります。※マインクラフトパイでマイクラをプログラミングで制御する基礎を学びましょう。

※マイクラをPythonで制御するmod(拡張データ)の「Raspberry Jam Mod」は、「マインクラフトパイ」がベースになっています。

環境設定をしよう

PC版マイクラでmod(ゲーム改造用の拡張データ)を導入したことが無い人は、少し難しく感じるかもしれません。書籍「Minecraftで楽しく学べる Pythonプログラミング」にも詳しく紹介されていますが、導入するザックリとした手順と、注意点をご紹介します。

WindowsにPythonをインストールする

PythonはMacでもWindowsでも両方インストールできますが、ここではWindowsにインストールする方法を紹介します。Python公式サイトでWindnows向けのPythonインストーラーをダウンロードしましょう。①「Downloads」をクリックして、②「Python3.7.2※」をクリックします。(※執筆時のパイソン最新版)

インストーラーをダウンロードしたら起動して、Pythonをインストールします。①「Add Python 3.7 to path」にチェックを入れてから、②をクリックするとインストールが始まります。

「Add Python 3.7 to path」にチェックを入れないと、後でシステムのプロパティから環境変数の設定をするハメになります;必ずチェックを入れましょう!

「Setup was successful」というメッセージが現れたら、インストール完了です。「Close」をクリックしてウインドウを閉じましょう。

IDLEを起動してみよう

Python用の開発用ソフトウェア「IDLE」を起動します。①「Windowsのスタートメニュー」②「Python3.7」③「IDLE」の順にクリックしましょう。

IDLEが起動します。

Forgeをインストールしよう

modをインストールするには、「Forge」と呼ばれるmodをインストールする必要があります。Forgeはmodをインストール&管理するmodです。Forgeのインストール方法はNJ-CLUCKERさんの記事で分かりやすく紹介されています。

Raspberry Jam Modをインストールしよう

modフォルダが作成できたら、「Raspberry Jam Mod」をPCにインストールします。こちらの2つのファイルをダウンロードしましょう。

ダウンロードした2つのファイルは解凍しておきます。

解凍した「mcpipy」フォルダをForgeのプロファイルを管理しているゲームディレクトリへコピーします。

「modsフォルダ」を開くと、複数の構成ファイルが入っているのでForgeと同じバージョンのファイルをダブルクリックして開きます。

「RaspberryjamMod.jar」のファイルをコピーして、Forgeのプロファイルを管理しているゲームディレクトリにある「mods」フォルダ内に貼り付けます。

「Hello world」を表示させてみよう

Raspberry Jan Modの動作確認をしてみます。キーボードの「t」を押してチャット画面を開き、「/python helloworld.py」と入力してEnterを押します。

「helloworld!」と表示されたら成功です!

マウスで視線を下へ落とすと、下のブロックがダイヤモンド鉱石になっているのが確認できます。

プログラミングの準備

デフォルトでは、マイクラの世界が敵などが出現する「サバイバルモード」になっているので「クリエイティブモード」へ変更します。

①これから作成するマイクラの世界の名前を入力します。②クリエイティブモードに変更します。③オプションをクリック

①はシード値を入力する箇所なので、空欄でOKです。②をそれぞれ

  • Generate Structures: OFF(構造物を生成しない)
  • World Type:  Large Biomes(ワールドタイプを「スーパーフラット」にする)
  • Allow Cheats:  ON(チートを許可する)
  • Bonus Chest:    OFF(ボーナスチェストをオフにする)

と変更したら、③「Create New World」をクリックして新しい世界を作成します。

これでプログラミングする環境が整いました!

マイクラの世界がフラットになり、建造物を作りやすくなりましたね。

複数のブロックを配置しよう

マインクラフトでPythonのプログラムを実行するには、まずIDLEを起動してプログラムを新規作成します。5個の石ブロックを横(x方向)に並べるプログラムです。

プログラムに「set-block.py」と名前を付けて保存します。プログラムの保存するディレクトリを、「mcpipy」フォルダ内にするのがポイントです!

マイクラの画面でキーボードの「T」を押し、チャット画面にします。先ほど作成したプログラム名「/python set-block2.py」します。

「Enter」キーを押すとプログラムが実行されます。

先ほどのプログラムは、下記のように書き換えることも可能です。

for文を使って5つのブロックを配置

繰り返しのfor文を使ったプログラムです。

実行結果は、2の2つのプログラムと同じになります。これは勉強になります。そして、分かりやすい!

階段を作成しよう

for文(繰り返し文)を使って階段を作るプログラムです。

足場の広い階段を作るプログラムです。

ピラミッドを作成しよう

5段のピラミッドを作成するプログラムです。

for文(繰り返し文)を使って51段のピラミッドを作るプログラムです。

水ブロックを氷ブロックに変更しよう

プレイヤーのx座標・Z座標プラス方向20×20の範囲にある水ブロックを、氷ブロックに変更するプログラムです。for文(繰り返し文)とif文(条件式)が使われています。

水ブロックが氷ブロックに変わるので、サクサク歩けますよ!

原木を木材に変更しよう

プレイヤーの位置からx座標10×z座標10の範囲にある原木を木材に変えるプログラムです。(葉っぱは空気ブロックに変換しています)条件が複数あるので、if / elif の条件文を使用します。

豆腐建築してみよう

マイクラでは、立方体の建造物を「豆腐建築」と言います。石ブロックで「幅5×奥行5×高さ5」の立方体を作ったら、「幅3×奥行3×高さ3」の空気ブロックで上書きして中を空洞にしています。

完成した豆腐建築を壊してみると、中が空洞なのが分かります!

豆腐建築に扉を付けよう

豆腐建築に扉を設置するプログラムです。マイクラの扉は、2ブロックの大きさなので、扉を1つ置くのに「setBlock」のコードを2回使う必要があります。

描画プログラムを使ってみよう

こちらは、サンプルの描画プログラムです。JPEG画像をマイクラの羊毛ブロックに変換しています。

プログラムの解説は「Minecraftで楽しく学べる Pythonプログラミング」で紹介されていますが、Python初心者には難しかったです;

デジタル時計を作ろう

こちらもサンプルプログラムを再現したものです。実際に、デジタル時計は現実の時間を表示していて、秒数がカウントされています。

プログラムの一部を変更することで、配置やデザインを変更することができます!

こちらも難しいプログラムでしたが、実際にアレンジ出来ると楽しいものです!

まとめ

書籍「Minecraftで楽しく学べる Pythonプログラミング」は、マイクラ好きな人はもちろん、マイクラ初心者の人でも楽しめる本だなと思いました。序盤は簡単なプログラムなので Python初心者でも簡単に成功体験を味わえます。後半は難しくなりますが、 Pythonの雰囲気を知るには良い本なのではないでしょうか。この本1冊で Pythonをマスターすることは出来ませんが、 Pythonの導入本としておすすめです。