準備工作

所有需要能夠進出交戰圈的對象(AI及玩家)的BP或C++都需要附掛CombatZoneComponent

image.png

在地圖中呼叫CombatZoneSubsystem的SetCombatZoneQuery可以統一該地圖中交戰圈範圍、點位、更新頻率的設定

image.png


客製化調整

CombatZoneComponent

參數設定

現階段玩家不用做任何設定

現階段AI可以設定

image.png

可以設定 內圈(Inner) 外圈(Outer)

image.png

可以設定整體對峙行為時,前後左右移動的速度

image.png

由於對峙行為的前後移動與左右移動作法不同,部分角色需要調整參數做數值補償

image.png

快速進入交戰圈的速度

提供功能

image.png

需要進入交戰圈的時候,通常是剛進入戰鬥循環時,可以在任何地方(比如Task)呼叫到AI身上的CombatZoneComponent的TryEnterCombatZone,需要的參數只有仇恨的對象(比如玩家)

image.png

需要離開交戰圈的時候,通常是AI死亡或被禁用會需要呼叫AI身上的CombatZoneComponent的TryLeaveCombatZone

image.png

需要進行對峙行為(左右移動或原地待機)時,可以在任何地方(比如Task)呼叫到AI身上的CombatZoneComponent的StartStandoffBehavior

需要結束對峙行為(左右移動或原地待機)時,可以在任何地方(比如Task)呼叫到AI身上的CombatZoneComponent的StopStandoffBehavior