竹林ソフト 2024/09/12 20:00

味方部隊の仕様検討(巫女&築城&防衛アクション)

敵が最低限の動画をし始めたので、味方部隊の仕様検討と実装を進めていきます。

仕様の検討

味方の種類と役割について

このゲームは築城して籠城するゲームです。味方はどこで防衛するかの場所を指示できる最大8人構成の「部隊」と自キャラについてくる「随伴兵」がいるものとします。

そして兵種としては

  • 弓 ... 射程中、攻撃頻度普通、ダメージ普通
  • 火縄銃 ... 射程長、攻撃頻度遅い、ダメージ高い
  • 槍 ... 射程小、攻撃頻度普通、ダメージ普通
  • 侍 ... 射程小、攻撃頻度高い、ダメージ高い、防御高い

とします。

弓は経験を積むと火縄銃並みに強くなるとかの構想はあるのですが、あまり小難しくしても仕方がないのでおそらく実装しません。敵味方はバフ・デバフ以外では能力が変わらず、敵の量が増え続けるだけにするつもりです。

実現したいシーンの列挙

今のところ部隊という単位で防衛地点を指示するのと、自キャラにも随伴兵がいるところまでは確定しています。ここまでで どういうゲームプレイをさせたいかを列挙してみます。

  • 櫓に部隊を配置して、敵を上や横から矢弾で攻撃する。
  • 板塀や土塀の内側に部隊を配置して、狭間から敵を攻撃させる。
  • 盛り土の上の木柵の内側に槍兵を配置して、登ってくる敵を攻撃させる。
  • 閉じた門の内側に兵がいると、門が壊されにくくなる。
  • 自キャラと随伴兵が敵を足止めしている間に、部隊の兵が側面から矢弾で攻撃する。
  • 敵と戦ってる随伴兵を自キャラのスキルで回復、強化して前線を維持する。
  • 随伴兵は敵からの視野が届かない広場で時間をかけて召喚する。
  • 自キャラの範囲オーラで随伴兵と近くの部隊の兵の攻撃速度を上げる。
  • 籠もっている櫓が壊れそうになったら部隊の兵が撤退して次の櫓に自動で転進する。
  • 敵が撤退を始めたら門を開けて自キャラと随伴兵で追撃する。

ここまで書き出して思ったことは、

  • 随伴兵は部隊の兵に比べて移動が早くて能力も高くした方がよさそう。
  • 多くない部隊を敵の侵攻に合わせて撤退させつつ防衛させたいのはわかるが、かしこく半自動で移動させる方法を提供するのは大変そう。
  • 敵の侵入経路を保証するために「2x2 の台車が本拠まで通れる輸送路がないと補給が滞る」「そういう輸送路の本数が増えると補給が微増していく」というルールが必要そう。
  • 随伴兵、槍ユニット、侍ユニットの実装は後回しでいい。

とかです。
具体的に仕様検討や実装が必要そうな項目としては、

  • 部隊長を定義して、そのユニットを基準に配置位置を指示する。
  • 部隊は8人で1人の専有面積が 1 m^2 とすると1列に配置するなら 4 Block が必要になる。4 Block ぶんの壁には直線で配置できるとして、曲がった場所では時計回りに回り込むようにする。

  • 櫓系の建物に配置できるようにして、かつ選択できる UI にする。
  • 櫓や壁の内側から攻撃できるようにする。
    • 敵が櫓や壁に対して反撃するようにする。

でしょうか。
まずは部隊を配置できることを目指します。

やったこと

部隊を配置するパネルの検討

パネル操作に必要そうな基本機能を列挙すると

  • パネルから部隊を選択できる。
  • 部隊を選んだときのパネル内のボタン
    • 転進経路の編集(移動先の指定)
    • 転進条件の編集(部隊ごとに設定を保持する)
    • 兵種の変更
  • 選択中の部隊について画面端に直前の防衛での戦績を表示するとよさそう。

↓ ボタンが2つだけど、こんなイメージ

くらいです。

これに加えて転進経路の編集の UI 案は

  • A ボタン ... 位置を指定するモードに入る。
  • X ボタン ... 選択中の枠の次に新しい移動先を挿入する。
  • Y ボタン ... 選択中の枠の移動先を削除して後ろの枠のデータを前につめる。

です。
マウス操作の場合には、枠の近くに「削除」「追加」の小さいボタンを用意しようと思います。

転進条件の編集についての操作方法は未決定ですが、新しくパネルを開いて転進の条件の有効無効を切り替えられればいいかなと思います。また、転進の条件は X, Y ボタンで設定をコピーして別部隊にペーストできてもいいなと思いました。

  • 部隊の転進条件の案
    • いずれかのユニットがダメージを受けた。
    • 配置先の櫓や壁の耐久値が 50 % 以下になった。
    • 配置先の櫓や壁の耐久値が 25 % 以下になった。
    • 最後に攻撃してから 1.5 ウェーブぶんの時間が経過した。
    • 転進先に登録されている櫓や壁が攻撃された。

また、1つ前の案では LB, RB は枠の移動に割り振っていましたが、LB, RB はこのパネルを開いている最中でも部隊を切り替えられるとよさそうに思いました。引き続き考えます。

部隊を配置するパネルの実装

作成して F キーでパネルが開閉するようにしました。よいです。
下側の部隊ボタンには、部隊の兵種アイコンを描画しようと思っています。

パネル内の各ボタンを押した後の UI はまた後で作成します。

部隊を扱うための実装

セーブデータに部隊情報が含まれるようにしました。よいです。
そして、セーブデータに記述されている位置に部隊のユニットが配置されるようにもしました。よいです。

↓ 部隊のユニットをとりあえず描画したところまで

次は UI 操作で部隊の配置操作を行えるようにしたいのですが、それは次回以降に行います。

また今までの実装ではユニットの大きさ(タイル)を 1 とすると、移動経路は建物用の 2 の大きさ(ブロック)で扱っていましたが、移動先はタイル座標で指定したいので、目標ブロックに移動したら目標位置まではタイル基準で移動させる仕組みが必要なのに気付きました。もう少し考えてから着手します。

まとめと今後の予定

味方の部隊について、どういう役割をこなしてほしいかと UI について検討し、いくつかの機能を実装しました。大変よいです。

次回は、今回の続きである部隊まわりか、雑多な作業をやろうと思います。がんばります。

月別アーカイブ

限定特典から探す

記事を検索