【RaspberryPi】Minecraft Pi Editionのコントローラーとしてmicro:bitを使えないか考えてみる【中編:PyAutoGUI】

前回の続きのエントリーとなります。今回はコントローラーの部分を作っていこうと思います。 ゲームのアプリケーションとの連携になるので、キーボードやコントローラーなどの操作をpythonから操作するものを 調べて使ってみようと思います。

【参考】

uepon.hatenadiary.com

micro:bitからの操作をBluetoothで受信して、そのデータに従って操作制御を行うという形になります。

Minecraft Pi Editionの操作は、キーボードとマウスの組み合わせのみになるので、これらをpython上から制御できるライブラリが必要になります。

いろいろ探してみると、キーボードとマウスの両方が制御できるメジャーなパッケージであるPyAutoGUIがヒットします。 機能的にRPAに便利そうな制御を使用できることから、書籍などでも紹介されるメジャーなライブラリです。その他の内容も含めて以下の書籍は超おすすめです。

デジタル書籍は以下から

www.oreilly.co.jp

こちらのPyAutoGUIを中心に動作テストをしてみたいと思います。

続きを読む

【RaspberryPi】Minecraft Pi Editionのコントローラーとしてmicro:bitを使えないか考えてみる【前編】

先日、Minecraft Java版Minecraft 統合版(Windows10)を購入したのですが、サバイバルモードではゾンビたちにズタボロにされて1日の命もなかった自分ですが、ようやくポイントがわかってきたので、数日過ごせる(というかほぼ死ななくなった)状況になりました。ただ、クリア(?)まではあまりにも長い道のりになってきたので、そろそろ目線を変えたいなあ(オープンワールド系はあんまり集中力が続かない…)と思い始めました。

uepon.hatenadiary.com

ってことで、折角だしプログラミングできないかなと思うようになりました。できればブロック言語ではなく、テキストベースでできると嬉しい感じです。電子工作的な要素もあるとさらにうれしい。

ネットで検索すると、RaspberryPi版Minecraftmcpi(pythonライブラリ)を使うとプログラミングができるということだったので、それを更に拡張して物理的な動きをMinecraftに持ってこれないかなと思いました。コントローラーに関してはいろいろありますが、子どもたちに自慢したいのでmicro:bitを使うことにします。

個人的には下にあるGameControllerizerの方が楽しいのではないかと思いますがチャレンジの意味を込めて、まずはmicro:bitで試してみようと思います(チャレンジは成功するとはいっていない)。

www.switch-science.com

図にするとこんな感じになるかなと思います。

f:id:ueponx:20200310131222p:plain

このなかで今回行うのは以下の部分になります。

  • micro:bitBluetoothシリアル通信処理作成
  • Minecraft Pi Editionのインストール
  • RaspberryPiBluetoothシリアル通信処理作成(ライブラリインストール含む)
  • micro:bitRaspberryPiBluetoothシリアル通信テスト

ではやってみます!

今回のエントリーは以下を参考にしています。

qiita.com

qiita.com

続きを読む

Minecraftを購入してみた(2020年2月27日現在の話)

最近、地元のCoderDojoにメンターで行くことが多いのですが、そこで終わったあとにMinecraftの発表時間もあって割と面白そうだなと思って見ていたのですが、 わりと面白い機構を作っている子もいれば、建物を作っている子もいてレゴよりも空間的な認識をしていかないと作れないのかもなあ…という認識になりました。 個人的な興味としてはプログラミングからも触ることができる(操作できる)という意味でも触れておいたほうがいいかなという気持ちになりました。

聞くところによるとMinecraftは2つの種類、Java版(PC・MAC版ともいうのですが以降はJava版とします)と統合版(Switch、PS4などもありますが以降は統合版とします)があるそうで、かつ機能的にも少し違いもあるということでどちらを買ったらいいかという相談がCoderDojoでもありました。自分も知らなかったのですが、統合版にはWindows10版というのもあるそうなので、PC版と何が違うのよっていうのが正直なところです。あと、少し前にあったキャンペーンでJava版を購入すると、統合版(?)がもらえる?とかいう噂もききました。

そこで、そろそろ自分もMinecraftを購入して遊んでみようかなと。子どもたちに負けたくないしね(←こっちが本音w)

あくまでも私見を入れた感じで書いていくので、内容が間違っていてもゴメンって感じです。

各バージョンの違い?

簡単にいうとこんな感じらしいです。

単純に遊ぶなら、統合版のほうがいいのかな?

プログラミングを行う方法は…

  • MakeCode for Minecraft
  • Minecraft Hour of Code
  • Scratch(Code Connection、Modなどで連携)
  • python(Raspberry Jam Modの使用)
  • Ruby(Raspberry Jam Modの使用)

