Item Search
     
BG-Wiki Search
Page 263 of 302 FirstFirst ... 213 253 261 262 263 264 265 273 ... LastLast
Results 5241 to 5260 of 6036

Thread: Gearswap Help Thread!     submit to reddit submit to twitter

  1. #5241
    Smells like Onions
    Join Date
    Nov 2015
    Posts
    7
    BG Level
    0

    Is there a way to detect if you have a debuff on you with GearSwap? So for example if I am Doomed is there a way I can automatically attach a set which is cursna received gear to help my WHMs?

    My current GS file is:
    Spoiler: show
    Code:
    --To toggle gearsets:
    --Main command: //gs c toggle x set       where x = set name variable. Variables are as follows: --
    --Idle sets: Idle, TP sets: TP--
    --Resolution sets: Res, Requiescat sets: Req--
     
      
    function get_sets()
            send_command('bind f9 gs c toggle TP set')
            send_command('bind f10 gs c toggle Idle set')
            send_command('bind f11 gs c toggle CDC set')
            send_command('bind f12 gs c toggle Req set')
            send_command('bind !f12 gs c toggle Rea set')
            send_command('bind ^` gs c toggle MB set')
            
            function file_unload()
          
      
            send_command('unbind ^f9')
            send_command('unbind ^f10')
            send_command('unbind ^f11')
            send_command('unbind ^f12')
            send_command('unbind ^`')
            
            send_command('unbind !f9')
            send_command('unbind !f10')
            send_command('unbind !f11')
            send_command('unbind !f12')
      
            send_command('unbind f9')
            send_command('unbind f10')
            send_command('unbind f11')
            send_command('unbind f12')
      
            end 
      
                    --Idle Sets--
                    sets.Idle = {}
                    
                    sets.Idle.index = {'Standard', 'Cleave'}
                    
                    Idle_ind = 1
                                    
                    sets.Idle.Standard = {ammo="Homiliary",
                                          head="Rawhide Mask",neck="Sanctity Necklace", ear1="Genmei earring",ear2="Infused Earring",
                                          body="Runeist coat +1",hands="Herculean gloves",ring1="Warden's ring",ring2="Gelatinous Ring +1",
                                          back="Evasionist's cape",waist="Fucho-no-obi",legs="Carmine Cuisses",feet="Erilaz Greaves +1"}
                                           
                    sets.Idle.Cleave = { ammo ="Brigantia Pebble",
                                          head={ name="Herculean Helm", augments={'Accuracy+19 Attack+19','Damage taken-3%','AGI+3','Accuracy+2',}},neck="Loricate Torque +1", ear1="Ethereal earring",ear2="Infused Earring",
                                          body="Emet harness +1",hands="Runeist Mitons",ring1="Warden's ring",ring2="Gelatinous Ring +1",
                                          back="Evasionist's cape",waist="Flume Belt +1",legs="Erilaz Leg Guards +1",feet="Erilaz Greaves +1"}
                                       
                                       
                   --TP Sets--
                    sets.TP = {}
             
                    sets.TP.index = {'Standard', 'Tank', 'DT', 'DTAccuracy', 'DW'}
                    --1=Standard, 2 = Tank,3=DT, 4=DTAccuracy, 5=DW,--
                   TP_ind = 1
                    sets.TP.Standard = { sub ="Nepenthe Grip",ammo="Ginsen",
                                        head="Adhemar Bonnet", neck="Lissome necklace", ear1="Brutal Earring", ear2="Cessance earring", 
                                        body="Herculean Vest",hands="Adhemar Wristbands",ring1="Cacoethic Ring",ring2="Epona's Ring",
                                        back="Ogma's cape",waist="Kentarch Belt +1",legs="Samnuha Tights",feet={ name="Herculean Boots", augments={'Accuracy+20 Attack+20','"Triple Atk."+4',}} }
                                                            
                                                            
                    sets.TP.Tank = {sub="Refined Grip +1",ammo="Brigantia Pebble",
                                            head={ name="Herculean Helm", augments={'Accuracy+19 Attack+19','Damage taken-3%','AGI+3','Accuracy+2',}},neck="Loricate Torque +1", ear1="Genmei Earring", ear2="Ethereal earring",                            
                                            body="Erilaz Surcoat +1",hands="Kurys Gloves",ring1="Warden's ring",ring2="Gelatinous Ring +1",
                                            back="Evasionist's Cape",waist="Flume Belt +1",legs="Erilaz Leg Guards +1",feet="Erilaz Greaves +1"}
                                                            
                    sets.TP.DT = {ammo="Amar Cluster",
                                  head={ name="Herculean Helm", augments={'Accuracy+19 Attack+19','Damage taken-3%','AGI+3','Accuracy+2',}},neck="Loricate Torque +1", ear1="Genmei Earring", ear2="Cessance earring", 
                                  body="Emet harness +1",hands="Kurys Gloves",ring1="Dark ring",ring2="Petrov Ring",
                                  back="Solemnity Cape",waist="Flume belt +1",legs="Erilaz Leg Guards +1",feet="Erilaz Greaves +1"}
                                      
                    sets.TP.DTAccuracy = {ammo="Amar Cluster",
                                          head={ name="Herculean Helm", augments={'Accuracy+19 Attack+19','Damage taken-3%','AGI+3','Accuracy+2',}},neck="Loricate Torque +1", ear1="Genmei Earring", ear2="Cessance earring",    
                                          body="Emet harness +1",hands="Kurys Gloves",ring1="Cacoethic ring",ring2="Gelatinous Ring +1",
                                          back="Evasionist's Cape",waist="Flume belt +1",legs="Erilaz Leg Guards +1",feet={ name="Herculean Boots", augments={'Accuracy+20 Attack+20','"Triple Atk."+4',}} }
                                                              
                     sets.TP.DW = {ammo="Honed tathlum",
                                        head="Adhemar Bonnet", neck="Sanctity Necklace", ear1="Suppanomimi", ear2="Cessance earring", 
                                        body="Herculean Vest",hands="Adhemar Wristbands",ring1="Cacoethic Ring",ring2="Epona's Ring",
                                        back="Omga Cape",waist="Kentarch Belt +1",legs="Samnuha Tights",feet={ name="Herculean Boots", augments={'Accuracy+20 Attack+20','"Triple Atk."+4',}} }                                                        
                                                              
                                                              
                                                              
                    --Weaponskill Sets--
                    sets.WS = {}
            
                    sets.Resolution = {}
            
                    sets.Resolution.index = {'Attack'}
                    Resolution_ind = 1
            
                    sets.Resolution.Attack = {ammo="Seething Bomblet +1",
                                              head="Adhemar Bonnet",neck="Fotia gorget",ear1="Brutal Earring",ear2="Cessance Earring",
                                              body="Herculean Vest",hands="Adhemar Wristbands",ring1="Petrov Ring",ring2="Epona's ring",
                                              back="Ogma's cape",waist="Fotia belt",legs="Samnuha Tights",feet={ name="Herculean Boots", augments={'Accuracy+20 Attack+20','"Triple Atk."+4',}} }
                                                                      
                                                 
                    sets.Dimidiation = {}
            
                    sets.Dimidiation.index = {'Attack'}
                    Dimidiation_ind = 1
                                                                             
                    sets.Dimidiation.Attack = {ammo="Jukukik Feather",
                                                head="Adhemar Bonnet",neck="Fotia gorget",ear1="Brutal Earring",ear2="Cessance Earring",
                                                body="Herculean Vest",hands="Adhemar Wristbands",ring1="Petrov Ring",ring2="Epona's ring",
                                                back="Ogma's cape",waist="Fotia belt",legs="Samnuha Tights",feet={ name="Herculean Boots", augments={'Accuracy+21','Crit.hit rate+1','DEX+14','Attack+14',}} }                          
                                                              
                    sets.Requiescat = {}
            
                    sets.Requiescat.index = {'Attack'}
                    Requiescat_ind = 1
                    
                    sets.Requiescat.Attack = {ammo="Seething Bomblet +1",
                                              head="Adhemar Bonnet",neck="Fotia gorget",ear1="Brutal earring",ear2="Moonshade earring",
                                              body="Wayfarer robe",hands="Wayfarer cuffs",ring1="Petrov Ring",ring2="Aquasoul ring",
                                              back="Atheling mantle",waist="Fotia belt",legs="Quiahuiz leggings",feet={ name="Herculean Boots", augments={'Mag. Acc.+15 "Mag.Atk.Bns."+15','VIT+10','"Mag.Atk.Bns."+12',}}}
                                                                      
     
                    sets.FellCleave = {}
            
                    sets.FellCleave.index = {'Attack'}
                    FellCleave_ind = 1
            
                    sets.FellCleave.Attack = {ammo="Seething Bomblet +1",
                                              head="Adhemar Bonnet",neck="Fotia gorget",ear1="Brutal Earring",ear2="Cessance Earring",
                                              body="Herculean Vest",hands="Adhemar Wristbands",ring1="Petrov Ring",ring2="Epona's ring",
                                              back="Ogma's cape",waist="Fotia belt",legs="Samnuha Tights",feet={ name="Herculean Boots", augments={'Accuracy+20 Attack+20','"Triple Atk."+4',}} }                       
                                                                              
                    sets.SavageBlade = {}
            
                    sets.SavageBlade.index = {'Attack'}
                    SavageBlade_ind = 1
            
                    sets.SavageBlade.Attack = {ammo="Seething Bomblet +1",
                                              head="Adhemar Bonnet",neck="Fotia gorget",ear1="Brutal Earring",ear2="Cessance Earring",
                                              body="Herculean Vest",hands="Adhemar Wristbands",ring1="Petrov Ring",ring2="Epona's ring",
                                              back="Ogma's cape",waist="Fotia belt",legs="Samnuha Tights",feet={ name="Herculean Boots", augments={'Accuracy+20 Attack+20','"Triple Atk."+4',}}}            
                                                                              
                    --Utility Sets--
                    sets.Utility = {}
                                                                            
                    sets.Utility.Phalanx = {ammo ="Sapience Orb", head="Futhark bandeau +1",neck="Incanter's Torque",ear1 ="Lifestorm Earring", ear1="Genmei earring",
                                                body="Emet harness +1",hands="Kurys Gloves", waist ="Olympus Sash", ring1='Begrudging Ring', ring2='Supershear Ring',
                                                legs="Carmine Cuisses",feet="Erilaz Greaves +1", back="Evasionist's cape"}
                                                              
                    sets.Utility.Regen = {head="Runeist Bandeau",neck="Incanter's Torque",ear1="Genmei earring",ear2="Augment. earring",
                                          body="Futhark coat",hands="Runeist mitons",ring1="Prolix ring", ring2='Supershear Ring',
                                          back="Swith cape",waist="Pythia sash +1",legs="Futhark trousers",feet="Runeist bottes"}
                                                              
                    sets.Utility.SID = {ammo ="Brigantia Pebble", head="Herculean Helm",neck="Incanter's Torque",ear1="Genmei earring", ear2 = "Halasz Earring",
                                             body="Emet Harness +1",hands="Herculean Gloves",ring1="Evanescence Ring", ring2='Supershear Ring',
                                             back="Evasionist cape",waist="Flume Belt +1",legs="Carmine Cuisses",feet="Erilaz Greaves +1" }
                                              
                    sets.Utility.Enmity = {ammo="Sapience Orb",head="Rapid Visor",neck="Warder's Charm",ear2 ="Friomisi Earring", ear1="Genmei earring",
                                                body="Emet harness +1",hands="Kurys Gloves", waist ="Kasiri Belt", ring1='Begrudging Ring', ring2='Supershear Ring',
                                                legs="Erilaz Leg Guards +1",feet="Erilaz Greaves +1", back="Evasionist's cape"}                     
                     
                    sets.Utility.Enhancing = {ammo="Sapience Orb",head="Erilaz Galea",neck="Incanter's Torque",ear1 ="Lifestorm Earring", ear1="Genmei earring",
                                                body="Emet harness +1",hands="Kurys Gloves", waist ="Olympus Sash", ring1='Begrudging Ring', ring2='Supershear Ring',
                                                legs="Carmine Cuisses",feet="Erilaz Greaves +1", back="Evasionist's cape"}  
                     
                    sets.Utility.Doomed = {wait="Gishdubar Sash", ring1 ="Saida Ring"}
                                    
                    --Job Ability Sets--
                    sets.JA = {}
                    sets.JA = {}
                    
                    sets.JA.Lunge = {ammo="Seething Bomblet +1",
                                       head={ name="Herculean Helm", augments={'Mag. Acc.+20 "Mag.Atk.Bns."+20','"Dbl.Atk."+2','Mag. Acc.+12','"Mag.Atk.Bns."+4',}},neck="Sanctity Necklace",ear2="Friomisi earring", ear1="Hecate's Earring",
                                     body="Samnuha Coat",hands="Leyline Gloves", ring1="Acumen Ring", ring2 ='Arvina Ringlet +1', waist ="Eschan Stone",
                                     back="Evasionist's cape",legs="Herculean Trousers",feet={ name="Herculean Boots", augments={'Mag. Acc.+15 "Mag.Atk.Bns."+15','VIT+10','"Mag.Atk.Bns."+12',}}}
            
                    sets.JA.Vallation = {head = "Rapid Visor", body="Runeist coat +1",legs="Futhark trousers", ammo="Sapience Orb",neck="Warder's Charm",
                                        ear2="Friomisi Earring", ear1="Genmei earring",hands="Futhark Mitons", waist ="Kasiri Belt", ring1='Begrudging Ring', ring2='Petrov Ring',
                                        feet="Erilaz Greaves +1", legs="Erilaz Leg Guards +1",back="Ogma's cape"}
                                                              
                    sets.JA.Battuta = {head="Futhark bandeau +1", ammo="Sapience Orb",neck="Warder's Charm",ear2 ="Friomisi Earring", ear1="Genmei earring",
                                                body="Emet harness +1",hands="Futhark Mitons", waist ="Kasiri Belt", ring1='Begrudging Ring', ring2='Petrov Ring',
                                                legs="Erilaz Leg Guards +1",feet="Erilaz Greaves +1", back="Evasionist's cape"}
            
                    sets.JA.Gambit = {hands="Runeist mitons", ammo="Sapience Orb",head="Rapid Visor",neck="Warder's Charm",ear2 ="Friomisi Earring", ear1="Genmei earring",
                                                body="Emet harness +1",waist ="Kasiri Belt", ring1='Begrudging Ring', ring2='Petrov Ring',
                                                legs="Erilaz Leg Guards +1",feet="Erilaz Greaves +1", back="Evasionist's cape"}
            
                    sets.JA.Pflug = {feet="Runeist bottes", ammo="Sapience Orb",head="Highwing Helm",neck="Warder's Charm",ear2 ="Friomisi Earring", ear1="Genmei earring",
                                                body="Emet harness +1",hands="Futhark Mitons", waist ="Kasiri Belt", ring1='Begrudging Ring', ring2='Petrov Ring',
                                                legs="Erilaz Leg Guards +1", back="Evasionist's cape"}
                    sets.JA.Ryake = {feet = "Futhark Boots",ammo="Sapience Orb",head="Highwing Helm",neck="Warder's Charm",ear2 ="Friomisi Earring", ear1="Genmei earring",
                                                body="Emet harness +1",hands="Futhark Mitons", waist ="Kasiri Belt", ring1='Begrudging Ring', ring2='Petrov Ring',
                                                legs="Erilaz Leg Guards +1", back="Evasionist's cape"}
                             
                    --Precast Sets--
                    sets.precast = {}
            
                    sets.precast.FC = {}
            
                    sets.precast.FC.Standard = {ammo="Sapience Orb",head="Herculean Helm",neck="Warder's Charm", ear1="Loquac. Earring",ear2="Etiolation Earring",
                                                body="Vrikodara Jupon",hands="Leyline Gloves", waist ="Kasiri Belt", ring1='Begrudging Ring', ring2="Weatherspoon ring",
                                                legs="Orvail pants +1",feet="Chelona Boots", back="Swith cape"}
                                                                            
                    sets.precast.FC.Enhancing = {ammo="Sapience Orb",head="Herculean Helm",neck="Jeweled Necklace", ear1="Loquac. Earring", ear2="Etiolation Earring",
                                                 body="Vrikodara Jupon",hands="Leyline Gloves", ring2="Weatherspoon ring",
                                                 legs="Futhark trousers",feet="Chelona Boots"}
                     
                    sets.precast.FC.Enmity = {ammo="Sapience Orb",head="Herculean Helm",neck="Warder's Charm", ear1="Loquac. Earring", ear2="Etiolation Earring",
                                                body="Vrikodara Jupon",hands="Leyline Gloves", waist ="Kasiri Belt", ring1='Begrudging Ring', ring2="Weatherspoon ring",
                                                legs="Orvail pants +1",feet="Chelona Boots", back="Evasionist's cape"}                           
    end
         
    function precast(spell)
            if spell.action_type == 'Magic' then
                    equip(sets.precast.FC.Standard)
                     
            end
            
            if spell.skill == 'Enhancing Magic' then
                    equip(sets.precast.FC.Enhancing)
                     
            end
            
            if spell.action_type == 'Ninjutsu' then
                    equip(sets.precast.FC.Standard)
                     
            end
            
            if spell.english == 'Lunge' or spell.english == 'Swipe' then
                    equip(sets.JA.Lunge)
                     
            end
            
            if spell.english == 'Vallation' or spell.english == 'Valiance' then
                    equip(sets.JA.Vallation)
                     
            end
            if spell.english=='Flash' then  
                    equip(sets.precast.FC.Enmity)
                     
            end
            
            if spell.english == 'Battuta' then
                    equip(sets.JA.Battuta)
                     
            end
            
            if spell.english == 'Pflug' then
                    equip(sets.JA.Pflug)
                     
            end
            
            if spell.english == 'Gambit' then
                    equip(sets.JA.Gambit)
                     
            end
                    
            if spell.english == 'Resolution' or spell.english == 'Shockwave' then
                    equip(sets.Resolution[sets.Resolution.index[Resolution_ind]])
                     
            end
             
            if spell.english == 'Dimidiation' then
                    equip(sets.Dimidiation[sets.Dimidiation.index[Dimidiation_ind]])
                     
            end
            
            if spell.english == 'Requiescat' then
                    equip(sets.Requiescat[sets.Requiescat.index[Requiescat_ind]])
                     
            end
             
            if spell.english == 'Fell Cleave' then
                    equip(sets.FellCleave[sets.FellCleave.index[FellCleave_ind]])
                     
            end     
             
            if spell.english == 'Savage Blade' then
                    equip(sets.SavageBlade[sets.SavageBlade.index[SavageBlade_ind]])
                     
            end
    end            
      
    function midcast(spell,act)
            if spell.english == 'Stoneskin' then
                    equip(sets.Utility.SID)
                                if buffactive['Stoneskin'] then
                                    send_command('@wait 0.7; input //cancel Stoneskin; input /echo Refreshing Stoneskin.')
                                end
                     
            end
             
            if spell.english =='Phalanx' then
                equip(sets.Utility.Phalanx)
                 
            end
            
            if spell.skill == 'Enhancing Magic' then
                    equip(sets.Utility.Enhancing)
                     
            end
            
            if spell.english == 'Regen' then
                    equip(sets.Utility.Regen)
                     
            end
            
            if spell.english == 'Utsusemi: Ichi' then
                    equip(sets.Utility.SID)
                            if buffactive['Copy Image (3)'] then
                                    send_command('@wait 0.3; input //cancel Copy Image*')
                            end
                            if buffactive['Copy Image (2)'] then
                                    send_command('@wait 0.3; input //cancel Copy Image*')
                            end
                            if buffactive['Copy Image (1)'] then
                                    send_command('@wait 0.3; input //cancel Copy Image*')
                            end
                            if buffactive['Copy Image'] then
                                    send_command('@wait 0.3; input //cancel Copy Image*')
                            end
                     
            end
      
            if spell.english == 'Utsusemi: Ni' then
                    equip(sets.Utility.SID)
                 
            end
             
            if spell.english =='Flash' or spell.english == 'Crusade' or spell.english == 'Foil' or spell.skill =='Blue Magic' then  
                    equip(sets.Utility.Enmity)
                     
            end
             
             
    end
      
    function aftercast(spell)
            if player.status == 'Engaged' then
                    equip(sets.TP[sets.TP.index[TP_ind]])
                     
            else
                    equip(sets.Idle[sets.Idle.index[Idle_ind]])
                     
            end
    end
      
    function status_change(new,old)
            if new == 'Engaged' then
                    equip(sets.TP[sets.TP.index[TP_ind]])
            else
                    equip(sets.Idle[sets.Idle.index[Idle_ind]])
            end
    end
     
    function buff_change(buff,gain,bufftable)
        if buff:lower()=="poison" and gain then 
            equip(sets.Utility.Doomed)
        end
    end
      
    function self_command(command)
            if command == 'toggle TP set' then
                    TP_ind = TP_ind +1
                    if TP_ind > #sets.TP.index then TP_ind = 1 end
                    send_command('@input /echo <----- TP Set changed to '..sets.TP.index[TP_ind]..' ----->')
                    equip(sets.TP[sets.TP.index[TP_ind]])
            elseif command == 'toggle Idle set' then
                    Idle_ind = Idle_ind +1
                    if Idle_ind > #sets.Idle.index then Idle_ind = 1 end
                    send_command('@input /echo <----- Idle Set changed to '..sets.Idle.index[Idle_ind]..' ----->')
                    equip(sets.Idle[sets.Idle.index[Idle_ind]])
            elseif command == 'toggle Res set' then
                    Resolution_ind = Resolution_ind +1
                    if Resolution_ind > #sets.Resolution.index then Resolution_ind = 1 end
                    send_command('@input /echo <----- Resolution set changed to '..sets.Resolution.index[Resolution_ind]..' ----->')
            elseif command == 'toggle Req set' then
                    Requiescat_ind = Requiescat_ind +1
                    if Requiescat_ind > #sets.Requiescat.index then Requiescat_ind = 1 end
                    send_command('@input /echo <----- Requiescat Set changed to '..sets.Requiescat.index[Requiescat_ind]..' ----->')
            elseif command == 'equip TP set' then
                    equip(sets.TP[sets.TP.index[TP_ind]])
            elseif command == 'equip Idle set' then
                    equip(sets.Idle[sets.Idle.index[Idle_ind]])
            end
    end


    Poison is used as an easy test instead of doom at the minute

  2. #5242
    Relic Shield
    Join Date
    Jan 2013
    Posts
    1,868
    BG Level
    6

    Code:
    function buff_change(buff,gain,bufftable)
        if buff == 'Doom' and gain then 
            equip(sets.Utility.Doomed)
        end
    end
    or buffactive.doom in other functions if you need. Sometimes I find gearswap doesnt pick up a buff or debuff by name (usually debuffs) in which you have to use the ID but Id have to look on my other pc to find that exact code.



    PS: Im not super pro at coding here but what does the "lower" part do in this line "buff:lower()=="poison""

  3. #5243
    Bagel
    Join Date
    May 2010
    Posts
    1,277
    BG Level
    6
    FFXI Server
    Lakshmi

    So I was trying to make a SMN gearswap based on the one from this thread: http://www.ffxiah.com/forum/topic/47...er-gearswap/4/

    However when I try to do anything nothing happens. When I tried using debug mode it just went though all the gear changes at once but no gear was actually changed.

    Code:
    function set_macros(sheet,book)
        if book then 
            send_command('@input /macro book '..tostring(book)..';wait .1;input /macro set '..tostring(sheet))
            return
        end
        send_command('@input /macro set '..tostring(sheet))
    end
      
    function set_style(sheet)
        send_command('@input /lockstyleset '..sheet)
    end
      
    bp_physical=S{'Punch','Rock Throw','Barracuda Dive','Claw','Axe Kick','Shock Strike','Camisado','Regal Scratch','Poison Nails','Moonlit Charge','Crescent Fang','Rock Buster','Tail Whip','Double Punch','Megalith Throw','Double Slap','Eclipse Bite','Mountain Buster','Spinning Dive','Predator Claws','Rush','Chaotic Strike','Crag Throw','Volt Strike'}bp_hybrid=S{'Burning Strike','Flaming Crush'}bp_magical=S{'Inferno','Earthen Fury','Tidal Wave','Aerial Blast','Diamond Dust','Judgment Bolt','Searing Light','Howling Moon','Ruinous Omen','Fire II','Stone II','Water II','Aero II','Blizzard II','Thunder II','Thunderspark','Somnolence','Meteorite','Fire IV','Stone IV','Water IV','Aero IV','Blizzard IV','Thunder IV','Nether Blast','Meteor Strike','Geocrush','Grand Fall','Wind Blade','Heavenly Strike','Thunderstorm','Level ? Holy','Holy Mist','Lunar Bay','Night Terror','Conflag Strike'}bp_debuff=S{'Lunar Cry','Mewing Lullaby','Nightmare','Lunar Roar','Slowga','Ultimate Terror','Sleepga','Eerie Eye','Tidal Roar','Diamond Storm','Shock Squall','Pavor Nocturnus'}bp_buff=S{'Shining Ruby','Frost Armor','Rolling Thunder','Crimson Howl','Lightning Armor','Ecliptic Growl','Hastega','Noctoshield','Ecliptic Howl','Dream Shroud','Earthen Armor','Fleet Wind','Inferno Howl','Soothing Ruby','Heavenward Howl','Soothing Current','Hastega II','Crystal Blessing'}bp_other=S{'Healing Ruby','Raise II','Aerial Armor','Reraise II','Whispering Wind','Glittering Ruby','Earthen Ward','Spring Water','Healing Ruby II'} AvatarList=S{'Shiva','Ramuh','Garuda','Leviathan','Diabolos','Titan','Fenrir','Ifrit','Carbuncle','Fire Spirit','Air Spirit','Ice Spirit','Thunder Spirit','Light Spirit','Dark Spirit','Earth Spirit','Water Spirit','Cait Sith','Alexander','Odin','Atomos'}spirit_element={Fire='Fire Spirit',Earth='Earth Spirit',Water='Water Spirit',Wind='Air Spirit',Ice='Ice Spirit',Lightning='Thunder Spirit',Light='Light Spirit',Dark='Dark Spirit'}spirit_conflict={Fire='Ice',Earth='Lightning',Water='Fire',Wind='Earth',Ice='Wind',Lightning='Water',Light='Dark',Dark='Light'}
     
    -- Setup your Key Bindings here:  
        windower.send_command('bind f7 gs c toggle mb')
        windower.send_command('bind f9 gs c avatar mode')
        windower.send_command('bind f10 gs c toggle auto')
        windower.send_command('bind f12 gs c toggle melee')
          
          
    -- Setup your Gear Sets below:
    function get_sets()
       
        -- My formatting is very easy to follow. All sets that pertain to my character doing things are under 'me'.
        -- All sets that are equipped to faciliate my avatar's behaviour or abilities are under 'avatar', eg, Perpetuation, Blood Pacts, etc
           
        sets.me = {}        -- leave this empty
        sets.avatar = {}    -- leave this empty
           
        -- Your idle set when you DON'T have an avatar out
        sets.me.idle = {
            main="Bolelabunga",
            sub="Genbu's Shield",
           -- ranged="",
            ammo="Seraphicaller",
            head="Convoker's Horn +1",
            neck="Sanctity Necklace",
            lear="Loquacious Earring",
            rear="Andoaa Earring",
            body="Hagondes Coat",
            hands="Asteria Mitts +1",
            lring="Sheltered Ring",
            rring="Paguroidea Ring",
            back="Umbra Cape",
            waist="Fucho-no-Obi",
            legs="Assiduity Pants +1",
            feet="Herald's Gaiters"
        }
           
        -- Your MP Recovered Whilst Resting Set
        sets.me.resting = { 
            main="Bolelabunga",
            sub="Genbu's Shield",
        -- ranged="",        
        ammo="Seraphicaller",
            head="Convoker's Horn +1",
            neck="Sanctity Necklace",
            lear="Loquacious Earring",
            rear="Andoaa Earring",
            body="Hagondes Coat",
            hands="Asteria Mitts +1",
            lring="Sheltered Ring",
            rring="Paguroidea Ring",
            back="Umbra Cape",
            waist="Fucho-no-Obi",
            legs="Assiduity Pants +1",
            feet="Herald's Gaiters"
        }
           
        -----------------------
        -- Perpetuation Related
        -----------------------
           
        -- Avatar's Out --  
        -- This is the base for all perpetuation scenarios, as seen below
        sets.avatar.perp = {
            main="Nirvana",
            sub="Oneiros Grip",        
    -- ranged="",        
    ammo="Seraphicaller",
            head="Convoker's Horn +1",
            neck="Caller's Pendant",
            lear="Rimeice Earring",
            rear="Domesticator's Earring",
            body="Hagondes Coat",
            hands="Regimen Mittens",
            lring="Evoker's Ring",
            rring="Sangoma Ring",
            back="Campestres's Cape",
            waist="Moepapa Stone",
            legs="Enticer's Pants",
            feet="Apogee Pumps"
        }
       
        -- The following sets base off of perpetuation, so you can consider them idle sets.
        -- Set the relevant gear, bearing in mind it will overwrite the perpetuation item for that slot!
        sets.avatar["Carbuncle"] = {hands="Asteria Mitts +1"}
        sets.avatar["Cait Sith"] = {hands="Lamassu Mitts +1"}
        -- When we want our avatar to stay alive
        sets.avatar.tank = set_combine(sets.avatar.perp,{
            main="Nirvana",
            sub="Oneiros Grip",        
    -- ranged="",        
    ammo="Seraphicaller",
            head="Convoker's Horn +1",
            neck="Caller's Pendant",
            lear="Handler's Earring",
            rear="Handler's Earring +1",
            body="Hagondes Coat",
            hands="Regimen Mittens",
            lring="Evoker's Ring",
            rring="Sangoma Ring",
            back="Campestres's Cape",
            waist="Moepapa Stone",
            legs="Enticer's Pants",
            feet="Apogee Pumps"
        })
           
        -- When we want our avatar to shred
        sets.avatar.melee = set_combine(sets.avatar.perp,{
            main="Nirvana",
            sub="Oneiros Grip",        
    -- ranged="",        
    ammo="Seraphicaller",
            head="Convoker's Horn +1",
            neck="Caller's Pendant",
            lear="Rimeice Earring",
            rear="Domesticator's Earring",
            body="Hagondes Coat",
            hands="Regimen Mittens",
            lring="Evoker's Ring",
            rring="Sangoma Ring",
            back="Campestres's Cape",
            waist="Moepapa Stone",
            legs="Enticer's Pants",
            feet="Apogee Pumps"
        })
           
        -- When we want our avatar to hit
        sets.avatar.acc = set_combine(sets.avatar.perp,{
            main="Nirvana",
            sub="Oneiros Grip",        
    -- ranged="",        
    ammo="Seraphicaller",
            head="Convoker's Horn +1",
            neck="Caller's Pendant",
            lear="Rimeice Earring",
            rear="Domesticator's Earring",
            body="Hagondes Coat",
            hands="Regimen Mittens",
            lring="Evoker's Ring",
            rring="Sangoma Ring",
            back="Campestres's Cape",
            waist="Moepapa Stone",
            legs="Enticer's Pants",
            feet="Apogee Pumps"
        })
           
        -- When Avatar's Favori s active
        sets.avatar.favor = set_combine(sets.avatar.perp,{
            main="Nirvana",
            sub="Oneiros Grip",        
    -- ranged="",        
    ammo="Seraphicaller",
            head="Beckoner's Horn",
            neck="Caller's Pendant",
            lear="Rimeice Earring",
            rear="Domesticator's Earring",
            body="Hagondes Coat",
            hands="Regimen Mittens",
            lring="Evoker's Ring",
            rring="Sangoma Ring",
            back="Campestres's Cape",
            waist="Moepapa Stone",
            legs="Enticer's Pants",
            feet="Apogee Pumps"
        })
           
        ----------------------------
        -- Summoning Skill Related
        -- Including all blood pacts
        ----------------------------
           
        -- + Summoning Magic. This is a base set for max skill and blood pacts and we'll overwrite later as and when we need to
        sets.avatar.skill = {
            main="Tumafyrig",
            sub="Oneiros Grip",        
    -- ranged="",        
    ammo="Seraphicaller",
            head="Convoker's Horn +1",
            neck="Caller's Pendant",
            lear="Evans Earring",
            rear="Andoaa Earring",
            body="Beckoner's Doublet",
            hands="Lamassu Mitts +1",
            lring="Evoker's Ring",
            rring="Fervor Ring",
            back="Conveyance Cape",
            waist="Lucidity Sash",
            legs="Beckoner's Spats",
            feet="Rubeus Boots"
        }
           
        -------------------------
        -- Individual Blood Pacts
        -------------------------
           
        -- Physical damage
        sets.avatar.atk = set_combine(sets.avatar.skill,{
            main="Nirvana",
            sub="Oneiros Grip",        
    -- ranged="",        
    ammo="Seraphicaller",
            head="Helios Band",
            neck="Caller's Pendant",
            lear="Esper Earring",
            rear="Domesticator's Earring",
            body="Helios Jacket",
            hands="Apogee Mitts",
            lring="Evoker's Ring",
            rring="Fervor Ring",
            back="Campestres's Cape",
            waist="Incarnation Sash",
            legs="Enticer's Pants",
            feet="Apogee Pumps"
        })
        sets.avatar.pacc = set_combine(sets.avatar.atk,{
            main="Nirvana",
            sub="Oneiros Grip",        
    -- ranged="",        
    ammo="Seraphicaller",
            head="Helios Band",
            neck="Caller's Pendant",
            lear="Esper Earring",
            rear="Domesticator's Earring",
            body="Helios Jacket",
            hands="Apogee Mitts",
            lring="Evoker's Ring",
            rring="Fervor Ring",
            back="Campestres's Cape",
            waist="Incarnation Sash",
            legs="Enticer's Pants",
            feet="Apogee Pumps"
        })
           
        -- Magic Attack
        sets.avatar.mab = set_combine(sets.avatar.skill,{
            main="Nirvana",
            sub="Oneiros Grip",        
    -- ranged="",        
    ammo="Seraphicaller",
            head="Helios Band",
            neck="Caller's Pendant",
            lear="Esper Earring",
            rear="Domesticator's Earring",
            body="Convoker's Doublet +1",
            hands="Apogee Mitts",
            lring="Evoker's Ring",
            rring="Fervor Ring",
            back="Campestres's Cape",
            waist="Incarnation Sash",
            legs="Enticer's Pants",
            feet="Apogee Pumps"
        })
        sets.avatar.mb = set_combine(sets.avatar.mab,{hands="Glyphic Bracers +1"})
        -- Hybrid
        sets.avatar.hybrid = set_combine(sets.avatar.skill,{
            main="Nirvana",
            sub="Oneiros Grip",        
    -- ranged="",        
    ammo="Seraphicaller",
            head="Helios Band",
            neck="Caller's Pendant",
            lear="Esper Earring",
            rear="Domesticator's Earring",
            body="Convoker's Doublet +1",
            hands="Apogee Mitts",
            lring="Evoker's Ring",
            rring="Fervor Ring",
            back="Campestres's Cape",
            waist="Incarnation Sash",
            legs="Enticer's Pants",
            feet="Apogee Pumps"
        })
           
        -- Magic Accuracy
        sets.avatar.macc = set_combine(sets.avatar.skill,{
            main="Nirvana",
            sub="Oneiros Grip",        
    -- ranged="",        
    ammo="Seraphicaller",
            head="Helios Band",
            neck="Caller's Pendant",
            lear="Evans Earring",
            rear="Andoaa Earring",
            body="Beckoner's Doublet",
            hands="Lamassu Mitts +1",
            lring="Evoker's Ring",
            rring="Fervor Ring",
            back="Campestres's Cape",
            waist="Incarnation Sash",
            legs="Enticer's Pants",
            feet="Beckoner's Pigaches"
        })
           
        -- Buffs
        sets.avatar.buff = set_combine(sets.avatar.skill,{
            main="Tumafyrig",
            sub="Oneiros Grip",        
    -- ranged="",        
    ammo="Seraphicaller",
            head="Convoker's Horn +1",
            neck="Caller's Pendant",
            lear="Evans Earring",
            rear="Andoaa Earring",
            body="Beckoner's Doublet",
            hands="Lamassu Mitts +1",
            lring="Evoker's Ring",
            rring="Fervor Ring",
            back="Campestres's Cape",
            waist="Lucidity Sash",
            legs="Beckoner's Spats",
            feet="Rubeus Boots"
        })
           
        -- Other
        sets.avatar.other = set_combine(sets.avatar.skill,{
             main="Tumafyrig",
            sub="Oneiros Grip",        
    -- ranged="",        
    ammo="Seraphicaller",
            head="Convoker's Horn +1",
            neck="Caller's Pendant",
            lear="Evans Earring",
            rear="Andoaa Earring",
            body="Beckoner's Doublet",
            hands="Lamassu Mitts +1",
            lring="Evoker's Ring",
            rring="Fervor Ring",
            back="Campestres's Cape",
            waist="Lucidity Sash",
            legs="Beckoner's Spats",
            feet="Rubeus Boots"
        })
           
        -- Combat Related Sets
           
        -- Melee
        -- The melee set combines with perpetuation, because we don't want to be losing all our MP whilst we swing our Staff
        -- Anything you equip here will overwrite the perpetuation/refresh in that slot.
        sets.me.melee = set_combine(sets.avatar.perp,{
                })
           
        -- Shattersoul. Weapon Skills do not work off perpetuation as it only stays equipped for a moment
        sets.me["Shattersoul"] = {
        -- main="",
            -- sub="",
            -- ranged="",
            -- ammo="",
            -- head="",
            -- neck="",
            -- lear="",
            -- rear="",
            -- body="",
            -- hands="",
            -- lring="",
            -- rring="",
            -- back="",
            -- waist="",
            -- legs="",
            -- feet=""
                }
        sets.me["Garland of Bliss"] = {
            main="Nirvana",
            sub="Oneiros Grip",        
    -- ranged="",        
    ammo="Seraphicaller",
            head="Merlinic Hood",
            neck="Fotia Gorget",
            lear="Friomisi Earring",
            rear="Crematio Earring",
            body="Witching Robe",
            hands="Helios Gloves",
            lring="Shiva Ring +1",
            rring="Weatherspoon Ring",
            back="Campestres's Cape",
            waist="Sekhmet Corset",
            legs="Merlinic Shalwar",
            feet="Merlinic Crackows"
        }
           
        -- Feel free to add new weapon skills, make sure you spell it the same as in game. These are the only two I ever use though
       
        ---------------
        -- Casting Sets
        ---------------
           
        sets.precast = {}
        sets.midcast = {}
        sets.aftercast = {}
           
        ----------
        -- Precast
        ----------
           
        -- Generic Casting Set that all others take off of. Here you should add all your fast cast  
        sets.precast.casting = {
            main="Nirvana",
            sub="Oneiros Grip",        
    -- ranged="",        
    ammo="Impatiens",
            head="Merlinic Hood",
            neck="Jeweled Collar",
            lear="Loquacious Earring",
            rear="Mendicant's Earring",
            body="Inyanga Jubbah +1",
            hands="Helios Gloves",
            lring="Lebeche Ring",
            rring="Weatherspoon Ring",
            back="Swith Cape",
            waist="Witful Belt",
            legs="Psycloth Lappas",
            feet="Regal Pumps +1"
        }   
           
        -- Summoning Magic Cast time - gear
        sets.precast.summoning = set_combine(sets.precast.casting,{
            main="Nirvana",
            sub="Oneiros Grip",
    -- ranged="",        
    ammo="Impatiens",
            head="Merlinic Hood",
            neck="Jeweled Collar",
            lear="Loquacious Earring",
            rear="Mendicant's Earring",
            body="Inyanga Jubbah +1",
            hands="Helios Gloves",
            lring="Lebeche Ring",
            rring="Weatherspoon Ring",
            back="Swith Cape",
            waist="Witful Belt",
            legs="Psycloth Lappas",
            feet="Regal Pumps +1"
        })
           
        -- Enhancing Magic, eg. Siegal Sash, etc
        sets.precast.enhancing = set_combine(sets.precast.casting,{
            main="Nirvana",
            sub="Oneiros Grip",        
    -- ranged="",        
    ammo="Impatiens",
            head="Merlinic Hood",
            neck="Jeweled Collar",
            lear="Loquacious Earring",
            rear="Mendicant's Earring",
            body="Inyanga Jubbah +1",
            hands="Helios Gloves",
            lring="Lebeche Ring",
            rring="Weatherspoon Ring",
            back="Swith Cape",
            waist="Siegal Sash",
            legs="Psycloth Lappas",
            feet="Regal Pumps +1"
        })
       
        -- Stoneskin casting time -, works off of enhancing -
        sets.precast.stoneskin = set_combine(sets.precast.enhancing,{
            main="Nirvana",
            sub="Oneiros Grip",        
    -- ranged="",        
    ammo="Impatiens",
            head="Umuthi Hat",
            neck="Jeweled Collar",
            lear="Loquacious Earring",
            rear="Mendicant's Earring",
            body="Inyanga Jubbah +1",
            hands="Helios Gloves",
            lring="Lebeche Ring",
            rring="Weatherspoon Ring",
            back="Swith Cape",
            waist="Siegal Sash",
            legs="Psycloth Lappas",
            feet="Regal Pumps +1"
        })
           
        -- Curing Precast, Cure Spell Casting time -
        sets.precast.cure = set_combine(sets.precast.casting,{
            main="Serenity",
            sub="Oneiros Grip",        
    -- ranged="",        
    ammo="Impatiens",
            head="Merlinic Hood",
            neck="Jeweled Collar",
            lear="Loquacious Earring",
            rear="Mendicant's Earring",
            body="Heka's Kalasiris",
            hands="Helios Gloves",
            lring="Lebeche Ring",
            rring="Weatherspoon Ring",
            back="Pahtli Cape",
            waist="Witful Belt",
            legs="Psycloth Lappas",
            feet="Regal Pumps +1"
        })
           
        ---------------------
        -- Ability Precasting
        ---------------------
           
        -- Blood Pact Ability Delay
        sets.precast.bp = {
            main="Nirvana",
            sub="Oneiros Grip",        
    -- ranged="",        
    ammo="Seraphicaller",
            head="Convoker's Horn +1",
            neck="Caller's Pendant",
            lear="Evans Earring",
            rear="Andoaa Earring",
            body="Glyphic Doublet",
            hands="Glyphic Bracers +1",
            lring="Evoker's Ring",
            rring="Speaker's Ring",
            back="Conveyance Cape",
            waist="Lucidity Sash",
            legs="Enticer's Pants",
            feet="Glyphic Pigaches +1"
        }
           
        -- Mana Cede
        sets.precast["Mana Cede"] = {
         -- main="",
            -- sub="",
            -- ranged="",
            -- ammo="",
            -- head="",
            -- neck="",
            -- lear="",
            -- rear="",
            -- body="",
            hands="Beckoner's Bracers",
            -- lring="",
            -- rring="",
            -- back="",
            -- waist="",
            -- legs="",
            -- feet=""           
            }
           
        -- Astral Flow  
        sets.precast["Astral Flow"] = {
         -- main="",
            -- sub="",
            -- ranged="",
            -- ammo="",
            head="Glyphic Horn",
            -- neck="",
            -- lear="",
            -- rear="",
            -- body="",
            -- hands="",
            -- lring="",
            -- rring="",
            -- back="",
            -- waist="",
            -- legs="",
            -- feet=""   
            }
           
        ----------
        -- Midcast
        ----------
           
        -- We handle the damage and etc. in Pet Midcast later
           
        -- Whatever you want to equip mid-cast as a catch all for all spells, and we'll overwrite later for individual spells
        sets.midcast.casting = {
           main="Nirvana",
            sub="Oneiros Grip",        
    -- ranged="",        
    ammo="Seraphicaller",
            head="Umuthi Hat",
            neck="Melic Torque",
            lear="Loquacious Earring",
            rear="Andoaa Earring",
            body="Telchine Chasuble",
            hands="Inyanga Dastanas +1",
            lring="Lebeche Ring",
            rring="Weatherspoon Ring",
            back="Swith Cape",
            waist="Witful Belt",
            legs="Psycloth Lappas",
            feet="Regal Pumps +1"
                }
           
        -- Enhancing
        sets.midcast.enhancing = set_combine(sets.midcast.casting,{
            main="Nirvana",
            sub="Oneiros Grip",        
    -- ranged="",        
    ammo="Seraphicaller",
            head="Umuthi Hat",
            neck="Melic Torque",
            lear="Loquacious Earring",
            rear="Andoaa Earring",
            body="Telchine Chasuble",
            hands="Inyanga Dastanas +1",
            lring="Lebeche Ring",
            rring="Weatherspoon Ring",
            back="Swith Cape",
            waist="Witful Belt",
            legs="Psycloth Lappas",
            feet="Regal Pumps +1"
        })
           
        -- Stoneskin
        sets.midcast.stoneskin = set_combine(sets.midcast.enhancing,{
            main="Nirvana",
            sub="Oneiros Grip",        
    -- ranged="",        
    ammo="Seraphicaller",
            head="Umuthi Hat",
            neck="Nodens Gorget",
            lear="Loquacious Earring",
            rear="Andoaa Earring",
            body="Telchine Chasuble",
            hands="Inyanga Dastanas +1",
            lring="Lebeche Ring",
            rring="Weatherspoon Ring",
            back="Swith Cape",
            waist="Siegal Sash",
            legs="Psycloth Lappas",
            feet="Regal Pumps +1"
        })
        -- Elemental Siphon, eg, Tatsumaki Thingies, Esper Stone, etc
        sets.midcast.siphon = set_combine(sets.avatar.skill,{
            main="Keraunos",
            sub="Oneiros Grip",        
    -- ranged="",        
    ammo="Seraphicaller",
            head="Convoker's Horn +1",
            neck="Caller's Pendant",
            lear="Evan's Earring",
            rear="Andoaa Earring",
            body="Beckoner's Doublet",
            hands="Lamassu Mitts +1",
            lring="Evoker's Ring",
            rring="Fervor Ring",
            back="Conveyance Cape",
            waist="Lucidity Sash",
            legs="Beckoner's Spats",
            feet="Rubeus Boots"
        })
             
        -- Cure Potency
        sets.midcast.cure = set_combine(sets.midcast.casting,{
            main="Serenity",
            sub="Oneiros Grip",        
    -- ranged="",        
    ammo="Seraphicaller",
            head="Merlinic Hood",
            neck="Phalaina Locket",
            lear="Roundel Earring",
            rear="Mendicant's Earring",
            body="Heka's Kalasiris",
            hands="Helios Gloves",
            lring="Lebeche Ring",
            rring="Weatherspoon Ring",
            back="Solemnity Cape",
            waist="Gishdubar Sash",
            legs="Gyve Trousers",
            feet="Medium's Sabots"
        })
           
        ------------
        -- Aftercast
        ------------
           
        -- I don't use aftercast sets, as we handle what to equip later depending on conditions using a function, eg, do we have an avatar out?
       
    end
    Could someone please help me figure out how I broke it?

  4. #5244
    Relic Shield
    Join Date
    Jan 2013
    Posts
    1,868
    BG Level
    6

    Quote Originally Posted by Teryu View Post
    So I was trying to make a SMN gearswap based on the one from this thread: http://www.ffxiah.com/forum/topic/47...er-gearswap/4/

    However when I try to do anything nothing happens. When I tried using debug mode it just went though all the gear changes at once but no gear was actually changed.

    Code:
    function set_macros(sheet,book)
        if book then 
            send_command('@input /macro book '..tostring(book)..';wait .1;input /macro set '..tostring(sheet))
            return
        end
        send_command('@input /macro set '..tostring(sheet))
    end
      
    function set_style(sheet)
        send_command('@input /lockstyleset '..sheet)
    end
      
    bp_physical=S{'Punch','Rock Throw','Barracuda Dive','Claw','Axe Kick','Shock Strike','Camisado','Regal Scratch','Poison Nails','Moonlit Charge','Crescent Fang','Rock Buster','Tail Whip','Double Punch','Megalith Throw','Double Slap','Eclipse Bite','Mountain Buster','Spinning Dive','Predator Claws','Rush','Chaotic Strike','Crag Throw','Volt Strike'}bp_hybrid=S{'Burning Strike','Flaming Crush'}bp_magical=S{'Inferno','Earthen Fury','Tidal Wave','Aerial Blast','Diamond Dust','Judgment Bolt','Searing Light','Howling Moon','Ruinous Omen','Fire II','Stone II','Water II','Aero II','Blizzard II','Thunder II','Thunderspark','Somnolence','Meteorite','Fire IV','Stone IV','Water IV','Aero IV','Blizzard IV','Thunder IV','Nether Blast','Meteor Strike','Geocrush','Grand Fall','Wind Blade','Heavenly Strike','Thunderstorm','Level ? Holy','Holy Mist','Lunar Bay','Night Terror','Conflag Strike'}bp_debuff=S{'Lunar Cry','Mewing Lullaby','Nightmare','Lunar Roar','Slowga','Ultimate Terror','Sleepga','Eerie Eye','Tidal Roar','Diamond Storm','Shock Squall','Pavor Nocturnus'}bp_buff=S{'Shining Ruby','Frost Armor','Rolling Thunder','Crimson Howl','Lightning Armor','Ecliptic Growl','Hastega','Noctoshield','Ecliptic Howl','Dream Shroud','Earthen Armor','Fleet Wind','Inferno Howl','Soothing Ruby','Heavenward Howl','Soothing Current','Hastega II','Crystal Blessing'}bp_other=S{'Healing Ruby','Raise II','Aerial Armor','Reraise II','Whispering Wind','Glittering Ruby','Earthen Ward','Spring Water','Healing Ruby II'} AvatarList=S{'Shiva','Ramuh','Garuda','Leviathan','Diabolos','Titan','Fenrir','Ifrit','Carbuncle','Fire Spirit','Air Spirit','Ice Spirit','Thunder Spirit','Light Spirit','Dark Spirit','Earth Spirit','Water Spirit','Cait Sith','Alexander','Odin','Atomos'}spirit_element={Fire='Fire Spirit',Earth='Earth Spirit',Water='Water Spirit',Wind='Air Spirit',Ice='Ice Spirit',Lightning='Thunder Spirit',Light='Light Spirit',Dark='Dark Spirit'}spirit_conflict={Fire='Ice',Earth='Lightning',Water='Fire',Wind='Earth',Ice='Wind',Lightning='Water',Light='Dark',Dark='Light'}
     
    -- Setup your Key Bindings here:  
        windower.send_command('bind f7 gs c toggle mb')
        windower.send_command('bind f9 gs c avatar mode')
        windower.send_command('bind f10 gs c toggle auto')
        windower.send_command('bind f12 gs c toggle melee')
          
          
    -- Setup your Gear Sets below:
    function get_sets()
       
        -- My formatting is very easy to follow. All sets that pertain to my character doing things are under 'me'.
        -- All sets that are equipped to faciliate my avatar's behaviour or abilities are under 'avatar', eg, Perpetuation, Blood Pacts, etc
           
        sets.me = {}        -- leave this empty
        sets.avatar = {}    -- leave this empty
           
        -- Your idle set when you DON'T have an avatar out
        sets.me.idle = {
            main="Bolelabunga",
            sub="Genbu's Shield",
           -- ranged="",
            ammo="Seraphicaller",
            head="Convoker's Horn +1",
            neck="Sanctity Necklace",
            lear="Loquacious Earring",
            rear="Andoaa Earring",
            body="Hagondes Coat",
            hands="Asteria Mitts +1",
            lring="Sheltered Ring",
            rring="Paguroidea Ring",
            back="Umbra Cape",
            waist="Fucho-no-Obi",
            legs="Assiduity Pants +1",
            feet="Herald's Gaiters"
        }
           
        -- Your MP Recovered Whilst Resting Set
        sets.me.resting = { 
            main="Bolelabunga",
            sub="Genbu's Shield",
        -- ranged="",        
        ammo="Seraphicaller",
            head="Convoker's Horn +1",
            neck="Sanctity Necklace",
            lear="Loquacious Earring",
            rear="Andoaa Earring",
            body="Hagondes Coat",
            hands="Asteria Mitts +1",
            lring="Sheltered Ring",
            rring="Paguroidea Ring",
            back="Umbra Cape",
            waist="Fucho-no-Obi",
            legs="Assiduity Pants +1",
            feet="Herald's Gaiters"
        }
           
        -----------------------
        -- Perpetuation Related
        -----------------------
           
        -- Avatar's Out --  
        -- This is the base for all perpetuation scenarios, as seen below
        sets.avatar.perp = {
            main="Nirvana",
            sub="Oneiros Grip",        
    -- ranged="",        
    ammo="Seraphicaller",
            head="Convoker's Horn +1",
            neck="Caller's Pendant",
            lear="Rimeice Earring",
            rear="Domesticator's Earring",
            body="Hagondes Coat",
            hands="Regimen Mittens",
            lring="Evoker's Ring",
            rring="Sangoma Ring",
            back="Campestres's Cape",
            waist="Moepapa Stone",
            legs="Enticer's Pants",
            feet="Apogee Pumps"
        }
       
        -- The following sets base off of perpetuation, so you can consider them idle sets.
        -- Set the relevant gear, bearing in mind it will overwrite the perpetuation item for that slot!
        sets.avatar["Carbuncle"] = {hands="Asteria Mitts +1"}
        sets.avatar["Cait Sith"] = {hands="Lamassu Mitts +1"}
        -- When we want our avatar to stay alive
        sets.avatar.tank = set_combine(sets.avatar.perp,{
            main="Nirvana",
            sub="Oneiros Grip",        
    -- ranged="",        
    ammo="Seraphicaller",
            head="Convoker's Horn +1",
            neck="Caller's Pendant",
            lear="Handler's Earring",
            rear="Handler's Earring +1",
            body="Hagondes Coat",
            hands="Regimen Mittens",
            lring="Evoker's Ring",
            rring="Sangoma Ring",
            back="Campestres's Cape",
            waist="Moepapa Stone",
            legs="Enticer's Pants",
            feet="Apogee Pumps"
        })
           
        -- When we want our avatar to shred
        sets.avatar.melee = set_combine(sets.avatar.perp,{
            main="Nirvana",
            sub="Oneiros Grip",        
    -- ranged="",        
    ammo="Seraphicaller",
            head="Convoker's Horn +1",
            neck="Caller's Pendant",
            lear="Rimeice Earring",
            rear="Domesticator's Earring",
            body="Hagondes Coat",
            hands="Regimen Mittens",
            lring="Evoker's Ring",
            rring="Sangoma Ring",
            back="Campestres's Cape",
            waist="Moepapa Stone",
            legs="Enticer's Pants",
            feet="Apogee Pumps"
        })
           
        -- When we want our avatar to hit
        sets.avatar.acc = set_combine(sets.avatar.perp,{
            main="Nirvana",
            sub="Oneiros Grip",        
    -- ranged="",        
    ammo="Seraphicaller",
            head="Convoker's Horn +1",
            neck="Caller's Pendant",
            lear="Rimeice Earring",
            rear="Domesticator's Earring",
            body="Hagondes Coat",
            hands="Regimen Mittens",
            lring="Evoker's Ring",
            rring="Sangoma Ring",
            back="Campestres's Cape",
            waist="Moepapa Stone",
            legs="Enticer's Pants",
            feet="Apogee Pumps"
        })
           
        -- When Avatar's Favori s active
        sets.avatar.favor = set_combine(sets.avatar.perp,{
            main="Nirvana",
            sub="Oneiros Grip",        
    -- ranged="",        
    ammo="Seraphicaller",
            head="Beckoner's Horn",
            neck="Caller's Pendant",
            lear="Rimeice Earring",
            rear="Domesticator's Earring",
            body="Hagondes Coat",
            hands="Regimen Mittens",
            lring="Evoker's Ring",
            rring="Sangoma Ring",
            back="Campestres's Cape",
            waist="Moepapa Stone",
            legs="Enticer's Pants",
            feet="Apogee Pumps"
        })
           
        ----------------------------
        -- Summoning Skill Related
        -- Including all blood pacts
        ----------------------------
           
        -- + Summoning Magic. This is a base set for max skill and blood pacts and we'll overwrite later as and when we need to
        sets.avatar.skill = {
            main="Tumafyrig",
            sub="Oneiros Grip",        
    -- ranged="",        
    ammo="Seraphicaller",
            head="Convoker's Horn +1",
            neck="Caller's Pendant",
            lear="Evans Earring",
            rear="Andoaa Earring",
            body="Beckoner's Doublet",
            hands="Lamassu Mitts +1",
            lring="Evoker's Ring",
            rring="Fervor Ring",
            back="Conveyance Cape",
            waist="Lucidity Sash",
            legs="Beckoner's Spats",
            feet="Rubeus Boots"
        }
           
        -------------------------
        -- Individual Blood Pacts
        -------------------------
           
        -- Physical damage
        sets.avatar.atk = set_combine(sets.avatar.skill,{
            main="Nirvana",
            sub="Oneiros Grip",        
    -- ranged="",        
    ammo="Seraphicaller",
            head="Helios Band",
            neck="Caller's Pendant",
            lear="Esper Earring",
            rear="Domesticator's Earring",
            body="Helios Jacket",
            hands="Apogee Mitts",
            lring="Evoker's Ring",
            rring="Fervor Ring",
            back="Campestres's Cape",
            waist="Incarnation Sash",
            legs="Enticer's Pants",
            feet="Apogee Pumps"
        })
        sets.avatar.pacc = set_combine(sets.avatar.atk,{
            main="Nirvana",
            sub="Oneiros Grip",        
    -- ranged="",        
    ammo="Seraphicaller",
            head="Helios Band",
            neck="Caller's Pendant",
            lear="Esper Earring",
            rear="Domesticator's Earring",
            body="Helios Jacket",
            hands="Apogee Mitts",
            lring="Evoker's Ring",
            rring="Fervor Ring",
            back="Campestres's Cape",
            waist="Incarnation Sash",
            legs="Enticer's Pants",
            feet="Apogee Pumps"
        })
           
        -- Magic Attack
        sets.avatar.mab = set_combine(sets.avatar.skill,{
            main="Nirvana",
            sub="Oneiros Grip",        
    -- ranged="",        
    ammo="Seraphicaller",
            head="Helios Band",
            neck="Caller's Pendant",
            lear="Esper Earring",
            rear="Domesticator's Earring",
            body="Convoker's Doublet +1",
            hands="Apogee Mitts",
            lring="Evoker's Ring",
            rring="Fervor Ring",
            back="Campestres's Cape",
            waist="Incarnation Sash",
            legs="Enticer's Pants",
            feet="Apogee Pumps"
        })
        sets.avatar.mb = set_combine(sets.avatar.mab,{hands="Glyphic Bracers +1"})
        -- Hybrid
        sets.avatar.hybrid = set_combine(sets.avatar.skill,{
            main="Nirvana",
            sub="Oneiros Grip",        
    -- ranged="",        
    ammo="Seraphicaller",
            head="Helios Band",
            neck="Caller's Pendant",
            lear="Esper Earring",
            rear="Domesticator's Earring",
            body="Convoker's Doublet +1",
            hands="Apogee Mitts",
            lring="Evoker's Ring",
            rring="Fervor Ring",
            back="Campestres's Cape",
            waist="Incarnation Sash",
            legs="Enticer's Pants",
            feet="Apogee Pumps"
        })
           
        -- Magic Accuracy
        sets.avatar.macc = set_combine(sets.avatar.skill,{
            main="Nirvana",
            sub="Oneiros Grip",        
    -- ranged="",        
    ammo="Seraphicaller",
            head="Helios Band",
            neck="Caller's Pendant",
            lear="Evans Earring",
            rear="Andoaa Earring",
            body="Beckoner's Doublet",
            hands="Lamassu Mitts +1",
            lring="Evoker's Ring",
            rring="Fervor Ring",
            back="Campestres's Cape",
            waist="Incarnation Sash",
            legs="Enticer's Pants",
            feet="Beckoner's Pigaches"
        })
           
        -- Buffs
        sets.avatar.buff = set_combine(sets.avatar.skill,{
            main="Tumafyrig",
            sub="Oneiros Grip",        
    -- ranged="",        
    ammo="Seraphicaller",
            head="Convoker's Horn +1",
            neck="Caller's Pendant",
            lear="Evans Earring",
            rear="Andoaa Earring",
            body="Beckoner's Doublet",
            hands="Lamassu Mitts +1",
            lring="Evoker's Ring",
            rring="Fervor Ring",
            back="Campestres's Cape",
            waist="Lucidity Sash",
            legs="Beckoner's Spats",
            feet="Rubeus Boots"
        })
           
        -- Other
        sets.avatar.other = set_combine(sets.avatar.skill,{
             main="Tumafyrig",
            sub="Oneiros Grip",        
    -- ranged="",        
    ammo="Seraphicaller",
            head="Convoker's Horn +1",
            neck="Caller's Pendant",
            lear="Evans Earring",
            rear="Andoaa Earring",
            body="Beckoner's Doublet",
            hands="Lamassu Mitts +1",
            lring="Evoker's Ring",
            rring="Fervor Ring",
            back="Campestres's Cape",
            waist="Lucidity Sash",
            legs="Beckoner's Spats",
            feet="Rubeus Boots"
        })
           
        -- Combat Related Sets
           
        -- Melee
        -- The melee set combines with perpetuation, because we don't want to be losing all our MP whilst we swing our Staff
        -- Anything you equip here will overwrite the perpetuation/refresh in that slot.
        sets.me.melee = set_combine(sets.avatar.perp,{
                })
           
        -- Shattersoul. Weapon Skills do not work off perpetuation as it only stays equipped for a moment
        sets.me["Shattersoul"] = {
        -- main="",
            -- sub="",
            -- ranged="",
            -- ammo="",
            -- head="",
            -- neck="",
            -- lear="",
            -- rear="",
            -- body="",
            -- hands="",
            -- lring="",
            -- rring="",
            -- back="",
            -- waist="",
            -- legs="",
            -- feet=""
                }
        sets.me["Garland of Bliss"] = {
            main="Nirvana",
            sub="Oneiros Grip",        
    -- ranged="",        
    ammo="Seraphicaller",
            head="Merlinic Hood",
            neck="Fotia Gorget",
            lear="Friomisi Earring",
            rear="Crematio Earring",
            body="Witching Robe",
            hands="Helios Gloves",
            lring="Shiva Ring +1",
            rring="Weatherspoon Ring",
            back="Campestres's Cape",
            waist="Sekhmet Corset",
            legs="Merlinic Shalwar",
            feet="Merlinic Crackows"
        }
           
        -- Feel free to add new weapon skills, make sure you spell it the same as in game. These are the only two I ever use though
       
        ---------------
        -- Casting Sets
        ---------------
           
        sets.precast = {}
        sets.midcast = {}
        sets.aftercast = {}
           
        ----------
        -- Precast
        ----------
           
        -- Generic Casting Set that all others take off of. Here you should add all your fast cast  
        sets.precast.casting = {
            main="Nirvana",
            sub="Oneiros Grip",        
    -- ranged="",        
    ammo="Impatiens",
            head="Merlinic Hood",
            neck="Jeweled Collar",
            lear="Loquacious Earring",
            rear="Mendicant's Earring",
            body="Inyanga Jubbah +1",
            hands="Helios Gloves",
            lring="Lebeche Ring",
            rring="Weatherspoon Ring",
            back="Swith Cape",
            waist="Witful Belt",
            legs="Psycloth Lappas",
            feet="Regal Pumps +1"
        }   
           
        -- Summoning Magic Cast time - gear
        sets.precast.summoning = set_combine(sets.precast.casting,{
            main="Nirvana",
            sub="Oneiros Grip",
    -- ranged="",        
    ammo="Impatiens",
            head="Merlinic Hood",
            neck="Jeweled Collar",
            lear="Loquacious Earring",
            rear="Mendicant's Earring",
            body="Inyanga Jubbah +1",
            hands="Helios Gloves",
            lring="Lebeche Ring",
            rring="Weatherspoon Ring",
            back="Swith Cape",
            waist="Witful Belt",
            legs="Psycloth Lappas",
            feet="Regal Pumps +1"
        })
           
        -- Enhancing Magic, eg. Siegal Sash, etc
        sets.precast.enhancing = set_combine(sets.precast.casting,{
            main="Nirvana",
            sub="Oneiros Grip",        
    -- ranged="",        
    ammo="Impatiens",
            head="Merlinic Hood",
            neck="Jeweled Collar",
            lear="Loquacious Earring",
            rear="Mendicant's Earring",
            body="Inyanga Jubbah +1",
            hands="Helios Gloves",
            lring="Lebeche Ring",
            rring="Weatherspoon Ring",
            back="Swith Cape",
            waist="Siegal Sash",
            legs="Psycloth Lappas",
            feet="Regal Pumps +1"
        })
       
        -- Stoneskin casting time -, works off of enhancing -
        sets.precast.stoneskin = set_combine(sets.precast.enhancing,{
            main="Nirvana",
            sub="Oneiros Grip",        
    -- ranged="",        
    ammo="Impatiens",
            head="Umuthi Hat",
            neck="Jeweled Collar",
            lear="Loquacious Earring",
            rear="Mendicant's Earring",
            body="Inyanga Jubbah +1",
            hands="Helios Gloves",
            lring="Lebeche Ring",
            rring="Weatherspoon Ring",
            back="Swith Cape",
            waist="Siegal Sash",
            legs="Psycloth Lappas",
            feet="Regal Pumps +1"
        })
           
        -- Curing Precast, Cure Spell Casting time -
        sets.precast.cure = set_combine(sets.precast.casting,{
            main="Serenity",
            sub="Oneiros Grip",        
    -- ranged="",        
    ammo="Impatiens",
            head="Merlinic Hood",
            neck="Jeweled Collar",
            lear="Loquacious Earring",
            rear="Mendicant's Earring",
            body="Heka's Kalasiris",
            hands="Helios Gloves",
            lring="Lebeche Ring",
            rring="Weatherspoon Ring",
            back="Pahtli Cape",
            waist="Witful Belt",
            legs="Psycloth Lappas",
            feet="Regal Pumps +1"
        })
           
        ---------------------
        -- Ability Precasting
        ---------------------
           
        -- Blood Pact Ability Delay
        sets.precast.bp = {
            main="Nirvana",
            sub="Oneiros Grip",        
    -- ranged="",        
    ammo="Seraphicaller",
            head="Convoker's Horn +1",
            neck="Caller's Pendant",
            lear="Evans Earring",
            rear="Andoaa Earring",
            body="Glyphic Doublet",
            hands="Glyphic Bracers +1",
            lring="Evoker's Ring",
            rring="Speaker's Ring",
            back="Conveyance Cape",
            waist="Lucidity Sash",
            legs="Enticer's Pants",
            feet="Glyphic Pigaches +1"
        }
           
        -- Mana Cede
        sets.precast["Mana Cede"] = {
         -- main="",
            -- sub="",
            -- ranged="",
            -- ammo="",
            -- head="",
            -- neck="",
            -- lear="",
            -- rear="",
            -- body="",
            hands="Beckoner's Bracers",
            -- lring="",
            -- rring="",
            -- back="",
            -- waist="",
            -- legs="",
            -- feet=""           
            }
           
        -- Astral Flow  
        sets.precast["Astral Flow"] = {
         -- main="",
            -- sub="",
            -- ranged="",
            -- ammo="",
            head="Glyphic Horn",
            -- neck="",
            -- lear="",
            -- rear="",
            -- body="",
            -- hands="",
            -- lring="",
            -- rring="",
            -- back="",
            -- waist="",
            -- legs="",
            -- feet=""   
            }
           
        ----------
        -- Midcast
        ----------
           
        -- We handle the damage and etc. in Pet Midcast later
           
        -- Whatever you want to equip mid-cast as a catch all for all spells, and we'll overwrite later for individual spells
        sets.midcast.casting = {
           main="Nirvana",
            sub="Oneiros Grip",        
    -- ranged="",        
    ammo="Seraphicaller",
            head="Umuthi Hat",
            neck="Melic Torque",
            lear="Loquacious Earring",
            rear="Andoaa Earring",
            body="Telchine Chasuble",
            hands="Inyanga Dastanas +1",
            lring="Lebeche Ring",
            rring="Weatherspoon Ring",
            back="Swith Cape",
            waist="Witful Belt",
            legs="Psycloth Lappas",
            feet="Regal Pumps +1"
                }
           
        -- Enhancing
        sets.midcast.enhancing = set_combine(sets.midcast.casting,{
            main="Nirvana",
            sub="Oneiros Grip",        
    -- ranged="",        
    ammo="Seraphicaller",
            head="Umuthi Hat",
            neck="Melic Torque",
            lear="Loquacious Earring",
            rear="Andoaa Earring",
            body="Telchine Chasuble",
            hands="Inyanga Dastanas +1",
            lring="Lebeche Ring",
            rring="Weatherspoon Ring",
            back="Swith Cape",
            waist="Witful Belt",
            legs="Psycloth Lappas",
            feet="Regal Pumps +1"
        })
           
        -- Stoneskin
        sets.midcast.stoneskin = set_combine(sets.midcast.enhancing,{
            main="Nirvana",
            sub="Oneiros Grip",        
    -- ranged="",        
    ammo="Seraphicaller",
            head="Umuthi Hat",
            neck="Nodens Gorget",
            lear="Loquacious Earring",
            rear="Andoaa Earring",
            body="Telchine Chasuble",
            hands="Inyanga Dastanas +1",
            lring="Lebeche Ring",
            rring="Weatherspoon Ring",
            back="Swith Cape",
            waist="Siegal Sash",
            legs="Psycloth Lappas",
            feet="Regal Pumps +1"
        })
        -- Elemental Siphon, eg, Tatsumaki Thingies, Esper Stone, etc
        sets.midcast.siphon = set_combine(sets.avatar.skill,{
            main="Keraunos",
            sub="Oneiros Grip",        
    -- ranged="",        
    ammo="Seraphicaller",
            head="Convoker's Horn +1",
            neck="Caller's Pendant",
            lear="Evan's Earring",
            rear="Andoaa Earring",
            body="Beckoner's Doublet",
            hands="Lamassu Mitts +1",
            lring="Evoker's Ring",
            rring="Fervor Ring",
            back="Conveyance Cape",
            waist="Lucidity Sash",
            legs="Beckoner's Spats",
            feet="Rubeus Boots"
        })
             
        -- Cure Potency
        sets.midcast.cure = set_combine(sets.midcast.casting,{
            main="Serenity",
            sub="Oneiros Grip",        
    -- ranged="",        
    ammo="Seraphicaller",
            head="Merlinic Hood",
            neck="Phalaina Locket",
            lear="Roundel Earring",
            rear="Mendicant's Earring",
            body="Heka's Kalasiris",
            hands="Helios Gloves",
            lring="Lebeche Ring",
            rring="Weatherspoon Ring",
            back="Solemnity Cape",
            waist="Gishdubar Sash",
            legs="Gyve Trousers",
            feet="Medium's Sabots"
        })
           
        ------------
        -- Aftercast
        ------------
           
        -- I don't use aftercast sets, as we handle what to equip later depending on conditions using a function, eg, do we have an avatar out?
       
    end
    Could someone please help me figure out how I broke it?
    Im no code pro but all i see there other than some equipment sets are a function to set to the correct macro book/set, one for lockstyle, a bunch of tables, listed right after each other makin that kind of hard to read, for determining physical pacts, avatars and im sure elemental siphon type stuff. then you have some key bindings. After that is hella amount of armor sets.

    There is no code to say do this when this happens (no precast, midcast, aftercast, buff changes, status changes, commands, ect... Are you missing some includes? trying to use Mote's file? If you are using some includes you have to reference them in the file. I dont know that code off hand though as im on another pc than my game is.

  5. #5245
    Relic Shield
    Join Date
    Jan 2013
    Posts
    1,868
    BG Level
    6

    Looked at the thread you said you got it from you missed copying all the code after aftercasts. so go put that in.

  6. #5246
    Bagel
    Join Date
    Dec 2012
    Posts
    1,488
    BG Level
    6

    you also have no control functions in what you posted so nothing can be done
    missing available functions (with out at lest one of these nothing will ever be done):
    Code:
            pretarget(spell) --Passes the resources line for the spell with a few modifications. Occurs when the command text hits the outgoing text buffer. Does not occur for actions that bypass the outgoing text buffer (like using items from the menu). cancel_spell() and change_target() are implemented in this phase.
            precast(spell) --Passes the resources line for the spell with a few modifications. Occurs immediately before the outgoing action packet is injected. cancel_spell(), verify_equip(), force_send(), and cast_delay() are implemented in this phase. Does not occur for items that bypass the outgoing text buffer (like using items from the menu).
            midcast(spell) --Passes the resources line for the spell with a few modifications. Occurs immediately after the outgoing action packet is injected. Does not occur for items that bypass the outgoing text buffer (like using items from the menu).
            aftercast(spell) --Passes the resources line for the spell with a few modifications. Occurs when the "result" action packet is received from the server, or an interruption of some kind is detected.
            pet_change(pet,gain) --Passes in the "pet" table and a boolean indicating whether the pet is being summoned (true) or dismissed (false). Order is not guaranteed relative to aftercast for JAs like Release or Leave.
            pet_midcast(spell) --Passes the resources line for the spell with a few modifications. Occurs when the "readies" action packet is received for your pet.
            pet_aftercast(spell) --Passes the resources line for the spell with a few modifications. Occurs when the "result" action packet is received for your pet.
            filtered_action(spell) --Passes the resources line for the spell with a few modifications. Occurs when the player attempts to cast a spell that they are unable to cast. Cancel_spell() is implemented in this phase.
            sub_job_change(new,old) --Passes the three letter abbreviations for your new subjob and your old subjob.
            status_change(new,old) --Passes the new and old statuses.
            pet_status_change(new,old) --Passes the new and old statuses of your pet.
            buff_change(name,gain,buff_table) --Passes the new buff name and a boolean that indicates whether it was gained (true) or lost (false). Does not fire if your buff bar does not change. For instance, overwriting a March with another March will not trigger this event.
            party_buff_change(member_table,name,gain,buff_table) --Passes the table of the party member who gained or lost the buff, the buff name, a boolean that indicates whether it was gained (true) or lost (false), and the resource table for the buff. Does not fire if your buff bar does not change. For instance, overwriting a March with another March will not trigger this event.
            indi_change(indi_table,gain) --Passes the indi effect table when an indi aura changes and a boolean that indicates whether it was gained or lost.
            self_command(command) --Passes any self commands, which are triggered by //gs c <command>
            file_unload(new_job) --Called once on file/addon unload.

  7. #5247
    Bagel
    Join Date
    May 2010
    Posts
    1,277
    BG Level
    6
    FFXI Server
    Lakshmi

    Quote Originally Posted by Trumpy View Post
    Im no code pro but all i see there other than some equipment sets are a function to set to the correct macro book/set, one for lockstyle, a bunch of tables, listed right after each other makin that kind of hard to read, for determining physical pacts, avatars and im sure elemental siphon type stuff. then you have some key bindings. After that is hella amount of armor sets.

    There is no code to say do this when this happens (no precast, midcast, aftercast, buff changes, status changes, commands, ect... Are you missing some includes? trying to use Mote's file? If you are using some includes you have to reference them in the file. I dont know that code off hand though as im on another pc than my game is.
    Oh whoops, for some reason that stuff didn't get copied over when I downloaded it from Github. Thanks guys, looking back it should have been really obvious. D:

    Code:
    function set_macros(sheet,book)
        if book then 
            send_command('@input /macro book '..tostring(book)..';wait .1;input /macro set '..tostring(sheet))
            return
        end
        send_command('@input /macro set '..tostring(sheet))
    end
     
    function set_style(sheet)
        send_command('@input /lockstyleset '..sheet)
    end
     
    bp_physical=S{'Punch','Rock Throw','Barracuda Dive','Claw','Axe Kick','Shock Strike','Camisado','Regal Scratch','Poison Nails','Moonlit Charge','Crescent Fang','Rock Buster','Tail Whip','Double Punch','Megalith Throw','Double Slap','Eclipse Bite','Mountain Buster','Spinning Dive','Predator Claws','Rush','Chaotic Strike','Crag Throw','Volt Strike'}bp_hybrid=S{'Burning Strike','Flaming Crush'}bp_magical=S{'Inferno','Earthen Fury','Tidal Wave','Aerial Blast','Diamond Dust','Judgment Bolt','Searing Light','Howling Moon','Ruinous Omen','Fire II','Stone II','Water II','Aero II','Blizzard II','Thunder II','Thunderspark','Somnolence','Meteorite','Fire IV','Stone IV','Water IV','Aero IV','Blizzard IV','Thunder IV','Nether Blast','Meteor Strike','Geocrush','Grand Fall','Wind Blade','Heavenly Strike','Thunderstorm','Level ? Holy','Holy Mist','Lunar Bay','Night Terror','Conflag Strike'}bp_debuff=S{'Lunar Cry','Mewing Lullaby','Nightmare','Lunar Roar','Slowga','Ultimate Terror','Sleepga','Eerie Eye','Tidal Roar','Diamond Storm','Shock Squall','Pavor Nocturnus'}bp_buff=S{'Shining Ruby','Frost Armor','Rolling Thunder','Crimson Howl','Lightning Armor','Ecliptic Growl','Hastega','Noctoshield','Ecliptic Howl','Dream Shroud','Earthen Armor','Fleet Wind','Inferno Howl','Soothing Ruby','Heavenward Howl','Soothing Current','Hastega II','Crystal Blessing'}bp_other=S{'Healing Ruby','Raise II','Aerial Armor','Reraise II','Whispering Wind','Glittering Ruby','Earthen Ward','Spring Water','Healing Ruby II'} AvatarList=S{'Shiva','Ramuh','Garuda','Leviathan','Diabolos','Titan','Fenrir','Ifrit','Carbuncle','Fire Spirit','Air Spirit','Ice Spirit','Thunder Spirit','Light Spirit','Dark Spirit','Earth Spirit','Water Spirit','Cait Sith','Alexander','Odin','Atomos'}spirit_element={Fire='Fire Spirit',Earth='Earth Spirit',Water='Water Spirit',Wind='Air Spirit',Ice='Ice Spirit',Lightning='Thunder Spirit',Light='Light Spirit',Dark='Dark Spirit'}spirit_conflict={Fire='Ice',Earth='Lightning',Water='Fire',Wind='Earth',Ice='Wind',Lightning='Water',Light='Dark',Dark='Light'}
    
    -- Setup your Key Bindings here:  
        windower.send_command('bind f7 gs c toggle mb')
        windower.send_command('bind f9 gs c avatar mode')
        windower.send_command('bind f10 gs c toggle auto')
        windower.send_command('bind f12 gs c toggle melee')
         
         
    -- Setup your Gear Sets below:
    function get_sets()
      
        -- My formatting is very easy to follow. All sets that pertain to my character doing things are under 'me'.
        -- All sets that are equipped to faciliate my avatar's behaviour or abilities are under 'avatar', eg, Perpetuation, Blood Pacts, etc
          
        sets.me = {}        -- leave this empty
        sets.avatar = {}    -- leave this empty
          
        -- Your idle set when you DON'T have an avatar out
        sets.me.idle = {
            main="Bolelabunga",
            sub="Genbu's Shield",
    	   -- ranged="",
            ammo="Seraphicaller",
            head="Convoker's Horn +1",
            neck="Sanctity Necklace",
            lear="Loquacious Earring",
            rear="Andoaa Earring",
            body="Hagondes Coat",
            hands="Asteria Mitts +1",
            lring="Sheltered Ring",
            rring="Paguroidea Ring",
            back="Umbra Cape",
            waist="Fucho-no-Obi",
            legs="Assiduity Pants +1",
            feet="Herald's Gaiters"
        }
          
        -- Your MP Recovered Whilst Resting Set
        sets.me.resting = { 
            main="Bolelabunga",
            sub="Genbu's Shield",
    	-- ranged="",        
    	ammo="Seraphicaller",
            head="Convoker's Horn +1",
            neck="Sanctity Necklace",
            lear="Loquacious Earring",
            rear="Andoaa Earring",
            body="Hagondes Coat",
            hands="Asteria Mitts +1",
            lring="Sheltered Ring",
            rring="Paguroidea Ring",
            back="Umbra Cape",
            waist="Fucho-no-Obi",
            legs="Assiduity Pants +1",
            feet="Herald's Gaiters"
        }
          
        -----------------------
        -- Perpetuation Related
        -----------------------
          
        -- Avatar's Out --  
        -- This is the base for all perpetuation scenarios, as seen below
        sets.avatar.perp = {
            main="Nirvana",
            sub="Oneiros Grip",        
    	-- ranged="",        
    		ammo="Seraphicaller",
            head="Convoker's Horn +1",
            neck="Caller's Pendant",
            lear="Rimeice Earring",
            rear="Domesticator's Earring",
            body="Hagondes Coat",
            hands="Regimen Mittens",
            lring="Evoker's Ring",
            rring="Sangoma Ring",
            back="Campestres's Cape",
            waist="Moepapa Stone",
            legs="Enticer's Pants",
            feet="Apogee Pumps"
        }
      
        -- The following sets base off of perpetuation, so you can consider them idle sets.
        -- Set the relevant gear, bearing in mind it will overwrite the perpetuation item for that slot!
        sets.avatar["Carbuncle"] = {hands="Asteria Mitts +1"}
        sets.avatar["Cait Sith"] = {hands="Lamassu Mitts +1"}
        -- When we want our avatar to stay alive
        sets.avatar.tank = set_combine(sets.avatar.perp,{
            main="Nirvana",
            sub="Oneiros Grip",        
    	-- ranged="",        
    		ammo="Seraphicaller",
            head="Convoker's Horn +1",
            neck="Caller's Pendant",
            lear="Handler's Earring",
            rear="Handler's Earring +1",
            body="Hagondes Coat",
            hands="Regimen Mittens",
            lring="Evoker's Ring",
            rring="Sangoma Ring",
            back="Campestres's Cape",
            waist="Moepapa Stone",
            legs="Enticer's Pants",
            feet="Apogee Pumps"
        })
          
        -- When we want our avatar to shred
        sets.avatar.melee = set_combine(sets.avatar.perp,{
            main="Nirvana",
            sub="Oneiros Grip",        
    	-- ranged="",        
    		ammo="Seraphicaller",
            head="Convoker's Horn +1",
            neck="Caller's Pendant",
            lear="Rimeice Earring",
            rear="Domesticator's Earring",
            body="Hagondes Coat",
            hands="Regimen Mittens",
            lring="Evoker's Ring",
            rring="Sangoma Ring",
            back="Campestres's Cape",
            waist="Moepapa Stone",
            legs="Enticer's Pants",
            feet="Apogee Pumps"
        })
          
        -- When we want our avatar to hit
        sets.avatar.acc = set_combine(sets.avatar.perp,{
            main="Nirvana",
            sub="Oneiros Grip",        
    	-- ranged="",        
    		ammo="Seraphicaller",
            head="Convoker's Horn +1",
            neck="Caller's Pendant",
            lear="Rimeice Earring",
            rear="Domesticator's Earring",
            body="Hagondes Coat",
            hands="Regimen Mittens",
            lring="Evoker's Ring",
            rring="Sangoma Ring",
            back="Campestres's Cape",
            waist="Moepapa Stone",
            legs="Enticer's Pants",
            feet="Apogee Pumps"
        })
          
        -- When Avatar's Favori s active
        sets.avatar.favor = set_combine(sets.avatar.perp,{
            main="Nirvana",
            sub="Oneiros Grip",        
    	-- ranged="",        
    		ammo="Seraphicaller",
            head="Beckoner's Horn",
            neck="Caller's Pendant",
            lear="Rimeice Earring",
            rear="Domesticator's Earring",
            body="Hagondes Coat",
            hands="Regimen Mittens",
            lring="Evoker's Ring",
            rring="Sangoma Ring",
            back="Campestres's Cape",
            waist="Moepapa Stone",
            legs="Enticer's Pants",
            feet="Apogee Pumps"
        })
          
        ----------------------------
        -- Summoning Skill Related
        -- Including all blood pacts
        ----------------------------
          
        -- + Summoning Magic. This is a base set for max skill and blood pacts and we'll overwrite later as and when we need to
        sets.avatar.skill = {
            main="Tumafyrig",
            sub="Oneiros Grip",        
    	-- ranged="",        
    		ammo="Seraphicaller",
            head="Convoker's Horn +1",
            neck="Caller's Pendant",
            lear="Evans Earring",
            rear="Andoaa Earring",
            body="Beckoner's Doublet",
            hands="Lamassu Mitts +1",
            lring="Evoker's Ring",
            rring="Fervor Ring",
            back="Conveyance Cape",
            waist="Lucidity Sash",
            legs="Beckoner's Spats",
            feet="Rubeus Boots"
        }
          
        -------------------------
        -- Individual Blood Pacts
        -------------------------
          
        -- Physical damage
        sets.avatar.atk = set_combine(sets.avatar.skill,{
            main="Nirvana",
            sub="Oneiros Grip",        
    	-- ranged="",        
    		ammo="Seraphicaller",
            head="Helios Band",
            neck="Caller's Pendant",
            lear="Esper Earring",
            rear="Domesticator's Earring",
            body="Helios Jacket",
            hands="Apogee Mitts",
            lring="Evoker's Ring",
            rring="Fervor Ring",
            back="Campestres's Cape",
            waist="Incarnation Sash",
            legs="Enticer's Pants",
            feet="Apogee Pumps"
        })
        sets.avatar.pacc = set_combine(sets.avatar.atk,{
            main="Nirvana",
            sub="Oneiros Grip",        
    	-- ranged="",        
    		ammo="Seraphicaller",
            head="Helios Band",
            neck="Caller's Pendant",
            lear="Esper Earring",
            rear="Domesticator's Earring",
            body="Helios Jacket",
            hands="Apogee Mitts",
            lring="Evoker's Ring",
            rring="Fervor Ring",
            back="Campestres's Cape",
            waist="Incarnation Sash",
            legs="Enticer's Pants",
            feet="Apogee Pumps"
        })
          
        -- Magic Attack
        sets.avatar.mab = set_combine(sets.avatar.skill,{
            main="Nirvana",
            sub="Oneiros Grip",        
    	-- ranged="",        
    		ammo="Seraphicaller",
            head="Helios Band",
            neck="Caller's Pendant",
            lear="Esper Earring",
            rear="Domesticator's Earring",
            body="Convoker's Doublet +1",
            hands="Apogee Mitts",
            lring="Evoker's Ring",
            rring="Fervor Ring",
            back="Campestres's Cape",
            waist="Incarnation Sash",
            legs="Enticer's Pants",
            feet="Apogee Pumps"
        })
        sets.avatar.mb = set_combine(sets.avatar.mab,{hands="Glyphic Bracers +1"})
        -- Hybrid
        sets.avatar.hybrid = set_combine(sets.avatar.skill,{
            main="Nirvana",
            sub="Oneiros Grip",        
    	-- ranged="",        
    	ammo="Seraphicaller",
            head="Helios Band",
            neck="Caller's Pendant",
            lear="Esper Earring",
            rear="Domesticator's Earring",
            body="Convoker's Doublet +1",
            hands="Apogee Mitts",
            lring="Evoker's Ring",
            rring="Fervor Ring",
            back="Campestres's Cape",
            waist="Incarnation Sash",
            legs="Enticer's Pants",
            feet="Apogee Pumps"
        })
          
        -- Magic Accuracy
        sets.avatar.macc = set_combine(sets.avatar.skill,{
            main="Nirvana",
            sub="Oneiros Grip",        
    	-- ranged="",        
    	ammo="Seraphicaller",
            head="Helios Band",
            neck="Caller's Pendant",
            lear="Evans Earring",
            rear="Andoaa Earring",
            body="Beckoner's Doublet",
            hands="Lamassu Mitts +1",
            lring="Evoker's Ring",
            rring="Fervor Ring",
            back="Campestres's Cape",
            waist="Incarnation Sash",
            legs="Enticer's Pants",
            feet="Beckoner's Pigaches"
        })
          
        -- Buffs
        sets.avatar.buff = set_combine(sets.avatar.skill,{
            main="Tumafyrig",
            sub="Oneiros Grip",        
    	-- ranged="",        
    	ammo="Seraphicaller",
            head="Convoker's Horn +1",
            neck="Caller's Pendant",
            lear="Evans Earring",
            rear="Andoaa Earring",
            body="Beckoner's Doublet",
            hands="Lamassu Mitts +1",
            lring="Evoker's Ring",
            rring="Fervor Ring",
            back="Campestres's Cape",
            waist="Lucidity Sash",
            legs="Beckoner's Spats",
            feet="Rubeus Boots"
        })
          
        -- Other
        sets.avatar.other = set_combine(sets.avatar.skill,{
             main="Tumafyrig",
            sub="Oneiros Grip",        
    	-- ranged="",        
    		ammo="Seraphicaller",
            head="Convoker's Horn +1",
            neck="Caller's Pendant",
            lear="Evans Earring",
            rear="Andoaa Earring",
            body="Beckoner's Doublet",
            hands="Lamassu Mitts +1",
            lring="Evoker's Ring",
            rring="Fervor Ring",
            back="Campestres's Cape",
            waist="Lucidity Sash",
            legs="Beckoner's Spats",
            feet="Rubeus Boots"
        })
          
        -- Combat Related Sets
          
        -- Melee
        -- The melee set combines with perpetuation, because we don't want to be losing all our MP whilst we swing our Staff
        -- Anything you equip here will overwrite the perpetuation/refresh in that slot.
        sets.me.melee = set_combine(sets.avatar.perp,{
                })
          
        -- Shattersoul. Weapon Skills do not work off perpetuation as it only stays equipped for a moment
        sets.me["Shattersoul"] = {
    	-- main="",
            -- sub="",
            -- ranged="",
            -- ammo="",
            -- head="",
            -- neck="",
            -- lear="",
            -- rear="",
            -- body="",
            -- hands="",
            -- lring="",
            -- rring="",
            -- back="",
            -- waist="",
            -- legs="",
            -- feet=""
                }
        sets.me["Garland of Bliss"] = {
            main="Nirvana",
            sub="Oneiros Grip",        
    	-- ranged="",        
    	   ammo="Seraphicaller",
            head="Merlinic Hood",
            neck="Fotia Gorget",
            lear="Friomisi Earring",
            rear="Crematio Earring",
            body="Witching Robe",
            hands="Helios Gloves",
            lring="Shiva Ring +1",
            rring="Weatherspoon Ring",
            back="Campestres's Cape",
            waist="Sekhmet Corset",
            legs="Merlinic Shalwar",
            feet="Merlinic Crackows"
        }
          
        -- Feel free to add new weapon skills, make sure you spell it the same as in game. These are the only two I ever use though
      
        ---------------
        -- Casting Sets
        ---------------
          
        sets.precast = {}
        sets.midcast = {}
        sets.aftercast = {}
          
        ----------
        -- Precast
        ----------
          
        -- Generic Casting Set that all others take off of. Here you should add all your fast cast  
        sets.precast.casting = {
            main="Nirvana",
            sub="Oneiros Grip",        
    	-- ranged="",        
    	   ammo="Impatiens",
            head="Merlinic Hood",
            neck="Jeweled Collar",
            lear="Loquacious Earring",
            rear="Mendicant's Earring",
            body="Inyanga Jubbah +1",
            hands="Helios Gloves",
            lring="Lebeche Ring",
            rring="Weatherspoon Ring",
            back="Swith Cape",
            waist="Witful Belt",
            legs="Psycloth Lappas",
            feet="Regal Pumps +1"
        }   
          
        -- Summoning Magic Cast time - gear
        sets.precast.summoning = set_combine(sets.precast.casting,{
            main="Nirvana",
            sub="Oneiros Grip",
    	-- ranged="",        
            ammo="Impatiens",
            head="Merlinic Hood",
            neck="Jeweled Collar",
            lear="Loquacious Earring",
            rear="Mendicant's Earring",
            body="Inyanga Jubbah +1",
            hands="Helios Gloves",
            lring="Lebeche Ring",
            rring="Weatherspoon Ring",
            back="Swith Cape",
            waist="Witful Belt",
            legs="Psycloth Lappas",
            feet="Regal Pumps +1"
        })
          
        -- Enhancing Magic, eg. Siegal Sash, etc
        sets.precast.enhancing = set_combine(sets.precast.casting,{
            main="Nirvana",
            sub="Oneiros Grip",        
    	-- ranged="",        
    	   ammo="Impatiens",
            head="Merlinic Hood",
            neck="Jeweled Collar",
            lear="Loquacious Earring",
            rear="Mendicant's Earring",
            body="Inyanga Jubbah +1",
            hands="Helios Gloves",
            lring="Lebeche Ring",
            rring="Weatherspoon Ring",
            back="Swith Cape",
            waist="Siegal Sash",
            legs="Psycloth Lappas",
            feet="Regal Pumps +1"
        })
      
        -- Stoneskin casting time -, works off of enhancing -
        sets.precast.stoneskin = set_combine(sets.precast.enhancing,{
            main="Nirvana",
            sub="Oneiros Grip",        
    	-- ranged="",        
    	   ammo="Impatiens",
            head="Umuthi Hat",
            neck="Jeweled Collar",
            lear="Loquacious Earring",
            rear="Mendicant's Earring",
            body="Inyanga Jubbah +1",
            hands="Helios Gloves",
            lring="Lebeche Ring",
            rring="Weatherspoon Ring",
            back="Swith Cape",
            waist="Siegal Sash",
            legs="Psycloth Lappas",
            feet="Regal Pumps +1"
        })
          
        -- Curing Precast, Cure Spell Casting time -
        sets.precast.cure = set_combine(sets.precast.casting,{
            main="Serenity",
            sub="Oneiros Grip",        
    	-- ranged="",        
    	   ammo="Impatiens",
            head="Merlinic Hood",
            neck="Jeweled Collar",
            lear="Loquacious Earring",
            rear="Mendicant's Earring",
            body="Heka's Kalasiris",
            hands="Helios Gloves",
            lring="Lebeche Ring",
            rring="Weatherspoon Ring",
            back="Pahtli Cape",
            waist="Witful Belt",
            legs="Psycloth Lappas",
            feet="Regal Pumps +1"
        })
          
        ---------------------
        -- Ability Precasting
        ---------------------
          
        -- Blood Pact Ability Delay
        sets.precast.bp = {
            main="Nirvana",
            sub="Oneiros Grip",        
    	-- ranged="",        
    	   ammo="Seraphicaller",
            head="Convoker's Horn +1",
            neck="Caller's Pendant",
            lear="Evans Earring",
            rear="Andoaa Earring",
            body="Glyphic Doublet",
            hands="Glyphic Bracers +1",
            lring="Evoker's Ring",
            rring="Speaker's Ring",
            back="Conveyance Cape",
            waist="Lucidity Sash",
            legs="Enticer's Pants",
            feet="Glyphic Pigaches +1"
        }
          
        -- Mana Cede
        sets.precast["Mana Cede"] = {
         -- main="",
            -- sub="",
            -- ranged="",
            -- ammo="",
            -- head="",
            -- neck="",
            -- lear="",
            -- rear="",
            -- body="",
            hands="Beckoner's Bracers",
            -- lring="",
            -- rring="",
            -- back="",
            -- waist="",
            -- legs="",
            -- feet=""           
    	    }
          
        -- Astral Flow  
        sets.precast["Astral Flow"] = {
         -- main="",
            -- sub="",
            -- ranged="",
            -- ammo="",
            head="Glyphic Horn",
            -- neck="",
            -- lear="",
            -- rear="",
            -- body="",
            -- hands="",
            -- lring="",
            -- rring="",
            -- back="",
            -- waist="",
            -- legs="",
            -- feet=""   
    	    }
          
        ----------
        -- Midcast
        ----------
          
        -- We handle the damage and etc. in Pet Midcast later
          
        -- Whatever you want to equip mid-cast as a catch all for all spells, and we'll overwrite later for individual spells
        sets.midcast.casting = {
    	   main="Nirvana",
            sub="Oneiros Grip",        
    	-- ranged="",        
    		ammo="Seraphicaller",
            head="Umuthi Hat",
            neck="Melic Torque",
            lear="Loquacious Earring",
            rear="Andoaa Earring",
            body="Telchine Chasuble",
            hands="Inyanga Dastanas +1",
            lring="Lebeche Ring",
            rring="Weatherspoon Ring",
            back="Swith Cape",
            waist="Witful Belt",
            legs="Psycloth Lappas",
            feet="Regal Pumps +1"
                }
    
    --Elemental Magic
    
    sets.midcast['Elemental Magic'] = {main={name="Keraunos",augments={"INT +23","Mag. Acc. +15 "Mag. Atk. Bns."+15","Magic burst dmg. +5%"}},sub="Niobid Strap",ammo="Ghastly Tathlum",
            head="Merlinic Hood",neck="Mizukage-no-Kubikazari",ear1="Crematio Earring",ear2="Friomisi Earring",
            body="Witching Robe",hands="Helios Gloves",ring1="Shiva Ring +1",ring2="Shiva Ring +1",
            back="Campestres's Cape",waist=gear.ElementalObi,legs="Merlinic Shalwar",feet="Merlinic Crackows"}
          
    
        -- Enhancing
        sets.midcast.enhancing = set_combine(sets.midcast.casting,{
            main="Nirvana",
            sub="Oneiros Grip",        
    	-- ranged="",        
    		ammo="Seraphicaller",
            head="Umuthi Hat",
            neck="Melic Torque",
            lear="Loquacious Earring",
            rear="Andoaa Earring",
            body="Telchine Chasuble",
            hands="Inyanga Dastanas +1",
            lring="Lebeche Ring",
            rring="Weatherspoon Ring",
            back="Swith Cape",
            waist="Witful Belt",
            legs="Psycloth Lappas",
            feet="Regal Pumps +1"
        })
          
        -- Stoneskin
        sets.midcast.stoneskin = set_combine(sets.midcast.enhancing,{
            main="Nirvana",
            sub="Oneiros Grip",        
    	-- ranged="",        
    		ammo="Seraphicaller",
            head="Umuthi Hat",
            neck="Nodens Gorget",
            lear="Loquacious Earring",
            rear="Andoaa Earring",
            body="Telchine Chasuble",
            hands="Inyanga Dastanas +1",
            lring="Lebeche Ring",
            rring="Weatherspoon Ring",
            back="Swith Cape",
            waist="Siegal Sash",
            legs="Psycloth Lappas",
            feet="Regal Pumps +1"
        })
        -- Elemental Siphon, eg, Tatsumaki Thingies, Esper Stone, etc
        sets.midcast.siphon = set_combine(sets.avatar.skill,{
            main={name="Keraunos",augments={""Elemental Siphon"+25","Blood Pact Dmg.+10","Pet:"Mag. Atk. Bns."+15"}}
            sub="Oneiros Grip",        
    	-- ranged="",        
    	ammo="Seraphicaller",
            head="Convoker's Horn +1",
            neck="Caller's Pendant",
            lear="Evan's Earring",
            rear="Andoaa Earring",
            body="Beckoner's Doublet",
            hands="Lamassu Mitts +1",
            lring="Evoker's Ring",
            rring="Fervor Ring",
            back="Conveyance Cape",
            waist="Lucidity Sash",
            legs="Beckoner's Spats",
            feet="Rubeus Boots"
        })
            
        -- Cure Potency
        sets.midcast.cure = set_combine(sets.midcast.casting,{
            main="Serenity",
            sub="Oneiros Grip",        
    	-- ranged="",        
    		ammo="Seraphicaller",
            head="Merlinic Hood",
            neck="Phalaina Locket",
            lear="Roundel Earring",
            rear="Mendicant's Earring",
            body="Heka's Kalasiris",
            hands="Helios Gloves",
            lring="Lebeche Ring",
            rring="Weatherspoon Ring",
            back="Solemnity Cape",
            waist="Gishdubar Sash",
            legs="Gyve Trousers",
            feet="Medium's Sabots"
        })
          
        ------------
        -- Aftercast
        ------------
          
        -- I don't use aftercast sets, as we handle what to equip later depending on conditions using a function, eg, do we have an avatar out?
      
    end
    
    function precast(spell)
     
        -- Don't swap if we're in the middle of something or our pet's doing something
        -- Stops macro spam from interfering with an action GS is already handling
        if midaction() or pet_midaction() then
            return
        end
         
        -- If we're doing a blood pact, equip our delay set IF Apogee or Astral Conduit are not active
        if (spell.type == 'BloodPactRage' or spell.type == 'BloodPactWard') and not (buffactive['Astral Conduit'] or buffactive['Apogee']) then
         
            equip(sets.precast.bp)
             
        elseif spell.type == 'SummonerPact' then
         
            -- This chunk of code handles Elemental Siphon. It will look at the current day and weather and cancel the spell to summon
            -- the right elemental. Your elemental siphon macro should summon a Dark Spirit to trigger this check
             
            -- These use the included lists in global.lua to determine the right spirit to summon
                 
            if spell.name == 'Dark Spirit' then
                if world.weather_element == 'Dark' then
                 
                    -- Dark Weather is active, lets the spell go ahead and equips summoning precast
                    equip(sets.precast.summoning)
                     
                elseif world.weather_element ~= 'None' and spirit_conflict[world.day_element] ~= world.weather_element then
                 
                    -- It's not dark weather but there is some weather up, cancels dark and summons the right spirit
                    cancel_spell()
                    send_command('input /ma "%s" <me>':format(spirit_element[world.weather_element]))
                    equip(sets.precast.summoning)
                     
                elseif world.day_element == 'Dark' then
                 
                    -- It's darksday so allow the dark spirit to go ahead and equip summoning
                    equip(sets.precast.summoning)
                     
                else
                 
                    -- There is no weather up and it's not darksday, so summon the current day's spirit
                    cancel_spell()              
                    send_command('input /ma "%s" <me>':format(spirit_element[world.day_element]))
                    equip(sets.precast.summoning)
                     
                end
            else
             
                -- We're not summoning Dark Spirit, so we don't want to Siphon, which means we're summoning an avatar
                equip(sets.precast.summoning)
                 
            end
             
        -- Moving on to other types of magic
        elseif spell.type == 'WhiteMagic' or spell.type == 'BlackMagic' then
         
            -- Stoneskin Precast
            if spell.name == 'Stoneskin' then
             
                windower.ffxi.cancel_buff(37)--[[Cancels stoneskin, not delayed incase you get a Quick Cast]]
                equip(sets.precast.stoneskin)
                 
            -- Cure Precast
            elseif spell.name:match('Cure') or spell.name:match('Cura') then
             
                equip(sets.precast.cure)
                 
            -- Enhancing Magic
            elseif spell.skill == 'Enhancing Magic' then
             
                equip(sets.precast.enhancing)
                 
                if spell.name == 'Sneak' then
                    windower.ffxi.cancel_buff(71)--[[Cancels Sneak]]
                end
            else
             
                -- For everything else we go with max fastcast
                equip(sets.precast.casting)
                 
            end
    
    function job_precast(spell, action, spellMap, eventArgs)
        if spellMap == 'Cure' or spellMap == 'Curaga' then
            gear.default.obi_waist = "Witful Belt"
        elseif spell.skill == 'Elemental Magic' then
            gear.default.obi_waist = "Sekhmet Corset"
            if state.CastingMode.value == 'Proc' then
                classes.CustomClass = 'Proc'
            end
        end
    end
    
             
        -- Summoner Abilities
        -- We use a catch all here, if the set exists for an ability, use it
        -- This way we don't need to write a load of different code for different abilities, just make a set
         
        elseif sets.precast[spell.name] then
            equip(sets.precast[spell.name])
        end
         
    end
     
    function midcast(spell)
     
        -- If our pet is doing something, prevents us swapping equipment too early
        if pet_midaction() then
            return
        end
         
        -- No need to annotate all this, it's fairly logical. Just equips the relevant sets for the relevant magic
        if spell.type == 'WhiteMagic' or spell.type == 'BlackMagic' then
            if spell.name == 'Stoneskin' then
                equip(sets.midcast.stoneskin)
            elseif spell.name:match('Cure') or spell.name:match('Cura') then
                equip(sets.midcast.cure)
            elseif spell.skill == 'Enhancing Magic' then
                equip(sets.midcast.enhancing)
                if spell.name:match('Protect') or spell.name:match('Shell') then
                    equip({rring="Sheltered Ring"})
                end
            else
                equip(sets.midcast.casting)
            end
        elseif spell.name == 'Elemental Siphon' then
         
            -- Siphon Set
            equip(sets.precast.siphon)
             
            -- Checks if pet matches weather
            if pet.element == world.weather_element then
                equip(sets.precast.siphon,{main="Chatoyant Staff"--[[Take advantage of the weather boost]]})
            end
             
        -- And our catch all, if a set exists for this spell use it
        elseif sets.midcast[spell.name] then
            equip(sets.midcast[spell.name])
             
        -- Remember those WS Sets we defined? :)
        elseif sets.me[spell.name] then
            equip(sets.me[spell.name])
        end
    end
     
    function aftercast(spell)
     
        -- If our pet's doing something, Stop!
        if pet_midaction() then
            return
        end 
         
        -- If not a blood pact or summon
        if spell and (not spell.type or not string.find(spell.type,'BloodPact') and not AvatarList:contains(spell.name) or spell.interrupted) then
         
            -- Then initiate idle function to check which set should be equipped
            idle(pet)
             
        end
    end
     
    function pet_midcast(spell)
     
        -- Our pet is doing something
        if (spell.type == 'BloodPactRage' or spell.type == 'BloodPactWard') then
         
            -- We're going to check the lists in global.lua for matches and equip the relevant sets
             
            if bp_physical:contains(spell.name) then
             
                equip(sets.avatar.atk)
                 
            elseif bp_hybrid:contains(spell.name) then
             
                equip(sets.avatar.hybrid)
                if pet.name == 'Ifrit' then
                    equip({rring="Fervor Ring"})--[[Change rring to lring if you put Evoker's on your right hand]]
                end
                 
            elseif bp_magical:contains(spell.name) then
             
                equip(sets.avatar.mab)
                if pet.name == 'Ifrit' then
                    equip({rring="Fervor Ring"})--[[Change rring to lring if you put Evoker's on your right hand]]
                end
     
            elseif bp_debuff:contains(spell.name) then
             
                equip(sets.avatar.macc)
                 
            elseif bp_buff:contains(spell.name) then
             
                equip(sets.avatar.buff)
                 
            elseif bp_other:contains(spell.name) then
             
                equip(sets.avatar.other)
                 
            elseif spell.name == 'Perfect Defense' then
             
                equip(sets.avatar.skill)
                 
            else
             
                equip(sets.avatar.skill)
                 
            end
        end 
    end
     
    function pet_aftercast(spell)
         
        -- Pet aftercast is simply a check for whether Conduit and Apogee are up, and then a call to our aftercast function
        -- We have a variable called autobp that we set to true or false with commands to auto repeat BPs for us
        if (buffactive['Apogee'] or buffactive['Astral Conduit']) and autobp then
            send_command('input /pet "%s" <t>':format(spell.name))
            return
        end
         
        idle(pet)
         
    end
     
    function idle(pet)
     
        -- This function is called after every action, and handles which set to equip depending on what we're doing
        -- We check if we're meleeing because we don't want to idle in melee gear when we're only engaged for trusts
         
        if favor then
         
            -- Avatar's favor takes priority!
            equip(sets.avatar.favor)
             
        elseif meleeing and player.status=='Engaged' then
         
            -- We're both engaged and meleeing
            equip(sets.me.melee)
             
        elseif pet.isvalid then
             
            -- We have a pet out but we're not meleeing, set the right idle set
            equip(sets.avatar[mode])
     
        else
         
            -- We're not meleeing and we have no pet out
            equip(sets.me.idle)
             
        end
    end
     
    function status_change(new,old)
        if new == 'Engaged' then
         
            -- If we engage check our meleeing status
            idle(pet)
             
        elseif new=='Resting' then
         
            -- We're resting
            equip(sets.me.resting)
        else
            idle(pet)
        end
     
    end
     
    function pet_change(pet,gain)
     
        -- When we summon or release an avatar
        idle(pet)
     
    end
     
     
    function self_command(command)
     
        local commandArgs = command
         
        -- This command takes //gs c avatar mode, where mode is what you want, eg, tank, acc, melee, etc
        if #commandArgs:split(' ') >= 2 then
            commandArgs = T(commandArgs:split(' '))
            if commandArgs[1] == 'avatar' then
                if commandArgs[2] then
                    mode = tostring(commandArgs[2])
                    equip(sets.avatar[mode])
                    windower.add_to_chat(8,'----- Avatar set to '..mode..' mode! -----')
                end
            elseif commandArgs[1] == 'toggle' then
                if commandArgs[2] == 'auto' then
                 
                    -- //gs c toggle auto will toggle auto blood pacts on and off. Auto blood pact will make your GS repeat BPs under Apogee or Conduit
                    -- And by repeat I mean repeat. If Conduit is up, it will SPAM the BP until Conduit is down
                    if autobp then
                        autobp = false
                        windower.add_to_chat(8,'----- Auto BP mode Disabled -----')
                    else
                        autobp = true
                        windower.add_to_chat(8,'----- Auto BP mode Enabled -----')
                    end
                elseif commandArgs[2] == 'melee' then
                 
                    -- //gs c toggle melee will toggle melee mode on and off.
                    -- This basically locks the slots that will cause you to lose TP if changing them,
                    -- As well as equip your melee set if you're engaged
     
                    if meleeing then
                        meleeing = false
                        enable('main','sub','ranged')
                        windower.add_to_chat(8,'----- Weapons Unlocked, WILL LOSE TP -----')
                        idle(pet)
                    else
                        meleeing=true
                        disable('main','sub','ranged')
                        windower.add_to_chat(8,'----- Weapons Locked, WILL NOT LOSE TP -----')
                        idle(pet)
                    end
                     
                elseif commandArgs[2] == 'favor' then
                         
                    -- //gs c toggle favor will toggle Favor mode on and off.
                    -- It won't automatically toggle, as some people like having favor active without the gear swaps for maximum effectiveness
                    -- You need to toggle prioritisation yourself
                    if favor then
                        favor = false
                        windower.add_to_chat(8,"----- Avatar's Favor Mode OFF -----")
                    else
                        favor = true
                        windower.add_to_chat(8,"----- Avatar's Favor Mode ON -----")
                    end
                     
                end
            end
        end
    end
     
    -- Required variables and their initial value
    meleeing = false
    autobp = false
    favor = false
    mode = "perp"
    Edit: Another issue now is that the GS is supposed to equip asteria or lamassu mitts +1 when carby or cait sith are out, but it goes to my default perp set when they are out. Also I tried to add a nuking set to my smn from copying over what I have on my BLM lua, and now the GS won't change gear.

  8. #5248
    Bagel
    Join Date
    Dec 2012
    Posts
    1,488
    BG Level
    6

    Quote Originally Posted by Teryu View Post
    Another issue now is that the GS is supposed to equip asteria or lamassu mitts +1 when carby or cait sith are out, but it goes to my default perp set when they are out.
    please post your updated file

  9. #5249
    Bagel
    Join Date
    May 2010
    Posts
    1,277
    BG Level
    6
    FFXI Server
    Lakshmi

    Added my code to the last post, also a new problem.

  10. #5250
    Bagel
    Join Date
    Dec 2012
    Posts
    1,488
    BG Level
    6

    Quote Originally Posted by Teryu View Post
    Another issue now is that the GS is supposed to equip asteria or lamassu mitts +1 when carby or cait sith are out, but it goes to my default perp set when they are out.
    you never actually equip these sets
    sets.avatar["Carbuncle"]
    sets.avatar["Cait Sith"]

    unless you first set it with "//gs c avatar Carbuncle" etc.(this wont work with Cait Sith because of the space)
    the only thing you ever call is sets.avatar[mode] but you never change mode to "Carbuncle" or "Cait Sith"
    Quote Originally Posted by Teryu View Post
    Also I tried to add a nuking set to my smn from copying over what I have on my BLM lua, and now the GS won't change gear.
    thats because your trying to call gear.ElementalObi but there is no table named gear so it errors on load(i think this is part of motes include)

  11. #5251
    Bagel
    Join Date
    May 2010
    Posts
    1,277
    BG Level
    6
    FFXI Server
    Lakshmi

    I'm sorry, but I'm not exactly sure what you mean.

  12. #5252
    Bagel
    Join Date
    Dec 2012
    Posts
    1,488
    BG Level
    6

    Quote Originally Posted by Teryu View Post
    I'm sorry, but I'm not exactly sure what you mean.
    what part??

  13. #5253
    Bagel
    Join Date
    May 2010
    Posts
    1,277
    BG Level
    6
    FFXI Server
    Lakshmi

    I mean like how to fix the problem. Where do I put the table, and is there a way to make the glove thing work for both cait sith and carby?

  14. #5254
    Bagel
    Join Date
    Dec 2012
    Posts
    1,488
    BG Level
    6

    the hard part is that you are trying to use 2+ different peoples code designs
    motes include(you are using these incorrectly and uselessly):
    function job_precast --useless unless using motes includes
    gear.ElementalObi --requires the use of motes includes as this is the only one like this

    i cant even make full heads or tails of what your trying to do because it a big cluster f*** of different coding styles

  15. #5255
    Bagel
    Join Date
    May 2010
    Posts
    1,277
    BG Level
    6
    FFXI Server
    Lakshmi

    Yeah I'm sorry about that, this SMN lua seemed like the least complicated one to me, and I assumed that since the copy and pasting thing worked for my geo lua I figured it would work for this one as well. I'll try and see if it works.

  16. #5256
    Bagel
    Join Date
    May 2010
    Posts
    1,277
    BG Level
    6
    FFXI Server
    Lakshmi

    I found a workaround in the lua! I realized I could just use the base set that's in the script for midcasts and just put nuking gear in there. Thanks again for helping me and sorry for having a frustrating format. D:

  17. #5257
    RIDE ARMOR
    Join Date
    Jan 2016
    Posts
    20
    BG Level
    1
    FFXI Server
    Bismarck

    Started getting this error today on my bst. I don't use gearswap on bst yet.

    lua.runtime error: gearswap/equip_processing.lua:258: attempt to index frield '?' (a nil value)

    Never had this before the update and was wondering if anyone knew the issue. I have gearswap on WHM and GEO and have no issues on either.

  18. #5258
    Smells like Onions
    Join Date
    Dec 2015
    Posts
    2
    BG Level
    0

    Typically I see that when I have defined a swap in my rules without a matching set in my gear.

  19. #5259
    Blue Magic is Best Magic
    Join Date
    Jul 2007
    Posts
    8,215
    BG Level
    8

    Gearswap not reading 3/4 wardrobe even after the latest luacore update.

  20. #5260
    Bagel
    Join Date
    Dec 2012
    Posts
    1,488
    BG Level
    6

    Quote Originally Posted by Draylo View Post
    Gearswap not reading 3/4 wardrobe even after the latest luacore update.
    gearswap needs to be updated for it

Page 263 of 302 FirstFirst ... 213 253 261 262 263 264 265 273 ... LastLast

Similar Threads

  1. Replies: 6547
    Last Post: 2014-07-08, 22:45