【HoldPosition】
Combat Override Packageで使用するProcedureです。戦闘中の持ち場を設定でき、NPCはその場所近辺でCombat Styleに準じた戦闘を行います。
通常時のAI Packageに使用した場合は正常に動作しません。どのNPCも頭を抱えて怯える仕草をするだけのようです。
-パラメータ-
Location: 戦闘中、ここで指定された場所付近で戦います。
Combat Override Packageは戦闘時のAIを上書きしてしまいますが、デフォルトの戦闘AIをPackageに組み込めるProcedureがあります。
「HoldPosition」というのがそれで、Override Package専用のProcedureと言えます。このProcedureが必要とするパラメータはLocationのみです。NPCをLocationに指定した場所に留め置きつつ、Combat Styleに即した戦闘を行わせることが可能になります。門番や射手など、自分の持ち場を極力離れさせずに戦わせることができます。
デフォルトのフォロワーもこの「HoldPosition」を使ったPackageによって、プレイヤーを中心としたLocationを持つCombat Overrideが適用されています。そのため戦闘中でもプレイヤーからはぐれにくくなっています。Locationの圏外に行かないと攻撃できない敵がいる場合は、境界ぎりぎりを移動しながら挑発の文句を言うだけになります。
とはいえ「HoldPosition」の強制力はそれほど強くなく、現在ターゲットを取っている敵と交戦中だと、Locationの圏外にいても戦闘を続けることがほとんどです。Combat Stateが変わる節目節目でLocation確認をしている感じです。すぐ近くにいる敵に背中を見せてLocation圏内へ戻る行動をほとんどしないため、リアルと言えばリアルかもしれません。
強制的に敵から引き離したいときは、「Procedure:Travel」などの移動系Procedureで動かすのが確実です。
Combat Override Packageを作る際は、この「HoldPosition」をベースにして「UseMagic」や「UseWeapon」などの一時的な行動を差し込んでいくことになります。
「HoldPosition」を極力使わず、他のProcedureを駆使して擬似的な戦闘を行わせることも可能です。この場合、Procedure TreeでCombatStyle的なものを再現することになります。
HoldPositionは単体で使わないとうまく動作しないようです。
SimultaneousのBranchで「Find」や「Wait」のProcedureなどとの同時実行を行うと、NPCが棒立ちになってしまいました。もしかしたらHoldPosition以外のProcedureは全て、NPCのデフォルトのAIを止めてしまう働きがあるのかもしれません。
Simultaneous内で他のProcedureと一緒に使う場合にしても、Conditionを細かく設定し、その時点で動くのはHoldPosition一個だけという状況を作る必要があります。
次へ