| 
    
    
 | 
    
    
        
 
    Gearswap Support Thread
 
    
        
        
        
            
                
                    
                    
                    
                                                            
                                                    
                                                                            
                                Server: Asura 
                                Game: FFXI 
                                
                                                                    Posts: 373 
                                                             
                                             
                    
                                        
                    
                    
                 
             
            
                
			
			By Asura.Aikchan 2014-05-26 13:26:19			
			
						
                     
                 
                What's the code to show swaps as a default? not sure if GS have that option coz there isnt a setting file on the folder..                                      
                
             
                        
         
        
        
        
            
                
                      Lakshmi.Byrth 
                    VIP 
                    
                                                            
                                                    
                                                                            
                                Server: Lakshmi 
                                Game: FFXI 
                                
                                                                    Posts: 6504 
                                                             
                                             
                    
                                        
                    
                    
                 
             
            
                
			
			By Lakshmi.Byrth 2014-05-26 13:38:39			
			
						
                     
                 
                You can just put show_swaps() in your get_sets function.                                     
                
             
                        
         
        
        
        
            
                
                    
                    
                    
                                                            
                                                    
                                                                            
                                Server: Asura 
                                Game: FFXI 
                                
                                                                    Posts: 373 
                                                             
                                             
                    
                                        
                    
                    
                 
             
            
                
			
			By Asura.Aikchan 2014-05-26 13:41:33			
			
						
                     
                 
                You can just put show_swaps() in your get_sets function. just tried to see, and error...  
lua error [runtime]... /flow.lua:276: 
...attempt to call global 'show_swaps' [a nil value]
 
tried w/ "showswaps() and same just in case                                      
                
             
                        
         
        
        
        
            
                
                      Lakshmi.Byrth 
                    VIP 
                    
                                                            
                                                    
                                                                            
                                Server: Lakshmi 
                                Game: FFXI 
                                
                                                                    Posts: 6504 
                                                             
                                             
                    
                                        
                    
                    
                 
             
            
                
			
			By Lakshmi.Byrth 2014-05-26 13:43:19			
			
						
                     
                 
                Hmm... It looks like I never enabled the function. I can fix it later.                                     
                
             
                        
         
        
        
        
            
                
                      Fenrir.Thandar 
                    
                    
                                                            
                                                    
                                                                            
                                Server: Fenrir 
                                Game: FFXI 
                                
                                                                    Posts: 405 
                                                             
                                             
                    
                                        
                    
                    
                 
             
            
                
			
			By Fenrir.Thandar 2014-05-26 14:08:45			
			
						
                     
                 
                Asking for my brother, so some of the details may be off, but he was THF/NIN when he cast Utsusemi, it started trying to spam the spell. He's logged out, shut down, deleted and re-downloaded GearSwap and it still happens. He changed to MNK/NIN  walked out of his Mog House and it kept trying to spam it, any idea what could cause that? 
It was the Itemizer addon messing it up.                                      
                
             
                        
         
        
        
        
            
                
                    
                    
                    
                                                            
                                                    
                                                                            
                                Server: Asura 
                                Game: FFXI 
                                
                                                                    Posts: 373 
                                                             
                                             
                    
                                        
                    
                    
                 
             
            
                
			
			By Asura.Aikchan 2014-05-26 14:14:37			
			
						
                     
                 
                Asking for my brother, so some of the details may be off, but he was THF/NIN when he cast Utsusemi, it started trying to spam the spell. He's logged out, shut down, deleted and re-downloaded GearSwap and it still happens. He changed to MNK/NIN  walked out of his Mog House and it kept trying to spam it, any idea what could cause that? 
It was the Itemizer addon messing it up. still... unless was fixed in the last 2 days..                                      
                
             
                        
         
        
        
        
            
                
                      Lakshmi.Byrth 
                    VIP 
                    
                                                            
                                                    
                                                                            
                                Server: Lakshmi 
                                Game: FFXI 
                                
                                                                    Posts: 6504 
                                                             
                                             
                    
                                        
                    
                    
                 
             
            
                
			
			By Lakshmi.Byrth 2014-05-26 14:25:11			
			
						
                     
                 
                I enabled the function (and debug_mode) a little bit ago. Also made it so that player data will update before user registered events.                                     
                
             
                        
         
        
        
        
            
                
                      Asura.Tamoa 
                    
                    
                                                            
                                                    
                                                                            
                                Server: Asura 
                                Game: FFXI 
                                
                                                                    Posts: 1341 
                                                             
                                             
                    
                                        
                    
                    
                 
             
            
                
			
			By Asura.Tamoa 2014-05-26 15:17:53			
			
						
                     
                 
                How do you set it up so you can toggle your gearsets with a controller? Thinking key binds, and asking for someone else - personally I use keyboard only, but it seems very inconvenient to use F9 etc if you play using controller.  
 
