ドラスピ大反省会(1)

数回にわたってドラスティースピアの開発について書こうと思います。

毎度のことですが開発期間が足りていません。
特に今回は当初4週間で作ろうと計画したものの、色々あり2週間程度しか捻出できず、かなり荒削りな内容となっています。

さて、足りない期間をなんとかするために取る手段ですが、いつも通り

  • 割り切る
  • Asset Storeを活用する
  • 過去のものを使う

です。

『割り切る』のは非常に難しい問題で、作る側のポリシーが一番影響するところでもあると思います。アオダマテイはどちらかと言えばリリースを優先しているので、必要なら心を鬼にしてバッサバッサと仕様を切り捨てています(本当に必要な仕様だったらちゃんと後から追加しますし)

Asset StoreのAssetには今回もお世話になっています。
例えばざっと表示に関係しそうなところだけでもこんな感じです。

※使用したAssetについては個別に書いていく予定です。

『過去のもの』を使うは、ソースコードや各種リソースだったりします。せっかく作ったものは大いに活用しましょう。今回は過去作品からの効果音の流用が多いです。ざっとわかる範囲で

  • タイトルのスタート→PanzerStrikeのスタート音
  • アイテムゲット→DustShootersのゴミ回収音
  • ロックオン→DustShootersのロックオン音
  • ローリング時MP不足→DustShootersのバッテリー不足音

です。
なお時間がないときに書くソースコードはクソコードが多くなるので再利用は期待できないものが多いです…
(ソースコードは残りませんが、実装ノウハウは蓄積されています)

次回はゲームシステムについてです。

ドラスティースピア -PILOT EDITION-を公開しました

以下からC92で頒布したものと同じ「ドラスティースピア -PILOT EDITION-」がダウンロードできます。

ドラスティースピア(PE)

まだ「ドラゴン」+「レールシューティング」+「攻守交代によるボス戦」だとこんな感じのゲームになるかなーぐらいの内容です。今後はこれを土台に内容を詰めていこうと思っていますが、これ以上未完のタイトルが増えていくのもどうかと思ったりも…

とりあえず近いうちにドラスティースピアも恒例の開発裏話的なものを書いていく予定です。

ドラスティースピア -PILOT EDTION- マスターアップ

C92新作の「ドラスティースピア -PILOT EDTION-」です。

新しく作ったので新作ではあるんですが、まだまだ未完成な部分がかなりあるため、あくまで『こんな感じのゲームに仕上げていこうかなー』的な内容です。

そして今まさにDVDが焼き終わりました!

PVも一応出来たんですが、諸事情で曲はありませんー

後は「スウィンぐるん」と「がんばれーる」をまとめたパッケージも用意しました。

今回もEasyGameStationさんのところで委託販売して頂きます~

迫撃砲の攻略

ステージ4から登場する「迫撃砲」を撃破するのが難しいという意見を頂いたので、攻略の参考になりそうな情報を書いてみました。

まず迫撃砲についての基本情報です。

  • プレイヤー戦車に向けて爆弾を発射する
  • 爆弾は着弾時に爆発し周囲にダメージを与える
  • 爆弾発射前に着弾予想位置が出る
  • プレイヤー戦車の弾に反応して高速移動(回避運動)する
  • 回避運動以外の移動はしない
  • シールドは使わない
  • キャラの顔がほとんど見えないw

ダメージ大きい爆弾を発射+高速で逃げ回る厄介な相手です。
特に回避運動はあっという間に遠くに移動することもあり、なかなか捕捉できなかったりします(一応車体がUFOなのであんな動きになっています)

しかし敵味方の配置に関係なく爆弾を発射するので使い方次第では敵戦車の撃破に大きく貢献してくれますw

以下、具体的な攻略のヒントです。

攻略ヒントその1「青シールドは爆発を完全に防ぐことができる」

エネルギー残量が50%以上の時に使える青シールドは爆発によるダメージを100%無効にできるので、着弾予想位置(赤色の円)から脱出できないと思ったらシールド使いましょう。ただ、エネルギー残量が少なく黄シールドの場合は爆発のダメージは全く防げないので注意です。迫撃砲と戦う前にエネルギーを回復させておくのもいいと思います。

攻略ヒントその2「ロックオンを積極的に使う」

迫撃砲はこちらの攻撃を回避しようと高速移動するため、高速で逃げる迫撃砲を追いながら弾を命中させる必要があります。
この時、なかなか弾を当てられない場合は迫撃砲をロックオンして攻撃が楽になります。
※ロックオンは弾の命中を100%保証するものではありません

敵を補足しているとき(敵の上に赤色の四角が表示されている)に左CTRLキーを押すとロックオン状態となり、キーの押下中は砲塔はロック中の敵を自動追尾します。ロックオン中に表示される青矢印は本体正面になります。

攻略ヒントその3「無駄弾を撃たない」

迫撃砲はプレイヤー戦車の弾に反応して高速移動するので、弾の発射は計画的に行いましょう。ガトリングや連装砲のように弾速が速い弾でエネルギー残量が豊富なら無駄弾含めた力押しも可能だったりします。

攻略ヒントその4「敵の移動先を予測する」

迫撃砲の高速移動は「できるだけ広いスペースに移動する」という特性があります。そのため、ある程度移動先を予測することが可能です。
ただ、広いところに逃げられると弾を当てるのが難しくなるので、できれば狭いところで一気に撃破するまで弾を当て続けるのが理想だと思います。

攻略ヒントその5「自滅させる」

迫撃砲はシールドが使えず、こちらが弾を撃たなければ移動しない特性を利用して、「迫撃砲に隣接+弾を撃たせて爆発に巻き込む+自分は青シールドで無傷」
ということができますw

