なんか世界観ある感じの 2D の Platformer(マリオみたいなアクションゲームのジャンル) は、ゲーム開発者は一度通っておかなきゃいけない気がしていたので最近つくってる。
スマフォ向けにつくっているものだが、キーボードでも動く:
※ D キーを押すと Physics のデバッグ表示を ON にして、楽しい感じになります。
Flash CC を使ってレベルデザインをしてる。Flash 上でマップの絵やコリジョンを置いて、 スクリプトでデータを吐き出してプログラムで読み込んでる。 レベルエディタとか自分で作りたくなっちゃうところを、既存のツールをうまく使って工数削減するのが大人のやり方。 Flash を利用するのは、すでにグラフィカルなツールとしての GUI が完成しているというところに アドバンテージがある。
床や壁との衝突判定は楽をして物理エンジン (Nape Physics) を利用。適当に使うと小さな段差や坂を滑り上がっちゃったりするので、 衝突時の法線ベクトルを見るなどしてごにょごにょ調整している。
ロボットのアニメーションはこれも Flash を使って、 Dragon Bones でボーンアニメーションを作っている。 シンプルなパーツと影絵っぽい見た目で、適当なデザインでも動きが破綻しないようにごまかすのが個人開発者の人情。
ボタンの無いスマフォでアクションゲームを作ることは、何度も諦めかけた。 だが今回、自前の入力インタフェースを作ることでどうにか自分は許容することができた。
文字で説明するのは面倒だから詳しい説明は省くが、このインタフェースは 「そこで指を切り返したのなら、指がどこにあったかに関わらずプレイヤーはキャラを切り返したかったのだろう理論」 に基づいて設計されている。
この入力方式を、僕は Cut-Back Joystick と名付けた。 イカした響きで気に入っている。
昔から作りたいと思っていてタイルベースのものを作りかけたことはあったけど、 ちゃんと完成させたものはまだ無い。そろそろちゃんとしたものを作って、折り合いをつけたい。
それにしてもキャラが地面の上に乗って、横に歩いたりジャンプしたりするだけで何故こんなにも楽しいのか。 ゲームとは素晴らしいものだ。