Apologies if this has been asked and answered before (searched and couldn't find anything).                                     
                
             
                        
         
        
        
        
            
                
                      Quetzalcoatl.Orestes 
                    
                    
                                                            
                                                    
                                                                            
                                Server: Quetzalcoatl 
                                Game: FFXI 
                                
                                                                    Posts: 430 
                                                             
                                             
                    
                                        
                    
                    
                 
             
            
                
			
			By Quetzalcoatl.Orestes 2014-05-26 15:20:05			
			
						
                     
                 
                How do you set it up so you can toggle your gearsets with a controller? Thinking key binds, and asking for someone else - personally I use keyboard only, but it seems very inconvenient to use F9 etc if you play using controller.  
 
Apologies if this has been asked and answered before (searched and couldn't find anything). 
If you use Mote's includes for toggles, this is the general syntax for a macro. 
 Code  /console gs c set OffenseMode Acc                                       
                
             
                        
         
        
        
        
            
                
                      Asura.Tamoa 
                    
                    
                                                            
                                                    
                                                                            
                                Server: Asura 
                                Game: FFXI 
                                
                                                                    Posts: 1341 
                                                             
                                             
                    
                                        
                    
                    
                 
             
            
                
			
			By Asura.Tamoa 2014-05-26 15:23:45			
			
						
                     
                 
                Quetzalcoatl.Orestes said:  »How do you set it up so you can toggle your gearsets with a controller? Thinking key binds, and asking for someone else - personally I use keyboard only, but it seems very inconvenient to use F9 etc if you play using controller.  
 
Apologies if this has been asked and answered before (searched and couldn't find anything). 
If you use Mote's includes for toggles, this is the general syntax for a macro. 
 Code  /console gs c set OffenseMode Acc 
Ooooh I see, thanks! :)                                      
                
             
                        
         
        
        
        
            
                
                      Cerberus.Conagh 
                    
                    
                                                            
                                                    
                                                                            
                                Server: Cerberus 
                                Game: FFXI 
                                
                                                                    Posts: 3189 
                                                             
                                             
                    
                                            
                                        
                    
                    
                 
             
            
                
			
			By Cerberus.Conagh 2014-05-26 18:40:41			
			
						
                     
                 
                Code  function get_sets()
    sets = {}
         
    sets.aftercast_Idle_noSub = {main="Owleyes",sub="Genbu's Shield",ammo="Incantor Stone",
        head="Nefer Khat",neck="Twilight Torque",ear1="Lifestorm Earring",ear2="Loquacious Earring",
        body="Heka's Kalasiris",hands="Serpentes Cuffs",ring1="Bifrost Ring",ring2="Dark Ring",
        back="Shadow Mantle",waist="Korin Obi",legs="Nares Trews",feet="Serpentes Sabots"}
     
    sets.aftercast_Idle_Sub = {main="Owleyes",sub="Genbu's Shield",ammo="Incantor Stone",
        head="Nefer Khat",neck="Twilight Torque",ear1="Lifestorm Earring",ear2="Loquacious Earring",
        body="Heka's Kalasiris",hands="Serpentes Cuffs",ring1="Bifrost Ring",ring2="Dark Ring",
        back="Shadow Mantle",waist="Korin Obi",legs="Nares Trews",feet="Serpentes Sabots"}
	
	sets.aftercast_IdleStun = {main="Apamajas II",sub="Mephitis Grip",ammo="Inacantor Stone",
        head="Nahtirah Hat",neck="Eddy Necklace",ear1="Lifestorm Earring",ear2="Psystorm Earring",
        body="Hedera Cotehardie",hands="Gendewitha Gages",ring1="Sangoma Ring",ring2="Maquette Ring",
        back="Swith Cape",waist="Goading Belt",legs="Artsieq Hose",feet="Peda. Loafers"}
	
	sets.aftercast_IdleNight = {main="Owleyes",sub="Genbu's Shield",ammo="Incantor Stone",
		head="Nefer Khat",neck="Twilight Torque",ear1="Merman's Earring",ear2="Coral Earring",
		body="Heka's Kalasiris",hands="Serpentes Cuffs",ring1="Dark ring",ring2="Patricius Ring",
		back="Cheviot Cape",waist="Siegel Sash",legs="Nares Trews",feet="Theo. Duckbills +1"}
	
	sets.aftercast_Idle119 = {main="Terra's Staff",ammo="Incantor Stone",
		head="Gendewitha Caubeen",neck="Twilight Torque",ear1="Merman's Earring",ear2="Coral Earring",
		body="Hagondes Coat",hands="Gendewitha Gages",ring1="Dark ring",ring2="Patricius Ring",
		back="Cheviot Cape",waist="Siegel Sash",legs="Artsieq Hose",feet="Gendewitha Galoshes"}
	
	sets.aftercast_IdleDay = {main="Owleyes",sub="Genbu's Shield",ammo="Incantor Stone",
		head="Nefer Khat",neck="Twilight Torque",ear1="Merman's Earring",ear2="Coral Earring",
		body="Heka's Kalasiris",hands="Lurid Mitts",ring1="Dark ring",ring2="Patricius Ring",
		back="Cheviot Cape",waist="Siegel Sash",legs="Nares Trews",feet="Serpentes Sabots"}
	
    sets.aftercast_Move = {main="Owleyes",sub="Genbu's Shield",ammo="Incantor Stone",
        head="Nefer Khat",neck="Twilight Torque",ear1="Lifestorm Earring",ear2="Loquacious Earring",
        body="Heka's Kalasiris",hands="Serpentes Cuffs",ring1="Bifrost Ring",ring2="Dark Ring",
        back="Shadow Mantle",waist="Korin Obi",legs="Nares Trews",feet="Desert boots"}
		
    sets.aftercast_Idle = sets.aftercast_Idle_noSub
         
    sets.precast_FastCast = {ammo="Incantor Stone",head="Nahtirah Hat",ear2="Loquacious Earring",
        body="Anhur Robe",hands="Gendewitha Gages",back="Swith Cape",legs="Artseiq hose",feet="Peda. Loafers"}
     
    sets.Resting = {main="Chatoyant Staff",sub="Mephitis Grip",
		head="Nahtirah Hat",neck="Twilight Torque",ear1="Lifestorm Earring",ear2="Loquacious Earring",
		body="Hagondes Coat",hands="Nares Cuffs",ring1="Sangoma Ring",ring2="Maquette Ring",
		back="Shadow Mantle",waist="Korin Obi",legs="Nares Trews",feet="Chelona Boots"}
	
	--MAB Sets--
	sets.midcast_ElementalMagic = {}
	
    sets.midcast_ElementalMagic.index = {'Standard','Accuracy'}
    midcast_ElementalMagic_ind = 1
	
    sets.midcast_ElementalMagic.Standard = {
		main={ name="Lehbrailg +2", augments={'DMG:+1','Mag. Acc.+13',}},
		sub="Mephitis Grip",
		ammo="Savant's Treatise",
		head={ name="Hagondes Hat", augments={'Phys. dmg. taken -3%','"Mag.Atk.Bns."+27',}},
		body={ name="Hagondes Coat", augments={'Phys. dmg. taken -1%','"Mag.Atk.Bns."+18',}},
		hands={ name="Hagondes Cuffs +1", augments={'Phys. dmg. taken -1%','"Mag.Atk.Bns."+11',}},
		legs={ name="Hagondes Pants +1", augments={'Phys. dmg. taken -1%','"Mag.Atk.Bns."+16',}},
		feet={ name="Hag. Sabots +1", augments={'Phys. dmg. taken -1%','"Mag.Atk.Bns."+16',}},
		neck="Eddy Necklace",
		waist="Aswang Sash",
		left_ear="Friomisi Earring",
		right_ear="Hecate's Earring",
		left_ring="Icesoul Ring",
		right_ring="Sangoma Ring",
		back="Toro Cape"}
    
    sets.midcast_ElementalMagic.Accuracy = {
		main={ name="Lehbrailg +2", augments={'DMG:+1','Mag. Acc.+13',}},
		sub="Mephitis Grip",
		ammo="Savant's Treatise",
		head={ name="Hagondes Hat", augments={'Phys. dmg. taken -3%','"Mag.Atk.Bns."+27',}},
		body={ name="Hagondes Coat", augments={'Phys. dmg. taken -1%','"Mag.Atk.Bns."+18',}},
		hands={ name="Hagondes Cuffs +1", augments={'Phys. dmg. taken -1%','"Mag.Atk.Bns."+11',}},
		legs={ name="Artsieq Hose", augments={'MP+16','Mag. Acc.+13','MND+3',}},
		feet={ name="Hag. Sabots +1", augments={'Phys. dmg. taken -1%','"Mag.Atk.Bns."+16',}},
		neck="Eddy Necklace",
		waist="Aswang Sash",
		left_ear="Lifestorm Earring",
		right_ear="Psystorm Earring",
		left_ring="Icesoul Ring",
		right_ring="Sangoma Ring",
		back="Toro Cape"}
	
    sets.midcast_DarkMagic = {main="Chatoyant Staff",sub="Arbuda Grip",ammo="Hasty Pinion",
        head="Appetence Crown",neck="Aesir Torque",ear1="Hirudinea Earring",ear2="Loquacious Earring",
        body="Hedera Cotehardie",hands="Ayao's Gages",ring1="Balrahn's Ring",ring2="Excelsis Ring",
        back="Merciful Cape",waist="Goading Belt",legs="Auspex Slops",feet="Hag. Sabots +1"}
     
    sets.midcast_EnfeeblingMagic = {main="Lehbrailg +2",sub="Mephitis Grip",ammo="Savant's Treatise",
        head="Nahtirah Hat",neck="Eddy Necklace",ear1="Lifestorm Earring",ear2="Psystorm Earring",
        body="Hedera Cotehardie",hands="Lurid Mitts",ring1="Sangoma Ring",ring2="Maquette Ring",
        back="Refraction Cape",waist="Cascade Belt",legs="Artseiq hose",feet="Hag. Sabots +1"}
     
    sets.midcast_Impact = {main="Lehbrailg +2",sub="Wizzan Grip",ammo="Witchstone",
        neck="Eddy Necklace",ear1="Hecate's Earring",ear2="Novio Earring",
        hands="Yaoyotl Gloves",ring1="Strendu Ring",ring2="Icesoul Ring",body="Hagondes Coat",
        back="Searing Cape",waist="Maniacus Sash",legs="Hagondes Pants",feet="Hag. Sabots +1"}
     
    sets.midcast_Embrava = {main="Kirin's Pole",sub="Fulcio Grip",ammo="Savant's Treatise",
        head="Svnt. Bonnet +2",neck="Colossus's Torque",ear1="Lifestorm Earring",ear2="Loquacious Earring",
        body="Anhur Robe",hands="Savant's Bracers +2",
        back="Merciful Cape",waist="Cascade Belt",legs="Shedir Seraweels",feet="Rubeus Boots"}
     
    sets.midcast_EnhancingMagic = {main="Kirin's Pole",sub="Fulcio Grip",ammo="Incantor Stone",
        head="Svnt. Bonnet +2",neck="Colossus's Torque",ear1="Lifestorm Earring",ear2="Loquacious Earring",
        body="Anhur Robe",hands="Gendewitha Gages",
        back="Swith Cape",waist="Ninurta's Sash",legs="Artseiq hose",feet="Peda. Loafers"}
     
    sets.precast_Stun = {main="Apamajas II",sub="Mephitis Grip",ammo="Inacantor Stone",
        head="Nahtirah Hat",neck="Eddy Necklace",ear1="Lifestorm Earring",ear2="Psystorm Earring",
        body="Hedera Cotehardie",hands="Gendewitha Gages",ring1="Sangoma Ring",ring2="Maquette Ring",
        back="Swith Cape",waist="Goading Belt",legs="Artsieq Hose",feet="Peda. Loafers"}
         
     
    sets.midcast_Cure = {main="Tamaxchi",sub="genbu's Shield",head="Hyksos Khat +1",neck="Healing Torque",
    body="Heka's Kalasiris",hands="Bokwus Gloves",back="Oretanis's Cape",legs="Scholar's Pants",
	feet="Peda. Loafers",ring1="Sirona's Ring",ring2="Ephedra Ring",ear1="Beatific Earring",
	Ear2="Lifestorm Earring"}
     
    sets.midcast_Helix = {main="Lehbrailg +2",sub="Wize Grip",ammo="Witchstone",
        head="Hagondes Hat",neck="Stoicheion Medal",ear1="Hecate's Earring",ear2="Friomisi Earring",
        body="Hagondes Coat",hands="Hagondes Cuffs +1",ring1="Maquette Ring",ring2="Dark Ring",
        back="Toro Cape",waist="Maniacus Sash",legs="Hagondes Pants +1",feet="Hag. Sabots +1"}
     
    sets.midcast_Stoneskin = {main="Kirin's Pole",neck="Stone Gorget",waist="Siegel Sash",legs="Shedir Seraweels"}
     
    sets.Obi = {}
    sets.Obi.Fire = {waist='Karin Obi',back='Twilight Cape',lring='Zodiac Ring'}
    sets.Obi.Earth = {waist='Dorin Obi',back='Twilight Cape',lring='Zodiac Ring'}
    sets.Obi.Water = {waist='Suirin Obi',back='Twilight Cape',lring='Zodiac Ring'}
    sets.Obi.Wind = {waist='Furin Obi',back='Twilight Cape',lring='Zodiac Ring'}
    sets.Obi.Ice = {waist='Hyorin Obi',back='Twilight Cape',lring='Zodiac Ring'}
    sets.Obi.Thunder = {waist='Rairin Obi',back='Twilight Cape',lring='Zodiac Ring'}
    sets.Obi.Light = {waist='Korin Obi',back='Twilight Cape',lring='Zodiac Ring',main="Chatoyant Staff"}
    sets.Obi.Dark = {waist='Anrin Obi',back='Twilight Cape',lring='Zodiac Ring'}
     
    sets.staves = {}
     
    sets.staves.damage = {}
    sets.staves.damage.Thunder = {main="Apamajas I"}
    sets.staves.damage.Fire = {main="Atar I"}
     
    sets.staves.accuracy = {}
    sets.staves.damage.Thunder = {main="Apamajas II"}
    sets.staves.damage.Ice = {main="Vourukasha II"}
     
    stuntarg = 'Shantotto'
 
 
end
 
function precast(spell,action)
    if spell.skill=='Elemental Magic' then
        cast_delay(0.1)
        equip(sets['precast_FastCast'])	
    elseif spell.english == 'Stun' then
        cast_delay(0.1)
        equip(sets['precast_Stun'])
        if not buffactive.thunderstorm then
            add_to_chat(8,'--------- Thunderstorm is down ---------')
        elseif not buffactive.klimaform then
            add_to_chat(8,'----------- Klimaform is down -----------')
        end
    else
        equip(sets['precast_FastCast'])
        cast_delay(0.1)
    end
end
 
function midcast(spell,action)
    if string.find(spell.english,'Cur') then
        equip(sets.midcast_Cure)
        if spell.element == world.weather_element or spell_element == world.day_element then
            equip({main="Chatoyant Staff"},sets.Obi[spell.element])
        end
        if buffactive.rapture then
            equip({head="Savant's Bonnet +2"})
        end
    elseif spell.english == 'Impact' then
        local tempset = sets['midcast_Impact']
        tempset['body'] = 'Twilight Cloak'
        tempset['head'] = empty
        equip(tempset)
    elseif spell.skill=="Elemental Magic" then
        if string.find(spell.english,'helix') then
            equip(sets['midcast_Helix'])
        else
			equip(sets.midcast_ElementalMagic[sets.midcast_ElementalMagic.index[midcast_ElementalMagic_ind]])
			if spell.element == world.weather_element or spell_element == world.day_element and sets.Obi[spell.element] then
				equip(sets.Obi[spell.element])
			end
			if spell.element == 'Thunder' then
            equip({waist="Rairin Obi"})
			end
        end
	
        if buffactive.ebullience then
            equip({head="Savant's Bonnet +2"})
        end
        if buffactive.klimform then
            equip ({feet="Savant's Loafers +2"})
        end
    elseif spell.skill=="Enfeebling Magic" then
		equip(sets.midcast_ElementalMagic[sets.midcast_ElementalMagic.index[midcast_ElementalMagic_ind]])
	 
	 
    elseif spell.english == 'Stoneskin' then
        equip(sets['midcast_Stoneskin'])
    elseif spell.skill == 'Enhancing Magic' then
        if spell.english == 'Embrava' or spell.english == 'Regen V' then
            equip(sets['midcast_Embrava'])
            if not buffactive.perpetuance then
                add_to_chat(8,'--------- Perpetuance is down ---------')
            end
            if not buffactive.accession then
                add_to_chat(8,'--------- Accession is down ---------')
            end
            if not buffactive.penury then
                add_to_chat(8,'--------- Penury is down ---------')
            end
        end
        if buffactive.perpetuance then
            equip(sets['midcast_EnhancingMagic'],{hands="Savant's Bracers +2"})
        else
            equip(sets['midcast_EnhancingMagic'])
        end
    end
     
    if spell.english == 'Sneak' then
        send_command('@wait 1.8;cancel 71;')
    end
end    
 
function aftercast(spell,action)
    		if Armor == '119' then
			equip(sets.aftercast_Idle119)
			elseif Armor == 'Stun' then
			equip(sets.aftercast_IdleStun)
			else
                Idle()
			end
     
    if spell.english == 'Sleep' or spell.english == 'Sleepga' then
        send_command('@wait 50;input /echo ------- '..spell.english..' is wearing off in 10 seconds -------')
    elseif spell.english == 'Sleep II' or spell.english == 'Sleepga II' then
        send_command('@wait 80;input /echo ------- '..spell.english..' is wearing off in 10 seconds -------')
    elseif spell.english == 'Break' or spell.english == 'Breakga' then
        send_command('@wait 20;input /echo ------- '..spell.english..' is wearing off in 10 seconds -------')
    end
end
 
function status_change(new,action)
        if new=='Idle' then
			if Armor == '119' then
			equip(sets.aftercast_Idle119)
			elseif Armor == 'Stun' then
			equip(sets.aftercast_IdleStun)
			else
                Idle()
			end
        elseif new=='Resting' then
                equip(sets.Resting)
        end
			if Armor == 'PDT' then
		equip(sets.PDT)
		end
end
function Idle()
	if buffactive['Sandstorm'] then
		send_command('@wait 1;input /echo ------- Sandstorm Move Wear Activated -------')
       
			equip(sets.aftercast_Move)
	elseif world.time >= (17*60) or world.time <= (7*60) then -- night time
			equip(sets.aftercast_IdleNight)
	else
			equip(sets.aftercast_IdleDay)
		end
	end
	
 
 
function buff_change(buff,gain_or_loss)
        if buff == "Sandstorm" then
                Idle()
        end
end
 
function pet_midcast(spell,action)
end
 
function pet_aftercast(spell,action)
end
 
     
	
	
function self_command(command)
    if command == 'M2' then
        midcast_ElementalMagic_ind = midcast_ElementalMagic_ind +1
        if midcast_ElementalMagic_ind > #sets.midcast_ElementalMagic.index then midcast_ElementalMagic_ind = 1 end
        send_command('@input /echo <----- TP Set changed to '..sets.midcast_ElementalMagic.index[midcast_ElementalMagic_ind]..' ----->')
        equip(sets.midcast_ElementalMagic[sets.midcast_ElementalMagic.index[midcast_ElementalMagic_ind]])
	
	elseif command == 'C7' then -- PDT Toggle --
		if Armor == 'PDT' then
			Armor = 'none'
			add_to_chat(8,'PDT Set: [Unlocked]')
		else
			Armor = 'PDT'
			add_to_chat(158,'PDT Set: [Locked]')
		end
		status_change(player.status)
	elseif command == 'C15' then -- 119 Toggle --
		if Armor == '119' then
			Armor = 'None'
			add_to_chat(8,'119 Set: [Unlocked]')
		else
			Armor = '119'
			add_to_chat(158,'119 Set: [Locked]')
		end
		status_change(player.status)
	elseif command == 'Stun' then -- Stun Idle Toggle --
		if Armor == 'Stun' then
			Armor = 'None'
			add_to_chat(8,'Stun Set: [Unlocked]')
		else
			Armor = 'Stun'
			add_to_chat(158,'Stun Set: [Locked]')
		end
		status_change(player.status)
	end
end
 
 
-- This function is user defined, but never called by GearSwap itself. It's just a user function that's only called from user functions. I wanted to check the weather and equip a weather-based set for some spells, so it made sense to make a function for it instead of replicating the conditional in multiple places.
 
function weathercheck(spell_element,set)
    if spell_element == world.weather_element or spell_element == world.day_element then
        equip(set,sets['Obi_'..spell_element])
    else
        equip(set)
    end
end
I think I've done something really Basically dumb on this but I can not for the life of me figure out why the weather rule for elemental nukes isn't working.                                      
                
             
                        
         
        
        
        
            
                
                      Bismarck.Inference 
                    
                    
                                                            
                                                    
                                                                            
                                Server: Bismarck 
                                Game: FFXI 
                                
                                                                    Posts: 417 
                                                             
                                             
                    
                                        
                    
                    
                 
             
            
                
			
			By Bismarck.Inference 2014-05-26 19:03:51			
			
						
                     
                 
                I think I've done something really Basically dumb on this but I can not for the life of me figure out why the weather rule for elemental nukes isn't working. 
I didn't look very indepth at the code for any other errors, but it should be spell.element all around(a few are spell_element).                                      
                
             
                        
         
        
        
        
            
            
                
			
			By Xavierr 2014-05-27 09:50:55			
			
						
                     
                 
                having trouble getting my sch to cast spells in my nuking set.  Not too great with gearswap yet so I'm sure I am doing something wrong.  Maybe someone can put an example command here, would be great.  ty                                     
                
             
                        
         
        
        
        
            
                
                      Cerberus.Conagh 
                    
                    
                                                            
                                                    
                                                                            
                                Server: Cerberus 
                                Game: FFXI 
                                
                                                                    Posts: 3189 
                                                             
                                             
                    
                                            
                                        
                    
                    
                 
             
            
                
			
			By Cerberus.Conagh 2014-05-27 11:37:17			
			
						
                     
                 
                having trouble getting my sch to cast spells in my nuking set.  Not too great with gearswap yet so I'm sure I am doing something wrong.  Maybe someone can put an example command here, would be great.  ty Code      If spell.skill=="Elemental Magic" then
        if string.find(spell.english,'helix') then
            equip(sets['midcast_Helix'])
        else
            equip(sets.midcast_ElementalMagic)
end
                                                  
                
             
                        
         
        
        
        
            
            
                
			
			By Aoushi 2014-05-27 13:31:05			
			
						
                     
                 
                Hello again, I'm trying to convert my dnc xml into lua and don't know how to write the following into lua. Any and all help would be appreciated, thanks in advanced.    Code   <if type="Waltz">
            <if NotSpell="Healing Waltz">
                <if Spell="Divine Waltz II" TPLT="80"><changespell Spell="Divine Waltz" /></if>
                <if Spell="Divine Waltz" TPLT="40"><cancelspell /></if>
				<if Spell="Curing Waltz V" TPLT="80"><changespell Spell="Curing Waltz IV" /></if>
                <if Spell="Curing Waltz IV" TPLT="65"><changespell Spell="Curing Waltz III" /></if>
                <if Spell="Curing Waltz III" TPLT="50"><changespell Spell="Curing Waltz II" /></if>
                <if Spell="Curing Waltz II" TPLT="35"><changespell Spell="Curing Waltz" /></if>
                <if Spell="Curing Waltz" TPLT="20"><cancelspell /></if>
                <equip when="precast" set="Waltz" />
            </if>
        </if>                                       
                
             
                        
         
        
        
        
            
                
                      Cerberus.Conagh 
                    
                    
                                                            
                                                    
                                                                            
                                Server: Cerberus 
                                Game: FFXI 
                                
                                                                    Posts: 3189 
                                                             
                                             
                    
                                            
                                        
                    
                    
                 
             
            
                
			
			By Cerberus.Conagh 2014-05-27 14:31:05			
			
						
                     
                 
                Hello again, I'm trying to convert my dnc xml into lua and don't know how to write the following into lua. Any and all help would be appreciated, thanks in advanced.    Code   <if type="Waltz">
            <if NotSpell="Healing Waltz">
                <if Spell="Divine Waltz II" TPLT="80"><changespell Spell="Divine Waltz" /></if>
                <if Spell="Divine Waltz" TPLT="40"><cancelspell /></if>
				<if Spell="Curing Waltz V" TPLT="80"><changespell Spell="Curing Waltz IV" /></if>
                <if Spell="Curing Waltz IV" TPLT="65"><changespell Spell="Curing Waltz III" /></if>
                <if Spell="Curing Waltz III" TPLT="50"><changespell Spell="Curing Waltz II" /></if>
                <if Spell="Curing Waltz II" TPLT="35"><changespell Spell="Curing Waltz" /></if>
                <if Spell="Curing Waltz" TPLT="20"><cancelspell /></if>
                <equip when="precast" set="Waltz" />
            </if>
        </if>  
Mote's covered this pretty well in his Utility Lua for DNC,might be bettter using it but I'll paste the part about Dnc and hopefully you can find what you want in it.
 Code  local waltz_tp_cost = {['Curing Waltz'] = 20, ['Curing Waltz II'] = 35, ['Curing Waltz III'] = 50, ['Curing Waltz IV'] = 65, ['Curing Waltz V'] = 80}
-- Utility function for automatically adjusting the waltz spell being used to match HP needs and TP limits.
-- Handle spell changes before attempting any precast stuff.
function refine_waltz(spell, action, spellMap, eventArgs)
	if spell.type ~= 'Waltz' then
		return
	end
	
	-- Don't modify anything for Healing Waltz or Divine Waltzes
	if spell.english == "Healing Waltz" or spell.english == "Divine Waltz" or spell.english == "Divine Waltz II" then
		return
	end
	local newWaltz = spell.english
	local waltzID
	
	local missingHP
	
	-- If curing ourself, get our exact missing HP
	if spell.target.type == "SELF" then
		missingHP = player.max_hp - player.hp
	-- If curing someone in our alliance, we can estimate their missing HP
	elseif spell.target.isallymember then
		local target = find_player_in_alliance(spell.target.name)
		local est_max_hp = target.hp / (target.hpp/100)
		missingHP = math.floor(est_max_hp - target.hp)
	end
	
	-- If we have an estimated missing HP value, we can adjust the preferred tier used.
	if missingHP ~= nil then
		if player.main_job == 'DNC' then
			if missingHP < 40 and spell.target.name == player.name then
				-- Not worth curing yourself for so little.
				-- Don't block when curing others to allow for waking them up.
				add_to_chat(122,'Full HP!')
				eventArgs.cancel = true
				return
			elseif missingHP < 200 then
				newWaltz = 'Curing Waltz'
				waltzID = 190
			elseif missingHP < 600 then
				newWaltz = 'Curing Waltz II'
				waltzID = 191
			elseif missingHP < 1100 then
				newWaltz = 'Curing Waltz III'
				waltzID = 192
			elseif missingHP < 1500 then
				newWaltz = 'Curing Waltz IV'
				waltzID = 193
			else
				newWaltz = 'Curing Waltz V'
				waltzID = 311
			end
		elseif player.sub_job == 'DNC' then
			if missingHP < 40 and spell.target.name == player.name then
				-- Not worth curing yourself for so little.
				-- Don't block when curing others to allow for waking them up.
				add_to_chat(122,'Full HP!')
				eventArgs.cancel = true
				return
			elseif missingHP < 150 then
				newWaltz = 'Curing Waltz'
				waltzID = 190
			elseif missingHP < 300 then
				newWaltz = 'Curing Waltz II'
				waltzID = 191
			else
				newWaltz = 'Curing Waltz III'
				waltzID = 192
			end
		else
			-- Not dnc main or sub; bail out
			return
		end
	end
	local tpCost = waltz_tp_cost[newWaltz]
	local downgrade
	
	-- Downgrade the spell to what we can afford
	if player.tp < tpCost and not buffactive.trance then
		--[[ Costs:
			Curing Waltz:     20 TP
			Curing Waltz II:  35 TP
			Curing Waltz III: 50 TP
			Curing Waltz IV:  65 TP
			Curing Waltz V:   80 TP
			Divine Waltz:     40 TP
			Divine Waltz II:  80 TP
		--]]
		
		if player.tp < 20 then
			add_to_chat(122, 'Insufficient TP ['..tostring(player.tp)..']. Cancelling.')
			eventArgs.cancel = true
			return
		elseif player.tp < 35 then
			newWaltz = 'Curing Waltz'
		elseif player.tp < 50 then
			newWaltz = 'Curing Waltz II'
		elseif player.tp < 65 then
			newWaltz = 'Curing Waltz III'
		elseif player.tp < 80 then
			newWaltz = 'Curing Waltz IV'
		end
		
		downgrade = 'Insufficient TP ['..tostring(player.tp)..']. Downgrading to '..newWaltz..'.'
	end
	
	if newWaltz ~= spell.english then
		send_command('@input /ja "'..newWaltz..'" '..tostring(spell.target.raw))
		if downgrade then
			add_to_chat(122, downgrade)
		end
		eventArgs.cancel = true
		return
	end
	if missingHP > 0 then
		add_to_chat(122,'Trying to cure '..tostring(missingHP)..' HP using '..newWaltz..'.')
	end
end
-- Function to allow for automatic adjustment of the spell target type based on preferences.
function auto_change_target(spell, action, spellMap)
	-- Don't adjust targetting for explicitly named targets
	if not spell.target.raw:startswith('<') then
		return
	end
	-- Do not modify target for spells where we get <lastst> or <me>.
	if spell.target.raw == ('<lastst>') or spell.target.raw == ('<me>') then
		return
	end
	
	-- init a new eventArgs with current values
	local eventArgs = {handled = false, PCTargetMode = state.PCTargetMode, SelectNPCTargets = state.SelectNPCTargets}
	-- Allow the job to do custom handling, or override the default values.
	-- They can completely handle it, or set one of the secondary eventArgs vars to selectively
	-- override the default state vars.
	if job_auto_change_target then
		job_auto_change_target(spell, action, spellMap, eventArgs)
	end
	
	-- If the job handled it, we're done.
	if eventArgs.handled then
		return
	end
	
	local pcTargetMode = eventArgs.PCTargetMode
	local selectNPCTargets = eventArgs.SelectNPCTargets
	
	local validPlayers = S{'Self', 'Player', 'Party', 'Ally', 'NPC'}
	local intersection = spell.targets * validPlayers
	local canUseOnPlayer = not intersection:empty()
	
	local newTarget
	
	-- For spells that we can cast on players:
	if canUseOnPlayer and pcTargetMode ~= 'default' then
		-- Do not adjust targetting for player-targettable spells where the target was <t>
		if spell.target.raw ~= ('<t>') then
			if pcTargetMode == 'stal' then
				-- Use <stal> if possible, otherwise fall back to <stpt>.
				if spell.targets.Ally then
					newTarget = '<stal>'
				elseif spell.targets.Party then
					newTarget = '<stpt>'
				end
			elseif pcTargetMode == 'stpt' then
				-- Even ally-possible spells are limited to the current party.
				if spell.targets.Ally or spell.targets.Party then
					newTarget = '<stpt>'
				end
			elseif pcTargetMode == 'stpc' then
				-- If it's anything other than a self-only spell, can change to <stpc>.
				if spell.targets.Player or spell.targets.Party or spell.targets.Ally or spell.targets.NPC then
					newTarget = '<stpc>'
				end
			end
		end
	-- For spells that can be used on enemies:
	elseif spell.targets and spell.targets.Enemy and selectNPCTargets then
		-- Note: this means macros should be written for <t>, and it will change to <stnpc>
		-- if the flag is set.  It won't change <stnpc> back to <t>.
		newTarget = '<stnpc>'
	end
	
	-- If a new target was selected and is different from the original, call the change function.
	if newTarget and newTarget ~= spell.target.raw then
		change_target(newTarget)
	end
end                                      
                
             
                        
         
        
        
        
        
        
        
            
                
                      Cerberus.Conagh 
                    
                    
                                                            
                                                    
                                                                            
                                Server: Cerberus 
                                Game: FFXI 
                                
                                                                    Posts: 3189 
                                                             
                                             
                    
                                            
                                        
                    
                    
                 
             
            
                
			
			By Cerberus.Conagh 2014-05-27 18:14:13			
			
						
                     
                 
                Code  function job_midcast(spell, action, spellMap, eventArgs)
        if spell.action_type == 'Magic' then
                -- Default base equipment layer is fast recast.
                equip(sets.midcast.FastRecast)
 
                if spell.skill == 'Elemental Magic' and state.CastingMode == 'Proc' then
                        add_to_chat(15,'Proc mode, no damage gear for midcast.')
                        eventArgs.handled = true
				end
				if spell.skill == 'Elemental Magic' and player.hpp <= 74 then
                equip({ring1="Sorcerer's Ring"})
                end
        end
end 
This should work.                                      
                
             
                        
         
        
        
        
        
        
        
            
                
                      Odin.Rues 
                    
                    
                                                            
                                                    
                                                                            
                                Server: Odin 
                                Game: FFXI 
                                
                                                                    Posts: 67 
                                                             
                                             
                    
                                        
                    
                    
                 
             
            
                
			
			By Odin.Rues 2014-05-27 19:13:04			
			
						
                     
                 
                Code  function job_midcast(spell, action, spellMap, eventArgs)
        if spell.action_type == 'Magic' then
                -- Default base equipment layer is fast recast.
                equip(sets.midcast.FastRecast)
 
                if spell.skill == 'Elemental Magic' and state.CastingMode == 'Proc' then
                        add_to_chat(15,'Proc mode, no damage gear for midcast.')
                        eventArgs.handled = true
				end
				if spell.skill == 'Elemental Magic' and player.hpp <= 74 then
                equip({ring1="Sorcerer's Ring"})
                end
        end
end 
This should work. 
I'd recommend putting the scorer's ring in the set variable somewhere so that it gets accounted for by the verify command and other things that use it.                                      
                
             
                        
         
        
        
        
            
                
                      Sylph.Cyc 
                    
                    
                                                            
                                                    
                                                                            
                                Server: Sylph 
                                Game: FFXI 
                                
                                                                    Posts: 24 
                                                             
                                             
                    
                                        
                    
                    
                 
             
            
                
			
			By Sylph.Cyc 2014-05-28 04:05:36			
			
						
                     
                 
                 
happens randomly when zoning on any job. I keep getting this error even though I re-run the launcher on a daily basis usually. It's been going on for a few... Even on jobs that have no .lua files.                                      
                
             
                        
         
        
        
        
            
                
                      Asura.Chiaia 
                    VIP 
                    
                                                            
                                                    
                                                                            
                                Server: Asura 
                                Game: FFXI 
                                
                                                                    Posts: 1662 
                                                             
                                             
                    
                                        
                    
                    
                 
             
            
                
			
			By Asura.Chiaia 2014-05-28 05:05:46			
			
						
                     
                 
                Ok having some issues with my SCH GS lately. If lets say Light(Dark) Arts is up but not Add: White(Black) hitting it again does put it up. But it's not doing anything for any of the other spells switches. Example: I hit my manifestion macro with light arts up/add: white. Its not swapping it to Accession. 
EDIT: Ok after messing around more I noticed it pretty much will work with anything(the trigger) I actually have access to "cast(ja/spells)"(at that point in time). 
 Code  
function pretarget(spell,action)
	if buffactive['Light Arts'] or buffactive['Addendum: White'] then
		if spell.english == "Light Arts" and not buffactive['Addendum: White'] then
			cancel_spell()
			send_command('input /ja Addendum: White <me>')
		elseif spell.english == "Manifestation" then
			cancel_spell()
			send_command('input /ja Accession <me>')
		elseif spell.english == "Alacrity" then
			cancel_spell()
			send_command('input /ja Celerity <me>')
		elseif spell.english == "Parsimony" then
			cancel_spell()
			send_command('input /ja Penury <me>')
		end
	elseif buffactive['Dark Arts'] or buffactive['Addendum: Black'] then
		if spell.english == "Dark Arts" and not buffactive['Addendum: Black'] then
			cancel_spell()
			send_command('input /ja Addendum: Black <me>')
		elseif spell.english == "Accession" then
			cancel_spell()
			send_command('input /ja Manifestation <me>')
		elseif spell.english == "Celerity" then
			cancel_spell()
			send_command('input /ja Alacrity <me>')
		elseif spell.english == "Penury" then
			cancel_spell()
			send_command('input /ja Parsimony <me>')
		end
	end
end
                                      
                
             
                        
         
        
        
        
            
                
                    
                    
                    
                                                            
                                                    
                                                                            
                                Server: Odin 
                                Game: FFXI 
                                
                                                                    Posts: 943 
                                                             
                                             
                    
                                        
                    
                    
                 
             
            
                
			
			By Odin.Calipso 2014-05-28 06:08:10			
			
						
                     
                 
                Also, I've been constantly getting this error while zoning into town: 
Sorry to be a pest. Still getting this error when I zone sometimes :(
 
Edit: doh, just realized someone posted the exact same thing like 1 post ago. Sorry!                                      
                
             
                        
         
        
        
        
            
                
                      Cerberus.Conagh 
                    
                    
                                                            
                                                    
                                                                            
                                Server: Cerberus 
                                Game: FFXI 
                                
                                                                    Posts: 3189 
                                                             
                                             
                    
                                            
                                        
                    
                    
                 
             
            
                
			
			By Cerberus.Conagh 2014-05-28 13:21:21			
			
						
                     
                 
                 
happens randomly when zoning on any job. I keep getting this error even though I re-run the launcher on a daily basis usually. It's been going on for a few... Even on jobs that have no .lua files. 
This error stopped for me a couple days ago so I don't know what to tell you...                                      
                
             
                        
         
        
        
        
            
                
                      Cerberus.Conagh 
                    
                    
                                                            
                                                    
                                                                            
                                Server: Cerberus 
                                Game: FFXI 
                                
                                                                    Posts: 3189 
                                                             
                                             
                    
                                            
                                        
                    
                    
                 
             
            
                
			
			By Cerberus.Conagh 2014-05-28 13:34:07			
			
						
                     
                 
                Code  function job_midcast(spell, action, spellMap, eventArgs)
        if spell.action_type == 'Magic' then
                -- Default base equipment layer is fast recast.
                equip(sets.midcast.FastRecast)
 
                if spell.skill == 'Elemental Magic' and state.CastingMode == 'Proc' then
                        add_to_chat(15,'Proc mode, no damage gear for midcast.')
                        eventArgs.handled = true
				end
				if spell.skill == 'Elemental Magic' and player.hpp <= 74 then
                equip({ring1="Sorcerer's Ring"})
                end
        end
end 
This should work. 
I'd recommend putting the scorer's ring in the set variable somewhere so that it gets accounted for by the verify command and other things that use it. 
Looks like he copied and pasted the Mote BLM file, rather than give him something which might be beyond his skill (No Offense) I figured the simplest solution for his immediate problem would provide the following:
 
On a side note, the Obi rule is a nice touch in Motes rule, I believe it would be very simple to add a rule for that also based on that.
 
Plus on BLM when else would you need Sorc Ring when not casting anything that counts as Elemental Magic?                                      
                
             
                        
         
        
        
        
            
            
                
			
			By Aoushi 2014-05-28 20:39:25			
			
						
                     
                 
                Hey again, I'm having a hard time trying to figure out how to make my automaton cure and have myself switch into the AF1 pup pants for added cure potency, also having the same issue with switching into the sheltered ring. Any help would be appreciated, thanks in advanced 
Code  if job_pet_midcast and string.find(spell.english,'Cure') and spell.target.type == 'SELF' then
  equip(sets.pet_midcast.MatonCure)
  end
  
end
function pet_aftercast(spell,action)
  if string.find(spell.english,'Cure') or (spell.english:startswith('Protect') or spell.english:startswith('Shell')) and player.status == 'Engaged' and spell.target == 'SELF' then
     equip(sets.TP[sets.TP.index[TP_ind]])
  end                                      
                
             
                        
         
        
        
        
            
                
                    
                    
                    
                                                            
                                                    
                                                                            
                                Server: Bismarck 
                                Game: FFXI 
                                
                                                                    Posts: 314 
                                                             
                                             
                    
                                        
                    
                    
                 
             
            
                
			
			By Bismarck.Chaosprime 2014-05-29 06:47:32			
			
						
                     
                 
                Hi All 
 
So I'm returning to FFXI after almost a 2 year break. However I've noticed that my beloved spellcast no longer works/is supoorted. I hear the new rage is gearswap. 
 
My main jobs are MNK, THF, SMN and WHM in pretty much that order. 
 
Can someone direct me to gearswap files that already are complete and I can just edit my gear to them? 
 
This would be really helpful and appreciative. I know hoping for a converter to convert the SC file to a GS file is asking a bit much lol so this is the next best alternative :P 
 
Many thanks in advance! 
Cp                                     
                
             
                        
         
        
        
        
            
                
                      Sylph.Xodia 
                    
                    
                                                            
                    
                                        
                    
                    
                 
             
            
                
			
			By Sylph.Xodia 2014-05-29 07:28:13			
			
						
                     
                 
                Hi all for some reason gear wont equip from my wardrobe ;/ and also nitro/SV isnt putting on the augment armor before it uses any help would be greatly appreciated. Can ignore the cycles I got this GS from a friend and adjusted it heh ya he dboxes. 
New to gearswap not sure what way im to post the lua here so il use spoiler not to take up space.
 	function get_sets() 
	 
		Cycle1 = 'OFF' 
		Cycle2 = 'OFF' 
		Cycle3 = 'OFF' 
		Cycle4 = 'OFF' 
		Cycle5 = 'OFF' 
		Cycle6 = 'OFF' 
		Cycle7 = 'OFF' 
		Cycle8 = 'OFF' 
		 
		songcount = 3 
	 
		sets.None = {} 
 
		sets.Idle = {main="Terra's Staff",sub="Mephitis Grip", 
					head="Umuthi Hat",neck="Twilight Torque",ear1="Loquac. Earring",ear2="Ethereal Earring", 
					body="Gendewitha Bilaut",hands="Serpentes Cuffs",ring1="Defending Ring",ring2="Dark Ring", 
					back="Cheviot Cape",waist="Flume Belt",legs="Nares Trews",feet="Aoidos' Cothrn. +2"} 
					 
		sets.DT = {} 
		 
			sets.DT.Mode = sets.None 
						 
		sets.precast = {} 
		 
			sets.precast.FC = 	{head="Nahtirah Hat",neck="Jeweled Collar",ear1="Loquac. Earring", 
								body="Anhur Robe",hands="Gendewitha Gages",ring1="Prolix Ring", 
								back="Swith Cape",waist="Witful Belt",legs="Orvail Pants +1",feet="Chelona Boots",} 
							 
			sets.precast.Singing = 	set_combine(sets.precast.FC, 
									{main="Felibre's Dague",ammo="None", 
									head="Aoidos' Calot +2",neck="Aoidos' Matinee",body="Sha'ir Manteel",ear2="Aoidos' Earring", 
									legs="Gendewitha Spats",feet="Bihu Slippers"}) 
									 
			sets.precast.Cure = set_combine(sets.precast.FC, 
								{body="Heka's Kalasiris", 
								 back="Pahtli Cape", 
								 legs="Nabu's Shalwar", 
								 feet="Gendewitha Galoshes"}) 
								 
			sets.precast.Enhancing = 	set_combine(sets.precast.FC, 
										{waist="Siegel Sash"}) 
										 
			sets.precast.Stoneskin = 	set_combine(sets.precast.Enhancing, 
										{hands="Carapacho Cuffs"}) 
								 
		sets.midcast = {} 
					 
			sets.midcast.Singing = 	{main="Legato Dagger",ammo="None", 
									head="Aoidos' Calot +2",neck="Aoidos' Matinee", 
									body="Aoidos' Hngrln. +2",hands="Ad. Mnchtte. +2", 
									legs="Marduk's Shalwar +1",feet="Brioso Slippers +1"} 
									 
			sets.midcast.Cure = {main="Chatoyant Staff", 
								head="Gende. Caubeen",neck="Colossus's Torque",ear1="Loquac. Earring",ear2="Lifestorm Earring", 
								body="Heka's Kalasiris",hands="Bokwus Gloves",ring1="Balrahn's Ring",ring2="Sangoma Ring", 
								back="Pahtli Cape",waist="Demonry Sash",legs="Nares Trews",feet="Gendewita Galoshes"} 
								 
			sets.midcast.Enfeebling = 	{main="Lehbrailg +2",sub="Mephitis Grip", 
										head="Bihu Roundlet +1",neck="Barcarolle Medal",ear1="Gwati Earring",ear2="Musical Earring", 
										body="Brioso Just. +1",hands="Ad. Mnchtte. +2",ring1="Perception Ring",ring2="Sangoma Ring", 
										back="Rhapsode's Cape",waist="Demonry Sash",legs="Bihu Cannions +1",feet="Brioso Slippers +1"} 
										 
			sets.midcast.Recast = 	{head="Gende. Caubeen",neck="jeweled Collar",ear1="Loquac. Earring", 
									body="Gendewitha Bilaut",hands="Genewitha Gages",ring1="Prolix Ring", 
									back="Swith Cape",waist="Witful Belt",legs="Gendewitha Spats",feet="Brioso Slippers +1"} 
									 
										 
		sets.JA = {} 
		 
			sets.JA.Troubadour = {body="Bihu Justaucorps"} 
			 
			sets.JA.Nightingale = {feet="Bihu Slippers"} 
			 
			sets.JA['Soul Voice'] = {legs="Bihu Cannions +1"} 
			 
		--Obis-- 
		sets.Obi = {} 
			 
			sets.Obi.Fire = {waist="Karin Obi"} 
			sets.Obi.Earth = {waist="Dorin Obi"} 
			sets.Obi.Water = {waist="Suirin Obi"} 
			sets.Obi.Wind = {waist="Furin Obi"} 
			sets.Obi.Ice = {waist="Hyorin Obi"} 
			sets.Obi.Thunder = {waist="Rairin Obi"} 
			sets.Obi.Light = {waist="Korin Obi"} 
			sets.Obi.Dark = {waist="Anrin Obi"} 
			 
		Obi = {} 
		 
			Obi.Fire = 'Karin Obi' 
			Obi.Earth = 'Dorin Obi' 
			Obi.Water = 'Suirin Obi' 
			Obi.Wind = 'Furin Obi' 
			Obi.Ice = 'Hyorin Obi' 
			Obi.Thunder = 'Rairin Obi' 
			Obi.Light = 'Korin Obi' 
			Obi.Dark = 'Anrin Obi' 
 
	end 
		 
	function build_sets() 
 
		send_command('@gs c Update') 
 
	end 
	 
	function pretarget(spell) 
	 
		if buffactive['Pianissimo'] and 
		spell.skill == 'Singing' then 
			if spell.target.raw == '<me>' then 
				change_target('<t>') 
			end 
		end 
	 
	end 
 
	function precast(spell) 
	 
		if spell.english == 'Pianissimo' or 
		spell.english == 'Tenuto' then 
			return 
		end 
 
		if spell.action_type == 'Magic' then 
			equip(sets.precast.FC) 
			if buffactive['silence'] then 
				cancel_spell() 
				add_to_chat(158,'== Silenced! Unable to cast spells! ==') 
			end 
		end 
		 
		if spell.skill == 'Singing' then 
			equip(sets.precast.Singing) 
			if spell.target.type == 'MONSTER' then 
				equip({main='Lehbrailg +2',sub='Mephitis Grip'}) 
			end 
			if T{"Victory March","Advancing March"}: 
			contains(spell.english) then 
				equip({range="Gjallarhorn"}) 
			elseif T{"Archer's Prelude","Hunter's Prelude","Blade Madrigal","Sword Madrigal"}: 
			contains(spell.english) then 
				equip({range="Gjallarhorn"}) 
			elseif T{"Mage's Ballad","Mage's Ballad II","Mage's Ballad III"}: 
			contains(spell.english) then 
				equip({range="Gjallarhorn"}) 
			elseif T{"Magic Finale","Foe Lullaby","Foe Lullaby II"}: 
			contains(spell.english) then 
				equip({range="Gjallarhorn"}) 
			elseif T{"Valor Minuet","Valor Minuet II","Valor Minuet III","Valor Minuet IV","Valor Minuet V"}: 
			contains(spell.english) then 
				equip({range="Gjallarhorn"}) 
			elseif T{"Army's Paeon","Army's Paeon II","Army's Paeon III","Army's Paeon IV","Army's Paeon V","Army's Paeon VI"}: 
			contains(spell.english) then 
				equip({range="Terpander"}) 
			elseif T{"Horde Lullaby","Horde Lullaby II"}: 
			contains(spell.english) then 
				equip({range="Gjallarhorn",hands="Brioso Cuffs +1"}) 
			elseif T{'Foe Requiem','Foe Requiem II','Foe Requiem III','Foe Requiem IV','Foe Requiem V','Foe Requiem VI','Foe Requiem VII',}: 
			contains(spell.english) then 
				equip({range="Gjallarhorn"}) 
			else 
				equip({range="Terpander"}) 
			end 
		end 
		 
		if 	T{'Cure','Cure II','Cure III','Cure IV','Curaga','Curaga II','Cura'}: 
		contains(spell.english) then 
			equip(sets.precast.Cure) 
		end 
		 
		if spell.skill == 'Enhancing Magic' then 
			equip(sets.precast.Enhancing) 
			if spell.english == 'Stoneskin' then 
				equip(sets.precast.Stoneskin) 
			end 
		end 
		 
		if sets.JA[spell.english] then 
			equip(sets.JA[spell.english]) 
		end 
 
	end 
	 
	function midcast(spell,act) 
	 
		if spell.skill == 'Singing' then 
			equip(sets.midcast.Singing) 
			if spell.target.type == 'MONSTER' then 
				equip(sets.midcast.Enfeebling) 
			end 
		end 
		 
		 
		if T{"Mage's Ballad","Mage's Ballad II","Mage's Ballad III","Chocobo Mazurka","Raptor Mazurka"}: 
		contains(spell.english) then 
			equip({neck="Aoidos' Matinee",feet="Brioso Slippers +1"}) 
		end 
		 
		if 	T{'Cure','Cure II','Cure III','Cure IV','Curaga','Curaga II','Cura'}: 
		contains(spell.english) then 
			equip(sets.midcast.Cure) 
			if T{world.day_element,world.weather_element}: 
			contains(spell.element) then 
				equip({main="Chatoyant Staff",back="Twilight Cape"}) 
				if player.inventory[Obi[spell.element]] then 
					equip(sets.Obi[spell.element]) 
				end 
			end 
		end 
		 
		if T{'Haste','Raise','Paralyna','Silena','Blindna','Stona','Viruna','Poisona','Erase'}: 
		contains(spell.english) then 
			equip(sets.midcast.Recast) 
		end 
		 
		if spell.english == 'Cursna' then 
			equip(sets.midcast.Cursna) 
		end 
		 
		if spell.english == 'Stoneskin' then 
			equip(sets.midcast.Stoneskin) 
		end 
	 
	end 
	 
	function aftercast(spell) 
	 
		if spell.english == 'Pianissimo' or 
		spell.english == 'Tenuto' then 
			return 
		end 
		 
		if spell.english == 'Foe Lullaby' and 
		not spell.interrupted then 
			send_command('@timers c "'..spell.english..'['..spell.target.name..']" 39 down') 
		end 
		 
		if spell.english == 'Foe Lullaby II' and 
		not spell.interrupted then 
			send_command('@timers c "'..spell.english..'['..spell.target.name..']" 78 down') 
		end 
		 
		if spell.english == 'Horde Lullaby' and 
		not spell.interrupted then 
			send_command('@timers c "'..spell.english..'['..spell.target.name..']" 36 down') 
		end 
		 
		if spell.english == 'Horde Lullaby II' and 
		not spell.interrupted then 
			send_command('@timers c "'..spell.english..'['..spell.target.name..']" 72 down') 
		end 
	 
		if Cycle1 == 'ON' then 
			if spell.english == "Archer's Prelude" then 
				send_command('@wait 3;input /ma "Valor Minuet V" <me>') 
			end 
			if spell.english == 'Valor Minuet V' then 
				if buffactive['Clarion Call'] or 
				songcount == 4 then 
					send_command("@wait 3;input /ma Hunter's Prelude <me>") 
				else 
					send_command("@wait 3;input /ma Army's Paeon VI <me>") 
				end 
			end 
			if spell.english == "Hunter's Prelude" then 
				send_command("@wait 3;input /ma Army's Paeon VI <me>") 
			end 
			if spell.english == "Army's Paeon VI" then 
				send_command('@wait 3;input /ma "Valor Minuet IV" <me>') 
			end 
			if spell.english == 'Valor Minuet IV' then 
				Cycle1 = 'OFF' 
				add_to_chat(158,"Song Cycle 1: ["..Cycle1.."]") 
			end 
		end 
		if Cycle2 == 'ON' then 
			if spell.english == "Mage's Ballad III" then 
				send_command("@wait 3;input /ja Pianissimo <me>;wait 1.5;input /ma Mage's Ballad II Oshawott") 
			end 
			if spell.english == "Mage's Ballad II" then 
				if buffactive['Clarion Call'] or 
				songcount == 4 then 
					send_command("@wait 3;input /ja Pianissimo <me>;wait 1.5;input /ma Mage's Ballad Oshawott") 
				else 
					send_command("@wait 3;input /ja Pianissimo <me>;wait 1.5;input /ma Victory March Oshawott") 
				end 
			end 
			if spell.english == "Mage's Ballad" then 
					send_command("@wait 3;input /ja Pianissimo <me>;wait 1.5;input /ma Army's Paeon VI Oshawott") 
			end 
			if spell.english == "Army's Paeon VI" then 
				send_command("@wait 3;input /ja Pianissimo <me>;wait 1.5;input /ma Victory March Oshawott") 
			end 
			if spell.english == "Victory March" then 
				Cycle2 = 'OFF' 
				add_to_chat(158,"Song Cycle 2: ["..Cycle2.."]") 
			end 
		end 
		if Cycle3 == 'ON' then 
			if spell.english == "Valor Minuet V" then 
				send_command('@wait 3;input /ma "Advancing March" <me>') 
			end 
			if spell.english == 'Advancing March' then 
				if buffactive['Clarion Call'] or 
				songcount == 4 then 
					send_command('@wait 3;input /ma "Valor Minuet IV" <me>') 
				else 
					send_command("@wait 3;input /ma Army's Paeon VI <me>") 
				end 
			end 
			if spell.english == "Valor Minuet IV" then 
				send_command("@wait 3;input /ma Army's Paeon VI <me>") 
			end 
			if spell.english == "Army's Paeon VI" then 
				send_command('@wait 3;input /ma "Victory March" <me>') 
			end 
			if spell.english == 'Victory March' then 
				Cycle3 = 'OFF' 
				add_to_chat(158,"Song Cycle 3: ["..Cycle3.."]") 
			end 
		end 
		if Cycle4 == 'ON' then 
			if spell.english == "Mage's Ballad III" then 
				send_command("@wait 3;input /ma Mage's Ballad II <me>") 
			end 
			if spell.english == "Mage's Ballad II" then 
				if buffactive['Clarion Call'] or 
				songcount == 4 then 
					send_command('@wait 3;input /ma "Victory March" <me>') 
				else 
					send_command("@wait 3;input /ma Army's Paeon VI <me>") 
				end 
			end 
			if spell.english == "Victory March" then 
				send_command("@wait 3;input /ma Army's Paeon VI <me>") 
			end 
			if spell.english == "Army's Paeon VI" then 
				send_command("@wait 3;input /ma Mage's Ballad <me>") 
			end 
			if spell.english == "Mage's Ballad" then 
				Cycle4 = 'OFF' 
				add_to_chat(158,"Song Cycle 4: ["..Cycle4.."]") 
			end 
		end 
		if Cycle5 == 'ON' then 
			if spell.english == "Valor Minuet IV" then 
				send_command('@wait 3;input /ma "Valor Minuet III" <me>') 
			end 
			if spell.english == 'Valor Minuet III' then 
				if buffactive['Clarion Call'] or 
				songcount == 4 then 
					send_command('@wait 3;input /ma "Valor Minuet" <me>') 
				else 
					send_command("@wait 3;input /ma Army's Paeon VI <me>") 
				end 
			end 
			if spell.english == "Valor Minuet" then 
				send_command("@wait 3;input /ma Army's Paeon VI <me>") 
			end 
			if spell.english == "Army's Paeon VI" then 
				send_command('@wait 3;input /ma "Valor Minuet II" <me>') 
			end 
			if spell.english == 'Valor Minuet II' then 
				Cycle5 = 'OFF' 
				add_to_chat(158,"Song Cycle 5: ["..Cycle5.."]") 
			end 
		end 
		if Cycle6 == 'ON' then 
			if spell.english == "Archer's Prelude" then 
				send_command('@wait 3;input /ja Pianissimo <me>;wait 1.5;input /ma "Valor Minuet V" Zubrin') 
			end 
			if spell.english == 'Valor Minuet V' then 
				if buffactive['Clarion Call'] or 
				songcount == 4 then 
					send_command("@wait 3;input /ja Pianissimo <me>;wait 1.5;input /ma Hunter's Prelude Zubrin") 
				else 
					send_command("@wait 3;input /ja Pianissimo <me>;wait 1.5;input /ma Army's Paeon VI Zubrin") 
				end 
			end 
			if spell.english == "Hunter's Prelude" then 
				send_command("@wait 3;input /ja Pianissimo <me>;wait 1.5;input /ma Army's Paeon VI Zubrin") 
			end 
			if spell.english == "Army's Paeon VI" then 
				send_command('@wait 3;input /ja Pianissimo <me>;wait 1.5;input /ma "Valor Minuet IV" Zubrin') 
			end 
			if spell.english == 'Valor Minuet IV' then 
				Cycle6 = 'OFF' 
				add_to_chat(158,"Song Cycle 6: ["..Cycle6.."]") 
			end 
		end		 
		if Cycle7 == 'ON' then 
			if spell.english == "Archer's Prelude" then 
				send_command("@wait 3;input /ma Hunter's Prelude <me>") 
			end 
			if spell.english == "Hunter's Prelude" then 
				if buffactive['Clarion Call'] or 
				songcount == 4 then 
					send_command("@wait 3;input /ma Valor Minuet IV <me>") 
				else 
					send_command("@wait 3;input /ma Army's Paeon VI <me>") 
				end 
			end 
			if spell.english == "Valor Minuet IV" then 
				send_command("@wait 3;input /ma Army's Paeon VI <me>") 
			end 
			if spell.english == "Army's Paeon VI" then 
				send_command('@wait 3;input /ma "Valor Minuet V" <me>') 
			end 
			if spell.english == 'Valor Minuet V' then 
				Cycle7 = 'OFF' 
				add_to_chat(158,"Song Cycle 7: ["..Cycle7.."]") 
			end 
		end 
		if Cycle8 == 'ON' then 
			if spell.english == "Mage's Ballad III" then 
				send_command("@wait 3;input /ja Pianissimo <me>;wait 1.5;input /ma Mage's Ballad II Oshawott") 
			end 
			if spell.english == "Mage's Ballad II" then 
				Cycle8 = 'OFF' 
				add_to_chat(158,"Song Cycle 8: ["..Cycle8.."]") 
			end 
		end 
		 
		 
		if player.status == 'Engaged' then 
			equip(set_combine(sets.TP.Final,sets.DT.Mode)) 
		else 
			equip(set_combine(sets.Idle,sets.DT.Mode)) 
		end 
	 
	end 
	 
	function status_change(new,old) 
	 
		if new == 'Engaged' then 
			equip(set_combine(sets.TP.Final,sets.DT.Mode)) 
		else 
			equip(set_combine(sets.Idle,sets.DT.Mode)) 
		end 
	 
	end 
	 
	function self_command(command) 
	 
		if command == 'Update' then 
			if player.status == 'Engaged' then 
				equip(set_combine(sets.TP.Final,sets.DT.Mode)) 
			else 
				equip(set_combine(sets.Idle,sets.DT.Mode)) 
			end 
		end 
		 
		if command == 'SongCycle1' then 
			Cycle1 = 'ON' 
			add_to_chat(158,"Song Cycle 1: ["..Cycle1.."]") 
			send_command("@input /ma Archer's Prelude <me>") 
		end 
		 
		if command == 'SongCycle2' then 
			Cycle2 = 'ON' 
			add_to_chat(158,"Song Cycle 2: ["..Cycle2.."]") 
			send_command("@input /ja Pianissimo <me>;wait 1.5;input /ma Mage's Ballad III Oshawott") 
		end 
		 
		if command == 'SongCycle3' then 
			Cycle3 = 'ON' 
			add_to_chat(158,"Song Cycle 3: ["..Cycle3.."]") 
			send_command("@input /ma Valor Minuet V <me>") 
		end 
		 
		if command == 'SongCycle4' then 
			Cycle4 = 'ON' 
			add_to_chat(158,"Song Cycle 4: ["..Cycle4.."]") 
			send_command("@input /ja Tenuto <me>;wait 1.5;input /ma Mage's Ballad III <me>") 
		end 
		 
		if command == 'SongCycle5' then 
			Cycle5 = 'ON' 
			add_to_chat(158,"Song Cycle 5: ["..Cycle5.."]") 
			send_command("@input /ma Valor Minuet IV <me>") 
		end 
		 
		if command == 'SongCycle6' then 
			Cycle6 = 'ON' 
			add_to_chat(158,"Song Cycle 6: ["..Cycle6.."]") 
			send_command("@input /ja Pianissimo <me>;wait 1.5;input /ma Archer's Prelude Zubrin") 
		end 
		 
		if command == 'SongCycle7' then 
			Cycle7 = 'ON' 
			add_to_chat(158,"Song Cycle 7: ["..Cycle7.."]") 
			send_command("@input /ma Archer's Prelude <me>") 
		end 
		 
		if command == 'SongCycle8' then 
			Cycle8 = 'ON' 
			add_to_chat(158,"Song Cycle 8: ["..Cycle8.."]") 
			send_command("@input /ja Pianissimo <me>;wait 1.5;input /ma Mage's Ballad III Oshawott") 
		end 
		 
		if command == 'Vars' then 
			add_to_chat(158,"Prelude: "..Cycle1.." PB: "..Cycle2.." March: "..Cycle3.." TB: "..Cycle4.."") 
		end 
		 
		if command == 'SongCount' then 
			if songcount == 3 then 
				songcount = 4 
				add_to_chat(158,'Song Count: '..songcount..'') 
			elseif songcount == 4 then 
				songcount = 3 
				add_to_chat(158,'Song Count: '..songcount..'') 
			end 
		end 
	 
	end                                       
                
             
                        
         
             
    
    
        
        Just looking for someone to explain this addon a bit for me. It looks like it is an alternative to Spellcast.  
 
Is it going to be replacing Spellcast? In which ways is it better or worse. I don't know any programming but I've slowly learned more and more about spellcast and the 'language' used in gearswap is confusing to me. 
 
It says it uses packets so it potentially could be more detectable? but does that also eliminate any lag that spellcast may encounter? 
 
I plan on redoing my PUP xml to include pet casting sets thanks to the new addon petschool. I'm just not sure if it's worth it to just wait until gearswap gets more popular or to go ahead and do it in spellcast. 
 
If anyone could give me more info I'd greatly appreciate it. 
        
     
    
 
    
 | 
    
 |