WioTerminalのデフォルトゲームの主人公を強くしたら遊びやすくなりました。

先月末にWioTerminalを買いました。

大きめの液晶がついてて、WiFi/Bluetoothがついてて、センサーがたくさんついてて、RaspberryPiと同じぐらいピンが出ていて、SDカードやマイク・スピーカーがついてる、Arduino開発環境下では現時点で最強のデバイスではないでしょうか。

まだどうやって活用するかは全く考えていませんでしたが、とりあえず購入してみました。

 

目次

 

WioTerminalのデフォルトソフト

このすばらしいWioTerminalを購入して電源を入れると、デフォルトでゲームが入っています。WioTerminalみたいな主人公が、抵抗みたいな障害物を飛び越え、敵を撃ち倒しながら進んでいくゲームです。

このデフォルトゲームが容赦なく難しい!

 

f:id:mnishikawa:20200614181729j:plain

WioTerminalくん(?)が弱すぎてつらい

障害物の抵抗にちょっとでもかすっただけでゲームオーバーです。

せっかく買ったWioTerminalを窓から投げ捨ててしまう人がいるんじゃないかと思うぐらいの難易度です。

 

今回、WioTerminalの導入のためのお勉強と、このストレスを解消すべく、ゲームを改造してみました。

 

こんなふうに動きます

デフォルトゲームの鬼畜っぷりと、改造後のゲームの爽快さを知ってもらうために動画を用意しました。


WioTerminalのデフォルトゲームの主人公を強くしたら遊びやすくなりました。

 

開発環境の整備(ubuntu18.04)

公式wikiに従い、AruduinoSDKを設定します。

wiki.seeedstudio.com

 

ubuntuの場合、WioTerminalとPCを接続したら、USBシリアルデバイス(/dev/ttyAM0等)のパーミッションが読み書きできるように設定しておきましょう。

 

スケッチの読み込み

Seedさんが公開しているサンプルスケッチに、このゲームがあります。

スケッチ名は「jump」です。

githubでMITライセンスで公開されています。

github.com

 

このスケッチはSDカードなどを参照しており、ビルドするには次の3つのライブラリをArduinoSDKに読み込む必要がありました。(SDカードからキャラクタのビットマップを読み込んだりできるようです。試してませんが。)

 

この3つのライブラリを、ZIPファイルでダウンロードしておき、ArduinoSDKのライブラリをZIPで読み込むようにしていください。

ubuntu環境だとこんなメニューから読み込めます。

f:id:mnishikawa:20200614183729j:plain

Arduinoライブラリの読み込み

ライブラリを読み込んだらビルドして、WioTerminalに焼き込みます。

デフォルトだと、あの激ムズのゲームが動きます。

 

WioTerminalくん(?)を強くする

一発で死ぬのはつらすぎるので、当たり判定何回か分は助かるように改造しました。

もともとのソースコードにあるゲームオーバー判定部分はこちらです。

if (collide_mask & pix_type_actor)
{
      flag = game::over;
}

ここにlifeパラメータを追加して、10回の当たり判定以内であればゲームを続行するように改造しました。

改造後のソースコードは、こちらで公開しています。

github.com

最初から改造版で遊んでみたい方は、上記手順をこのソースコードでビルドしていただけると動かせます。こちらのソースコードは、今後、改造していくかもしれないので、この記事から動きが変わってたらごめんなさい。

 

 

まとめと今後

だいぶ楽しめるようになったので、追加したLIFEゲージの追加とかやってみたいと思います。また、そのうちオリジナルのゲームも作ってみます。

 

 

参考にしたサイト・WioTerminal情報

参考にしたサイト等。

 

www.switch-science.com

 

wiki.seeedstudio.com

 

karaage.hatenadiary.jp