シューティング自機武装の自動生成

自動生成 (id:ABA:20091114#p1)と自機武装 (id:ABA:20091204#p1)についてまとめたので、次は当然自機武装自動生成についてです。ちょっと前にTwitterでシューティングの自機武装自動生成についてつぶやいた内容と、それに反応してくれた心優しきシューターの方々のつぶやき内容をまとめてみる。

まず自動生成方式としては、自機武装のバリエーションをいくつかのパラメタに分解し、それらパラメタを適当に組み合わせる、という方式にする。まえに弾幕で考えたパターン (id:ABA:20081127#p1)と同じ。

もちろん組み合わせた結果、ぼくの考えた最終最強トンデモ武装です、みたいのができる可能性は非常に高いのだが、そういったトンデモ武装をフィルタリングすることは後で考えることとして、まずは十分なバリエーションが生成可能か、というところから考える。

なのでまずやることは自機武装を構成するパラメタの抽出だ。

弾丸の基本パラメタ

まず弾丸単発の基本パラメタ。

  • スピード
  • 威力
  • 形状
  • サイズ
  • 射程

弾源のパラメタ

次は弾丸をどこからどのように発射するかというパラメタ。

  • 位置

射出位置は普通は自機と同じ場所だけど、自機からちょっと離れた場所、たとえば翼の両端とかから射出される武装もある。自機の移動に追随するオプション型や、設置型などもある。

  • 方向

自機前方だったり3-Wayだったり。時間で方向が変化したり、自機の移動方向に依存して変化する場合もある。

  • 射出間隔

連射速度でもある。間隔は一定なのが普通だが、一定時間連続して発射されその後一定時間休むなど、特定の射出パターンに従う場合もある。

弾丸の射出後の挙動

多くの弾丸はそのまま直進するだけだが、そうではない特殊兵装もある。

  • ホーミング

敵を狙って曲がる弾丸。曲がり方はゆるやかな曲線だったり、直角だったりといろいろ。

  • ワインダー

自機の移動に沿っていっしょに弾丸も移動するもの。レーザー系武装だとあたりまえの挙動。

  • ロック、吸着

射出後特定の敵に張り付く。サラリーマンレーザーやタツジンサンダーレーザーなど。

  • ブーメラン

射出後自機方向に戻ってくる。

  • 弾丸サイズ変化

射出後徐々に弾丸のサイズが大きくなったり小さくなったりする。炎系武器など。

敵や地形接触時の挙動

敵や地形に触れたら消える、というのが基本挙動で、それ以外のバリエーション。

  • 貫通

敵や地形を貫通する。レーザーやウェーブなど。

  • 爆発

その場で爆発して継続的にダメージを与え続ける。

  • 反射

リフレクト系武装。普通は背景に当たったときに反射する。敵に当たって反射する武装はまれ。

  • 炸裂

当たった後に複数の弾丸に分かれる。これもまれだが、ダーウィンのSHARRUなどがある。

  • 追従

地形に沿って進む。敵の表面に沿って進む武装はさすがに見たことがない。

射出前の自機行動

弾丸が発射される前の自機の行動が攻撃方法に影響を与えるものもある。

  • 溜め

R-TYPE波動砲に代表される溜め武装。溜めた時間で威力が変わるのが普通。溜めモーションに攻撃判定があるものもある。

  • ロック

照準を使い敵をロック、その後発射された弾丸はロックした敵を狙う。R-GRAY2のように発射後追加ロック可能なものもある。

とまあここまでいろんなパラメタや要素に分解したので、あとはこれらを適当に組み合わせて新たな武装を作ればよい、ということなのだが、問題は本当にこいつらを組み合わせてまともな武装になるのか、というところだ。弾丸や弾源のパラメタはともかく、それ以外の弾丸属性みたいなものは、それぞれ個別では成り立っているが、組み合わせたところでまともな武装にならない可能性や、そもそも組み合わせ方がよく分からんパターンもありそうだ。ちょっと実験してみないと分からんかもね。