&autolink(id=wikibody)
AutoExec
AutoExec
当ページはAutoexec2.71説明ページの和訳です。
プラグイン情報
開発者 | Aikar - Original implementation by Taj |
ダウンロード | 本家サイトへ ※Downloadをクリック |
本家フォーラム | 本家フォーラムへ(英語) |
変更履歴 | 本家リンク(英語) |
概要
AutoExecプラグインはFFXI上でのイベントを監視して、イベント発生時に予め定義しておいたWindowerコマンドを実行するというものです。
イベントには、ログイン/アウト、ジョブチェンジ、ヴァナ日変化、天候変化、ヴァナ時間変化、月齢変化、強化/弱体等の魔法効果の発生/効果切れなどがあります。
イベントには、ログイン/アウト、ジョブチェンジ、ヴァナ日変化、天候変化、ヴァナ時間変化、月齢変化、強化/弱体等の魔法効果の発生/効果切れなどがあります。
たとえば、ジョブチェンジと同時に該当するジョブのマクロパレットに切り替えたり、キャラのログインと同時にプラグインや他のツールを実行(runプラグイン経由)させたりすることが出来ます。
使い方
・ロードしてコマンドで監視するイベントを定義してください。
・Plugins\AutoExec\AutoExec.xmlを起動時に自動的に読み込みますので、起動時に定義しておきたいイベントはAutoExec.xmlに記述してください。
・Plugins\AutoExec\AutoExec.xmlを起動時に自動的に読み込みますので、起動時に定義しておきたいイベントはAutoExec.xmlに記述してください。
コマンド
//autoexec~以降のコマンドについて説明します。
コマンド | 説明 |
register <id> <イベント> <コマンド> | イベントを登録する <id>:定義IDを指定。省略した場合は10000以降が割り振られる <イベント>:監視するイベントを指定する。記述方法については後述 <コマンド>:イベント発生した際に実行するWindowerコマンドを指定する。 |
registerq <id> <イベント> <コマンド> | registerと同じだが、"q"を付与した場合はWindowerコンソールに登録したことを示すメッセージが出力されない。 |
regonce <id> <イベント> <コマンド> | イベントが発生すると定義が消える(1回だけ実行される定義方法。 パラメタの設定方法はregsterと同様 |
regonceq <id> <イベント> <コマンド> | regioneと同様。登録時コンソール出力なし |
unregister <id> | 指定IDの定義を削除する |
on | 監視を行う(load時はon状態) |
off | 監視を停止する |
list <echo> | 定義リストをコンソール出力する。echoを付けた場合は、FFXIのログウインドウに/echo表示される |
clear | 定義を全て削除する |
trigger <イベント> | イベントを手動で発生させる |
load <xmlファイル名> | Autoexec用の定義xmlファイルを読み込む |
イベント一覧
イベント | 説明 |
pluginload_$1x$2_$3 | プラグインロードを行うと発生するイベント $1:FFXI窓の幅、$2:FFXI窓の高さ $3:言語(0:日本語、1:NA、2:EU) |
login_$1 | ログイン(キャラを選択してヴァナにイン)したタイミングで発生するイベント FFXIを立ち上げてから1度だけ発生する(ログアウト→キャラ選択では発生しない) $1:キャラ名を指定("_キャラ名"を省略した場合はどのキャラのログインでもイベント発生) |
logout_$1 | ログアウト(FFXI内で/logout、モグコマンドからログアウト選択し、ログアウトが成立したタイミング)で発生するイベント $1:キャラ名を指定("_キャラ名"を省略した場合はどのキャラのログアウトでもイベント発生) |
jobchange_$1/$2 | ジョブチェンジで発生するイベント $1:メインジョブ略称(WHM、BLMなど)、$2:サポジョブ略称 例)jobchange_WHM/BLM ⇒ 白/黒にジョブチェンジした際に発生 jobchange_WHM/* ⇒ 白/サポはなんでも にジョブチェンジした際に発生 |
jobchangefull_$1$2/$3$4 | ジョブチェンジで発生するイベント jobchangeと同様だが、メインレベル・サポレベルまでを指定する $1:メインジョブ略称、$2:メインレベル、$3:サポジョブ略称、$4:サポジョブレベル |
time_$1.$2 | 指定の時間になった際に発生するイベント $1:時、$2:分 |
chat_$1_$2_$3 | 指定の文字がチャットに現れた場合に発生するイベント $1:チャットモード(say,tell,shout,party,linkshell,emote) $2:発言者名、$3:文字列 ※文字列には半角英数字のみ使用可能 ※イベント発生の対象はsay,tell,shout,party,linkshell,emoteだけであり、戦闘ログやモンスの動作ログは対象にはできない。 |
gainbuff_$1 | 強化・弱体などが付与された際に発生するイベント $1:強化・弱体名称 ※強化・状態異常リスト ※又は、plugins\resources\status.xmlを参照 ※半角スペースは「_」(アンダーバー)に変更する |
losebuff_$1 | 強化・弱体などが切れた際に発生するイベント $1:強化・弱体名称 |
invite_$1 | パーティに誘われた際に発生するイベント $1:誘われた相手の名称 |
day_$1 | 指定のヴァナ曜日になった際に発生するイベント $1:曜日名(Firesday, Earthsday, Watersday, Windsday, Iceday, Lightningday) |
moon_$1 | 指定の月齢になった際に発生するイベント $1:月齢 ※月齢の指定方法は「月齢」を参照 |
moonpct_$1 | 月の満ち欠け度合いをパーセンテージで表した値が指定値になった際に発生するイベント $1:月の満ち欠け度合い(新月:0 ~ 満月:100) ※「月齢」を参照 |
zone_$1 | 指定のエリアに入ったときに発生するイベント $1:エリア名 |
lvup | レベルアップ時に発生するイベント |
lvdown | レベルダウン時に発生するイベント |
gainexp_$1 | 指定の経験値を取得した際に発生するイベント $1:経験値 |
chain_$1 | 指定の回数、チェーンした際に発生するイベント $1:チェーン回数 |
weather_$1 | 指定の天候になった場合に発生するイベント $1:天候名 ※天候名の指定方法は「天候を参照 |
status_$1 | 指定のプレイヤーステータスになった際に発生するイベント $1:プレイヤーステータスス(resting=ヒーリング開始時、idle=通常時、engaged=抜刀時、zoning=エリア移動時、dead=戦闘不能時) |
hp_$1 | 自分のHP/MPが指定の値になった際に発生するイベント $1:自分のHP、又はMP値 |
mp_$1 | |
tp_$1 | 自分のTPが指定の値になった際に発生するイベント $1:自分のTP値 |
hpp_$1 | 自分のHP%/MP%が指定の値になった際に発生するイベント $1:自分のHP%、又はMP%値 |
mpp_$1 | |
lowhp | 自分のHP%/MP%が20%以下になった場合に発生するイベント 当イベントが発生した後、40%を超えるまで当イベントは発生しない。 |
lowmp | |
criticalhp | 自分のHP%、又はMP%が5%以下になった場合に発生するイベント 当イベントが発生した後、20%を超えるまで当イベントは発生しない。 |
criticalmp | |
hpplt76 | 自分のHP%が75%以下になったら発生するイベント |
hppgt75 | 自分のHP%が76%以上になったら発生するイベント |
mpplt50 | 自分のMP%が49%以下になったら発生するイベント |
mppgt49 | 自分のMP%が50%以上になったら発生するイベント |
hpmax_$1 | 自分のHP最大値が指定の値になった場合に発生するイベント ステータスや装備変更ウィンドウを開いた際、エリア移動したタイミングでイベントが発生する。 $1:HP最大値 |
mpmax_$1 | 自分のMP最大値が指定の値になった場合に発生するイベント ステータスや装備変更ウィンドウを開いた際、エリア移動したタイミングでイベントが発生する。 $1:MP最大値 |
examined_$1 | みつめられた際に発生するイベント $1:見つめてきた相手の名称 |
noammo | 弾・矢スロットの装備がなくなった際に発生するイベント |
イベント定義の書き方
- スタンダードな書き方
黒/白にジョブチェンジ時:「jobchange_BLM/WHM」 - 「*」(アスタリスク)を使って、条件の一部分がマッチすればOK
黒/サポなんでもOKにジョブにチェンジ時:「jobchange_BLM/*」
灼熱波、灼熱天候に変更時:「weather_Fire*」 - イベント定義は「|」で区切り、複数の条件をOR条件で記述できる
新月、又は満月のに変更時:「moon_Full_Moon|moon_New_Moon」
火属性天候への変更時か、火曜日への変更時:「weather_Fire*|day_Firesday」
※詳しくは、ワイルドカードと正規表現を参照
- コンソールで「autoexec regster <上記のイベント文字列> <コンソールコマンド>」として登録します。
- <コンソールコマンド>は、半角スペースがあってもかまいません。全てがコンソールコマンドとして解釈されます。「;」を使って複数のコマンドをつなげることが可能です。
(例)75%以下になったらユニコンレギンスを履き替えてメッセージ:「autoexec regsterq hpplt76 input /equip アミールブーツ;input /echo --- Change! Feets ---」
※説明をわかりやすくするため日本語を使用していますが、使用できるのは半角英数字のみです。 - <コンソールコマンド>に、「<」又は「>」を記述する際は「&lt;」「&gt;」に置き換える必要があります。
(例)「<me>」は「&lt;me&gt;」と記述しなければなりません。
※「&」は全角で記述されていますが、実際には半角で記述してください。
XMLの書き方
予めXMLファイルに定義を書き込んでおくことが出来ます。
<autoexec>
<register event="login" silent="true" runonce="true">drawdistance set 10</register>
</autoexec>
上記は初回ログイン時に「Drawdistance set 10」を打ち込むコマンドです。
- イベント文字列はevent=""に記述する
- silent="true"とすることで、イベント発生時にコンソール上に表示をしない(regsterqで登録したことと同意)
- runonce"true"とすることで、1回だけイベントが発生する(1回発生すると当定義はリストから消える)
- idは適当に割り振られる。「<regster id="23443"~」とすることで任意のIDを振ることが出来る。
また、他のXMLファイルを読み込むこともできます。
<autoexec>
<import>HOKAnoFILE.xml</import>
</autoexec>
<import>~</import>で、他のxmlファイルをAutoexecのXMLファイルとして読み込みます。