FC2ブログ

スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

トラキア CPU射程内に存在する攻撃対象を選定するルーチン解析 その1


; CPU射程内の攻撃対象を選定するルーチン 簡易版

; CPU射程内の攻撃対象の選択、決定に関しては大体以下のとおりである (かなり簡略化してある)



=======================================================================
=======================================================================
*MAIN


・CPU所持アイテムチェック ; アイテムがなければ処理終了 *ENDにジャンプする

・CPU攻撃範囲チェック ; CPU攻撃範囲内に攻撃対象が存在しなければ*MAINに戻る ;次の所持アイテムをチェック

---------------------------------------------------
*MAIN2


 CPU攻撃範囲内に攻撃対象が存在する場合 

・攻撃対象を捕縛できるか判断 

 捕縛できない場合 : *MAIN4にジャンプ 

 捕縛できる場合 

 攻撃対象が反撃可能な武器を所持しているかチェック : 反撃可能な武器を所持している場合*MAIN3にジャンプ


 攻撃対象が反撃可能な武器を所持していない場合、その攻撃対象ユニットを捕縛戦闘なしで捕縛する。
 
 攻撃優先ポイントを最大にセット、戦闘なし捕縛フラグをONして*ENDにジャンプ
 

---------------------------------------------------
*MAIN3


・CPUと攻撃対象が模擬戦闘を行う

 もし 「攻撃対象が撃破された」 判定が出た場合、戦闘あり捕縛フラグをONして*MAIN5にジャンプする

---------------------------------------------------
*MAIN4

・CPUが攻撃対象を攻撃する際の攻撃位置を選定する

・CPUと攻撃対象が模擬戦闘を行う

---------------------------------------------------
*MAIN5


・攻撃優先ポイントを取得する

・今回取得した攻撃優先ポイントを前回取得した攻撃優先ポイントと比較

・今回取得した攻撃優先ポイント < 前回取得した攻撃優先 の場合*MAIN6にジャンプ

 今回取得した攻撃優先ポイントを採用
 今回取得した攻撃位置を採用
 今回取得したCPU所持アイテムチェックINDEXを採用 (捕縛フラグを兼ねる。捕縛戦闘を行う場合+$80。
                                  捕縛戦闘なしで捕縛する場合+$C0)
 今回取得した攻撃対象管理IDを採用

---------------------------------------------------
*MAIN6


・CPU射程内に他の攻撃対象が存在するかチェック 

 他の攻撃対象が存在する場合*MAIN2に戻る

 他の攻撃対象が存在しない場合 

 アイテムを7つチェックしたか判定 : アイテムを7つチェックしていない場合*MAINに戻る ; 次のアイテムをチェック


----------------------------------------------------------------
;アイテムを7つチェックした場合


*END


・処理終了

--------------------------------------------------------------------

 ・CPUの射程範囲内に敵対ユニットが存在しない場合、アルゴ2のチェックに移る

 ・CPUの射程範囲内に敵対ユニットが存在する場合、移動経路の取得などを行い 
  ユニット移動、攻撃対象に攻撃する。

 ・CPUの射程範囲内に敵対ユニットが存在する場合でもCPUが攻撃対象に
  ダメージを与えられない場合(CPU与ダメージ0の場合)、アルゴ2のチェックに移る

=======================================================================
=======================================================================

  * このルーチンで重要なのは、CPU射程内に攻撃対象が存在する場合

  ・ 「CPUが攻撃対象を捕縛できるか」 ; 捕縛可能条件のチェック

  ・ 「CPUがどの位置で攻撃するか」  ; 攻撃位置候補の選定

  ・「攻撃対象が複数存在する場合、どの対象を選択するか」 
                                          ; 攻撃優先ポイントの取得
  ・ 「CPUが複数の武器を所持している場合、どの武器を使うか」

  などであるが、これらの選択基準に関しては次回解説する。

スポンサーサイト

コメントの投稿

非公開コメント

カウンタ

プロフィール

Anonymous

Author:Anonymous
ファミコンゲーム解析、同人ゲーム制作

免責 
本ブログの管理者は第三者がこの
ブログでDLしたツールを使用する
ことによって発生した如何なる
事件・損害に対して全く責任を
負いません

最新記事
月別アーカイブ
カテゴリ
検索フォーム
リンク
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。