2014年1月27日月曜日

【Unity】RTS:AI 指揮範囲に収め続ける

指揮範囲の円
中隊指揮車は指揮下のユニットを指揮範囲内に収め続ける必要があるが、攻撃と防御で複雑な行動をとるユニットをどうしたら範囲内に収め続けることができるか探っていた。

 
 全ユニットの位置の平均値をとって指揮車を移動させてみたが、これはあまり有効ではなかった。ユニットは撤退の目標地点を指揮車の位置に定めているが、攻撃時に前線近くまで指揮車が進んでしまうので、撤退してもかなり敵に近いままになってしまうのだ。
 そこで、戦闘開始前の指揮車の位置を記録して全ユニットの平均位置と平均した地点に指揮車を移動するようにした。こうすれば戦闘開始前の位置にかなりの重みが置かれるので指揮車が前線に近づき過ぎないし、ユニットの進軍・撤退にあわせてきちんと動ける。

 AIの指揮範囲の問題は解決しつつあるが、最近操作性のことで悩んでいる。戦線の移動にともない指揮車を随時移動させる必要があるが、これは特にRTS初心者にとっては、いやそうでなくても、難しい作業ではないかと感じている。ゲームをスローテンポにするべきかもしれない。あるいはルール自体を変える必要があるかも知れないが、正直な所作り上げないと検証できないこともある。

0 件のコメント: