2025/9/17 煩雑になった記事をわかりやすく整理中

【GearSwap】侍のMote-libs用コード

侍のMote-libsコードについて説明します。

目次

ファイル構成

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

ロジック説明

侍のコードはシンプルです。

OffenseModeの切り替えとHybridModeの切り替え関係が分かりやすいかと思います。

戦闘時のモード切替

OffenseModeで次の定義をしており、該当するアビリティを実行すると自動的にOffenseModeとHybridModeが切り替わります。

  • Normal:通常
  • Hasso:八双時
  • Seigan:星眼時
  • ThirdEye:心眼時
function job_buff_change(buff, gain)
    if buff == '八双' or state.Buff['八双'] then
        if gain then
            send_command('gs c set OffenseMode Hasso')
        else 
            send_command('gs c set OffenseMode Normal')
        end

    elseif buff == '星眼' or state.Buff['星眼']then
        if gain then
            send_command('gs c set OffenseMode Seigan')
        else 
            send_command('gs c set OffenseMode Normal')
        end
        
    elseif buff == '心眼' or state.Buff['心眼']then
        if gain then
            send_command('gs c set HybridMode ThirdEye')
        else
            send_command('gs c set HybridMode Normal')
        end
    end

八双と星眼は併用することができず、心眼はいつでも利用可能です。

組み合わせによって最高のパフォーマンスを出すためのパターンは次の通りです。

パターンOffenseModeHybridMode
NormalNormal
HassoNormal
SeiganNormal
NormalThirdEye
HassoThirdEye
SeiganThirdEye

例えば、八双を使うとOffenseModeがHassoになります(パターン②)。この状態で心眼を使うとHybridModeのThirdEyeになります(パターン⑤)。心眼が切れるとまたパターン②に戻ります。

このとき着替る装備は次のようになっています。

    -- ①抜刀装備
    sets.engaged = {
        ammo={ name="コイストボダー", augments={'Path: A',}},
        head="極春日烏帽子形兜",
        body="極春日胴丸",
        hands={ name="楯無篭手改", augments={'Path: A',}},
        legs={ name="楯無佩楯改", augments={'Path: A',}},
        feet={ name="楯無脛当改", augments={'Path: A',}},
        neck="月光の喉輪",
        waist={ name="ケンタークベルト+1", augments={'Path: A',}},
        left_ear="アスプロピアス",
        right_ear={ name="真春日耳飾り", augments={'System: 1 ID: 1676 Val: 0','Accuracy+19','Mag. Acc.+19','Weapon skill damage +4%','STR+13 DEX+13',}},
        left_ring={ name="メランリング", augments={'Path: A',}},
        right_ring="シーリチリング+1",
        back={ name="スメルトリオマント", augments={'DEX+20','Accuracy+20 Attack+20','Accuracy+10','"Store TP"+10','Damage taken-5%',}},
    }

    -- ②抜刀装備 八双 : OffenseMode=Hasso  HybridMode=Normal
    sets.engaged.Hasso = set_combine(sets.engaged,{
        feet="越脇戸筒脛当"
    })
    
    -- ③抜刀装備 星眼 : OffenseMode=Seigan HybridMode=Normal
    sets.engaged.Seigan = set_combine(sets.engaged,{
        head="極春日烏帽子形兜",
        body="ムパカダブレット",
        hands="ムパカグローブ",
        back={ name="スメルトリオマント", augments={'DEX+20','Accuracy+20 Attack+20','Accuracy+10','"Store TP"+10','Damage taken-5%',}},
    })
    
    -- ④抜刀装備 心眼 : OffenseMode=Normal HybridMode=ThirdEye
    sets.engaged.ThirdEye = set_combine(sets.engaged,{
        legs="極左近士板佩楯"
    })
    
    -- ⑤抜刀装備 八双心眼 : OffenseMode=Hasso  HybridMode=ThirdEye
    sets.engaged.Hasso.ThirdEye = set_combine(sets.engaged.Hasso,{
        legs="極左近士板佩楯"
    })
    
    -- ⑥抜刀装備 星眼心眼 : OffenseMode=Seigan HybridMode=ThirdEye
    sets.engaged.Seigan.ThirdEye = set_combine(sets.engaged.Seigan,{
        legs="極左近士板佩楯"
    })

コメント

コメントする

目次