vnavmesh

ナビメッシュで障害物を避けつつキャラクターを目的地まで自動移動させる。

作者
veyn
リポジトリ
github.com/awgil/ffxiv_navmesh
バージョン
v1.2.3.8
ステータス
active
プラグイン最終リリース
ガイド最終更新
  • #自動化
  • #戦闘支援

概要

vnavmeshは、FFXIVの現在マップに対してナビメッシュ(移動可能領域のグラフ)を構築し、指定した座標までキャラクターを障害物を回避しながら自動移動させるDalamudプラグインです。 徒歩での地形追従に加え、飛行可能エリアでは3次元のボリュームナビゲーションによる自動飛行にも対応します。

単体でも /vnav コマンドやIPC経由で移動指示を出せますが、AutoDutyをはじめとする多くの自動化プラグインがナビゲーション基盤として依存しているため、それらの前提プラグインとしても広く利用されています。

主な機能

  • 自動移動 (徒歩) - 指定座標・ターゲット・マップフラッグ位置への自動経路探索と追従
  • 自動移動 (飛行) - 飛行可能エリアでは3Dナビゲーションボリュームを使用し、立体的な経路で目的地まで飛行
  • ナビメッシュの動的構築 - エリア入場時にメッシュを自動生成し、ローカルキャッシュに保存。再訪時は即座にロード
  • カメラ追従 - 移動方向にカメラを自動で合わせる aligncamera モード
  • DTRバー表示 - サーバ情報バーへの状態表示
  • IPC提供 - 他プラグインから移動指示・状態取得を行うためのAPIを公開

インストール

本プラグインはDalamud公式リポジトリでは配布されておらず、配布元のカスタムリポジトリを追加する必要があります

  1. /xlsettingsを実行し、Dalamud Settings の Experimental タブを開く
  2. Custom Plugin Repositories に以下のURLを追加して保存:
    https://puni.sh/api/repository/veyn
  3. プラグインインストーラー (/xlplugins) から vnavmesh を検索してインストール

基本的な使い方

設定/デバッグウィンドウは /vnav を引数なしで実行すると開閉できます。

コマンド動作
/vnav設定/デバッグウィンドウの表示切替
/vnav moveto <X> <Y> <Z>指定した絶対座標へ徒歩で移動
/vnav movedir <X> <Y> <Z>プレイヤーの向きを基準にした相対座標へ徒歩で移動
/vnav movetarget現在ターゲットの位置へ徒歩で移動
/vnav moveflagマップフラッグの位置へ徒歩で移動
/vnav flyto <X> <Y> <Z>指定した絶対座標へ飛行で移動
/vnav flydir <X> <Y> <Z>プレイヤーの向きを基準にした相対座標へ飛行で移動
/vnav flytarget現在ターゲットの位置へ飛行で移動
/vnav flyflagマップフラッグの位置へ飛行で移動
/vnav stopすべての自動移動を停止
/vnav reload現在エリアのナビメッシュをキャッシュから再読込
/vnav rebuild現在エリアのナビメッシュをキャッシュ無視で再構築
/vnav aligncameraカメラを移動方向に追従させるモードの切替
/vnav aligncamera true/falseカメラ追従モードの明示的な有効化/無効化
/vnav dtrDTRバー (サーバ情報バー) への状態表示の切替
/vnav colliderコリジョン (当たり判定) のデバッグ可視化を切替

ナビメッシュは初回エリア訪問時にバックグラウンドで構築され、構築完了までは移動指示を出しても待機状態となります。構築済みのメッシュはローカルにキャッシュされ、次回以降は即座に利用可能です。

関連プラグイン

注意

  • 大型パッチでゲームのマップデータが更新されるとキャッシュされたナビメッシュが古くなる場合がある。挙動が怪しい場合は /vnav rebuild で再構築する
  • 大規模エリアでは初回のメッシュ構築に時間がかかり、その間CPU負荷が高まる
  • 飛行ナビゲーションは飛行が解放済みのエリアでのみ機能する。未解放エリアで flyto を実行しても移動できない