マインクラフトJava版とPythonプログラムを連携して、建築の自動化やプレーヤの自動操作をおこないます。
プログラミング教育を意識した内容を心がけ、ソースコードの公開とコードの説明を丁寧に実施。
Pythonのバージョンは 3.7.1を使用しています。
マイクラサーバのマルチプレイで気をつけてほしいこと
コーダー道場西原で開催するマインクラフトのマルチプレイにおいて、保護者と子供のみなさんに理解してほしい点や注意事項などを記載しています。マルチプレイのワールドは現実世界と同じで、人の嫌がることをせず、みんなで楽しく過ごしてゆきましょう!
ランダムな数値を取得してブロックを建築する マイクラ&Python
ランダムな数値を取得し、その値を利用していろんな方向にブロックを自動建築するプログラムを紹介します。ただランダムで滅茶苦茶にブロックを設置するのはあまり面白くないので、今回は空を自由に泳ぐヘビのような物体を作ってみましょう。ランダムな数値を取得するランダムとはくじ引きのようなもので、何が出てくるのかが分からないという物です。このランダムの特性を利用して、もし0が出たら東方向にもし1が出たら上方向にもし2が出たら南方向にそれぞれブロックを建築してゆくというプログラムを、繰り返し...
マインクラフトをプログラミング言語のPythonで操作する記事まとめ
マインクラフトをPythonで操作する最近はプログラミング言語のPythonでマイクラを操作する遊びにハマっています。プレーヤを自動で動かしたり、自動でブロックを積んで建築したりと色々楽しんでいるのですが、これがプログラマとしての本業に生かされていないのが悩みどころ…。メンターの1人として参加しているコーダー道場西原でもいつかはマイクラのPythonプログラムをやってみたいなと考えていますが、はたして子供たちはPythonに興味を持ってくれるだろうか…。2019年12月からマ...
数秒おきに一時停止して命令を実行する マイクラ&Python
今まで紹介してきたマインクラフトのPythonプログラムでは、コマンドを実行するとモノが一瞬で自動建築されました。これはこれで不自由ないのですが、ブロックが建築されてゆく過程もゆっくり見てみたいものですよね。そんな時に利用できるのが、Pythonプログラムの sleep という命令です。sleep は指定された秒数だけ処理を一時停止し、指定時間が経過すると続きの処理が開始されるというもので、コマ送りのように自動建築される過程を見ることができます。プログラムを sleep で一...
コマンド実行時のパラメータが正しいかを確認する方法 マイクラ&Python
Pythonプログラムをマインクラフトのチャット入力エリアから実行する際に、もしパラメータの入力不足が発生した場合にチャットメッセージで親切なエラーメッセージを表示するプログラムを解説します。エラー処理やif文による動きの切り分けについては前回の記事で紹介していますので、まだ見ていない方はこちらからご覧ください。パラメータの1つ1つが正しいかを確認今回のプログラムは、前回同様に3個のパラメータを指定してコマンドを実行します。そして、3個それぞれのパラメータに指定モレがないか、...
コマンド実行時のパラメータエラーの処理とifによる条件分岐の方法 マイクラ&Python
マインクラフトのPythonプログラムで、もしコマンドを実行したときにエラーが発生したら、システムが自動的にメッセージを吐き出します。こんな感じで。 TraceBack (most recent call last): File “road2.py”, line 20, in <module> length_number = params IndexError: list index out of rangeでもシステムのメッセージは英語や呪文みたいに難しい内容な...
プログラム実行時のエラーを回避する方法 マインクラフト&Python
前回、前々回の記事では、Pythonプログラムにパラメータを与えて実行する方法を解説しました。しかし、もしパラメータを与えずに実行、または数字であるべきパラメータを文字にして実行した場合は、チャットエリアにエラーメッセージが表示されていましたよね。こんなエラーが出ていたはずです。 TraceBack (most recent call last): File “road2.py”, line 20, in <module> length_number = para...
プログラム実行時に複数の値を与える方法 マインクラフト&Python
前回の記事では、道を建設するプログラムを実行する際に数字を与えて、道の長さを指定する方法を紹介しました。プログラムに与える値のことを「パラメータ」と呼びましたよね。今回はプログラムに対して複数のパラメータを与えて実行する方法を紹介します。プログラムに複数の値を与える方法前回は1個のパラメータを与える際に、実行するファイル名の後ろに数字を付与していました。この方法を応用し、今回は3個の値を与えてコマンドを実行してみましょう。/py road2 10 3 80このコマンドの意味は...
プログラム実行時に値を与えて、色々な長さの道を作る方法 マインクラフト&Python
マイクラのPythonプログラムは、基本的にはプログラムファイルの中に書かれた命令のとおりにしか実行しません。決められた時に、決められた場所に、決められたブロックの種類を、決められた個数だけ配置する。という事を、今までのマイクラPythonプログラム紹介記事でお伝えしてきました。しかし今回は、実行する時のあなたの気分によって、ブロックの個数を簡単に変えられるプログラムを紹介します。このプログラムを応用すれば、気分によってブロックの種類だって簡単に変えられるよう改造することもで...
繰り返し命令 for を使った階段づくりの解説 マインクラフト&Python
同じ命令を繰り返し何度も実行する場合、Python の for という繰り返し命令のプログラムを使うと便利です。たとえば階段を作るプログラムは、1段ずつ何度も床ブロックを作るプログラムが繰り返されますよね。そんな時に便利な、繰り返し命令の for をつかって、階段を作るマイクラPythonプログラミングについての解説をしてゆきましょう。この記事では、繰り返し命令を「使わない場合」と「使った場合」の2パターンのプログラムの書き方を紹介していますので、マインクラフトの世界に階段を...