【Minecraft】UbuntuでMinecraftをPythonとScratch3.0で使う
子供達で遊んでいるマイクラで、プログラミングができるということで、早速設定してみることにした。
基本は、Java版のMonecraftにforge-1.12.2をインストールして、Mod(Raspberry Jam)で動かせばPythonでプログラムしたコードを実行できるというもの。多くの参考になるサイトがあるので、詳細はそちらを参考にインストールした。
特に参考にしたのは、Ubuntu 18.04 で JAVA版 MINECRAFT + Python3というサイト。非常に参考になり、自分の環境にアレンジしながらインストール。
その他の参考サイト
・スクラッチ3.0で始めるマインクラフトのプログラミング
・Minecraftプログラミングをやってみるぞ! Python環境の構築の仕方
その他、たくさんあります!
ただし、ちゃんと動作させるまでに、2点だけ躓いたので、備忘録的にここに記載。
1. Javaのインストール
Java8が必要なのだが、なぜかインストールできず。結局、シンボリックリンクを間違えていたことがわかり。。。無事にJava8とForgeをインストールできた。最初はUbuntuのバージョンが古すぎて、Javaのインストールもできず。。。アップグレードはちゃんとしておくものですね。
Javaのインストールは、こちらで紹介されているように、無理にPPAからインストールしないで公式サイトよりtar.gzをダウンロードして展開し、Pathを通してやります。ここでは、Java SE 8のJREをダウンロードしてインストールしました(ログインが必要です)。
インストール後、どこにJava本体があるか確認しておきます。
$ which java
2. インストールしたJava8の利用
一通りインストールが終わり、起動させると、何故かForge-1.12.2ではクラッシュが連続し起動できない。最新のリリースではちゃんと起動するのに。。。いろいろ調べてみると、PCの性能だとか、ソフトのバグとか色々書かれていたが、ここで問題だったのは、Javaだったらしい。
Minecraftには独自にJavaがインストールされており、通常はこのJavaを使用する設定だが、これではNGでインストールしたJava8だとうまく起動した。(上記の通り、インストールするとOKになった!)
ランチャーの起動構成で起動させるForge1.12.2のプロファイル編集画面に行き、「その他のオプション」から、上で調べたJAVAのパスの設定でJava8を直接指定する。これで、無事にMinecraftが起動した。
3. Modのインストール
Modのインストールは、”スクラッチ3.0で始めるマインクラフトのプログラミング”のとおりに行えば、問題なくできた。Modは、forgeとバージョンを合わせる必要がある。今回は、1.12.2のバージョンを使う必要があった。
こちらから、Raspberry Jam Mod 0.94から、圧縮ファイルのmods.zipをダウンロードして展開。1.12.2フォルダにある「RaspberruJamMod.jar」をホームに作ったゲームフォルダのModフォルダにコピー。これで、動作するはず。
4. 使ってみる。
Minecraftのゲームをするときは、インストールしたModを指定して、シングルプレーヤーでクリエイティブモードで行う。
5. Pythonでプログラミング
細かいことであるが、Minecraftのゲーム画面でチャット画面を呼び出すときは「T」ボタンを押す必要がなく、いきなり「/」でOKだった。
また、Pythonコマンドの入力は、例えば”hello.py”を実行するとき、
/py hello
のように、コマンド入力は「/py」だけでよく、ファイル名の拡張子も不要だった。
さあ、これから、いろいろPythonプログラミングで遊ぼう!
6. Scratchで使う
同じく”スクラッチ3.0で始めるマインクラフトのプログラミング”にあるように、スクラッチ3.0からも制御できる。
基本的に、説明のとおりに行えばできるが、つまづいたのは、ヘルパーのブロックで「無い」を選択した後、ダブルクリックをしてそのブロックを実行すること。これをしないと、マイクラ内で有効にならない。
これで、Pythonからも、スクラッチからもマイクラで遊べるようになった!