2020 ソフトウェア設計及び演習用の班Wiki

19::gr11::活動記録_モジュール化(とインタフェース)_CPUモジュール


前:被ダメージ挙動モジュール | モジュール化ページ | 次:ボタン入力受付モジュール


ファイル名 : COMBody.cs および CharaCOMData.cs

担当 : 深澤

説明

互いの位置や状態、試合の状況などをもとにCOMキャラクターの行動をキー入力として与えるモジュール。

インタフェース

  • in
    • 自キャラ座標 (Transform Position)
    • 相手キャラ座標 (Transform Position)
    • 自キャラ状態(攻撃中か、などの情報)
    • 相手キャラ状態(同上)
  • out
    • 自キャラ行動(public byte key)

詳細説明

コンピュータがとりえる行動は以下の通り

  • 前進
  • 後退
  • 攻撃(近)
  • 攻撃(遠)
  • ジャンプ

また、コンピュータの性格を以下の3つの中からランダムで設定する。

  • 平均的
  • 攻撃的
  • 防御的

まず、現在の状況(相手との位置関係、相手の行動など)と設定されたコンピュータの性格をもとに、上記の行動に対応した変数(以下、行動変数)に値を足していく。

また、設定されたコンピュータの性格に合わせて、各行動に対応した倍率変数(以下、行動倍率)を設定。

それに加え、相手のよく入力するボタンの情報をもとに行動倍率に値を加算。

それぞれの行動について、行動変数 * 行動倍率 を計算し、最も値の大きい行動を決定。

ジャンプについては、上記計算結果が設定された閾値より大きい場合に、ジャンプ実行フラグをオン。

決定した行動について、自キャラ行動としてPInpで読み込める形で key 変数に書き込む。その際、ジャンプ実行フラグがオンの際にはジャンプも実行するように加筆する。


最終更新日:2019/08/02 10:28:39