Minecraft PiをPythonで遊ぶ

イントロダクション

Minecraft は今や誰もが知るゲーム(かもしれない

ヒ◯キンとかのYouTuber達によって今までにはなかった小学生の層にも広がった。スマホ版の位置付けのMinecraft PEの影響もあるのだろうけど。

まぁ何だかんだで日本中・世界中に広まったMinecraft 。遊び方はマウスとキーボードによるGUI操作(?)。

Androidでは、「Blocklauncher」というMinecraft PE用のModを適応させるアプリが存在する。

そうAndroid界隈の一部ではコードを書いてMinecraft PEを改造して楽しむという特殊人種が存在する。

が、これは非公式。不安定なところもあったりなかったり。

が、プログラミングを学ぶように用意されたMinecraft のバージョンがある。

それがMinecraft Pi

準備

そもそもMinecraft Piとは何か

Minecraft Pi:Editionとは?:Minecraft Pi Edition

小型デバイス用プロセッサARMで構成された約6ドルのコンピュータ(Raspberry Pi)で動かすために移植されたMinecraftである
Raspberry Piは格安コンピュータという位置づけではなく
Arduinoなど小型プロセッサの拡張テストボードという部類に位置するの一部マニア向けのコンピュータである。

元になったのはPE(ポケットエディション)であり、PEの過去バージョン(Classicのような感じ)を移植したもの
またどのMinecraftの機能にもない{ プログラミング の機能がついている。
プログラミングすることによってブロックを一気においたりなどすることができる
※ARMLinuxのみでしか動作しません。

まとめると、Raspberry Pi用に移植されプログラミング機能のついたMinecraftである。

最新のRaspbianが動いている環境ならメニュー>ゲーム>Minecraft Piで起動できるはず。

で、ワールド生成して普通のMinecraftのように遊ぶことができる(機能はかなり限定的

キーに割り当てられた機能はPCと同じか。Wで進む、Eでインベントリを開いて…リアクタあるやん!!

仮ネザーできんじゃね?ということで

あれ?起動しない

そう。Minecraft Piは標準ではブロック設置がせいぜいなものなのだ。

PythonというPython

Raspberry Piを使ってるとお世話になりまくるPython。

今回もPythonです。

前述通り、Minecraft Piでは標準では仮ネザー動かなかったりTNTが爆破しなかったりと、平和な世界なのでおもしろくない。

今回の目標は仮ネザーの仮を再現すること。

完全な仮ネザーは作りません。

まず、

Minecraft Pi Editionで遊びながらプログラミングの勉強!:解説サイト

<Stuff about=”code” />: Minecraft API:APIまとめ

まず、解説サイトで文字を表示させたりTNT爆破とかめっちゃ置きまくったりして、APIまとめとにらめっこしながらコードを書きます。

で、完成したのが

「P☆O☆Nとできたぜ(えぇ上部は作りませんよ」

完成品:reacter.py(Dropbox)

中身はエディタなどで確認してください。

処理としてはリアクタのブロックの位置を3次元配列でboxという配列に入れてそれと剣で叩かれた時に その叩かれたブロックがリアクタならboxと比較して同じだったらオブジェクト生成。

End of the Nether Spire

仮ネザーまでの時代のMinecraft PEと今のMinecraft PEって重さが全然違うと思う。

仮ネザーまでの時ってワールド有限だったからスイカの苗とかサボテン採るのに重宝したっけな。

このプログラム組む時に苦労したのが3次元配列。初めて3次元配列を考えてみて思ったのは「仮ネザーはどの方向から見ても同じなんだからX,Y,Z軸どこから見ても同じなのかぁ」とプログラムがわりかし簡単に組めるようになってること。

で、ここまで書いてきて辛いのが鼻水と喉。

花粉症で鼻水は蛇口フル開方レベルに垂れてくるし、くしゃみしすぎて喉は痛いし…

死にそう。薬飲んでるのに…。

今回は前回までのハード(激しいの意味ではない)じゃなくてソフトあるいわプログラミングに重点を置いた感じになったか。実際にカメラを起動することなくスクリーンキャプチャで使う画像撮れていつもよりコマンド打ちまくった感じ。(raspi2pngってソフト(?))

では、

今回のまとめ:花粉症はつらひよ。

広告

コメントを残す

以下に詳細を記入するか、アイコンをクリックしてログインしてください。

WordPress.com ロゴ

WordPress.com アカウントを使ってコメントしています。 ログアウト / 変更 )

Twitter 画像

Twitter アカウントを使ってコメントしています。 ログアウト / 変更 )

Facebook の写真

Facebook アカウントを使ってコメントしています。 ログアウト / 変更 )

Google+ フォト

Google+ アカウントを使ってコメントしています。 ログアウト / 変更 )

%s と連携中