このセクションでは、AI ガードがパトロールするエリアを制御するリーシュの仕掛けの設定方法について説明します。
リーシュとは、ガードに移動範囲を指示するために Verse で設定するカスタムの位置のことです。 リーシュを使用して、ガードがパトロールする要塞内の場所を指定します。
ガードはパトロール フラグが有効な場合のみパトロールします。 無効な場合は、脅威が見つかるまで立ったまま動きません。
このチュートリアルでは、リーシュの中心を簡単に動かせるように、小道具である Verse 仕掛けをダミーとして使います。
新しいリーシュ位置の仕掛けを作成するには、Verse ヘッダをクリックし、Verse Explorer が選択されていることを確認します。
次に、[Verse Explorer] タブに移動し、プロジェクト ファイルを右クリックし、[Add new Verse file to project (新規 Verse ファイルをプロジェクトに追加する)] を選択します。
Verse の仕掛けを選択して名前を付け、[Create (作成)] をクリックします。
仕掛けの Verse ファイルをダブルクリックすると、Verse スクリプトが表示されます。 以下のコードをコピーして貼り付けます。
using { /Fortnite.com/AI }
using { /Fortnite.com/Characters }
using { /Fortnite.com/Devices }
using { /UnrealEngine.com/Temporary/SpatialMath }
using { /Verse.org/Random }
using { /Verse.org/Simulation }
# Defines a leash volume that can be assigned to guards
stronghold_leash_position := class(creative_device):
# Leash is applied by default to all guards spawned by those devices
@editable
[Verse] タブで、[Build Verse Code (Verse コードをビルド)] を選択して、Verse スクリプトをコンパイルします。
コンテンツ ブラウザから、「All/"Project Name"/Creative Devices/」にある Verse の仕掛けを見つけます。
リーシュ位置の仕掛けを 2 つ (1 つは要塞リーシュ用、もう 1 つはフォールバック リーシュ用) 配置します。 この 2 つを簡単に区別できるように、名前を付けます。
[Leash Position (リーシュ位置)] プロパティで、プレイ中にこれらの仕掛けが非表示になるように [Visible in Game (ゲーム中に表示)] をオフにします。
リーシュの内側の半径と外側の半径は、先程、要塞ゲーム マネージャーで設定しました。
AI のパトロール経路の設定
AI Patrol Path ノードの仕掛けを使用して、ガード AI のデフォルトのパトロール動作を設定できます。
AI Patrol Path ノードの仕掛けを初期パトロール動作として機能させるには、ガード スポナーの設定 [Spawn on Patrol Path Group (パトロール経路グループでスポーン)] を AI Patrol Path ノードの仕掛けの設定 [Patrol Path Group (パトロール経路グループ)] と同じ値に設定します。
AI Patrol Path ノードの仕掛けは、イベント バインディングまたは関連付けられている Verse API を使用して、ランタイム時に割り当てたり、無効にしたりすることもできます。
この画像のように、ガード スポナーと AI Patrol Path ノードの両方で [Patrol Path Group (パトロール経路グループ)] オプションを同じ数値に設定する必要があります。 こうすることで、スポーンされた AI が使用するパトロール経路を選択します。
AI NavMesh をデバッグする
[Island Settings (島設定)] から navmesh のデバッグ表示をオンにしたり、デバッグおよびナビゲーションの両方のオプションを有効にすることができます。 これは、AI が特定の場所に移動できるかどうかを決定するうえで役立ちます。