Windower 日本語Wiki

XMLリファレンス

最終更新:

匿名ユーザー

- view
だれでも歓迎! 編集
プラグイン/Windower3系SpellCast/XMLリファレンス


当ページは、本家サイトSpellcastのXMLファイルに関して纏めたページです。
参考にした本家ページ

目次


XMLファイルの基本構成

<?xml version="1.0" encoding="utf-8"?>
<spellcast>
最初から2行は必ずコレ
<config ~ /> [基本動作に関する設定部分]
<Variables>
</Variables>
[Spellcastで使用できる「ユーザー変数」の定義部分]
<sets>
</sets>
[装備セット定義部分]
<rules>
</rules>
[魔法・アビ使用時などの動作に関する設定部分]
</spellcast> 最後の行は必ずコレ


<Config>

<config
  定義項目名="値"
  ・
  ・
/>
定義項目名 必須 説明
AutoLoadXML × True
又は
False
default.xmlのみに設定可能
Trueを設定しておくと、ジョブチェンジを行った際に自動的に対応するXMLファイルを読み込む。次の順でXMLファイル名を検索し、該当したファイルを読み込む。
1.「キャラ名_メインジョブ名_サブジョブ名.xml」
2.「キャラ名_メインジョブ名.xml」
3.「メインジョブ名_サブジョブ名.xml」
4.「メインジョブ名.xml」
RequireVersion × Spellcastのバージョン番号 Spellcast.dllのバージョンが、当定義項目に示されたバージョン番号以上であることをチェックする。XML定義例を他者へ展開して共有する際に使用するとよい
Debug × True又はFalse Trueを設定すると動作ログ(spellcast\spellcast.log)が出力される。動作テスト時に出力して確認する
ShowGearSwaps × True又はFalse Trueを設定すると装備変更時にFFXIログ画面上に装備名が表示される。ただし、日本語環境では文字化け、或いはJPIDConv変換後の値が表示されるため意味はない。当設定での出力はサーバに送信されず他者には見えない(/echoと同じ)
DisableWS × True又はFalse Trueを設定すると、ウェポンスキル実行時の動作を行わなくなる
DisableJA × True又はFalse Trueを設定すると、ジョブアビリティ実行時の動作を行わなくなる
DisablePET × True又はFalse Trueを設定すると、ペットコマンド実行時の動作を行わなくなる
DisableSO × True又はFalse Trueを設定すると、歌実行時の動作を行わなくなる
DisableNIN × True又はFalse Trueを設定すると、忍術実行時の動作を行わなくなる
DisableMA × True又はFalse Trueを設定すると、魔法実行時の動作を行わなくなる
HELMSet × 装備セット名 Specify the set of gear you would like to use when doing HELM.
FishingSet × 装備セット名 釣り実行時に変更する、装備セット名
ShowSpellInfo × True又はFalse Trueを設定すると魔法実行時に、リキャ時間、消費MP、キャスト時間がFFXIログ画面上に装備名が表示される。当設定での出力はサーバに送信されず他者には見えない(/echoと同じ)


<Sets>

<Sets>
  <Group 定義項目名="値"・・・>
    <Set 定義項目名="値"・・・>
      <装備箇所>装備名</装備箇所>
    </Set>
  </Group>
</Sets>

<Group>

定義項目名 必須 説明
Name 任意の装備グループ名 装備グループに名前をつける。「|」で区切って別名を付けることができる。(|は実際は半角)
default × True又はFalse Trueを設定すると、XMLファイルを読み込んだ際に当グループが選択される
inherit × 装備グループ名 指定した装備グループの、装備セットを継承した装備グループとする

inheritの例
<Sets>
  <Group Name="Def">
     <Set Name="Standard">
       <Lring>全知の指輪</Lring>
       <Rring>スノーリング</Rring>
     </Set>
     <Set Name="MaAcc">
       <Lring>オメガリング</Lring>
     </Set>
  </Group>
  <Group Name="Assult" inherit="Def">
     <Set Name="Standard">
       <Rring>バルラーンリング</Rring>
     </Set>
  </Group>
</Sets>
  上記の例は、[Def]とDefを継承した[Assult]の2グループからなる装備セットです。
  まず、グループがDefの状態で装備セットStandardを装備すると(コンソールでsc s Standard)、左指:全知、右指:スノーが装備されます。
  • 装備部分別の継承・・・・・グループをAssultに切り替えて(コンソールでsc g Assult)、Standardセットを装備すると左指:全知、右指:バルラーンとなります。AssultグループのStandardセットには左指の定義はありませんが、Defを継承しているので左指は全知、右指はAssultのStandardに上書きされてバルラーンとなります。
  • 装備セット全ての継承・・・・・グループAssultの状態で、MaAccセットを装備すると左指:オメガリングが装備されます。inheritの定義が無い場合は「MaAccセットはAssultグループには無い」とエラーが出ます。
  このように「装備セット名を変更せずに、一部分だけの装備を変えたい」場合に便利な定義方法です。

