Arduboy でゲーム制作 Part 1
今日から、この日記でも丁寧語を使うようにしようと思います。そのほうが何かと成立しやすいかなと思いまして。
今日は家の近くにある(といっても徒歩1時間の距離)の箕面の滝を見に行きました。散歩のつもりがハイキングになってしまいましたが、良い運動になりました。機能まで昼夜逆転になっていたのですが、昼過ぎに寝ようとしたら耐え難い肩こりに襲われ寝付けず、そのまま夜に眠ることになり、結果的に昼夜逆転が治りました。おかげで太陽の出ている時間に活動できるようになって、ゲーム制作や日常生活に力がはいるようになったのですが、肩こりのおかげというのが何とも情けないです。そんなわけで今日は Arduboy でゲームを作ってました。
Arduboy というのは、ゲームボーイのような形をしたカード型の小さなゲーム機です。サイズは小さく、クレジットカードと同じです。買ったときにはゲームが1つインストールされているのですが、このゲーム機はハードウェアの仕様が公開されていて、自分でゲームを作って転送して遊べる、というものなのです。Arduino というハードウェア仕様にディスプレイとボタンをつけたものなので、ハードウェアも自分でパーツを集めて作ることもできたりします。一般的な方法であれば、Arduino IDE で C++ を書いて転送するだけなので、とても扱いやすいです。ゲームボーイアドバンスの ROM を作ってたときに比べたら楽過ぎです。
今日はこの Arduboy でゲーム制作をしてみました。ローグライク(仮)プロジェクトは一旦置いています。
こんな感じで動くものはできました。ゲームにはなっていませんが。最初はドットよけゲームという単純なものを作る予定でシーン遷移などの基礎的な実装を開始したのですが、面白いゲームにしたほうが作る方も楽しいだろうと思って、きちんとしたゲームを作ることにしました。
作りたいゲーム
作りたいゲームはこんな感じです。
操作キャラクタは左から自動的に右に進んでいきます。画面が自動的にキャラクタに追従するので、キャラクタのX座標は固定です。結構スピード感があるゲームになる予定です。操作はジャンプと、他に何かアクションできると良いかもなぁ〜と考えています。
道にはコイン(でも何でも良い何か)が落ちていて、それを取っていくとキャラクタの移動速度が徐々に加速していきます。プレイングがうまいと最終的にはスピードがものすごい物になるので、難易度がプレイングと自動的に調整されるような作りになります。
レベルは自動生成の予定なのですが、作りやすい方法を選択したいので、手作りするかもしれません。スコアはコインを取ったときのスピードなど、速度が高いほどスコアが高くなるようになります。
説明が難しいのでもう少し絵を足してみます。
この絵ではコインではなく「エネルギー玉」を取っていくようにしました。取得するとゲージがどんどん増えていき、満タンになったときに任意のタイミングでスーパーマンのような姿に変身し、何もしなくても超高速で進んでくれるボーナスモードになります。ボーナスが終わると元に戻ります。失敗しそうな難しい場面になったら変身するか、それとも早めに変身して効率よくスコアを貯めるかはプレイヤー次第です。
多分、操作感が気持ちよければ最低限のゲームらしさは達成できていると思うので、Arduboy で感触が良ければパソコン用にも移植しようと思います。C++ で丁寧に作っているので移植は簡単なはずです。PICO-8 だと制限の多い Lua で作らないといけないので、こういった移植は面倒ですね。
今日はエネルギー切れなのでこのへんで。