などがあるようです。 それぞれ使用できるプラットフォームは、どちらからしか使用できない(Java版統合版それぞれの乗り入れ、プログラミングで使えるもの)などのには制限はあるようです。 普通に素人はこれを聞いた感じでは、どっちを買えばいいかわからない感じ。

f:id:ueponx:20200228182437p:plain

自分が感じた範囲では、PCのない環境だったり、ゲームも楽しみたいというのであれば、統合版がコスト安めで良さそうな感じですが(マルチプレイのサーバー接続料金はあるみたい)、 Modを楽しみたいとか、大規模な作品をつかうのであればJava版がいいのかな?ちなみにJava版はPCスペックを求められるそうです。

キャンペーンってどうなった?

以前はJava版を購入すると、Windows10版がもらえるキャンペーンがあったのですが、それも2018年10月に終了。1年以上経ってますね。 噂ではAmazonダウンロードコード記載のカードを購入すれば、2020/1/20の段階でもWindows10版がもらえるようです。 AmazonのページのQ&Aに書いてありました。

f:id:ueponx:20200227224705p:plain

できれば、両方もっているのが、やることの幅が広がるのでいいのかなと思い、この噂に乗って購入することにしました。 キャンペーンも終わっているので購入時点で必ずしももらえると保証はできません、購入の際は自己責任でお願いします。

購入へ

実際に購入したのは以下になります。

2、3日後ぐらいで手元に来ると思います。内容物としてはコードが書かれた1枚のカードが送られてきます。

f:id:ueponx:20200227225622j:plain

アプリの入手の話

先程のところで購入の話は終わりですが、念の為入手作業も書いていきます。

カードが届いたら、裏面の銀色の部分をコインなどで削りコードがみえるようにします。 そのあと、開発元のMOJANG公式サイトにアクセスし、ユーザーアカウントを作成します。

ページ内の【Register an Account】ボタンをクリックします。

f:id:ueponx:20200229102332p:plain

するとMOJANGアカウント作成の画面になります。入力ボックスに電子メールアドレス、電子メールアドレス再入力、パスワード、生年月日を入力し、【アカウントを作成】ボタンをクリックします。

f:id:ueponx:20200229102504p:plain

あと少しですの画面になります。この時点で先程入力したメールアドレスに認証コードが送られているので、それを確認して【検証コード】の入力ボックスに入力して【認証】ボタンをクリックします。これでユーザーアカウントは登録できました。

f:id:ueponx:20200229102536p:plain

続いて、購入する時間の画面に移ります。プレイヤー名を【名前】の入力ボックスにいれ、支払い方法の下にある【コードを使う】をクリックします。プレイヤー名はマルチプレイ時に他のユーザーからみられるものになります。すると画面上の【コードを使う】が緑色のボタンに変わり、【コード】の入力ボックスが表示されます。

f:id:ueponx:20200229102612p:plain

【コード】の入力ボックスに、購入したカードの裏面にあるコードを入力し【交換する】ボタンをクリックします。

f:id:ueponx:20200229102659p:plain

おめでとうございます!MINECRAFTはあなたのものです。の画面が表示されたら購入が完了しています。あとはダウンロードの作業を行えばJava版が手に入ります。【WINDOWSを獲得するためダウンロードする】ボタンをクリックします。

f:id:ueponx:20200229102750p:plain

完了するとMaincraftのインストーラーがダウンロードされます。

f:id:ueponx:20200227205529p:plain

これをインストールすれば、Java版Maincraftがプレイできるようになります。 今回は、まずWindows10版を入手できるか確かめたいのでこれ以降の作業に関しては別の機会にしたいと思います。

f:id:ueponx:20200229102838p:plain


統合版(Windows10版)を入手する

つづいて、統合版(Windows10版)の入手をします。うまくいくか…?再度、開発元のMOJANG公式サイトにアクセスし、【Log in】ボタンをクリックします。

f:id:ueponx:20200229102938p:plain

Log in to your Mojang Accountの画面でユーザーアカウントで登録した、E-mailとPasswordをそれぞれの入力ボックスにいれて【Log in】ボタンをクリックします。

f:id:ueponx:20200229103009p:plain

ログインされるとMy Gamesの画面が表示されます。ここではこれまでに購入したゲームが一覧として表示されます。先程購入処理を行ったJava版Maincraftが表示されています。 その下にMinecraft for Windows10と項目が表示されています。こちらが出ていたらWindows10版のフリーダウンロードキャンペーンが有効だとわかります。 下にでている【Claim your free copy】をクリックします。

