Maxwell Gate の裏話

 リリースしたMaxwell Gateですが、こんな簡単なゲームでも紆余曲折がありました。
 その辺りをちょっとお話してみようと思います。


 初めは、左右に赤の部屋、青の部屋を設けて、その真ん中にバーを置いて、
赤の花を赤の部屋に、青の部屋に青の花を仕分けすると言うゲームを考えていました。

 こんな感じです。


 タイマーを設けて、一定時間経つまでにどれくらい仕分けできるか、というゲーム。
 でも、一度仕分けしたものも、飛び出してくる。
 このあたり、ストレスになるんじゃないか、と気がついて、
今の「ゴール」に入ったら消える、という形に変えました。


 その次のゲーム性の修正は、「バーでの反射」。
 初めは単に反射するだけで、プレイヤーのテクニックがありませんでした。


 そのままでも、面白いと言えば面白かったのですが、今一つだな〜と。
 それで、ブロック崩しのように、当たる位置で反射角を変えるか、と思いつき、
ブロック崩しと同じも面白くないので、当たった位置で細かく角度が変わるようにしてみたのでした。


 花の速度が変わらないように、xyの速度を、角度とスカラーに変換して、
当たったバーの位置で角度を決定、スカラーとその角度から、xy速度に再変換して動かす、
という仕組みです。


 三角関数がなんとなく判ればできる簡単なお仕事。


 20年前はsin,cosをその場で計算するなどCPUパワーの無駄でしたが、
今は普通に使ってなんの問題もありません。
 良い世の中です。


 反射角をプレイヤーがコントロールできるようになったので、
狙ってチェインさせることが出来るようになりました。
 チェインすると得点も増えていくようにして、
上手くなると高得点が狙いやすくなるようにしていったりと。


 それでも、同時に2つの花がNGな位置に落下する事があり、
レベルアップするとライフが増えるようにしたり。
(初めは3つ固定でした。激ムズでした)

 チェインでの高得点、レベルアップでのライフの追加、
これも画面で明示するようにしたり。


 3Gでも動くように調整して、描画量をへらすために、
文字はスプライトのフォントを並べて作っていたのを、
固定の所はひとまとめのスプライトにしたりとか、最適化を図ったり。


 こんなふうにブラッシュアップして、作っていったのでした。


 ちなみに、一人開発で小規模ですから、仕様書は書いてませんです。