<Set>

定義項目名 必須 説明
Name 任意の装備セット名 装備セットに名前をつける。「|」で区切って別名を付けることができる。(|は実際は半角)
BaseSet × 装備セット名 同グループ内で継承元とする装備セットを指定
BaseGroup × 装備グループ名 他グループの装備セットを継承元とする場合に使用。BaseGroupを使用時はBaseSet設定が必須。

BaseSetの例
<Sets>
  <Group Name="Def">
     <Set Name="Standard">
       <Lring>全知の指輪</Lring>
       <Rring>スノーリング</Rring>
     </Set>
     <Set Name="MaAcc" BaseSet="Standard">
       <Lring>オメガリング</Lring>
     </Set>
  </Group>
<Sets>
  • 装備セットStandardに着替えると、左指:全知、右指:スノー
  • 装備セットMaAccに着替えると、左指:オメガ、右指:スノーとなる。MaAccセットには右指の定義はないが、Standardセットを継承しているので右指も装備変更されます。

装備箇所名
Main Sub Range Ammo
Head Neck LEar REar
Body Hands LRing RRing
Back Waist Legs Feet
  • 装備を外したい場合は、「<装備箇所名>remove</装備箇所名>」と定義する。
  • 継承元の装備セットで「<装備箇所名 lock>remove</装備箇所名>」と設定すると、継承先での上書きが行われず元の装備のまま維持する。



<Variables>

VariablesではSpellcast内で利用するユーザー変数を設定できる。
<Variables clear="値">
 <Var Name="値">初期値</Var>
 ・
 ・
</Variables>
定義項目名 必須 説明
Variables clear × True又はFalse Trueを設定すると、XMLを読み込んだ際、又は再読み込みした際に、ユーザー変数を全て消去する。Falseの場合では、ユーザー変数、ユーザー変数の値を保持する(この場合はSpellcastのunloadでクリアされる)

<Var>

定義項目名 必須 説明
Name 任意のユーザー変数名 ユーザー変数名を指定する
初期値 任意の値 ユーザー変数に割り当てる初期の値を設定する



<Rules>

Rules内の定義によって、魔法やアビ、又はプレイヤーのステータス変更時などの動作を設定することができます。
Rulesは、動作条件を指定する<If>、<Elseif>、<Else>、行動を指定する<Action>の計4つの命令文からなる。
<Rules>
 <If 条件式A>
  <Action アクション指定①>
 </If>
 <Elseif 条件式B>
  <Action アクション指定②>
 </Elseif>
 <Else>
  <Action アクション指定③>
 </Else>
</Rules>

<If>

  • <If 条件式>~</If>とは「条件に当てはまる場合に、<If>~</If>内を処理する」というものであり、条件式は例をあげると「使用した魔法の属性が炎である」や「現在MPが51%以下」などさまざま指定が可能です。
  • 条件式については、こちらで詳しく説明します。→条件式

<Elseif>

  • <Elseif>~</Elseif>は「直前の<If>~</if>の条件に当てはまらなかった場合であり、且つ、<Elseif 条件式>に当てはまる場合に、<Elseif>~</Elseif>内を処理する」というものである。上の例では、「条件式Aに当てはまらず条件式Bに当てはまった場合に、アクション指定②を処理」といった動きとなります。
  • 条件式については、こちらで詳しく説明します。→条件式

<Else>

  • <Else>~</Else>は、「直前の<If>又は<Elseif>に当てはまらなかった場合に、<Else>~</Else>内を処理する」というものであり、上の例では「条件式A、条件式Bともに当てはまらなかった場合にアクション指定③を処理する」といった動きとなります。

<Action>

