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

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

ゲーム開発

 TCストライカーズ2をバージョン1.42へアップデートしました。

 ダウンロードはここから

今回は

1.スコアアイテム取得時に獲得スコア表示
2.ボス戦前後でオートショットが途切れないように修正
3.ライトモードの調整
4.ローディング画像追加
5.リファクタリング


を行いました。必要のあるものだけ解説します。


スコアアイテム取得時に獲得スコア表示


キャプチャ


 実は本作ではスコアアイテムの獲得スコアが一定ではありません(ミスですけどね)。自機がアイテムに近づくとアイテムを吸引するのですが、その際に吸引した距離に応じてスコアが変動します。長い距離引っ張ったほうがスコアは上がります。


経緯↓
  1. 当初は吸引がなく一律400点。
  2. ver1.1で吸引を実装する。
  3. 吸引中(アイテム獲得前)も1フレームに付き400点入っていた(今回まで気づいていませんでした)。
  4. ver1.42から獲得スコアを表示する。
  5. 獲得スコアが変動しおかしいことに気づく

ということで、エラーを活かして獲得スコアが一律ではないようになってます。特殊な動きをすることで10000点近いスコアを出すことができます。超暇な方はやってみてください。



ライトモードの調整

 ディフィカルティ構造体を実装したことでライトモードの弾数等を視覚化できました。それを踏まえて見直すとレベルカーブがよろしくないことが分かりました。ちょうどいい感じで初心者⇒ライトモード⇒オリジナルモードと進めるよう調整しました。今までライトモードをプレイしてくれた方ごめんなさいm(_ _)m



リファクタリング

 大幅に改善しました。このゲームは第13回ふりーむコンテストのために急いで作ったものでして、コード的におかしい部分もありますがなんとか期限に間に合わせました。しかし、そういうコードって人に見られたくないですよね。ゲーム自体もいつ不具合が起きるか不安で仕方なかったのです。これではユーザーさんも気持ちよくプレイしていただけないので、改めてプログラミングを体系的に学習しリファクタリングしました。その御蔭で、コードもわかりやすくなり私自身、どこで何をしているのか明確に答えられるようになりました。
 こうなると心からこのゲームを勧められるようになりますし、エラー報告を頂いても容易に修正できることでしょう。



 これでTC02の開発は一旦終わりにして新作の開発に臨めそうです。

 スターシーケンスというのは私がそう言っているだけです。何かと言うと、ボスや大型機を破壊した際に周囲に円形にアイテムを放出するシステムのことです。

 ボスを破壊した際のアクションが寂しかったので賑やかにするために作成しました。


 
 引数で半径と個数を設定します。きちんと1周するように作ったはずなのですが、個数を増やしすぎるとつながらない部分が出てきますね。ちょうど視力検査のCみたいです。もし、☆ではなく弾ならばこれも弾幕になりますね。

 丁寧に作っておくと色々なことに応用できます。上述のように弾にすればそれだけで1つパターンを作ることができますし、弾セットにすればより面白いものになりそうです。


 他ゲームに見るスターシーケンス

 Eden’sEdge


 
 RedNeg3Stars
  
 
RedNegの方は星の位置が若干ランダムになってるんですね。これもかっこいいですね。


とりあえず


 今回の開発では規格(サイズ)をきちんと決めるようにしています。まあ、先に決めるのが普通なのでしょうが・・・。前回は前半ステージと後半ステージの規格が変わってしまい修正に時間を取られてしまいました。今回は作り直しがないよう慎重に進めています。

 例えばこれはTSカットイン画像なのですが、
pose

 下の方はゲームでも表示されません。”とりあえずこのくらい作っておけば大丈夫だろう”、”自分ががんばればいい”と思っていましたが、もう頑張れません…。できる限り作業量を減らしてから素材作りに入らないと息切れしてしまいます。


 ゲームで表示されるのは上の部分だけです。最初からこのサイズで作ればよかったです。1枚だけならそれほど負担でもありませんが、5ステージ分となると結構な量です。

 pose

 
 こんな風に素材作りの前に必要サイズを確認しておくと作業が楽になりますね。ただ、この手法だと目立つ変化がなく開発序盤は退屈です。

 こんな風に下絵の段階でチェックしています。


 
 カットインがスカッと決まってくれればいいのだが、今の組み方では遅いな・・・。今回は引数にパスを取ってその場で生成する方式をおおく採用しているのですが、画像が大きくなる、処理が重なると重くなりますね。


 お し ま い 
 

さて、TCSTRIKERS3ではランク制を導入しています。

それにあたって攻撃パターンをランクに応じたものに設定しています。
その際に、変数の一部をランクに関連付けるという方法をとっているのですが、おかしなことになりました。

あるボスの攻撃なのですが(メアリーは開発のために痛みを堪えて頑張ってます)


ランク1

no title


ランク2

2


ランク4

4


ランク1,2,4は順調に難しくなってるのですが、


ランク3

3

違う弾幕になってしまいました(❀╹◡╹)ナンデヤ

オプションが回転しながら発射しているのですが、発射頻度がある値になると重なってしまうからです。この場合、ボスの周りを回転しながら避けます。まあ、これもいいか、とこのまま採用します。

今回は難易度は
  • Light
  • Original rank off
  • Original
の3段階です。ランクが影響するのは一番難しいところ(HARD相当)のみです。そこにチャレンジするプレイヤーだったらこれも楽しめるかなーと思っています。ポイントに応じてわざとランクを下げるという戦略もありますからね。




それでは前の記事で作った8×2のエフェクトファイルを

muzzle82


4×4に変更します。
muzzle16



 動画にしました。久しぶりに喋ってます。


↑このページのトップヘ