Project Anthem(TCストライカーズ)

ぷろじぇくとあんせむ公式サイトであり雑記ブログ。当サイトはリンクフリーです。

TCストライカーズ3
ストーリー ボス紹介 ザコ紹介 システム BGM 攻略動画 

TCストライカーズ3
ストーリー ボス紹介 ザコ紹介 システム BGM 攻略動画 







TCストライカーズ3
ストーリー ボス紹介 ザコ紹介 システム BGM 攻略動画 



「前髪を切りすぎたわ。これじゃあパッツンでぶじゃないの。」
「パッツンでぶだわ〜。」
「後者をやめたらいいんじゃないですか?」
「どっちも気に入ってるのよ。」
「……………」
「ところで昨日の件どうなりました?」
「まあ、調べに行ったほうがよさそうね。」
 

”(スマホ音声)〇〇島で火山の噴火の兆候が見られます。”
「ここって確か…」
   LuLuLuLuLu(着信音)
”お忙しいところすいません。私〇〇開発の者です。”
「もしかして、火山の件ですか?」
”ええ、そうです。あの島は過去数百年の間、平穏だったんです。それがなぜ今になって…”
「私も想定外です。大昔には噴火した形跡があったらしいのですが、誰しもがかもう噴火し
ないものと思っていました。現地に赴いて状況を観て来ましょうか?」
”お願いします。私共としても様子を見るつもりです。損失は避けられませんが・・・”
 

「あんたどうする?」
「行きます!」
「テクノさんが細い道に挟まった時に備えてホテルで待機してます。」
「…あ…うん…。」

 ボスの状態遷移が複雑になりすぎってなかなか新しいものを作れなかったのですが、ステートパターンなる書き方を実践して見た結果、とてもわかり易いコードになりました。

  
・ステートパターンとは

 状態遷移を簡単に実装するデザインパターンです。switch文の各caseを各クラスに分割すると考えていただければよいかと思います。
  
 こちらのサイトを参考にしました。 
 東京工業大学デジタル創作同好会


 いままではボスクラスに以下のように状態遷移を書いていました。

 switchi(var){

case 1: 攻撃パターン1
case 2: 攻撃パターン2
case 3: 攻撃パターン3
}



 しかし、これだと各攻撃パターンを制御する変数をボスクラスに持たせないといけません。その結果生じる問題点が以下の項目です。
  1. 変数が増えすぎてわかりにくい
  2. 想定外に値が変わってしまう


しかし、ステートパターンを使うと以下のようにクラス・シートを分割、することができます。

  • class 攻撃パターン1を含むクラス{}
  • class 攻撃パターン2を含むクラス{}
  • class 攻撃パターン3を含むクラス{}

こうすることで識別子が同じ変数を使えるようになり、変数の管理も簡単になります。その結果、攻撃パターン作成に専念できるようになりました。



・ステートパターンを実装した意義
 開発の簡略化です。ゲームが複雑になるに連れてコードも複雑になっていきます。するとシステムを管理することに主眼が言ってしまい、肝心なゲーム性に割く時間がなくなってしまいます。
 大別するとゲームはシステムとコンテンツに分けられます。ゲームをストレスなく進めるためにはシステムの洗練さが、没入するためにはコンテンツの充実が必要です。ステートパターンによって開発をシステム作成とコンテンツ作成を分割することができます。両者の結合性が高すぎるとコンテンツをつくることでシステムに影響を与えてしまうかもしれません。それを防ぐためにもステートパターンはよいかと思います。



 弾幕STGの醍醐味とも言われる処理落ちを擬似的に実装しました。
 
 

  


 以前ツイートしたように画面内のオブジェクトが一定数を超えるとFPSが下がる仕組みになっています。

 ポイントは弾数ではなくオブジェクト数という点です。つまり自分が発射した弾、それにともなうエフェクトも対象に含まれます。怒首領蜂大復活では自身のショット数を増やすことで意図的に処理落ちをさせるというテクニックが存在します。それと同じような挙動になりました。

 CAVEシューティングに馴染みの薄い人はこのテクニックには抵抗があるようですね。以前、友人にその話をしたところ”邪道”と言われてしまいましたorz。とはいえ上級者も普通に使っているのでOKです。


・実装のメリット

 とにかく面白いです。ゲームの処理自体が遅くなることで自身が覚醒しているような感覚になります。人は覚醒すると時間をゆっくりと感じるようになるんですね。走馬灯がまさにそれです。より一層 ”俺つえええええ” を体感できるようになります。
 もう一つ開発者側としても難しい弾幕を作りやすくなります。高速高密度の弾はプレイヤーの心を折ってしまいますが、低速化することでなんとかなるかも、という印象を与えることができます。実際、私も処理落ちがなければ諦めてたゲームがたくさんありますしね。



・疑似処理落ちが面白いゲーム

Eden’s Aegis 


同人ゲーで疑似処理落ち実装してるのこのゲーム以外知らない。もしあったら教えて下さい。

怒首領蜂大復活


意図的な処理落ちについてちゃんたけさんが明言してます。動画はアーケードなので本当の処理落ちですが、steam版は疑似処理落ち仕様です。

↑このページのトップヘ