以上の攻略ヒントその1~5を駆使すれば迫撃砲の撃破は楽になるかと思います。

 

がんばれーるで使用しているAssetについて

がんばれーるで使用しているAssetについてになります。
ホント、毎回Assetには助けられています。

過去に何度か紹介している普段から使っているAssetは

になります。
どのAssetも有名どころだと思うのであえて説明する必要はないかなと。

描画関係で使っているAssetはキャラクタとタンクの描画に Toony Colors Pro、背景の一部に UNOShader UNLIT w/TOON support を使っています。
両シェーダーともかなり高機能かつ便利なんですが、ワークフローや仕様上の問題でおそらく次は自作シェーダーになると思います。

爆発等のパーティクルは Sci-Fi EffectsWarFX、Skyboxは First Fantasy for Mobile のものを使っています。
Sci-Fi Effectsは爆発系以外にもレーザーや炎、ホログラフと色々なエフェクトが入っていたり、ターレットエディタで好きな砲台が作れたりとAsset単体でも結構楽しめます。
また非常に助かるのはエフェクトにあわせた効果音も入っているところですね。エフェクトにあった効果音探すのも結構時間かかるんです…

ステージ開始時のカメラ動きは Pegasus を使いました。DustShootersで使っている Camera Path Animator でもよかったんですが、たまには別のAssetを使ってみたかったので。次は無償になった Cine.Machine Base Rig も使ってみたい思っています。

version 1.01から追加したボイスは Voice Pack Vol.1vol.2 です。
やはりボイスがあるとないとでは全然違いますね。

以上、かなりざっくりですががんばれーるで使っているAssetの紹介でした。

がんばれーる1stの v1.01 アップデータを公開しました

がんばれーる1stの v1.01 アップデータを公開しました。
ダウンロード

  • アップデート方法

ダウンロードしたgb1st_v1.01_Update.exeを実行してください。
このような画面になるので、ダイアログに従ってアップデートを行ってください。

1点だけ注意点ですが、参照先を選択するダイアログのところでがんばれーるのインストールフォルダを選択するところがあるので、環境に合わせて変更してください。

アップデートの内容ですが、環境設定の機能強化が主になります。

  • 環境設定で各種ポストエフェクトのON/OFFを行えるようにしました

ポストエフェクトの「Antialiasing」「Ambient Occlusion」「Bloom」を個別にON/OFFできるようになりました。ポストエフェクトを全て無効にすると描画パフォーマンスはかなり変わりますので、実行環境に合わせて設定してみてください

ポストエフェクトを全てONにしたときと、全てOFFにした場合、見た目はこれぐらい変わります

個別に組み合わせた感じだとこんな感じです

「Ambient Occlusion」を有効にするとキャラの顔が怖く(?)なりますが、背景の見た目はよくなります

ちなみにポストエフェクトは画面全体にかかるので、Ambient Occlusionをキャラの顔だけOFF、背景だけONというのは標準ではできません。
(今作っているシェーダーはステンシルバッファを使って任意のマテリアルだけAmbient Occlusionをかけないように出来ます)

Bloomはキャラの見た目よりゲーム中のエフェクトに影響がでます

  • ボイスを追加しました

賑やかしのボイスを追加しました。
それに伴い、音量調整の部分にボイスが追加され、再生テストボタンを追加しました。
いずれボイスも何パターンか用意してカスタマイズ項目に追加したいですね。

  • ゲームパッドのスティック入力をデジタル値として扱うオプションを追加しました

ゲームパッド+ラジコン操作だとスティックの構造上アクセル100%右旋回100%のような操作が行えませんので、閾値を設けてスティックの入力をデジタル的に扱うように出来ます。
ただ、操作がピーキーになるのでゲームパッド時はラジコン操作ではなく「方向キーの入力方向に移動」を選んだ方がいいと思います。

  • タイトル画面のメニュー項目をマウスで選択できるようにしました

地味な改良ですが、タイトル画面のメニューの選択だけマウス対応しました。

以上、version 1.01 の更新内容についてです。

最後に、アップデータにはPatchWise Freeを使わせて頂きました。
(自前のaoUpdaterを入れてもよかったんですが、ノートンなどのセキュリティソフトに削除されるトラブル対応が面倒で…)

がんばれーるのゲーム本体について

がんばれーるのゲーム本体についてです。

実はがんばれーるの元になるゲームは10月に既に作っていました。
これがいわゆるプロトタイプになります。

このゲームは

  • DustShootersの主人公の制御方法の見直し(CharacterController+Rigidbody的なものにしたい)
  • NavMeshの応用研究(DustShootersのボスの移動がNavMeshなので)

を主目的とし、さらに個人的に不定期で実施している

  • 瞬発力を鍛えるために24時間で1本ゲームを作る

という「一人ハッカソン」的なもので誕生しました。
このゲームにキャラカスタマイズ機能を追加したのが「がんばれーる1st」になります。

ただ、ゲームロジック部分の思想が異なっていて、プロトタイプはシューティングゲーム的な自機と敵の組み合わせに対し、がんばれーるは自機も敵も「タンク+キャラ」という部分を共通化し、プレイヤーが操作する自機に相当するタンクにはユーザー操作を許可するコンポーネントを追加することでキー操作を行っています。

そのため、がんばれーるの内部ロジック的にはCPUs vs CPUsのような自動バトルロイヤルが可能だったりします。

一応プロトタイプの流れでシューティングゲームとして作りましたが、もしかしたら次は(がんばれーる2nd?)シミュレーションゲームになる可能性もあったりなかったり…

次回は使ったAssetについてです。