2025/4/21 全ジョブロジック大幅変更 コピペする前に必ずバックアップしてください!

【GearSwap】青魔道士のMote-libs用コード

青魔道士のMote-libsコードです。

目次

ソースコード

ファイル構成

GearSwap/
  └ data/
    ├ user-globals.lua共通ファイル
    ├ BLU.lua(ジョブロジック)
    └ キャラクター名/
      └ BLU_gear.lua(装備定義)

ジョブロジック

function get_sets()
    mote_include_version = 2    
    include('Mote-Include.lua')
    set_language('japanese')
end

function job_setup()
    state.Buff["エフラックス"]       = buffactive["エフラックス"] or false
    state.Buff["エンチェーンメント"] = buffactive["エンチェーンメント"] or false
    state.Buff["コンバージェンス"]   = buffactive["コンバージェンス"] or false
    state.Buff["ディフュージョン"]   = buffactive["ディフュージョン"] or false
    state.Buff["ブルーチェーン"]     = buffactive["ブルーチェーン"] or false
    state.Buff["ブルーバースト"]     = buffactive["ブルーバースト"] or false

    -- gs c cycle OffenseMode
    state.OffenseMode:options('Normal','Fixed')
    
    -- gs c cycle IdleMode
    state.IdleMode:options('Normal','Refresh')
    
    -- gs c cycle MainWeapons
    state.MainWeapons   = M{'Tizona','Naegling','Maxentius','QutrubKnife'}
    
    -- gs c cycle SubWeapons
    state.SubWeapons    = M{'SakpatasSword'}
    
    -- gs c cycle TreasureHunter
    state.TreasureHunter = M(false, 'TreasureHunter')
end

function job_post_midcast(spell, action, spellMap, eventArgs)
    spellMap = job_get_spell_map(spell, spellMap)
    if spell.skill == '青魔法' then
        for buff,active in pairs(state.Buff) do
            if active and sets.buff[buff] then
                equip(sets.buff[buff])
            end
        end
    end
    if state.TreasureHunter.value then
        equip(sets.TreasureHunter)
    end
end

function job_state_change(stateField, newValue, oldValue)
    if stateField == 'Offense Mode' then
        if newValue == 'Normal' then
            enable('main','sub')
        else
            equip(get_melee_set())
            disable('main','sub')
        end
    end
end

function customize_idle_set(idleSet) 
    idleSet = set_combine(idleSet,{main=sets.Weapons.Evasion})
    idleSet = set_combine(idleSet,{sub=sets.Weapons.Evasion})
    return idleSet
end

装備定義

function init_weaponns()
    --デフォルト武器を設定
    send_command('gs c set MainWeapons Tizona')
    send_command('gs c set SubWeapons SakpatasSword')