f:id:ueponx:20200229103027p:plain

注意点になりますが、ここまでの作業はゲーム発売元のMojangアカウントでしたが、この作業以降はMicrosoftアカウントでの操作となります。そのため、もう一度サインインが必要になります。異なるメールアドレス、パスワードを使用している場合にはご注意ください。

先程のボタンをクリックするとMicrosoftアカウントサインイン画面が表示されますので、アカウントのメールアドレスを入力して、【次へ】ボタンをクリックし、

f:id:ueponx:20200229103339p:plain

続いてパスワードを入力し、【サインイン】ボタンをクリックします。

f:id:ueponx:20200229103410p:plain

すると、ギフトコードが発行されます。ここでメモして置いたほうがよいですが、後ほどギフトコードはMicrosoftアカウントのメールアドレスに送信されていると思いますので、メモし忘れていても大丈夫です。そのままインストールするのであれば、このギフトコードの入力はしなくて良いようです。では、【Next】ボタンをクリックします。

f:id:ueponx:20200229103508p:plain

Here is what you getの画面で入手が出るようになります。【Contirm(確認)】ボタンをクリックすることで入手の確認を行います。表示言語が英語だったので表示が違う方もいるかと思います。

f:id:ueponx:20200229103530p:plain

You’re good to goの画面で入手の準備が整います。下の方にもMinecraft for Windows10 is ready for youと書かれているので準備ができたことがわかります。 あとはダウンロードサイトにいくことになり、一番下にある【Go to Minecraft for Windows 10】のリンクをクリックします。

f:id:ueponx:20200229103548p:plain

マイクロソフトのストアページにあるMincraft for Windows 10のウインドウが表示されます。ただ、このページには既に入手済になっているプログラムをインストールするような表示がされないこともあるようです(自分はその表示になっていました)。インストールボタンを有効にするために一度【F5キー】を押して画面の再描画を行いましょう。すると…

f:id:ueponx:20200229103718p:plain

先ほどまで【無料試用版】となっていたボタンが、【インストール/プレイ】のボタンに変わります。ここでは【インストール/プレイ】をクリックします。

f:id:ueponx:20200229103840p:plain

更に【インストール】に表示が変更するので、このボタンをクリックします。(ボタンをクリックするとインストールされるので注意してください)

f:id:ueponx:20200229103949p:plain

そのままインストール処理が進みます。

f:id:ueponx:20200227205737p:plain

インストールが完了するとボタンが【プレイ】に変わります。これでインストールは完了しました。

f:id:ueponx:20200227205829p:plain

あとは【プレイ】ボタンをクリックしてMinecraftを起動します。 スプラッシュスクリーンが表示されて

f:id:ueponx:20200229104028p:plain

無事にMinecraftが起動しました。下の画面がWindows10版になります。

f:id:ueponx:20200227205834p:plain

Microsoftアカウントでサインインをしていないと以下のような表示になりますが、

f:id:ueponx:20200227205840p:plain

サインインすれば、以下のような画面になります。表示されている名前はXBoxのユーザーネームになってしまうようです。

f:id:ueponx:20200227205845p:plain

おわりに

結論となりますが、2020年2月27日の段階では統合版(Windows10版)は無事に入手できました!ラッキー!

とはいえこのキャンペーンも終わってかなり経つので、いつ終わってもおかしくはないと思います。まだ、Java版のインストールはできていないので、別途インストールのエントリを書こうかな。

【RaspberryPi】Arduino IDEをインストールする

本当はこれをやりたかったわけではないのだ!

f:id:ueponx:20200227174321p:plain

でもうまく行かなかった…ARMプロセッサーの処理系が近くにこれしかなかったのでこの作業をやってみてまとめました。 本当にやりたかったのはChromebookであるASUS Chromebook Flip C101PAにArduinoIDEをインストールすることでした。 そちらはまた、失敗談としてエントリーを書く予定ではあります。

とりあえずは目的と似たAMR処理系&LinuxであるRaspberryPiへArduino IDEをインストールしてみたいと思います。

続きを読む

愛知県で開発合宿ができるところ(温泉があると嬉しい)の情報メモ

以前、Facebookで以下のような質問をしました。

f:id:ueponx:20200212214358p:plain

愛知県で開発合宿ができるところ(温泉があると嬉しい)で、実際使ったことあるところお聞きしたい。

開発合宿できるというちょっと曖昧な書き方をしたのですが、ファシリティとしては

は必須なのかなと思います。あと温泉があるといいなあというのは希望ですが、開発だけであれば必須ではないかもしれません。

