日記/2006-06-12

2006-06-13 (火) 09:05:46
お名前:

うちのホムもBase65を超え、最近ではGD3ソロなどをしています。
つーか、Vice、うちのメンバーの中でも屈指の戦闘能力持ちになったんですけど(笑)
ホムンクルスさまさま。

で。AI関連で、ちょっと大きな対応ができそうなので、ここに速報しておきます。
以前から掲示板でユエさんから指摘のあった、「パッシブ状態のはずなのに、遠くの(こちらにアクションをしていない)敵に突撃してしまう」件について、原因らしきことがわかりました。
なので、近いうちに対策版を出します。

ちなみにその原因は、「ボスであるアルケミ自体のターゲット」に問題がありました。

うちのAIのパッシブ状態での索敵ルールは、以下のようなものです。

  • 味方(ホム/ケミ/友人)を攻撃している敵がいれば、それを攻撃。
  • 上記の敵がいなければ、オーナーケミが狙っている敵を攻撃(共闘)。

で、問題はこの後者にありました。
正確に言うと、後者ともう1つ、ROクライアントの「ターゲット情報管理方法」、この2点の複合的な問題です。
ROクライアントでは、キャラクターが何かをターゲットとして選ぶと、リログなどをしないかぎりそれが初期化されることは原則的にありません。
そのため・・・ケミが敵を殴って、その敵が倒れたあと、他に新しいタゲを取る行為をしないでいると、ホムからは「ケミは、(死んだ)敵を殴っている」ように見えてしまいます。
通常「死んだ敵」はタゲ対象からはずすように処理しているので問題ないのですが、その後に別の場所に生まれた「ケミが狙っている(死んだ敵と同じIDの)生きている敵が画面に現れる」と、ホムは「ボスと共闘しようとして」突撃してしまうのです。

RO内部に干渉することはできないので、クライアントが戻してくる「ケミのタゲID」を直接変えることはできません。なので、AIで「遠くにいる敵は、直接ケミのタゲになっているとみなさない」ような処理をかませる予定です。

とまあ、開発メモ的に。