end
function init_gear_sets()
    lockstyleset = 101

    sets.buff['エフラックス']           = {legs="HSタイト+3"}
    sets.buff['エンチェーンメント']     = {}
    sets.buff['コンバージェンス']       = {}
    sets.buff['ディフュージョン']       = {feet="LLチャルク+3"}
    sets.buff['ブルーチェーン']         = {}
    sets.buff['ブルーバースト']         = {feet="HSバシュマク+3"}
    sets.Weapons = {}
    sets.Weapons.Tizona                 = {name="ティソーナ"}
    sets.Weapons.SakpatasSword          = {name="サクパタソード"}
    sets.Weapons.Naegling               = {name="ネイグリング"}
    sets.Weapons.Maxentius              = {name="マクセンチアス"}
    sets.Weapons.QutrubKnife            = {name="クトゥルブナイフ"}
    sets.Weapons.EtherealDagger         = {name="幽世の短剣"}
    sets.Weapons.Evasion                = {name="シャルウル"}
    sets.Weapons.Slip  					= {name="カリブルヌス"}

    sets.TreasureHunter = {
        ammo="完璧な幸運の卵",
        head="ヴォルトキャップ",
        hands="ヴォルトブレーサー",
        waist="チャークベルト",
    }

    sets.idle = {
        ammo="アマークラスター",
        head={ name="無の面",priority=14},
        body={ name="ニャメメイル",priority=16},
        hands={ name="ニャメガントレ",priority=13},
        legs={ name="ニャメフランチャ",priority=15},
        --feet={ name="ニャメソルレット",priority=12},
        feet="ヒポメネソックス+1",
        neck={ name="バーシチョーカー+1", augments={'Path: A',}},
        waist="無の腰当",
        left_ear="エアバニピアス",
        right_ear="インフューズピアス",
        left_ring="守りの指輪",
        right_ring="シュネデックリング",
        back="無の外装",
    }

    sets.idle.Refresh = set_combine(sets.idle, {
        ammo="ストンチタスラム+1",
        head={ name="ヘルクリアヘルム", augments={'Weapon skill damage +2%','AGI+6','"Refresh"+2','Accuracy+9 Attack+9',}},
        body="HSミンタン+3",
        hands={ name="ヘルクリアグローブ", augments={'Spell interruption rate down -6%','Attack+5','"Refresh"+2','Accuracy+8 Attack+8',}},
        legs={ name="ヘルクリアトラウザ", augments={'Pet: VIT+10','"Subtle Blow"+10','"Refresh"+2','Accuracy+8 Attack+8',}},
        feet={ name="ヘルクリアブーツ", augments={'"Mag.Atk.Bns."+17','STR+9','"Refresh"+2',}},
        neck="シビルスカーフ",
        waist="プラチナモグベルト",
    })

    sets.engaged = {
        ammo="コイストボダー",
        head="マリグナスシャポー",
        body="マリグナスタバード",
        hands="マリグナスグローブ",
        legs="マリグナスタイツ",
        feet="マリグナスブーツ",
        neck={ name="ミラージストール+2", augments={'Path: A',}},
        waist="霊亀腰帯",
        left_ear="素破の耳",
        right_ear={ name="ハシシンピアス+2", augments={'System: 1 ID: 1676 Val: 0','Accuracy+20','Mag. Acc.+20','"Dbl.Atk."+8','STR+15 INT+15',}},
        left_ring="シーリチリング+1",
        right_ring="エポナリング",
        back={ name="ロスメルタケープ", augments={'DEX+20','Accuracy+20 Attack+20','DEX+10','"Dbl.Atk."+10','Phys. dmg. taken-10%',}},
    }
    sets.precast.RA ={range="ラミアベーン"}

    sets.precast.JA['アジュールロー'] = {hands="LLバズバンド+1"}
    sets.precast.JA['ブルーバースト'] = {hands="HSバズバンド+3"}

    sets.precast.FC = {
        ammo="サピエンスオーブ",
        head={ name="カマインマスク+1", augments={'Accuracy+20','Mag. Acc.+12','"Fast Cast"+4',}},
        body="ピンガチュニック+1",
        hands="HSバズバンド+3",
        legs="ピンガズボン+1",
        feet="ニャメソルレット",
        neck="オルンミラトルク",
        waist={name="プラチナモグベルト",priority=16},
        left_ear="エテオレートピアス",
        left_ring={ name="ゼラチナスリング+1", augments={'Path: A',},priority=15},
        right_ring="メダダリング",
        back={ name="フィフォレケープ+1", augments={'Path: A',}},
    }
    sets.precast.FC['青魔法']=set_combine(sets.precast.FC,{body="HSミンタン+3"})

    sets.precast.WS.Critical = {
        ammo="コイストボダー",
        head={ name="ブリスタサリット+1", augments={'Path: A',}},
        body="エンフォサハーネス",
        hands="HSバズバンド+3",
        legs="HSタイト+3",
        feet="セレオイドグリーヴ",
        neck={ name="ミラージストール+2", augments={'Path: A',}},
        waist="フォシャベルト",
        left_ear="オドルピアス",
        right_ear={ name="ハシシンピアス+2", augments={'System: 1 ID: 1676 Val: 0','Accuracy+20','Mag. Acc.+20','"Dbl.Atk."+8','STR+15 INT+15',}},
        left_ring="イラブラットリング",
        right_ring="エポナリング",
        back={ name="ロスメルタケープ", augments={'DEX+20','Accuracy+20 Attack+20','DEX+10','Crit.hit rate+10',}},
    }

    sets.precast.WS.Damage = {
        ammo="オシャシャの原論文",
        head="HSカヴク+3",
        body={ name="ニャメメイル", augments={'Path: B',}},
        hands={ name="ニャメガントレ", augments={'Path: B',}},
        legs={ name="ニャメフランチャ", augments={'Path: B',}},
        feet={ name="ニャメソルレット", augments={'Path: B',}},
        neck={ name="ミラージストール+2", augments={'Path: A',}},
        waist={ name="セールフィベルト+1", augments={'Path: A',}},
        left_ear={ name="胡蝶のイヤリング", augments={'Accuracy+4','TP Bonus +250',}},
        right_ear={ name="ハシシンピアス+2", augments={'System: 1 ID: 1676 Val: 0','Accuracy+20','Mag. Acc.+20','"Dbl.Atk."+8','STR+15 INT+15',}},
        left_ring="イラブラットリング",
        right_ring="エパミノダスリング",
        back={ name="ロスメルタケープ", augments={'STR+20','Accuracy+20 Attack+20','STR+10','Weapon skill damage +10%',}},
    }

    sets.precast.WS.Magic = {
        ammo="ペムフレドタスラム",
        head="HSカヴク+3",
        body={ name="ニャメメイル", augments={'Path: B',}},
        hands={ name="ニャメガントレ", augments={'Path: B',}},
        legs={ name="ニャメフランチャ", augments={'Path: B',}},
        feet={ name="ニャメソルレット", augments={'Path: B',}},
        neck="シビルスカーフ",
        waist="スクリミルコード",
        left_ear="王将の耳飾り",
        right_ear="フリオミシピアス",
        left_ring="エパミノダスリング",
        right_ring="メダダリング",
        back={ name="コンフラワーケープ", augments={'MP+23','Accuracy+3','Blue Magic skill +10',}},
    }

    sets.precast.WS['レクイエスカット'] = set_combine(sets.precast.WS.MultDamagei, {})
    sets.precast.WS['シャンデュシニュ'] = set_combine(sets.precast.WS.Critical, {})
    sets.precast.WS['サベッジブレード'] = set_combine(sets.precast.WS.Damage, {})
    sets.precast.WS['エクスピアシオン'] = set_combine(sets.precast.WS.Damage, {})
    sets.precast.WS['ブラックヘイロー'] = set_combine(sets.precast.WS.Damage, {})
    sets.precast.WS['サンギンブレード'] = set_combine(sets.precast.WS.Magic, {head="妖蟲の髪飾り+1"})

    sets.midcast['強化魔法'] = {
        head={ name="テルキネキャップ", augments={'"Conserve MP"+5','Enh. Mag. eff. dur. +10',}},
        body={ name="テルキネシャジュブ", augments={'"Conserve MP"+5','Enh. Mag. eff. dur. +10',}},
        hands={ name="テルキネグローブ", augments={'"Cure" potency +7%','Enh. Mag. eff. dur. +10',}},
        legs={ name="テルキネブラコーニ", augments={'"Conserve MP"+5','Enh. Mag. eff. dur. +10',}},
        feet={ name="テルキネピガッシュ", augments={'"Conserve MP"+5','Enh. Mag. eff. dur. +10',}},
        neck="インカンタートルク",
        waist="オリンポスサッシュ",
        left_ear="アンドアーピアス",
        left_ring="守りの指輪",
        right_ring="スティキニリング+1",
        back={ name="フィフォレケープ+1", augments={'Path: A',}},
    }

    sets.midcast['アクアベール'] = set_combine(sets.midcast['強化魔法'] ,{
        head={ name="AMコイフ+1", augments={'MP+80','Mag. Acc.+20','"Mag.Atk.Bns."+20',}},
        legs="シェダルサラウィル",
        waist="エンパチコスロープ",
    })

    sets.midcast.Cure={
        ammo="ストンチタスラム+1",
        head="ニャメヘルム",
        body="ピンガチュニック+1",
        hands={ name="テルキネグローブ", augments={'"Cure" potency +7%','Enh. Mag. eff. dur. +10',}},
        legs="ピンガズボン+1",
        feet="ニャメソルレット",
        neck={ name="アンムーヴカラー+1", augments={'Path: A',}},
        waist={name="プラチナモグベルト",priority=16},
        left_ear={ name="オノワイヤリング+1", augments={'Path: A',}},
        left_ring={ name="ゼラチナスリング+1", augments={'Path: A',},priority=15},
        back="ソレムニティケープ",
    }

    sets.midcast.BlueHealing=sets.midcast.Cure

    sets.midcast.BlueMagical = {
        main="マクセンチアス",
        sub="ブンジロッド",
        ammo={ name="ガストリタスラム+1", augments={'Path: A',}},
        head="HSカヴク+3",
        body="HSミンタン+3",
        hands="HSバズバンド+3",
        legs="HSタイト+3",
        feet="HSバシュマク+3",
        neck={ name="ミラージストール+2", augments={'Path: A',}},
        waist="オルペウスサッシュ",
        left_ear="王将の耳飾り",
        right_ear={ name="ハシシンピアス+2", augments={'System: 1 ID: 1676 Val: 0','Accuracy+20','Mag. Acc.+20','"Dbl.Atk."+8','STR+15 INT+15',}},
        left_ring={ name="ゼラチナスリング+1", augments={'Path: A',},priority=16},
        right_ring="メダダリング",
        back={ name="コンフラワーケープ", augments={'MP+23','Accuracy+3','Blue Magic skill +10',}},
    }

    sets.midcast.BlueMagicAcc = {
        --main={ name="ティソーナ", augments={'Path: A',}},
        main="マクセンチアス",
        sub="ブンジロッド",
        ammo="ペムフレドタスラム",
        head="HSカヴク+3",
        body="HSミンタン+3",
        hands="HSバズバンド+3",
        legs="HSタイト+3",
        feet="HSバシュマク+3",
        neck="無の喉輪",
        waist="無の腰当",
        left_ear="昏黄の耳飾り",
        right_ear={ name="ハシシンピアス+2", augments={'System: 1 ID: 1676 Val: 0','Accuracy+20','Mag. Acc.+20','"Dbl.Atk."+8','STR+15 INT+15',}},
        left_ring={ name="ゼラチナスリング+1", augments={'Path: A',},priority=1},
        right_ring="メダダリング",
        back="無の外装",
    }

    sets.midcast.BlueBuff = {
        ammo="マーヴィタスラム",
        head={ name="LLケフィエ+3", augments={'Enhances "Convergence" effect',}},
        body="ASジュバ+3",
        hands="HSバズバンド+3",
        legs="HSタイト+3",
        feet={ name="LLチャルク+3", augments={'Enhances "Diffusion" effect',}},
        neck={ name="ミラージストール+2", augments={'Path: A',}},
        waist={name="プラチナモグベルト",priority=16},
        left_ear={name="エテオレートピアス",priority=15},
        right_ear={ name="ハシシンピアス+2", augments={'System: 1 ID: 1676 Val: 0','Accuracy+20','Mag. Acc.+20','"Dbl.Atk."+8','STR+15 INT+15',}},
        left_ring="守りの指輪",
        right_ring="スティキニリング+1",
        back={ name="コンフラワーケープ", augments={'MP+23','Accuracy+3','Blue Magic skill +10',}},
    }

    sets.midcast['夢想花']                = set_combine(sets.midcast.BlueMagicAcc,sets.TreasureHunter)
    sets.midcast['クルエルジョーク']      = set_combine(sets.midcast.BlueMagicAcc,{})
    sets.midcast['サドンランジ']          = set_combine(sets.midcast.BlueMagicAcc,{})
    sets.midcast['マジックハンマー']      = set_combine(sets.midcast.BlueMagical ,sets.midcast.BlueMagicAcc)
    sets.midcast['エントゥーム']          = set_combine(sets.midcast.BlueMagical ,{neck="クアンプネックレス",left_ring="ゼラチナスリング+1"})
    sets.midcast['エンバームアース']      = set_combine(sets.midcast.BlueMagical ,{neck="クアンプネックレス",left_ring="ゼラチナスリング+1"})
    sets.midcast['テネブラルクラッシュ']  = set_combine(sets.midcast.BlueMagical ,{head="妖蟲の髪飾り+1",ring2="アルコンリング"})
    sets.midcast['アンビルライトニング']  = set_combine(sets.midcast.BlueMagical ,{left_ring="イラブラットリング",back={ name="ロスメルタケープ", augments={'DEX+20','Accuracy+20 Attack+20','DEX+10','Crit.hit rate+10',}}})

    sets.midcast['精霊魔法'] = sets.midcast.BlueMagical

end
0 0 votes
Article Rating
Subscribe
Notify of
guest

2 Comments
Newest
Oldest Most Voted
Inline Feedbacks
View all comments
通りすがり
通りすがり
1 month ago

管理人さんのロジック丸写しでは無いので自分の環境だけかもしれませんが一応報告します
sets.midcast.BlueMagical で装備を組むと部位着替えを指定してる魔法(エントゥームなど)は着替えますが部位着替えを組んでないスペフロやサブダクが着替えませんでした
そこで sets.midcast.BlueMagic で装備を組んで sets.midcast.BlueMagical =sets.midcast.BlueMagic
にしたとこを着替えるようになりました
いつも参考にさせて頂いてます、これからの記事も楽しみにしてます

目次