プラグイン/Windower3系/SpellCast/お試し動作編
ごく基本的な自動着替えXMLを作成してSpellcastを動かしてみます。
同時に、日本語環境でSpellcastを利用する際の問題点(※)である=日本語装備名が使えないことを回避するためのツール「JPIDConv」の使い方を説明します。
(※)詳しくはFAQを参照してください。
同時に、日本語環境でSpellcastを利用する際の問題点(※)である=日本語装備名が使えないことを回避するためのツール「JPIDConv」の使い方を説明します。
(※)詳しくはFAQを参照してください。
1.まずは動かしてみましょう。
1-1.サンプルXMLファイルの作成
・Emeditor等のテキストエディタを開いて、次のXMLをコピーして、文字コード「UTF-8」で保存してください。
・Emeditorを使用している場合は、保存の際に「Unicodeサイン(BOM)を付ける」のチェックを外してください。
・ファイル名は日本語等全角文字以外であればなんでもかまいませんが、ここでは「test.xml」として保存しましょう。
・「Plugins\Spellcast」内に保存してください。
・Emeditor等のテキストエディタを開いて、次のXMLをコピーして、文字コード「UTF-8」で保存してください。
・Emeditorを使用している場合は、保存の際に「Unicodeサイン(BOM)を付ける」のチェックを外してください。
・ファイル名は日本語等全角文字以外であればなんでもかまいませんが、ここでは「test.xml」として保存しましょう。
・「Plugins\Spellcast」内に保存してください。
<?xml version="1.0" encoding="utf-8"?>
<spellcast>
<config
Debug="True"
HideErrors="false"
ShowGearSwaps="False"
/>
<sets>
<group name="Default" default="yes">
<set name="WARARA">
<head>\xFD\x07\x01\x3B\xA6\xFD</head>
</set>
<set name="DASH">
<feet>\xFD\x07\x01\x3D\x8A\xFD</feet>
</set>
</group>
</sets>
<rules>
<if Spell="King's Justice">
<Action type="equip" when="PreCast" set="WARARA" />
</if>
<if Spell="Raging Rush">
<Action type="equip" when="PreCast" set="DASH"/>
</if>
</rules>
</spellcast>
1-2.Spellcastでの読み込み
・WindowerコンソールからSpellcastをロードしてください。
・Spellcastをロードしたら、Windowerコンソールに次のように入力して、test.xmlを読み込みます。
・WindowerコンソールからSpellcastをロードしてください。
・Spellcastをロードしたら、Windowerコンソールに次のように入力して、test.xmlを読み込みます。
sc f test
1-3.動作
・頭装備と足装備を外して、ワラーラターバンとダッシューズをかばんに入れておいてください。
・FFチャット行に「/ws キングズジャスティス」と入力してください。
※もちろん、実際に敵相手にキングズジャスティスを使ってもかまいません。
→ ワラーラターバンをかぶったと思います。
・同様に次はレイジングラッシュを → ダッシューズを履きます。
・頭装備と足装備を外して、ワラーラターバンとダッシューズをかばんに入れておいてください。
・FFチャット行に「/ws キングズジャスティス」と入力してください。
※もちろん、実際に敵相手にキングズジャスティスを使ってもかまいません。
→ ワラーラターバンをかぶったと思います。
・同様に次はレイジングラッシュを → ダッシューズを履きます。
このように、魔法やアビ、WSの使用などをトリガーにして、着替えなどをするのがSpellcastの一機能です。
2.自分でXMLを作る
XMLは前後<?xml~、<spellcast>のお約束部分を除くと、3つの部分から構成されています。
これが、魔法、アビ、WSをトリガーにして装備変更を行うXMLの、基本形だと考えてください。
これが、魔法、アビ、WSをトリガーにして装備変更を行うXMLの、基本形だと考えてください。
<?xml version="1.0" encoding="utf-8"?> <spellcast> |
最初から2行は必ずコレ |
<config Debug="True" HideErrors="false" ShowGearSwaps="False" /> |
[設定部分] |
<sets> <group name="①" default="yes"> <set name="②"> <Head>アスカルツッケット</Head> <Body>ホーバージョン</Body> </set> <set name="③"> <Head>ワラーラターバン</Head> <Body>アスカルコラジン</Body> </set> </group> </sets> |
[装備セット設定部分] |
<rules> <if Spell="④"> <Action type="equip" when="PreCast" set="②" /> <Action type="equip" when="AfterCast" set="③" /> </if> </rules> |
[動作設定部分] |
</spellcast> | 最後の行は必ずコレ |
設定部分 <Config>
とりあえずこのように設定してください。
詳しくはこちらをご確認ください。→plugins/3/Spellcast/XMLリファレンス
詳しくはこちらをご確認ください。→plugins/3/Spellcast/XMLリファレンス
装備セット設定部分 <Sets>~</Sets>
Spellcastは、装備セットといわれる装備の組み合わせを作っておいて、「④という魔法を詠唱開始したときに、②という装備セットに着替える」という設定を、動作設定部分で行うことで、トリガーと同時に装備変更を行うようにします。
- ①は装備グループ名です。どんな名前でも結構です。
- ②③にはそれぞれ好きな名前を設定してください。何用の装備なのかわかりやすい名前を付けると良いでしょう。
- 装備名は日本語でOKです。
- 装備箇所の指定は次の表を参考にしてください。<装備箇所名>装備名</装備箇所名>で設定します。
装備箇所名 | |||
Main | Sub | Range | Ammo |
Head | Neck | LEar | REar |
Body | Hands | LRing | RRing |
Back | Waist | Legs | Feet |
動作設定部分 <Rules>~</Rules>
装備変更のトリガーとなる魔法/アビ/WSは<Rules>内で設定します。
基本はこの形で、<Rules>~</Rules>の中に、<If>~</If>や<Else>~</Else>、<ElseIf>~</ElseIf>を複数記述することができます。※<Else><ElseIf>についてはplugins/3/SpellCast/XMLリファレンスで詳しく説明しています。
<If Spell="魔法等名称">
<Action~・・略
</If>
<If Spell="魔法等名称">
<Action~・・略
</If>
- 魔法/アビ/WS名の指定
魔法/アビ/WS名は「<If Spell="魔法等名称">」で指定します。
・魔法/アビ/WS名は英語名で記述
英語名の調べ方ですが、plugins\resources\フォルダ内にあるspells.xmlを開いて、日本語の魔法名で検索してください。
見つかった行の「english="xxxxxx"」という部分が英語名です。
たとえば、ケアルの場合は、「english="Cure"」となっているので英語名は「Cure」となります。
アビ/WSの場合は、abils.xmlを探してください。
英語名の調べ方ですが、plugins\resources\フォルダ内にあるspells.xmlを開いて、日本語の魔法名で検索してください。
見つかった行の「english="xxxxxx"」という部分が英語名です。
たとえば、ケアルの場合は、「english="Cure"」となっているので英語名は「Cure」となります。
アビ/WSの場合は、abils.xmlを探してください。
・複数指定が可能
「|」で区切ることで複数の魔法等を指定することができます。(「|」はShift+\キーで入力)
たとえば、ケアルI~Vまですべてを同じIfに記述したい場合は
「<If Spell="Cure|Cure II|Cure III|Cure IV|Cure V">」と記述します。
「|」で区切ることで複数の魔法等を指定することができます。(「|」はShift+\キーで入力)
たとえば、ケアルI~Vまですべてを同じIfに記述したい場合は
「<If Spell="Cure|Cure II|Cure III|Cure IV|Cure V">」と記述します。
また、「*」を使う方法もあります。
「<If Spell="Cure*">」と記述すると、Cureから始まる名前の魔法/アビ/WSすべてに反応します。
この例では、ケアルガ系(=英語名:Curega~Curega V)も反応しますので気をつけてください。
「<If Spell="Cure*">」と記述すると、Cureから始まる名前の魔法/アビ/WSすべてに反応します。
この例では、ケアルガ系(=英語名:Curega~Curega V)も反応しますので気をつけてください。
- 着替えの指定
着替えの指示は「<Action type="equip" when="タイミング" set="装備セット名">」で指定します。
・装備セット名
<set name="・・">~</set>で指定した装備セット名を記述します。
<set name="・・">~</set>で指定した装備セット名を記述します。
・タイミング
着替えを行うタイミングを指定します。魔法選択~着弾後までの流れは次の順で実行されます。
0.トリガーとなる魔法を選択、又は/ma 魔法で実行
1.When="Precast"で指定した着替えを実行
2.魔法の詠唱を開始
着替えを行うタイミングを指定します。魔法選択~着弾後までの流れは次の順で実行されます。
0.トリガーとなる魔法を選択、又は/ma 魔法で実行
1.When="Precast"で指定した着替えを実行
2.魔法の詠唱を開始
3.When="Midcast"で指定した着替えを実行・・・魔法詠唱開始後
4.魔法の詠唱が完了(着弾)
5.When="Aftercast"で指定した着替えを実行・・・標準詠唱時間の1.5秒後
4.魔法の詠唱が完了(着弾)
5.When="Aftercast"で指定した着替えを実行・・・標準詠唱時間の1.5秒後
魔法着弾時やWS実行時の装備はPrecastを指定、終了後の装備はAftercastを指定すると良い、ということになります。
ここまでの設定で、「④の魔法を選択/入力>②の装備に着替え>④の詠唱開始>着弾>③の装備に着替え」というXMLが出来上がりました。それでは保存して、3.JPIDConvの使い方に進みます。
・「Plugins\Spellcast」内に保存してください。
・文字コードはUTF-8で保存してください。
・ファイル名は、好きな名前+「_jp.xml」としてください。理由は「3.JPIDConvの使い方」で説明します。
・「Plugins\Spellcast」内に保存してください。
・文字コードはUTF-8で保存してください。
・ファイル名は、好きな名前+「_jp.xml」としてください。理由は「3.JPIDConvの使い方」で説明します。
3.JPIDConvの使い方
XMLは完成しましたが、このままでは日本語版のFFXIでは動作しません。 ※理由はFAQ参照
XMLの日本語装備名を変換してやる必要があります。この変換処理を行うのが、当板有志が作成してくれたJPIDConvです。
XMLの日本語装備名を変換してやる必要があります。この変換処理を行うのが、当板有志が作成してくれたJPIDConvです。
- JPIDConvのインストール
・FF11 RCM Project よりダウンロードして、「plugins\spellcast」内(2で作ったXMLと同じ場所)に置いてください。
・JPIDConvは以下の条件を満たすPC上で動かしてください。
「.NET Framework 2.0」・・・・Microsoftのホームページからダウンロード(vistaは不要)
「FFXiが導入されていること」
・JPIDConvは以下の条件を満たすPC上で動かしてください。
「.NET Framework 2.0」・・・・Microsoftのホームページからダウンロード(vistaは不要)
「FFXiが導入されていること」
- JPIDConvの使い方
JPIDConv.exeを実行するだけです。すると、cache_0_6.txt、cache_0_7.txtというファイルと
2で作った「好きな名前_jp.xml」の_jpを除いたファイルが出来上がっているかと思います。
この_jpを除いたxmlファイルが、実際にspellcastに読み込ませるファイルとなります。
したがって、修正するたびにJPIDConv.exeで変換で変換してやる必要があります。
2で作った「好きな名前_jp.xml」の_jpを除いたファイルが出来上がっているかと思います。
この_jpを除いたxmlファイルが、実際にspellcastに読み込ませるファイルとなります。
したがって、修正するたびにJPIDConv.exeで変換で変換してやる必要があります。
・cache_0_6.txt、cache_0_7.txtはJPIDConvが動作するために必要なファイルです。そのまま残して置いてください。
4.SpellcastへのXMLファイルの読み込み
1.で説明したとおり、Spellcastをロードした状態でWindowerコンソールにて「sc f xmlファイル名」として
XMLファイルを読み込んでください。もちろん、3.で変換後のほうを読み込むので、「_jp」のつかないファイル名です。
XMLファイルを読み込んでください。もちろん、3.で変換後のほうを読み込むので、「_jp」のつかないファイル名です。
無事に読み込まれた場合には、Windowerコンソール上にファイル名、グループ名、
<set>~</set>の数、<If></If>の数が表示されます。
自分で作ったXMLファイルの数と一致していれば、XML文法や文字コードの問題はなく正常に読めている、ということになります。
<set>~</set>の数、<If></If>の数が表示されます。
自分で作ったXMLファイルの数と一致していれば、XML文法や文字コードの問題はなく正常に読めている、ということになります。
5.装備セット名を直接指定しての着替え
魔法等をトリガーにするのではなく、任意のタイミングで装備変更をしたいこともあると思います。
その場合は、Windowerコンソールより次のように入力してください。
その場合は、Windowerコンソールより次のように入力してください。
sc s 装備セット名 (FFXIのマクロに登録する場合は)//sc s 装備セット名
入力した瞬間に指定の装備セットに着替えることができます。
ここまでの説明で、自動装備変更は概ね理解ができたと思います。
あとは、IfやSetを組み合わせて、お好きなXMLを作ってみてください。
あとは、IfやSetを組み合わせて、お好きなXMLを作ってみてください。
ここから先の説明は、これまでの説明をベースに、もう少し高度な使い方を実例を加えてご説明します。
より高度なXMLを作成したい場合は、こちら→plugins/3/Spellcast/XMLリファレンスをご確認頂いて理解を深めてください。
【1.初回導入編>2.お試し動作編>3.XML定義TIPS】
変更履歴
2009年5月14日 2.3より<Rule>を廃止、<If>に変更することによる変更
2009年5月14日 2.3より<Rule>を廃止、<If>に変更することによる変更