アクションゲームツクールMV•トップビューサンプルゲームでつまづいた場所
DLsiteのセールで死ぬほど安かったアクツクMVを始めてみた。チュートリアルを終わらせたあと、トップビューシューターが作りたかったのでサンプルゲームの改造に入った。
とりあえず初日はこんな感じのものができた。
色々手当たり次第いじくり回してみたので、その奮闘の歴史を備忘録代わりに残しておこうと思う。
トップビューシューターのサンプルゲームをイジろうとしたけど挫折したよって人は参考にしてみて。(そんな人いるのか?)
1.一旦訳わからなくて泣いてみる
トップビューシューターのサンプルゲームはPvP対戦ができるようになっており、実際スゴい。
だがそのPvPのための仕掛けによりゲームの構造が結構複雑になっていて、最初はサンプルゲームをそのまま弄ることすらままならない。
とりあえずテストプレイを起動してみると、【P1】みたいな謎の入れ物がプレイヤーキャラクターを召喚しているらしいことが分かる。
そこでplayer1のオブジェクトを参照してみるが、なるほど分からん。
察するに、player1_nullとかいう空箱がプレイヤーの入力を受けてキャラクターの移動を受け持ち、その周りにplayerキャラクターのスキン的なガワがはりついているっぽい。
同様に銃の発射は発射口が受け持ち、近接攻撃は銃そのものが受け持ってるっぽい。
弾の行く末はプレイヤーオブジェクトが召喚した照準を参照して決めているらしい。
2.とりあえず入力を整備してみる
テストプレイしてみると分かるが、このサンプルゲームはゲームパッドにしか対応しておらず、キーボード+マウスでやろうとすると訳分からんことになる。
ググってみると、キーコンフィグ系はプロジェクト全体の設定から弄れるらしい。
早速イジり、ついでにゲームパッド右スティックの代わりにマウスの動きで上下左右を操作できるようにしてみた。
次にゲームオブジェクトの移動の欄を弄ってみて、照準がマウスに追従するよう設定を変更する。
マウスでエイムができるようになり、はしゃぐ。
あと、マルチプレイ関係の設定もプロジェクト全体の設定から弄れるらしい。PvP用のキー設定が生きていると入力がプレイヤー2に吸われてプレイヤー1が動けなくなる、みたいな気がしたので1人用ゲームに設定しなおしておいた。
3.弾切れ+リロードの概念を追加
サンプルそのままだと無限に撃てて味気ないので、なんかデフォルトでついてた残弾の変数を使って弾切れの概念を追加。
この辺はコード不要のフローチャート形式なおかげでバチクソ簡単に実装できた。
あとはデフォルトでついてた近接攻撃のモーションがリロードっぽく見えたので、そのままリロードに流用。効果音をつけたらそれっぽくなり、はしゃぐ。
ついでに体力バーと残弾数表示のUIを追加。これはチュートリアルで教えてくれたのでスムーズにできた。
リロード中にも弾撃てちゃうのをスイッチで対処して、弾が一定時間で消えるように設定して射程限界も実装。
このへんは想像以上に直感的にサクサク実装できてツールの力を感じた。
4.敵を追加
敵の作り方はチュートリアルでやったが、どうせならプレイヤーと同じメカニズムで動く敵を作ってみたいと思い立つ。
敵の照準もプレイヤーと同じように動くようにしたかったが、照準の可動範囲がどういうメカニズムで動いているのか分からず、雰囲気で誤魔化す。
結局、照準がプレイヤーに近づくように移動し続けるという処理になった。
照準の向いてる方に勝手に銃が向き、銃口の向いてる方向に弾が飛ぶと言う処理はプレイヤーと同じ。
あとは敵の動きだけそれっぽくなればいい感じになりそうなものなのだが、何かぎこちない動きになる。
チュートリアルではテンプレート移動を使うよう勧められていたが、下の壁に張り付いたまま地を這うような動きしかしない。
まるで重力に縛られているかのようなこの動きを解決する方法はついぞ見つからなんだ。
(重力の影響を受けないにはチェックつけてるんだけどなあ)
とりあえず、上下方向の移動速度を5まで上げてみたら地を這うことはなくなったが、4.5あたりを下回ると途端に重力の井戸に縛り付けられるような挙動をするようになる。
やっぱりサイドビューがメインのツールだからトップビューの移動に支障が出てるのか、それとも私の設定がおかしいのか。
とりあえず初日ということで上下移動だけめっちゃ素早い敵ということで落ち着かせることとした。
5.諦めたこと
とりあえず前述した敵の動きが重力の井戸に捕まる問題については別プロジェクトでもう一度練習してみたいと思う。
また、敵味方の2人を常に画面内に収めるようにカメラをスクロールする機能をつけたかったが、今日のところは諦めることとした。
というか元々のサンプルゲームはプレイヤー1と2の両方が画面内に入るようになっていたのだが、1人用ゲームに設定を変更した煽りでその機能が修復不能になってしまった。
一応、シーンのその他みたいな項目からカメラ設定の画面があったが、追従オブジェクトに敵を指定しても追ってくれない。
まあカメラについては全く弄り方も仕様も分かってないので、これから追い追い調べていこうと思う。
まとめ
アクションゲームツクールMV、まさか初日からここまで色々弄れるとは思っていなかった。
かなり楽しめたので、今回いじった改造サンプルゲームを元に、トップビューシューターの完成品を1作品作ってみたいと思っている。
数体のボスに好きな順で挑んで1vs1で戦う感じのゲームを構想中。
夢が広がるね。