アドバイスを頂きました(ご紹介頂いた方は仮名とさせていただいております)

(Oさん)湯河原

そのあたりまでいくと関東に近いかなと思いますし、わりと体験記みたいな記事もでてきますね。(愛知ではないんですが)

startup-technology.com

gobanchi.com

Wi-Fi、延長コード、電源タップ、ホワイトボードが借りれるみたいですね。ディスプレイのレンタルも可能だとか。 あと足湯もあるし、思った以上によさそう。

(Dさん)それくらいなら、蒲郡あたりにはたくさん温泉付きがありそう。あとは大府の健康の森とか。

愛知県と縛ったのですが、温泉にいくのなら名古屋なら岐阜方面にいくほうがいいのかなと思っていましたが、蒲郡から 西にいってもわりと温泉地があるようです。あまり知られていないこともあるので、シーズンを外せばかなりいけるかもしれませんね。

ちょっと蒲郡 開発合宿でググってみましたがホテル明山荘(愛知県蒲郡市)というところがヒットしました。 Wi-Fi、ホワイトボード、会議室(コンベンションホールらしい)は借りれるみたいですね。

www.meizanso.com

あと、大府にある「あいち健康の森」っていうのもあるみたいですね。ページ見た感じだと企業向けの研修施設っぽい印象です。

www.aichi-kenko-plaza.com

スポーツ施設もあるし、そういうのが好きな方がおおいならありかも。

(Mさん)蟹江ではダメですか?個室なら

近鉄方面はあんまり知識がなかったのですが尾張温泉というのがあるんですね。初耳でした、ありがとうございます。

travel.rakuten.co.jp

travel.rakuten.co.jp

(Tさん)若干条件外れますがコスパよいとこで…

OSC名古屋後にはここで何回か合宿?してます。部屋料金があるので、キャンセルの人数変動を吸収できます。

www.sunpark-inuyama.com

犬山にもありましたか!名古屋市からもそんなに離れていないのでアクセスも良さそうですね。 それにしてもOSCのあとに合宿ってあったのか。

(Oさん)猿投温泉で「DNS温泉」やった実績はあります。

豊田方面に近い方なら割と選択肢としてはありかも。自動車は必須ですね。 ググってみた範囲だとこちらになるのかな?

www.sanageonsen.jp

(Uさん)岐阜だったらソフトピア大垣がありますけれどね。

そうですね。ソフトピアは何度か止まったことありますが宿泊施設に座敷もあるのでいいと思います。難があるとすれば、食事や買い物などがちょっと距離あるかなってぐらいでしょうか。お風呂はシャワーになると思いますので、お風呂に浸かりたい場合には遠征しないとダメかな。

www.softopia.or.jp

(Iさん)かんぽとかメルパルクとか公共の宿はいいですよー

温泉がありそうなところを探してみました。WiFiに関してはちょっと厳しそうだな…

www.ahv.pref.aichi.jp

www.gamagoriso.com

サイトの情報ではあいち健康プラザさんは今年の9月に終了らしいです。かんぽの宿は結構閉鎖していくみたいですね。

(Kさん)開発合宿じゃないですがむかし合宿用に調べた一覧です。

note.com

めちゃ助かる。その中でも興味あったのは「入鹿の里」(犬山)です。

www.irukanosato.com

入鹿池でわかさぎ釣り三昧プラン」は開発合宿でなくても興味あるな。会議室と部屋にもWiFiは完備しているのでいいかも。

(Mさん)名古屋 温泉と言えばここしかありません

クラウンホテルですね。テレビのCMでもたまに見かけます。名古屋駅徒歩20分でつけるのは驚きですが、伏見駅からは徒歩5分です。 会議室としてはちょっとお高めだし、18時までの使用なのでちょっと使用は難しいかな。

www.nagoyacrown.co.jp

(Kさん)明山荘で開発合宿をしたことがあります。興味があれば、2018年7月頃の Misoca の開発者ブログを参照して下さい。

www.meizanso.com

ブログのほうはこちらです。楽しそう。

tech.misoca.jp tech.misoca.jp tech.misoca.jp

おわりに

情報をいただいたみなさまありがとうございます。個人的にもしらべてみたのですが、蒲郡温泉、三谷温泉、西浦温泉、形原温泉あたりがいいのではと思った感じです。ただ、WiFiに関してはあると言っても実用的につかえるのかなど、経験しないとわからないところが多いので情報は嬉しかったです。まあ、自分が開発合宿いくようなタイミングはあんまりなさそうなのですが…。 仲間がいるなら、ゲーム合宿とかもいいなあと思います。

/* -----codeの行番号----- */