<Action type="Type値" 定義項目=値・・・ />
Type値 Typeの説明
定義項目 必須 値と説明
ShowSpellInfo 使用した魔法の情報をFFXIログ上に表示する。この出力はサーバに送信されず他者には見えない
CancelSpell 使用した魔法・アビをキャンセルする。
ChangeSpell 使用した魔法やアビを別の魔法・アビに変更する
<action type="ChangeSpell" Spell="Cure III" />
Spell 変更対象の魔法・アビ名
ChangeTarget 魔法・アビの対象を変更する
Target 変更するターゲット
DefaultTarget 魔法・アビの対象を指定しなかった場合に付与する標準のターゲット
Target 標準とするターゲット
Command コンソールコマンドを実行する
(例)<Action Type="Command" When="タイミング指定">任意のコンソールコマンド</Action>
When × コンソールコマンドを実行するタイミングを指定。[タイミング定義]
Equip 装備を変更する
(例)<Action Type="Command" When="タイミング指定" Set="装備セット名" SetGroup="装備グループ名"/>
When × 装備変更するタイミングを指定。[タイミング定義]
Set 変更する装備セット名
SetGroup × 装備グループ名。指定のグループ内のSetで指定した装備セットに変更する。
省略した場合は現在のグループ内でSetで指定した装備セットに変更する。
GearDelay 装備変更を開始する前の待ち時間を設定する
Delay 秒数を指定(小数点以下指定可能)
CastDelay アビ・魔法を実行する前の待ち時間を設定する ※装備変更完了後~アビ・魔法実行の間の待ち
Delay 秒数を指定(小数点以下指定可能)
MidCastDelay アビ・魔法詠唱開始後のタイミングであるMidCastの待ち時間を設定する。デフォルトでは魔法詠唱開始後0.6秒がMidcastのタイミングとなっている
Delay 秒数を指定(小数点以下指定可能)
AfterCastDelay 詠唱完了後のタイミングであるAftercastの待ち時間を設定する。デフォルトでは魔法詠唱完了後1.5秒がAftercastのタイミングとなっている
Delay 秒数を指定(小数点以下指定可能)
AddToChat 任意のテキストをFFXIログに出力する。当ログはサーバには送信されず他者からは見えない。
<Action Type="AddToChat" Color=32>任意のテキスト</Action>
Color × テキストの色を指定する。デフォルトでは32。色に関してはこちらを参照
When × テキストを出力するタイミングを指定する。[タイミング定義]
Return Spellcastの処理を停止する
ChangeLock 装備変更のロック・ロック解除を行う
When × ロック・ロック解除するタイミングを指定する。[タイミング定義]
Slot × ロック・ロック解除する装備箇所を指定する。省略した場合は全ての装備箇所が指定されたものとする
Lock × ロックする場合は"yes"、ロック解除する場合は"no"を指定する
Disable SpellCastによる装備変更を無効に切り替える
Slot × SpellCastによる装備変更を無効にする装備箇所を指定する。省略した場合は全ての装備箇所を無効にする
Enable SpellCastによる装備変更を有効に切り替える
Slot × SpellCastによる装備変更を有効にする装備箇所を指定する。省略した場合は全ての装備箇所を有効にする
Var ユーザー変数の値を変更する
Cmd ユーザー変数を変更するコマンドを記述する。
<Action type="Var" cmd="set ユーザー変数名 値" />・・・値を設定
<Action type="Var" cmd="inc ユーザー変数名" />・・・1加算
<Action type="Var" cmd="dec ユーザー変数名" />・・・1減算

  • Whenでのタイミング指定
    • Precast・・・魔法・アビ詠唱開始前
    • Midcast・・・魔法・アビ詠唱中。デフォルトでは詠唱開始後、0.6秒後
    • Aftercast・・・魔法・アビ詠唱完了後。デフォルトでは詠唱完了後、1.5秒後
    • ※Whenを省略した場合は、Precastとみなされる。

  • アビ・魔法コマンド入力からの実行順序
      • 1.魔法・アビを実行(「/ma 魔法」、又は魔法リストから選択)
      • 2.Rulesに記述した条件式を処理し、Precast,Midcast,Aftercastに実行するActionを確定する。
      • 3.待つ(GearDelay設定値、デフォルトではほぼ待ちなし)
      • 4.実行タイミングにPrecastを設定したActionをFFXIサーバーに送信
      • 5.待つ(PrecastDelay設定値、デフォルトでは0.1秒)
      • 6.1.で実行した魔法・アビコマンドをFFXIサーバーに送信
      • 7.待つ(MidcastDelay設定値、デフォルトでは0.6秒)
      • 8.実行タイミングにMidcastを設定したActionをFFXIサーバーに送信
      • 9.待つ(魔法・アビの詠唱完了まで)
      • 10.待つ(AftercastDelay設定値、デフォルトでは1.5秒)
      • 11.実行タイミングにAftercastを設定したActionをFFXIサーバーに送信









































タグ:

+ タグ編集
  • タグ:
記事メニュー
ウィキ募集バナー