GearSwapはアクションに応じた装備に自動で着替えるためには、ルールに従った名前で装備を定義する必要があります。
装備定義名をルールに合致させないとGearSwapは装備を見つけてくれません。
GearSwapによる着替えの基本的な流れ
GearSwapは1つのアクションで、ファンクションが順番に動きます。
- precast(アクションの前処理)
- midcast(アクションの主処理)
- aftercast(アクションの後処理)
それぞれのファンクションで、アクションに合致した定義名の装備があれば着替えてくれます。
命名規則のルール
GearSwapで定められている命名規則は次の通りです。
- sets.precast
- sets.precast.FC
- sets.precast.JA
- sets.precast.WS
- sets.precast.RA
- sets.midcast
- sets.midcast.RA
- sets.midcast.Pet
- sets.idle
- sets.resting
- sets.engaged
- sets.defense
- sets.buff
命名規則には親子関係(ツリー構造)があり、子供の定義がなければ親の定義が採用されます。
私たちは、この定義の下にツリー構造で次のように装備セットを定義していきます。
sets.precast.FC = {}
sets.precast.FC['ディスペガ'] = set_combine(sets.precast.FC,{main="デイブレイクワンド",})
sets.precast.FC['インパクト'] = set_combine(sets.precast.FC,{head=empty,body="クレパスクラプリス",})
sets.precast.WS["サベッジブレード"] = {}
命名の優先度
命名規則には優先度が決められており、より具体的な定義になるほど優先度が高くなると考えてください。
ケアルの場合だとこうなります。
優先度 | 対応する属性 | 例 |
---|---|---|
1 | spell.name | sets.precast.FC[‘ケアル’] |
2 | spellMap | sets.precast.FC.Cure |
3 | spell.skill | sets.precast.FC[‘回復魔法’] |
4 | spell.type | sets.precast.FC.Whitemagic |
ケアルのFC装備を定義するだけでも、このような書き方ができてしまうのですが、どの書き方をしても正しく着替えが行われます。ただし、これらの定義が混在している場合、優先度に基づき1つしか採用されません。
spell.name
spell.nameで定義する場合のルールはこうです。
ケアルはWindower\res\spells.lua
で次のように定義されていますので、このjaに該当する部分を使います。
[1] = {id=1,en="Cure",ja="ケアル",cast_time=2,element=6,icon_id=86,icon_id_nq=6,levels={[3]=1,[5]=3,[7]=5,[20]=5},mp_cost=8,prefix="/magic",range=12,recast=5,recast_id=1,requirements=1,skill=33,targets=63,type="WhiteMagic"},
spellMap
spellMapで定義する場合のルールはこうです。
ケアル関連はWindower\addons\GearSwap\libs\Mote-Mappings.lua
で次のように定義されていますので、ケアルの場合はCureを使います。
['ケアル']='Cure',['ケアルII']='Cure',['ケアルIII']='Cure',['ケアルIV']='Cure',['ケアルV']='Cure',['ケアルVI']='Cure',
['フルケア']='Cure',
['ケアルラ']='Curaga',['ケアルラII']='Curaga',['ケアルラIII']='Curaga',
['ケアルガ']='Curaga',['ケアルガII']='Curaga',['ケアルガIII']='Curaga',['ケアルガIV']='Curaga',['ケアルガV']='Curaga',
Cureにはケアル1~6とフルケアが含まれていますので、sets.midcast.Cure
で定義すると全てのケアルをカバーできる装備セットとなるわけです。
ケアルガの場合はsets.midcast.Curaga
で装備セットを定義してくださいね。
spell.skill
skillの定義名はWindower\res\skills.lua
にあります。
skill | 名称 | 例 |
---|---|---|
Divine Magic | 神聖魔法 | sets.midcast[‘神聖魔法’] |
Healing Magic | 回復魔法 | sets.midcast[‘回復魔法’] |
Enhancing Magic | 強化魔法 | sets.midcast[‘強化魔法’] |
Enfeebling Magic | 弱体魔法 | sets.midcast[‘弱体魔法’] |
Elemental Magic | 精霊魔法 | sets.midcast[‘精霊魔法’] |
Dark Magic | 暗黒魔法 | sets.midcast[‘暗黒魔法’] |
Summoning Magic | 召喚魔法 | sets.midcast[‘召喚魔法’] |
Ninjutsu | 忍術 | sets.midcast[‘忍術] |
Singing | 歌唱 | sets.midcast[‘歌唱’] |
Blue Magic | 青魔法 | sets.midcast[‘青魔法’] |
Geomancy | 風水魔法 | sets.midcast[‘風水魔法’] |
spell.type
typeの定義名はWindower\res\spells.lua
にあります。
type | 名称 | 例 |
---|---|---|
WhiteMagic | 白魔法 | sets.midcast.WhiteMagic |
BlackMagic | 黒魔法 | sets.midcast.BlackMagic |
BlueMagic | 青魔法 | sets.midcast.BlueMagic |
SummonerPact | 召喚魔法 | sets.midcast.SummonerPact |
Geomancy | 風水魔法 | sets.midcast.Geomancy |
Ninjutsu | 忍術 | sets.midcast.Ninjutsu |
BardSong | 歌唱 | sets.midcast.BardSong |
Trust | フェイス | sets.midcast.Trust |
コメント
コメント一覧 (3件)
追記です、原因がわかりました
管理人さんのMote-Mappings.luaはNocturnal Soulsのwikiにあるものだと思われます
ここのだと、アスピルがDrainになっているのと青魔法、召喚履行が追記されているので公開して頂いてるロジックで着替えが出来そうです
よしざうるすさんのだと青魔法召喚履行が無いので着替えが出来ない人が居るのはこれが原因だと思います
なるほどですね・・・
よしざうるすさんの使っていると思っていましたが、Noct仕様のものを使っているかもしれません。
多くの方がエラーになる理由が分かりました。
色々修正反映しておきます。
ご報告ありがとうございました!
いつもお世話になってます
時々着替えがうまくいかないところがあるので調べてみたのですが
本文に「Drainにはドレインとアスピルが含まれています」とありますが
よしざうるすさんの日本語翻訳してあるMote-Mappings.luaを確認すると、アスピルはAspirになってます
ひょっとすると管理人さんの使ってるMote-Mappings.luaはバージョンが違うのかも?